package handler import ( "context" "sghgogs.com/sghblog/authorization-service/domain/service" pb "sghgogs.com/sghblog/authorization-service/proto" ) type AdminRole struct { Service service.IService } func (svc *AdminRole) GetAdminRole(ctx context.Context, role *pb.GetAdminRoleRequest, rsp *pb.GetAdminRoleResponse) error { adminRole, err := svc.Service.GetAdminRole(role.Id) if err != nil { return err } rsp.Role = adminRole return nil } func (svc *AdminRole) CreateAdminRole(ctx context.Context, reqRole *pb.CreateAdminRoleRequest, rsp *pb.CreateAdminRoleResponse) error { if err := svc.Service.CreateAdminRole(ctx, reqRole); err != nil { return err } return nil } func (svc *AdminRole) ListAdminRoles(ctx context.Context, query *pb.ListAdminRolesRequest, rsp *pb.ListAdminRolesResponse) error { if roles, count, err := svc.Service.ListAdminRoles(query); err != nil { return err } else { rsp.Items = roles rsp.TotalCount = count } return nil } func (svc *AdminRole) RetrieveEnabledRoles(ctx context.Context, rolesReq *pb.RetrieveEnabledRolesRequest, rsp *pb.RetrieveEnabledRolesResponse) error { if roles, err := svc.Service.RetrieveEnabledRoles(); err != nil { return err } else { rsp.Roles = roles } return nil } func (svc *AdminRole) UpdateAdminRole(ctx context.Context, role *pb.UpdateAdminRoleRequest, rsp *pb.UpdateAdminRoleResponse) error { if err := svc.Service.UpdateAdminRole(role); err != nil { return err } return nil } func (svc *AdminRole) DeleteAdminRole(ctx context.Context, role *pb.DeleteAdminRoleRequest, rsp *pb.DeleteAdminRoleResponse) error { if err := svc.Service.DeleteAdminRole(role.Id); err != nil { return err } return nil } func (svc *AdminRole) ToggleAdminRole(ctx context.Context, toggle *pb.ToggleAdminRoleRequest, rsp *pb.ToggleAdminRoleResponse) error { err := svc.Service.ToggleAdminRole(toggle) if err != nil { return err } return nil }