docs(deployment): 更新部署手册和业务架构说明
- 更新MES和WMS服务端口配置说明 - 详细说明产线工位设备配置(扫码枪+拧紧枪) - 明确AGV配送和接驳台的模拟模式与真实对接方案 - 更新WMS中AGV配送默认模拟模式说明 - 完善厂内物流(AGV/接驳台)的业务架构约束 - 修订临时文档为详细的项目问题和解决方案规划
This commit is contained in:
@@ -18,12 +18,26 @@ type StocktakeOrder struct {
|
||||
ID int `json:"id,omitempty"`
|
||||
// 盘点单号
|
||||
StocktakeNo string `json:"stocktakeNo,omitempty"`
|
||||
// 进行中/已完成
|
||||
// 进行中/已完成/已写回/已取消
|
||||
Status string `json:"status,omitempty"`
|
||||
// 发起人
|
||||
Operator string `json:"operator,omitempty"`
|
||||
// 快照目标数
|
||||
// 快照目标数(本次盘点覆盖的批次/SN总数)
|
||||
TotalTargets int `json:"totalTargets,omitempty"`
|
||||
// 差异项数(diff!=0 的明细数)
|
||||
DiffCount int `json:"diffCount,omitempty"`
|
||||
// 差异是否已写回库存
|
||||
Adjusted bool `json:"adjusted,omitempty"`
|
||||
// 盘点调整单号(写回时生成)
|
||||
AdjustNo string `json:"adjustNo,omitempty"`
|
||||
// 写回时间(unix 秒)
|
||||
WrittenAt int64 `json:"writtenAt,omitempty"`
|
||||
// 写回操作人
|
||||
WrittenBy string `json:"writtenBy,omitempty"`
|
||||
// 未盘项处理 keep=按账面保留/zero=盘亏为0
|
||||
UncountedMode string `json:"uncountedMode,omitempty"`
|
||||
// 取消原因
|
||||
CancelReason string `json:"cancelReason,omitempty"`
|
||||
// CreatedAt holds the value of the "created_at" field.
|
||||
CreatedAt int64 `json:"createdAt,omitempty"`
|
||||
// 完成时间
|
||||
@@ -36,9 +50,11 @@ func (*StocktakeOrder) scanValues(columns []string) ([]any, error) {
|
||||
values := make([]any, len(columns))
|
||||
for i := range columns {
|
||||
switch columns[i] {
|
||||
case stocktakeorder.FieldID, stocktakeorder.FieldTotalTargets, stocktakeorder.FieldCreatedAt, stocktakeorder.FieldFinishedAt:
|
||||
case stocktakeorder.FieldAdjusted:
|
||||
values[i] = new(sql.NullBool)
|
||||
case stocktakeorder.FieldID, stocktakeorder.FieldTotalTargets, stocktakeorder.FieldDiffCount, stocktakeorder.FieldWrittenAt, stocktakeorder.FieldCreatedAt, stocktakeorder.FieldFinishedAt:
|
||||
values[i] = new(sql.NullInt64)
|
||||
case stocktakeorder.FieldStocktakeNo, stocktakeorder.FieldStatus, stocktakeorder.FieldOperator:
|
||||
case stocktakeorder.FieldStocktakeNo, stocktakeorder.FieldStatus, stocktakeorder.FieldOperator, stocktakeorder.FieldAdjustNo, stocktakeorder.FieldWrittenBy, stocktakeorder.FieldUncountedMode, stocktakeorder.FieldCancelReason:
|
||||
values[i] = new(sql.NullString)
|
||||
default:
|
||||
values[i] = new(sql.UnknownType)
|
||||
@@ -85,6 +101,48 @@ func (_m *StocktakeOrder) assignValues(columns []string, values []any) error {
|
||||
} else if value.Valid {
|
||||
_m.TotalTargets = int(value.Int64)
|
||||
}
|
||||
case stocktakeorder.FieldDiffCount:
|
||||
if value, ok := values[i].(*sql.NullInt64); !ok {
|
||||
return fmt.Errorf("unexpected type %T for field diff_count", values[i])
|
||||
} else if value.Valid {
|
||||
_m.DiffCount = int(value.Int64)
|
||||
}
|
||||
case stocktakeorder.FieldAdjusted:
|
||||
if value, ok := values[i].(*sql.NullBool); !ok {
|
||||
return fmt.Errorf("unexpected type %T for field adjusted", values[i])
|
||||
} else if value.Valid {
|
||||
_m.Adjusted = value.Bool
|
||||
}
|
||||
case stocktakeorder.FieldAdjustNo:
|
||||
if value, ok := values[i].(*sql.NullString); !ok {
|
||||
return fmt.Errorf("unexpected type %T for field adjust_no", values[i])
|
||||
} else if value.Valid {
|
||||
_m.AdjustNo = value.String
|
||||
}
|
||||
case stocktakeorder.FieldWrittenAt:
|
||||
if value, ok := values[i].(*sql.NullInt64); !ok {
|
||||
return fmt.Errorf("unexpected type %T for field written_at", values[i])
|
||||
} else if value.Valid {
|
||||
_m.WrittenAt = value.Int64
|
||||
}
|
||||
case stocktakeorder.FieldWrittenBy:
|
||||
if value, ok := values[i].(*sql.NullString); !ok {
|
||||
return fmt.Errorf("unexpected type %T for field written_by", values[i])
|
||||
} else if value.Valid {
|
||||
_m.WrittenBy = value.String
|
||||
}
|
||||
case stocktakeorder.FieldUncountedMode:
|
||||
if value, ok := values[i].(*sql.NullString); !ok {
|
||||
return fmt.Errorf("unexpected type %T for field uncounted_mode", values[i])
|
||||
} else if value.Valid {
|
||||
_m.UncountedMode = value.String
|
||||
}
|
||||
case stocktakeorder.FieldCancelReason:
|
||||
if value, ok := values[i].(*sql.NullString); !ok {
|
||||
return fmt.Errorf("unexpected type %T for field cancel_reason", values[i])
|
||||
} else if value.Valid {
|
||||
_m.CancelReason = value.String
|
||||
}
|
||||
case stocktakeorder.FieldCreatedAt:
|
||||
if value, ok := values[i].(*sql.NullInt64); !ok {
|
||||
return fmt.Errorf("unexpected type %T for field created_at", values[i])
|
||||
@@ -145,6 +203,27 @@ func (_m *StocktakeOrder) String() string {
|
||||
builder.WriteString("total_targets=")
|
||||
builder.WriteString(fmt.Sprintf("%v", _m.TotalTargets))
|
||||
builder.WriteString(", ")
|
||||
builder.WriteString("diff_count=")
|
||||
builder.WriteString(fmt.Sprintf("%v", _m.DiffCount))
|
||||
builder.WriteString(", ")
|
||||
builder.WriteString("adjusted=")
|
||||
builder.WriteString(fmt.Sprintf("%v", _m.Adjusted))
|
||||
builder.WriteString(", ")
|
||||
builder.WriteString("adjust_no=")
|
||||
builder.WriteString(_m.AdjustNo)
|
||||
builder.WriteString(", ")
|
||||
builder.WriteString("written_at=")
|
||||
builder.WriteString(fmt.Sprintf("%v", _m.WrittenAt))
|
||||
builder.WriteString(", ")
|
||||
builder.WriteString("written_by=")
|
||||
builder.WriteString(_m.WrittenBy)
|
||||
builder.WriteString(", ")
|
||||
builder.WriteString("uncounted_mode=")
|
||||
builder.WriteString(_m.UncountedMode)
|
||||
builder.WriteString(", ")
|
||||
builder.WriteString("cancel_reason=")
|
||||
builder.WriteString(_m.CancelReason)
|
||||
builder.WriteString(", ")
|
||||
builder.WriteString("created_at=")
|
||||
builder.WriteString(fmt.Sprintf("%v", _m.CreatedAt))
|
||||
builder.WriteString(", ")
|
||||
|
||||
Reference in New Issue
Block a user