From 2030ec81f18f4ec9ea1800f13046acafff6d50f7 Mon Sep 17 00:00:00 2001 From: yinbentan <yinbentan@live.com> Date: 星期四, 26 九月 2024 00:48:59 +0800 Subject: [PATCH] 添加grpc方法:客户信息维护 --- api/v1/client.go | 54 ++++++++++++++++++++++++++---------------------------- 1 files changed, 26 insertions(+), 28 deletions(-) diff --git a/api/v1/client.go b/api/v1/client.go index bac72a8..6caa2bf 100644 --- a/api/v1/client.go +++ b/api/v1/client.go @@ -28,38 +28,26 @@ return } - if params.MemberId == 0 { - userInfo := utils.GetUserInfo(c) - if userInfo.UserType == constvar.UserTypeSub { - params.MemberId = userInfo.CrmUserId - } - } - errCode, client := checkClientParams(params.Client) if errCode != ecode.OK { ctx.Fail(errCode) return } - //CreatorId, b := c.Get("claims") - //if !b { - // ctx.Fail(ecode.JWTParseErr) - // return - //} - // - //client.CreatorId = CreatorId.(int) + count, err := model.NewClientSearch(nil).SetNumber(client.Number).Count() + if err != nil { + ctx.FailWithMsg(ecode.UnknownErr, "缂栫爜楠岃瘉澶辫触") + return + } + if count > 0 { + ctx.FailWithMsg(ecode.UnknownErr, "缂栫爜宸插瓨鍦�") + return + } errCode = clientService.AddClient(client, params.SalesLeadsId) if errCode != ecode.OK { ctx.Fail(errCode) return - } - if params.CodeRule.Method == 1 { - autoCode := model.GetAutoCode(client.Id, ¶ms.CodeRule) - m := map[string]interface{}{ - "number": autoCode, - } - _ = model.NewClientSearch(nil).SetId(client.Id).UpdateByMap(m) } ctx.Ok() @@ -205,8 +193,10 @@ // @Tags Client // @Summary 瀹㈡埛鍒楄〃 // @Produce application/json -// @Param object body request.GetClientList true "鍙傛暟" -// @Success 200 {object} contextx.Response{data=response.ClientResponse} +// +// @Param object body request.GetClientList true "鍙傛暟" +// @Success 200 {object} contextx.Response{data=response.ClientResponse} +// // @Router /api/client/list [post] func (cli *ClientApi) List(c *gin.Context) { var params request.GetClientList @@ -215,12 +205,20 @@ return } - userInfo := utils.GetUserInfo(c) - if userInfo.UserType == constvar.UserTypeSub { - if params.SearchMap == nil { - params.SearchMap = make(map[string]interface{}, 0) + var isPublic bool + if params.SearchMap != nil && params.SearchMap["is_public"] != nil { + if v, ok := params.SearchMap["is_public"].(bool); ok { + isPublic = v } - params.SearchMap["member_id"] = userInfo.CrmUserId + } + if !isPublic { + userInfo := utils.GetUserInfo(c) + if userInfo.UserType == constvar.UserTypeSub { + if params.SearchMap == nil { + params.SearchMap = make(map[string]interface{}, 0) + } + params.SearchMap["member_ids"] = userInfo.SubUserIds + } } clients, total, errCode := clientService.GetClientList(params.Page, params.PageSize, params.SearchMap) -- Gitblit v1.8.0