tango-app-api-audit 3.4.46 → 3.4.47

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tango-app-api-audit",
3
- "version": "3.4.46",
3
+ "version": "3.4.47",
4
4
  "description": "audit & audit metrics apis",
5
5
  "main": "index.js",
6
6
  "type": "module",
@@ -3605,7 +3605,123 @@ export async function overviewTable( req, res ) {
3605
3605
  if ( inputData.filterByStatus.length > 0 ) {
3606
3606
  [ 'mobile-detection', 'uniform-detection', 'hygiene' ].includes( inputData.moduleType )? filters.push( { status: { $in: inputData.filterByStatus } } ):filters.push( { auditStatus: { $in: inputData.filterByStatus } } );
3607
3607
  }
3608
-
3608
+ let traxAuditDataQuery={};
3609
+ let traxAuditDataFilter = [];
3610
+ switch ( inputData.moduleType ) {
3611
+ case 'unattended-customer':
3612
+ traxAuditDataQuery= {
3613
+ fileDate: '$fileDate', storeId: '$storeId', tempId: '$tempId', moduleType: '$moduleType',
3614
+ };
3615
+ traxAuditDataFilter=[ {
3616
+ $eq: [ '$fileDate', '$$fileDate' ],
3617
+ },
3618
+ {
3619
+ $eq: [ '$storeId', '$$storeId' ],
3620
+ },
3621
+ {
3622
+ $eq: [ '$tempId', '$$tempId' ],
3623
+ },
3624
+ {
3625
+ $eq: [ '$moduleType', '$$moduleType' ],
3626
+ },
3627
+ ];
3628
+ break;
3629
+ case 'left-in-middle':
3630
+ traxAuditDataQuery= {
3631
+ fileDate: '$fileDate', storeId: '$storeId', tempId: '$tempId', moduleType: '$moduleType',
3632
+ };
3633
+ traxAuditDataFilter=[ {
3634
+ $eq: [ '$fileDate', '$$fileDate' ],
3635
+ },
3636
+ {
3637
+ $eq: [ '$storeId', '$$storeId' ],
3638
+ },
3639
+ {
3640
+ $eq: [ '$question', '$$question' ],
3641
+ },
3642
+ {
3643
+ $eq: [ '$moduleType', '$$moduleType' ],
3644
+ },
3645
+ ];
3646
+ break;
3647
+ case 'uniform-detection':
3648
+ case 'mobile-detection':
3649
+ case 'scrum':
3650
+ case 'cleaning':
3651
+ traxAuditDataQuery= {
3652
+ fileDate: '$fileDate', storeId: '$storeId', moduleType: '$moduleType',
3653
+ };
3654
+ traxAuditDataFilter=[ {
3655
+ $eq: [ '$fileDate', '$$fileDate' ],
3656
+ },
3657
+ {
3658
+ $eq: [ '$storeId', '$$storeId' ],
3659
+ },
3660
+ {
3661
+ $eq: [ '$moduleType', '$$moduleType' ],
3662
+ },
3663
+ ];
3664
+ break;
3665
+ case 'camera-angle-change':
3666
+ traxAuditDataQuery= {
3667
+ fileDate: '$fileDate', storeId: '$storeId', moduleType: '$moduleType', streamName: '$streamName',
3668
+ };
3669
+ traxAuditDataFilter=[ {
3670
+ $eq: [ '$fileDate', '$$fileDate' ],
3671
+ },
3672
+ {
3673
+ $eq: [ '$storeId', '$$storeId' ],
3674
+ },
3675
+ {
3676
+ $eq: [ '$streamName', '$$streamName' ],
3677
+ },
3678
+ {
3679
+ $eq: [ '$moduleType', '$$moduleType' ],
3680
+ },
3681
+ ];
3682
+ break;
3683
+ case 'hygiene':
3684
+ traxAuditDataQuery= {
3685
+ fileDate: '$fileDate', storeId: '$storeId', moduleType: '$moduleType', zoneName: '$zoneName',
3686
+ };
3687
+ traxAuditDataFilter=[ {
3688
+ $eq: [ '$fileDate', '$$fileDate' ],
3689
+ },
3690
+ {
3691
+ $eq: [ '$storeId', '$$storeId' ],
3692
+ },
3693
+ {
3694
+ $eq: [ '$zoneName', '$$zoneName' ],
3695
+ },
3696
+ {
3697
+ $eq: [ '$moduleType', '$$moduleType' ],
3698
+ },
3699
+ ];
3700
+ break;
3701
+ case 'eye-test-camera':
3702
+ traxAuditDataQuery= {
3703
+ fileDate: '$fileDate', storeId: '$storeId', moduleType: '$moduleType', question: '$question', streamName: '$streamName',
3704
+ };
3705
+ traxAuditDataFilter=[ {
3706
+ $eq: [ '$fileDate', '$$fileDate' ],
3707
+ },
3708
+ {
3709
+ $eq: [ '$storeId', '$$storeId' ],
3710
+ },
3711
+ {
3712
+ $eq: [ '$question', '$$question' ],
3713
+ },
3714
+ {
3715
+ $eq: [ '$streamName', '$$streamName' ],
3716
+ },
3717
+ {
3718
+ $eq: [ '$moduleType', '$$moduleType' ],
3719
+ },
3720
+ ];
3721
+ break;
3722
+ default:
3723
+ return res.sendError( 'Please give valid modueType', 400 );
3724
+ }
3609
3725
  const query =[
3610
3726
  {
3611
3727
  $match: {
@@ -3616,24 +3732,12 @@ export async function overviewTable( req, res ) {
3616
3732
  {
3617
3733
  $lookup: {
3618
3734
  from: 'traxAuditData',
3619
- let: {
3620
- fileDate: '$fileDate', storeId: '$storeId', zoneName: '$zoneName',
3621
- },
3735
+ let: traxAuditDataQuery,
3622
3736
  pipeline: [
3623
3737
  {
3624
3738
  $match: {
3625
3739
  $expr: {
3626
- $and: [
3627
- {
3628
- $eq: [ '$fileDate', '$$fileDate' ],
3629
- },
3630
- {
3631
- $eq: [ '$storeId', '$$storeId' ],
3632
- },
3633
- {
3634
- $eq: [ '$zoneName', '$$zoneName' ],
3635
- },
3636
- ],
3740
+ $and: traxAuditDataFilter,
3637
3741
  },
3638
3742
  },
3639
3743
  },