From d91a802e7aa2ad4075ed803b8ddc7536a91a0ef0 Mon Sep 17 00:00:00 2001
From: zhangqian <zhangqian@123.com>
Date: 星期五, 27 十月 2023 20:33:06 +0800
Subject: [PATCH] update
---
model/common/common.go | 135 +++++++++++++++++++++++++++++++++++++++++---
1 files changed, 124 insertions(+), 11 deletions(-)
diff --git a/model/common/common.go b/model/common/common.go
index c953878..d616014 100644
--- a/model/common/common.go
+++ b/model/common/common.go
@@ -1,6 +1,9 @@
package common
-import "github.com/shopspring/decimal"
+import (
+ "apsClient/constvar"
+ "github.com/shopspring/decimal"
+)
// 鎺掔▼浠诲姟涓嬪彂
type (
@@ -35,16 +38,20 @@
}
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"`
- DeviceID string `gorm:"type:varchar(191);not null;comment:璁惧ID" json:"deviceId"`
- DeviceName string `gorm:"type:varchar(191);not null;comment:璁惧鍚嶇О" 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"` // 浜哄憳鍒楄〃
+ 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 {
@@ -52,3 +59,109 @@
Procedures []*ProductProcedure `json:"procedures"` // 宸ュ簭鍒楄〃
}
)
+
+// PLC鍐欏叆鍦板潃
+type (
+ RequestPlcAddress struct {
+ DeviceId string
+ }
+ ResponsePlcAddress struct {
+ KeyData []byte
+ AddressData []byte
+ DeviceId string
+ PlcAddressList []*PlcAddress //plc 瀹屾垚閲忥紝鎬婚噺锛� 璇诲啓鍦板潃
+ PlcConfig PlcConfig //鐢ㄧ綉鍙h繕鏄鍙d互鍙婄綉鍙p port
+ }
+
+ PlcConfig struct {
+ Brand string `gorm:"type:varchar(191)" json:"brand"` //comment:PLC鍝佺墝
+ 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鎴杕odbusRTU 鏃剁敤
+ SerialName string `gorm:"type:int(11)" json:"serialName"` //涓插彛鍚嶇О锛宮ethod = serial鎴杕odbusRTU 鏃剁敤
+ 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"` //鏍¢獙鏂瑰紡锛宮ethod = modbusRTU 鐢�
+ IsOpen bool `gorm:"type:tinyint(1)" json:"isOpen"`
+ Detail string `gorm:"type:varchar(2048)" json:"-"`
+ Details []*PlcAddress `gorm:"-" json:"details"`
+ }
+
+ PlcAddress struct {
+ DeviceID string `json:"deviceID"` // 璁惧id
+ Channel int `json:"channel"` // 鐢熶骇閫氶亾on锛屼竴涓満鍣ㄥ彲鑳芥湁澶氫釜鏈轰綅锛岄渶瑕佸垎鍒厤缃畃lc鍦板潃
+ StartAddress int `json:"startAddress"` // 鏁版嵁璧峰鍦板潃
+ Length int `json:"length"` // 鏁版嵁闀垮害
+ Type string `json:"type"` // 鏁版嵁绫诲瀷
+ FieldName constvar.PlcStartAddressType `json:"fieldName"` // 瀵瑰簲绯荤粺瀛楁锛屽畬鎴愰噺鎴栨�婚噺
+ }
+)
+
+// 宸ヨ壓鍙傛暟
+type (
+ RequestProcessParams struct {
+ WorkOrder string `json:"workOrder,omitempty" form:"workOrder"` //宸ュ簭缂栧彿
+ OrderId string `json:"orderId"` // 璁㈠崟鍙�
+ Product string `json:"password"` // 浜у搧
+ Procedure string `json:"procedure"` // 宸ュ簭
+ Device string `json:"device"` // 璁惧
+ DeviceId string `json:"deviceId" gorm:"-"` //鐢ㄤ簬杩囨护鑾峰彇nsq娑堟伅
+ }
+ ResponseProcessParams struct {
+ Number string `json:"number"` //宸ヨ壓妯″瀷缂栧彿
+ Product string `json:"product"` //浜у搧鍚嶇О
+ Procedure string `json:"procedure"` //宸ュ簭
+ Params string `json:"params"`
+ ParamsMap map[string]interface{} `json:"paramsMap"`
+ DeviceId string `json:"deviceId" gorm:"-"` //鐢ㄤ簬杩囨护鑾峰彇nsq娑堟伅
+ }
+)
+
+// MsgTaskStatusUpdate 浠诲姟鐘舵�佹敼鍙�
+type MsgTaskStatusUpdate struct {
+ WorkOrderId string `json:"workOrderId"` //宸ュ崟缂栧彿
+ ProcedureID string `json:"procedureId"` // 宸ュ簭
+ DeviceId string `json:"deviceId"` //鐢ㄤ簬杩囨护鑾峰彇nsq娑堟伅
+ IsProcessing bool //鏄惁澶勭悊涓�
+ IsFinish bool //鏄惁瀹屾垚
+}
+
+// DeviceMsg 涓嬪彂鍒扮粓绔殑璁惧淇℃伅
+type DeviceMsg struct {
+ 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"`
+ PlcAddressList []*PlcAddress
+ PlcConfig *PlcConfig
+}
+type DeviceProcedureAttr struct {
+ ProcedureID string `gorm:"index;type:varchar(191);comment:宸ュ簭ID" json:"procedureId"`
+ ProcedureName string `gorm:"type:varchar(191);comment:宸ュ簭鍚嶇О" json:"procedureName"`
+ DeviceID string `gorm:"index;type:varchar(191);not null;comment:璁惧ID" json:"deviceId"`
+}
+
+type PullDataType string
+
+const (
+ PullDataTypeProcessModel = "process_model"
+ PullDataTypeDevice = "device"
+)
+
+// MsgPullDataRequest 鎷夊彇浜戠鏁版嵁
+type MsgPullDataRequest struct {
+ DataType PullDataType `json:"dataType"` //瑕佹媺鍙栫殑鏁版嵁绫诲瀷
+}
+
+type MsgPullDataResponse struct {
+ DataType PullDataType `json:"dataType"` //瑕佹媺鍙栫殑鏁版嵁绫诲瀷
+ Data interface{} //杩斿洖鐨勬暟鎹�
+}
+
+type RTUConfig struct {
+ BaudRate int `json:"baudRate"` //涓插彛娉㈢壒鐜囷紝 method = serial鏃� 鐢�
+ SerialName string `json:"serialName"` //涓插彛鍚嶇О锛宮ethod = 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"` //鏍¢獙鏂瑰紡锛宮ethod = modbusRTU 鐢�
+}
--
Gitblit v1.8.0