feat:完善项目
This commit is contained in:
@ -1,24 +1,37 @@
|
||||
package model
|
||||
|
||||
import (
|
||||
"ArmedPolice/utils"
|
||||
"strings"
|
||||
)
|
||||
|
||||
// WorkInstance 工单数据模型
|
||||
type WorkInstance struct {
|
||||
Model
|
||||
ModelTenant
|
||||
OrderNo string `gorm:"column:order_no;type:varchar(30);default:null;comment:工单单号" json:"order_no"`
|
||||
Kind int `gorm:"column:kind;type:tinyint(1);default:0;comment:工单类型" json:"kind"`
|
||||
Title string `gorm:"column:title;type:varchar(30);default:null;comment:工单标题" json:"title"`
|
||||
MaterialID uint64 `gorm:"column:material_id;type:int(11);default:0;comment:装备ID" json:"material_id"`
|
||||
PlateNumber string `gorm:"column:plate_number;type:varchar(10);default:null;comment:车牌号" json:"plate_number"`
|
||||
Breakdown string `gorm:"column:breakdown;type:varchar(150);default:null;comment:故障" json:"breakdown"`
|
||||
Priority WorkInstancePriority `gorm:"column:priority;type:tinyint(1);default:1;comment:工单优先级" json:"priority"`
|
||||
Schedule uint64 `gorm:"column:schedule;type:int(11);default:1;comment:工单进度" json:"schedule"`
|
||||
IsAssist WorkInstanceAssist `orm:"column:is_assist;type:tinyint(1);default:0;comment:协助状态" json:"is_assist"` // 当前阶段协助状态,确认是否需要下一阶段协助
|
||||
Status WorkInstanceStatus `gorm:"column:status;type:tinyint(1);default:0;comment:工单状态" json:"status"`
|
||||
Remark string `gorm:"column:remark;type:varchar(255);default:null;comment:备注信息" json:"remark"`
|
||||
OrderNo string `gorm:"column:order_no;type:varchar(30);default:null;comment:工单单号" json:"order_no"`
|
||||
Kind WorkInstanceKind `gorm:"column:kind;type:tinyint(1);default:0;comment:工单类型" json:"kind"`
|
||||
Title string `gorm:"column:title;type:varchar(30);default:null;comment:工单标题" json:"title"`
|
||||
EquipmentID uint64 `gorm:"column:equipment_id;type:int(11);default:0;comment:装备ID" json:"equipment_id"`
|
||||
PlateNumber string `gorm:"column:plate_number;type:varchar(10);default:null;comment:车牌号" json:"plate_number"`
|
||||
Breakdown string `gorm:"column:breakdown;type:varchar(150);default:null;comment:故障" json:"breakdown"`
|
||||
Priority WorkInstancePriority `gorm:"column:priority;type:tinyint(1);default:1;comment:工单优先级" json:"priority"`
|
||||
Schedule uint64 `gorm:"column:schedule;type:int(11);default:1;comment:工单进度" json:"schedule"`
|
||||
IsAssist WorkInstanceAssist `orm:"column:is_assist;type:tinyint(1);default:0;comment:协助状态" json:"is_assist"` // 当前阶段协助状态,确认是否需要下一阶段协助
|
||||
Status WorkInstanceStatus `gorm:"column:status;type:tinyint(1);default:0;comment:工单状态" json:"status"`
|
||||
Remark string `gorm:"column:remark;type:varchar(255);default:null;comment:备注信息" json:"remark"`
|
||||
Distribution string `gorm:"column:distribution;type:varchar(255);default:null;comment:配送信息" json:"-"`
|
||||
ModelDeleted
|
||||
ModelAt
|
||||
}
|
||||
|
||||
// WorkInstanceDistribution 配送信息
|
||||
type WorkInstanceDistribution struct {
|
||||
Name string `json:"name"`
|
||||
Mobile string `json:"mobile"`
|
||||
Address string `json:"address"`
|
||||
}
|
||||
|
||||
// WorkInstanceKind 工单类型
|
||||
type WorkInstanceKind int
|
||||
|
||||
@ -65,6 +78,39 @@ func (m *WorkInstance) TableName() string {
|
||||
return "work_instance"
|
||||
}
|
||||
|
||||
// SetBreakdownAttribute 设置故障信息
|
||||
func (m *WorkInstance) SetBreakdownAttribute(value []uint64) {
|
||||
out := make([]string, 0)
|
||||
|
||||
for _, v := range value {
|
||||
out = append(out, utils.UintToString(v))
|
||||
}
|
||||
m.Breakdown = strings.Join(out, ",")
|
||||
}
|
||||
|
||||
// GetBreakdownAttribute 获取故障信息
|
||||
func (m *WorkInstance) GetBreakdownAttribute() []uint64 {
|
||||
value := strings.Split(m.Breakdown, ",")
|
||||
out := make([]uint64, 0)
|
||||
|
||||
for _, v := range value {
|
||||
out = append(out, utils.StringToUnit64(v))
|
||||
}
|
||||
return out
|
||||
}
|
||||
|
||||
// SetDistributionAttribute 设置配送信息
|
||||
func (m *WorkInstance) SetDistributionAttribute(value *WorkInstanceDistribution) {
|
||||
m.Distribution = utils.AnyToJSON(value)
|
||||
}
|
||||
|
||||
// GetDistributionAttribute 获取配送信息
|
||||
func (m *WorkInstance) GetDistributionAttribute() *WorkInstanceDistribution {
|
||||
out := new(WorkInstanceDistribution)
|
||||
_ = utils.FromJSON(m.Distribution, out)
|
||||
return out
|
||||
}
|
||||
|
||||
func NewWorkInstance() *WorkInstance {
|
||||
return &WorkInstance{}
|
||||
}
|
||||
|
Reference in New Issue
Block a user