admin_power.go 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. package cygx
  2. import (
  3. "errors"
  4. "hongze/hz_crm_api/models/company"
  5. "hongze/hz_crm_api/models/cygx"
  6. "hongze/hz_crm_api/models/system"
  7. "hongze/hz_crm_api/utils"
  8. "strconv"
  9. "strings"
  10. )
  11. // 获取这个销售所能查看的手机号权限
  12. func GetAdminLookUserMobile(adminInfo *system.Admin) (mapMobile map[string]string, err error) {
  13. var conditionMobile string
  14. if adminInfo.RoleTypeCode == "rai_group" {
  15. //组长查看本组所有组员
  16. conditionMobile = ` SELECT mobile FROM user_seller_relation WHERE seller_id IN (SELECT admin_id FROM admin WHERE group_id = (SELECT group_id FROM admin WHERE admin_id = ` + strconv.Itoa(adminInfo.AdminId) + ` )) `
  17. } else {
  18. //组员查看自己
  19. conditionMobile = ` SELECT mobile FROM user_seller_relation WHERE seller_id = ` + strconv.Itoa(adminInfo.AdminId)
  20. }
  21. mobileList, e := cygx.GetSellerUserMobile(conditionMobile)
  22. if e != nil {
  23. err = errors.New("GetSellerUserMobile 获取这个销售所能查看的手机号权限失败, Err: " + e.Error())
  24. return
  25. }
  26. mapUserMobile := make(map[string]string)
  27. for _, v := range mobileList {
  28. mapUserMobile[v.Mobile] = v.Mobile
  29. }
  30. mapMobile = mapUserMobile
  31. return
  32. }
  33. // 获取这个销售所能查看的手机号权限
  34. func GetAdminLookUserCompanyIds(sysUser *system.Admin) (companyIds []int, err error) {
  35. //如果不是管理员,权益管理员那么就对可见权限范围做处理
  36. adminIds := make([]int, 0)
  37. if sysUser.RoleTypeCode != utils.ROLE_TYPE_CODE_ADMIN && sysUser.RoleTypeCode != utils.ROLE_TYPE_CODE_RAI_ADMIN {
  38. if sysUser.RoleTypeCode == utils.ROLE_TYPE_CODE_RAI_GROUP {
  39. //如果是权益的组长就获取下面的组员
  40. adminList, e := system.GetAdminListByGroupId(sysUser.GroupId)
  41. if e != nil {
  42. err = errors.New("GetAdminListByGroupId , Err: " + e.Error())
  43. return
  44. }
  45. for _, v := range adminList {
  46. adminIds = append(adminIds, v.AdminId)
  47. }
  48. } else {
  49. adminIds = append(adminIds, sysUser.AdminId)
  50. }
  51. var adminIdGroup string
  52. for _, v := range adminIds {
  53. adminIdGroup += strconv.Itoa(v) + ","
  54. }
  55. adminIdGroup = strings.TrimRight(adminIdGroup, ",")
  56. companyProductList, e := company.GetCompanyProductsBySellerId(adminIdGroup)
  57. if e != nil {
  58. err = errors.New("GetCompanyProductsBySellerId , Err: " + e.Error())
  59. return
  60. }
  61. for _, v := range companyProductList {
  62. companyIds = append(companyIds, v.CompanyId)
  63. }
  64. companyIds = append(companyIds, 0) //添加潜在客户
  65. }
  66. return
  67. }