合同管理「结算方式」下拉增加 按量结算 / 月结 / 季结 / 其他 四个选项,供业务录入与列表/详情展示。
采用方案:按结算方式分默认文案 + 现有占位符/草稿机制(不拆第二字段、不真留空占位符)。
字典类型:crm_settlement_method(已有)。
| dict_label | dict_value | order_num | 说明 |
|---|---|---|---|
| 货到付款 | arrive_payment |
0 | 已有;条款驱动 |
| 款到发货 | advance_payment |
1 | 已有;条款驱动 |
| 按量结算 | volume_settlement |
2 | 新增 |
| 月结 | monthly_settlement |
3 | 新增 |
| 季结 | quarterly_settlement |
4 | 新增 |
| 其他 | other_settlement |
5 | 新增 |
DictTag、详情展示继续读字典,无需改下拉组件结构。backend/scripts/),并同步基线快照约定(docs/sql/ 如有惯例则跟)。仍使用:
{{SETTLEMENT_METHOD_CONTENT}}settlement_clause_drafts(JSON:{ [settlementMethod]: string })解析:
content = drafts[settlementMethod]
|| defaultClause(settlementMethod)
| settlementMethod | 默认正文 |
|---|---|
advance_payment |
款到发货。需方付款后安排发货,需方收到货物后,供方开具13%增值税专用发票。 |
arrive_payment |
货到付款,需方收到供方货物后,供方开具13%增值税专用发票,无异议后,以现汇方式月结。 |
volume_settlement / monthly_settlement / quarterly_settlement / other_settlement |
请根据双方约定填写结算方式:{label}。供方开具13%增值税专用发票,无异议后,以现汇方式月结。 |
| 其它未知值 | 回退 arrive_payment 默认文案(兼容脏数据) |
其中 {label} 为字典 label(按量结算 / 月结 / 季结 / 其他)。示例:
请根据双方约定填写结算方式:月结。供方开具13%增值税专用发票,无异议后,以现汇方式月结。请根据双方约定填写结算方式:按量结算。供方开具13%增值税专用发票,无异议后,以现汇方式月结。settlement_clause_drafts[当前 settlementMethod];再次打开同方式优先用草稿,不自动覆盖。前端(打印弹窗打开、replacePlaceholders、PDF 再替换)与后端 save_template 在空草稿兜底时,必须使用同一套 defaultClause 规则。
建议:
settlementClause.ts),ContractDetailDialog.vue 与仍在用的 detail.vue 共用。services 小模块),save_template 调用;并补单测覆盖六种方式 + 未知值。前端取 label:字典 crm_settlement_method;后端兜底可用固定 value→label 映射(与上表一致),避免依赖运行时字典表。
settlement_clause_drafts(打开时按新规则即时解析即可)。| 区域 | 内容 |
|---|---|
| SQL | 向 sys_dict_data 插入四条(幂等) |
| 前端 | 第五条 default / 解析逻辑;打印与 PDF 路径 |
| 后端 | save_template 空草稿默认文案与前端对齐 |
| 测试 | 后端 defaultClause / save 兜底单测 |