From 18c42494735992c42d63c7858f5fdb31069d0342 Mon Sep 17 00:00:00 2001
From: jiangshuai <291802688@qq.com>
Date: 星期四, 23 十一月 2023 20:11:31 +0800
Subject: [PATCH] 获取客户列表服务端
---
api/v1/client.go | 78 ++++++++++++++++++++++++++++++++------
1 files changed, 65 insertions(+), 13 deletions(-)
diff --git a/api/v1/client.go b/api/v1/client.go
index 3be607b..ff33fad 100644
--- a/api/v1/client.go
+++ b/api/v1/client.go
@@ -1,11 +1,13 @@
package v1
import (
+ "aps_crm/constvar"
"aps_crm/model"
"aps_crm/model/request"
"aps_crm/model/response"
"aps_crm/pkg/contextx"
"aps_crm/pkg/ecode"
+ "aps_crm/utils"
"github.com/gin-gonic/gin"
)
@@ -32,9 +34,17 @@
return
}
- // check member exist
+ 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)
+ errCode = clientService.AddClient(client, params.SalesLeadsId)
if errCode != ecode.OK {
ctx.Fail(errCode)
return
@@ -59,7 +69,6 @@
//if params.MemberId == 0 {
// return ecode.InvalidParams, nil
//}
- client.MemberId = params.MemberId
t, err := checkTimeFormat(params.NextVisitTime)
if err != nil {
@@ -86,6 +95,7 @@
client.ClientOriginId = params.ClientOriginId
client.ClientLevelId = params.ClientLevelId
client.DetailAddress = params.DetailAddress
+ client.ClientStatusId = params.ClientStatusId
client.Remark = params.Remark
client.Number = params.Number
client.ServiceMemberId = params.ServiceMemberId
@@ -99,17 +109,19 @@
client.Business.IndustryId = params.IndustryId
client.Business.EnterpriseNatureId = params.EnterpriseNatureId
client.Business.EnterpriseScaleId = params.EnterpriseScaleId
+ client.MemberId = params.MemberId
+ client.CodeStandID = params.CodeStandID
- if params.Contact.Name != "" {
- // assign the client's member id to contact when adding
- params.Contact.MemberId = params.MemberId
+ //if params.Contact.Name != "" {
+ // assign the client's member id to contact when adding
+ params.Contact.MemberId = params.MemberId
- errCode, contact := checkContactParams(params.Contact)
- if errCode != ecode.OK {
- return errCode, nil
- }
- client.Contacts = []model.Contact{contact}
+ errCode, contact := checkContactParams(params.Contact)
+ if errCode != ecode.OK {
+ return errCode, nil
}
+ client.Contacts = []model.Contact{contact}
+ //}
return ecode.OK, client
}
@@ -167,7 +179,7 @@
client.Id = params.Id
- errCode = clientService.UpdateClient(client)
+ errCode = clientService.UpdateClient(client, params.ContactId)
if errCode != ecode.OK {
ctx.Fail(errCode)
return
@@ -191,7 +203,23 @@
return
}
- clients, total, errCode := clientService.GetClientList(params.Page, params.PageSize, params.Keyword)
+ var isPublic bool
+ if params.SearchMap != nil && params.SearchMap["is_public"] != nil {
+ if v, ok := params.SearchMap["is_public"].(bool); ok {
+ isPublic = v
+ }
+ }
+ 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)
if errCode != ecode.OK {
ctx.Fail(errCode)
return
@@ -202,3 +230,27 @@
Count: int(total),
})
}
+
+// CheckName
+//
+// @Tags Client
+// @Summary 妫�鏌ュ鎴峰悕绉版槸鍚﹂噸澶�
+// @Produce application/json
+// @Param object body request.CheckClientName true "鍙傛暟"
+// @Success 200 {object} contextx.Response{}
+// @Router /api/client/checkName [post]
+func (cli *ClientApi) CheckName(c *gin.Context) {
+ var params request.CheckClientName
+ ctx, ok := contextx.NewContext(c, ¶ms)
+ if !ok {
+ return
+ }
+
+ errCode := clientService.CheckName(params.Name)
+ if errCode != ecode.OK {
+ ctx.Fail(errCode)
+ return
+ }
+
+ ctx.Ok()
+}
--
Gitblit v1.8.0