From 65f900c88f0f90ee3b29e9b985723b8f94aaeb0b Mon Sep 17 00:00:00 2001 From: jiangshuai <291802688@qq.com> Date: 星期三, 27 九月 2023 14:14:35 +0800 Subject: [PATCH] 1.修改上架规则列表bug --- models/operation_type.go | 32 ++++++++++++++++++++++++++++++++ 1 files changed, 32 insertions(+), 0 deletions(-) diff --git a/models/operation_type.go b/models/operation_type.go index 92c244c..26842f7 100644 --- a/models/operation_type.go +++ b/models/operation_type.go @@ -18,6 +18,7 @@ Company Company `json:"company" gorm:"foreignKey:CompanyId"` //鍏徃 WarehouseId int `json:"warehouseId" gorm:"type:int;not null;comment:浠撳簱id"` //浠撳簱id Warehouse Warehouse `json:"warehouse" gorm:"foreignKey:WarehouseId"` //浠撳簱 + Prefix string `json:"prefix" gorm:"type:varchar(255);comment:鍓嶇紑"` //鍓嶇紑 DefaultLocationSrcId int `json:"defaultLocationSrcId" gorm:"type:int;not null;comment:榛樿婧愪綅缃甶d"` //榛樿婧愪綅缃甶d DefaultLocationSrc Location `json:"defaultLocationSrc" gorm:"foreignKey:DefaultLocationSrcId"` //榛樿婧愪綅缃� @@ -29,9 +30,12 @@ ReservationDaysBefore int `json:"reservationDaysBefore" gorm:"type:int;"` //鏀惰揣鍓嶅嚑澶� ReservationDaysBeforePriority int `json:"ReservationDaysBeforePriority" gorm:"type:int;"` //鍦ㄤ紭鍏堢骇鐨勫墠鍑犲ぉ ShowOperations bool `json:"showOperations" gorm:"column:show_operations;type:int"` //鏄剧ず浣滀笟璇︽儏 + EarlyOperations bool `json:"earlyOperations" gorm:"type:int;comment:棰勫~鍐欎綔涓氳鎯�"` //棰勫~鍐欎綔涓氳鎯� CreateBackorder constvar.WhetherType `json:"createBackorder" gorm:"column:create_backorder"` //鍒涘缓娆犲崟 ReturnOperationTypeID int `json:"returnOperationTypeID" gorm:"column:return_job_type_id"` //閫�璐х被鍨婭D ReturnOperationType string `json:"returnOperationType" gorm:"-"` //閫�璐х被鍨嬪悕绉� + ReadyCount int `json:"readyCount" gorm:"-"` //灏辩华鏁伴噺 + FinishCount int `json:"finishCount" gorm:"-"` //瀹屾垚鏁伴噺 } OperationTypeSearch struct { @@ -42,6 +46,12 @@ Keyword string Orm *gorm.DB Preload bool + } + + OperationTypeByStatus struct { + Id int `gorm:"column:id"` + Status constvar.OperationStatus `gorm:"column:status"` + Count int `gorm:"column:count"` } ) @@ -85,6 +95,11 @@ func (slf *OperationTypeSearch) SetPreload(preload bool) *OperationTypeSearch { slf.Preload = preload + return slf +} + +func (slf *OperationTypeSearch) SetBaseOperationType(baseOperationType constvar.BaseOperationType) *OperationTypeSearch { + slf.BaseOperationType = baseOperationType return slf } @@ -261,3 +276,20 @@ return records, nil } + +func (slf *OperationTypeSearch) ListByStatusAndCount(idList []int) ([]*OperationTypeByStatus, error) { + var ( + 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") + if len(idList) > 0 { + db = db.Where("wms_job_type.id IN ?", idList) + } + + if err := db.Find(&records).Error; err != nil { + return records, fmt.Errorf("func ListByStatusAndCount err: %v, ", err) + } + + return records, nil +} -- Gitblit v1.8.0