fix
zhangqian
2023-12-01 8324f872ef3a4d0c978a9b1d062800c6a1701c12
model/common/common.go
@@ -38,20 +38,21 @@
   }
   ProductProcedure struct {
      ProcedureID       string               `gorm:"uniqueIndex:idx_product_procedure;type:varchar(191);comment:工序ID" json:"procedureId"`
      ProcedureName     string               `gorm:"type:varchar(191);comment:工序名称,仅查询用" json:"procedureName"`
      NextProcedureID   string               `json:"nextProcedureId"`
      NextProcedureName string               `json:"nextProcedureName"`
      DeviceID          string               `gorm:"type:varchar(191);not null;comment:设备ID" json:"deviceId"`
      DeviceName        string               `json:"deviceName"`
      StartTime         int64                `gorm:"comment:计划开始时间" json:"startTime"`
      EndTime           int64                `gorm:"comment:计划结束时间" json:"endTime"`
      WorkHours         decimal.Decimal      `gorm:"type:decimal(35,18);comment:工时" json:"workHours"`
      InputMaterials    []*ProcedureMaterial `json:"inputMaterials"`    // 输入物料列表
      OutputMaterials   []*ProcedureMaterial `json:"outputMaterials"`   // 输出物料列表
      Workers           []*ProcedureWorker   `json:"workers"`           // 人员列表
      AllProcedureNames []string             `json:"allProcedureNames"` // 所属工单工序列表
      Channel           int32                `json:"channel"`           //通道序号
      ProductProcedureID string               `gorm:"index;type:varchar(191);not null;comment:产品工序ID" json:"productProcedureID"`
      ProcedureID        string               `gorm:"uniqueIndex:idx_product_procedure;type:varchar(191);comment:工序ID" json:"procedureId"`
      ProcedureName      string               `gorm:"type:varchar(191);comment:工序名称,仅查询用" json:"procedureName"`
      NextProcedureID    string               `json:"nextProcedureId"`
      NextProcedureName  string               `json:"nextProcedureName"`
      DeviceID           string               `gorm:"type:varchar(191);not null;comment:设备ID" json:"deviceId"`
      DeviceName         string               `json:"deviceName"`
      StartTime          int64                `gorm:"comment:计划开始时间" json:"startTime"`
      EndTime            int64                `gorm:"comment:计划结束时间" json:"endTime"`
      WorkHours          decimal.Decimal      `gorm:"type:decimal(35,18);comment:工时" json:"workHours"`
      InputMaterials     []*ProcedureMaterial `json:"inputMaterials"`    // 输入物料列表
      OutputMaterials    []*ProcedureMaterial `json:"outputMaterials"`   // 输出物料列表
      Workers            []*ProcedureWorker   `json:"workers"`           // 人员列表
      AllProcedureNames  []string             `json:"allProcedureNames"` // 所属工单工序列表
      Channel            int32                `json:"channel"`           //通道序号
   }
   DeliverScheduleTask struct {
@@ -78,8 +79,11 @@
      Method     constvar.PlcMethod `gorm:"type:varchar(191)" json:"method"`  //comment:接口方式
      Address    string             `gorm:"type:varchar(191)" json:"address"` //plc ip地址, method = modbusTCP用
      Port       int                `gorm:"type:int(11)" json:"port"`         //plc 端口号,  method =  modbusTCP用
      BaudRate   int                `gorm:"type:int(11)"  json:"baudRate"`    //串口波特率, method = serial时 用
      SerialName string             `gorm:"type:int(11)"  json:"serialName"`  //串口名称,method = serial时 用
      BaudRate   int                `gorm:"type:int(11)"  json:"baudRate"`    //串口波特率, method = serial或modbusRTU 时用
      SerialName string             `gorm:"type:int(11)"  json:"serialName"`  //串口名称,method = serial或modbusRTU 时用
      DataBit    int                `gorm:"type:int(11)"  json:"dataBit"`     //数据位,method = modbusRTU 用
      StopBit    int                `gorm:"type:int(11)"  json:"stopBit"`     //停止位,method = modbusRTU 用
      Parity     constvar.Parity    `gorm:"type:int(11)"  json:"parity"`      //校验方式,method = modbusRTU 用
      IsOpen     bool               `gorm:"type:tinyint(1)" json:"isOpen"`
      Detail     string             `gorm:"type:varchar(2048)" json:"-"`
      Details    []*PlcAddress      `gorm:"-" json:"details"`
@@ -117,11 +121,15 @@
// MsgTaskStatusUpdate 任务状态改变
type MsgTaskStatusUpdate struct {
   WorkOrderId  string `json:"workOrderId"` //工单编号
   ProcedureID  string `json:"procedureId"` // 工序
   DeviceId     string `json:"deviceId"`    //用于过滤获取nsq消息
   IsProcessing bool   //是否处理中
   IsFinish     bool   //是否完成
   WorkOrderId        string `json:"workOrderId"` //工单编号
   ProcedureID        string `json:"procedureId"` // 工序
   DeviceId           string `json:"deviceId"`    //用于过滤获取nsq消息
   IsProcessing       bool   //是否处理中
   IsFinish           bool   //是否完成
   FinishAmount       int    `json:"finishAmount"`       //isFinish = true时取工序最终加工数传上去
   ProductProcedureID string `json:"productProcedureID"` //产品工序id
   StartTs            int64  `json:"start_ts"`           //开始时间
   FinishTs           int64  `json:"finish_ts"`          //结束时间
}
// DeviceMsg 下发到终端的设备信息
@@ -129,6 +137,8 @@
   ID                  string                 `gorm:"comment:主键ID;primaryKey;type:varchar(191);" json:"id"`
   DeviceProcedureAttr []*DeviceProcedureAttr `json:"deviceProcedureAttr"` // 设备工序属性列表
   ExtChannelAmount    int                    `gorm:"type:tinyint;comment:额外的通道数量;default:0;" json:"extChannelAmount"`
   DeviceName          string                 `json:"deviceName"`
   DeviceMac           string                 `json:"deviceMac"`
   PlcAddressList      []*PlcAddress
   PlcConfig           *PlcConfig
}
@@ -141,8 +151,9 @@
type PullDataType string
const (
   PullDataTypeProcessModel = "process_model"
   PullDataTypeDevice       = "device"
   PullDataTypeProcessModel           = "process_model"
   PullDataTypeDevice                 = "device"
   PullDataTypeProcessModelPlcAddress = "process_model_plc_address"
)
// MsgPullDataRequest 拉取云端数据
@@ -154,3 +165,17 @@
   DataType PullDataType `json:"dataType"` //要拉取的数据类型
   Data     interface{}  //返回的数据
}
type RTUConfig struct {
   BaudRate   int             `json:"baudRate"`                     //串口波特率, method = serial时 用
   SerialName string          `json:"serialName"`                   //串口名称,method = serial时 用
   DataBit    int             `gorm:"type:int(11)"  json:"dataBit"` //数据位,method = modbusRTU 用
   StopBit    int             `gorm:"type:int(11)"  json:"stopBit"` //停止位,method = modbusRTU 用
   Parity     constvar.Parity `gorm:"type:int(11)"  json:"parity"`  //校验方式,method = modbusRTU 用
}
// MsgReportData 数据上报
type MsgReportData struct {
   ReportType constvar.ReportType `json:"reportType"` //上报类型
   Content    string              `json:"Content"`
}