From 2e974a79678910d56e82aa2a8b2bf24f7ebc2d2d Mon Sep 17 00:00:00 2001
From: zhangqian <zhangqian@123.com>
Date: 星期五, 13 十月 2023 14:29:49 +0800
Subject: [PATCH] 报价单简单数据权限
---
api/v1/client.go | 149 ++++++++++++++++++++++++++++++++-----------------
1 files changed, 98 insertions(+), 51 deletions(-)
diff --git a/api/v1/client.go b/api/v1/client.go
index 8df8a21..6e45eb2 100644
--- a/api/v1/client.go
+++ b/api/v1/client.go
@@ -1,13 +1,14 @@
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"
- "strconv"
)
type ClientApi struct{}
@@ -33,9 +34,15 @@
return
}
- // check member exist
+ //CreatorId, b := c.Get("claims")
+ //if !b {
+ // ctx.Fail(ecode.JWTParseErr)
+ // return
+ //}
+ //
+ //client.CreatorId = CreatorId.(int)
- errCode = clientService.AddClient(client)
+ errCode = clientService.AddClient(client, params.SalesLeadsId)
if errCode != ecode.OK {
ctx.Fail(errCode)
return
@@ -44,45 +51,22 @@
ctx.Ok()
}
-// List
-//
-// @Tags Client
-// @Summary 鑾峰彇瀹㈡埛鍒楄〃
-// @Produce application/json
-// @Success 200 {object} contextx.Response{data=response.ClientResponse}
-// @Router /api/client/list [get]
-func (cli *ClientApi) List(c *gin.Context) {
- ctx, ok := contextx.NewContext(c, nil)
- if !ok {
- return
- }
-
- errCode, clients := clientService.GetClientList()
- if errCode != ecode.OK {
- ctx.Fail(errCode)
- return
- }
-
- ctx.OkWithDetailed(response.ClientResponse{List: clients})
-}
-
func checkClientParams(params request.Client) (int, *model.Client) {
client := new(model.Client)
- if params.Name == "" {
- return ecode.InvalidParams, nil
- }
+ //if params.Name == "" {
+ // return ecode.InvalidParams, nil
+ //}
client.Name = params.Name
- if params.ClientStatusId == 0 {
- return ecode.InvalidParams, nil
- }
- client.ClientStatusId = params.ClientStatusId
-
- if params.MemberId == 0 {
- return ecode.InvalidParams, nil
- }
- client.MemberId = params.MemberId
+ //if params.ClientStatusId == 0 {
+ // return ecode.InvalidParams, nil
+ //}
+ //client.ClientStatusId = params.ClientStatusId
+ //
+ //if params.MemberId == 0 {
+ // return ecode.InvalidParams, nil
+ //}
t, err := checkTimeFormat(params.NextVisitTime)
if err != nil {
@@ -109,6 +93,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
@@ -122,17 +107,18 @@
client.Business.IndustryId = params.IndustryId
client.Business.EnterpriseNatureId = params.EnterpriseNatureId
client.Business.EnterpriseScaleId = params.EnterpriseScaleId
+ client.MemberId = params.MemberId
- 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
}
@@ -142,17 +128,17 @@
// @Tags Client
// @Summary 鍒犻櫎瀹㈡埛
// @Produce application/json
-// @Param id path int true "瀹㈡埛ID"
+// @Param object body request.DeleteClient true "鏌ヨ鍙傛暟"
// @Success 200 {object} contextx.Response{}
-// @Router /api/client/delete/{id} [delete]
+// @Router /api/client/delete [delete]
func (cli *ClientApi) Delete(c *gin.Context) {
- ctx, ok := contextx.NewContext(c, nil)
+ var params request.DeleteClient
+ ctx, ok := contextx.NewContext(c, ¶ms)
if !ok {
return
}
- id, _ := strconv.Atoi(c.Param("id"))
- errCode := clientService.DeleteClient(id)
+ errCode := clientService.DeleteClient(params.Ids)
if errCode != ecode.OK {
ctx.Fail(errCode)
return
@@ -188,7 +174,68 @@
return
}
- errCode = clientService.UpdateClient(client)
+ client.Id = params.Id
+
+ errCode = clientService.UpdateClient(client, params.ContactId)
+ if errCode != ecode.OK {
+ ctx.Fail(errCode)
+ return
+ }
+
+ ctx.Ok()
+}
+
+// List
+//
+// @Tags Client
+// @Summary 瀹㈡埛鍒楄〃
+// @Produce application/json
+// @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
+ ctx, ok := contextx.NewContext(c, ¶ms)
+ if !ok {
+ return
+ }
+
+ userInfo := utils.GetUserInfo(c)
+ if userInfo.UserType == constvar.UserTypeSub {
+ if params.SearchMap == nil {
+ params.SearchMap = make(map[string]interface{}, 0)
+ }
+ params.SearchMap["member_id"] = userInfo.CrmUserId
+ }
+
+ clients, total, errCode := clientService.GetClientList(params.Page, params.PageSize, params.SearchMap)
+ if errCode != ecode.OK {
+ ctx.Fail(errCode)
+ return
+ }
+
+ ctx.OkWithDetailed(response.ClientResponse{
+ List: clients,
+ 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
--
Gitblit v1.8.0