Skip to content

Commit

Permalink
tech(api): update eval seeds
Browse files Browse the repository at this point in the history
  • Loading branch information
Jeyffrey committed Oct 8, 2024
1 parent 87e71b9 commit a9bbff5
Show file tree
Hide file tree
Showing 3 changed files with 43 additions and 9 deletions.
4 changes: 4 additions & 0 deletions api/db/seeds/data/common/tooling/target-profile-tooling.js
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ async function createTargetProfile({
comment,
imageUrl,
outdated,
areKnowledgeElementsResettable,
attachedOrganizationIds = [],
configTargetProfile,
}) {
Expand Down Expand Up @@ -76,6 +77,7 @@ async function createTargetProfile({
comment,
imageUrl,
outdated,
areKnowledgeElementsResettable,
attachedOrganizationIds,
});
const cappedTubesDTO = _createTargetProfileTubes({ databaseBuilder, targetProfileId, configTargetProfile });
Expand Down Expand Up @@ -225,6 +227,7 @@ function _createTargetProfile({
comment,
imageUrl,
outdated,
areKnowledgeElementsResettable,
attachedOrganizationIds,
}) {
databaseBuilder.factory.buildTargetProfile({
Expand All @@ -237,6 +240,7 @@ function _createTargetProfile({
comment,
imageUrl,
outdated,
areKnowledgeElementsResettable,
});
attachedOrganizationIds.map((organizationId) =>
databaseBuilder.factory.buildTargetProfileShare({
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -232,6 +232,8 @@ export default async function initUser(databaseBuilder) {
code: 'EVALBADGE',
targetProfileId: targetProfileId,
idPixLabel: null,
customResultPageText:
'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris eget tortor ut diam dictum viverra quis at purus. Morbi id quam a massa blandit gravida.',
configCampaign: { participantCount: 0 },
});

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -141,6 +141,7 @@ export default async function initUser(databaseBuilder) {
ownerOrganizationId: TEAM_EVALUATION_OFFSET_ID,
isSimplifiedAccess: false,
description: 'Profil cible avec des paliers par seuils',
areKnowledgeElementsResettable: true,
configTargetProfile: {
frameworks: [
{
Expand Down Expand Up @@ -212,6 +213,7 @@ export default async function initUser(databaseBuilder) {
organizationId: TEAM_EVALUATION_OFFSET_ID,
ownerId: TEAM_EVALUATION_OFFSET_ID,
name: 'Campagne avec des paliers par niveaux - niveau à 0 ',
title: 'Campagne avec des paliers par niveaux - niveau à 0 ',
code: 'EVALSTAG1',
targetProfileId: targetProfile1.targetProfileId,
idPixLabel: null,
Expand All @@ -222,6 +224,7 @@ export default async function initUser(databaseBuilder) {
organizationId: TEAM_EVALUATION_OFFSET_ID,
ownerId: TEAM_EVALUATION_OFFSET_ID,
name: 'Campagne avec des paliers par niveaux - niveau à 0 et un "Premier Acquis"',
title: 'Campagne avec des paliers par niveaux - niveau à 0 et un "Premier Acquis"',
code: 'EVALSTAG2',
targetProfileId: targetProfile2.targetProfileId,
idPixLabel: null,
Expand All @@ -232,16 +235,22 @@ export default async function initUser(databaseBuilder) {
organizationId: TEAM_EVALUATION_OFFSET_ID,
ownerId: TEAM_EVALUATION_OFFSET_ID,
name: 'Campagne avec des paliers par niveau - niveau à 0 et paliers de niveaux',
title: 'Campagne avec des paliers par niveau - niveau à 0 et paliers de niveaux',
code: 'EVALSTAG3',
targetProfileId: targetProfile3.targetProfileId,
idPixLabel: null,
configCampaign: { participantCount: 0 },
customResultPageText:
'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris eget tortor ut diam dictum viverra quis at purus. Morbi id quam a massa blandit gravida.',
customResultPageButtonUrl: 'https://pix.org',
customResultPageButtonText: 'Cliquez ici',
configCampaign: { participantCount: 1 },
});
const campaign4 = await tooling.campaign.createAssessmentCampaign({
databaseBuilder,
organizationId: TEAM_EVALUATION_OFFSET_ID,
ownerId: TEAM_EVALUATION_OFFSET_ID,
name: 'Campagne avec des paliers par seuil - seuil à 0',
title: 'Campagne avec des paliers par seuil - seuil à 0',
code: 'EVALSTAG4',
targetProfileId: targetProfile4.targetProfileId,
idPixLabel: null,
Expand All @@ -252,6 +261,7 @@ export default async function initUser(databaseBuilder) {
organizationId: TEAM_EVALUATION_OFFSET_ID,
ownerId: TEAM_EVALUATION_OFFSET_ID,
name: 'Campagne avec des paliers par seuil - seuil à 0 et un "Premier Acquis"',
title: 'Campagne avec des paliers par seuil - seuil à 0 et un "Premier Acquis"',
code: 'EVALSTAG5',
targetProfileId: targetProfile5.targetProfileId,
idPixLabel: null,
Expand All @@ -262,9 +272,11 @@ export default async function initUser(databaseBuilder) {
organizationId: TEAM_EVALUATION_OFFSET_ID,
ownerId: TEAM_EVALUATION_OFFSET_ID,
name: "Campagne d'évaluation SCO - seuil à 0 et paliers de seuil",
title: "Campagne d'évaluation SCO - seuil à 0 et paliers de seuil",
code: 'EVALSTAG6',
targetProfileId: targetProfile6.targetProfileId,
idPixLabel: null,
multipleSendings: true,
configCampaign: { participantCount: 0 },
});

Expand Down Expand Up @@ -293,11 +305,12 @@ export default async function initUser(databaseBuilder) {
campaignId: campaign3.campaignId,
userId: user.id,
organizationLearnerId: organizationLearner.id,
masteryRate: 0.7,
masteryRate: 0.2,
pixScore: 500,
validatedSkillsCount: 5,
validatedSkillsCount: 2,
isCertifiable: true,
status: 'TO_SHARE',
createdAt: dayjs(),
});
const campaignParticipation4 = databaseBuilder.factory.buildCampaignParticipation({
campaignId: campaign4.campaignId,
Expand Down Expand Up @@ -327,7 +340,8 @@ export default async function initUser(databaseBuilder) {
pixScore: 500,
validatedSkillsCount: 5,
isCertifiable: true,
status: 'TO_SHARE',
status: 'SHARED',
sharedAt: new Date('2020-01-01'),
});

const allCampaignParticipations = [
Expand All @@ -342,11 +356,20 @@ export default async function initUser(databaseBuilder) {
// 3. Build stage-acquisitions
[
{ stages: stages1, campaignParticipation: campaignParticipation1 },
{ stages: stages2, campaignParticipation: campaignParticipation2 },
{
stages: stages2,
campaignParticipation: campaignParticipation2,
},
{ stages: stages3, campaignParticipation: campaignParticipation3 },
{ stages: stages4, campaignParticipation: campaignParticipation4 },
{
stages: stages4,
campaignParticipation: campaignParticipation4,
},
{ stages: stages5, campaignParticipation: campaignParticipation5 },
{ stages: stages6, campaignParticipation: campaignParticipation6 },
{
stages: stages6,
campaignParticipation: campaignParticipation6,
},
].forEach(({ stages, campaignParticipation }) => {
stages.stageIds.forEach((stageId) => {
databaseBuilder.factory.buildStageAcquisition({
Expand All @@ -368,6 +391,8 @@ export default async function initUser(databaseBuilder) {
userId: user.id,
type: 'CAMPAIGN',
campaignParticipationId: campaignParticipation.id,
isImproving: true,
createdAt: dayjs(),
});

// 2. Build assessment result
Expand All @@ -376,7 +401,9 @@ export default async function initUser(databaseBuilder) {
});

// 3. Knowledge elements configuration (we need some acquired KEs to have stages)
for (const { answerData, keData } of answersAndKEFromAdvancedProfile) {
for (let i = 0; i < answersAndKEFromAdvancedProfile.length; i++) {
const { answerData, keData } = answersAndKEFromAdvancedProfile[i];

const answer = databaseBuilder.factory.buildAnswer({
assessmentId: assessment.id,
answerData,
Expand All @@ -387,7 +414,8 @@ export default async function initUser(databaseBuilder) {
answerId: answer.id,
userId: user.id,
...keData,
createdAt: dayjs().subtract(1, 'day'),
status: i % 2 ? 'invalidated' : 'validated',
createdAt: new Date('2020-01-01'),
});
}
});
Expand Down

0 comments on commit a9bbff5

Please sign in to comment.