From 72025bc1118c62acb57bba645ed142faddc410a7 Mon Sep 17 00:00:00 2001 From: zhangqian <zhangqian@123.com> Date: 星期四, 01 八月 2024 17:41:54 +0800 Subject: [PATCH] 注释掉已不用的盘点接口 --- controllers/location_product_amount.go | 366 ++++++++++++++++++++++++++-------------------------- 1 files changed, 182 insertions(+), 184 deletions(-) diff --git a/controllers/location_product_amount.go b/controllers/location_product_amount.go index c717ed0..b7a23b0 100644 --- a/controllers/location_product_amount.go +++ b/controllers/location_product_amount.go @@ -2,7 +2,6 @@ import ( "errors" - "fmt" "github.com/gin-gonic/gin" "github.com/mitchellh/mapstructure" "github.com/shopspring/decimal" @@ -14,7 +13,6 @@ "wms/extend/util" "wms/middleware" "wms/models" - "wms/pkg/mysqlx" "wms/request" "wms/response" "wms/service" @@ -23,126 +21,126 @@ type LocationProductAmountController struct { } -// List -// @Tags 搴撳瓨鐩樼偣 -// @Summary 搴撳瓨鐩樼偣鍒楄〃 -// @Produce application/json -// @Param object body request.GetList true "鏌ヨ鍙傛暟" -// @Success 200 {object} util.Response "鎴愬姛" -// @Router /api-wms/v1/locationProductAmount/list [post] -func (slf LocationProductAmountController) List(c *gin.Context) { - var params request.GetList - if err := c.BindJSON(¶ms); err != nil { - util.ResponseFormat(c, code.RequestParamError, "鍙傛暟瑙f瀽澶辫触锛屾暟鎹被鍨嬮敊璇�:"+err.Error()) - return - } - if !params.Check() { - util.ResponseFormat(c, code.RequestParamError, "鍙傛暟寮傚父") - return - } - productIds := make([]string, 0) - locationIds := make([]int, 0) - if params.Keyword != "" { - materials, _ := models.NewMaterialSearch().SetKeyword(params.Keyword).FindNotTotal() - for _, material := range materials { - productIds = append(productIds, material.ID) - } - locations, _ := models.NewLocationSearch().SetKeyword(params.Keyword).FindNotTotal() - for _, location := range locations { - locationIds = append(locationIds, location.Id) - } - } - - search := models.NewLocationProductAmountSearch() - //search.SetPage(params.Page, params.PageSize) - - //wms_operation_details.amount as adjust_amount,wms_operation.id as operation_id,wms_operation.status - search.Orm = search.Orm. - Table("wms_location_product_amount"). - Select(`wms_location_product_amount.id as location_product_amount_id,wms_location.id as location_id,wms_location.joint_name as location_name, - material.id as product_id,material.name as product_name,wms_location_product_amount.amount,material.unit, - wms_location_product_amount.create_date,material.weight`). - InnerJoins("inner join material on material.id=wms_location_product_amount.product_id"). - InnerJoins("inner join wms_location on wms_location.id=wms_location_product_amount.location_id") - - var ( - records = make([]*models.LocationProductAmountWithOperation, 0) - total int64 - ) - if len(productIds) > 0 { - search.Orm = search.Orm.Where("wms_location_product_amount.product_id in (?)", productIds) - - } - if len(locationIds) > 0 { - search.Orm = search.Orm.Where("wms_location_product_amount.location_id in (?)", locationIds) - } - - if err := search.Orm.Count(&total).Error; err != nil { - util.ResponseFormat(c, code.RequestError, fmt.Errorf("find count err: %v", err)) - return - } - //search.Orm = search.Orm.Preload("LocationProduct").Preload("LocationProduct.Location").Preload("LocationProduct.Product") - if params.Page*params.PageSize > 0 { - search.Orm = search.Orm.Offset((params.Page - 1) * params.PageSize).Limit(params.PageSize) - } - if err := search.Orm.Order("wms_location_product_amount.updated_at desc").Find(&records).Error; err != nil { - util.ResponseFormat(c, code.RequestError, fmt.Errorf("find count err: %v", err)) - return - } - - for k, v := range records { - var operation models.Operation - db := mysqlx.GetDB() - if res := db.Table("wms_operation").Preload("Details").InnerJoins("inner join wms_operation_details "+ - "on wms_operation_details.operation_id=wms_operation.id").Where("wms_operation.base_operation_type=? and "+ - "wms_operation.status=? and wms_operation_details.to_location_id=? and wms_operation_details.product_id=?", constvar.BaseOperationTypeAdjust, - constvar.OperationStatus_Ready, v.LocationId, v.ProductId).First(&operation); res.Error != nil { - if errors.Is(res.Error, gorm.ErrRecordNotFound) { - records[k].Status = constvar.OperationStatus_Finish - records[k].BaseOperationType = constvar.BaseOperationTypeAdjust - continue - } else { - util.ResponseFormat(c, code.RequestError, fmt.Errorf("find operation err: %v", res.Error.Error())) - return - } - } else { - if len(operation.Details) > 0 { - records[k].DifferenceAmount = operation.Details[0].Amount - records[k].AdjustAmount = v.DifferenceAmount.Sub(v.Amount) - } - records[k].OperationId = operation.Id - records[k].Status = operation.Status - } - records[k].BaseOperationType = constvar.BaseOperationTypeAdjust - } - - productIds = make([]string, 0) - for _, record := range records { - productIds = append(productIds, record.ProductId) - } - - products, err := models.NewMaterialSearch().SetIDs(productIds).FindNotTotal() - if err != nil { - util.ResponseFormat(c, code.RequestError, "鏌ヨ浜у搧澶辫触") - return - } - - productMap := models.MaterialMap(products) - - for k, v := range records { - product := productMap[v.ProductId] - if product == nil { - continue - } - - moreUnit := product.MoreUnit - if moreUnit != nil && *moreUnit { - records[k].AmountMoreUnits = service.CreateMoreUnit(v.Amount, product.MoreUnitList) - } - } - - util.ResponseFormatListWithPage(c, code.Success, records, int(total), params.Page, params.PageSize) -} +//// List +//// @Tags 搴撳瓨鐩樼偣 +//// @Summary 搴撳瓨鐩樼偣鍒楄〃 +//// @Produce application/json +//// @Param object body request.GetList true "鏌ヨ鍙傛暟" +//// @Success 200 {object} util.Response "鎴愬姛" +//// @Router /api-wms/v1/locationProductAmount/list [post] +//func (slf LocationProductAmountController) List(c *gin.Context) { +// var params request.GetList +// if err := c.BindJSON(¶ms); err != nil { +// util.ResponseFormat(c, code.RequestParamError, "鍙傛暟瑙f瀽澶辫触锛屾暟鎹被鍨嬮敊璇�:"+err.Error()) +// return +// } +// if !params.Check() { +// util.ResponseFormat(c, code.RequestParamError, "鍙傛暟寮傚父") +// return +// } +// productIds := make([]string, 0) +// locationIds := make([]int, 0) +// if params.Keyword != "" { +// materials, _ := models.NewMaterialSearch().SetKeyword(params.Keyword).FindNotTotal() +// for _, material := range materials { +// productIds = append(productIds, material.ID) +// } +// locations, _ := models.NewLocationSearch().SetKeyword(params.Keyword).FindNotTotal() +// for _, location := range locations { +// locationIds = append(locationIds, location.Id) +// } +// } +// +// search := models.NewLocationProductAmountSearch() +// //search.SetPage(params.Page, params.PageSize) +// +// //wms_operation_details.amount as adjust_amount,wms_operation.id as operation_id,wms_operation.status +// search.Orm = search.Orm. +// Table("wms_location_product_amount"). +// Select(`wms_location_product_amount.id as location_product_amount_id,wms_location.id as location_id,wms_location.joint_name as location_name, +// material.id as product_id,material.name as product_name,wms_location_product_amount.amount,material.unit, +// wms_location_product_amount.create_date,material.weight`). +// InnerJoins("inner join material on material.id=wms_location_product_amount.product_id"). +// InnerJoins("inner join wms_location on wms_location.id=wms_location_product_amount.location_id") +// +// var ( +// records = make([]*models.LocationProductAmountWithOperation, 0) +// total int64 +// ) +// if len(productIds) > 0 { +// search.Orm = search.Orm.Where("wms_location_product_amount.product_id in (?)", productIds) +// +// } +// if len(locationIds) > 0 { +// search.Orm = search.Orm.Where("wms_location_product_amount.location_id in (?)", locationIds) +// } +// +// if err := search.Orm.Count(&total).Error; err != nil { +// util.ResponseFormat(c, code.RequestError, fmt.Errorf("find count err: %v", err)) +// return +// } +// //search.Orm = search.Orm.Preload("LocationProduct").Preload("LocationProduct.Location").Preload("LocationProduct.Product") +// if params.Page*params.PageSize > 0 { +// search.Orm = search.Orm.Offset((params.Page - 1) * params.PageSize).Limit(params.PageSize) +// } +// if err := search.Orm.Order("wms_location_product_amount.updated_at desc").Find(&records).Error; err != nil { +// util.ResponseFormat(c, code.RequestError, fmt.Errorf("find count err: %v", err)) +// return +// } +// +// for k, v := range records { +// var operation models.Operation +// db := mysqlx.GetDB() +// if res := db.Table("wms_operation").Preload("Details").InnerJoins("inner join wms_operation_details "+ +// "on wms_operation_details.operation_id=wms_operation.id").Where("wms_operation.base_operation_type=? and "+ +// "wms_operation.status=? and wms_operation_details.to_location_id=? and wms_operation_details.product_id=?", constvar.BaseOperationTypeAdjust, +// constvar.OperationStatus_Ready, v.LocationId, v.ProductId).First(&operation); res.Error != nil { +// if errors.Is(res.Error, gorm.ErrRecordNotFound) { +// records[k].Status = constvar.OperationStatus_Finish +// records[k].BaseOperationType = constvar.BaseOperationTypeAdjust +// continue +// } else { +// util.ResponseFormat(c, code.RequestError, fmt.Errorf("find operation err: %v", res.Error.Error())) +// return +// } +// } else { +// if len(operation.Details) > 0 { +// records[k].DifferenceAmount = operation.Details[0].Amount +// records[k].AdjustAmount = v.DifferenceAmount.Sub(v.Amount) +// } +// records[k].OperationId = operation.Id +// records[k].Status = operation.Status +// } +// records[k].BaseOperationType = constvar.BaseOperationTypeAdjust +// } +// +// productIds = make([]string, 0) +// for _, record := range records { +// productIds = append(productIds, record.ProductId) +// } +// +// products, err := models.NewMaterialSearch().SetIDs(productIds).FindNotTotal() +// if err != nil { +// util.ResponseFormat(c, code.RequestError, "鏌ヨ浜у搧澶辫触") +// return +// } +// +// productMap := models.MaterialMap(products) +// +// for k, v := range records { +// product := productMap[v.ProductId] +// if product == nil { +// continue +// } +// +// moreUnit := product.MoreUnit +// if moreUnit != nil && *moreUnit { +// records[k].AmountMoreUnits = service.CreateMoreUnit(v.Amount, product.MoreUnitList) +// } +// } +// +// util.ResponseFormatListWithPage(c, code.Success, records, int(total), params.Page, params.PageSize) +//} // LocationProductList // @Tags 搴撳瓨鐩樼偣 @@ -204,28 +202,28 @@ util.ResponseFormatList(c, code.Success, dataList, int(total)) } -// Add -// @Tags 搴撳瓨鐩樼偣 -// @Summary 娣诲姞搴撳瓨鐩樼偣淇℃伅 -// @Produce application/json -// @Param Authorization header string true "token" -// @Param object body request.UpdateLocationProductAmount true "鍏ュ簱/鍑哄簱淇℃伅" -// @Success 200 {object} util.Response "鎴愬姛" -// @Router /api-wms/v1/locationProductAmount/add [post] -func (slf LocationProductAmountController) Add(c *gin.Context) { - var reqParams request.UpdateLocationProductAmount - if err := c.BindJSON(&reqParams); err != nil { - util.ResponseFormat(c, code.RequestParamError, "鍙傛暟瑙f瀽澶辫触锛屾暟鎹被鍨嬮敊璇�") - return - } - userInfo := middleware.GetUserInfo(c) - if err := AddLocationProductAmount(reqParams, userInfo); err != nil { - util.ResponseFormat(c, code.RequestError, err) - return - } - - util.ResponseFormat(c, code.Success, "娣诲姞鎴愬姛") -} +//// Add +//// @Tags 搴撳瓨鐩樼偣 +//// @Summary 娣诲姞搴撳瓨鐩樼偣淇℃伅 +//// @Produce application/json +//// @Param Authorization header string true "token" +//// @Param object body request.UpdateLocationProductAmount true "鍏ュ簱/鍑哄簱淇℃伅" +//// @Success 200 {object} util.Response "鎴愬姛" +//// @Router /api-wms/v1/locationProductAmount/add [post] +//func (slf LocationProductAmountController) Add(c *gin.Context) { +// var reqParams request.UpdateLocationProductAmount +// if err := c.BindJSON(&reqParams); err != nil { +// util.ResponseFormat(c, code.RequestParamError, "鍙傛暟瑙f瀽澶辫触锛屾暟鎹被鍨嬮敊璇�") +// return +// } +// userInfo := middleware.GetUserInfo(c) +// if err := AddLocationProductAmount(reqParams, userInfo); err != nil { +// util.ResponseFormat(c, code.RequestError, err) +// return +// } +// +// util.ResponseFormat(c, code.Success, "娣诲姞鎴愬姛") +//} func AddLocationProductAmount(reqParams request.UpdateLocationProductAmount, userInfo *request.CustomClaims) error { if reqParams.LocationId == 0 { @@ -330,46 +328,46 @@ util.ResponseFormat(c, code.Success, ruleList) } -// Update -// @Tags 搴撳瓨鐩樼偣 -// @Summary 淇敼搴撳瓨鐩樼偣淇℃伅 -// @Produce application/json -// @Param Authorization header string true "token" -// @Param object body request.UpdateLocationProductAmount true "鍏ュ簱/鍑哄簱淇℃伅" -// @Success 200 {object} util.Response "鎴愬姛" -// @Router /api-wms/v1/locationProductAmount/update [post] -func (slf LocationProductAmountController) Update(c *gin.Context) { - var reqParams request.UpdateLocationProductAmount - if err := c.BindJSON(&reqParams); err != nil { - util.ResponseFormat(c, code.RequestParamError, "鍙傛暟瑙f瀽澶辫触锛屾暟鎹被鍨嬮敊璇�") - return - } - userInfo := middleware.GetUserInfo(c) - if reqParams.OperationId == 0 { - if err := AddLocationProductAmount(reqParams, userInfo); err != nil { - util.ResponseFormat(c, code.RequestError, err.Error()) - return - } - util.ResponseFormat(c, code.Success, "娣诲姞鎴愬姛") - return - } - operation, err := models.NewOperationSearch().SetID(reqParams.OperationId).First() - if err != nil { - util.ResponseFormat(c, code.RequestParamError, "鏈壘鍒扮浉鍏虫暟鎹�") - return - } - if operation.Status != constvar.OperationStatus_Ready { - util.ResponseFormat(c, code.RequestParamError, "璇ヨ褰曞凡琚獙璇�,璇峰埛鏂伴〉闈㈡煡鐪�") - return - } - - if err := models.NewOperationDetailsSearch().SetOperationId(reqParams.OperationId).SetProductId(reqParams.ProductId).Update(&models.OperationDetails{Amount: reqParams.DifferenceAmount}); err != nil { - util.ResponseFormat(c, code.RequestError, "淇敼澶辫触锛�"+err.Error()) - return - } - - util.ResponseFormat(c, code.Success, "淇敼鎴愬姛") -} +//// Update +//// @Tags 搴撳瓨鐩樼偣 +//// @Summary 淇敼搴撳瓨鐩樼偣淇℃伅 +//// @Produce application/json +//// @Param Authorization header string true "token" +//// @Param object body request.UpdateLocationProductAmount true "鍏ュ簱/鍑哄簱淇℃伅" +//// @Success 200 {object} util.Response "鎴愬姛" +//// @Router /api-wms/v1/locationProductAmount/update [post] +//func (slf LocationProductAmountController) Update(c *gin.Context) { +// var reqParams request.UpdateLocationProductAmount +// if err := c.BindJSON(&reqParams); err != nil { +// util.ResponseFormat(c, code.RequestParamError, "鍙傛暟瑙f瀽澶辫触锛屾暟鎹被鍨嬮敊璇�") +// return +// } +// userInfo := middleware.GetUserInfo(c) +// if reqParams.OperationId == 0 { +// if err := AddLocationProductAmount(reqParams, userInfo); err != nil { +// util.ResponseFormat(c, code.RequestError, err.Error()) +// return +// } +// util.ResponseFormat(c, code.Success, "娣诲姞鎴愬姛") +// return +// } +// operation, err := models.NewOperationSearch().SetID(reqParams.OperationId).First() +// if err != nil { +// util.ResponseFormat(c, code.RequestParamError, "鏈壘鍒扮浉鍏虫暟鎹�") +// return +// } +// if operation.Status != constvar.OperationStatus_Ready { +// util.ResponseFormat(c, code.RequestParamError, "璇ヨ褰曞凡琚獙璇�,璇峰埛鏂伴〉闈㈡煡鐪�") +// return +// } +// +// if err := models.NewOperationDetailsSearch().SetOperationId(reqParams.OperationId).SetProductId(reqParams.ProductId).Update(&models.OperationDetails{Amount: reqParams.DifferenceAmount}); err != nil { +// util.ResponseFormat(c, code.RequestError, "淇敼澶辫触锛�"+err.Error()) +// return +// } +// +// util.ResponseFormat(c, code.Success, "淇敼鎴愬姛") +//} // Finish // deprecated -- Gitblit v1.8.0