Skip to content
Snippets Groups Projects
Commit 6f18bd26 authored by Mihail Hagiu's avatar Mihail Hagiu
Browse files

refactor(ReviewerNumbering): Reviewer numbers now assigned on submit instead of autosave

parent e07e6603
No related branches found
No related tags found
3 merge requests!176Sprint 24,!171Sprint 24,!158Hin 1115
......@@ -116,7 +116,7 @@ class Collection {
return allCollectionFragments
}
async getReviewerNumber({ reqUser, FragmentModel }) {
async getReviewerNumber({ userId, FragmentModel }) {
const allCollectionFragments = await this.getAllCollectionFragments({
FragmentModel,
})
......@@ -124,7 +124,7 @@ class Collection {
allCollectionFragments.map(fragment => fragment.invitations),
)
const allNumberedInvitationsForUser = allCollectionInvitations
.filter(invite => invite.userId === reqUser.id)
.filter(invite => invite.userId === userId)
.filter(invite => invite.reviewerNumber)
if (isEmpty(allNumberedInvitationsForUser)) {
......
......@@ -56,7 +56,7 @@ describe('Collection helper', () => {
const FragmentModel = models.Fragment
const reviewerNumber = await collectionHelper.getReviewerNumber({
reqUser: reviewer,
userId: reviewer.id,
FragmentModel,
})
......@@ -71,7 +71,7 @@ describe('Collection helper', () => {
const FragmentModel = models.Fragment
const reviewerNumber = await collectionHelper.getReviewerNumber({
reqUser: reviewer,
userId: reviewer.id,
FragmentModel,
})
......@@ -86,7 +86,7 @@ describe('Collection helper', () => {
const FragmentModel = models.Fragment
const reviewerNumber = await collectionHelper.getReviewerNumber({
reqUser: answerReviewer,
userId: answerReviewer.id,
FragmentModel,
})
......@@ -101,7 +101,7 @@ describe('Collection helper', () => {
const FragmentModel = models.Fragment
const reviewerNumber = await collectionHelper.getReviewerNumber({
reqUser: reviewer,
userId: reviewer.id,
FragmentModel,
})
......
const { findIndex } = require('lodash')
const {
services,
authsome: authsomeHelper,
......@@ -64,6 +65,22 @@ module.exports = models => async (req, res) => {
}
}
if (req.body.submittedOn) {
const collectionHelper = new Collection({ collection })
const invitationIndex = findIndex(fragment.invitations, [
'userId',
req.authInfo.id,
])
if (invitationIndex >= 0) {
const FragmentModel = models.Fragment
const reviewerNumber = await collectionHelper.getReviewerNumber({
userId: req.authInfo.id,
FragmentModel,
})
fragment.invitations[invitationIndex].reviewerNumber = reviewerNumber
}
}
fragment.save()
return res.status(200).json(recommendation)
......
const uuid = require('uuid')
const { pick, get, set, has, isEmpty, last, findIndex } = require('lodash')
const { pick, get, set, has, isEmpty, last } = require('lodash')
const config = require('config')
const { v4 } = require('uuid')
......@@ -197,18 +197,6 @@ module.exports = models => async (req, res) => {
}
}
const invitationIndex = findIndex(fragment.invitations, [
'userId',
reqUser.id,
])
if (invitationIndex >= 0) {
const FragmentModel = models.Fragment
const reviewerNumber = await collectionHelper.getReviewerNumber({
reqUser,
FragmentModel,
})
fragment.invitations[invitationIndex].reviewerNumber = reviewerNumber
}
fragment.recommendations.push(newRecommendation)
fragment.save()
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment