package base import ( "fmt" req "sghgogs.com/sghblog/authorization-service/domain/model/request" pb "sghgogs.com/sghblog/authorization-service/proto" ) type ListMapItem struct { Key string `json:"key"` Value string `json:"value"` } type Status string const ( ToggleEnabled Status = "ENABLED" ToggleDisabled Status = "DISABLED" ToggleDeleted Status = "DELETED" ) func IsStatusEnum(status pb.StatusEnum) bool { switch status { case pb.StatusEnum_ENABLED: return true case pb.StatusEnum_DISABLED: return true case pb.StatusEnum_DELETED: return true default: return false } } func RolesToProto(user req.AdminUser) []*pb.AdminBase { bases := make([]*pb.AdminBase, 0) for _, role := range user.Roles { bases = append(bases, &pb.AdminBase{ Key: role.Name, Value: fmt.Sprintf("%d", role.ID), }) } return bases } func TeamsToProto(user req.AdminUser) []*pb.AdminBase { bases := make([]*pb.AdminBase, 0) for _, role := range user.Teams { bases = append(bases, &pb.AdminBase{ Key: role.Name, Value: fmt.Sprintf("%d", role.ID), }) } return bases } func UsersToProto(users []req.AdminUser) []*pb.AdminBase { bases := make([]*pb.AdminBase, 0) for _, user := range users { bases = append(bases, &pb.AdminBase{ Key: user.Username, Value: fmt.Sprintf("%d", user.ID), }) } return bases } func PermissionsToProto(permissions []req.AdminPermission) []*pb.AdminBase { bases := make([]*pb.AdminBase, 0) for _, user := range permissions { bases = append(bases, &pb.AdminBase{ Key: user.Name, Value: fmt.Sprintf("%d", user.ID), }) } return bases }