From 33cb0eb308c1b62e25211600383371c31907025e Mon Sep 17 00:00:00 2001
From: yinbentan <yinbentan@live.com>
Date: 星期二, 16 七月 2024 20:25:34 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/jialian' into jialian
---
controllers/other.go | 188 +++++++
docs/swagger.yaml | 321 ++-----------
docs/docs.go | 439 ++---------------
docs/swagger.json | 439 ++---------------
router/router.go | 7
5 files changed, 384 insertions(+), 1,010 deletions(-)
diff --git a/controllers/other.go b/controllers/other.go
new file mode 100644
index 0000000..49d715f
--- /dev/null
+++ b/controllers/other.go
@@ -0,0 +1,188 @@
+package controllers
+
+import (
+ "fmt"
+ "github.com/gin-gonic/gin"
+ "github.com/xuri/excelize/v2"
+ "gorm.io/gorm"
+ "strings"
+ "wms/constvar"
+ "wms/extend/code"
+ "wms/extend/util"
+ "wms/models"
+ "wms/pkg/logx"
+ "wms/utils/upload"
+)
+
+type OtherController struct{}
+
+type saveProductImagesFromExcelRequest struct {
+ ExcelFilePath string `json:"excelFilePath"` //excel璺緞 鐢╠ocker cp浼犲埌瀹瑰櫒閲�
+ SheetIndex int `json:"sheetIndex"` //绗嚑涓猻heet
+ ProductIdColumnIndex int `json:"productIdColumnIndex"` //浜у搧ID鏄鍑犲垪(浠�0寮�濮�)
+ ImageColumn string `json:"imageColumn"` //鍥剧墖鎵�鍦ㄥ垪鍚�
+}
+
+// SaveProductImagesFromExcel
+// @Tags 鍏朵粬
+// @Summary 浠巈xcel涓幏鍙栦骇鍝佸浘鐗囧苟淇濆瓨
+// @Produce application/json
+// @Param object body saveProductImagesFromExcelRequest true "灞炴�т俊鎭�"
+// @Param Authorization header string true "token"
+// @Success 200 {object} util.Response "鎴愬姛"
+// @Router /api-wms/v1/other/saveProductImagesFromExcel [post]
+func (slf OtherController) SaveProductImagesFromExcel(c *gin.Context) {
+ var params saveProductImagesFromExcelRequest
+ if err := c.BindJSON(¶ms); err != nil {
+ util.ResponseFormat(c, code.RequestParamError, "鍙傛暟瑙f瀽澶辫触锛屾暟鎹被鍨嬮敊璇�:"+err.Error())
+ return
+ }
+ if params.ExcelFilePath == "" || params.ImageColumn == "" {
+ util.ResponseFormat(c, code.RequestParamError, "鍙傛暟缂哄け")
+ return
+ }
+
+ productImageMap, err := UploadProductImagesFromExcel(params.ExcelFilePath, params.SheetIndex, params.ProductIdColumnIndex, params.ImageColumn)
+ if err != nil {
+ logx.Errorf("SaveProductImagesFromExcel err:%v", err)
+ util.ResponseFormat(c, code.SaveFail, "鎿嶄綔澶辫触")
+ return
+ }
+
+ for productId, urls := range productImageMap {
+ if len(urls) == 0 {
+ continue
+ }
+ attachmentList := make([]*models.Attachment, 0)
+ materialAttachmentList := make([]*models.MaterialAttachment, 0)
+ for _, url := range urls {
+ attachmentList = append(attachmentList, &models.Attachment{
+ FileUrl: url,
+ FileType: constvar.FileType_Picture,
+ })
+ }
+
+ err = models.WithTransaction(func(db *gorm.DB) error {
+ //淇濆瓨闄勪欢
+ if attachmentList, err = models.NewAttachmentSearch().CreateBatchWithResp(attachmentList); err != nil {
+ logx.Errorf("attachment create err: %v", err)
+ return err
+ }
+
+ //淇濆瓨鐗╂枡鍜岄檮浠舵槧灏�
+ for _, v := range attachmentList {
+ ma := &models.MaterialAttachment{MaterialID: productId, AttachmentID: v.Id}
+ materialAttachmentList = append(materialAttachmentList, ma)
+ }
+ if err := models.NewMaterialAttachmentSearch().SetOrm(db).CreateBatch(materialAttachmentList); err != nil {
+ return err
+ }
+ return nil
+ })
+ if err != nil {
+ logx.Errorf("SaveProductImagesFromExcel save db err:%v, productId:%v, urls:%v", err, productId, urls)
+ }
+ }
+
+ util.ResponseFormat(c, code.Success, "淇濆瓨鎴愬姛")
+}
+
+// UploadProductImagesFromExcel 浠嶦xcel鏂囦欢涓笂浼犱骇鍝佸浘鐗�
+func UploadProductImagesFromExcel(filePath string, sheetIndex int, productIdColumn int, imageColumn string) (productImageMap map[string][]string, err error) {
+ productImageMap = make(map[string][]string)
+ // 鍔犺浇Excel鏂囦欢
+ f, err := excelize.OpenFile(filePath)
+ if err != nil {
+ logx.Errorf("Failed to open Excel file: %v", err)
+ return
+ }
+ defer f.Close()
+
+ // 鑾峰彇宸ヤ綔琛ㄥ悕绉�
+ sheetName := f.GetSheetName(sheetIndex)
+ // 璇诲彇宸ヤ綔琛ㄤ腑鐨勬墍鏈夎
+ rows, err := f.GetRows(sheetName)
+ if err != nil {
+ logx.Errorf("Failed to get rows from sheet:%v", err)
+ return
+ }
+
+ // 鑾峰彇鎸囧畾鍒楃殑鍚堝苟鍗曞厓鏍间俊鎭�
+ mergedCells, err := getColumnMergeCells(f, sheetName, imageColumn)
+ if err != nil {
+ logx.Errorf("Failed to get merged cells:%v", err)
+ return
+ }
+
+ mergeCellMap := make(map[string]excelize.MergeCell)
+ for _, cell := range mergedCells {
+ mergeCellMap[cell.GetStartAxis()] = cell
+ }
+
+ var imagePaths []string
+ // 閬嶅巻Excel琛岋紝璇诲彇鏁版嵁
+ for rowIndex, row := range rows[1:] { // 鍋囪绗竴琛屾槸鏍囬琛岋紝璺宠繃
+ if len(row) < 1 {
+ continue
+ }
+ productId := row[productIdColumn]
+ currentCell := fmt.Sprintf("%s%d", imageColumn, rowIndex+2)
+
+ // 妫�鏌ュ綋鍓嶅崟鍏冩牸鏄惁鍦ㄥ悎骞跺崟鍏冩牸涓�
+ if mergeCell, ok := mergeCellMap[currentCell]; ok {
+ imagePaths = make([]string, 0)
+ imageCell := mergeCell.GetStartAxis()
+
+ // 鑾峰彇鍥剧墖
+ pictures, err := f.GetPictures(sheetName, imageCell)
+ if err != nil {
+ logx.Errorf("Failed to get picture for cell %s: %v", imageCell, err)
+ continue
+ }
+
+ if len(pictures) == 0 {
+ logx.Errorf("No picture found for cell %s", imageCell)
+ continue
+ }
+
+ for k, picture := range pictures {
+ fileBytes := picture.File
+ fileName := fmt.Sprintf("image_%s_%d.png", imageCell, k+1)
+
+ // 淇濆瓨鍥剧墖鍒版湰鍦板苟鑾峰彇璺緞
+ imagePath, err := upload.UploadFileToSeaWeed(string(constvar.FileType_Picture), fileName, fileBytes)
+ if err != nil {
+ logx.Errorf("Failed to save image for product %s: %v\n", productId, err)
+ continue
+ }
+ imagePaths = append(imagePaths, imagePath)
+ }
+ }
+
+ if productId == "" {
+ continue
+ }
+
+ // imagePaths
+ productImageMap[productId] = imagePaths
+ logx.Infof("UploadProductImagesFromExcel Product ID: %s, Image Urls: %s\n", productId, imagePaths)
+ }
+ return productImageMap, nil
+}
+
+// getColumnMergeCells 鑾峰彇鎸囧畾鍒楃殑鍚堝苟鍗曞厓鏍�
+func getColumnMergeCells(f *excelize.File, sheetName string, targetColumn string) ([]excelize.MergeCell, error) {
+ // 鑾峰彇鎵�鏈夊悎骞跺崟鍏冩牸
+ mergeCells, err := f.GetMergeCells(sheetName)
+ if err != nil {
+ return nil, err
+ }
+
+ var columnMergeCells []excelize.MergeCell
+ for _, mergeCell := range mergeCells {
+ if strings.HasPrefix(mergeCell.GetStartAxis(), targetColumn) {
+ columnMergeCells = append(columnMergeCells, mergeCell)
+ }
+ }
+ return columnMergeCells, nil
+}
diff --git a/docs/docs.go b/docs/docs.go
index 1e95ad9..f46a305 100644
--- a/docs/docs.go
+++ b/docs/docs.go
@@ -691,122 +691,6 @@
}
}
},
- "/api-wms/v1/dict/getSilkDictList/{type}": {
- "get": {
- "produces": [
- "application/json"
- ],
- "tags": [
- "鏁版嵁瀛楀吀"
- ],
- "summary": "鑾峰彇搴勫彛鍒楄〃",
- "parameters": [
- {
- "type": "string",
- "description": "token",
- "name": "Authorization",
- "in": "header",
- "required": true
- },
- {
- "type": "string",
- "description": "瀛楀吀绫诲瀷",
- "name": "type",
- "in": "path",
- "required": true
- }
- ],
- "responses": {
- "200": {
- "description": "鎴愬姛",
- "schema": {
- "allOf": [
- {
- "$ref": "#/definitions/util.ResponseList"
- },
- {
- "type": "object",
- "properties": {
- "data": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/models.SilkDict"
- }
- }
- }
- }
- ]
- }
- }
- }
- }
- },
- "/api-wms/v1/dict/getUserList": {
- "get": {
- "produces": [
- "application/json"
- ],
- "tags": [
- "鏁版嵁瀛楀吀"
- ],
- "summary": "鑾峰彇鐢ㄦ埛鍒楄〃",
- "parameters": [
- {
- "type": "string",
- "name": "id",
- "in": "query"
- },
- {
- "type": "string",
- "name": "nickName",
- "in": "query"
- },
- {
- "type": "string",
- "name": "parentId",
- "in": "query"
- },
- {
- "type": "string",
- "name": "pos",
- "in": "query"
- },
- {
- "type": "string",
- "name": "userName",
- "in": "query"
- },
- {
- "type": "integer",
- "name": "userType",
- "in": "query"
- }
- ],
- "responses": {
- "200": {
- "description": "鎴愬姛",
- "schema": {
- "allOf": [
- {
- "$ref": "#/definitions/util.ResponseList"
- },
- {
- "type": "object",
- "properties": {
- "data": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/user.GetUserRequest"
- }
- }
- }
- }
- ]
- }
- }
- }
- }
- },
"/api-wms/v1/dict/save": {
"post": {
"produces": [
@@ -1797,13 +1681,6 @@
"summary": "娣诲姞搴撳瓨鐩樼偣淇℃伅",
"parameters": [
{
- "type": "string",
- "description": "token",
- "name": "Authorization",
- "in": "header",
- "required": true
- },
- {
"description": "鍏ュ簱/鍑哄簱淇℃伅",
"name": "object",
"in": "body",
@@ -1833,13 +1710,6 @@
],
"summary": "搴旂敤銆侀獙璇�",
"parameters": [
- {
- "type": "string",
- "description": "token",
- "name": "Authorization",
- "in": "header",
- "required": true
- },
{
"description": "鍏ュ弬",
"name": "object",
@@ -2025,13 +1895,6 @@
"summary": "淇敼搴撳瓨鐩樼偣淇℃伅",
"parameters": [
{
- "type": "string",
- "description": "token",
- "name": "Authorization",
- "in": "header",
- "required": true
- },
- {
"description": "鍏ュ簱/鍑哄簱淇℃伅",
"name": "object",
"in": "body",
@@ -2089,13 +1952,6 @@
],
"summary": "鏇存敼璁板綍鐘舵��",
"parameters": [
- {
- "type": "string",
- "description": "token",
- "name": "Authorization",
- "in": "header",
- "required": true
- },
{
"type": "integer",
"description": "id",
@@ -2263,13 +2119,6 @@
"summary": "鍏ュ簱/鍑哄簱鍒楄〃",
"parameters": [
{
- "type": "string",
- "description": "token",
- "name": "Authorization",
- "in": "header",
- "required": true
- },
- {
"description": "鏌ヨ鍙傛暟",
"name": "object",
"in": "body",
@@ -2375,13 +2224,6 @@
"summary": "娣诲姞鍏ュ簱/鍑哄簱",
"parameters": [
{
- "type": "string",
- "description": "token",
- "name": "Authorization",
- "in": "header",
- "required": true
- },
- {
"description": "鍏ュ簱/鍑哄簱淇℃伅",
"name": "object",
"in": "body",
@@ -2411,13 +2253,6 @@
],
"summary": "鍒犻櫎鍏ュ簱/鍑哄簱淇℃伅",
"parameters": [
- {
- "type": "string",
- "description": "token",
- "name": "Authorization",
- "in": "header",
- "required": true
- },
{
"type": "integer",
"description": "id",
@@ -2778,6 +2613,43 @@
"schema": {
"$ref": "#/definitions/request.UpdateDepartment"
}
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "鎴愬姛",
+ "schema": {
+ "$ref": "#/definitions/util.Response"
+ }
+ }
+ }
+ }
+ },
+ "/api-wms/v1/other/saveProductImagesFromExcel": {
+ "post": {
+ "produces": [
+ "application/json"
+ ],
+ "tags": [
+ "鍏朵粬"
+ ],
+ "summary": "浠巈xcel涓幏鍙栦骇鍝佸浘鐗囧苟淇濆瓨",
+ "parameters": [
+ {
+ "description": "灞炴�т俊鎭�",
+ "name": "object",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/controllers.saveProductImagesFromExcelRequest"
+ }
+ },
+ {
+ "type": "string",
+ "description": "token",
+ "name": "Authorization",
+ "in": "header",
+ "required": true
}
],
"responses": {
@@ -4561,6 +4433,27 @@
"ReservationNever"
]
},
+ "controllers.saveProductImagesFromExcelRequest": {
+ "type": "object",
+ "properties": {
+ "excelFilePath": {
+ "description": "excel璺緞 鐢╠ocker cp浼犲埌瀹瑰櫒閲�",
+ "type": "string"
+ },
+ "imageColumn": {
+ "description": "鍥剧墖鎵�鍦ㄥ垪鍚�",
+ "type": "string"
+ },
+ "productIdColumnIndex": {
+ "description": "浜у搧ID鏄鍑犲垪(浠�0寮�濮�)",
+ "type": "integer"
+ },
+ "sheetIndex": {
+ "description": "绗嚑涓猻heet",
+ "type": "integer"
+ }
+ }
+ },
"gorm.DeletedAt": {
"type": "object",
"properties": {
@@ -4823,7 +4716,6 @@
"type": "string"
},
"warehouseId": {
- "description": "浠撳簱id",
"type": "integer"
}
}
@@ -5352,15 +5244,12 @@
"type": "object",
"properties": {
"accountant": {
- "description": "浼氳鍚嶇О",
"type": "string"
},
"accountantId": {
- "description": "浼氳id",
"type": "string"
},
"auditDate": {
- "description": "瀹℃壒鏃堕棿",
"type": "string"
},
"baseOperationType": {
@@ -5372,50 +5261,39 @@
]
},
"checkedBy": {
- "description": "楠岃瘉鑰匲serId",
"type": "string"
},
"comment": {
- "description": "澶囨敞",
"type": "string"
},
"companyID": {
- "description": "鍏徃ID-瀹㈡埛",
"type": "string"
},
"companyName": {
- "description": "鍏徃鍚嶇О-瀹㈡埛",
"type": "string"
},
"contacterID": {
- "description": "鑱旂郴浜篒D",
"type": "integer"
},
"contacterName": {
- "description": "鑱旂郴浜哄鍚�",
"type": "string"
},
"createBy": {
- "description": "鍒涘缓鑰匲serId",
"type": "string"
},
"createTime": {
"type": "string"
},
"custodian": {
- "description": "淇濈鍛樺悕绉�",
"type": "string"
},
"custodianId": {
- "description": "淇濈鍛榠d",
"type": "string"
},
"dealerType": {
- "description": "璋冩嫧鍑哄叆搴撶被鍨�",
"type": "string"
},
"details": {
- "description": "鎿嶄綔鏄庣粏",
"type": "array",
"items": {
"$ref": "#/definitions/models.OperationDetails"
@@ -5441,15 +5319,9 @@
"type": "integer"
},
"logisticCompany": {
- "description": "鐗╂祦鍏徃淇℃伅",
- "allOf": [
- {
- "$ref": "#/definitions/models.LogisticCompany"
- }
- ]
+ "$ref": "#/definitions/models.LogisticCompany"
},
"logisticCompanyId": {
- "description": "鐗╂祦鍏徃id",
"type": "string"
},
"logisticWeight": {
@@ -5457,11 +5329,9 @@
"type": "number"
},
"manager": {
- "description": "涓荤鍚嶇О",
"type": "string"
},
"managerId": {
- "description": "涓荤id",
"type": "string"
},
"number": {
@@ -5469,7 +5339,6 @@
"type": "string"
},
"operationDate": {
- "description": "瀹夋帓鏃ユ湡",
"type": "string"
},
"operationSource": {
@@ -5489,31 +5358,21 @@
"type": "string"
},
"receiverAddr": {
- "description": "鏀惰揣鍦板潃",
"type": "string"
},
"receiverName": {
- "description": "鏀惰揣浜哄鍚�",
"type": "string"
},
"receiverPhone": {
- "description": "鑱旂郴鐢佃瘽",
"type": "string"
},
"remark": {
- "description": "澶囨敞",
"type": "string"
},
"salesDetailsNumber": {
- "description": "閿�鍞槑缁嗙紪鐮�",
- "type": "string"
- },
- "silkMarket": {
- "description": "鍢夎仈浠撳偍娣诲姞 SilkMarket",
"type": "string"
},
"source": {
- "description": "鏉ユ簮绯荤粺",
"type": "string"
},
"sourceNumber": {
@@ -5544,15 +5403,9 @@
"type": "string"
},
"warehouse": {
- "description": "浠撳簱淇℃伅",
- "allOf": [
- {
- "$ref": "#/definitions/models.Warehouse"
- }
- ]
+ "$ref": "#/definitions/models.Warehouse"
},
"warehouseId": {
- "description": "浠撳簱id",
"type": "integer"
},
"waybillNumber": {
@@ -5573,11 +5426,9 @@
"type": "number"
},
"auxiliaryAmount": {
- "description": "杈呭姪鏁伴噺",
"type": "number"
},
"auxiliaryUnit": {
- "description": "杈呭姪鍗曚綅",
"type": "string"
},
"baseOperationType": {
@@ -5619,7 +5470,7 @@
"type": "boolean"
},
"operationId": {
- "description": "鎿嶄綔璁板綍id",
+ "description": "鎿嶄綔id",
"type": "integer"
},
"product": {
@@ -5635,20 +5486,11 @@
"type": "string"
},
"remark": {
- "description": "澶囨敞",
"type": "string"
},
"salePrice": {
"description": "閿�鍞崟浠�",
"type": "number"
- },
- "silkMarket": {
- "description": "鍢夎仈浠撳偍娣诲姞 SilkMarket銆丼ilkMarketClose",
- "type": "string"
- },
- "silkMarketClose": {
- "description": "搴勫彛鍏抽棴",
- "type": "string"
},
"stockAmount": {
"description": "搴撳瓨鏁伴噺锛岀洏鐐规椂鐢�",
@@ -5667,11 +5509,9 @@
"type": "integer"
},
"totalGrossWeight": {
- "description": "鎬绘瘺閲�",
"type": "number"
},
"totalNetWeight": {
- "description": "鎬诲噣閲�",
"type": "number"
},
"updateTime": {
@@ -5792,64 +5632,6 @@
"type": "string"
}
}
- },
- "models.SilkDict": {
- "type": "object",
- "properties": {
- "createdAt": {
- "type": "string"
- },
- "deletedAt": {
- "$ref": "#/definitions/gorm.DeletedAt"
- },
- "dictType": {
- "description": "瀛楀吀绫诲瀷",
- "allOf": [
- {
- "$ref": "#/definitions/models.SilkDictType"
- }
- ]
- },
- "id": {
- "type": "integer"
- },
- "name": {
- "description": "鍚嶇О",
- "type": "string"
- },
- "number": {
- "description": "缂栧彿",
- "type": "string"
- },
- "remark": {
- "description": "澶囨敞",
- "type": "string"
- },
- "updatedAt": {
- "type": "string"
- }
- }
- },
- "models.SilkDictType": {
- "type": "integer",
- "enum": [
- 1,
- 2,
- 3,
- 4
- ],
- "x-enum-comments": {
- "DictTypeColor": "棰滆壊",
- "DictTypeMarket": "搴勫彛",
- "DictTypeSpec": "瑙勬牸",
- "DictTypeWorkshop": "杞﹂棿"
- },
- "x-enum-varnames": [
- "DictTypeMarket",
- "DictTypeWorkshop",
- "DictTypeColor",
- "DictTypeSpec"
- ]
},
"models.SystemConfig": {
"type": "object",
@@ -6239,15 +6021,13 @@
"type": "object",
"properties": {
"accountant": {
- "description": "浼氳鍚嶇О",
"type": "string"
},
"accountantId": {
- "description": "浼氳id",
"type": "string"
},
"baseOperationType": {
- "description": "鍩虹浣滀笟绫诲瀷 1 鍏ュ簱 2 鍑哄簱 3 鍐呴儴璋冩嫧 4 鎶ュ簾 5 搴撳瓨鐩樼偣",
+ "description": "鍩虹浣滀笟绫诲瀷 5搴撳瓨鐩樼偣",
"allOf": [
{
"$ref": "#/definitions/constvar.BaseOperationType"
@@ -6275,19 +6055,15 @@
"type": "string"
},
"custodian": {
- "description": "淇濈鍛樺悕绉�",
"type": "string"
},
"custodianId": {
- "description": "淇濈鍛榠d",
"type": "string"
},
"dealerType": {
- "description": "璋冩嫧鍑哄叆搴撶被鍨�",
"type": "string"
},
"details": {
- "description": "璇︽儏",
"type": "array",
"items": {
"$ref": "#/definitions/request.OperationDetails"
@@ -6301,7 +6077,6 @@
"type": "integer"
},
"logisticCompanyId": {
- "description": "鐗╂祦鍏徃id",
"type": "string"
},
"logisticWeight": {
@@ -6309,11 +6084,9 @@
"type": "number"
},
"manager": {
- "description": "涓荤鍚嶇О",
"type": "string"
},
"managerId": {
- "description": "涓荤id",
"type": "string"
},
"number": {
@@ -6321,7 +6094,7 @@
"type": "string"
},
"operationDate": {
- "description": "FromLocationId int ` + "`" + `json:\"fromLocationId\" ` + "`" + ` //婧愪綅缃甶d\nToLocationId int ` + "`" + `json:\"toLocationId\" ` + "`" + ` //鐩爣浣嶇疆id",
+ "description": "FromLocationId int ` + "`" + `json:\"fromLocationId\" gorm:\"type:int;not null;comment:婧愪綅缃甶d\"` + "`" + ` //婧愪綅缃甶d\nToLocationId int ` + "`" + `json:\"toLocationId\" gorm:\"type:int;not null;comment:鐩爣浣嶇疆id\"` + "`" + ` //鐩爣浣嶇疆id",
"type": "string"
},
"operationTypeId": {
@@ -6333,19 +6106,12 @@
"type": "string"
},
"receiverAddr": {
- "description": "鏀惰揣鍦板潃",
"type": "string"
},
"receiverName": {
- "description": "鏀惰揣浜哄鍚�",
"type": "string"
},
"receiverPhone": {
- "description": "鑱旂郴鐢佃瘽",
- "type": "string"
- },
- "silkMarket": {
- "description": "搴勫彛",
"type": "string"
},
"sourceNumber": {
@@ -6668,10 +6434,6 @@
},
"warehouseCode": {
"type": "string"
- },
- "warehouseId": {
- "description": "浠撳簱ID",
- "type": "string"
}
}
},
@@ -6892,7 +6654,6 @@
"type": "object",
"properties": {
"number": {
- "description": "鍗曞彿",
"type": "string"
},
"page": {
@@ -6904,7 +6665,6 @@
"type": "integer"
},
"sourceNumber": {
- "description": "婧愬崟鍙�",
"type": "string"
}
}
@@ -6913,7 +6673,6 @@
"type": "object",
"properties": {
"condition": {
- "description": "妯$硦鏌ヨ鏉′欢",
"type": "string"
},
"keyword": {
@@ -6946,7 +6705,7 @@
"type": "integer"
},
"amount": {
- "description": "ProductName string ` + "`" + `json:\"productName\" ` + "`" + ` //浜у搧鍚嶇О",
+ "description": "ProductName string ` + "`" + `json:\"productName\" gorm:\"type:varchar(255);not null;comment:浜у搧鍚嶇О\"` + "`" + ` //浜у搧鍚嶇О",
"type": "number"
},
"auxiliaryAmount": {
@@ -6962,7 +6721,7 @@
"type": "number"
},
"fromLocationId": {
- "description": "Unit string ` + "`" + `json:\"unit\"` + "`" + ` //鍗曚綅\nProduct models.Material ` + "`" + `json:\"product\" ` + "`" + ` // 浜у搧",
+ "description": "Unit string ` + "`" + `json:\"unit\" gorm:\"type:varchar(31);comment:鍗曚綅\"` + "`" + ` //鍗曚綅\nProduct models.Material ` + "`" + `json:\"product\" gorm:\"foreignKey:ProductId;references:ID\"` + "`" + `",
"type": "integer"
},
"productId": {
@@ -6970,20 +6729,11 @@
"type": "string"
},
"remark": {
- "description": "澶囨敞",
"type": "string"
},
"salePrice": {
"description": "閿�鍞崟浠�",
"type": "number"
- },
- "silkMarket": {
- "description": "搴勫彛",
- "type": "string"
- },
- "silkMarketClose": {
- "description": "搴勫彛鍏抽棴",
- "type": "string"
},
"stockAmount": {
"description": "搴撳瓨鏁伴噺锛岀洏鐐规椂鐢�",
@@ -7007,7 +6757,7 @@
"type": "object",
"properties": {
"baseOperationType": {
- "description": "鍩虹浣滀笟绫诲瀷 1 鍏ュ簱 2 鍑哄簱 3 鍐呴儴璋冩嫧 4 鎶ュ簾 5 搴撳瓨鐩樼偣",
+ "description": "1 鍏ュ簱 2 鍑哄簱 3 鍐呴儴璋冩嫧 4 鎶ュ簾 5 搴撳瓨鐩樼偣",
"allOf": [
{
"$ref": "#/definitions/constvar.BaseOperationType"
@@ -7015,11 +6765,9 @@
]
},
"number": {
- "description": "鍗曞彿",
"type": "string"
},
"operationTypeId": {
- "description": "浣滀笟绫诲瀷id",
"type": "integer"
},
"page": {
@@ -7031,12 +6779,7 @@
"type": "integer"
},
"status": {
- "description": "鐘舵��",
- "allOf": [
- {
- "$ref": "#/definitions/constvar.OperationStatus"
- }
- ]
+ "$ref": "#/definitions/constvar.OperationStatus"
}
}
},
@@ -7352,11 +7095,9 @@
"type": "object",
"properties": {
"accountant": {
- "description": "浼氳鍚嶇О",
"type": "string"
},
"accountantId": {
- "description": "浼氳id",
"type": "string"
},
"baseOperationType": {
@@ -7388,15 +7129,12 @@
"type": "string"
},
"custodian": {
- "description": "淇濈鍛樺悕绉�",
"type": "string"
},
"custodianId": {
- "description": "淇濈鍛榠d",
"type": "string"
},
"details": {
- "description": "璇︽儏",
"type": "array",
"items": {
"$ref": "#/definitions/request.OperationDetails"
@@ -7406,7 +7144,6 @@
"type": "integer"
},
"inventoryDealerType": {
- "description": "璋冩嫧鍑哄叆搴撳垎绫�(瀵瑰簲dict瀛楀吀琛ㄧ殑ID)",
"type": "integer"
},
"locationId": {
@@ -7421,11 +7158,9 @@
"type": "number"
},
"manager": {
- "description": "涓荤鍚嶇О",
"type": "string"
},
"managerId": {
- "description": "涓荤id",
"type": "string"
},
"number": {
@@ -7433,7 +7168,7 @@
"type": "string"
},
"operationDate": {
- "description": "FromLocationId int ` + "`" + `json:\"fromLocationId\" ` + "`" + ` //婧愪綅缃甶d\nToLocationId int ` + "`" + `json:\"toLocationId\" ` + "`" + ` //鐩爣浣嶇疆id",
+ "description": "FromLocationId int ` + "`" + `json:\"fromLocationId\" gorm:\"type:int;not null;comment:婧愪綅缃甶d\"` + "`" + ` //婧愪綅缃甶d\nToLocationId int ` + "`" + `json:\"toLocationId\" gorm:\"type:int;not null;comment:鐩爣浣嶇疆id\"` + "`" + ` //鐩爣浣嶇疆id",
"type": "string"
},
"operationTypeId": {
@@ -7445,19 +7180,12 @@
"type": "string"
},
"receiverAddr": {
- "description": "鏀惰揣鍦板潃",
"type": "string"
},
"receiverName": {
- "description": "鏀惰揣浜哄鍚�",
"type": "string"
},
"receiverPhone": {
- "description": "鑱旂郴鐢佃瘽",
- "type": "string"
- },
- "silkMarket": {
- "description": "搴勫彛",
"type": "string"
},
"sourceNumber": {
@@ -7621,16 +7349,8 @@
"description": "浜у搧id",
"type": "string"
},
- "productCategory": {
- "description": "浜у搧绫诲埆",
- "type": "string"
- },
"productName": {
"description": "浜у搧鍚嶇О",
- "type": "string"
- },
- "productSpecs": {
- "description": "浜у搧瑙勬牸",
"type": "string"
},
"productType": {
@@ -7707,29 +7427,6 @@
"items": {
"$ref": "#/definitions/models.Material"
}
- }
- }
- },
- "user.GetUserRequest": {
- "type": "object",
- "properties": {
- "id": {
- "type": "string"
- },
- "nickName": {
- "type": "string"
- },
- "parentId": {
- "type": "string"
- },
- "pos": {
- "type": "string"
- },
- "userName": {
- "type": "string"
- },
- "userType": {
- "type": "integer"
}
}
},
diff --git a/docs/swagger.json b/docs/swagger.json
index 6b791a6..e32dcf8 100644
--- a/docs/swagger.json
+++ b/docs/swagger.json
@@ -680,122 +680,6 @@
}
}
},
- "/api-wms/v1/dict/getSilkDictList/{type}": {
- "get": {
- "produces": [
- "application/json"
- ],
- "tags": [
- "鏁版嵁瀛楀吀"
- ],
- "summary": "鑾峰彇搴勫彛鍒楄〃",
- "parameters": [
- {
- "type": "string",
- "description": "token",
- "name": "Authorization",
- "in": "header",
- "required": true
- },
- {
- "type": "string",
- "description": "瀛楀吀绫诲瀷",
- "name": "type",
- "in": "path",
- "required": true
- }
- ],
- "responses": {
- "200": {
- "description": "鎴愬姛",
- "schema": {
- "allOf": [
- {
- "$ref": "#/definitions/util.ResponseList"
- },
- {
- "type": "object",
- "properties": {
- "data": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/models.SilkDict"
- }
- }
- }
- }
- ]
- }
- }
- }
- }
- },
- "/api-wms/v1/dict/getUserList": {
- "get": {
- "produces": [
- "application/json"
- ],
- "tags": [
- "鏁版嵁瀛楀吀"
- ],
- "summary": "鑾峰彇鐢ㄦ埛鍒楄〃",
- "parameters": [
- {
- "type": "string",
- "name": "id",
- "in": "query"
- },
- {
- "type": "string",
- "name": "nickName",
- "in": "query"
- },
- {
- "type": "string",
- "name": "parentId",
- "in": "query"
- },
- {
- "type": "string",
- "name": "pos",
- "in": "query"
- },
- {
- "type": "string",
- "name": "userName",
- "in": "query"
- },
- {
- "type": "integer",
- "name": "userType",
- "in": "query"
- }
- ],
- "responses": {
- "200": {
- "description": "鎴愬姛",
- "schema": {
- "allOf": [
- {
- "$ref": "#/definitions/util.ResponseList"
- },
- {
- "type": "object",
- "properties": {
- "data": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/user.GetUserRequest"
- }
- }
- }
- }
- ]
- }
- }
- }
- }
- },
"/api-wms/v1/dict/save": {
"post": {
"produces": [
@@ -1786,13 +1670,6 @@
"summary": "娣诲姞搴撳瓨鐩樼偣淇℃伅",
"parameters": [
{
- "type": "string",
- "description": "token",
- "name": "Authorization",
- "in": "header",
- "required": true
- },
- {
"description": "鍏ュ簱/鍑哄簱淇℃伅",
"name": "object",
"in": "body",
@@ -1822,13 +1699,6 @@
],
"summary": "搴旂敤銆侀獙璇�",
"parameters": [
- {
- "type": "string",
- "description": "token",
- "name": "Authorization",
- "in": "header",
- "required": true
- },
{
"description": "鍏ュ弬",
"name": "object",
@@ -2014,13 +1884,6 @@
"summary": "淇敼搴撳瓨鐩樼偣淇℃伅",
"parameters": [
{
- "type": "string",
- "description": "token",
- "name": "Authorization",
- "in": "header",
- "required": true
- },
- {
"description": "鍏ュ簱/鍑哄簱淇℃伅",
"name": "object",
"in": "body",
@@ -2078,13 +1941,6 @@
],
"summary": "鏇存敼璁板綍鐘舵��",
"parameters": [
- {
- "type": "string",
- "description": "token",
- "name": "Authorization",
- "in": "header",
- "required": true
- },
{
"type": "integer",
"description": "id",
@@ -2252,13 +2108,6 @@
"summary": "鍏ュ簱/鍑哄簱鍒楄〃",
"parameters": [
{
- "type": "string",
- "description": "token",
- "name": "Authorization",
- "in": "header",
- "required": true
- },
- {
"description": "鏌ヨ鍙傛暟",
"name": "object",
"in": "body",
@@ -2364,13 +2213,6 @@
"summary": "娣诲姞鍏ュ簱/鍑哄簱",
"parameters": [
{
- "type": "string",
- "description": "token",
- "name": "Authorization",
- "in": "header",
- "required": true
- },
- {
"description": "鍏ュ簱/鍑哄簱淇℃伅",
"name": "object",
"in": "body",
@@ -2400,13 +2242,6 @@
],
"summary": "鍒犻櫎鍏ュ簱/鍑哄簱淇℃伅",
"parameters": [
- {
- "type": "string",
- "description": "token",
- "name": "Authorization",
- "in": "header",
- "required": true
- },
{
"type": "integer",
"description": "id",
@@ -2767,6 +2602,43 @@
"schema": {
"$ref": "#/definitions/request.UpdateDepartment"
}
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "鎴愬姛",
+ "schema": {
+ "$ref": "#/definitions/util.Response"
+ }
+ }
+ }
+ }
+ },
+ "/api-wms/v1/other/saveProductImagesFromExcel": {
+ "post": {
+ "produces": [
+ "application/json"
+ ],
+ "tags": [
+ "鍏朵粬"
+ ],
+ "summary": "浠巈xcel涓幏鍙栦骇鍝佸浘鐗囧苟淇濆瓨",
+ "parameters": [
+ {
+ "description": "灞炴�т俊鎭�",
+ "name": "object",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/controllers.saveProductImagesFromExcelRequest"
+ }
+ },
+ {
+ "type": "string",
+ "description": "token",
+ "name": "Authorization",
+ "in": "header",
+ "required": true
}
],
"responses": {
@@ -4550,6 +4422,27 @@
"ReservationNever"
]
},
+ "controllers.saveProductImagesFromExcelRequest": {
+ "type": "object",
+ "properties": {
+ "excelFilePath": {
+ "description": "excel璺緞 鐢╠ocker cp浼犲埌瀹瑰櫒閲�",
+ "type": "string"
+ },
+ "imageColumn": {
+ "description": "鍥剧墖鎵�鍦ㄥ垪鍚�",
+ "type": "string"
+ },
+ "productIdColumnIndex": {
+ "description": "浜у搧ID鏄鍑犲垪(浠�0寮�濮�)",
+ "type": "integer"
+ },
+ "sheetIndex": {
+ "description": "绗嚑涓猻heet",
+ "type": "integer"
+ }
+ }
+ },
"gorm.DeletedAt": {
"type": "object",
"properties": {
@@ -4812,7 +4705,6 @@
"type": "string"
},
"warehouseId": {
- "description": "浠撳簱id",
"type": "integer"
}
}
@@ -5341,15 +5233,12 @@
"type": "object",
"properties": {
"accountant": {
- "description": "浼氳鍚嶇О",
"type": "string"
},
"accountantId": {
- "description": "浼氳id",
"type": "string"
},
"auditDate": {
- "description": "瀹℃壒鏃堕棿",
"type": "string"
},
"baseOperationType": {
@@ -5361,50 +5250,39 @@
]
},
"checkedBy": {
- "description": "楠岃瘉鑰匲serId",
"type": "string"
},
"comment": {
- "description": "澶囨敞",
"type": "string"
},
"companyID": {
- "description": "鍏徃ID-瀹㈡埛",
"type": "string"
},
"companyName": {
- "description": "鍏徃鍚嶇О-瀹㈡埛",
"type": "string"
},
"contacterID": {
- "description": "鑱旂郴浜篒D",
"type": "integer"
},
"contacterName": {
- "description": "鑱旂郴浜哄鍚�",
"type": "string"
},
"createBy": {
- "description": "鍒涘缓鑰匲serId",
"type": "string"
},
"createTime": {
"type": "string"
},
"custodian": {
- "description": "淇濈鍛樺悕绉�",
"type": "string"
},
"custodianId": {
- "description": "淇濈鍛榠d",
"type": "string"
},
"dealerType": {
- "description": "璋冩嫧鍑哄叆搴撶被鍨�",
"type": "string"
},
"details": {
- "description": "鎿嶄綔鏄庣粏",
"type": "array",
"items": {
"$ref": "#/definitions/models.OperationDetails"
@@ -5430,15 +5308,9 @@
"type": "integer"
},
"logisticCompany": {
- "description": "鐗╂祦鍏徃淇℃伅",
- "allOf": [
- {
- "$ref": "#/definitions/models.LogisticCompany"
- }
- ]
+ "$ref": "#/definitions/models.LogisticCompany"
},
"logisticCompanyId": {
- "description": "鐗╂祦鍏徃id",
"type": "string"
},
"logisticWeight": {
@@ -5446,11 +5318,9 @@
"type": "number"
},
"manager": {
- "description": "涓荤鍚嶇О",
"type": "string"
},
"managerId": {
- "description": "涓荤id",
"type": "string"
},
"number": {
@@ -5458,7 +5328,6 @@
"type": "string"
},
"operationDate": {
- "description": "瀹夋帓鏃ユ湡",
"type": "string"
},
"operationSource": {
@@ -5478,31 +5347,21 @@
"type": "string"
},
"receiverAddr": {
- "description": "鏀惰揣鍦板潃",
"type": "string"
},
"receiverName": {
- "description": "鏀惰揣浜哄鍚�",
"type": "string"
},
"receiverPhone": {
- "description": "鑱旂郴鐢佃瘽",
"type": "string"
},
"remark": {
- "description": "澶囨敞",
"type": "string"
},
"salesDetailsNumber": {
- "description": "閿�鍞槑缁嗙紪鐮�",
- "type": "string"
- },
- "silkMarket": {
- "description": "鍢夎仈浠撳偍娣诲姞 SilkMarket",
"type": "string"
},
"source": {
- "description": "鏉ユ簮绯荤粺",
"type": "string"
},
"sourceNumber": {
@@ -5533,15 +5392,9 @@
"type": "string"
},
"warehouse": {
- "description": "浠撳簱淇℃伅",
- "allOf": [
- {
- "$ref": "#/definitions/models.Warehouse"
- }
- ]
+ "$ref": "#/definitions/models.Warehouse"
},
"warehouseId": {
- "description": "浠撳簱id",
"type": "integer"
},
"waybillNumber": {
@@ -5562,11 +5415,9 @@
"type": "number"
},
"auxiliaryAmount": {
- "description": "杈呭姪鏁伴噺",
"type": "number"
},
"auxiliaryUnit": {
- "description": "杈呭姪鍗曚綅",
"type": "string"
},
"baseOperationType": {
@@ -5608,7 +5459,7 @@
"type": "boolean"
},
"operationId": {
- "description": "鎿嶄綔璁板綍id",
+ "description": "鎿嶄綔id",
"type": "integer"
},
"product": {
@@ -5624,20 +5475,11 @@
"type": "string"
},
"remark": {
- "description": "澶囨敞",
"type": "string"
},
"salePrice": {
"description": "閿�鍞崟浠�",
"type": "number"
- },
- "silkMarket": {
- "description": "鍢夎仈浠撳偍娣诲姞 SilkMarket銆丼ilkMarketClose",
- "type": "string"
- },
- "silkMarketClose": {
- "description": "搴勫彛鍏抽棴",
- "type": "string"
},
"stockAmount": {
"description": "搴撳瓨鏁伴噺锛岀洏鐐规椂鐢�",
@@ -5656,11 +5498,9 @@
"type": "integer"
},
"totalGrossWeight": {
- "description": "鎬绘瘺閲�",
"type": "number"
},
"totalNetWeight": {
- "description": "鎬诲噣閲�",
"type": "number"
},
"updateTime": {
@@ -5781,64 +5621,6 @@
"type": "string"
}
}
- },
- "models.SilkDict": {
- "type": "object",
- "properties": {
- "createdAt": {
- "type": "string"
- },
- "deletedAt": {
- "$ref": "#/definitions/gorm.DeletedAt"
- },
- "dictType": {
- "description": "瀛楀吀绫诲瀷",
- "allOf": [
- {
- "$ref": "#/definitions/models.SilkDictType"
- }
- ]
- },
- "id": {
- "type": "integer"
- },
- "name": {
- "description": "鍚嶇О",
- "type": "string"
- },
- "number": {
- "description": "缂栧彿",
- "type": "string"
- },
- "remark": {
- "description": "澶囨敞",
- "type": "string"
- },
- "updatedAt": {
- "type": "string"
- }
- }
- },
- "models.SilkDictType": {
- "type": "integer",
- "enum": [
- 1,
- 2,
- 3,
- 4
- ],
- "x-enum-comments": {
- "DictTypeColor": "棰滆壊",
- "DictTypeMarket": "搴勫彛",
- "DictTypeSpec": "瑙勬牸",
- "DictTypeWorkshop": "杞﹂棿"
- },
- "x-enum-varnames": [
- "DictTypeMarket",
- "DictTypeWorkshop",
- "DictTypeColor",
- "DictTypeSpec"
- ]
},
"models.SystemConfig": {
"type": "object",
@@ -6228,15 +6010,13 @@
"type": "object",
"properties": {
"accountant": {
- "description": "浼氳鍚嶇О",
"type": "string"
},
"accountantId": {
- "description": "浼氳id",
"type": "string"
},
"baseOperationType": {
- "description": "鍩虹浣滀笟绫诲瀷 1 鍏ュ簱 2 鍑哄簱 3 鍐呴儴璋冩嫧 4 鎶ュ簾 5 搴撳瓨鐩樼偣",
+ "description": "鍩虹浣滀笟绫诲瀷 5搴撳瓨鐩樼偣",
"allOf": [
{
"$ref": "#/definitions/constvar.BaseOperationType"
@@ -6264,19 +6044,15 @@
"type": "string"
},
"custodian": {
- "description": "淇濈鍛樺悕绉�",
"type": "string"
},
"custodianId": {
- "description": "淇濈鍛榠d",
"type": "string"
},
"dealerType": {
- "description": "璋冩嫧鍑哄叆搴撶被鍨�",
"type": "string"
},
"details": {
- "description": "璇︽儏",
"type": "array",
"items": {
"$ref": "#/definitions/request.OperationDetails"
@@ -6290,7 +6066,6 @@
"type": "integer"
},
"logisticCompanyId": {
- "description": "鐗╂祦鍏徃id",
"type": "string"
},
"logisticWeight": {
@@ -6298,11 +6073,9 @@
"type": "number"
},
"manager": {
- "description": "涓荤鍚嶇О",
"type": "string"
},
"managerId": {
- "description": "涓荤id",
"type": "string"
},
"number": {
@@ -6310,7 +6083,7 @@
"type": "string"
},
"operationDate": {
- "description": "FromLocationId int `json:\"fromLocationId\" ` //婧愪綅缃甶d\nToLocationId int `json:\"toLocationId\" ` //鐩爣浣嶇疆id",
+ "description": "FromLocationId int `json:\"fromLocationId\" gorm:\"type:int;not null;comment:婧愪綅缃甶d\"` //婧愪綅缃甶d\nToLocationId int `json:\"toLocationId\" gorm:\"type:int;not null;comment:鐩爣浣嶇疆id\"` //鐩爣浣嶇疆id",
"type": "string"
},
"operationTypeId": {
@@ -6322,19 +6095,12 @@
"type": "string"
},
"receiverAddr": {
- "description": "鏀惰揣鍦板潃",
"type": "string"
},
"receiverName": {
- "description": "鏀惰揣浜哄鍚�",
"type": "string"
},
"receiverPhone": {
- "description": "鑱旂郴鐢佃瘽",
- "type": "string"
- },
- "silkMarket": {
- "description": "搴勫彛",
"type": "string"
},
"sourceNumber": {
@@ -6657,10 +6423,6 @@
},
"warehouseCode": {
"type": "string"
- },
- "warehouseId": {
- "description": "浠撳簱ID",
- "type": "string"
}
}
},
@@ -6881,7 +6643,6 @@
"type": "object",
"properties": {
"number": {
- "description": "鍗曞彿",
"type": "string"
},
"page": {
@@ -6893,7 +6654,6 @@
"type": "integer"
},
"sourceNumber": {
- "description": "婧愬崟鍙�",
"type": "string"
}
}
@@ -6902,7 +6662,6 @@
"type": "object",
"properties": {
"condition": {
- "description": "妯$硦鏌ヨ鏉′欢",
"type": "string"
},
"keyword": {
@@ -6935,7 +6694,7 @@
"type": "integer"
},
"amount": {
- "description": "ProductName string `json:\"productName\" ` //浜у搧鍚嶇О",
+ "description": "ProductName string `json:\"productName\" gorm:\"type:varchar(255);not null;comment:浜у搧鍚嶇О\"` //浜у搧鍚嶇О",
"type": "number"
},
"auxiliaryAmount": {
@@ -6951,7 +6710,7 @@
"type": "number"
},
"fromLocationId": {
- "description": "Unit string `json:\"unit\"` //鍗曚綅\nProduct models.Material `json:\"product\" ` // 浜у搧",
+ "description": "Unit string `json:\"unit\" gorm:\"type:varchar(31);comment:鍗曚綅\"` //鍗曚綅\nProduct models.Material `json:\"product\" gorm:\"foreignKey:ProductId;references:ID\"`",
"type": "integer"
},
"productId": {
@@ -6959,20 +6718,11 @@
"type": "string"
},
"remark": {
- "description": "澶囨敞",
"type": "string"
},
"salePrice": {
"description": "閿�鍞崟浠�",
"type": "number"
- },
- "silkMarket": {
- "description": "搴勫彛",
- "type": "string"
- },
- "silkMarketClose": {
- "description": "搴勫彛鍏抽棴",
- "type": "string"
},
"stockAmount": {
"description": "搴撳瓨鏁伴噺锛岀洏鐐规椂鐢�",
@@ -6996,7 +6746,7 @@
"type": "object",
"properties": {
"baseOperationType": {
- "description": "鍩虹浣滀笟绫诲瀷 1 鍏ュ簱 2 鍑哄簱 3 鍐呴儴璋冩嫧 4 鎶ュ簾 5 搴撳瓨鐩樼偣",
+ "description": "1 鍏ュ簱 2 鍑哄簱 3 鍐呴儴璋冩嫧 4 鎶ュ簾 5 搴撳瓨鐩樼偣",
"allOf": [
{
"$ref": "#/definitions/constvar.BaseOperationType"
@@ -7004,11 +6754,9 @@
]
},
"number": {
- "description": "鍗曞彿",
"type": "string"
},
"operationTypeId": {
- "description": "浣滀笟绫诲瀷id",
"type": "integer"
},
"page": {
@@ -7020,12 +6768,7 @@
"type": "integer"
},
"status": {
- "description": "鐘舵��",
- "allOf": [
- {
- "$ref": "#/definitions/constvar.OperationStatus"
- }
- ]
+ "$ref": "#/definitions/constvar.OperationStatus"
}
}
},
@@ -7341,11 +7084,9 @@
"type": "object",
"properties": {
"accountant": {
- "description": "浼氳鍚嶇О",
"type": "string"
},
"accountantId": {
- "description": "浼氳id",
"type": "string"
},
"baseOperationType": {
@@ -7377,15 +7118,12 @@
"type": "string"
},
"custodian": {
- "description": "淇濈鍛樺悕绉�",
"type": "string"
},
"custodianId": {
- "description": "淇濈鍛榠d",
"type": "string"
},
"details": {
- "description": "璇︽儏",
"type": "array",
"items": {
"$ref": "#/definitions/request.OperationDetails"
@@ -7395,7 +7133,6 @@
"type": "integer"
},
"inventoryDealerType": {
- "description": "璋冩嫧鍑哄叆搴撳垎绫�(瀵瑰簲dict瀛楀吀琛ㄧ殑ID)",
"type": "integer"
},
"locationId": {
@@ -7410,11 +7147,9 @@
"type": "number"
},
"manager": {
- "description": "涓荤鍚嶇О",
"type": "string"
},
"managerId": {
- "description": "涓荤id",
"type": "string"
},
"number": {
@@ -7422,7 +7157,7 @@
"type": "string"
},
"operationDate": {
- "description": "FromLocationId int `json:\"fromLocationId\" ` //婧愪綅缃甶d\nToLocationId int `json:\"toLocationId\" ` //鐩爣浣嶇疆id",
+ "description": "FromLocationId int `json:\"fromLocationId\" gorm:\"type:int;not null;comment:婧愪綅缃甶d\"` //婧愪綅缃甶d\nToLocationId int `json:\"toLocationId\" gorm:\"type:int;not null;comment:鐩爣浣嶇疆id\"` //鐩爣浣嶇疆id",
"type": "string"
},
"operationTypeId": {
@@ -7434,19 +7169,12 @@
"type": "string"
},
"receiverAddr": {
- "description": "鏀惰揣鍦板潃",
"type": "string"
},
"receiverName": {
- "description": "鏀惰揣浜哄鍚�",
"type": "string"
},
"receiverPhone": {
- "description": "鑱旂郴鐢佃瘽",
- "type": "string"
- },
- "silkMarket": {
- "description": "搴勫彛",
"type": "string"
},
"sourceNumber": {
@@ -7610,16 +7338,8 @@
"description": "浜у搧id",
"type": "string"
},
- "productCategory": {
- "description": "浜у搧绫诲埆",
- "type": "string"
- },
"productName": {
"description": "浜у搧鍚嶇О",
- "type": "string"
- },
- "productSpecs": {
- "description": "浜у搧瑙勬牸",
"type": "string"
},
"productType": {
@@ -7696,29 +7416,6 @@
"items": {
"$ref": "#/definitions/models.Material"
}
- }
- }
- },
- "user.GetUserRequest": {
- "type": "object",
- "properties": {
- "id": {
- "type": "string"
- },
- "nickName": {
- "type": "string"
- },
- "parentId": {
- "type": "string"
- },
- "pos": {
- "type": "string"
- },
- "userName": {
- "type": "string"
- },
- "userType": {
- "type": "integer"
}
}
},
diff --git a/docs/swagger.yaml b/docs/swagger.yaml
index 394069f..3504c9f 100644
--- a/docs/swagger.yaml
+++ b/docs/swagger.yaml
@@ -361,6 +361,21 @@
- WhetherTypeAsk
- WhetherTypeAlways
- ReservationNever
+ controllers.saveProductImagesFromExcelRequest:
+ properties:
+ excelFilePath:
+ description: excel璺緞 鐢╠ocker cp浼犲埌瀹瑰櫒閲�
+ type: string
+ imageColumn:
+ description: 鍥剧墖鎵�鍦ㄥ垪鍚�
+ type: string
+ productIdColumnIndex:
+ description: 浜у搧ID鏄鍑犲垪(浠�0寮�濮�)
+ type: integer
+ sheetIndex:
+ description: 绗嚑涓猻heet
+ type: integer
+ type: object
gorm.DeletedAt:
properties:
time:
@@ -541,7 +556,6 @@
updateTime:
type: string
warehouseId:
- description: 浠撳簱id
type: integer
type: object
models.LogisticCompany:
@@ -920,52 +934,38 @@
models.Operation:
properties:
accountant:
- description: 浼氳鍚嶇О
type: string
accountantId:
- description: 浼氳id
type: string
auditDate:
- description: 瀹℃壒鏃堕棿
type: string
baseOperationType:
allOf:
- $ref: '#/definitions/constvar.BaseOperationType'
description: 鍩虹浣滀笟绫诲瀷
checkedBy:
- description: 楠岃瘉鑰匲serId
type: string
comment:
- description: 澶囨敞
type: string
companyID:
- description: 鍏徃ID-瀹㈡埛
type: string
companyName:
- description: 鍏徃鍚嶇О-瀹㈡埛
type: string
contacterID:
- description: 鑱旂郴浜篒D
type: integer
contacterName:
- description: 鑱旂郴浜哄鍚�
type: string
createBy:
- description: 鍒涘缓鑰匲serId
type: string
createTime:
type: string
custodian:
- description: 淇濈鍛樺悕绉�
type: string
custodianId:
- description: 淇濈鍛榠d
type: string
dealerType:
- description: 璋冩嫧鍑哄叆搴撶被鍨�
type: string
details:
- description: 鎿嶄綔鏄庣粏
items:
$ref: '#/definitions/models.OperationDetails'
type: array
@@ -982,26 +982,20 @@
description: 婧愪綅缃甶d
type: integer
logisticCompany:
- allOf:
- - $ref: '#/definitions/models.LogisticCompany'
- description: 鐗╂祦鍏徃淇℃伅
+ $ref: '#/definitions/models.LogisticCompany'
logisticCompanyId:
- description: 鐗╂祦鍏徃id
type: string
logisticWeight:
description: 鐗╂祦閲嶉噺
type: number
manager:
- description: 涓荤鍚嶇О
type: string
managerId:
- description: 涓荤id
type: string
number:
description: 鍗曞彿
type: string
operationDate:
- description: 瀹夋帓鏃ユ湡
type: string
operationSource:
allOf:
@@ -1014,25 +1008,16 @@
description: 浣滀笟绫诲瀷鍚嶇О
type: string
receiverAddr:
- description: 鏀惰揣鍦板潃
type: string
receiverName:
- description: 鏀惰揣浜哄鍚�
type: string
receiverPhone:
- description: 鑱旂郴鐢佃瘽
type: string
remark:
- description: 澶囨敞
type: string
salesDetailsNumber:
- description: 閿�鍞槑缁嗙紪鐮�
- type: string
- silkMarket:
- description: 鍢夎仈浠撳偍娣诲姞 SilkMarket
type: string
source:
- description: 鏉ユ簮绯荤粺
type: string
sourceNumber:
description: 婧愬崟鍙�
@@ -1051,11 +1036,8 @@
updateTime:
type: string
warehouse:
- allOf:
- - $ref: '#/definitions/models.Warehouse'
- description: 浠撳簱淇℃伅
+ $ref: '#/definitions/models.Warehouse'
warehouseId:
- description: 浠撳簱id
type: integer
waybillNumber:
description: 杩愬崟鍙�
@@ -1071,10 +1053,8 @@
null;comment:浜у搧鍚嶇О"` //浜у搧鍚嶇О
type: number
auxiliaryAmount:
- description: 杈呭姪鏁伴噺
type: number
auxiliaryUnit:
- description: 杈呭姪鍗曚綅
type: string
baseOperationType:
allOf:
@@ -1101,7 +1081,7 @@
description: 鏄惁璋冩嫧浜х敓鐨勫嚭搴�
type: boolean
operationId:
- description: 鎿嶄綔璁板綍id
+ description: 鎿嶄綔id
type: integer
product:
allOf:
@@ -1111,17 +1091,10 @@
description: 浜у搧id
type: string
remark:
- description: 澶囨敞
type: string
salePrice:
description: 閿�鍞崟浠�
type: number
- silkMarket:
- description: 鍢夎仈浠撳偍娣诲姞 SilkMarket銆丼ilkMarketClose
- type: string
- silkMarketClose:
- description: 搴勫彛鍏抽棴
- type: string
stockAmount:
description: 搴撳瓨鏁伴噺锛岀洏鐐规椂鐢�
type: number
@@ -1133,10 +1106,8 @@
description: 鐩爣浣嶇疆id
type: integer
totalGrossWeight:
- description: 鎬绘瘺閲�
type: number
totalNetWeight:
- description: 鎬诲噣閲�
type: number
updateTime:
type: string
@@ -1217,47 +1188,6 @@
updateTime:
type: string
type: object
- models.SilkDict:
- properties:
- createdAt:
- type: string
- deletedAt:
- $ref: '#/definitions/gorm.DeletedAt'
- dictType:
- allOf:
- - $ref: '#/definitions/models.SilkDictType'
- description: 瀛楀吀绫诲瀷
- id:
- type: integer
- name:
- description: 鍚嶇О
- type: string
- number:
- description: 缂栧彿
- type: string
- remark:
- description: 澶囨敞
- type: string
- updatedAt:
- type: string
- type: object
- models.SilkDictType:
- enum:
- - 1
- - 2
- - 3
- - 4
- type: integer
- x-enum-comments:
- DictTypeColor: 棰滆壊
- DictTypeMarket: 搴勫彛
- DictTypeSpec: 瑙勬牸
- DictTypeWorkshop: 杞﹂棿
- x-enum-varnames:
- - DictTypeMarket
- - DictTypeWorkshop
- - DictTypeColor
- - DictTypeSpec
models.SystemConfig:
properties:
configType:
@@ -1523,15 +1453,13 @@
request.AddOperation:
properties:
accountant:
- description: 浼氳鍚嶇О
type: string
accountantId:
- description: 浼氳id
type: string
baseOperationType:
allOf:
- $ref: '#/definitions/constvar.BaseOperationType'
- description: 鍩虹浣滀笟绫诲瀷 1 鍏ュ簱 2 鍑哄簱 3 鍐呴儴璋冩嫧 4 鎶ュ簾 5 搴撳瓨鐩樼偣
+ description: 鍩虹浣滀笟绫诲瀷 5搴撳瓨鐩樼偣
comment:
description: 澶囨敞
type: string
@@ -1548,16 +1476,12 @@
description: 鑱旂郴浜哄鍚�-闈炲繀濉�
type: string
custodian:
- description: 淇濈鍛樺悕绉�
type: string
custodianId:
- description: 淇濈鍛榠d
type: string
dealerType:
- description: 璋冩嫧鍑哄叆搴撶被鍨�
type: string
details:
- description: 璇︽儏
items:
$ref: '#/definitions/request.OperationDetails'
type: array
@@ -1567,24 +1491,21 @@
description: 婧愪綅缃甶d
type: integer
logisticCompanyId:
- description: 鐗╂祦鍏徃id
type: string
logisticWeight:
description: 鐗╂祦閲嶉噺
type: number
manager:
- description: 涓荤鍚嶇О
type: string
managerId:
- description: 涓荤id
type: string
number:
description: 鍗曞彿
type: string
operationDate:
description: |-
- FromLocationId int `json:"fromLocationId" ` //婧愪綅缃甶d
- ToLocationId int `json:"toLocationId" ` //鐩爣浣嶇疆id
+ FromLocationId int `json:"fromLocationId" gorm:"type:int;not null;comment:婧愪綅缃甶d"` //婧愪綅缃甶d
+ ToLocationId int `json:"toLocationId" gorm:"type:int;not null;comment:鐩爣浣嶇疆id"` //鐩爣浣嶇疆id
type: string
operationTypeId:
description: 浣滀笟绫诲瀷id
@@ -1593,16 +1514,10 @@
description: 浣滀笟绫诲瀷鍚嶇О
type: string
receiverAddr:
- description: 鏀惰揣鍦板潃
type: string
receiverName:
- description: 鏀惰揣浜哄鍚�
type: string
receiverPhone:
- description: 鑱旂郴鐢佃瘽
- type: string
- silkMarket:
- description: 搴勫彛
type: string
sourceNumber:
description: 婧愬崟鍙�
@@ -1823,9 +1738,6 @@
type: string
warehouseCode:
type: string
- warehouseId:
- description: 浠撳簱ID
- type: string
type: object
request.GetList:
properties:
@@ -1975,7 +1887,6 @@
request.OperationAllList:
properties:
number:
- description: 鍗曞彿
type: string
page:
description: 椤电爜
@@ -1984,13 +1895,11 @@
description: 姣忛〉澶у皬
type: integer
sourceNumber:
- description: 婧愬崟鍙�
type: string
type: object
request.OperationCondition:
properties:
condition:
- description: 妯$硦鏌ヨ鏉′欢
type: string
keyword:
description: 鍏抽敭瀛楁悳绱�
@@ -2014,7 +1923,8 @@
description: 鎿嶄綔id
type: integer
amount:
- description: ProductName string `json:"productName" ` //浜у搧鍚嶇О
+ description: ProductName string `json:"productName" gorm:"type:varchar(255);not
+ null;comment:浜у搧鍚嶇О"` //浜у搧鍚嶇О
type: number
auxiliaryAmount:
description: 杈呭姪鏁伴噺
@@ -2027,24 +1937,17 @@
type: number
fromLocationId:
description: |-
- Unit string `json:"unit"` //鍗曚綅
- Product models.Material `json:"product" ` // 浜у搧
+ Unit string `json:"unit" gorm:"type:varchar(31);comment:鍗曚綅"` //鍗曚綅
+ Product models.Material `json:"product" gorm:"foreignKey:ProductId;references:ID"`
type: integer
productId:
description: 浜у搧id
type: string
remark:
- description: 澶囨敞
type: string
salePrice:
description: 閿�鍞崟浠�
type: number
- silkMarket:
- description: 搴勫彛
- type: string
- silkMarketClose:
- description: 搴勫彛鍏抽棴
- type: string
stockAmount:
description: 搴撳瓨鏁伴噺锛岀洏鐐规椂鐢�
type: number
@@ -2063,12 +1966,10 @@
baseOperationType:
allOf:
- $ref: '#/definitions/constvar.BaseOperationType'
- description: 鍩虹浣滀笟绫诲瀷 1 鍏ュ簱 2 鍑哄簱 3 鍐呴儴璋冩嫧 4 鎶ュ簾 5 搴撳瓨鐩樼偣
+ description: 1 鍏ュ簱 2 鍑哄簱 3 鍐呴儴璋冩嫧 4 鎶ュ簾 5 搴撳瓨鐩樼偣
number:
- description: 鍗曞彿
type: string
operationTypeId:
- description: 浣滀笟绫诲瀷id
type: integer
page:
description: 椤电爜
@@ -2077,9 +1978,7 @@
description: 姣忛〉澶у皬
type: integer
status:
- allOf:
- - $ref: '#/definitions/constvar.OperationStatus'
- description: 鐘舵��
+ $ref: '#/definitions/constvar.OperationStatus'
type: object
request.PageInfo:
properties:
@@ -2291,10 +2190,8 @@
request.UpdateOperation:
properties:
accountant:
- description: 浼氳鍚嶇О
type: string
accountantId:
- description: 浼氳id
type: string
baseOperationType:
allOf:
@@ -2316,20 +2213,16 @@
description: 鑱旂郴浜哄鍚�-闈炲繀濉�
type: string
custodian:
- description: 淇濈鍛樺悕绉�
type: string
custodianId:
- description: 淇濈鍛榠d
type: string
details:
- description: 璇︽儏
items:
$ref: '#/definitions/request.OperationDetails'
type: array
id:
type: integer
inventoryDealerType:
- description: 璋冩嫧鍑哄叆搴撳垎绫�(瀵瑰簲dict瀛楀吀琛ㄧ殑ID)
type: integer
locationId:
description: 婧愪綅缃甶d
@@ -2340,18 +2233,16 @@
description: 鐗╂祦閲嶉噺
type: number
manager:
- description: 涓荤鍚嶇О
type: string
managerId:
- description: 涓荤id
type: string
number:
description: 鍗曞彿
type: string
operationDate:
description: |-
- FromLocationId int `json:"fromLocationId" ` //婧愪綅缃甶d
- ToLocationId int `json:"toLocationId" ` //鐩爣浣嶇疆id
+ FromLocationId int `json:"fromLocationId" gorm:"type:int;not null;comment:婧愪綅缃甶d"` //婧愪綅缃甶d
+ ToLocationId int `json:"toLocationId" gorm:"type:int;not null;comment:鐩爣浣嶇疆id"` //鐩爣浣嶇疆id
type: string
operationTypeId:
description: 浣滀笟绫诲瀷id
@@ -2360,16 +2251,10 @@
description: 浣滀笟绫诲瀷鍚嶇О
type: string
receiverAddr:
- description: 鏀惰揣鍦板潃
type: string
receiverName:
- description: 鏀惰揣浜哄鍚�
type: string
receiverPhone:
- description: 鑱旂郴鐢佃瘽
- type: string
- silkMarket:
- description: 搴勫彛
type: string
sourceNumber:
description: 婧愬崟鍙�
@@ -2481,14 +2366,8 @@
produceId:
description: 浜у搧id
type: string
- productCategory:
- description: 浜у搧绫诲埆
- type: string
productName:
description: 浜у搧鍚嶇О
- type: string
- productSpecs:
- description: 浜у搧瑙勬牸
type: string
productType:
description: 浜у搧绫诲瀷
@@ -2544,21 +2423,6 @@
items:
$ref: '#/definitions/models.Material'
type: array
- type: object
- user.GetUserRequest:
- properties:
- id:
- type: string
- nickName:
- type: string
- parentId:
- type: string
- pos:
- type: string
- userName:
- type: string
- userType:
- type: integer
type: object
util.Response:
properties:
@@ -3005,74 +2869,6 @@
type: array
type: object
summary: 鑾峰彇瀛楀吀淇℃伅鍒楄〃
- tags:
- - 鏁版嵁瀛楀吀
- /api-wms/v1/dict/getSilkDictList/{type}:
- get:
- parameters:
- - description: token
- in: header
- name: Authorization
- required: true
- type: string
- - description: 瀛楀吀绫诲瀷
- in: path
- name: type
- required: true
- type: string
- produces:
- - application/json
- responses:
- "200":
- description: 鎴愬姛
- schema:
- allOf:
- - $ref: '#/definitions/util.ResponseList'
- - properties:
- data:
- items:
- $ref: '#/definitions/models.SilkDict'
- type: array
- type: object
- summary: 鑾峰彇搴勫彛鍒楄〃
- tags:
- - 鏁版嵁瀛楀吀
- /api-wms/v1/dict/getUserList:
- get:
- parameters:
- - in: query
- name: id
- type: string
- - in: query
- name: nickName
- type: string
- - in: query
- name: parentId
- type: string
- - in: query
- name: pos
- type: string
- - in: query
- name: userName
- type: string
- - in: query
- name: userType
- type: integer
- produces:
- - application/json
- responses:
- "200":
- description: 鎴愬姛
- schema:
- allOf:
- - $ref: '#/definitions/util.ResponseList'
- - properties:
- data:
- items:
- $ref: '#/definitions/user.GetUserRequest'
- type: array
- type: object
- summary: 鑾峰彇鐢ㄦ埛鍒楄〃
tags:
- 鏁版嵁瀛楀吀
/api-wms/v1/dict/save:
@@ -3668,11 +3464,6 @@
/api-wms/v1/locationProductAmount/add:
post:
parameters:
- - description: token
- in: header
- name: Authorization
- required: true
- type: string
- description: 鍏ュ簱/鍑哄簱淇℃伅
in: body
name: object
@@ -3692,11 +3483,6 @@
/api-wms/v1/locationProductAmount/finish:
post:
parameters:
- - description: token
- in: header
- name: Authorization
- required: true
- type: string
- description: 鍏ュ弬
in: body
name: object
@@ -3809,11 +3595,6 @@
/api-wms/v1/locationProductAmount/update:
post:
parameters:
- - description: token
- in: header
- name: Authorization
- required: true
- type: string
- description: 鍏ュ簱/鍑哄簱淇℃伅
in: body
name: object
@@ -3851,11 +3632,6 @@
/api-wms/v1/operation/finish/{id}:
put:
parameters:
- - description: token
- in: header
- name: Authorization
- required: true
- type: string
- description: id
in: path
name: id
@@ -3957,11 +3733,6 @@
/api-wms/v1/operation/list:
post:
parameters:
- - description: token
- in: header
- name: Authorization
- required: true
- type: string
- description: 鏌ヨ鍙傛暟
in: body
name: object
@@ -4026,11 +3797,6 @@
/api-wms/v1/operation/operation:
post:
parameters:
- - description: token
- in: header
- name: Authorization
- required: true
- type: string
- description: 鍏ュ簱/鍑哄簱淇℃伅
in: body
name: object
@@ -4050,11 +3816,6 @@
/api-wms/v1/operation/operation/{id}:
delete:
parameters:
- - description: token
- in: header
- name: Authorization
- required: true
- type: string
- description: id
in: path
name: id
@@ -4294,6 +4055,30 @@
summary: 缂栬緫閮ㄩ棬淇℃伅
tags:
- 閮ㄩ棬淇℃伅
+ /api-wms/v1/other/saveProductImagesFromExcel:
+ post:
+ parameters:
+ - description: 灞炴�т俊鎭�
+ in: body
+ name: object
+ required: true
+ schema:
+ $ref: '#/definitions/controllers.saveProductImagesFromExcelRequest'
+ - description: token
+ in: header
+ name: Authorization
+ required: true
+ type: string
+ produces:
+ - application/json
+ responses:
+ "200":
+ description: 鎴愬姛
+ schema:
+ $ref: '#/definitions/util.Response'
+ summary: 浠巈xcel涓幏鍙栦骇鍝佸浘鐗囧苟淇濆瓨
+ tags:
+ - 鍏朵粬
/api-wms/v1/product/addDisuse:
post:
parameters:
diff --git a/router/router.go b/router/router.go
index a6234bd..c5137d8 100644
--- a/router/router.go
+++ b/router/router.go
@@ -241,5 +241,12 @@
sysCfgApi.GET("get", sysCfgCtl.GetSystemConfig) //鑾峰彇绯荤粺閰嶇疆
}
+ //鍏朵粬
+ otherCtl := new(controllers.OtherController)
+ otherApi := r.Group(urlPrefix + "/other")
+ {
+ otherApi.POST("saveProductImagesFromExcel", otherCtl.SaveProductImagesFromExcel) //浠庢寚瀹氳矾寰勭殑excel鑾峰彇浜у搧缂栧彿鍜屽浘鐗囷紝涓婁紶骞朵繚瀛�
+ }
+
return r
}
--
Gitblit v1.8.0