system_user.go 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. package model
  2. import (
  3. "fmt"
  4. operationPb "kpt-tmr-group/proto/go/backend/operation"
  5. "strings"
  6. "time"
  7. )
  8. type SystemUser struct {
  9. Id int64 `json:"id"`
  10. Name string `json:"name"`
  11. EmployeeName string `json:"employee_name"`
  12. Phone string `json:"phone"`
  13. Password string `json:"password"`
  14. RoleIds string `json:"role_ids"`
  15. CreateUser string `json:"create_user"`
  16. IsShow operationPb.IsShow_Kind `json:"is_show"`
  17. IsDelete operationPb.IsShow_Kind `json:"is_delete"`
  18. CreatedAt int64 `json:"created_at"`
  19. UpdatedAt int64 `json:"updated_at"`
  20. }
  21. func (s *SystemUser) TableName() string {
  22. return "system_user"
  23. }
  24. func (s *SystemUser) SystemUserFormat(userRoles []*SystemRole) *operationPb.UserAuth {
  25. roles := make([]*operationPb.UserRole, len(userRoles))
  26. for k, v := range userRoles {
  27. roles[k] = &operationPb.UserRole{
  28. Id: v.Id,
  29. Name: v.Name,
  30. }
  31. }
  32. return &operationPb.UserAuth{
  33. UserName: s.Name,
  34. Phone: s.Phone,
  35. EmployeeName: s.EmployeeName,
  36. Roles: roles,
  37. }
  38. }
  39. func (s *SystemUser) SystemUserRoleFormat(req *operationPb.AddSystemUser) {
  40. roleIds := ""
  41. for _, role := range req.Roles {
  42. roleIds += fmt.Sprintf("%d,", role.Id)
  43. }
  44. if roleIds != "" {
  45. s.RoleIds = strings.TrimRight(roleIds, ",")
  46. }
  47. }
  48. type SystemUserSlice []*SystemUser
  49. func (s SystemUserSlice) ToPB() []*operationPb.AddSystemUser {
  50. res := make([]*operationPb.AddSystemUser, len(s))
  51. for i, v := range s {
  52. res[i] = &operationPb.AddSystemUser{
  53. Id: v.Id,
  54. Name: v.Name,
  55. Phone: v.Phone,
  56. EmployeeName: v.EmployeeName,
  57. CreateUser: v.CreateUser,
  58. IsShow: v.IsShow,
  59. CreatedAt: v.CreatedAt,
  60. CratedAtFormat: time.Unix(v.CreatedAt, 0).Format(LayoutTime),
  61. }
  62. }
  63. return res
  64. }
  65. func (s *SystemUser) ToPb() *operationPb.AddSystemUser {
  66. return &operationPb.AddSystemUser{
  67. Id: s.Id,
  68. Name: s.Name,
  69. Phone: s.Phone,
  70. CreateUser: s.CreateUser,
  71. EmployeeName: s.EmployeeName,
  72. IsShow: s.IsShow,
  73. CreatedAt: s.CreatedAt,
  74. }
  75. }
  76. type SystemUserResponse struct {
  77. Page int32 `json:"page"`
  78. Total int32 `json:"total"`
  79. List []*operationPb.AddSystemUser `json:"list"`
  80. }
  81. func (s *SystemUserResponse) ToPB() *operationPb.SearchUserResponse {
  82. return &operationPb.SearchUserResponse{
  83. Page: s.Page,
  84. Total: s.Total,
  85. List: s.List,
  86. }
  87. }