tango-app-api-task 3.2.1-beta-42 → 3.2.1-beta-44
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
|
@@ -297,7 +297,7 @@ export async function taskDetails( req, res ) {
|
|
|
297
297
|
|
|
298
298
|
export async function validateUser( req, res ) {
|
|
299
299
|
try {
|
|
300
|
-
if ( !req.body.assignedUsers
|
|
300
|
+
if ( !req.body.assignedUsers?.length ) {
|
|
301
301
|
return res.sendError( 'Please Enter User Details', 400 );
|
|
302
302
|
}
|
|
303
303
|
|
|
@@ -495,11 +495,8 @@ export const validateUserv1 = async ( req, res ) => {
|
|
|
495
495
|
};
|
|
496
496
|
} else {
|
|
497
497
|
if ( acc[obj.userEmail.toLowerCase()] ) {
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
} else {
|
|
501
|
-
acc[obj.userEmail.toLowerCase()].name.push( obj.userEmail.toLowerCase() );
|
|
502
|
-
}
|
|
498
|
+
acc[obj.userEmail.toLowerCase()].name.push( obj.userName.toLowerCase() );
|
|
499
|
+
acc[obj.userEmail.toLowerCase()].count++;
|
|
503
500
|
}
|
|
504
501
|
}
|
|
505
502
|
return acc;
|
|
@@ -801,9 +798,10 @@ export async function userDetails( req, res ) {
|
|
|
801
798
|
} );
|
|
802
799
|
}
|
|
803
800
|
} else if ( ele?.teamName ) {
|
|
804
|
-
let teamDetails = await teamsServices.findOneTeams( { _id: ele.assignId }, { users: 1, teamName: 1 } );
|
|
801
|
+
let teamDetails = await teamsServices.findOneTeams( { _id: ele.assignId }, { users: 1, teamName: 1, Teamlead: 1 } );
|
|
805
802
|
if ( teamDetails ) {
|
|
806
|
-
let
|
|
803
|
+
let idList = [ ...teamDetails.users.map( ( ele ) => ele.userId ), ...teamDetails.Teamlead.map( ( ele ) => ele.userId ) ];
|
|
804
|
+
let teamUserDetails = await userService.find( { _id: { $in: idList } } );
|
|
807
805
|
teamUserDetails.forEach( ( item ) => {
|
|
808
806
|
userDetails.push( {
|
|
809
807
|
id: ele.assignId,
|
|
@@ -820,18 +818,24 @@ export async function userDetails( req, res ) {
|
|
|
820
818
|
} );
|
|
821
819
|
}
|
|
822
820
|
} else {
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
821
|
+
let checkActiveUsers;
|
|
822
|
+
if ( ele?.coverage == 'user' ) {
|
|
823
|
+
checkActiveUsers = await userService.findOne( { _id: ele.userId, isActive: true } );
|
|
824
|
+
}
|
|
825
|
+
if ( checkActiveUsers || ele?.coverage == 'store' ) {
|
|
826
|
+
userDetails.push( {
|
|
827
|
+
_id: ele.assignId,
|
|
828
|
+
userName: ele.userName,
|
|
829
|
+
userEmail: ele.userEmail,
|
|
830
|
+
storeId: ele?.store_id,
|
|
831
|
+
storeName: ele?.storeName,
|
|
832
|
+
userPhone: ele.userPhone,
|
|
833
|
+
city: ele.city,
|
|
834
|
+
checkFlag: ele.checkFlag,
|
|
835
|
+
clusterName: ele?.clusterName || '',
|
|
836
|
+
teamName: ele?.teamName || '',
|
|
837
|
+
} );
|
|
838
|
+
}
|
|
835
839
|
}
|
|
836
840
|
} ) );
|
|
837
841
|
|
|
@@ -1650,6 +1654,8 @@ export async function createChecklistTask( req, res ) {
|
|
|
1650
1654
|
checkListName: data.checkListName,
|
|
1651
1655
|
client_id: inputBody.clientId,
|
|
1652
1656
|
userId: userId,
|
|
1657
|
+
assignId: storeDetails?._id,
|
|
1658
|
+
coverage: response?.coverage || 'store',
|
|
1653
1659
|
};
|
|
1654
1660
|
await taskAssignService.create( userDetails );
|
|
1655
1661
|
|
|
@@ -3780,7 +3786,7 @@ async function assignUsers( data ) {
|
|
|
3780
3786
|
} else {
|
|
3781
3787
|
let teamDetails = await teamsServices.findteams( { clientId: data.clientId, _id: new mongoose.Types.ObjectId( data.id ) } );
|
|
3782
3788
|
if ( teamDetails.length ) {
|
|
3783
|
-
let userIdList = teamDetails[0].users.map( ( ele ) => ele.userId );
|
|
3789
|
+
let userIdList = [ ...teamDetails[0].users.map( ( ele ) => ele.userId ), ...teamDetails[0].Teamlead.map( ( ele ) => ele.userId ) ];
|
|
3784
3790
|
let userDetails = await userService.find( { _id: userIdList } );
|
|
3785
3791
|
assignedData = userDetails.map( ( user ) => {
|
|
3786
3792
|
let userData = {
|
|
@@ -3892,27 +3898,29 @@ export async function updateAssign( req, res ) {
|
|
|
3892
3898
|
return res.sendError( 'No data found', 204 );
|
|
3893
3899
|
}
|
|
3894
3900
|
req.body.assignedGroup = [ ...new Set( req.body.assignedGroup.map( ( item ) => item.id ) ) ];
|
|
3895
|
-
req.body.assignedGroup = req.body.assignedGroup.map( ( ele ) => {
|
|
3896
|
-
|
|
3897
|
-
} );
|
|
3901
|
+
// req.body.assignedGroup = req.body.assignedGroup.map( ( ele ) => {
|
|
3902
|
+
// return { id: ele };
|
|
3903
|
+
// } );
|
|
3898
3904
|
await taskAssignService.deleteMany( { checkListId: req.body.taskId } );
|
|
3899
3905
|
let assignedUserList = [];
|
|
3900
|
-
|
|
3901
|
-
|
|
3902
|
-
|
|
3903
|
-
|
|
3904
|
-
|
|
3905
|
-
},
|
|
3906
|
+
let userEmailList = req.body.assignedList.map( ( ele ) => ele.userEmail.toLowerCase() );
|
|
3907
|
+
let query = [
|
|
3908
|
+
{
|
|
3909
|
+
$addFields: {
|
|
3910
|
+
emailToLower: { $toLower: '$email' },
|
|
3906
3911
|
},
|
|
3907
|
-
|
|
3908
|
-
|
|
3909
|
-
|
|
3910
|
-
|
|
3911
|
-
},
|
|
3912
|
+
},
|
|
3913
|
+
{
|
|
3914
|
+
$match: {
|
|
3915
|
+
clientId: req.body.clientId,
|
|
3916
|
+
emailToLower: { $in: userEmailList },
|
|
3912
3917
|
},
|
|
3913
|
-
|
|
3914
|
-
|
|
3915
|
-
|
|
3918
|
+
},
|
|
3919
|
+
];
|
|
3920
|
+
let assignUserDetails = await userService.aggregate( query );
|
|
3921
|
+
await Promise.all( req.body.assignedList.map( async ( assign ) => {
|
|
3922
|
+
let userDetails = assignUserDetails.find( ( ele ) => ele.email.toLowerCase() == assign.userEmail.toLowerCase() );
|
|
3923
|
+
if ( !userDetails ) {
|
|
3916
3924
|
let userData = {
|
|
3917
3925
|
userName: assign.userName,
|
|
3918
3926
|
email: assign.userEmail,
|
|
@@ -3920,7 +3928,6 @@ export async function updateAssign( req, res ) {
|
|
|
3920
3928
|
clientId: req.body.clientId,
|
|
3921
3929
|
};
|
|
3922
3930
|
userDetails = await createUser( userData );
|
|
3923
|
-
userDetails = [ userDetails ];
|
|
3924
3931
|
}
|
|
3925
3932
|
let data = {
|
|
3926
3933
|
...assign,
|
|
@@ -3929,25 +3936,26 @@ export async function updateAssign( req, res ) {
|
|
|
3929
3936
|
checkListId: req.body.taskId,
|
|
3930
3937
|
coverage: req.body.coverage,
|
|
3931
3938
|
assignId: assign._id,
|
|
3932
|
-
userId: userDetails?.
|
|
3939
|
+
userId: userDetails?._id,
|
|
3933
3940
|
checkListName: taskDetails.checkListName,
|
|
3934
3941
|
};
|
|
3935
3942
|
delete data._id;
|
|
3936
3943
|
assignedUserList.push( data );
|
|
3937
3944
|
} ) );
|
|
3945
|
+
let assignGroupDetails = [];
|
|
3946
|
+
if ( req.body.coverage == 'store' ) {
|
|
3947
|
+
assignGroupDetails = await clusterServices.findcluster( { _id: { $in: req.body.assignedGroup } } );
|
|
3948
|
+
} else {
|
|
3949
|
+
assignGroupDetails = await teamsServices.findteams( { _id: { $in: req.body.assignedGroup } } );
|
|
3950
|
+
}
|
|
3938
3951
|
await Promise.all( req.body.assignedGroup.map( async ( assign ) => {
|
|
3939
|
-
let groupDetails;
|
|
3940
|
-
if ( req.body.coverage == 'store' ) {
|
|
3941
|
-
groupDetails = await clusterServices.findOneCluster( { _id: assign.id } );
|
|
3942
|
-
} else {
|
|
3943
|
-
groupDetails = await teamsServices.findOneTeams( { _id: assign.id } );
|
|
3944
|
-
}
|
|
3952
|
+
let groupDetails = assignGroupDetails.find( ( ele ) => ele._id.toString() == assign );
|
|
3945
3953
|
if ( groupDetails ) {
|
|
3946
3954
|
let groupData = {
|
|
3947
3955
|
client_id: req.body.clientId,
|
|
3948
3956
|
checkListId: req.body.taskId,
|
|
3949
3957
|
coverage: req.body.coverage,
|
|
3950
|
-
assignId: assign
|
|
3958
|
+
assignId: assign,
|
|
3951
3959
|
checkListName: taskDetails.checkListName,
|
|
3952
3960
|
...( req.body.coverage == 'store' ) ? { clusterName: groupDetails?.clusterName } : { teamName: groupDetails?.teamName },
|
|
3953
3961
|
};
|