From cffa032bba4add2e3f5e51524d0627f583877511 Mon Sep 17 00:00:00 2001 From: lishihai <dslsh@dscom> Date: 星期六, 29 六月 2024 17:21:28 +0800 Subject: [PATCH] 概述->业务类型->按仓库Ids筛选 --- controllers/report_forms_controller.go | 40 ++++++++++++++++++++++++++++++++++++++++ 1 files changed, 40 insertions(+), 0 deletions(-) diff --git a/controllers/report_forms_controller.go b/controllers/report_forms_controller.go index 17288a7..e3346ae 100644 --- a/controllers/report_forms_controller.go +++ b/controllers/report_forms_controller.go @@ -5,9 +5,11 @@ "github.com/shopspring/decimal" "net/url" "os" + "time" "wms/constvar" "wms/extend/code" "wms/extend/util" + "wms/models" "wms/pkg/logx" "wms/request" "wms/service" @@ -219,6 +221,12 @@ util.ResponseFormat(c, code.RequestParamError, "鍙傛暟瑙f瀽澶辫触锛屾暟鎹被鍨嬮敊璇�") return } + + if params.BaseOperationType == 0 { + util.ResponseFormat(c, code.RequestParamError, "鍩虹鎿嶄綔绫诲瀷涓嶈兘涓虹┖") + return + } + historyFormsService := service.NewHistoryFormsService() list, err := historyFormsService.FetchAll(params) if err != nil { @@ -329,6 +337,7 @@ util.ResponseFormat(c, code.InternalError, "鏌ヨ鎬绘暟澶辫触") return } + result, err := monthFormsService.Query(params) if err != nil { logx.Errorf("MonthStats query err:%v", err) @@ -336,6 +345,37 @@ return } + now := time.Now().Local() + today := now.Day() + nowMonth := now.Format("2006-01") + + day, dateStr, err := service.NewSystemConfigService().GetInventoryCutOffPoint() + if nowMonth == params.Date && today < day || today == day && now.Format("15:04") < dateStr { //鏈湀鏈嚦缁撶畻鏃堕棿鐐� + productIds := make([]string, 0, len(result)) + for _, item := range result { + productIds = append(productIds, item.ProductId) + } + statsRecords, err := service.GetCurrentStats(params.Date, productIds) + if err != nil { + util.ResponseFormat(c, code.InternalError, "鍐呴儴閿欒") + return + } + statsMap := models.MonthStatsMap(statsRecords) + for k, v := range result { + if statsMap[v.ProductId] == nil { + continue + } + + result[k].OutputAmount = statsMap[v.ProductId].OutputAmount + result[k].OutputMoreUnits = statsMap[v.ProductId].OutputMoreUnits + result[k].EndAmount = statsMap[v.ProductId].EndAmount + result[k].EndMoreUnits = statsMap[v.ProductId].EndMoreUnits + result[k].InputAmount = statsMap[v.ProductId].InputAmount + result[k].InputMoreUnits = statsMap[v.ProductId].InputMoreUnits + } + + } + util.ResponseFormatList(c, code.Success, result, int(total)) } -- Gitblit v1.8.0