base.go 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. package base
  2. import (
  3. "fmt"
  4. req "sghgogs.com/sghblog/authorization-service/domain/model/request"
  5. pb "sghgogs.com/sghblog/authorization-service/proto"
  6. )
  7. type ListMapItem struct {
  8. Key string `json:"key"`
  9. Value string `json:"value"`
  10. }
  11. type Status string
  12. const (
  13. ToggleEnabled Status = "ENABLED"
  14. ToggleDisabled Status = "DISABLED"
  15. ToggleDeleted Status = "DELETED"
  16. )
  17. func IsStatusEnum(status pb.StatusEnum) bool {
  18. switch status {
  19. case pb.StatusEnum_ENABLED:
  20. return true
  21. case pb.StatusEnum_DISABLED:
  22. return true
  23. case pb.StatusEnum_DELETED:
  24. return true
  25. default:
  26. return false
  27. }
  28. }
  29. func RolesToProto(user req.AdminUser) []*pb.AdminBase {
  30. bases := make([]*pb.AdminBase, 0)
  31. for _, role := range user.Roles {
  32. bases = append(bases, &pb.AdminBase{
  33. Key: role.Name,
  34. Value: fmt.Sprintf("%d", role.ID),
  35. })
  36. }
  37. return bases
  38. }
  39. func TeamsToProto(user req.AdminUser) []*pb.AdminBase {
  40. bases := make([]*pb.AdminBase, 0)
  41. for _, role := range user.Teams {
  42. bases = append(bases, &pb.AdminBase{
  43. Key: role.Name,
  44. Value: fmt.Sprintf("%d", role.ID),
  45. })
  46. }
  47. return bases
  48. }
  49. func UsersToProto(users []req.AdminUser) []*pb.AdminBase {
  50. bases := make([]*pb.AdminBase, 0)
  51. for _, user := range users {
  52. bases = append(bases, &pb.AdminBase{
  53. Key: user.Username,
  54. Value: fmt.Sprintf("%d", user.ID),
  55. })
  56. }
  57. return bases
  58. }
  59. func PermissionsToProto(permissions []req.AdminPermission) []*pb.AdminBase {
  60. bases := make([]*pb.AdminBase, 0)
  61. for _, user := range permissions {
  62. bases = append(bases, &pb.AdminBase{
  63. Key: user.Name,
  64. Value: fmt.Sprintf("%d", user.ID),
  65. })
  66. }
  67. return bases
  68. }