From 28d04b70a786c5084ddceb12f6cc34b5702e0d36 Mon Sep 17 00:00:00 2001 From: liujiandao <274878379@qq.com> Date: 星期五, 22 十二月 2023 10:34:41 +0800 Subject: [PATCH] 销售明细获取采购单 --- api/v1/index.go | 1 model/request/product.go | 5 api/v1/product.go | 30 + service/system_set_service.go | 22 + model/response/salesDetails.go | 13 api/v1/code.go | 27 + docs/swagger.yaml | 131 +++++ docs/docs.go | 205 ++++++++- docs/swagger.json | 205 ++++++++- model/request/system_set_request.go | 8 constvar/const.go | 29 + model/product.go | 3 proto/product_inventory/product_inventory.pb.go | 170 ++++--- proto/product.proto | 11 api/v1/salesDetails.go | 11 proto/product/product.pb.go | 200 +++++++-- model/index.go | 1 proto/product_inventory.proto | 4 router/index.go | 9 api/v1/system_set.go | 64 +++ model/system_set.go | 98 ++++ 21 files changed, 1,044 insertions(+), 203 deletions(-) diff --git a/api/v1/code.go b/api/v1/code.go index 941623b..aea8034 100644 --- a/api/v1/code.go +++ b/api/v1/code.go @@ -102,12 +102,39 @@ id, err = model.NewFollowRecordSearch().MaxAutoIncr() case constvar.CodeStandardTypeQuotation: id, err = model.NewQuotationSearch(nil).MaxAutoIncr() + //鎶ヤ环鍗曟槸鍚﹀繀椤诲叧鑱旈攢鍞満浼� + first, err := model.NewSystemSetSearch().SetName("鎶ヤ环鍗曟槸鍚﹀繀椤诲叧鑱旈攢鍞満浼�").First() + if err == nil { + if first.Value == "鏄�" { + c.Writer.Header().Set("Xsjh", "yes") + } else { + c.Writer.Header().Set("Xsjh", "no") + } + } case constvar.CodeStandardTypeSaleTotalOrder: id, err = model.NewMasterOrderSearch().MaxAutoIncr() case constvar.CodeStandardTypeSaleSuborder: id, err = model.NewSubOrderSearch(nil).MaxAutoIncr() case constvar.CodeStandardTypeSaleDetail: id, err = model.NewSalesDetailsSearch().MaxAutoIncr() + //閿�鍞槑缁嗗崟鏄惁蹇呴』鍏宠仈鎶ヤ环鍗� + first, err := model.NewSystemSetSearch().SetName("閿�鍞槑缁嗗崟鏄惁蹇呴』鍏宠仈鎶ヤ环鍗�").First() + if err == nil { + if first.Value == "鏄�" { + c.Writer.Header().Set("Bjd", "yes") + } else { + c.Writer.Header().Set("Bjd", "no") + } + } + //閿�鍞槑缁嗗崟鏄惁蹇呴』鍏宠仈涓氬姟鏈轰細 + first, err = model.NewSystemSetSearch().SetName("閿�鍞槑缁嗗崟鏄惁蹇呴』鍏宠仈涓氬姟鏈轰細").First() + if err == nil { + if first.Value == "鏄�" { + c.Writer.Header().Set("Ywjh", "yes") + } else { + c.Writer.Header().Set("Ywjh", "no") + } + } case constvar.CodeStandardTypeSaleReturnGoods: id, err = model.NewSalesReturnSearch().MaxAutoIncr() case constvar.CodeStandardTypeSaleRefund: diff --git a/api/v1/index.go b/api/v1/index.go index b7d9326..a25ded4 100644 --- a/api/v1/index.go +++ b/api/v1/index.go @@ -67,6 +67,7 @@ AssignApi CollectionProjectionApi ContactInformationApi + SystemSetApi } var ApiGroup = new(Group) diff --git a/api/v1/product.go b/api/v1/product.go index 86ee33d..ee678df 100644 --- a/api/v1/product.go +++ b/api/v1/product.go @@ -55,6 +55,19 @@ return } + if params.QuotationNumber != "" { + find, err := model.NewQuotationSearch(nil).SetNumber(params.QuotationNumber).Find() + if err != nil { + ctx.FailWithMsg(ecode.UnknownErr, "鎶ヤ环鍗曚俊鎭煡璇㈠け璐�") + return + } + products := find.Products + ctx.OkWithDetailed(response.ListResponse{ + Data: products, + Count: int64(len(products)), + }) + return + } cli := product.NewProductServiceClient(grpc_init.CrmApsGrpcServiceConn) getProductListResponse, err := cli.GetProductList(ctx.GetCtx(), &product.GetProductListRequest{ Page: cast.ToInt32(params.Page), @@ -127,7 +140,7 @@ // @Summary 鑾峰彇浜у搧璁㈠崟淇℃伅 // @Produce application/json // @Param number path string true "鏄庣粏缂栫爜" -// @Success 200 {object} contextx.Response{data=[]product.WorkOrderInfo} "鎴愬姛" +// @Success 200 {object} contextx.Response{data=response.Info} "鎴愬姛" // // @Router /api/product/getProductOrderInfo/{number} [get] func (ci *ProductApi) GetProductOrderInfo(c *gin.Context) { @@ -147,6 +160,7 @@ ctx.FailWithMsg(ecode.UnknownErr, "鍐呴儴閿欒") return } + var result response.Info var list []response.WorkOrderInfo for _, orderInfo := range info.List { var wo response.WorkOrderInfo @@ -159,5 +173,17 @@ wo.EndTime = orderInfo.EndTime list = append(list, wo) } - ctx.OkWithDetailed(list) + result.MakeInfo = list + var purchaseInfo []response.Purchase + for _, pl := range info.PurchaseList { + var p response.Purchase + p.Amount = pl.Amount + p.Status = pl.Status + p.PurchaseName = pl.PurchaseName + p.PurchaseNumber = pl.PurchaseNumber + p.SupplierName = pl.SupplierName + purchaseInfo = append(purchaseInfo, p) + } + result.PurchaseInfo = purchaseInfo + ctx.OkWithDetailed(result) } diff --git a/api/v1/salesDetails.go b/api/v1/salesDetails.go index 3f6698b..cab0091 100644 --- a/api/v1/salesDetails.go +++ b/api/v1/salesDetails.go @@ -332,6 +332,15 @@ if !ok { return } + clientName := "" + if params.ClientId > 0 { + first, err := model.NewClientSearch(nil).SetId(params.ClientId).First() + if err != nil { + ctx.FailWithMsg(ecode.UnknownErr, "瀹㈡埛淇℃伅鏌ヨ澶辫触") + return + } + clientName = first.Name + } m := make(map[string]interface{}) m["status"] = params.Status m["project_id"] = params.ProjectId @@ -357,6 +366,8 @@ Phone: params.Phone, DeliverType: int32(params.DeliverType), Source: "CRM", + ClientId: int64(params.ClientId), + ClientName: clientName, ProductList: wmsProducts, }) if err != nil { diff --git a/api/v1/system_set.go b/api/v1/system_set.go new file mode 100644 index 0000000..2b758bd --- /dev/null +++ b/api/v1/system_set.go @@ -0,0 +1,64 @@ +package v1 + +import ( + "aps_crm/constvar" + "aps_crm/model" + "aps_crm/model/request" + "aps_crm/pkg/contextx" + "aps_crm/pkg/ecode" + "aps_crm/service" + "github.com/gin-gonic/gin" + "gorm.io/gorm" +) + +type SystemSetApi struct{} + +// GetSystemSet +// +// @Tags 绯荤粺璁剧疆 +// @Summary 鑾峰彇绯荤粺璁剧疆 +// @Produce application/json +// @Success 200 {object} contextx.Response{data=map[string]interface{}} "鎴愬姛" +// @Router /api/system/getSystemSet [get] +func (slf SystemSetApi) GetSystemSet(c *gin.Context) { + ctx, ok := contextx.NewContext(c, nil) + if !ok { + return + } + systemSet, err := service.GetSystemSet() + if err != nil { + ctx.FailWithMsg(ecode.UnknownErr, "鏌ヨ澶辫触") + return + } + constvar.SystemSet["CRM"] = systemSet + ctx.OkWithDetailed(constvar.SystemSet) +} + +// SaveSystemSet +// +// @Tags 绯荤粺璁剧疆 +// @Summary 淇濆瓨绯荤粺璁剧疆 +// @Produce application/json +// @Param object body request.SaveSystemSet true "鏌ヨ鍙傛暟" +// @Success 200 {object} contextx.Response{} "鎴愬姛" +// @Router /api/system/saveSystemSet [post] +func (slf SystemSetApi) SaveSystemSet(c *gin.Context) { + var params request.SaveSystemSet + ctx, ok := contextx.NewContext(c, ¶ms) + if !ok { + return + } + err := model.WithTransaction(func(db *gorm.DB) error { + err := model.NewSystemSetSearch().SetOrm(db).SetTypes(params.SystemTypes).DeleteAll() + if err != nil { + return err + } + err = model.NewSystemSetSearch().SetOrm(db).CreateBatch(params.Sets) + return err + }) + if err != nil { + ctx.FailWithMsg(ecode.UnknownErr, "淇濆瓨澶辫触") + return + } + ctx.Ok() +} diff --git a/constvar/const.go b/constvar/const.go index 1107c6f..341e137 100644 --- a/constvar/const.go +++ b/constvar/const.go @@ -207,3 +207,32 @@ const ( SystemType = 2 ) + +var SystemSet = map[string]interface{}{ + "CRM": map[string]interface{}{ + "鎶ヤ环鍗曟槸鍚﹀繀椤诲叧鑱旈攢鍞満浼�": map[string]interface{}{ + "value": "鏄�", + "type": "select", + "select": map[string]string{ + "1": "鏄�", + "2": "鍚�", + }, + }, + "閿�鍞槑缁嗗崟鏄惁蹇呴』鍏宠仈鎶ヤ环鍗�": map[string]interface{}{ + "value": "鏄�", + "type": "select", + "select": map[string]string{ + "1": "鏄�", + "2": "鍚�", + }, + }, + "閿�鍞槑缁嗗崟鏄惁蹇呴』鍏宠仈涓氬姟鏈轰細": map[string]interface{}{ + "value": "鏄�", + "type": "select", + "select": map[string]string{ + "1": "鏄�", + "2": "鍚�", + }, + }, + }, +} diff --git a/docs/docs.go b/docs/docs.go index f41e352..abad8f3 100644 --- a/docs/docs.go +++ b/docs/docs.go @@ -4947,10 +4947,7 @@ "type": "object", "properties": { "data": { - "type": "array", - "items": { - "$ref": "#/definitions/product.WorkOrderInfo" - } + "$ref": "#/definitions/response.Info" } } } @@ -5032,6 +5029,12 @@ "type": "string", "description": "浜у搧缂栫爜", "name": "productNumber", + "in": "query" + }, + { + "type": "string", + "description": "鎶ヤ环鍗曠紪鐮�", + "name": "quotationNumber", "in": "query" } ], @@ -9786,6 +9789,68 @@ } } }, + "/api/system/getSystemSet": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "绯荤粺璁剧疆" + ], + "summary": "鑾峰彇绯荤粺璁剧疆", + "responses": { + "200": { + "description": "鎴愬姛", + "schema": { + "allOf": [ + { + "$ref": "#/definitions/contextx.Response" + }, + { + "type": "object", + "properties": { + "data": { + "type": "object", + "additionalProperties": true + } + } + } + ] + } + } + } + } + }, + "/api/system/saveSystemSet": { + "post": { + "produces": [ + "application/json" + ], + "tags": [ + "绯荤粺璁剧疆" + ], + "summary": "淇濆瓨绯荤粺璁剧疆", + "parameters": [ + { + "description": "鏌ヨ鍙傛暟", + "name": "object", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/request.SaveSystemSet" + } + } + ], + "responses": { + "200": { + "description": "鎴愬姛", + "schema": { + "$ref": "#/definitions/contextx.Response" + } + } + } + } + }, "/api/timeSpent/add": { "post": { "produces": [ @@ -11843,11 +11908,17 @@ "amount": { "type": "number" }, + "cost": { + "type": "string" + }, "desc": { "type": "string" }, "id": { "type": "integer" + }, + "margin": { + "type": "string" }, "name": { "type": "string" @@ -11857,6 +11928,9 @@ }, "price": { "type": "number" + }, + "profit": { + "type": "string" }, "total": { "type": "number" @@ -13335,6 +13409,23 @@ } } }, + "model.SystemSet": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "name": { + "type": "string" + }, + "systemType": { + "type": "string" + }, + "value": { + "type": "string" + } + } + }, "model.TimeSpent": { "type": "object", "properties": { @@ -13474,32 +13565,6 @@ "type": "string" }, "Unit": { - "type": "string" - } - } - }, - "product.WorkOrderInfo": { - "type": "object", - "properties": { - "EndTime": { - "type": "string" - }, - "OrderId": { - "type": "string" - }, - "OrderStatus": { - "type": "string" - }, - "ProductName": { - "type": "string" - }, - "StartTime": { - "type": "string" - }, - "WorkOrderId": { - "type": "string" - }, - "WorkOrderStatus": { "type": "string" } } @@ -16310,6 +16375,23 @@ "$ref": "#/definitions/constvar.SalesReturnSourceType" } ] + } + } + }, + "request.SaveSystemSet": { + "type": "object", + "properties": { + "sets": { + "type": "array", + "items": { + "$ref": "#/definitions/model.SystemSet" + } + }, + "systemTypes": { + "type": "array", + "items": { + "type": "string" + } } } }, @@ -19173,6 +19255,23 @@ } } }, + "response.Info": { + "type": "object", + "properties": { + "makeInfo": { + "type": "array", + "items": { + "$ref": "#/definitions/response.WorkOrderInfo" + } + }, + "purchaseInfo": { + "type": "array", + "items": { + "$ref": "#/definitions/response.Purchase" + } + } + } + }, "response.IsInvoiceResponse": { "type": "object", "properties": { @@ -19307,6 +19406,26 @@ "items": { "$ref": "#/definitions/model.Province" } + } + } + }, + "response.Purchase": { + "type": "object", + "properties": { + "amount": { + "type": "integer" + }, + "purchaseName": { + "type": "string" + }, + "purchaseNumber": { + "type": "string" + }, + "status": { + "type": "integer" + }, + "supplierName": { + "type": "string" } } }, @@ -19615,6 +19734,32 @@ } } } + }, + "response.WorkOrderInfo": { + "type": "object", + "properties": { + "endTime": { + "type": "string" + }, + "orderId": { + "type": "string" + }, + "orderStatus": { + "type": "string" + }, + "productName": { + "type": "string" + }, + "startTime": { + "type": "string" + }, + "workOrderId": { + "type": "string" + }, + "workOrderStatus": { + "type": "string" + } + } } } }` diff --git a/docs/swagger.json b/docs/swagger.json index 349a879..de60416 100644 --- a/docs/swagger.json +++ b/docs/swagger.json @@ -4935,10 +4935,7 @@ "type": "object", "properties": { "data": { - "type": "array", - "items": { - "$ref": "#/definitions/product.WorkOrderInfo" - } + "$ref": "#/definitions/response.Info" } } } @@ -5020,6 +5017,12 @@ "type": "string", "description": "浜у搧缂栫爜", "name": "productNumber", + "in": "query" + }, + { + "type": "string", + "description": "鎶ヤ环鍗曠紪鐮�", + "name": "quotationNumber", "in": "query" } ], @@ -9774,6 +9777,68 @@ } } }, + "/api/system/getSystemSet": { + "get": { + "produces": [ + "application/json" + ], + "tags": [ + "绯荤粺璁剧疆" + ], + "summary": "鑾峰彇绯荤粺璁剧疆", + "responses": { + "200": { + "description": "鎴愬姛", + "schema": { + "allOf": [ + { + "$ref": "#/definitions/contextx.Response" + }, + { + "type": "object", + "properties": { + "data": { + "type": "object", + "additionalProperties": true + } + } + } + ] + } + } + } + } + }, + "/api/system/saveSystemSet": { + "post": { + "produces": [ + "application/json" + ], + "tags": [ + "绯荤粺璁剧疆" + ], + "summary": "淇濆瓨绯荤粺璁剧疆", + "parameters": [ + { + "description": "鏌ヨ鍙傛暟", + "name": "object", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/request.SaveSystemSet" + } + } + ], + "responses": { + "200": { + "description": "鎴愬姛", + "schema": { + "$ref": "#/definitions/contextx.Response" + } + } + } + } + }, "/api/timeSpent/add": { "post": { "produces": [ @@ -11831,11 +11896,17 @@ "amount": { "type": "number" }, + "cost": { + "type": "string" + }, "desc": { "type": "string" }, "id": { "type": "integer" + }, + "margin": { + "type": "string" }, "name": { "type": "string" @@ -11845,6 +11916,9 @@ }, "price": { "type": "number" + }, + "profit": { + "type": "string" }, "total": { "type": "number" @@ -13323,6 +13397,23 @@ } } }, + "model.SystemSet": { + "type": "object", + "properties": { + "id": { + "type": "integer" + }, + "name": { + "type": "string" + }, + "systemType": { + "type": "string" + }, + "value": { + "type": "string" + } + } + }, "model.TimeSpent": { "type": "object", "properties": { @@ -13462,32 +13553,6 @@ "type": "string" }, "Unit": { - "type": "string" - } - } - }, - "product.WorkOrderInfo": { - "type": "object", - "properties": { - "EndTime": { - "type": "string" - }, - "OrderId": { - "type": "string" - }, - "OrderStatus": { - "type": "string" - }, - "ProductName": { - "type": "string" - }, - "StartTime": { - "type": "string" - }, - "WorkOrderId": { - "type": "string" - }, - "WorkOrderStatus": { "type": "string" } } @@ -16298,6 +16363,23 @@ "$ref": "#/definitions/constvar.SalesReturnSourceType" } ] + } + } + }, + "request.SaveSystemSet": { + "type": "object", + "properties": { + "sets": { + "type": "array", + "items": { + "$ref": "#/definitions/model.SystemSet" + } + }, + "systemTypes": { + "type": "array", + "items": { + "type": "string" + } } } }, @@ -19161,6 +19243,23 @@ } } }, + "response.Info": { + "type": "object", + "properties": { + "makeInfo": { + "type": "array", + "items": { + "$ref": "#/definitions/response.WorkOrderInfo" + } + }, + "purchaseInfo": { + "type": "array", + "items": { + "$ref": "#/definitions/response.Purchase" + } + } + } + }, "response.IsInvoiceResponse": { "type": "object", "properties": { @@ -19295,6 +19394,26 @@ "items": { "$ref": "#/definitions/model.Province" } + } + } + }, + "response.Purchase": { + "type": "object", + "properties": { + "amount": { + "type": "integer" + }, + "purchaseName": { + "type": "string" + }, + "purchaseNumber": { + "type": "string" + }, + "status": { + "type": "integer" + }, + "supplierName": { + "type": "string" } } }, @@ -19603,6 +19722,32 @@ } } } + }, + "response.WorkOrderInfo": { + "type": "object", + "properties": { + "endTime": { + "type": "string" + }, + "orderId": { + "type": "string" + }, + "orderStatus": { + "type": "string" + }, + "productName": { + "type": "string" + }, + "startTime": { + "type": "string" + }, + "workOrderId": { + "type": "string" + }, + "workOrderStatus": { + "type": "string" + } + } } } } \ No newline at end of file diff --git a/docs/swagger.yaml b/docs/swagger.yaml index 853f908..626e44f 100644 --- a/docs/swagger.yaml +++ b/docs/swagger.yaml @@ -1118,16 +1118,22 @@ properties: amount: type: number + cost: + type: string desc: type: string id: type: integer + margin: + type: string name: type: string number: type: string price: type: number + profit: + type: string total: type: number unit: @@ -2111,6 +2117,17 @@ $ref: '#/definitions/model.Product' type: array type: object + model.SystemSet: + properties: + id: + type: integer + name: + type: string + systemType: + type: string + value: + type: string + type: object model.TimeSpent: properties: id: @@ -2207,23 +2224,6 @@ description: 鍨嬪彿 type: string Unit: - type: string - type: object - product.WorkOrderInfo: - properties: - EndTime: - type: string - OrderId: - type: string - OrderStatus: - type: string - ProductName: - type: string - StartTime: - type: string - WorkOrderId: - type: string - WorkOrderStatus: type: string type: object request.AddAccountId: @@ -4154,6 +4154,17 @@ allOf: - $ref: '#/definitions/constvar.SalesReturnSourceType' description: 婧愬崟绫诲瀷锛�1閿�鍞槑缁嗭級 + type: object + request.SaveSystemSet: + properties: + sets: + items: + $ref: '#/definitions/model.SystemSet' + type: array + systemTypes: + items: + type: string + type: array type: object request.SetAuthorityMenu: properties: @@ -6087,6 +6098,17 @@ $ref: '#/definitions/model.Industry' type: array type: object + response.Info: + properties: + makeInfo: + items: + $ref: '#/definitions/response.WorkOrderInfo' + type: array + purchaseInfo: + items: + $ref: '#/definitions/response.Purchase' + type: array + type: object response.IsInvoiceResponse: properties: list: @@ -6174,6 +6196,19 @@ items: $ref: '#/definitions/model.Province' type: array + type: object + response.Purchase: + properties: + amount: + type: integer + purchaseName: + type: string + purchaseNumber: + type: string + status: + type: integer + supplierName: + type: string type: object response.QuotationResponse: properties: @@ -6370,6 +6405,23 @@ items: $ref: '#/definitions/model.TimelyRate' type: array + type: object + response.WorkOrderInfo: + properties: + endTime: + type: string + orderId: + type: string + orderStatus: + type: string + productName: + type: string + startTime: + type: string + workOrderId: + type: string + workOrderStatus: + type: string type: object info: contact: {} @@ -9408,9 +9460,7 @@ - $ref: '#/definitions/contextx.Response' - properties: data: - items: - $ref: '#/definitions/product.WorkOrderInfo' - type: array + $ref: '#/definitions/response.Info' type: object summary: 鑾峰彇浜у搧璁㈠崟淇℃伅 tags: @@ -9456,6 +9506,10 @@ - description: 浜у搧缂栫爜 in: query name: productNumber + type: string + - description: 鎶ヤ环鍗曠紪鐮� + in: query + name: quotationNumber type: string produces: - application/json @@ -12395,6 +12449,43 @@ summary: 鏇存柊瀛愯鍗� tags: - SubOrder + /api/system/getSystemSet: + get: + produces: + - application/json + responses: + "200": + description: 鎴愬姛 + schema: + allOf: + - $ref: '#/definitions/contextx.Response' + - properties: + data: + additionalProperties: true + type: object + type: object + summary: 鑾峰彇绯荤粺璁剧疆 + tags: + - 绯荤粺璁剧疆 + /api/system/saveSystemSet: + post: + parameters: + - description: 鏌ヨ鍙傛暟 + in: body + name: object + required: true + schema: + $ref: '#/definitions/request.SaveSystemSet' + produces: + - application/json + responses: + "200": + description: 鎴愬姛 + schema: + $ref: '#/definitions/contextx.Response' + summary: 淇濆瓨绯荤粺璁剧疆 + tags: + - 绯荤粺璁剧疆 /api/timeSpent/add: post: parameters: diff --git a/model/index.go b/model/index.go index d62248f..56384f0 100644 --- a/model/index.go +++ b/model/index.go @@ -95,6 +95,7 @@ InvoiceType{}, Invoice{}, RefundType{}, + SystemSet{}, ) return err } diff --git a/model/product.go b/model/product.go index 2ac4adc..a656777 100644 --- a/model/product.go +++ b/model/product.go @@ -16,6 +16,9 @@ Total decimal.Decimal `json:"total" gorm:"column:total;type:decimal(10,2);comment:浜у搧鎬讳环"` Desc string `json:"desc" gorm:"column:desc;type:varchar(255);comment:浜у搧鎻忚堪"` Unit string `json:"unit" gorm:"column:unit;type:varchar(255);comment:鍗曚綅"` + Cost string `json:"cost" gorm:"column:cost;type:varchar(255);comment:浜у搧鎴愭湰"` + Profit string `json:"profit" gorm:"column:profit;type:varchar(255);comment:姣涘埄"` + Margin string `json:"margin" gorm:"column:margin;type:varchar(255);comment:姣涘埄鐜�"` gorm.Model `json:"-"` } diff --git a/model/request/product.go b/model/request/product.go index a81e429..1cce9d0 100644 --- a/model/request/product.go +++ b/model/request/product.go @@ -2,6 +2,7 @@ type GetProductList struct { PageInfo - ProductNumber string `json:"productNumber" form:"productNumber"` // 浜у搧缂栫爜 - ProductName string `json:"productName" form:"productName"` // 浜у搧鍚嶇О + ProductNumber string `json:"productNumber" form:"productNumber"` // 浜у搧缂栫爜 + ProductName string `json:"productName" form:"productName"` // 浜у搧鍚嶇О + QuotationNumber string `json:"quotationNumber" form:"quotationNumber"` //鎶ヤ环鍗曠紪鐮� } diff --git a/model/request/system_set_request.go b/model/request/system_set_request.go new file mode 100644 index 0000000..93e6be3 --- /dev/null +++ b/model/request/system_set_request.go @@ -0,0 +1,8 @@ +package request + +import "aps_crm/model" + +type SaveSystemSet struct { + SystemTypes []string `json:"systemTypes"` + Sets []*model.SystemSet `json:"sets"` +} diff --git a/model/response/salesDetails.go b/model/response/salesDetails.go index 80ce00c..338e969 100644 --- a/model/response/salesDetails.go +++ b/model/response/salesDetails.go @@ -1,5 +1,10 @@ package response +type Info struct { + MakeInfo []WorkOrderInfo `json:"makeInfo"` + PurchaseInfo []Purchase `json:"purchaseInfo"` +} + type WorkOrderInfo struct { OrderId string `json:"orderId"` ProductName string `json:"productName"` @@ -10,6 +15,14 @@ EndTime string `json:"endTime"` } +type Purchase struct { + PurchaseNumber string `json:"purchaseNumber"` + PurchaseName string `json:"purchaseName"` + SupplierName string `json:"supplierName"` + Amount int64 `json:"amount"` + Status int64 `json:"status"` +} + type ProductInfo struct { Id string `json:"id"` Name string `json:"name"` diff --git a/model/system_set.go b/model/system_set.go new file mode 100644 index 0000000..a64dd01 --- /dev/null +++ b/model/system_set.go @@ -0,0 +1,98 @@ +package model + +import ( + "aps_crm/pkg/mysqlx" + "fmt" + "gorm.io/gorm" +) + +type ( + SystemSet struct { + Id int `json:"id" gorm:"column:id;primaryKey;autoIncrement;not null"` + Name string `json:"name" gorm:"type:varchar(255);comment:鍚嶇О"` + Value string `json:"value" gorm:"type:varchar(255);comment:鍊�"` + SystemType string `json:"systemType" gorm:"type:varchar(255);comment:绯荤粺绫诲瀷"` + } + SystemSetSearch struct { + SystemSet + Types []string + Orm *gorm.DB + } +) + +func (slf SystemSet) TableName() string { + return "system_set" +} + +func NewSystemSetSearch() *SystemSetSearch { + return &SystemSetSearch{Orm: mysqlx.GetDB()} +} + +func (slf *SystemSetSearch) SetOrm(tx *gorm.DB) *SystemSetSearch { + slf.Orm = tx + return slf +} +func (slf *SystemSetSearch) SetTypes(types []string) *SystemSetSearch { + slf.Types = types + return slf +} +func (slf *SystemSetSearch) SetName(name string) *SystemSetSearch { + slf.Name = name + return slf +} + +func (slf *SystemSetSearch) build() *gorm.DB { + var db = slf.Orm.Table(slf.TableName()) + + if len(slf.Types) > 0 { + db = db.Where("system_type in (?)", slf.Types) + } + if slf.Name != "" { + db = db.Where("name = ?", slf.Name) + } + + return db +} + +// CreateBatch 鎵归噺鎻掑叆 +func (slf *SystemSetSearch) CreateBatch(records []*SystemSet) error { + var db = slf.build() + + if err := db.Create(&records).Error; err != nil { + return fmt.Errorf("create batch err: %v, records: %+v", err, records) + } + + return nil +} + +func (slf *SystemSetSearch) DeleteAll() (err error) { + var db = slf.build() + err = db.Delete(&SystemSet{}).Error + return err +} + +func (slf *SystemSetSearch) First() (*SystemSet, error) { + var ( + record = new(SystemSet) + db = slf.build() + ) + + if err := db.First(record).Error; err != nil { + return record, err + } + + return record, nil +} + +func (slf *SystemSetSearch) FindAll() ([]*SystemSet, error) { + var ( + records = make([]*SystemSet, 0) + db = slf.build() + ) + + if err := db.Find(&records).Error; err != nil { + return records, fmt.Errorf("find records err: %v", err) + } + + return records, nil +} diff --git a/proto/product.proto b/proto/product.proto index 9022c7f..0cb50ec 100644 --- a/proto/product.proto +++ b/proto/product.proto @@ -63,8 +63,17 @@ string EndTime = 7; } +message CrmGetPurchaseInfo { + string PurchaseNumber = 1; + string PurchaseName = 2; + string SupplierName = 3; + int64 Amount = 4; + int64 Status = 5; +} + message GetProductOrderResponse{ int32 Code = 1; string Msg = 2; - repeated WorkOrderInfo List = 3; + repeated WorkOrderInfo List = 3;//鍒堕�犱俊鎭� + repeated CrmGetPurchaseInfo PurchaseList = 4;//閲囪喘淇℃伅 } \ No newline at end of file diff --git a/proto/product/product.pb.go b/proto/product/product.pb.go index adcad64..ba02bd1 100644 --- a/proto/product/product.pb.go +++ b/proto/product/product.pb.go @@ -557,20 +557,100 @@ return "" } +type CrmGetPurchaseInfo struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PurchaseNumber string `protobuf:"bytes,1,opt,name=PurchaseNumber,proto3" json:"PurchaseNumber,omitempty"` + PurchaseName string `protobuf:"bytes,2,opt,name=PurchaseName,proto3" json:"PurchaseName,omitempty"` + SupplierName string `protobuf:"bytes,3,opt,name=SupplierName,proto3" json:"SupplierName,omitempty"` + Amount int64 `protobuf:"varint,4,opt,name=Amount,proto3" json:"Amount,omitempty"` + Status int64 `protobuf:"varint,5,opt,name=Status,proto3" json:"Status,omitempty"` +} + +func (x *CrmGetPurchaseInfo) Reset() { + *x = CrmGetPurchaseInfo{} + if protoimpl.UnsafeEnabled { + mi := &file_product_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CrmGetPurchaseInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CrmGetPurchaseInfo) ProtoMessage() {} + +func (x *CrmGetPurchaseInfo) ProtoReflect() protoreflect.Message { + mi := &file_product_proto_msgTypes[7] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CrmGetPurchaseInfo.ProtoReflect.Descriptor instead. +func (*CrmGetPurchaseInfo) Descriptor() ([]byte, []int) { + return file_product_proto_rawDescGZIP(), []int{7} +} + +func (x *CrmGetPurchaseInfo) GetPurchaseNumber() string { + if x != nil { + return x.PurchaseNumber + } + return "" +} + +func (x *CrmGetPurchaseInfo) GetPurchaseName() string { + if x != nil { + return x.PurchaseName + } + return "" +} + +func (x *CrmGetPurchaseInfo) GetSupplierName() string { + if x != nil { + return x.SupplierName + } + return "" +} + +func (x *CrmGetPurchaseInfo) GetAmount() int64 { + if x != nil { + return x.Amount + } + return 0 +} + +func (x *CrmGetPurchaseInfo) GetStatus() int64 { + if x != nil { + return x.Status + } + return 0 +} + type GetProductOrderResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Code int32 `protobuf:"varint,1,opt,name=Code,proto3" json:"Code,omitempty"` - Msg string `protobuf:"bytes,2,opt,name=Msg,proto3" json:"Msg,omitempty"` - List []*WorkOrderInfo `protobuf:"bytes,3,rep,name=List,proto3" json:"List,omitempty"` + Code int32 `protobuf:"varint,1,opt,name=Code,proto3" json:"Code,omitempty"` + Msg string `protobuf:"bytes,2,opt,name=Msg,proto3" json:"Msg,omitempty"` + List []*WorkOrderInfo `protobuf:"bytes,3,rep,name=List,proto3" json:"List,omitempty"` //鍒堕�犱俊鎭� + PurchaseList []*CrmGetPurchaseInfo `protobuf:"bytes,4,rep,name=PurchaseList,proto3" json:"PurchaseList,omitempty"` //閲囪喘淇℃伅 } func (x *GetProductOrderResponse) Reset() { *x = GetProductOrderResponse{} if protoimpl.UnsafeEnabled { - mi := &file_product_proto_msgTypes[7] + mi := &file_product_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -583,7 +663,7 @@ func (*GetProductOrderResponse) ProtoMessage() {} func (x *GetProductOrderResponse) ProtoReflect() protoreflect.Message { - mi := &file_product_proto_msgTypes[7] + mi := &file_product_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -596,7 +676,7 @@ // Deprecated: Use GetProductOrderResponse.ProtoReflect.Descriptor instead. func (*GetProductOrderResponse) Descriptor() ([]byte, []int) { - return file_product_proto_rawDescGZIP(), []int{7} + return file_product_proto_rawDescGZIP(), []int{8} } func (x *GetProductOrderResponse) GetCode() int32 { @@ -616,6 +696,13 @@ func (x *GetProductOrderResponse) GetList() []*WorkOrderInfo { if x != nil { return x.List + } + return nil +} + +func (x *GetProductOrderResponse) GetPurchaseList() []*CrmGetPurchaseInfo { + if x != nil { + return x.PurchaseList } return nil } @@ -692,28 +779,43 @@ 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, - 0x22, 0x63, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x4f, 0x72, - 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x43, - 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, - 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, - 0x67, 0x12, 0x22, 0x0a, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x0e, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, - 0x04, 0x4c, 0x69, 0x73, 0x74, 0x32, 0xe2, 0x01, 0x0a, 0x0e, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, - 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x43, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x50, - 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x16, 0x2e, 0x47, 0x65, 0x74, - 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x49, - 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x43, 0x0a, - 0x0e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x12, - 0x16, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x4c, 0x69, 0x73, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, - 0x64, 0x75, 0x63, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0x00, 0x12, 0x46, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, - 0x4f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x17, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x64, 0x75, - 0x63, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, - 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x0b, 0x5a, 0x09, 0x2e, 0x2f, - 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x22, 0xb4, 0x01, 0x0a, 0x12, 0x43, 0x72, 0x6d, 0x47, 0x65, 0x74, 0x50, 0x75, 0x72, 0x63, 0x68, + 0x61, 0x73, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x26, 0x0a, 0x0e, 0x50, 0x75, 0x72, 0x63, 0x68, + 0x61, 0x73, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0e, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, + 0x22, 0x0a, 0x0c, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x4e, + 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x53, 0x75, 0x70, 0x70, 0x6c, 0x69, 0x65, 0x72, 0x4e, + 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x53, 0x75, 0x70, 0x70, 0x6c, + 0x69, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x41, 0x6d, 0x6f, 0x75, 0x6e, + 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, + 0x16, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x9c, 0x01, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x50, + 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x12, 0x22, 0x0a, 0x04, 0x4c, 0x69, 0x73, + 0x74, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x4f, 0x72, + 0x64, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x37, 0x0a, + 0x0c, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x04, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x72, 0x6d, 0x47, 0x65, 0x74, 0x50, 0x75, 0x72, 0x63, + 0x68, 0x61, 0x73, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0c, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, + 0x73, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x32, 0xe2, 0x01, 0x0a, 0x0e, 0x70, 0x72, 0x6f, 0x64, 0x75, + 0x63, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x43, 0x0a, 0x0e, 0x47, 0x65, 0x74, + 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x16, 0x2e, 0x47, 0x65, + 0x74, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, + 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x43, + 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x4c, 0x69, 0x73, 0x74, + 0x12, 0x16, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x4c, 0x69, 0x73, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x17, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, + 0x6f, 0x64, 0x75, 0x63, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x22, 0x00, 0x12, 0x46, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, + 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x17, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x64, + 0x75, 0x63, 0x74, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x18, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x4f, 0x72, 0x64, 0x65, + 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x0b, 0x5a, 0x09, 0x2e, + 0x2f, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -728,7 +830,7 @@ return file_product_proto_rawDescData } -var file_product_proto_msgTypes = make([]protoimpl.MessageInfo, 8) +var file_product_proto_msgTypes = make([]protoimpl.MessageInfo, 9) var file_product_proto_goTypes = []interface{}{ (*GetProductInfoRequest)(nil), // 0: GetProductInfoRequest (*GetProductInfoResponse)(nil), // 1: GetProductInfoResponse @@ -737,23 +839,25 @@ (*GetProductListResponse)(nil), // 4: GetProductListResponse (*GetProductOrderRequest)(nil), // 5: GetProductOrderRequest (*WorkOrderInfo)(nil), // 6: WorkOrderInfo - (*GetProductOrderResponse)(nil), // 7: GetProductOrderResponse + (*CrmGetPurchaseInfo)(nil), // 7: CrmGetPurchaseInfo + (*GetProductOrderResponse)(nil), // 8: GetProductOrderResponse } var file_product_proto_depIdxs = []int32{ 2, // 0: GetProductInfoResponse.Data:type_name -> Product 2, // 1: GetProductListResponse.List:type_name -> Product 6, // 2: GetProductOrderResponse.List:type_name -> WorkOrderInfo - 0, // 3: productService.GetProductInfo:input_type -> GetProductInfoRequest - 3, // 4: productService.GetProductList:input_type -> GetProductListRequest - 5, // 5: productService.GetProductOrder:input_type -> GetProductOrderRequest - 1, // 6: productService.GetProductInfo:output_type -> GetProductInfoResponse - 4, // 7: productService.GetProductList:output_type -> GetProductListResponse - 7, // 8: productService.GetProductOrder:output_type -> GetProductOrderResponse - 6, // [6:9] is the sub-list for method output_type - 3, // [3:6] is the sub-list for method input_type - 3, // [3:3] is the sub-list for extension type_name - 3, // [3:3] is the sub-list for extension extendee - 0, // [0:3] is the sub-list for field type_name + 7, // 3: GetProductOrderResponse.PurchaseList:type_name -> CrmGetPurchaseInfo + 0, // 4: productService.GetProductInfo:input_type -> GetProductInfoRequest + 3, // 5: productService.GetProductList:input_type -> GetProductListRequest + 5, // 6: productService.GetProductOrder:input_type -> GetProductOrderRequest + 1, // 7: productService.GetProductInfo:output_type -> GetProductInfoResponse + 4, // 8: productService.GetProductList:output_type -> GetProductListResponse + 8, // 9: productService.GetProductOrder:output_type -> GetProductOrderResponse + 7, // [7:10] is the sub-list for method output_type + 4, // [4:7] is the sub-list for method input_type + 4, // [4:4] is the sub-list for extension type_name + 4, // [4:4] is the sub-list for extension extendee + 0, // [0:4] is the sub-list for field type_name } func init() { file_product_proto_init() } @@ -847,6 +951,18 @@ } } file_product_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CrmGetPurchaseInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_product_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetProductOrderResponse); i { case 0: return &v.state @@ -865,7 +981,7 @@ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_product_proto_rawDesc, NumEnums: 0, - NumMessages: 8, + NumMessages: 9, NumExtensions: 0, NumServices: 1, }, diff --git a/proto/product_inventory.proto b/proto/product_inventory.proto index 4c6552f..d3d00ca 100644 --- a/proto/product_inventory.proto +++ b/proto/product_inventory.proto @@ -15,7 +15,9 @@ string Phone = 4; int32 DeliverType = 5;//浜や粯绫诲瀷 string Source = 6; - repeated InventoryProduct ProductList = 7; + int64 ClientId = 7; + string ClientName = 8; + repeated InventoryProduct ProductList = 9; } message InventoryProduct{ diff --git a/proto/product_inventory/product_inventory.pb.go b/proto/product_inventory/product_inventory.pb.go index d9473c7..c24060c 100644 --- a/proto/product_inventory/product_inventory.pb.go +++ b/proto/product_inventory/product_inventory.pb.go @@ -31,7 +31,9 @@ Phone string `protobuf:"bytes,4,opt,name=Phone,proto3" json:"Phone,omitempty"` DeliverType int32 `protobuf:"varint,5,opt,name=DeliverType,proto3" json:"DeliverType,omitempty"` //浜や粯绫诲瀷 Source string `protobuf:"bytes,6,opt,name=Source,proto3" json:"Source,omitempty"` - ProductList []*InventoryProduct `protobuf:"bytes,7,rep,name=ProductList,proto3" json:"ProductList,omitempty"` + ClientId int64 `protobuf:"varint,7,opt,name=ClientId,proto3" json:"ClientId,omitempty"` + ClientName string `protobuf:"bytes,8,opt,name=ClientName,proto3" json:"ClientName,omitempty"` + ProductList []*InventoryProduct `protobuf:"bytes,9,rep,name=ProductList,proto3" json:"ProductList,omitempty"` } func (x *CreateOperationRequest) Reset() { @@ -104,6 +106,20 @@ func (x *CreateOperationRequest) GetSource() string { if x != nil { return x.Source + } + return "" +} + +func (x *CreateOperationRequest) GetClientId() int64 { + if x != nil { + return x.ClientId + } + return 0 +} + +func (x *CreateOperationRequest) GetClientName() string { + if x != nil { + return x.ClientName } return "" } @@ -584,7 +600,7 @@ var file_product_inventory_proto_rawDesc = []byte{ 0x0a, 0x17, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x5f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, - 0x6f, 0x72, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xed, 0x01, 0x0a, 0x16, 0x43, 0x72, + 0x6f, 0x72, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xa9, 0x02, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1c, 0x0a, 0x09, @@ -596,81 +612,85 @@ 0x6c, 0x69, 0x76, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x44, 0x65, 0x6c, 0x69, 0x76, 0x65, 0x72, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x53, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x12, 0x33, 0x0a, 0x0b, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x4c, - 0x69, 0x73, 0x74, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x49, 0x6e, 0x76, 0x65, - 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x52, 0x0b, 0x50, 0x72, - 0x6f, 0x64, 0x75, 0x63, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x22, 0x3a, 0x0a, 0x10, 0x49, 0x6e, 0x76, - 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x12, 0x0e, 0x0a, - 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x49, 0x64, 0x12, 0x16, 0x0a, - 0x06, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x41, - 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x3f, 0x0a, 0x17, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, - 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x75, 0x72, 0x63, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, + 0x12, 0x1e, 0x0a, 0x0a, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, + 0x12, 0x33, 0x0a, 0x0b, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x18, + 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, + 0x79, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x52, 0x0b, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, + 0x74, 0x4c, 0x69, 0x73, 0x74, 0x22, 0x3a, 0x0a, 0x10, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, + 0x72, 0x79, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x41, 0x6d, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x41, 0x6d, 0x6f, 0x75, 0x6e, + 0x74, 0x22, 0x3f, 0x0a, 0x17, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x70, 0x65, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, + 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, + 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, + 0x73, 0x67, 0x22, 0x38, 0x0a, 0x1e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, + 0x72, 0x79, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0xcd, 0x02, 0x0a, + 0x0b, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x0e, 0x0a, 0x02, + 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, + 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, + 0x12, 0x20, 0x0a, 0x0b, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x41, 0x6d, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x55, 0x6e, 0x69, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x55, 0x6e, 0x69, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, + 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x49, 0x6e, 0x76, 0x6f, 0x69, 0x63, 0x65, + 0x12, 0x18, 0x0a, 0x07, 0x43, 0x61, 0x72, 0x72, 0x69, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x43, 0x61, 0x72, 0x72, 0x69, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x57, 0x61, + 0x79, 0x62, 0x69, 0x6c, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x57, 0x61, 0x79, + 0x62, 0x69, 0x6c, 0x6c, 0x12, 0x1c, 0x0a, 0x09, 0x53, 0x61, 0x6c, 0x65, 0x50, 0x72, 0x69, 0x63, + 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x53, 0x61, 0x6c, 0x65, 0x50, 0x72, 0x69, + 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x56, 0x61, 0x6c, 0x6f, 0x72, 0x65, 0x6d, 0x18, 0x09, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x56, 0x61, 0x6c, 0x6f, 0x72, 0x65, 0x6d, 0x12, 0x1c, 0x0a, 0x09, + 0x57, 0x61, 0x72, 0x65, 0x68, 0x6f, 0x75, 0x73, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x57, 0x61, 0x72, 0x65, 0x68, 0x6f, 0x75, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x41, 0x6d, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x41, 0x6d, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x0f, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x4e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x41, 0x76, 0x61, + 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x77, 0x0a, 0x1f, + 0x47, 0x65, 0x74, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x50, 0x72, 0x6f, 0x64, + 0x75, 0x63, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x12, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x43, + 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x03, 0x4d, 0x73, 0x67, 0x12, 0x2e, 0x0a, 0x0b, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, + 0x4c, 0x69, 0x73, 0x74, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x50, 0x72, 0x6f, + 0x64, 0x75, 0x63, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0b, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, + 0x74, 0x4c, 0x69, 0x73, 0x74, 0x22, 0x66, 0x0a, 0x1e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, + 0x61, 0x6c, 0x65, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x4e, 0x75, 0x6d, 0x62, 0x65, + 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, + 0x2c, 0x0a, 0x11, 0x53, 0x61, 0x6c, 0x65, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x53, 0x61, 0x6c, 0x65, + 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x47, 0x0a, + 0x1f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x61, 0x6c, 0x65, 0x73, 0x44, 0x65, 0x74, 0x61, + 0x69, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x22, 0x38, 0x0a, 0x1e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x76, - 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x49, 0x6e, 0x66, - 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x4e, 0x75, 0x6d, 0x62, - 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, - 0x22, 0xcd, 0x02, 0x0a, 0x0b, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x49, 0x6e, 0x66, 0x6f, - 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x49, 0x64, - 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, - 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x41, 0x6d, 0x6f, - 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x4f, 0x72, 0x64, 0x65, 0x72, - 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x55, 0x6e, 0x69, 0x74, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x55, 0x6e, 0x69, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x49, 0x6e, - 0x76, 0x6f, 0x69, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x49, 0x6e, 0x76, - 0x6f, 0x69, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x43, 0x61, 0x72, 0x72, 0x69, 0x65, 0x72, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x43, 0x61, 0x72, 0x72, 0x69, 0x65, 0x72, 0x12, 0x18, - 0x0a, 0x07, 0x57, 0x61, 0x79, 0x62, 0x69, 0x6c, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x57, 0x61, 0x79, 0x62, 0x69, 0x6c, 0x6c, 0x12, 0x1c, 0x0a, 0x09, 0x53, 0x61, 0x6c, 0x65, - 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x53, 0x61, 0x6c, - 0x65, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x56, 0x61, 0x6c, 0x6f, 0x72, 0x65, - 0x6d, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x56, 0x61, 0x6c, 0x6f, 0x72, 0x65, 0x6d, - 0x12, 0x1c, 0x0a, 0x09, 0x57, 0x61, 0x72, 0x65, 0x68, 0x6f, 0x75, 0x73, 0x65, 0x18, 0x0a, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x09, 0x57, 0x61, 0x72, 0x65, 0x68, 0x6f, 0x75, 0x73, 0x65, 0x12, 0x16, - 0x0a, 0x06, 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, - 0x41, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x0f, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, - 0x62, 0x6c, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0f, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, - 0x22, 0x77, 0x0a, 0x1f, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, - 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x12, 0x2e, 0x0a, 0x0b, 0x50, 0x72, 0x6f, - 0x64, 0x75, 0x63, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, - 0x2e, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0b, 0x50, 0x72, - 0x6f, 0x64, 0x75, 0x63, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x22, 0x66, 0x0a, 0x1e, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x53, 0x61, 0x6c, 0x65, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x4e, - 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x4e, 0x75, 0x6d, - 0x62, 0x65, 0x72, 0x12, 0x2c, 0x0a, 0x11, 0x53, 0x61, 0x6c, 0x65, 0x73, 0x44, 0x65, 0x74, 0x61, - 0x69, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, - 0x53, 0x61, 0x6c, 0x65, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x22, 0x47, 0x0a, 0x1f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x61, 0x6c, 0x65, 0x73, - 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x32, 0xa1, 0x02, 0x0a, 0x17, 0x70, - 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x53, - 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x46, 0x0a, 0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x17, 0x2e, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x70, 0x65, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5e, - 0x0a, 0x17, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x50, 0x72, - 0x6f, 0x64, 0x75, 0x63, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1f, 0x2e, 0x47, 0x65, 0x74, 0x49, - 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x49, - 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x47, 0x65, 0x74, - 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, - 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5e, - 0x0a, 0x17, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x61, 0x6c, 0x65, 0x73, 0x44, 0x65, 0x74, - 0x61, 0x69, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1f, 0x2e, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x53, 0x61, 0x6c, 0x65, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x53, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x53, 0x61, 0x6c, 0x65, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x15, - 0x5a, 0x13, 0x2e, 0x2f, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x5f, 0x69, 0x6e, 0x76, 0x65, - 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x32, 0xa1, 0x02, 0x0a, 0x17, 0x70, 0x72, 0x6f, 0x64, 0x75, + 0x63, 0x74, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x53, 0x65, 0x72, 0x76, 0x69, + 0x63, 0x65, 0x12, 0x46, 0x0a, 0x0f, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x70, 0x65, 0x72, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x17, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x70, + 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, + 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5e, 0x0a, 0x17, 0x47, 0x65, + 0x74, 0x49, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, + 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1f, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x76, 0x65, 0x6e, + 0x74, 0x6f, 0x72, 0x79, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x76, 0x65, + 0x6e, 0x74, 0x6f, 0x72, 0x79, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x49, 0x6e, 0x66, 0x6f, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x5e, 0x0a, 0x17, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x53, 0x61, 0x6c, 0x65, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1f, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x61, + 0x6c, 0x65, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, + 0x61, 0x6c, 0x65, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x15, 0x5a, 0x13, 0x2e, 0x2f, + 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x5f, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6f, 0x72, + 0x79, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( diff --git a/router/index.go b/router/index.go index 94aae0a..9f70e7d 100644 --- a/router/index.go +++ b/router/index.go @@ -200,5 +200,14 @@ codeGroup.GET("getCodeList", codeApi.GetCodeList) //鑾峰彇缂栫爜鍒楄〃 codeGroup.POST("getAutoCode", codeApi.GetAutoCode) //鑾峰彇缂栫爜鍒楄〃 } + + //绯荤粺璁剧疆 + systemSetGroup := PrivateGroup.Group("system") + systemSetApi := v1.SystemSetApi{} + { + systemSetGroup.GET("getSystemSet", systemSetApi.GetSystemSet) + systemSetGroup.POST("saveSystemSet", systemSetApi.SaveSystemSet) + } + return Router } diff --git a/service/system_set_service.go b/service/system_set_service.go new file mode 100644 index 0000000..eba7035 --- /dev/null +++ b/service/system_set_service.go @@ -0,0 +1,22 @@ +package service + +import ( + "aps_crm/constvar" + "aps_crm/model" +) + +func GetSystemSet() (map[string]interface{}, error) { + all, err := model.NewSystemSetSearch().FindAll() + if err != nil { + return nil, err + } + crmMap := constvar.SystemSet[`CRM`].(map[string]interface{}) + for _, set := range all { + if set.SystemType == "CRM" { + if _, ok := crmMap[set.Name]; ok { + crmMap[set.Name].(map[string]interface{})["value"] = set.Value + } + } + } + return crmMap, nil +} -- Gitblit v1.8.0