yinbentan
2024-09-26 2030ec81f18f4ec9ea1800f13046acafff6d50f7
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"
)
@@ -29,6 +31,16 @@
   errCode, client := checkClientParams(params.Client)
   if errCode != ecode.OK {
      ctx.Fail(errCode)
      return
   }
   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
   }
@@ -98,17 +110,18 @@
   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
}
@@ -180,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
@@ -190,6 +205,22 @@
      return
   }
   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)