feat: 完成区域管理、装箱功能优化与接口标准化
- 新增区域状态字段与增删改查接口,支持区域启用/停用 - 重构实体字段JSON标签为camelCase格式统一接口规范 - 优化入库、盘点、装箱流程的交互与提示文案 - 新增装箱管理功能,支持合同号关联与装箱编辑 - 调整前端菜单与帮助文档适配业务场景变更
This commit is contained in:
@@ -40,6 +40,10 @@ func createInboundHandler(ctx *svc.ServiceContext) http.HandlerFunc {
|
||||
fail(w, http.StatusBadRequest, "物料编码必填")
|
||||
return
|
||||
}
|
||||
if req.ZoneCode == "" {
|
||||
fail(w, http.StatusBadRequest, "区域必填,请先选择入库区域")
|
||||
return
|
||||
}
|
||||
|
||||
// 物料档案
|
||||
m, err := ctx.EntClient.Material.Query().
|
||||
@@ -73,13 +77,18 @@ func createInboundHandler(ctx *svc.ServiceContext) http.HandlerFunc {
|
||||
|
||||
// 结构件(批次管理)
|
||||
if m.ManageMode == 1 {
|
||||
// 结构件走批次入库,不允许携带 SN 清单
|
||||
if len(req.SnList) > 0 {
|
||||
fail(w, http.StatusBadRequest, "该物料为结构件(按批次管理),不应提交 SN 清单,请使用『结构件入库』")
|
||||
return
|
||||
}
|
||||
batchNo := req.BatchNo
|
||||
if batchNo == "" {
|
||||
batchNo = genBatchNo(req.MaterialCode)
|
||||
}
|
||||
qty := req.Quantity
|
||||
if qty <= 0 {
|
||||
fail(w, http.StatusBadRequest, "结构件入库 数量必填且大于0")
|
||||
fail(w, http.StatusBadRequest, "数量必填且大于 0,请输入本次入库数量")
|
||||
return
|
||||
}
|
||||
|
||||
@@ -119,7 +128,7 @@ func createInboundHandler(ctx *svc.ServiceContext) http.HandlerFunc {
|
||||
// 精密件(SN 管理)
|
||||
if m.ManageMode == 2 {
|
||||
if len(req.SnList) == 0 {
|
||||
fail(w, http.StatusBadRequest, "精密件入库 序列号(SN)必填")
|
||||
fail(w, http.StatusBadRequest, "该物料为精密件(按 SN 管理),请至少录入 1 条序列号(SN)")
|
||||
return
|
||||
}
|
||||
for _, sn := range req.SnList {
|
||||
|
||||
Reference in New Issue
Block a user