userlistlogic.go 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. package logic
  2. import (
  3. "app.yhyue.com/moapp/jybase/encrypt"
  4. util "bp.jydev.jianyu360.cn/SocialPlatform/messageCenter/entity"
  5. "bp.jydev.jianyu360.cn/SocialPlatform/messageCenter/service"
  6. "context"
  7. "time"
  8. quitl "app.yhyue.com/moapp/jybase/common"
  9. "bp.jydev.jianyu360.cn/SocialPlatform/messageCenter/rpc/messagecenter/internal/svc"
  10. "bp.jydev.jianyu360.cn/SocialPlatform/messageCenter/rpc/messagecenter/messagecenter"
  11. "github.com/zeromicro/go-zero/core/logx"
  12. )
  13. type UserListLogic struct {
  14. ctx context.Context
  15. svcCtx *svc.ServiceContext
  16. logx.Logger
  17. }
  18. func NewUserListLogic(ctx context.Context, svcCtx *svc.ServiceContext) *UserListLogic {
  19. return &UserListLogic{
  20. ctx: ctx,
  21. svcCtx: svcCtx,
  22. Logger: logx.WithContext(ctx),
  23. }
  24. }
  25. // UserList 用户列表查询
  26. func (l *UserListLogic) UserList(in *messagecenter.UserReq) (*messagecenter.UserResp, error) {
  27. // todo: add your logic here and delete this line
  28. m := service.MessaggeService{}
  29. data, count, err := m.UserList(in)
  30. if err != nil {
  31. return nil, err
  32. }
  33. var result = []*messagecenter.UserEntity{}
  34. if data != nil && len(*data) > 0 {
  35. for _, v := range *data {
  36. var tim time.Time
  37. if quitl.InterfaceToStr(v["create_time"]) != "" {
  38. tim, _ = time.ParseInLocation(util.Date_Full_Layout, quitl.InterfaceToStr(v["create_time"]), time.Local)
  39. } else {
  40. tim, _ = time.ParseInLocation(util.Date_Full_Layout, quitl.InterfaceToStr(v["timestamp"]), time.Local)
  41. }
  42. groupMember, _ := v["groupMember"].([]string)
  43. userResp := messagecenter.UserEntity{
  44. Name: quitl.ObjToString(v["name"]),
  45. Title: quitl.ObjToString(v["title"]),
  46. Type: quitl.Int64All(v["type"]),
  47. Link: quitl.ObjToString(v["link"]),
  48. Content: quitl.ObjToString(v["content"]),
  49. CreateTime: tim.Unix(),
  50. UserType: quitl.Int64All(v["userType"]),
  51. Number: quitl.Int64All(v["number"]),
  52. UserId: encrypt.SE.Encode2Hex(quitl.InterfaceToStr(v["id"])),
  53. Headimg: quitl.ObjToString(v["headimg"]),
  54. GroupMember: groupMember,
  55. }
  56. result = append(result, &userResp)
  57. }
  58. }
  59. return &messagecenter.UserResp{Data: result, Count: count}, nil
  60. }