From f26d6d27c5f756c88a2a44f2cf0125f277ff177e Mon Sep 17 00:00:00 2001 From: wangpengfei <274878379@qq.com> Date: 星期四, 10 八月 2023 11:11:14 +0800 Subject: [PATCH] fix --- api/v1/followRecord.go | 446 +++++++++++++++++++++++++++--------------------------- 1 files changed, 223 insertions(+), 223 deletions(-) diff --git a/api/v1/followRecord.go b/api/v1/followRecord.go index 75501dc..e015177 100644 --- a/api/v1/followRecord.go +++ b/api/v1/followRecord.go @@ -1,223 +1,223 @@ -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" - "time" -) - -type FollowRecordApi struct{} - -// Add -// -// @Tags FollowRecord -// @Summary 娣诲姞璺熻繘璁板綍 -// @Produce application/json -// @Param object body request.AddFollowRecord true "鏌ヨ鍙傛暟" -// @Success 200 {object} contextx.Response{} -// @Router /api/followRecord/add [post] -func (fr *FollowRecordApi) Add(c *gin.Context) { - var params request.AddFollowRecord - ctx, ok := contextx.NewContext(c, ¶ms) - if !ok { - return - } - - errCode, followRecord := checkFollowRecordParams(params.FollowRecord) - if errCode != ecode.OK { - ctx.Fail(errCode) - return - } - - errCode = followRecordService.AddFollowRecord(followRecord) - if errCode != ecode.OK { - ctx.Fail(errCode) - return - } - - ctx.Ok() -} - -// Delete -// -// @Tags FollowRecord -// @Summary 鍒犻櫎璺熻繘璁板綍 -// @Produce application/json -// @Param object body request.DeleteFollowRecord true "鏌ヨ鍙傛暟" -// @Success 200 {object} contextx.Response{} -// @Router /api/followRecord/delete [delete] -func (fr *FollowRecordApi) Delete(c *gin.Context) { - var params request.DeleteFollowRecord - ctx, ok := contextx.NewContext(c, ¶ms) - if !ok { - return - } - - errCode := followRecordService.DeleteFollowRecord(params.Ids) - if errCode != ecode.OK { - ctx.Fail(errCode) - return - } - - ctx.Ok() -} - -// Update -// -// @Tags FollowRecord -// @Summary 鏇存柊璺熻繘璁板綍 -// @Produce application/json -// @Param object body request.UpdateFollowRecord true "鏌ヨ鍙傛暟" -// @Success 200 {object} contextx.Response{} -// @Router /api/followRecord/update [put] -func (fr *FollowRecordApi) Update(c *gin.Context) { - var params request.UpdateFollowRecord - ctx, ok := contextx.NewContext(c, ¶ms) - if !ok { - return - } - - errCode, followRecord := checkFollowRecordParams(params.FollowRecord) - if errCode != ecode.OK { - ctx.Fail(errCode) - return - } - - followRecord.Id = params.Id - errCode = followRecordService.UpdateFollowRecord(followRecord) - if errCode != ecode.OK { - ctx.Fail(errCode) - return - } - - ctx.Ok() -} - -// checkFollowRecordParams -// 妫�鏌ヨ窡杩涜褰曞弬鏁� -func checkFollowRecordParams(followRecord request.FollowRecord) (int, *model.FollowRecord) { - var followRecordModel model.FollowRecord - - //if followRecord.ClientId != 0 { - // // check client exist - // if service.CheckClientExist(followRecord.ClientId) != ecode.OK { - // return ecode.ClientNotExist, &followRecordModel - // } - //} - // - //if followRecord.ContactId != 0 { - // // check contact exist - // if service.CheckContactExist(followRecord.ContactId) != ecode.OK { - // return ecode.ContactNotExist, &followRecordModel - // } - //} - // - //if followRecord.SalesLeadsId != 0 { - // // check sales leads exist - // if service.CheckSalesLeadsExist(followRecord.SalesLeadsId) != ecode.OK { - // return ecode.SalesLeadsNotExist, &followRecordModel - // } - //} - // - //// check member id - //if followRecord.MemberId == 0 { - // // todo check member exist - // return ecode.InvalidParams, &followRecordModel - //} - // - //// check number - //if followRecord.Number == "" { - // return ecode.InvalidParams, &followRecordModel - //} - // - //// check follow content - //if followRecord.Content == "" { - // return ecode.InvalidParams, &followRecordModel - //} - - // check follow time - t, err := checkTimeFormat(followRecord.FollowTime) - if err != nil { - return ecode.InvalidParams, &followRecordModel - } - - followRecordModel.FollowTime = t - - t, err = checkTimeFormat(followRecord.NextFollowTime) - if err != nil { - return ecode.InvalidParams, &followRecordModel - } - followRecordModel.NextFollowTime = t - - followRecordModel.ClientId = followRecord.ClientId - followRecordModel.Content = followRecord.Content - followRecordModel.MemberId = followRecord.MemberId - followRecordModel.Number = followRecord.Number - followRecordModel.ClientStatusId = followRecord.ClientStatusId - followRecordModel.ContactId = followRecord.ContactId - followRecordModel.Topic = followRecord.Topic - followRecordModel.SalesLeadsId = followRecord.SalesLeadsId - followRecordModel.SaleChanceId = followRecord.SaleChanceId - followRecordModel.ContactInformationId = followRecord.ContactInformationId - followRecordModel.Purpose = followRecord.Purpose - followRecordModel.Content = followRecord.Content - followRecordModel.Record = followRecord.Record - - return ecode.OK, &followRecordModel -} - -// checkTimeFormat -// 妫�鏌ユ椂闂存牸寮� -func checkTimeFormat(t string) (time.Time, error) { - if t == "" { - t = "1900-01-01T00:00:00+08:00" - } - - location, err := time.LoadLocation("Asia/Shanghai") - if err != nil { - return time.Time{}, err - } - - tt, err := time.Parse("2006-01-02T15:04:05.000Z", t) - if err == nil { - return tt.In(location), nil - } - - tt, err = time.Parse("2006-01-02T15:04:05-07:00", t) - if err == nil { - return tt.In(location), nil - } - - return time.Time{}, err -} - -// List -// -// @Tags FollowRecord -// @Summary 鍥炶璁板綍鍒楄〃 -// @Produce application/json -// @Param object body request.GetFollowRecordList true "鍙傛暟" -// @Success 200 {object} contextx.Response{data=response.FollowRecordResponse} -// @Router /api/followRecord/list [post] -func (fr *FollowRecordApi) List(c *gin.Context) { - var params request.GetFollowRecordList - ctx, ok := contextx.NewContext(c, ¶ms) - if !ok { - return - } - - followRecords, total, errCode := followRecordService.GetFollowRecordList(params.Page, params.PageSize, params.Keyword) - if errCode != ecode.OK { - ctx.Fail(errCode) - return - } - - ctx.OkWithDetailed(response.FollowRecordResponse{ - List: followRecords, - 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" + "time" +) + +type FollowRecordApi struct{} + +// Add +// +// @Tags FollowRecord +// @Summary 娣诲姞璺熻繘璁板綍 +// @Produce application/json +// @Param object body request.AddFollowRecord true "鏌ヨ鍙傛暟" +// @Success 200 {object} contextx.Response{} +// @Router /api/followRecord/add [post] +func (fr *FollowRecordApi) Add(c *gin.Context) { + var params request.AddFollowRecord + ctx, ok := contextx.NewContext(c, ¶ms) + if !ok { + return + } + + errCode, followRecord := checkFollowRecordParams(params.FollowRecord) + if errCode != ecode.OK { + ctx.Fail(errCode) + return + } + + errCode = followRecordService.AddFollowRecord(followRecord) + if errCode != ecode.OK { + ctx.Fail(errCode) + return + } + + ctx.Ok() +} + +// Delete +// +// @Tags FollowRecord +// @Summary 鍒犻櫎璺熻繘璁板綍 +// @Produce application/json +// @Param object body request.DeleteFollowRecord true "鏌ヨ鍙傛暟" +// @Success 200 {object} contextx.Response{} +// @Router /api/followRecord/delete [delete] +func (fr *FollowRecordApi) Delete(c *gin.Context) { + var params request.DeleteFollowRecord + ctx, ok := contextx.NewContext(c, ¶ms) + if !ok { + return + } + + errCode := followRecordService.DeleteFollowRecord(params.Ids) + if errCode != ecode.OK { + ctx.Fail(errCode) + return + } + + ctx.Ok() +} + +// Update +// +// @Tags FollowRecord +// @Summary 鏇存柊璺熻繘璁板綍 +// @Produce application/json +// @Param object body request.UpdateFollowRecord true "鏌ヨ鍙傛暟" +// @Success 200 {object} contextx.Response{} +// @Router /api/followRecord/update [put] +func (fr *FollowRecordApi) Update(c *gin.Context) { + var params request.UpdateFollowRecord + ctx, ok := contextx.NewContext(c, ¶ms) + if !ok { + return + } + + errCode, followRecord := checkFollowRecordParams(params.FollowRecord) + if errCode != ecode.OK { + ctx.Fail(errCode) + return + } + + followRecord.Id = params.Id + errCode = followRecordService.UpdateFollowRecord(followRecord) + if errCode != ecode.OK { + ctx.Fail(errCode) + return + } + + ctx.Ok() +} + +// checkFollowRecordParams +// 妫�鏌ヨ窡杩涜褰曞弬鏁� +func checkFollowRecordParams(followRecord request.FollowRecord) (int, *model.FollowRecord) { + var followRecordModel model.FollowRecord + + //if followRecord.ClientId != 0 { + // // check client exist + // if service.CheckClientExist(followRecord.ClientId) != ecode.OK { + // return ecode.ClientNotExist, &followRecordModel + // } + //} + // + //if followRecord.ContactId != 0 { + // // check contact exist + // if service.CheckContactExist(followRecord.ContactId) != ecode.OK { + // return ecode.ContactNotExist, &followRecordModel + // } + //} + // + //if followRecord.SalesLeadsId != 0 { + // // check sales leads exist + // if service.CheckSalesLeadsExist(followRecord.SalesLeadsId) != ecode.OK { + // return ecode.SalesLeadsNotExist, &followRecordModel + // } + //} + // + //// check member id + //if followRecord.MemberId == 0 { + // // todo check member exist + // return ecode.InvalidParams, &followRecordModel + //} + // + //// check number + //if followRecord.Number == "" { + // return ecode.InvalidParams, &followRecordModel + //} + // + //// check follow content + //if followRecord.Content == "" { + // return ecode.InvalidParams, &followRecordModel + //} + + // check follow time + t, err := checkTimeFormat(followRecord.FollowTime) + if err != nil { + return ecode.InvalidParams, &followRecordModel + } + + followRecordModel.FollowTime = t + + t, err = checkTimeFormat(followRecord.NextFollowTime) + if err != nil { + return ecode.InvalidParams, &followRecordModel + } + followRecordModel.NextFollowTime = t + + followRecordModel.ClientId = followRecord.ClientId + followRecordModel.Content = followRecord.Content + followRecordModel.MemberId = followRecord.MemberId + followRecordModel.Number = followRecord.Number + followRecordModel.ClientStatusId = followRecord.ClientStatusId + followRecordModel.ContactId = followRecord.ContactId + followRecordModel.Topic = followRecord.Topic + followRecordModel.SalesLeadsId = followRecord.SalesLeadsId + followRecordModel.SaleChanceId = followRecord.SaleChanceId + followRecordModel.ContactInformationId = followRecord.ContactInformationId + followRecordModel.Purpose = followRecord.Purpose + followRecordModel.Content = followRecord.Content + followRecordModel.Record = followRecord.Record + + return ecode.OK, &followRecordModel +} + +// checkTimeFormat +// 妫�鏌ユ椂闂存牸寮� +func checkTimeFormat(t string) (time.Time, error) { + if t == "" { + t = "1900-01-01T00:00:00+08:00" + } + + location, err := time.LoadLocation("Asia/Shanghai") + if err != nil { + return time.Time{}, err + } + + tt, err := time.Parse("2006-01-02T15:04:05.000Z", t) + if err == nil { + return tt.In(location), nil + } + + tt, err = time.Parse("2006-01-02T15:04:05-07:00", t) + if err == nil { + return tt.In(location), nil + } + + return time.Time{}, err +} + +// List +// +// @Tags FollowRecord +// @Summary 鍥炶璁板綍鍒楄〃 +// @Produce application/json +// @Param object body request.GetFollowRecordList true "鍙傛暟" +// @Success 200 {object} contextx.Response{data=response.FollowRecordResponse} +// @Router /api/followRecord/list [post] +func (fr *FollowRecordApi) List(c *gin.Context) { + var params request.GetFollowRecordList + ctx, ok := contextx.NewContext(c, ¶ms) + if !ok { + return + } + + followRecords, total, errCode := followRecordService.GetFollowRecordList(params.Page, params.PageSize, params.SearchMap) + if errCode != ecode.OK { + ctx.Fail(errCode) + return + } + + ctx.OkWithDetailed(response.FollowRecordResponse{ + List: followRecords, + Count: int(total), + }) +} -- Gitblit v1.8.0