From 5be282bebeb0bc98273c9382b1c302311235313e Mon Sep 17 00:00:00 2001
From: liujiandao <274878379@qq.com>
Date: 星期三, 27 九月 2023 20:12:36 +0800
Subject: [PATCH] 库存调整功能开发

---
 response/location_product_response.go  |    8 
 request/location_product_amount.go     |    5 
 docs/swagger.yaml                      |  246 +++++++++++++
 docs/docs.go                           |  382 +++++++++++++++++++++
 docs/swagger.json                      |  380 +++++++++++++++++++++
 controllers/location_product_amount.go |   27 +
 router/router.go                       |    5 
 7 files changed, 1,051 insertions(+), 2 deletions(-)

diff --git a/controllers/location_product_amount.go b/controllers/location_product_amount.go
index c2c1c16..36b4e0c 100644
--- a/controllers/location_product_amount.go
+++ b/controllers/location_product_amount.go
@@ -12,6 +12,7 @@
 	"wms/extend/util"
 	"wms/models"
 	"wms/request"
+	"wms/response"
 )
 
 type LocationProductAmountController struct {
@@ -172,6 +173,32 @@
 	util.ResponseFormat(c, code.Success, "娣诲姞鎴愬姛")
 }
 
+// GetRuleList
+// @Tags      搴撳瓨鐩樼偣
+// @Summary   鑾峰彇涓婃灦瑙勫垯
+// @Produce   application/json
+// @Param     object  body  request.GetRuleList true  "鏌ヨ淇℃伅"
+// @Success   200 {object} util.ResponseList{data=[]response.RuleList}	"鎴愬姛"
+// @Router    /api-wms/v1/locationProductAmount/getRuleList [post]
+func (slf LocationProductAmountController) GetRuleList(c *gin.Context) {
+	var params request.GetRuleList
+	if err := c.BindJSON(&params); err != nil {
+		util.ResponseFormat(c, code.RequestParamError, "鍙傛暟瑙f瀽澶辫触锛屾暟鎹被鍨嬮敊璇�")
+		return
+	}
+	list, err := models.NewLocationProductSearch().SetProductId(params.ProductId).SetLocationId(params.LocationId).Find()
+	if err != nil {
+		util.ResponseFormat(c, code.RequestParamError, err.Error())
+		return
+	}
+	var ruleList response.RuleList
+	for _, l := range list {
+		ruleList.LocationList = append(ruleList.LocationList, l.Location)
+		ruleList.ProductList = append(ruleList.ProductList, l.Product)
+	}
+	util.ResponseFormat(c, code.Success, ruleList)
+}
+
 // Add
 // @Tags      搴撳瓨鐩樼偣
 // @Summary   淇敼搴撳瓨鐩樼偣淇℃伅
diff --git a/docs/docs.go b/docs/docs.go
index d20b847..3c6f0ad 100644
--- a/docs/docs.go
+++ b/docs/docs.go
@@ -294,6 +294,141 @@
                 }
             }
         },
+        "/api-wms/v1/forms/getHistory": {
+            "post": {
+                "produces": [
+                    "application/json"
+                ],
+                "tags": [
+                    "鎶ヨ〃"
+                ],
+                "summary": "鑾峰彇鍘嗗彶淇℃伅",
+                "parameters": [
+                    {
+                        "description": "鏌ヨ鍙傛暟",
+                        "name": "object",
+                        "in": "body",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/request.GetInventoryHistory"
+                        }
+                    }
+                ],
+                "responses": {
+                    "200": {
+                        "description": "鎴愬姛",
+                        "schema": {
+                            "allOf": [
+                                {
+                                    "$ref": "#/definitions/util.ResponseList"
+                                },
+                                {
+                                    "type": "object",
+                                    "properties": {
+                                        "data": {
+                                            "type": "array",
+                                            "items": {
+                                                "$ref": "#/definitions/response.InventoryHistory"
+                                            }
+                                        }
+                                    }
+                                }
+                            ]
+                        }
+                    }
+                }
+            }
+        },
+        "/api-wms/v1/forms/getInventoryForms": {
+            "post": {
+                "produces": [
+                    "application/json"
+                ],
+                "tags": [
+                    "鎶ヨ〃"
+                ],
+                "summary": "鑾峰彇搴撳瓨鎶ヨ〃",
+                "parameters": [
+                    {
+                        "description": "鏌ヨ鍙傛暟",
+                        "name": "object",
+                        "in": "body",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/request.GetInventoryForms"
+                        }
+                    }
+                ],
+                "responses": {
+                    "200": {
+                        "description": "鎴愬姛",
+                        "schema": {
+                            "allOf": [
+                                {
+                                    "$ref": "#/definitions/util.ResponseList"
+                                },
+                                {
+                                    "type": "object",
+                                    "properties": {
+                                        "data": {
+                                            "type": "array",
+                                            "items": {
+                                                "$ref": "#/definitions/response.InventoryForms"
+                                            }
+                                        }
+                                    }
+                                }
+                            ]
+                        }
+                    }
+                }
+            }
+        },
+        "/api-wms/v1/forms/getLocationForms": {
+            "post": {
+                "produces": [
+                    "application/json"
+                ],
+                "tags": [
+                    "鎶ヨ〃"
+                ],
+                "summary": "鑾峰彇浣嶇疆鎶ヨ〃",
+                "parameters": [
+                    {
+                        "description": "鏌ヨ鍙傛暟",
+                        "name": "object",
+                        "in": "body",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/request.PageInfo"
+                        }
+                    }
+                ],
+                "responses": {
+                    "200": {
+                        "description": "鎴愬姛",
+                        "schema": {
+                            "allOf": [
+                                {
+                                    "$ref": "#/definitions/util.ResponseList"
+                                },
+                                {
+                                    "type": "object",
+                                    "properties": {
+                                        "data": {
+                                            "type": "array",
+                                            "items": {
+                                                "$ref": "#/definitions/response.LocationForms"
+                                            }
+                                        }
+                                    }
+                                }
+                            ]
+                        }
+                    }
+                }
+            }
+        },
         "/api-wms/v1/location/addLocation": {
             "post": {
                 "produces": [
@@ -610,6 +745,51 @@
                         "description": "鎴愬姛",
                         "schema": {
                             "$ref": "#/definitions/util.Response"
+                        }
+                    }
+                }
+            }
+        },
+        "/api-wms/v1/locationProductAmount/getRuleList": {
+            "post": {
+                "produces": [
+                    "application/json"
+                ],
+                "tags": [
+                    "搴撳瓨鐩樼偣"
+                ],
+                "summary": "鑾峰彇涓婃灦瑙勫垯",
+                "parameters": [
+                    {
+                        "description": "鏌ヨ淇℃伅",
+                        "name": "object",
+                        "in": "body",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/request.GetRuleList"
+                        }
+                    }
+                ],
+                "responses": {
+                    "200": {
+                        "description": "鎴愬姛",
+                        "schema": {
+                            "allOf": [
+                                {
+                                    "$ref": "#/definitions/util.ResponseList"
+                                },
+                                {
+                                    "type": "object",
+                                    "properties": {
+                                        "data": {
+                                            "type": "array",
+                                            "items": {
+                                                "$ref": "#/definitions/response.RuleList"
+                                            }
+                                        }
+                                    }
+                                }
+                            ]
                         }
                     }
                 }
@@ -2791,6 +2971,55 @@
                 }
             }
         },
+        "request.GetInventoryForms": {
+            "type": "object",
+            "properties": {
+                "categoryIds": {
+                    "description": "浜у搧绫诲瀷id",
+                    "type": "array",
+                    "items": {
+                        "type": "integer"
+                    }
+                },
+                "page": {
+                    "description": "椤电爜",
+                    "type": "integer"
+                },
+                "pageSize": {
+                    "description": "姣忛〉澶у皬",
+                    "type": "integer"
+                },
+                "warehouseCode": {
+                    "description": "浠撳簱缂╁啓",
+                    "type": "string"
+                }
+            }
+        },
+        "request.GetInventoryHistory": {
+            "type": "object",
+            "properties": {
+                "page": {
+                    "description": "椤电爜",
+                    "type": "integer"
+                },
+                "pageSize": {
+                    "description": "姣忛〉澶у皬",
+                    "type": "integer"
+                },
+                "produceId": {
+                    "description": "浜у搧id",
+                    "type": "string"
+                },
+                "productName": {
+                    "description": "浜у搧鍚嶇О",
+                    "type": "string"
+                },
+                "unit": {
+                    "description": "鍗曚綅",
+                    "type": "string"
+                }
+            }
+        },
         "request.GetProductList": {
             "type": "object",
             "properties": {
@@ -2807,6 +3036,19 @@
                 "pageSize": {
                     "description": "姣忛〉澶у皬",
                     "type": "integer"
+                }
+            }
+        },
+        "request.GetRuleList": {
+            "type": "object",
+            "properties": {
+                "locationId": {
+                    "description": "浣嶇疆id",
+                    "type": "integer"
+                },
+                "productId": {
+                    "description": "浜у搧id",
+                    "type": "string"
                 }
             }
         },
@@ -3180,6 +3422,144 @@
                 }
             }
         },
+        "response.InventoryForms": {
+            "type": "object",
+            "properties": {
+                "amount": {
+                    "description": "鍦ㄥ簱鏁伴噺",
+                    "type": "number"
+                },
+                "availableNumber": {
+                    "description": "鍙敤搴撳瓨",
+                    "type": "number"
+                },
+                "cost": {
+                    "description": "鎴愭湰",
+                    "type": "number"
+                },
+                "in": {
+                    "description": "鍏ュ簱",
+                    "type": "number"
+                },
+                "out": {
+                    "description": "鍑哄簱",
+                    "type": "number"
+                },
+                "produceId": {
+                    "description": "浜у搧id",
+                    "type": "string"
+                },
+                "productName": {
+                    "description": "浜у搧鍚嶇О",
+                    "type": "string"
+                },
+                "productType": {
+                    "description": "浜у搧绫诲瀷",
+                    "type": "string"
+                },
+                "unit": {
+                    "description": "鍗曚綅",
+                    "type": "string"
+                },
+                "value": {
+                    "description": "鎬讳环鍊�",
+                    "type": "number"
+                }
+            }
+        },
+        "response.InventoryHistory": {
+            "type": "object",
+            "properties": {
+                "amount": {
+                    "description": "鏁伴噺",
+                    "type": "number"
+                },
+                "baseOperationType": {
+                    "description": "鍩虹浣滀笟绫诲瀷",
+                    "allOf": [
+                        {
+                            "$ref": "#/definitions/constvar.BaseOperationType"
+                        }
+                    ]
+                },
+                "contactedName": {
+                    "description": "瀹屾垚鑰�",
+                    "type": "string"
+                },
+                "date": {
+                    "description": "鏃ユ湡",
+                    "type": "string"
+                },
+                "fromLocation": {
+                    "description": "婧愪綅缃�",
+                    "type": "string"
+                },
+                "number": {
+                    "description": "鍗曞彿",
+                    "type": "string"
+                },
+                "toLocation": {
+                    "description": "鐩爣浣嶇疆",
+                    "type": "string"
+                },
+                "unit": {
+                    "description": "鍗曚綅",
+                    "type": "string"
+                }
+            }
+        },
+        "response.LocationForms": {
+            "type": "object",
+            "properties": {
+                "amount": {
+                    "description": "鏁伴噺",
+                    "type": "number"
+                },
+                "locationName": {
+                    "description": "浣嶇疆鍚嶇О",
+                    "type": "string"
+                },
+                "produceId": {
+                    "description": "浜у搧id",
+                    "type": "string"
+                },
+                "productName": {
+                    "description": "浜у搧鍚嶇О",
+                    "type": "string"
+                },
+                "productTypeName": {
+                    "description": "浜у搧绫诲埆",
+                    "type": "string"
+                },
+                "unit": {
+                    "description": "鍗曚綅",
+                    "type": "string"
+                },
+                "value": {
+                    "description": "鎬讳环鍊�",
+                    "type": "number"
+                }
+            }
+        },
+        "response.RuleList": {
+            "type": "object",
+            "properties": {
+                "locationList": {
+                    "description": "浣嶇疆鍒楄〃",
+                    "type": "array",
+                    "items": {
+                        "$ref": "#/definitions/models.Location"
+                    }
+                },
+                "productList": {
+                    "description": "浜у搧鍒楄〃",
+                    "type": "array",
+                    "items": {
+                        "$ref": "#/definitions/models.Material"
+                    }
+                }
+            }
+        },
         "util.Response": {
             "type": "object",
             "properties": {
@@ -3226,6 +3606,8 @@
 	Description:      "",
 	InfoInstanceName: "swagger",
 	SwaggerTemplate:  docTemplate,
+	LeftDelim:        "{{",
+	RightDelim:       "}}",
 }
 
 func init() {
diff --git a/docs/swagger.json b/docs/swagger.json
index 330c147..7a78b11 100644
--- a/docs/swagger.json
+++ b/docs/swagger.json
@@ -282,6 +282,141 @@
                 }
             }
         },
+        "/api-wms/v1/forms/getHistory": {
+            "post": {
+                "produces": [
+                    "application/json"
+                ],
+                "tags": [
+                    "鎶ヨ〃"
+                ],
+                "summary": "鑾峰彇鍘嗗彶淇℃伅",
+                "parameters": [
+                    {
+                        "description": "鏌ヨ鍙傛暟",
+                        "name": "object",
+                        "in": "body",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/request.GetInventoryHistory"
+                        }
+                    }
+                ],
+                "responses": {
+                    "200": {
+                        "description": "鎴愬姛",
+                        "schema": {
+                            "allOf": [
+                                {
+                                    "$ref": "#/definitions/util.ResponseList"
+                                },
+                                {
+                                    "type": "object",
+                                    "properties": {
+                                        "data": {
+                                            "type": "array",
+                                            "items": {
+                                                "$ref": "#/definitions/response.InventoryHistory"
+                                            }
+                                        }
+                                    }
+                                }
+                            ]
+                        }
+                    }
+                }
+            }
+        },
+        "/api-wms/v1/forms/getInventoryForms": {
+            "post": {
+                "produces": [
+                    "application/json"
+                ],
+                "tags": [
+                    "鎶ヨ〃"
+                ],
+                "summary": "鑾峰彇搴撳瓨鎶ヨ〃",
+                "parameters": [
+                    {
+                        "description": "鏌ヨ鍙傛暟",
+                        "name": "object",
+                        "in": "body",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/request.GetInventoryForms"
+                        }
+                    }
+                ],
+                "responses": {
+                    "200": {
+                        "description": "鎴愬姛",
+                        "schema": {
+                            "allOf": [
+                                {
+                                    "$ref": "#/definitions/util.ResponseList"
+                                },
+                                {
+                                    "type": "object",
+                                    "properties": {
+                                        "data": {
+                                            "type": "array",
+                                            "items": {
+                                                "$ref": "#/definitions/response.InventoryForms"
+                                            }
+                                        }
+                                    }
+                                }
+                            ]
+                        }
+                    }
+                }
+            }
+        },
+        "/api-wms/v1/forms/getLocationForms": {
+            "post": {
+                "produces": [
+                    "application/json"
+                ],
+                "tags": [
+                    "鎶ヨ〃"
+                ],
+                "summary": "鑾峰彇浣嶇疆鎶ヨ〃",
+                "parameters": [
+                    {
+                        "description": "鏌ヨ鍙傛暟",
+                        "name": "object",
+                        "in": "body",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/request.PageInfo"
+                        }
+                    }
+                ],
+                "responses": {
+                    "200": {
+                        "description": "鎴愬姛",
+                        "schema": {
+                            "allOf": [
+                                {
+                                    "$ref": "#/definitions/util.ResponseList"
+                                },
+                                {
+                                    "type": "object",
+                                    "properties": {
+                                        "data": {
+                                            "type": "array",
+                                            "items": {
+                                                "$ref": "#/definitions/response.LocationForms"
+                                            }
+                                        }
+                                    }
+                                }
+                            ]
+                        }
+                    }
+                }
+            }
+        },
         "/api-wms/v1/location/addLocation": {
             "post": {
                 "produces": [
@@ -598,6 +733,51 @@
                         "description": "鎴愬姛",
                         "schema": {
                             "$ref": "#/definitions/util.Response"
+                        }
+                    }
+                }
+            }
+        },
+        "/api-wms/v1/locationProductAmount/getRuleList": {
+            "post": {
+                "produces": [
+                    "application/json"
+                ],
+                "tags": [
+                    "搴撳瓨鐩樼偣"
+                ],
+                "summary": "鑾峰彇涓婃灦瑙勫垯",
+                "parameters": [
+                    {
+                        "description": "鏌ヨ淇℃伅",
+                        "name": "object",
+                        "in": "body",
+                        "required": true,
+                        "schema": {
+                            "$ref": "#/definitions/request.GetRuleList"
+                        }
+                    }
+                ],
+                "responses": {
+                    "200": {
+                        "description": "鎴愬姛",
+                        "schema": {
+                            "allOf": [
+                                {
+                                    "$ref": "#/definitions/util.ResponseList"
+                                },
+                                {
+                                    "type": "object",
+                                    "properties": {
+                                        "data": {
+                                            "type": "array",
+                                            "items": {
+                                                "$ref": "#/definitions/response.RuleList"
+                                            }
+                                        }
+                                    }
+                                }
+                            ]
                         }
                     }
                 }
@@ -2779,6 +2959,55 @@
                 }
             }
         },
+        "request.GetInventoryForms": {
+            "type": "object",
+            "properties": {
+                "categoryIds": {
+                    "description": "浜у搧绫诲瀷id",
+                    "type": "array",
+                    "items": {
+                        "type": "integer"
+                    }
+                },
+                "page": {
+                    "description": "椤电爜",
+                    "type": "integer"
+                },
+                "pageSize": {
+                    "description": "姣忛〉澶у皬",
+                    "type": "integer"
+                },
+                "warehouseCode": {
+                    "description": "浠撳簱缂╁啓",
+                    "type": "string"
+                }
+            }
+        },
+        "request.GetInventoryHistory": {
+            "type": "object",
+            "properties": {
+                "page": {
+                    "description": "椤电爜",
+                    "type": "integer"
+                },
+                "pageSize": {
+                    "description": "姣忛〉澶у皬",
+                    "type": "integer"
+                },
+                "produceId": {
+                    "description": "浜у搧id",
+                    "type": "string"
+                },
+                "productName": {
+                    "description": "浜у搧鍚嶇О",
+                    "type": "string"
+                },
+                "unit": {
+                    "description": "鍗曚綅",
+                    "type": "string"
+                }
+            }
+        },
         "request.GetProductList": {
             "type": "object",
             "properties": {
@@ -2795,6 +3024,19 @@
                 "pageSize": {
                     "description": "姣忛〉澶у皬",
                     "type": "integer"
+                }
+            }
+        },
+        "request.GetRuleList": {
+            "type": "object",
+            "properties": {
+                "locationId": {
+                    "description": "浣嶇疆id",
+                    "type": "integer"
+                },
+                "productId": {
+                    "description": "浜у搧id",
+                    "type": "string"
                 }
             }
         },
@@ -3168,6 +3410,144 @@
                 }
             }
         },
+        "response.InventoryForms": {
+            "type": "object",
+            "properties": {
+                "amount": {
+                    "description": "鍦ㄥ簱鏁伴噺",
+                    "type": "number"
+                },
+                "availableNumber": {
+                    "description": "鍙敤搴撳瓨",
+                    "type": "number"
+                },
+                "cost": {
+                    "description": "鎴愭湰",
+                    "type": "number"
+                },
+                "in": {
+                    "description": "鍏ュ簱",
+                    "type": "number"
+                },
+                "out": {
+                    "description": "鍑哄簱",
+                    "type": "number"
+                },
+                "produceId": {
+                    "description": "浜у搧id",
+                    "type": "string"
+                },
+                "productName": {
+                    "description": "浜у搧鍚嶇О",
+                    "type": "string"
+                },
+                "productType": {
+                    "description": "浜у搧绫诲瀷",
+                    "type": "string"
+                },
+                "unit": {
+                    "description": "鍗曚綅",
+                    "type": "string"
+                },
+                "value": {
+                    "description": "鎬讳环鍊�",
+                    "type": "number"
+                }
+            }
+        },
+        "response.InventoryHistory": {
+            "type": "object",
+            "properties": {
+                "amount": {
+                    "description": "鏁伴噺",
+                    "type": "number"
+                },
+                "baseOperationType": {
+                    "description": "鍩虹浣滀笟绫诲瀷",
+                    "allOf": [
+                        {
+                            "$ref": "#/definitions/constvar.BaseOperationType"
+                        }
+                    ]
+                },
+                "contactedName": {
+                    "description": "瀹屾垚鑰�",
+                    "type": "string"
+                },
+                "date": {
+                    "description": "鏃ユ湡",
+                    "type": "string"
+                },
+                "fromLocation": {
+                    "description": "婧愪綅缃�",
+                    "type": "string"
+                },
+                "number": {
+                    "description": "鍗曞彿",
+                    "type": "string"
+                },
+                "toLocation": {
+                    "description": "鐩爣浣嶇疆",
+                    "type": "string"
+                },
+                "unit": {
+                    "description": "鍗曚綅",
+                    "type": "string"
+                }
+            }
+        },
+        "response.LocationForms": {
+            "type": "object",
+            "properties": {
+                "amount": {
+                    "description": "鏁伴噺",
+                    "type": "number"
+                },
+                "locationName": {
+                    "description": "浣嶇疆鍚嶇О",
+                    "type": "string"
+                },
+                "produceId": {
+                    "description": "浜у搧id",
+                    "type": "string"
+                },
+                "productName": {
+                    "description": "浜у搧鍚嶇О",
+                    "type": "string"
+                },
+                "productTypeName": {
+                    "description": "浜у搧绫诲埆",
+                    "type": "string"
+                },
+                "unit": {
+                    "description": "鍗曚綅",
+                    "type": "string"
+                },
+                "value": {
+                    "description": "鎬讳环鍊�",
+                    "type": "number"
+                }
+            }
+        },
+        "response.RuleList": {
+            "type": "object",
+            "properties": {
+                "locationList": {
+                    "description": "浣嶇疆鍒楄〃",
+                    "type": "array",
+                    "items": {
+                        "$ref": "#/definitions/models.Location"
+                    }
+                },
+                "productList": {
+                    "description": "浜у搧鍒楄〃",
+                    "type": "array",
+                    "items": {
+                        "$ref": "#/definitions/models.Material"
+                    }
+                }
+            }
+        },
         "util.Response": {
             "type": "object",
             "properties": {
diff --git a/docs/swagger.yaml b/docs/swagger.yaml
index a87ffb6..c1a5e1f 100644
--- a/docs/swagger.yaml
+++ b/docs/swagger.yaml
@@ -799,6 +799,41 @@
     required:
     - code
     type: object
+  request.GetInventoryForms:
+    properties:
+      categoryIds:
+        description: 浜у搧绫诲瀷id
+        items:
+          type: integer
+        type: array
+      page:
+        description: 椤电爜
+        type: integer
+      pageSize:
+        description: 姣忛〉澶у皬
+        type: integer
+      warehouseCode:
+        description: 浠撳簱缂╁啓
+        type: string
+    type: object
+  request.GetInventoryHistory:
+    properties:
+      page:
+        description: 椤电爜
+        type: integer
+      pageSize:
+        description: 姣忛〉澶у皬
+        type: integer
+      produceId:
+        description: 浜у搧id
+        type: string
+      productName:
+        description: 浜у搧鍚嶇О
+        type: string
+      unit:
+        description: 鍗曚綅
+        type: string
+    type: object
   request.GetProductList:
     properties:
       categoryId:
@@ -811,6 +846,15 @@
       pageSize:
         description: 姣忛〉澶у皬
         type: integer
+    type: object
+  request.GetRuleList:
+    properties:
+      locationId:
+        description: 浣嶇疆id
+        type: integer
+      productId:
+        description: 浜у搧id
+        type: string
     type: object
   request.OperationAllList:
     properties:
@@ -1064,6 +1108,104 @@
         description: 浠撳簱id
         type: integer
     type: object
+  response.InventoryForms:
+    properties:
+      amount:
+        description: 鍦ㄥ簱鏁伴噺
+        type: number
+      availableNumber:
+        description: 鍙敤搴撳瓨
+        type: number
+      cost:
+        description: 鎴愭湰
+        type: number
+      in:
+        description: 鍏ュ簱
+        type: number
+      out:
+        description: 鍑哄簱
+        type: number
+      produceId:
+        description: 浜у搧id
+        type: string
+      productName:
+        description: 浜у搧鍚嶇О
+        type: string
+      productType:
+        description: 浜у搧绫诲瀷
+        type: string
+      unit:
+        description: 鍗曚綅
+        type: string
+      value:
+        description: 鎬讳环鍊�
+        type: number
+    type: object
+  response.InventoryHistory:
+    properties:
+      amount:
+        description: 鏁伴噺
+        type: number
+      baseOperationType:
+        allOf:
+        - $ref: '#/definitions/constvar.BaseOperationType'
+        description: 鍩虹浣滀笟绫诲瀷
+      contactedName:
+        description: 瀹屾垚鑰�
+        type: string
+      date:
+        description: 鏃ユ湡
+        type: string
+      fromLocation:
+        description: 婧愪綅缃�
+        type: string
+      number:
+        description: 鍗曞彿
+        type: string
+      toLocation:
+        description: 鐩爣浣嶇疆
+        type: string
+      unit:
+        description: 鍗曚綅
+        type: string
+    type: object
+  response.LocationForms:
+    properties:
+      amount:
+        description: 鏁伴噺
+        type: number
+      locationName:
+        description: 浣嶇疆鍚嶇О
+        type: string
+      produceId:
+        description: 浜у搧id
+        type: string
+      productName:
+        description: 浜у搧鍚嶇О
+        type: string
+      productTypeName:
+        description: 浜у搧绫诲埆
+        type: string
+      unit:
+        description: 鍗曚綅
+        type: string
+      value:
+        description: 鎬讳环鍊�
+        type: number
+    type: object
+  response.RuleList:
+    properties:
+      locationList:
+        description: 浣嶇疆鍒楄〃
+        items:
+          $ref: '#/definitions/models.Location'
+        type: array
+      productList:
+        description: 浜у搧鍒楄〃
+        items:
+          $ref: '#/definitions/models.Material'
+        type: array
+    type: object
   util.Response:
     properties:
       code:
@@ -1262,6 +1404,84 @@
       summary: 缂栬緫鍏徃
       tags:
       - 鍏徃
+  /api-wms/v1/forms/getHistory:
+    post:
+      parameters:
+      - description: 鏌ヨ鍙傛暟
+        in: body
+        name: object
+        required: true
+        schema:
+          $ref: '#/definitions/request.GetInventoryHistory'
+      produces:
+      - application/json
+      responses:
+        "200":
+          description: 鎴愬姛
+          schema:
+            allOf:
+            - $ref: '#/definitions/util.ResponseList'
+            - properties:
+                data:
+                  items:
+                    $ref: '#/definitions/response.InventoryHistory'
+                  type: array
+              type: object
+      summary: 鑾峰彇鍘嗗彶淇℃伅
+      tags:
+      - 鎶ヨ〃
+  /api-wms/v1/forms/getInventoryForms:
+    post:
+      parameters:
+      - description: 鏌ヨ鍙傛暟
+        in: body
+        name: object
+        required: true
+        schema:
+          $ref: '#/definitions/request.GetInventoryForms'
+      produces:
+      - application/json
+      responses:
+        "200":
+          description: 鎴愬姛
+          schema:
+            allOf:
+            - $ref: '#/definitions/util.ResponseList'
+            - properties:
+                data:
+                  items:
+                    $ref: '#/definitions/response.InventoryForms'
+                  type: array
+              type: object
+      summary: 鑾峰彇搴撳瓨鎶ヨ〃
+      tags:
+      - 鎶ヨ〃
+  /api-wms/v1/forms/getLocationForms:
+    post:
+      parameters:
+      - description: 鏌ヨ鍙傛暟
+        in: body
+        name: object
+        required: true
+        schema:
+          $ref: '#/definitions/request.PageInfo'
+      produces:
+      - application/json
+      responses:
+        "200":
+          description: 鎴愬姛
+          schema:
+            allOf:
+            - $ref: '#/definitions/util.ResponseList'
+            - properties:
+                data:
+                  items:
+                    $ref: '#/definitions/response.LocationForms'
+                  type: array
+              type: object
+      summary: 鑾峰彇浣嶇疆鎶ヨ〃
+      tags:
+      - 鎶ヨ〃
   /api-wms/v1/location/addLocation:
     post:
       parameters:
@@ -1461,6 +1681,32 @@
       summary: 娣诲姞搴撳瓨鐩樼偣淇℃伅
       tags:
       - 搴撳瓨鐩樼偣
+  /api-wms/v1/locationProductAmount/getRuleList:
+    post:
+      parameters:
+      - description: 鏌ヨ淇℃伅
+        in: body
+        name: object
+        required: true
+        schema:
+          $ref: '#/definitions/request.GetRuleList'
+      produces:
+      - application/json
+      responses:
+        "200":
+          description: 鎴愬姛
+          schema:
+            allOf:
+            - $ref: '#/definitions/util.ResponseList'
+            - properties:
+                data:
+                  items:
+                    $ref: '#/definitions/response.RuleList'
+                  type: array
+              type: object
+      summary: 鑾峰彇涓婃灦瑙勫垯
+      tags:
+      - 搴撳瓨鐩樼偣
   /api-wms/v1/locationProductAmount/list:
     post:
       parameters:
diff --git a/request/location_product_amount.go b/request/location_product_amount.go
index faa7b02..266be4b 100644
--- a/request/location_product_amount.go
+++ b/request/location_product_amount.go
@@ -16,3 +16,8 @@
 	DifferenceAmount        decimal.Decimal `json:"differenceAmount"`        //璁℃暟鏁伴噺
 	OperationId             int             `json:"operationId"`             //鍑哄叆搴搃d
 }
+
+type GetRuleList struct {
+	LocationId int    `json:"locationId"` //浣嶇疆id
+	ProductId  string `json:"productId"`  //浜у搧id
+}
diff --git a/response/location_product_response.go b/response/location_product_response.go
new file mode 100644
index 0000000..df9fbfd
--- /dev/null
+++ b/response/location_product_response.go
@@ -0,0 +1,8 @@
+package response
+
+import "wms/models"
+
+type RuleList struct {
+	ProductList  []models.Material `json:"productList"`  //浜у搧鍒楄〃
+	LocationList []models.Location `json:"locationList"` //浣嶇疆鍒楄〃
+}
diff --git a/router/router.go b/router/router.go
index 0224086..628d1bd 100644
--- a/router/router.go
+++ b/router/router.go
@@ -125,8 +125,9 @@
 	locationProductAmountController := new(controllers.LocationProductAmountController)
 	locationProductAmountAPI := r.Group(urlPrefix + "/locationProductAmount")
 	{
-		locationProductAmountAPI.POST("add", locationProductAmountController.Add)   //娣诲姞搴撳瓨鐩樼偣淇℃伅
-		locationProductAmountAPI.POST("list", locationProductAmountController.List) //鏌ョ湅搴撳瓨鐩樼偣鍒楄〃
+		locationProductAmountAPI.POST("add", locationProductAmountController.Add)                 //娣诲姞搴撳瓨鐩樼偣淇℃伅
+		locationProductAmountAPI.POST("list", locationProductAmountController.List)               //鏌ョ湅搴撳瓨鐩樼偣鍒楄〃
+		locationProductAmountAPI.POST("getRuleList", locationProductAmountController.GetRuleList) //鑾峰彇涓婃灦瑙勫垯
 	}
 
 	//鎶ヨ〃

--
Gitblit v1.8.0