Skip to content

Commit

Permalink
Merge pull request #55 from priyanka-TL/projectSubmissionFix
Browse files Browse the repository at this point in the history
submission array fix
  • Loading branch information
aks30 authored Jan 10, 2022
2 parents 01c751b + 061e70c commit 7fdc0cd
Showing 1 changed file with 51 additions and 5 deletions.
56 changes: 51 additions & 5 deletions module/userProjects/helper.js
Original file line number Diff line number Diff line change
Expand Up @@ -804,15 +804,61 @@ module.exports = class UserProjectsHelper {
try {

let update = {};
let tasksUpdated;

update["tasks.$." + "submissions"] = updatedData

const tasksUpdated =
await projectQueries.findOneAndUpdate({
let projectDocument = await projectQueries.projectDocument(
{
_id: projectId,
"tasks._id": taskId
}, { $push: update });
}, [
"tasks.$.submissions"
]);

let tasks = projectDocument[0].tasks;
if ( tasks && tasks.length > 0 ) {
tasks = projectDocument[0].tasks[0];
}

let submissions = tasks.submissions;
let pushToSubmissionArray = false;

if ( !submissions && !submissions.length > 0 ){
pushToSubmissionArray = true;
}

let checkSubmissionExist = submissions.filter(submission => submission._id == updatedData._id);

if ( !checkSubmissionExist.length > 0 ) {
pushToSubmissionArray = true;
}

if ( pushToSubmissionArray === true ) {

update["tasks.$." + "submissions"] = updatedData;

tasksUpdated =
await projectQueries.findOneAndUpdate({
_id: projectId,
"tasks._id": taskId
}, { $push: update });

} else {

const index = submissions.indexOf(checkSubmissionExist[0]);

if ( submissions[index].status !== CONSTANTS.common.COMPLETED_STATUS ) {
submissions[index] = updatedData;
}

update["tasks.$." + "submissions"] = submissions;
tasksUpdated =
await projectQueries.findOneAndUpdate({
_id: projectId,
"tasks._id": taskId
}, { $set: update });

}

return resolve(tasksUpdated);

} catch (error) {
Expand Down

0 comments on commit 7fdc0cd

Please sign in to comment.