zhangqian
2023-10-13 7438f17c0b3a9f79ee5890c554bedc64c362859b
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,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
@@ -59,7 +67,6 @@
   //if params.MemberId == 0 {
   //   return ecode.InvalidParams, nil
   //}
   client.MemberId = params.MemberId
   t, err := checkTimeFormat(params.NextVisitTime)
   if err != nil {
@@ -86,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
@@ -99,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
}
@@ -167,7 +176,7 @@
   client.Id = params.Id
   errCode = clientService.UpdateClient(client)
   errCode = clientService.UpdateClient(client, params.ContactId)
   if errCode != ecode.OK {
      ctx.Fail(errCode)
      return
@@ -191,6 +200,14 @@
      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)
@@ -202,3 +219,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, &params)
   if !ok {
      return
   }
   errCode := clientService.CheckName(params.Name)
   if errCode != ecode.OK {
      ctx.Fail(errCode)
      return
   }
   ctx.Ok()
}