refactor: 全链路统一将物料编码改称图号,优化入库流程

1.  统一全系统UI与文档中的"物料编码"为客户口径"图号",覆盖前端页面、后端导出表头与帮助文档
2.  优化入库模块:
    - 新增归属类型"其他"并完善注释
    - 入库时自动回写入库单批次号
    - 优化库位选择为三级联动下拉选择,替换原手动输入
    - 新增入库归属编号录入功能
3. 更新需求文档,同步完成图号全链路改造的验收标记
This commit is contained in:
SunYF
2026-09-17 18:27:07 +08:00
parent 1cc93795ce
commit e31b85e87a
20 changed files with 162 additions and 68 deletions
+8 -3
View File
@@ -72,7 +72,7 @@ func createInboundHandler(ctx *svc.ServiceContext) http.HandlerFunc {
Supplier string `json:"supplier"`
Remark string `json:"remark"`
InspectionNo string `json:"inspectionNo"`
OwnershipType string `json:"ownershipType"` // workorder/project/none
OwnershipType string `json:"ownershipType"` // workorder/project/other/none
OwnershipNo string `json:"ownershipNo"`
}
if err := parseJSON(r, &req); err != nil {
@@ -183,6 +183,11 @@ func createInboundHandler(ctx *svc.ServiceContext) http.HandlerFunc {
if batchNo == "" {
batchNo = genBatchNo(ctx, req.MaterialCode)
}
// 回写入库单头:便于「入库记录」列表直接展示批次号(库存行/明细已含批次,此处补齐表头)
if _, e := tx.InboundOrder.UpdateOneID(ib.ID).SetBatchNo(batchNo).Save(ctx0()); e != nil {
fail(w, http.StatusInternalServerError, "回写入库单批次号失败: "+e.Error())
return
}
qty := req.Quantity
if qty <= 0 {
fail(w, http.StatusBadRequest, "数量必填且大于 0,请输入本次入库数量")
@@ -476,10 +481,10 @@ func exportInboundHandler(ctx *svc.ServiceContext) http.HandlerFunc {
}
}
// ownershipTypeOrNone 归属类型归一化(工单号/科技项目号/无)
// ownershipTypeOrNone 归属类型归一化(工单号/科技项目号/其他/无)
func ownershipTypeOrNone(v string) string {
switch v {
case "workorder", "project":
case "workorder", "project", "other":
return v
default:
return "none"