system_user.go 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. package model
  2. import (
  3. "net/http"
  4. "time"
  5. pasturePb "gitee.com/xuyiping_admin/go_proto/proto/go/backend/cow"
  6. operationPb "gitee.com/xuyiping_admin/go_proto/proto/go/backend/operation"
  7. )
  8. type SystemUser struct {
  9. Id int64 `json:"id"`
  10. Name string `json:"name"`
  11. NickName string `json:"nick_name"`
  12. Mobile string `json:"mobile"`
  13. Password string `json:"password"`
  14. Avatar string `json:"avatar"`
  15. RoleId int64 `json:"role_id"`
  16. DeptId int64 `json:"dept_id"`
  17. Remarks string `json:"remarks"`
  18. Gender pasturePb.Genders_Kind `json:"gender"`
  19. IsShow pasturePb.IsShow_Kind `json:"is_show"`
  20. IsDelete pasturePb.IsShow_Kind `json:"is_delete"`
  21. CreatedAt int64 `json:"created_at"`
  22. UpdatedAt int64 `json:"updated_at"`
  23. }
  24. func (s *SystemUser) TableName() string {
  25. return "system_user"
  26. }
  27. func (s *SystemUser) SystemUserFormat(userRoles []*SystemRole, pastures []*operationPb.UserPasture) *operationPb.UserAuth {
  28. roles := make([]*operationPb.UserRole, len(userRoles))
  29. for k, v := range userRoles {
  30. roles[k] = &operationPb.UserRole{
  31. Id: int32(v.Id),
  32. Name: v.Name,
  33. }
  34. }
  35. return &operationPb.UserAuth{
  36. Code: http.StatusOK,
  37. Msg: "ok",
  38. Data: &operationPb.UserAuthData{
  39. UserName: s.Name,
  40. Roles: roles,
  41. Pastures: pastures,
  42. },
  43. }
  44. }
  45. type SystemUserSlice []*SystemUser
  46. func (s SystemUserSlice) ToPB(deptList []*SystemDept, roleList []*SystemRole) []*pasturePb.SearchUserRequest {
  47. res := make([]*pasturePb.SearchUserRequest, len(s))
  48. for i, v := range s {
  49. deptName := ""
  50. for _, d := range deptList {
  51. if v.DeptId == d.Id {
  52. deptName = d.Name
  53. break
  54. }
  55. }
  56. roleName := ""
  57. for _, r := range roleList {
  58. if v.RoleId == r.Id {
  59. roleName += r.Name
  60. break
  61. }
  62. }
  63. res[i] = &pasturePb.SearchUserRequest{
  64. Id: int32(v.Id),
  65. Name: v.Name,
  66. Mobile: v.Mobile,
  67. NickName: v.NickName,
  68. Avatar: v.Avatar,
  69. Gender: v.Gender,
  70. IsShow: v.IsShow,
  71. IsDelete: v.IsDelete,
  72. Remarks: v.Remarks,
  73. DeptId: int32(v.DeptId),
  74. DeptName: deptName,
  75. RoleId: int32(v.RoleId),
  76. RoleName: roleName,
  77. CreatedAtFormat: time.Unix(v.CreatedAt, 0).Format(LayoutTime),
  78. UpdatedAtFormat: time.Unix(v.UpdatedAt, 0).Format(LayoutTime),
  79. }
  80. }
  81. return res
  82. }
  83. func (s *SystemUser) ToPb() *operationPb.AddSystemUser {
  84. return &operationPb.AddSystemUser{
  85. Id: int32(s.Id),
  86. Name: s.Name,
  87. CreatedAt: int32(s.CreatedAt),
  88. CreatedAtFormat: time.Unix(s.CreatedAt, 0).Format(LayoutTime),
  89. RoleIds: []int32{},
  90. }
  91. }
  92. func (c SystemUserSlice) ToPB2() []*pasturePb.ConfigOptionsList {
  93. res := make([]*pasturePb.ConfigOptionsList, len(c))
  94. for i, d := range c {
  95. res[i] = &pasturePb.ConfigOptionsList{
  96. Value: int32(d.Id),
  97. Label: d.Name,
  98. Disabled: true,
  99. }
  100. }
  101. return res
  102. }