diff --git a/src/modules/dimension-config/AGENTS.md b/src/modules/dimension-config/AGENTS.md index 57b9a5d1..416a0fd4 100644 --- a/src/modules/dimension-config/AGENTS.md +++ b/src/modules/dimension-config/AGENTS.md @@ -16,7 +16,7 @@ ## 关键边界 -- 客户固定四档箱规,默认计算方式为 `ADD/MULTIPLY`;不要在调用方重写算法或补默认档位。 +- 客户固定四档箱规与默认算法(`ADD/MULTIPLY`)的正式规则见详细索引同名节;本模块只提供数据入口,不在调用方重写算法或补默认档位。 - 新建客户时的箱规与权重系数初始化由 IAM 建档流程触发(`iam/` 的初始化服务 + Firstleg 内部接口),本模块只提供查询与保存入口。 - 尺寸单位固定为厘米,体积由服务端计算;页面与调用方不自行换算。 - 改类型或字段时同步检查 `../inbounds/`、`../customers/` 两个消费方与 Firstleg 合同测试。 diff --git a/src/modules/fee-items/AGENTS.md b/src/modules/fee-items/AGENTS.md index 0d901493..921f172d 100644 --- a/src/modules/fee-items/AGENTS.md +++ b/src/modules/fee-items/AGENTS.md @@ -4,20 +4,20 @@ - 本文件适用于 `src/modules/fee-items/`,代码路径相对本目录;应用公共规则见 `../../../AGENTS.md`。 - 只有一个页面 `pages/FeeItemsView.vue`(路由 `master-data/fee-items`,挂在系统主数据下)和一个接口文件 `api/platformFeeItems.ts`;弹框实现与页面同目录。 -- 后端只查 `firstleg/` 的费用项目与价格簿入口;客户作用域价格归 `../fba-pricing/`,不要混。 +- 后端只查 `firstleg/controller/PlatformFeeItemController.java` 与 `openapi/fee-item-v1.yaml`;客户专属价格簿归 `../fba-pricing/`,两者不是同一概念。 ## 页面与入口 | 目标 | 页面/入口 | API 与后端 | |---|---|---| | 费用项目列表、启停与排序 | `pages/FeeItemsView.vue`;`master-data/fee-items` | `api/platformFeeItems.ts`;`firstleg/controller/PlatformFeeItemController.java` | -| 新增/编辑费用项目弹框 | `pages/FeeItemsView.vue` 内弹框 | `api/platformFeeItems.ts` | -| 默认价格与计费科目 | 列表“默认价格”列 | `api/platformFeeItems.ts`;服务端仍是价格权威 | +| 新增/编辑费用项目弹框 | `pages/FeeItemsView.vue` 内弹框 | `api/platformFeeItems.ts` 的 `FeeItemSaveRequest`(`feeCode` 可改) | +| 默认价格(CNY,可空)与类别/贸易范围 | 列表与新增/编辑弹框 | `api/platformFeeItems.ts`;带价与校验规则见详细索引 | ## 关键边界 -- 费用项目编码与类型是不可变标识,改名不影响历史账单;不要用名称推断科目。 -- 默认价格只是新建费用时的初值,实际计费以服务端价格簿为准,页面不参与金额计算。 +- `feeCode` 允许在编辑时修改,OpenAPI 只约束 `^[A-Za-z0-9_-]+$` 与 50 字符;不要新增“编码不可变”的前端禁用、改名拦截或唯一性推断,以服务端校验为准。 +- `defaultPrice` 只是带入初值:仅当用户主动选择该项目时带入(入库同时带单价与金额、柜次带金额),**均允许人工修改**;为空表示不自动带价,`0` 表示明确的零元。修改或清空默认价不追改已有费用;打开已有费用、切换供应商或保存业务费用时不重新套用默认价,也不改变审核、发布与结算流程。 - 停用费用项目不回溯已出账费用;历史账单继续显示原项目名称快照。 - 供应商类别仅对需要供应商的费用类型有效,留空表示任意启用供应商,不由前端补默认值。 diff --git a/src/modules/inbounds/AGENTS.md b/src/modules/inbounds/AGENTS.md index fb2f84e7..3de4e682 100644 --- a/src/modules/inbounds/AGENTS.md +++ b/src/modules/inbounds/AGENTS.md @@ -11,7 +11,7 @@ | 目标 | 页面/子域入口 | API 与后端 | |---|---|---| | 订单测量列表与工作区 | `pages/InboundMeasurementsView.vue`、`components/InboundWorkflowWorkspace.vue`;`inbounds/measurements` | `measurement/api.ts`;`firstleg/service/InboundMeasurementService.java` | -| 测量弹框、测量面板、尺寸策略与证据图 | `measurement/InboundMeasurementDialog.vue`(组合壳)、`measurement/InboundMeasurementPanel.vue`(数据与操作)、`measurement/components/MeasurementEvidenceThumbnail.vue` | 实际请求在 `measurement/InboundMeasurementPanel.vue` → `measurement/api.ts`;弹框只组合面板与 OCR 面板,不直接调接口;`firstleg/service/MojiaMeasurementOpenApiService.java` | +| 测量弹框、测量面板、尺寸策略与证据图 | `measurement/InboundMeasurementDialog.vue`(组合壳)、`measurement/InboundMeasurementPanel.vue`(数据与操作)、`measurement/components/MeasurementEvidenceThumbnail.vue` | 实际请求在 `measurement/InboundMeasurementPanel.vue` → `measurement/api.ts` → 平台链路 `firstleg/controller/PlatformInboundMeasurementController.java` → `firstleg/service/InboundMeasurementService.java`、`MeasurementSubmissionService.java`;设备上报是另一条链路(`MojiaMeasurementOpenApiService`),不要混;弹框只组合面板与 OCR 面板,不直接调接口 | | 测量数据审核 | `pages/MeasurementReviewsView.vue`、`review/MeasurementReviewPanel.vue`;`inbounds/measurement-reviews` | `review/api.ts`;`firstleg/service/MeasurementReviewService.java`、`firstleg/service/InitialInboundPricingService.java` | | 称重图片、OCR 与库位槽状态 | `weight/components/WeightOcrPanel.vue`、`weight/components/WeightImageThumbnail.vue` | `weight/api/weightOcr.ts`;`firstleg/service/MeasurementLocationOccupationService.java`、`firstleg/service/MeasurementSubmissionService.java` | | 入库单列表、摘要与历史 | `pages/InboundOrdersView.vue`、`core/InboundSummaryPanel.vue`、`core/InboundHistoryPanel.vue`;`inbounds` | `core/api.ts`、`core/types.ts`;`firstleg/service/InboundOrderQueryService.java` | @@ -20,8 +20,8 @@ ## 关键边界 -- 客户固定四档箱规,默认计算方式为 `ADD/MULTIPLY`;保存后以外箱尺寸、体积重和计费基数只认服务端返回值,页面不独立重算。 -- 费用确认的实际箱数、毛重和体积优先汇总当前 `actualMeasurementRows`,不得用可能滞后的工作区顶层合计覆盖明细。 +- 客户四档箱规与默认算法(`ADD/MULTIPLY`)的规则正文在详细索引维护;本模块只按 `../dimension-config/` 消费,保存后以外箱尺寸、体积重和计费基数只认服务端返回值,页面不独立重算。 +- 费用确认的实际箱数、毛重和体积取值口径以详细索引“入库、测量”节(`actualMeasurementRows`)为准,本文件不复制该规则。 - 称重卡片只展示服务端 `locationCode/slotStatus/sharedOverflow`,不渲染或推导整票预留引导;删除图片须提示该槽位仍归本票保留,不按图片下标推导托盘或库位。 - 人工定价仅 FBA、已有实际测量且价格未命中时开放,客户已确认费用禁止改价;`MANUAL_QUOTE` 不伪造价格簿关联。 - 扣货与解除、凭证下载走 `../unified-orders/` 与 `../inbounds/` 的正式入口,本模块不另建凭证链路。