user.go 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. package services
  2. import (
  3. "eta/eta_mini_bridge/models"
  4. "eta/eta_mini_bridge/utils"
  5. )
  6. // 根据用户id和平台id获取用户信息
  7. func GetUserItemByUserId(userId int) (UserItem *models.UserItem, err error) {
  8. //获取用户信息
  9. UserItem, wxUserErr := models.GetUserItemByUserId(userId)
  10. if wxUserErr != nil {
  11. err = wxUserErr
  12. return
  13. }
  14. //格式化返回用户数据
  15. formatWxUser(UserItem)
  16. return
  17. }
  18. // 通过用户 用户记录 和 来源平台 格式化返回 用户数据
  19. func formatWxUser(wxUser *models.UserItem) {
  20. //根据用户id和平台id获取用户关系
  21. userRecord, userRecordErr := models.GetUserRecordByUserId(wxUser.UserId)
  22. if userRecordErr != nil {
  23. if userRecordErr.Error() != utils.ErrNoRow() {
  24. return
  25. }
  26. if userRecordErr.Error() == utils.ErrNoRow() {
  27. return
  28. }
  29. }
  30. //该openid在系统中没有关联关系
  31. if userRecord == nil {
  32. return
  33. }
  34. wxUser.OpenId = userRecord.OpenId
  35. wxUser.UnionId = userRecord.UnionId
  36. wxUser.NickName = userRecord.NickName
  37. //wxUser.RealName = userRecord.RealName
  38. //wxUser.BindAccount = userRecord.BindAccount
  39. wxUser.Headimgurl = userRecord.Headimgurl
  40. return
  41. }