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