锁定结果总览前端接口契约
This commit is contained in:
@@ -10,6 +10,7 @@ const source = fs.readFileSync(
|
|||||||
[
|
[
|
||||||
"getOverviewDashboard",
|
"getOverviewDashboard",
|
||||||
"getOverviewRiskPeople",
|
"getOverviewRiskPeople",
|
||||||
|
"getOverviewRiskModelCards",
|
||||||
"loadOverviewData",
|
"loadOverviewData",
|
||||||
"Promise.all",
|
"Promise.all",
|
||||||
].forEach((token) => assert(source.includes(token), token));
|
].forEach((token) => assert(source.includes(token), token));
|
||||||
@@ -17,3 +18,25 @@ const source = fs.readFileSync(
|
|||||||
assert(!source.includes("getOverviewTopRiskPeople"), "页面不应再依赖TOP10接口");
|
assert(!source.includes("getOverviewTopRiskPeople"), "页面不应再依赖TOP10接口");
|
||||||
assert(!source.includes("topRiskPeopleRes"), "页面不应再处理TOP10响应");
|
assert(!source.includes("topRiskPeopleRes"), "页面不应再处理TOP10响应");
|
||||||
assert(!source.includes("topRiskPeopleData"), "页面不应再处理TOP10数据");
|
assert(!source.includes("topRiskPeopleData"), "页面不应再处理TOP10数据");
|
||||||
|
|
||||||
|
const loadOverviewDataBlock = source.match(
|
||||||
|
/const \[dashboardRes, riskPeopleRes, riskModelCardsRes\] = await Promise\.all\(\[([\s\S]*?)\]\);/m
|
||||||
|
);
|
||||||
|
|
||||||
|
assert(loadOverviewDataBlock, "入口页应继续并发请求仪表盘、风险人员和模型卡片");
|
||||||
|
[
|
||||||
|
"getOverviewDashboard(this.projectId)",
|
||||||
|
"getOverviewRiskPeople(this.projectId)",
|
||||||
|
"getOverviewRiskModelCards(this.projectId)",
|
||||||
|
].forEach((token) => assert(loadOverviewDataBlock[0].includes(token), token));
|
||||||
|
|
||||||
|
[
|
||||||
|
"createOverviewLoadedData",
|
||||||
|
"dashboardData",
|
||||||
|
"riskPeopleData",
|
||||||
|
"riskModelCardsData",
|
||||||
|
].forEach((token) => assert(source.includes(token), token));
|
||||||
|
|
||||||
|
["employeeResult", "resultTable", "topRiskList"].forEach((token) =>
|
||||||
|
assert(!source.includes(token), `入口页不应感知或回退到旧/新底层数据源字段:${token}`)
|
||||||
|
);
|
||||||
|
|||||||
@@ -10,11 +10,35 @@ const source = fs.readFileSync(
|
|||||||
[
|
[
|
||||||
"getOverviewDashboard",
|
"getOverviewDashboard",
|
||||||
"getOverviewRiskPeople",
|
"getOverviewRiskPeople",
|
||||||
|
"getOverviewRiskModelCards",
|
||||||
|
"getOverviewRiskModelPeople",
|
||||||
"/ccdi/project/overview/dashboard",
|
"/ccdi/project/overview/dashboard",
|
||||||
"/ccdi/project/overview/risk-people",
|
"/ccdi/project/overview/risk-people",
|
||||||
|
"/ccdi/project/overview/risk-models/cards",
|
||||||
|
"/ccdi/project/overview/risk-models/people",
|
||||||
].forEach((token) => assert(source.includes(token), token));
|
].forEach((token) => assert(source.includes(token), token));
|
||||||
|
|
||||||
[
|
[
|
||||||
"getOverviewTopRiskPeople",
|
"getOverviewTopRiskPeople",
|
||||||
"/ccdi/project/overview/top-risk-people",
|
"/ccdi/project/overview/top-risk-people",
|
||||||
].forEach((token) => assert(!source.includes(token), token));
|
].forEach((token) => assert(!source.includes(token), token));
|
||||||
|
|
||||||
|
const riskModelPeopleFn = source.match(
|
||||||
|
/export function getOverviewRiskModelPeople\(params\) \{[\s\S]*?params:\s*\{([\s\S]*?)\}\s*\}\s*\)/m
|
||||||
|
);
|
||||||
|
|
||||||
|
assert(riskModelPeopleFn, "应保留模型人员接口参数透传逻辑");
|
||||||
|
|
||||||
|
[
|
||||||
|
"projectId: params.projectId",
|
||||||
|
"modelCodes: params.modelCodes",
|
||||||
|
"matchMode: params.matchMode",
|
||||||
|
"keyword: params.keyword",
|
||||||
|
"deptId: params.deptId",
|
||||||
|
"pageNum: params.pageNum",
|
||||||
|
"pageSize: params.pageSize",
|
||||||
|
].forEach((token) => assert(riskModelPeopleFn[0].includes(token), token));
|
||||||
|
|
||||||
|
["employeeResult", "resultTable", "overview/result"].forEach((token) =>
|
||||||
|
assert(!source.includes(token), `前端 API 契约不应感知结果表实现:${token}`)
|
||||||
|
);
|
||||||
|
|||||||
Reference in New Issue
Block a user