From 731438754c6063f2e7c804fa941dbb03252b3cd7 Mon Sep 17 00:00:00 2001 From: chenyuan Date: Tue, 11 Aug 2026 22:18:58 +0800 Subject: [PATCH 1/4] feat: add consumer scenario journey ordering --- src/api/studentTrainingAnswer.js | 29 ++ src/views/demand/consumer-scenario.vue | 382 ++++++++++++++++++++++++- 2 files changed, 398 insertions(+), 13 deletions(-) diff --git a/src/api/studentTrainingAnswer.js b/src/api/studentTrainingAnswer.js index 422d013..b0dd82b 100644 --- a/src/api/studentTrainingAnswer.js +++ b/src/api/studentTrainingAnswer.js @@ -423,3 +423,32 @@ export function checkConsumerBehaviorStepFour(payload) { headers: { repeatSubmit: false }, }); } + +const consumerScenarioJourneyOrder = [ + "problem-awareness", + "information-search", + "evaluation-decision", + "purchase-conversion", + "post-purchase", +]; + +export function checkConsumerScenarioStepOne(payload) { + const stageOrder = Array.isArray(payload?.stageOrder) ? payload.stageOrder : []; + if (isStudentDemo()) { + const valid = stageOrder.length === consumerScenarioJourneyOrder.length + && stageOrder.every((stageId, index) => stageId === consumerScenarioJourneyOrder[index]); + return Promise.resolve({ + code: 200, + data: { + valid, + message: valid ? "排序正确,可以进入下一步。" : "排序还不正确,请根据消费者购买旅程再次调整。", + }, + }); + } + return request({ + url: "/api/student-training-answers/consumer-scenario/step-1/validate", + method: "post", + data: { stageOrder }, + headers: { repeatSubmit: false }, + }); +} diff --git a/src/views/demand/consumer-scenario.vue b/src/views/demand/consumer-scenario.vue index 15ae82a..38858ce 100644 --- a/src/views/demand/consumer-scenario.vue +++ b/src/views/demand/consumer-scenario.vue @@ -52,15 +52,46 @@
-
-

用户购买旅程

-
-