system_user.go 3.2 KB

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