diff --git a/src/api/studentTrainingAnswer.js b/src/api/studentTrainingAnswer.js index c66568a..c575349 100644 --- a/src/api/studentTrainingAnswer.js +++ b/src/api/studentTrainingAnswer.js @@ -413,3 +413,22 @@ export function checkTargetUserProfileStepFour(payload) { headers: { repeatSubmit: false }, }); } + +export function checkTargetUserProfileStepFive(payload) { + const value = payload || {}; + const segments = Array.isArray(value.segments) ? value.segments : []; + const requiredFields = ["market", "attractiveness", "painPoints", "behaviorCharacteristics", "productOpportunity"]; + if (isStudentDemo()) { + const incomplete = segments.find((segment) => requiredFields.some((field) => !String(segment?.[field] || "").trim())); + if (!segments.length || segments.length > 6 || incomplete || !String(value.marketSelection || "").trim()) { + return Promise.reject(new Error("请完成细分市场分析表和市场选择结论")); + } + return Promise.resolve({ code: 200, data: { valid: true, message: "校验通过" } }); + } + return request({ + url: "/api/student-training-answers/target-user-profile/step-5/validate", + method: "post", + data: { segments, marketSelection: String(value.marketSelection || "") }, + headers: { repeatSubmit: false }, + }); +} diff --git a/src/views/demand/people.vue b/src/views/demand/people.vue index d05759f..9fa9253 100644 --- a/src/views/demand/people.vue +++ b/src/views/demand/people.vue @@ -227,6 +227,65 @@ +
+

+ 结合 RFM 用户群画像和重点用户画像的分析结果,进一步细分市场,寻找产品开发机会。请评估各细分市场的吸引力,并从不同细分用户的行为特征和需求痛点中提炼产品机会。 +

+ +
+
+

用户细分

+

细分市场分析表

+
+
+ + 增加一行 + + + 删除一行 + +
+
+

可直接编辑表格内容,支持行扩展,最多 {{ MAX_MARKET_SEGMENTS }} 行。

+ +
+ + + + + + + + + + + + + + +
细分市场市场吸引力需求痛点行为特征产品机会
+ + + + + + + +