| | |
| | | "aps_crm/model/response" |
| | | "aps_crm/pkg/contextx" |
| | | "aps_crm/pkg/ecode" |
| | | "aps_crm/utils" |
| | | "github.com/gin-gonic/gin" |
| | | "strconv" |
| | | ) |
| | | |
| | | type SalesLeadsApi struct{} |
| | |
| | | return |
| | | } |
| | | |
| | | if params.MemberId == 0 { |
| | | userInfo := utils.GetUserInfo(c) |
| | | if userInfo.UserType == constvar.UserTypeSub { |
| | | params.MemberId = userInfo.CrmUserId |
| | | } |
| | | } |
| | | |
| | | errCode, salesLeads := checkSalesLeadsParams(params.SalesLeads) |
| | | if errCode != ecode.OK { |
| | | ctx.Fail(errCode) |
| | | return |
| | | } |
| | | count, err := model.NewSalesLeadsSearch(nil).SetNumber(params.Number).Count() |
| | | if err != nil { |
| | | ctx.FailWithMsg(ecode.UnknownErr, "编码验证失败") |
| | | return |
| | | } |
| | | if count > 0 { |
| | | ctx.FailWithMsg(ecode.UnknownErr, "编码已存在") |
| | | return |
| | | } |
| | | |
| | |
| | | // @Tags SalesLeads |
| | | // @Summary 删除销售线索 |
| | | // @Produce application/json |
| | | // @Param id path int true "查询参数" |
| | | // @Param object body request.DeleteSalesLeads true "查询参数" |
| | | // @Success 200 {object} contextx.Response{} |
| | | // @Router /api/salesLeads/delete/{id} [delete] |
| | | // @Router /api/salesLeads/delete [delete] |
| | | func (s *SalesLeadsApi) Delete(c *gin.Context) { |
| | | ctx, ok := contextx.NewContext(c, nil) |
| | | var params request.DeleteSalesLeads |
| | | ctx, ok := contextx.NewContext(c, ¶ms) |
| | | if !ok { |
| | | return |
| | | } |
| | | |
| | | id, _ := strconv.Atoi(c.Param("id")) |
| | | errCode := salesLeadsService.DeleteSalesLeads(id) |
| | | errCode := salesLeadsService.DeleteSalesLeads(params.Ids) |
| | | if errCode != ecode.OK { |
| | | ctx.Fail(errCode) |
| | | return |
| | |
| | | ctx.Ok() |
| | | } |
| | | |
| | | |
| | | func checkSalesLeadsParams(params request.SalesLeads) (errCode int, salesLeads model.SalesLeads) { |
| | | //if params.Name == "" { |
| | | // return ecode.InvalidParams, salesLeads |
| | |
| | | SalesSourcesId: params.SalesSourcesId, |
| | | MemberId: params.MemberId, |
| | | Desc: params.Desc, |
| | | CodeStandID: params.CodeStandID, |
| | | Address: model.Address{ |
| | | ProvinceId: params.ProvinceId, |
| | | CityId: params.CityId, |
| | | RegionId: params.RegionId, |
| | | CountryId: params.CountryId, |
| | | }, |
| | | DetailAddress: params.DetailAddress, |
| | | } |
| | | |
| | | return ecode.OK, salesLeads |
| | |
| | | // @Param object body request.GetSalesLeadsList true "参数" |
| | | // @Success 200 {object} contextx.Response{data=response.SalesLeadsResponse} |
| | | // @Router /api/salesLeads/list [post] |
| | | func (con *SalesLeadsApi) List(c *gin.Context) { |
| | | func (s *SalesLeadsApi) List(c *gin.Context) { |
| | | var params request.GetSalesLeadsList |
| | | ctx, ok := contextx.NewContext(c, ¶ms) |
| | | if !ok { |
| | | return |
| | | } |
| | | |
| | | salesLeadss, errCode := salesLeadsService.GetSalesLeadsList(params.Page, params.PageSize, params.Keyword) |
| | | userInfo := utils.GetUserInfo(c) |
| | | if userInfo.UserType == constvar.UserTypeSub { |
| | | if params.SearchMap == nil { |
| | | params.SearchMap = make(map[string]interface{}, 0) |
| | | } |
| | | params.SearchMap["member_ids"] = userInfo.SubUserIds |
| | | } |
| | | |
| | | salesLeadss, total, errCode := salesLeadsService.GetSalesLeadsList(params.Page, params.PageSize, params.SearchMap) |
| | | if errCode != ecode.OK { |
| | | ctx.Fail(errCode) |
| | | return |
| | | } |
| | | |
| | | ctx.OkWithDetailed(response.SalesLeadsResponse{ |
| | | List: salesLeadss, |
| | | Count: len(salesLeadss), |
| | | List: salesLeadss, |
| | | Count: int(total), |
| | | }) |
| | | } |
| | | |
| | | // Push |
| | | // |
| | | // @Tags SalesLeads |
| | | // @Summary 推进销售线索 |
| | | // @Produce application/json |
| | | // @Param object body request.PushSalesLeads true "查询参数" |
| | | // @Success 200 {object} contextx.Response{} |
| | | // @Router /api/salesLeads/push [post] |
| | | func (s *SalesLeadsApi) Push(c *gin.Context) { |
| | | var params request.PushSalesLeads |
| | | ctx, ok := contextx.NewContext(c, ¶ms) |
| | | if !ok { |
| | | return |
| | | } |
| | | |
| | | errCode := salesLeadsService.PushSalesLeads(params.Id, params.Step, params.Reason) |
| | | if errCode != ecode.OK { |
| | | ctx.Fail(errCode) |
| | | return |
| | | } |
| | | ctx.Ok() |
| | | } |