日期: 2026-09-30
状态: 已确认待实现
仓库: shanxia2.0(backend/+web-admin/+miniprogram/)
OpenSpec:openspec/changes/void-cancel-reason-required/
对齐: 合同 / 调价函独立字段形态;本批原因非必填(合同/调价函仍保持其原有必填策略)
多处「作废」仅确认对话框,无原因落库。用户要求补齐独立字段以便有原因时展示与审计,并明确:作废原因非必须填写。
| # | 决策 | 说明 |
|---|---|---|
| D1 | 存储方案 | 独立字段三元组(原因 + 时间 + 操作人),不拼 remark |
| D2 | CRM 报价单 | invalid_reason / invalid_time / invalid_by |
| D3 | PL 业务 | cancel_reason / cancel_time / cancel_by |
| D4 | 地磅 | void_reason / void_time / void_by |
| D5 | 原因形态 | 自由文本;选填,不阻塞作废;不引入字典 |
| D6 | 空原因时 | 原因列 NULL;仍写 time / by |
| D7 | 历史数据 | 不回填 |
| D8 | 加油恢复 | 清空 cancel 三元组 |
| D9 | 范围外 | 合同/调价函不改;公开出入库页作废另议 |
| 表 | 字段前缀 |
|---|---|
crm_quote |
invalid_ |
pl_plan |
cancel_ |
pl_vehicle_fuel_register |
cancel_ |
pl_vehicle_recharge_apply |
cancel_ |
pl_vehicle_maintenance_apply |
cancel_ |
pl_vehicle_urea_apply |
cancel_ |
pl_freight_settlement |
cancel_ |
db_weighing_slip |
void_ |
每组:*_reason varchar(500)、*_time datetime、*_by varchar(64),均可 NULL。
Web:报价单、运输计划(含 m/pl)、加油、充值、维保、尿素、结算、地磅——作废弹窗含选填原因。
小程序:充值申请、加油登记、地磅——可填原因,可空提交。
见 OpenSpec:openspec/changes/void-cancel-reason-required/design.md 与 specs/void-cancel-reason/spec.md。