feat: 完成客户第12条需求+多系统改造

1. 新增预警表添加工单号字段,支持按工单号检索预警
2. 添加工单过滤在制品/绩效报表/预警中心查询
3. 补全WMS台账字段口径与权限配置
4. 修复备料单与数量不符处理流程
5. 新增配送进度/库位联动/自动出库功能
6. 修复AGV配送状态更新逻辑
7. 优化退料与库存管理细节
This commit is contained in:
SunYF
2026-09-19 17:04:58 +08:00
parent 62e45b7379
commit 05b0b8a909
89 changed files with 7912 additions and 429 deletions
@@ -160,6 +160,76 @@ func (_c *MaterialQtyReportCreate) SetNillableStatus(v *string) *MaterialQtyRepo
return _c
}
// SetHandleType sets the "handleType" field.
func (_c *MaterialQtyReportCreate) SetHandleType(v string) *MaterialQtyReportCreate {
_c.mutation.SetHandleType(v)
return _c
}
// SetNillableHandleType sets the "handleType" field if the given value is not nil.
func (_c *MaterialQtyReportCreate) SetNillableHandleType(v *string) *MaterialQtyReportCreate {
if v != nil {
_c.SetHandleType(*v)
}
return _c
}
// SetHandleDocNo sets the "handleDocNo" field.
func (_c *MaterialQtyReportCreate) SetHandleDocNo(v string) *MaterialQtyReportCreate {
_c.mutation.SetHandleDocNo(v)
return _c
}
// SetNillableHandleDocNo sets the "handleDocNo" field if the given value is not nil.
func (_c *MaterialQtyReportCreate) SetNillableHandleDocNo(v *string) *MaterialQtyReportCreate {
if v != nil {
_c.SetHandleDocNo(*v)
}
return _c
}
// SetHandleNote sets the "handleNote" field.
func (_c *MaterialQtyReportCreate) SetHandleNote(v string) *MaterialQtyReportCreate {
_c.mutation.SetHandleNote(v)
return _c
}
// SetNillableHandleNote sets the "handleNote" field if the given value is not nil.
func (_c *MaterialQtyReportCreate) SetNillableHandleNote(v *string) *MaterialQtyReportCreate {
if v != nil {
_c.SetHandleNote(*v)
}
return _c
}
// SetHandledBy sets the "handledBy" field.
func (_c *MaterialQtyReportCreate) SetHandledBy(v string) *MaterialQtyReportCreate {
_c.mutation.SetHandledBy(v)
return _c
}
// SetNillableHandledBy sets the "handledBy" field if the given value is not nil.
func (_c *MaterialQtyReportCreate) SetNillableHandledBy(v *string) *MaterialQtyReportCreate {
if v != nil {
_c.SetHandledBy(*v)
}
return _c
}
// SetHandledAt sets the "handledAt" field.
func (_c *MaterialQtyReportCreate) SetHandledAt(v int64) *MaterialQtyReportCreate {
_c.mutation.SetHandledAt(v)
return _c
}
// SetNillableHandledAt sets the "handledAt" field if the given value is not nil.
func (_c *MaterialQtyReportCreate) SetNillableHandledAt(v *int64) *MaterialQtyReportCreate {
if v != nil {
_c.SetHandledAt(*v)
}
return _c
}
// SetOperator sets the "operator" field.
func (_c *MaterialQtyReportCreate) SetOperator(v string) *MaterialQtyReportCreate {
_c.mutation.SetOperator(v)
@@ -283,6 +353,26 @@ func (_c *MaterialQtyReportCreate) defaults() {
v := materialqtyreport.DefaultStatus
_c.mutation.SetStatus(v)
}
if _, ok := _c.mutation.HandleType(); !ok {
v := materialqtyreport.DefaultHandleType
_c.mutation.SetHandleType(v)
}
if _, ok := _c.mutation.HandleDocNo(); !ok {
v := materialqtyreport.DefaultHandleDocNo
_c.mutation.SetHandleDocNo(v)
}
if _, ok := _c.mutation.HandleNote(); !ok {
v := materialqtyreport.DefaultHandleNote
_c.mutation.SetHandleNote(v)
}
if _, ok := _c.mutation.HandledBy(); !ok {
v := materialqtyreport.DefaultHandledBy
_c.mutation.SetHandledBy(v)
}
if _, ok := _c.mutation.HandledAt(); !ok {
v := materialqtyreport.DefaultHandledAt
_c.mutation.SetHandledAt(v)
}
if _, ok := _c.mutation.Operator(); !ok {
v := materialqtyreport.DefaultOperator
_c.mutation.SetOperator(v)
@@ -355,6 +445,41 @@ func (_c *MaterialQtyReportCreate) check() error {
return &ValidationError{Name: "status", err: fmt.Errorf(`ent: validator failed for field "MaterialQtyReport.status": %w`, err)}
}
}
if _, ok := _c.mutation.HandleType(); !ok {
return &ValidationError{Name: "handleType", err: errors.New(`ent: missing required field "MaterialQtyReport.handleType"`)}
}
if v, ok := _c.mutation.HandleType(); ok {
if err := materialqtyreport.HandleTypeValidator(v); err != nil {
return &ValidationError{Name: "handleType", err: fmt.Errorf(`ent: validator failed for field "MaterialQtyReport.handleType": %w`, err)}
}
}
if _, ok := _c.mutation.HandleDocNo(); !ok {
return &ValidationError{Name: "handleDocNo", err: errors.New(`ent: missing required field "MaterialQtyReport.handleDocNo"`)}
}
if v, ok := _c.mutation.HandleDocNo(); ok {
if err := materialqtyreport.HandleDocNoValidator(v); err != nil {
return &ValidationError{Name: "handleDocNo", err: fmt.Errorf(`ent: validator failed for field "MaterialQtyReport.handleDocNo": %w`, err)}
}
}
if _, ok := _c.mutation.HandleNote(); !ok {
return &ValidationError{Name: "handleNote", err: errors.New(`ent: missing required field "MaterialQtyReport.handleNote"`)}
}
if v, ok := _c.mutation.HandleNote(); ok {
if err := materialqtyreport.HandleNoteValidator(v); err != nil {
return &ValidationError{Name: "handleNote", err: fmt.Errorf(`ent: validator failed for field "MaterialQtyReport.handleNote": %w`, err)}
}
}
if _, ok := _c.mutation.HandledBy(); !ok {
return &ValidationError{Name: "handledBy", err: errors.New(`ent: missing required field "MaterialQtyReport.handledBy"`)}
}
if v, ok := _c.mutation.HandledBy(); ok {
if err := materialqtyreport.HandledByValidator(v); err != nil {
return &ValidationError{Name: "handledBy", err: fmt.Errorf(`ent: validator failed for field "MaterialQtyReport.handledBy": %w`, err)}
}
}
if _, ok := _c.mutation.HandledAt(); !ok {
return &ValidationError{Name: "handledAt", err: errors.New(`ent: missing required field "MaterialQtyReport.handledAt"`)}
}
if _, ok := _c.mutation.Operator(); !ok {
return &ValidationError{Name: "operator", err: errors.New(`ent: missing required field "MaterialQtyReport.operator"`)}
}
@@ -443,6 +568,26 @@ func (_c *MaterialQtyReportCreate) createSpec() (*MaterialQtyReport, *sqlgraph.C
_spec.SetField(materialqtyreport.FieldStatus, field.TypeString, value)
_node.Status = value
}
if value, ok := _c.mutation.HandleType(); ok {
_spec.SetField(materialqtyreport.FieldHandleType, field.TypeString, value)
_node.HandleType = value
}
if value, ok := _c.mutation.HandleDocNo(); ok {
_spec.SetField(materialqtyreport.FieldHandleDocNo, field.TypeString, value)
_node.HandleDocNo = value
}
if value, ok := _c.mutation.HandleNote(); ok {
_spec.SetField(materialqtyreport.FieldHandleNote, field.TypeString, value)
_node.HandleNote = value
}
if value, ok := _c.mutation.HandledBy(); ok {
_spec.SetField(materialqtyreport.FieldHandledBy, field.TypeString, value)
_node.HandledBy = value
}
if value, ok := _c.mutation.HandledAt(); ok {
_spec.SetField(materialqtyreport.FieldHandledAt, field.TypeInt64, value)
_node.HandledAt = value
}
if value, ok := _c.mutation.Operator(); ok {
_spec.SetField(materialqtyreport.FieldOperator, field.TypeString, value)
_node.Operator = value