diff --git a/docs/plans/frontend/2026-07-16-suspicious-transaction-default-page-size-frontend-implementation.md b/docs/plans/frontend/2026-07-16-suspicious-transaction-default-page-size-frontend-implementation.md index 6a580b9a..6df77708 100644 --- a/docs/plans/frontend/2026-07-16-suspicious-transaction-default-page-size-frontend-implementation.md +++ b/docs/plans/frontend/2026-07-16-suspicious-transaction-default-page-size-frontend-implementation.md @@ -3,15 +3,18 @@ ## 修改范围 - `ruoyi-ui/src/views/ccdiProject/components/detail/RiskDetailSection.vue` +- `ruoyi-ui/src/views/ccdiProject/components/detail/PreliminaryCheck.vue` - `ruoyi-ui/tests/unit/risk-detail-suspicious-transaction-layout.test.js` +- `ruoyi-ui/tests/unit/preliminary-check-suspicious-transaction-load.test.js` ## 实施步骤 1. 将共用默认分页常量拆分为涉疑交易默认值和其他风险列表默认值。 -2. 涉疑交易初始化及项目切换时使用 10 条默认值。 -3. 员工征信负面和异常账户关联人员继续使用 5 条默认值。 -4. 更新定向测试,验证分页默认值和影响范围。 -5. 执行前端生产构建和真实页面验证。 +2. 结果总览首次加载涉疑交易时请求 10 条。 +3. 涉疑交易初始化及项目切换时使用 10 条默认值。 +4. 员工征信负面和异常账户关联人员继续使用 5 条默认值。 +5. 更新定向测试,验证分页默认值和影响范围。 +6. 执行前端生产构建和真实页面验证。 ## 完成标准 diff --git a/docs/reports/implementation/2026-07-16-suspicious-transaction-default-page-size.md b/docs/reports/implementation/2026-07-16-suspicious-transaction-default-page-size.md new file mode 100644 index 00000000..c095afe1 --- /dev/null +++ b/docs/reports/implementation/2026-07-16-suspicious-transaction-default-page-size.md @@ -0,0 +1,23 @@ +# 涉疑交易明细默认分页调整实施记录 + +## 修改内容 + +- 结果总览首次加载涉疑交易明细时,请求参数由 `pageSize=5` 调整为 `pageSize=10`。 +- 涉疑交易明细组件初始化和项目切换时,默认分页条数调整为 10。 +- 员工征信负面和异常账户关联人员默认分页条数继续保持 5。 +- 分页可选项继续保持 `5 / 10 / 20 / 50`。 + +## 影响范围 + +- 仅影响结果总览中涉疑交易明细的默认展示条数。 +- 不修改后端接口、数据库、筛选逻辑或其他风险列表分页行为。 + +## 验证情况 + +- 使用 Node 22.22.3、npm 10.9.8 执行 5 个相关前端测试,全部通过。 +- 执行 `npm run build:prod`,生产构建通过;仅有仓库原有包体积警告。 +- 当前会话未提供 `browser-use` 所需浏览器执行工具,改用终端 Playwright 连接真实前端和真实 Java 后端验证。 +- 项目 90629002 首次涉疑交易请求携带 `pageSize=10`,页面分页控件显示“10条/页”。 +- 员工征信负面和异常账户请求仍携带 `pageSize=5`。 +- 浏览器控制台错误数为 0。 +- 验证结束后已关闭测试浏览器、前端和后端进程,80、62318 均无监听进程。 diff --git a/ruoyi-ui/src/views/ccdiProject/components/detail/PreliminaryCheck.vue b/ruoyi-ui/src/views/ccdiProject/components/detail/PreliminaryCheck.vue index 16b65b46..f04f9fc8 100644 --- a/ruoyi-ui/src/views/ccdiProject/components/detail/PreliminaryCheck.vue +++ b/ruoyi-ui/src/views/ccdiProject/components/detail/PreliminaryCheck.vue @@ -99,6 +99,8 @@ import RiskDetailSection from "./RiskDetailSection"; import ProjectAnalysisDialog from "./ProjectAnalysisDialog"; import ExternalPersonDetailDialog from "./ExternalPersonDetailDialog"; +const DEFAULT_SUSPICIOUS_PAGE_SIZE = 10; + export default { name: "PreliminaryCheck", components: { @@ -429,7 +431,7 @@ export default { projectId: this.projectId, suspiciousType: "ALL", pageNum: 1, - pageSize: 5, + pageSize: DEFAULT_SUSPICIOUS_PAGE_SIZE, }), getOverviewEmployeeCreditNegative({ projectId: this.projectId, diff --git a/ruoyi-ui/src/views/ccdiProject/components/detail/RiskDetailSection.vue b/ruoyi-ui/src/views/ccdiProject/components/detail/RiskDetailSection.vue index e36927c2..716907a3 100644 --- a/ruoyi-ui/src/views/ccdiProject/components/detail/RiskDetailSection.vue +++ b/ruoyi-ui/src/views/ccdiProject/components/detail/RiskDetailSection.vue @@ -379,6 +379,7 @@ const EXTERNAL_RISK_MODEL_OPTIONS = [ { value: "EXTERNAL_SUSPICIOUS_GAMBLING", label: "外部人员可疑赌博" }, { value: "EXTERNAL_SUSPICIOUS_RELATION", label: "外部人员可疑关系" }, ]; +const DEFAULT_SUSPICIOUS_PAGE_SIZE = 10; const DEFAULT_RISK_DETAIL_PAGE_SIZE = 5; const RISK_DETAIL_PAGE_SIZE_OPTIONS = [5, 10, 20, 50]; @@ -540,7 +541,7 @@ export default { currentSuspiciousType: "ALL", selectedModelCode: "", suspiciousPageNum: 1, - suspiciousPageSize: DEFAULT_RISK_DETAIL_PAGE_SIZE, + suspiciousPageSize: DEFAULT_SUSPICIOUS_PAGE_SIZE, suspiciousTotal: 0, suspiciousTransactionList: [], riskModelOptions: [], @@ -607,7 +608,7 @@ export default { this.currentSuspiciousType = normalizeSuspiciousType(value && value.suspiciousType); this.selectedModelCode = ""; this.suspiciousPageNum = 1; - this.suspiciousPageSize = DEFAULT_RISK_DETAIL_PAGE_SIZE; + this.suspiciousPageSize = DEFAULT_SUSPICIOUS_PAGE_SIZE; this.suspiciousTotal = Number(value && value.total) || 0; this.suspiciousTransactionList = normalizeSuspiciousRows( value && value.suspiciousTransactionList diff --git a/ruoyi-ui/tests/unit/preliminary-check-suspicious-transaction-load.test.js b/ruoyi-ui/tests/unit/preliminary-check-suspicious-transaction-load.test.js index 0a797712..7c50162a 100644 --- a/ruoyi-ui/tests/unit/preliminary-check-suspicious-transaction-load.test.js +++ b/ruoyi-ui/tests/unit/preliminary-check-suspicious-transaction-load.test.js @@ -27,8 +27,9 @@ assert( "结果总览应继续向 RiskDetailSection 注入 riskDetails" ); assert( - preliminaryCheckSource.includes("pageSize: 5"), - "结果总览首屏涉疑交易应按5条加载" + preliminaryCheckSource.includes("const DEFAULT_SUSPICIOUS_PAGE_SIZE = 10;") && + preliminaryCheckSource.includes("pageSize: DEFAULT_SUSPICIOUS_PAGE_SIZE"), + "结果总览首屏涉疑交易应按10条加载" ); assert( mockSource.includes("suspiciousTransactionList"), diff --git a/ruoyi-ui/tests/unit/risk-detail-suspicious-transaction-layout.test.js b/ruoyi-ui/tests/unit/risk-detail-suspicious-transaction-layout.test.js index 3ea0a5ab..b2c1289b 100644 --- a/ruoyi-ui/tests/unit/risk-detail-suspicious-transaction-layout.test.js +++ b/ruoyi-ui/tests/unit/risk-detail-suspicious-transaction-layout.test.js @@ -22,7 +22,12 @@ const source = fs.readFileSync( "摘要 / 交易类型", "异常标签", "