From a749e859e27e1046a4e018baadbe18a7c5e01b0d Mon Sep 17 00:00:00 2001 From: wangpengfei <274878379@qq.com> Date: 星期三, 09 八月 2023 14:30:23 +0800 Subject: [PATCH] fix --- api/v1/client.go | 405 +++++++++++++++++++++++++++++---------------------------- 1 files changed, 203 insertions(+), 202 deletions(-) diff --git a/api/v1/client.go b/api/v1/client.go index ae8c16e..1162b78 100644 --- a/api/v1/client.go +++ b/api/v1/client.go @@ -1,202 +1,203 @@ -package v1 - -import ( - "aps_crm/model" - "aps_crm/model/request" - "aps_crm/model/response" - "aps_crm/pkg/contextx" - "aps_crm/pkg/ecode" - "github.com/gin-gonic/gin" -) - -type ClientApi struct{} - -// Add -// -// @Tags Client -// @Summary 娣诲姞瀹㈡埛 -// @Produce application/json -// @Param object body request.AddClient true "鏌ヨ鍙傛暟" -// @Success 200 {object} contextx.Response{} -// @Router /api/client/add [post] -func (cli *ClientApi) Add(c *gin.Context) { - var params request.AddClient - ctx, ok := contextx.NewContext(c, ¶ms) - if !ok { - return - } - - errCode, client := checkClientParams(params.Client) - if errCode != ecode.OK { - ctx.Fail(errCode) - return - } - - errCode = clientService.AddClient(client, params.SalesLeadsId) - if errCode != ecode.OK { - ctx.Fail(errCode) - return - } - - ctx.Ok() -} - -func checkClientParams(params request.Client) (int, *model.Client) { - client := new(model.Client) - //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 - - t, err := checkTimeFormat(params.NextVisitTime) - if err != nil { - return ecode.InvalidParams, nil - } - - client.NextVisitTime = t - - t, err = checkTimeFormat(params.LatestServiceTime) - if err != nil { - return ecode.InvalidParams, nil - } - - client.LatestServiceTime = t - - t, err = checkTimeFormat(params.RegistrationTime) - if err != nil { - return ecode.InvalidParams, nil - } - - client.RegistrationTime = t - - client.ClientTypeId = params.ClientTypeId - client.ClientOriginId = params.ClientOriginId - client.ClientLevelId = params.ClientLevelId - client.DetailAddress = params.DetailAddress - client.Remark = params.Remark - client.Number = params.Number - client.ServiceMemberId = params.ServiceMemberId - client.ProvinceId = params.ProvinceId - client.CityId = params.CityId - client.RegionId = params.RegionId - client.CountryId = params.CountryId - client.Business.BusinessScope = params.BusinessScope - client.Business.Representative = params.Representative - client.Business.RegisteredCapitalId = params.RegisteredCapitalId - client.Business.IndustryId = params.IndustryId - client.Business.EnterpriseNatureId = params.EnterpriseNatureId - client.Business.EnterpriseScaleId = params.EnterpriseScaleId - - 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} - } - - return ecode.OK, client -} - -// Delete -// -// @Tags Client -// @Summary 鍒犻櫎瀹㈡埛 -// @Produce application/json -// @Param object body request.DeleteClient true "鏌ヨ鍙傛暟" -// @Success 200 {object} contextx.Response{} -// @Router /api/client/delete [delete] -func (cli *ClientApi) Delete(c *gin.Context) { - var params request.DeleteClient - ctx, ok := contextx.NewContext(c, ¶ms) - if !ok { - return - } - - errCode := clientService.DeleteClient(params.Ids) - if errCode != ecode.OK { - ctx.Fail(errCode) - return - } - - ctx.Ok() -} - -// Update -// -// @Tags Client -// @Summary 鏇存柊瀹㈡埛 -// @Produce application/json -// @Param object body request.UpdateClient true "鏌ヨ鍙傛暟" -// @Success 200 {object} contextx.Response{} -// @Router /api/client/update [put] -func (cli *ClientApi) Update(c *gin.Context) { - var params request.UpdateClient - ctx, ok := contextx.NewContext(c, ¶ms) - if !ok { - return - } - - errCode, client := checkClientParams(params.Client) - if errCode != ecode.OK { - ctx.Fail(errCode) - return - } - - // check id - if params.Id == 0 { - ctx.Fail(ecode.InvalidParams) - return - } - - client.Id = params.Id - - errCode = clientService.UpdateClient(client) - 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 - } - - 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), - }) -} +package v1 + +import ( + "aps_crm/model" + "aps_crm/model/request" + "aps_crm/model/response" + "aps_crm/pkg/contextx" + "aps_crm/pkg/ecode" + "github.com/gin-gonic/gin" +) + +type ClientApi struct{} + +// Add +// +// @Tags Client +// @Summary 娣诲姞瀹㈡埛 +// @Produce application/json +// @Param object body request.AddClient true "鏌ヨ鍙傛暟" +// @Success 200 {object} contextx.Response{} +// @Router /api/client/add [post] +func (cli *ClientApi) Add(c *gin.Context) { + var params request.AddClient + ctx, ok := contextx.NewContext(c, ¶ms) + if !ok { + return + } + + errCode, client := checkClientParams(params.Client) + if errCode != ecode.OK { + ctx.Fail(errCode) + return + } + + errCode = clientService.AddClient(client, params.SalesLeadsId) + if errCode != ecode.OK { + ctx.Fail(errCode) + return + } + + ctx.Ok() +} + +func checkClientParams(params request.Client) (int, *model.Client) { + client := new(model.Client) + //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 + //} + + t, err := checkTimeFormat(params.NextVisitTime) + if err != nil { + return ecode.InvalidParams, nil + } + + client.NextVisitTime = t + + t, err = checkTimeFormat(params.LatestServiceTime) + if err != nil { + return ecode.InvalidParams, nil + } + + client.LatestServiceTime = t + + t, err = checkTimeFormat(params.RegistrationTime) + if err != nil { + return ecode.InvalidParams, nil + } + + client.RegistrationTime = t + + client.ClientTypeId = params.ClientTypeId + 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 + client.ProvinceId = params.ProvinceId + client.CityId = params.CityId + client.RegionId = params.RegionId + client.CountryId = params.CountryId + client.Business.BusinessScope = params.BusinessScope + client.Business.Representative = params.Representative + client.Business.RegisteredCapitalId = params.RegisteredCapitalId + 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 + + errCode, contact := checkContactParams(params.Contact) + if errCode != ecode.OK { + return errCode, nil + } + client.Contacts = []model.Contact{contact} + } + + return ecode.OK, client +} + +// Delete +// +// @Tags Client +// @Summary 鍒犻櫎瀹㈡埛 +// @Produce application/json +// @Param object body request.DeleteClient true "鏌ヨ鍙傛暟" +// @Success 200 {object} contextx.Response{} +// @Router /api/client/delete [delete] +func (cli *ClientApi) Delete(c *gin.Context) { + var params request.DeleteClient + ctx, ok := contextx.NewContext(c, ¶ms) + if !ok { + return + } + + errCode := clientService.DeleteClient(params.Ids) + if errCode != ecode.OK { + ctx.Fail(errCode) + return + } + + ctx.Ok() +} + +// Update +// +// @Tags Client +// @Summary 鏇存柊瀹㈡埛 +// @Produce application/json +// @Param object body request.UpdateClient true "鏌ヨ鍙傛暟" +// @Success 200 {object} contextx.Response{} +// @Router /api/client/update [put] +func (cli *ClientApi) Update(c *gin.Context) { + var params request.UpdateClient + ctx, ok := contextx.NewContext(c, ¶ms) + if !ok { + return + } + + errCode, client := checkClientParams(params.Client) + if errCode != ecode.OK { + ctx.Fail(errCode) + return + } + + // check id + if params.Id == 0 { + ctx.Fail(ecode.InvalidParams) + return + } + + client.Id = params.Id + + errCode = clientService.UpdateClient(client) + 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 + } + + 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), + }) +} -- Gitblit v1.8.0