user_permission.go 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. package services
  2. import (
  3. "errors"
  4. "fmt"
  5. "hongze/hongze_api/models"
  6. "hongze/hongze_api/utils"
  7. "strconv"
  8. )
  9. func CheckUserPermission(userId int) (status int, err error) {
  10. if userId > 0 {
  11. wxUser, err := models.GetWxUserItemByUserId(userId)
  12. if err != nil {
  13. if err.Error() == utils.ErrNoRow() {
  14. status = 40001
  15. err = errors.New("用户信息不存在:userId:" + strconv.Itoa(userId))
  16. return status, err
  17. }
  18. status = 40001
  19. err = errors.New("获取用户信息失败:userId:" + strconv.Itoa(userId) + ";Err:" + err.Error())
  20. return status, err
  21. }
  22. if wxUser == nil {
  23. status = 40001
  24. err = errors.New("获取用户信息失败:userId:" + strconv.Itoa(userId))
  25. return status, err
  26. }
  27. companyId := wxUser.CompanyId
  28. fmt.Println(companyId)
  29. company, err := models.GetCompanyById(companyId)
  30. if err != nil {
  31. status = 40001
  32. err = errors.New("获取客户信息失败:userId:" + strconv.Itoa(userId) + ";Err:" + err.Error())
  33. return status, err
  34. }
  35. if company == nil {
  36. status = 40001
  37. err = errors.New("客户信息不存在:userId:" + strconv.Itoa(userId))
  38. return status, err
  39. }
  40. if company.CompanyType == 1 || company.CompanyType == 2 {
  41. status = 0
  42. } else {
  43. status = 40002
  44. err = errors.New("非付费用户" + strconv.Itoa(userId))
  45. }
  46. } else {
  47. status = 40001
  48. err = errors.New("用户id错误")
  49. }
  50. return
  51. }