From e67802cd15e273da46bfb734e339a947b7d1eceb Mon Sep 17 00:00:00 2001
From: zhangqian <zhangqian@123.com>
Date: 星期五, 15 九月 2023 16:01:04 +0800
Subject: [PATCH] debug
---
model/work_order.go | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 51 insertions(+), 6 deletions(-)
diff --git a/model/work_order.go b/model/work_order.go
index 6848342..076edef 100644
--- a/model/work_order.go
+++ b/model/work_order.go
@@ -22,7 +22,7 @@
Unit string `gorm:"type:varchar(100);comment:鍗曚綅" json:"unit"`
StartTime int64 `gorm:"comment:璁″垝寮�濮嬫椂闂�" json:"startTime"`
EndTime int64 `gorm:"comment:璁″垝缁撴潫鏃堕棿" json:"endTime"`
- Status OrderStatus `json:"-"`
+ Status OrderStatus
}
OrderSearch struct {
@@ -33,18 +33,22 @@
Orm *gorm.DB
Preload bool
StartTimeMax int64
+ StartTimeMin int64
+ StatusList []OrderStatus
+ WorkOrderIDs []string
}
)
type OrderStatus int
const (
- OrderStatusUnFinished OrderStatus = 1
- OrderStatusFinished OrderStatus = 2
+ OrderStatusWaitProcess OrderStatus = 1
+ OrderStatusProcessing OrderStatus = 2
+ OrderStatusFinished OrderStatus = 3
)
func (slf *Order) TableName() string {
- return "Order"
+ return "work_order"
}
func NewOrderSearch(db *gorm.DB) *OrderSearch {
@@ -73,9 +77,18 @@
slf.StartTimeMax = ts
return slf
}
+func (slf *OrderSearch) SetStartTimeMin(ts int64) *OrderSearch {
+ slf.StartTimeMin = ts
+ return slf
+}
func (slf *OrderSearch) SetStatus(status OrderStatus) *OrderSearch {
slf.Status = status
+ return slf
+}
+
+func (slf *OrderSearch) SetStatusList(statusList []OrderStatus) *OrderSearch {
+ slf.StatusList = statusList
return slf
}
@@ -89,6 +102,16 @@
return slf
}
+func (slf *OrderSearch) SetWorkOrderIds(workOrderIds []string) *OrderSearch {
+ slf.WorkOrderIDs = workOrderIds
+ return slf
+}
+
+func (slf *OrderSearch) SetId(id uint) *OrderSearch {
+ slf.ID = id
+ return slf
+}
+
func (slf *OrderSearch) build() *gorm.DB {
var db = slf.Orm.Model(&Order{})
@@ -96,16 +119,28 @@
db = db.Order(slf.OrderBy)
}
+ if slf.ID != 0 {
+ db = db.Where("id = ?", slf.ID)
+ }
+
if slf.WorkOrderID != "" {
- db = db.Where("work_order_id = ?", slf.OrderID)
+ db = db.Where("work_order_id = ?", slf.WorkOrderID)
}
if slf.Status != 0 {
db = db.Where("status = ?", slf.Status)
}
+ if len(slf.StatusList) != 0 {
+ db = db.Where("status in ?", slf.StatusList)
+ }
+
if slf.StartTimeMax != 0 {
db = db.Where("start_time <= ?", slf.StartTimeMax)
+ }
+
+ if slf.StartTimeMin != 0 {
+ db = db.Where("start_time >= ?", slf.StartTimeMin)
}
if slf.Preload {
@@ -137,7 +172,17 @@
return nil
}
-func (slf *OrderSearch) Save(record *Order) error {
+func (slf *OrderSearch) Updates(record *Order) error {
+ var db = slf.build()
+
+ if err := db.Updates(record).Error; err != nil {
+ return fmt.Errorf("save err: %v, record: %+v", err, record)
+ }
+
+ return nil
+}
+
+func (slf *OrderSearch) Upsert(record *Order) error {
var db = slf.build()
if err := db.Save(record).Error; err != nil {
--
Gitblit v1.8.0