From efec800478214f3a412f879d2b51c2968515995d Mon Sep 17 00:00:00 2001 From: zhangqian <zhangqian@123.com> Date: 星期六, 25 十一月 2023 17:04:25 +0800 Subject: [PATCH] plc断开连接时获取工序最后一次报工数量作为加工数 --- model/production_progress.go | 58 ++++++++++++++++++++++++++++------------------------------ 1 files changed, 28 insertions(+), 30 deletions(-) diff --git a/model/production_progress.go b/model/production_progress.go index 898b186..293a660 100644 --- a/model/production_progress.go +++ b/model/production_progress.go @@ -3,28 +3,28 @@ import ( "apsClient/pkg/sqlitex" "fmt" - "gorm.io/gorm" + "github.com/jinzhu/gorm" ) type ( ProductionProgress struct { - gorm.Model `json:"-"` - ID int `gorm:"primarykey"` - WorkOrderID string `gorm:"index;type:varchar(191);not null;comment:宸ュ崟ID" json:"workOrderID"` - OrderID string `gorm:"index;type:varchar(191);not null;comment:璁㈠崟ID" json:"orderID"` - ProcedureID string `gorm:"type:varchar(191);comment:宸ュ簭ID" json:"procedureId"` - DeviceID string `gorm:"type:varchar(191);not null;comment:璁惧ID" json:"deviceId"` - FinishedQuantity int64 `gorm:"type:int;not null;comment:瀹屾垚鏁伴噺" json:"finishedQuantity"` - Position int `gorm:"type:int;comment:宸ヤ綔浣嶇疆" json:"position"` //姣忎釜璁惧鍙兘鏈夊涓満浣嶅悓鏃剁敓浜э紝鐢╬osition琛ㄧず浣嶇疆 - TotalQuantity int64 `gorm:"type:int;not null;comment:鎬婚噺" json:"totalQuantity"` + gorm.Model + WorkOrderID string `gorm:"index;type:varchar(191);not null" json:"workOrderID"` + OrderID string `gorm:"index;type:varchar(191);not null" json:"orderID"` + ProcedureID string `gorm:"type:varchar(191)" json:"procedureId"` + DeviceID string `gorm:"type:varchar(191);not null" json:"deviceId"` + FinishedQuantity int64 `gorm:"type:int;not null" json:"finishedQuantity"` + Channel int32 `gorm:"type:int" json:"channel"` //閫氶亾 + TotalQuantity int64 `gorm:"type:int;not null" json:"totalQuantity"` } ProductionProgressSearch struct { ProductionProgress - Order string - PageNum int - PageSize int - Orm *gorm.DB + Order string + PageNum int + PageSize int + Orm *gorm.DB + UnFinished bool } ) @@ -69,13 +69,18 @@ return slf } -func (slf *ProductionProgressSearch) SetId(id int) *ProductionProgressSearch { +func (slf *ProductionProgressSearch) SetId(id uint) *ProductionProgressSearch { slf.ID = id return slf } -func (slf *ProductionProgressSearch) SetPosition(position int) *ProductionProgressSearch { - slf.Position = position +func (slf *ProductionProgressSearch) SetChannel(channel int32) *ProductionProgressSearch { + slf.Channel = channel + return slf +} + +func (slf *ProductionProgressSearch) SetUnFinished() *ProductionProgressSearch { + slf.UnFinished = true return slf } @@ -106,8 +111,12 @@ db = db.Where("device_id = ?", slf.DeviceID) } - if slf.Position != 0 { - db = db.Where("position = ?", slf.Position) + if slf.Channel != 0 { + db = db.Where("channel = ?", slf.Channel) + } + + if slf.UnFinished { + db = db.Where("finished_quantity < total_quantity") } return db @@ -119,17 +128,6 @@ if err := db.Create(record).Error; err != nil { return fmt.Errorf("create err: %v, record: %+v", err, record) - } - - return nil -} - -// CreateBatch 鎵归噺鎻掑叆 -func (slf *ProductionProgressSearch) CreateBatch(records []*ProductionProgress) error { - var db = slf.build() - - if err := db.Create(&records).Error; err != nil { - return fmt.Errorf("create batch err: %v, records: %+v", err, records) } return nil -- Gitblit v1.8.0