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