refactor: change the role to roles and many to many

This commit is contained in:
mahyargdz
2025-02-16 16:58:51 +03:30
parent 9cdd7ef28e
commit ad673613d9
32 changed files with 264 additions and 88 deletions
+2 -2
View File
@@ -46,8 +46,8 @@ export class InvoicesController {
@AuthGuards()
@Roles(RoleEnum.ADMIN, RoleEnum.USER)
@Get(":id")
getInvoiceById(@Param() paramDto: ParamDto, @UserDec("role") role: RoleEnum, @UserDec("id") userId: string) {
return this.invoiceService.getInvoiceById(paramDto.id, role, userId);
getInvoiceById(@Param() paramDto: ParamDto, @UserDec("roles") roles: RoleEnum[], @UserDec("id") userId: string) {
return this.invoiceService.getInvoiceById(paramDto.id, roles, userId);
}
@Post(":id/apply-discount")
@@ -126,11 +126,10 @@ export class InvoicesService {
}
//*********************************** */
async getInvoiceById(invoiceId: string, role: RoleEnum, userId: string) {
async getInvoiceById(invoiceId: string, roles: RoleEnum[], userId: string) {
let invoice: Invoice | null;
if (role === RoleEnum.ADMIN) {
if (roles.includes(RoleEnum.ADMIN)) {
invoice = await this.invoiceRepository.findOne({
where: { id: invoiceId },
relations: { items: { subscriptionPlan: true }, user: true },