From aeed976c2999e2cea097cdee38d8baeefe323f3d Mon Sep 17 00:00:00 2001 From: liujiandao <274878379@qq.com> Date: 星期六, 30 三月 2024 16:15:59 +0800 Subject: [PATCH] 修改 --- models/operation_type.go | 30 +++++++++++++++++++++++------- 1 files changed, 23 insertions(+), 7 deletions(-) diff --git a/models/operation_type.go b/models/operation_type.go index 4c5f86a..b206050 100644 --- a/models/operation_type.go +++ b/models/operation_type.go @@ -36,16 +36,18 @@ ReturnOperationType string `json:"returnOperationType" gorm:"-"` //閫�璐х被鍨嬪悕绉� ReadyCount int `json:"readyCount" gorm:"-"` //灏辩华鏁伴噺 FinishCount int `json:"finishCount" gorm:"-"` //瀹屾垚鏁伴噺 + CancelCount int `json:"cancelCount" gorm:"-"` //鍙栨秷鏁伴噺 } OperationTypeSearch struct { OperationType - Order string - PageNum int - PageSize int - Keyword string - Orm *gorm.DB - Preload bool + Order string + PageNum int + PageSize int + Keyword string + Orm *gorm.DB + Preload bool + WarehouseIds []int } OperationTypeByStatus struct { @@ -108,6 +110,11 @@ return slf } +func (slf *OperationTypeSearch) SetWarehouseIds(warehouseIds []int) *OperationTypeSearch { + slf.WarehouseIds = warehouseIds + return slf +} + func (slf *OperationTypeSearch) build() *gorm.DB { var db = slf.Orm.Model(&OperationType{}) @@ -133,6 +140,14 @@ if slf.WarehouseId > 0 { db = db.Where("warehouse_id = ?", slf.WarehouseId) + } + + if len(slf.WarehouseIds) > 0 { + db = db.Where("warehouse_id in ?", slf.WarehouseIds) + } + + if int(slf.BaseOperationType) != 0 { + db = db.Where("base_operation_type = ?", slf.BaseOperationType) } return db @@ -291,7 +306,8 @@ records = make([]*OperationTypeByStatus, 0) db = slf.Orm ) - db = db.Table("wms_job_type").Select("wms_job_type.id,wms_operation.status,count(wms_operation.id) as count").InnerJoins("inner join wms_operation on wms_operation.operation_type_id=wms_job_type.id").Group("wms_job_type.id,wms_operation.status") + db = db.Table("wms_job_type").Select("wms_job_type.id,wms_operation.status,count(wms_operation.id) as count").InnerJoins("inner join wms_operation on wms_operation.operation_type_id=wms_job_type.id").Where("wms_operation.deleted_at is null"). + Group("wms_job_type.id,wms_operation.status") if len(idList) > 0 { db = db.Where("wms_job_type.id IN ?", idList) } -- Gitblit v1.8.0