feat: add business feasibility step two

dev-QQq
chenyuan 3 weeks ago
parent 0007af2cde
commit c8618d8206

@ -364,3 +364,18 @@ export function checkBusinessFeasibilityStepOne(payload) {
if (isStudentDemo()) { try { return Promise.resolve({ code: 200, data: validateBusinessFeasibilityStepOneDemo(payload) }); } catch (error) { return Promise.reject(error); } }
return request({ url: "/api/student-training-answers/business-feasibility/step-1/validate", method: "post", data: payload, headers: { repeatSubmit: false } });
}
export function checkBusinessFeasibilityStepTwo(payload) {
const value = payload || {};
if (isStudentDemo()) {
const decisions = ["highly-feasible", "feasible-after-optimization", "observe", "not-feasible"];
const priorities = ["hardware-cost-control", "content-ecosystem", "channel-expansion", "brand-differentiation", "supply-chain-management", "capital-planning"];
const selected = Array.isArray(value.priorities) ? value.priorities : [];
if (!decisions.includes(value.decision)) return Promise.reject(new Error("请选择项目商业可行性总体评估"));
if (selected.some((item) => !priorities.includes(item)) || new Set(selected).size !== selected.length) return Promise.reject(new Error("优先问题包含无效或重复项"));
if (value.decision === "not-feasible" && selected.length) return Promise.reject(new Error("选择不可行时无需勾选优先问题"));
if (value.decision !== "not-feasible" && selected.length !== 3) return Promise.reject(new Error("请且仅选择 3 个需要优先解决的关键问题"));
return Promise.resolve({ code: 200, data: { valid: true, message: "校验通过" } });
}
return request({ url: "/api/student-training-answers/business-feasibility/step-2/validate", method: "post", data: value, headers: { repeatSubmit: false } });
}

File diff suppressed because one or more lines are too long
Loading…
Cancel
Save