From 63b531279a8ab1d609910e7db53add83bbc0b97a Mon Sep 17 00:00:00 2001
From: zhangqian <zhangqian@123.com>
Date: 星期二, 17 十月 2023 20:21:01 +0800
Subject: [PATCH] 添加默认数据
---
api/v1/followRecord.go | 187 ++++++++++++++++++++++++++++------------------
1 files changed, 112 insertions(+), 75 deletions(-)
diff --git a/api/v1/followRecord.go b/api/v1/followRecord.go
index 8000585..d64b85a 100644
--- a/api/v1/followRecord.go
+++ b/api/v1/followRecord.go
@@ -1,14 +1,15 @@
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/service"
+ "aps_crm/utils"
+ "errors"
"github.com/gin-gonic/gin"
- "strconv"
"time"
)
@@ -35,37 +36,27 @@
return
}
+ if followRecord.MemberId == 0 {
+ userInfo := utils.GetUserInfo(c)
+ if userInfo.UserType == constvar.UserTypeSub {
+ followRecord.MemberId = userInfo.CrmUserId
+ }
+ }
+
errCode = followRecordService.AddFollowRecord(followRecord)
if errCode != ecode.OK {
ctx.Fail(errCode)
return
}
+ if params.FollowRecord.CodeRule.Method == 1 {
+ autoCode := model.GetAutoCode(followRecord.Id, ¶ms.FollowRecord.CodeRule)
+ m := map[string]interface{}{
+ "number": autoCode,
+ }
+ _ = model.NewFollowRecordSearch().SetId(followRecord.Id).UpdateMap(m)
+ }
ctx.Ok()
-}
-
-// List
-//
-// @Tags FollowRecord
-// @Summary 鑾峰彇璺熻繘璁板綍鍒楄〃
-// @Produce application/json
-// @Success 200 {object} contextx.Response{data=response.FollowRecordResponse}
-// @Router /api/followRecord/list [get]
-func (fr *FollowRecordApi) List(c *gin.Context) {
- ctx, ok := contextx.NewContext(c, nil)
- if !ok {
- return
- }
-
- errCode, followRecordList := followRecordService.GetFollowRecordList()
- if errCode != ecode.OK {
- ctx.Fail(errCode)
- return
- }
-
- ctx.OkWithDetailed(response.FollowRecordResponse{
- List: followRecordList,
- })
}
// Delete
@@ -73,17 +64,17 @@
// @Tags FollowRecord
// @Summary 鍒犻櫎璺熻繘璁板綍
// @Produce application/json
-// @Param id path string true "璺熻繘璁板綍id"
+// @Param object body request.DeleteFollowRecord true "鏌ヨ鍙傛暟"
// @Success 200 {object} contextx.Response{}
-// @Router /api/followRecord/delete/{id} [delete]
+// @Router /api/followRecord/delete [delete]
func (fr *FollowRecordApi) Delete(c *gin.Context) {
- ctx, ok := contextx.NewContext(c, nil)
+ var params request.DeleteFollowRecord
+ ctx, ok := contextx.NewContext(c, ¶ms)
if !ok {
return
}
- id, _ := strconv.Atoi(c.Param("id"))
- errCode := followRecordService.DeleteFollowRecord(id)
+ errCode := followRecordService.DeleteFollowRecord(params.Ids)
if errCode != ecode.OK {
ctx.Fail(errCode)
return
@@ -128,42 +119,42 @@
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
- }
+ //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)
@@ -192,31 +183,77 @@
followRecordModel.Purpose = followRecord.Purpose
followRecordModel.Content = followRecord.Content
followRecordModel.Record = followRecord.Record
+ followRecordModel.CodeStandID = followRecord.CodeStandID
return ecode.OK, &followRecordModel
}
// checkTimeFormat
// 妫�鏌ユ椂闂存牸寮�
-func checkTimeFormat(t string) (time.Time, error) {
+func checkTimeFormat(t string) (*model.CustomTime, error) {
if t == "" {
- t = "1970-01-01T00:00:00+08:00"
+ return nil, nil
}
location, err := time.LoadLocation("Asia/Shanghai")
if err != nil {
- return time.Time{}, err
+ return nil, err
}
- tt, err := time.Parse("2006-01-02T15:04:05.000Z", t)
+ tt, err := time.Parse("2006-01-02", t)
if err == nil {
- return tt.In(location), nil
+ ret := tt.In(location)
+ tmp := model.CustomTime(ret)
+ return &tmp, nil
}
- tt, err = time.Parse("2006-01-02T15:04:05-07:00", t)
+ tt, err = time.Parse("2006-01-02 15:04:05", t)
if err == nil {
- return tt.In(location), nil
+ ret := tt.In(location)
+ tmp := model.CustomTime(ret)
+ return &tmp, nil
}
- return time.Time{}, err
+ //tt, err = time.Parse("2006-01-02T15:04:05-07:00", t)
+ //if err == nil {
+ // ret := tt.In(location)
+ // return &ret, nil
+ //}
+
+ return nil, errors.New("invalid time format")
+}
+
+// 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
+ }
+
+ 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
+ }
+
+ 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