From c6c500d7044c5e4785fc856a5a1253b0604a8147 Mon Sep 17 00:00:00 2001
From: zhangqian <zhangqian@123.com>
Date: 星期二, 04 六月 2024 21:16:18 +0800
Subject: [PATCH] 库存报表下载
---
controllers/location.go | 31 +++++++++++++++++++++++++++----
1 files changed, 27 insertions(+), 4 deletions(-)
diff --git a/controllers/location.go b/controllers/location.go
index 0860808..ecd21c0 100644
--- a/controllers/location.go
+++ b/controllers/location.go
@@ -4,6 +4,7 @@
"errors"
"github.com/gin-gonic/gin"
"strconv"
+ "strings"
"wms/extend/code"
"wms/extend/util"
"wms/models"
@@ -23,7 +24,7 @@
func (slf LocationController) AddLocation(c *gin.Context) {
var params models.Location
if err := c.BindJSON(¶ms); err != nil {
- util.ResponseFormat(c, code.RequestParamError, "鍙傛暟瑙f瀽澶辫触锛屾暟鎹被鍨嬮敊璇�")
+ util.ResponseFormat(c, code.RequestParamError, "鍙傛暟瑙f瀽澶辫触锛屾暟鎹被鍨嬮敊璇�:"+err.Error())
return
}
if err := slf.CheckLocation(params); err != nil {
@@ -38,6 +39,19 @@
return
}
params.JointName = first.JointName + "/" + params.Name
+ if first.WarehouseId != 0 {
+ params.WarehouseId = first.Id
+ } else {
+ //鏍规嵁浠撳簱缂╁啓鏌ヨ浠撳簱
+ houseCode := strings.Split(first.JointName, "/")[0]
+ warehouse, err := models.NewWarehouseSearch().SetCode(houseCode).First()
+ if err != nil {
+ util.ResponseFormat(c, code.RequestParamError, err)
+ return
+ }
+ params.WarehouseId = warehouse.Id
+ }
+
} else {
params.JointName = params.Name
}
@@ -54,7 +68,7 @@
// @Tags 浣嶇疆
// @Summary 鑾峰彇浣嶇疆鍒楄〃
// @Produce application/json
-// @Param object body request.GetProductList true "鏌ヨ鍙傛暟"
+// @Param object body request.GetLocationList true "鏌ヨ鍙傛暟"
// @Success 200 {object} util.ResponseList{data=[]models.Location} "鎴愬姛"
// @Router /api-wms/v1/location/getLocationList [post]
func (slf LocationController) GetLocationList(c *gin.Context) {
@@ -67,7 +81,8 @@
if params.PageInfo.Check() {
search.SetPage(params.Page, params.PageSize)
}
- list, total, err := search.SetKeyword(params.KeyWord).SetType(params.Type).SetJointName(params.JointName).SetOrder("created_at desc").Find()
+ list, total, err := search.SetKeyword(params.KeyWord).SetType(params.Type).SetJointName(params.JointName).
+ SetIsScrapLocation(params.IsScrapLocation).SetOrder("created_at desc").Find()
if err != nil {
util.ResponseFormat(c, code.RequestParamError, "鏌ユ壘澶辫触")
return
@@ -97,6 +112,14 @@
if location.ParentId == 0 {
tree = append(tree, location)
} else {
+ if _, ok := m[location.ParentId]; !ok {
+ tree = append(tree, location)
+ continue
+ }
+ if m[location.ParentId].Children == nil {
+ m[location.ParentId].Children = make([]*models.Location, 0)
+ }
+
m[location.ParentId].Children = append(m[location.ParentId].Children, location)
}
}
@@ -159,7 +182,7 @@
}
params.JointName = first.JointName + "/" + params.Name
} else {
- params.JointName = params.Name
+ params.JointName = strings.Split(params.JointName, "/")[0] + "/" + params.Name
}
err := models.NewLocationSearch().Update(¶ms)
if err != nil {
--
Gitblit v1.8.0