| | |
| | | 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 ContactApi struct{}
|
| | |
|
| | | // Add
|
| | | //
|
| | | // @Tags Contact
|
| | | // @Summary 添加联系人
|
| | | // @Produce application/json
|
| | | // @Param object body request.AddContact true "查询参数"
|
| | | // @Success 200 {object} contextx.Response{}
|
| | | // @Router /api/contact/add [post]
|
| | | func (con *ContactApi) Add(c *gin.Context) {
|
| | | var params request.AddContact
|
| | | ctx, ok := contextx.NewContext(c, ¶ms)
|
| | | if !ok {
|
| | | return
|
| | | }
|
| | |
|
| | | errCode, contact := checkContactParams(params.Contact)
|
| | | if errCode != ecode.OK {
|
| | | ctx.Fail(errCode)
|
| | | return
|
| | | }
|
| | |
|
| | | errCode = contactService.AddContact(&contact)
|
| | | if errCode != ecode.OK {
|
| | | ctx.Fail(errCode)
|
| | | return
|
| | | }
|
| | |
|
| | | ctx.Ok()
|
| | | }
|
| | |
|
| | | // Delete
|
| | | //
|
| | | // @Tags Contact
|
| | | // @Summary 删除联系人
|
| | | // @Produce application/json
|
| | | // @Param object body request.DeleteContact true "查询参数"
|
| | | // @Success 200 {object} contextx.Response{}
|
| | | // @Router /api/contact/delete [delete]
|
| | | func (con *ContactApi) Delete(c *gin.Context) {
|
| | | var params request.DeleteContact
|
| | | ctx, ok := contextx.NewContext(c, ¶ms)
|
| | | if !ok {
|
| | | return
|
| | | }
|
| | |
|
| | | errCode := contactService.DeleteContact(params.Ids)
|
| | | if errCode != ecode.OK {
|
| | | ctx.Fail(errCode)
|
| | | return
|
| | | }
|
| | |
|
| | | ctx.Ok()
|
| | | }
|
| | |
|
| | | // Update
|
| | | //
|
| | | // @Tags Contact
|
| | | // @Summary 更新联系人
|
| | | // @Produce application/json
|
| | | // @Param object body request.UpdateContact true "查询参数"
|
| | | // @Success 200 {object} contextx.Response{}
|
| | | // @Router /api/contact/update [put]
|
| | | func (con *ContactApi) Update(c *gin.Context) {
|
| | | var params request.UpdateContact
|
| | | ctx, ok := contextx.NewContext(c, ¶ms)
|
| | | if !ok {
|
| | | return
|
| | | }
|
| | |
|
| | | // check id
|
| | | if params.Id == 0 {
|
| | | ctx.Fail(ecode.InvalidParams)
|
| | | return
|
| | | }
|
| | |
|
| | | errCode, contact := checkContactParams(params.Contact)
|
| | | if errCode != ecode.OK {
|
| | | ctx.Fail(errCode)
|
| | | return
|
| | | }
|
| | |
|
| | | contact.Id = params.Id
|
| | |
|
| | | errCode = contactService.UpdateContact(&contact)
|
| | | if errCode != ecode.OK {
|
| | | ctx.Fail(errCode)
|
| | | return
|
| | | }
|
| | |
|
| | | ctx.Ok()
|
| | | }
|
| | |
|
| | | func checkContactParams(params request.Contact) (int, model.Contact) {
|
| | | var contact model.Contact
|
| | | // name not empty
|
| | | //if params.Name == "" {
|
| | | // return ecode.InvalidParams, contact
|
| | | //}
|
| | | contact.Name = params.Name
|
| | |
|
| | | contact.Phone = params.Phone
|
| | | contact.Email = params.Email
|
| | |
|
| | | // check member id not -1
|
| | | //if params.MemberId == 0 {
|
| | | // return ecode.InvalidParams, contact
|
| | | //}
|
| | | contact.MemberId = params.MemberId
|
| | |
|
| | | contact.ProvinceId = params.ProvinceId
|
| | | contact.CityId = params.CityId
|
| | | contact.CountryId = params.CountryId
|
| | | contact.RegionId = params.RegionId
|
| | | contact.Position = params.Position
|
| | | contact.ClientId = params.ClientId
|
| | | contact.Desc = params.Desc
|
| | |
|
| | | // check number not empty
|
| | | //if params.Number == "" {
|
| | | // return ecode.InvalidParams, contact
|
| | | //}
|
| | | contact.Number = params.Number
|
| | |
|
| | | t, err := checkTimeFormat(params.Birthday)
|
| | | if err != nil {
|
| | | return ecode.InvalidParams, contact
|
| | | }
|
| | | contact.Birthday = t
|
| | | contact.Wechat = params.Wechat
|
| | | contact.IsFirst = params.IsFirst
|
| | | return ecode.OK, contact
|
| | | }
|
| | |
|
| | | // List
|
| | | //
|
| | | // @Tags Contact
|
| | | // @Summary 联系人列表
|
| | | // @Produce application/json
|
| | | // @Param object body request.GetContactList true "参数"
|
| | | // @Success 200 {object} contextx.Response{data=response.ContactResponse}
|
| | | // @Router /api/contact/list [post]
|
| | | func (con *ContactApi) List(c *gin.Context) {
|
| | | var params request.GetContactList
|
| | | ctx, ok := contextx.NewContext(c, ¶ms)
|
| | | if !ok {
|
| | | return
|
| | | }
|
| | |
|
| | | contacts, total, errCode := contactService.GetContactList(params.Page, params.PageSize, params.Keyword)
|
| | | if errCode != ecode.OK {
|
| | | ctx.Fail(errCode)
|
| | | return
|
| | | }
|
| | |
|
| | | ctx.OkWithDetailed(response.ContactResponse{
|
| | | List: contacts,
|
| | | 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 ContactApi struct{} |
| | | |
| | | // Add |
| | | // |
| | | // @Tags Contact |
| | | // @Summary 添加联系人 |
| | | // @Produce application/json |
| | | // @Param object body request.AddContact true "查询参数" |
| | | // @Success 200 {object} contextx.Response{} |
| | | // @Router /api/contact/add [post] |
| | | func (con *ContactApi) Add(c *gin.Context) { |
| | | var params request.AddContact |
| | | ctx, ok := contextx.NewContext(c, ¶ms) |
| | | if !ok { |
| | | return |
| | | } |
| | | |
| | | errCode, contact := checkContactParams(params.Contact) |
| | | if errCode != ecode.OK { |
| | | ctx.Fail(errCode) |
| | | return |
| | | } |
| | | |
| | | errCode = contactService.AddContact(&contact) |
| | | if errCode != ecode.OK { |
| | | ctx.Fail(errCode) |
| | | return |
| | | } |
| | | |
| | | ctx.Ok() |
| | | } |
| | | |
| | | // Delete |
| | | // |
| | | // @Tags Contact |
| | | // @Summary 删除联系人 |
| | | // @Produce application/json |
| | | // @Param object body request.DeleteContact true "查询参数" |
| | | // @Success 200 {object} contextx.Response{} |
| | | // @Router /api/contact/delete [delete] |
| | | func (con *ContactApi) Delete(c *gin.Context) { |
| | | var params request.DeleteContact |
| | | ctx, ok := contextx.NewContext(c, ¶ms) |
| | | if !ok { |
| | | return |
| | | } |
| | | |
| | | errCode := contactService.DeleteContact(params.Ids) |
| | | if errCode != ecode.OK { |
| | | ctx.Fail(errCode) |
| | | return |
| | | } |
| | | |
| | | ctx.Ok() |
| | | } |
| | | |
| | | // Update |
| | | // |
| | | // @Tags Contact |
| | | // @Summary 更新联系人 |
| | | // @Produce application/json |
| | | // @Param object body request.UpdateContact true "查询参数" |
| | | // @Success 200 {object} contextx.Response{} |
| | | // @Router /api/contact/update [put] |
| | | func (con *ContactApi) Update(c *gin.Context) { |
| | | var params request.UpdateContact |
| | | ctx, ok := contextx.NewContext(c, ¶ms) |
| | | if !ok { |
| | | return |
| | | } |
| | | |
| | | // check id |
| | | if params.Id == 0 { |
| | | ctx.Fail(ecode.InvalidParams) |
| | | return |
| | | } |
| | | |
| | | errCode, contact := checkContactParams(params.Contact) |
| | | if errCode != ecode.OK { |
| | | ctx.Fail(errCode) |
| | | return |
| | | } |
| | | |
| | | contact.Id = params.Id |
| | | |
| | | errCode = contactService.UpdateContact(&contact) |
| | | if errCode != ecode.OK { |
| | | ctx.Fail(errCode) |
| | | return |
| | | } |
| | | |
| | | ctx.Ok() |
| | | } |
| | | |
| | | func checkContactParams(params request.Contact) (int, model.Contact) { |
| | | var contact model.Contact |
| | | // name not empty |
| | | //if params.Name == "" { |
| | | // return ecode.InvalidParams, contact |
| | | //} |
| | | contact.Name = params.Name |
| | | |
| | | contact.Phone = params.Phone |
| | | contact.Email = params.Email |
| | | |
| | | // check member id not -1 |
| | | //if params.MemberId == 0 { |
| | | // return ecode.InvalidParams, contact |
| | | //} |
| | | contact.MemberId = params.MemberId |
| | | |
| | | contact.ProvinceId = params.ProvinceId |
| | | contact.CityId = params.CityId |
| | | contact.CountryId = params.CountryId |
| | | contact.RegionId = params.RegionId |
| | | contact.Position = params.Position |
| | | contact.ClientId = params.ClientId |
| | | contact.Desc = params.Desc |
| | | |
| | | // check number not empty |
| | | //if params.Number == "" { |
| | | // return ecode.InvalidParams, contact |
| | | //} |
| | | contact.Number = params.Number |
| | | |
| | | t, err := checkTimeFormat(params.Birthday) |
| | | if err != nil { |
| | | return ecode.InvalidParams, contact |
| | | } |
| | | contact.Birthday = t |
| | | contact.Wechat = params.Wechat |
| | | contact.IsFirst = params.IsFirst |
| | | return ecode.OK, contact |
| | | } |
| | | |
| | | // List |
| | | // |
| | | // @Tags Contact |
| | | // @Summary 联系人列表 |
| | | // @Produce application/json |
| | | // @Param object body request.GetContactList true "参数" |
| | | // @Success 200 {object} contextx.Response{data=response.ContactResponse} |
| | | // @Router /api/contact/list [post] |
| | | func (con *ContactApi) List(c *gin.Context) { |
| | | var params request.GetContactList |
| | | ctx, ok := contextx.NewContext(c, ¶ms) |
| | | if !ok { |
| | | return |
| | | } |
| | | |
| | | contacts, total, errCode := contactService.GetContactList(params.Page, params.PageSize, params.SearchMap) |
| | | if errCode != ecode.OK { |
| | | ctx.Fail(errCode) |
| | | return |
| | | } |
| | | |
| | | ctx.OkWithDetailed(response.ContactResponse{ |
| | | List: contacts, |
| | | Count: int(total), |
| | | }) |
| | | } |