diff --git a/.husky/pre-commit b/.husky/pre-commit old mode 100644 new mode 100755 diff --git a/database/migrations/1740742921699-SetInvoiceNumericIdStartValue.ts b/database/migrations/1740742921699-SetInvoiceNumericIdStartValue.ts old mode 100644 new mode 100755 diff --git a/keys/private.pem b/keys/private.pem old mode 100644 new mode 100755 diff --git a/keys/public.pem b/keys/public.pem old mode 100644 new mode 100755 diff --git a/src/common/decorators/skip-auth.decorator.ts b/src/common/decorators/skip-auth.decorator.ts old mode 100644 new mode 100755 diff --git a/src/common/enums/message.enum.ts b/src/common/enums/message.enum.ts index 2894fbe..a7bc8cf 100755 --- a/src/common/enums/message.enum.ts +++ b/src/common/enums/message.enum.ts @@ -518,6 +518,9 @@ export const enum DiscountMessage { VALUE_REQUIRED = "مقدار تخفیف الزامی است", IS_ACTIVE_REQUIRED = "وضعیت فعال بودن الزامی است", CODE_GENERATION_FAILED = "ایجاد کد تخفیف با خطا مواجه شد", + START_DATE_MUST_BE_BEFORE_END_DATE = "تاریخ شروع باید قبل از تاریخ پایان باشد", + START_DATE_MUST_BE_AFTER_NOW = "تاریخ شروع باید بعد از تاریخ فعلی باشد", + END_DATE_MUST_BE_AFTER_NOW = "تاریخ پایان باید بعد از تاریخ فعلی باشد", } export const enum EmailMessage { diff --git a/src/configs/telegraf.config.ts b/src/configs/telegraf.config.ts old mode 100644 new mode 100755 diff --git a/src/configs/typeorm.config.ts b/src/configs/typeorm.config.ts index 8d8378f..9391ab2 100755 --- a/src/configs/typeorm.config.ts +++ b/src/configs/typeorm.config.ts @@ -13,7 +13,7 @@ export function databaseConfigs(): TypeOrmModuleAsyncOptions { username: configService.getOrThrow("DB_USER"), password: configService.getOrThrow("DB_PASS"), autoLoadEntities: true, - synchronize: configService.getOrThrow("NODE_ENV") == "production" ? false : true, + synchronize: configService.getOrThrow("NODE_ENV") == "production" ? false : false, logging: configService.getOrThrow("NODE_ENV") == "production" ? false : true, migrationsTableName: "typeorm_migrations", migrationsRun: false, diff --git a/src/modules/announcements/DTO/update-announcement.dto.ts b/src/modules/announcements/DTO/update-announcement.dto.ts old mode 100644 new mode 100755 diff --git a/src/modules/announcements/interfaces/ISendAnnouncement.ts b/src/modules/announcements/interfaces/ISendAnnouncement.ts old mode 100644 new mode 100755 diff --git a/src/modules/auth/DTO/refresh-token.dto.ts b/src/modules/auth/DTO/refresh-token.dto.ts old mode 100644 new mode 100755 diff --git a/src/modules/blogs/DTO/create-blog.dto.ts b/src/modules/blogs/DTO/create-blog.dto.ts old mode 100644 new mode 100755 diff --git a/src/modules/blogs/DTO/create-category.dto.ts b/src/modules/blogs/DTO/create-category.dto.ts old mode 100644 new mode 100755 diff --git a/src/modules/blogs/DTO/create-comment.dto.ts b/src/modules/blogs/DTO/create-comment.dto.ts old mode 100644 new mode 100755 diff --git a/src/modules/blogs/DTO/get-blog-by-slug.dto.ts b/src/modules/blogs/DTO/get-blog-by-slug.dto.ts old mode 100644 new mode 100755 diff --git a/src/modules/blogs/DTO/search-blog-query.dto.ts b/src/modules/blogs/DTO/search-blog-query.dto.ts old mode 100644 new mode 100755 diff --git a/src/modules/blogs/DTO/update-blog.dto.ts b/src/modules/blogs/DTO/update-blog.dto.ts old mode 100644 new mode 100755 diff --git a/src/modules/blogs/DTO/update-category.dto.ts b/src/modules/blogs/DTO/update-category.dto.ts old mode 100644 new mode 100755 diff --git a/src/modules/blogs/DTO/update-comment-status.dto.ts b/src/modules/blogs/DTO/update-comment-status.dto.ts old mode 100644 new mode 100755 diff --git a/src/modules/blogs/blogs.module.ts b/src/modules/blogs/blogs.module.ts old mode 100644 new mode 100755 diff --git a/src/modules/blogs/controllers/blogs.controller.ts b/src/modules/blogs/controllers/blogs.controller.ts old mode 100644 new mode 100755 diff --git a/src/modules/blogs/entities/blog-category.entity.ts b/src/modules/blogs/entities/blog-category.entity.ts old mode 100644 new mode 100755 diff --git a/src/modules/blogs/entities/blog-comment.entity.ts b/src/modules/blogs/entities/blog-comment.entity.ts old mode 100644 new mode 100755 diff --git a/src/modules/blogs/entities/blog.entity.ts b/src/modules/blogs/entities/blog.entity.ts old mode 100644 new mode 100755 diff --git a/src/modules/blogs/enums/comment-status.enum.ts b/src/modules/blogs/enums/comment-status.enum.ts old mode 100644 new mode 100755 diff --git a/src/modules/blogs/providers/blogs.service.ts b/src/modules/blogs/providers/blogs.service.ts old mode 100644 new mode 100755 diff --git a/src/modules/blogs/repositories/blog-categories.repository.ts b/src/modules/blogs/repositories/blog-categories.repository.ts old mode 100644 new mode 100755 diff --git a/src/modules/blogs/repositories/blog-comments.repository.ts b/src/modules/blogs/repositories/blog-comments.repository.ts old mode 100644 new mode 100755 diff --git a/src/modules/blogs/repositories/blogs.repository.ts b/src/modules/blogs/repositories/blogs.repository.ts old mode 100644 new mode 100755 diff --git a/src/modules/danak-services/DTO/danak-service-review-query.dto.ts b/src/modules/danak-services/DTO/danak-service-review-query.dto.ts old mode 100644 new mode 100755 diff --git a/src/modules/danak-services/DTO/update-category.dto.ts b/src/modules/danak-services/DTO/update-category.dto.ts old mode 100644 new mode 100755 diff --git a/src/modules/danak-services/DTO/update-review-status.dto.ts b/src/modules/danak-services/DTO/update-review-status.dto.ts old mode 100644 new mode 100755 diff --git a/src/modules/danak-services/DTO/update-service.dto.ts b/src/modules/danak-services/DTO/update-service.dto.ts old mode 100644 new mode 100755 diff --git a/src/modules/discounts/DTO/create-discount.dto.ts b/src/modules/discounts/DTO/create-discount.dto.ts old mode 100644 new mode 100755 index 6cb5a33..c872f8c --- a/src/modules/discounts/DTO/create-discount.dto.ts +++ b/src/modules/discounts/DTO/create-discount.dto.ts @@ -12,7 +12,11 @@ export class CreateDiscountDto { @IsNotEmpty({ message: DiscountMessage.DISCOUNT_TYPE_REQUIRED }) @IsEnum(DiscountType, { message: DiscountMessage.INVALID_DISCOUNT_TYPE }) - @ApiProperty({ description: "The type of discount", example: DiscountType.PERCENTAGE, enum: DiscountType }) + @ApiProperty({ + description: "The type of discount", + example: `${DiscountType.PERCENTAGE} ==> type 0 means percentage, type 1 means fixed amount`, + enum: DiscountType, + }) type: DiscountType; @IsNotEmpty({ message: DiscountMessage.DIRECT_REQUIRED }) diff --git a/src/modules/discounts/DTO/toggle-active.dto.ts b/src/modules/discounts/DTO/toggle-active.dto.ts old mode 100644 new mode 100755 diff --git a/src/modules/discounts/DTO/update-discount.dto.ts b/src/modules/discounts/DTO/update-discount.dto.ts old mode 100644 new mode 100755 diff --git a/src/modules/discounts/DTO/validate-discount.dto.ts b/src/modules/discounts/DTO/validate-discount.dto.ts old mode 100644 new mode 100755 diff --git a/src/modules/discounts/discounts.controller.ts b/src/modules/discounts/discounts.controller.ts old mode 100644 new mode 100755 diff --git a/src/modules/discounts/discounts.module.ts b/src/modules/discounts/discounts.module.ts old mode 100644 new mode 100755 index 7d6b4e6..993dd63 --- a/src/modules/discounts/discounts.module.ts +++ b/src/modules/discounts/discounts.module.ts @@ -7,13 +7,14 @@ import { DirectDiscount } from "./entities/direct-discount.entity"; import { Discount } from "./entities/discount.entity"; import { UsageDiscount } from "./entities/usage-discount.entity"; import { DiscountsService } from "./providers/discounts.service"; +import { DirectDiscountRepository } from "./repositories/direct-discounts.repository"; import { DiscountRepository } from "./repositories/discounts.repository"; import { UsageDiscountRepository } from "./repositories/usage-discounts.repository"; - +import { SubscriptionsModule } from "../subscriptions/subscriptions.module"; @Module({ - imports: [TypeOrmModule.forFeature([Discount, UsageDiscount, DirectDiscount]), UsersModule], + imports: [TypeOrmModule.forFeature([Discount, UsageDiscount, DirectDiscount]), UsersModule, SubscriptionsModule], controllers: [DiscountsController], - providers: [DiscountsService, DiscountRepository, UsageDiscountRepository], + providers: [DiscountsService, DiscountRepository, DirectDiscountRepository, UsageDiscountRepository], exports: [DiscountsService], }) export class DiscountsModule {} diff --git a/src/modules/discounts/entities/direct-discount.entity.ts b/src/modules/discounts/entities/direct-discount.entity.ts old mode 100644 new mode 100755 diff --git a/src/modules/discounts/entities/discount.entity.ts b/src/modules/discounts/entities/discount.entity.ts old mode 100644 new mode 100755 diff --git a/src/modules/discounts/entities/usage-discount.entity.ts b/src/modules/discounts/entities/usage-discount.entity.ts old mode 100644 new mode 100755 diff --git a/src/modules/discounts/enums/discount-status.enum.ts b/src/modules/discounts/enums/discount-status.enum.ts old mode 100644 new mode 100755 diff --git a/src/modules/discounts/enums/discount-type.enum.ts b/src/modules/discounts/enums/discount-type.enum.ts old mode 100644 new mode 100755 diff --git a/src/modules/discounts/providers/discounts.service.ts b/src/modules/discounts/providers/discounts.service.ts old mode 100644 new mode 100755 index 20091cd..87fb491 --- a/src/modules/discounts/providers/discounts.service.ts +++ b/src/modules/discounts/providers/discounts.service.ts @@ -1,22 +1,28 @@ import { randomBytes } from "node:crypto"; import { BadRequestException, Injectable } from "@nestjs/common"; +import dayjs from "dayjs"; import { DataSource, QueryRunner } from "typeorm"; import { DiscountMessage } from "../../../common/enums/message.enum"; +import { SubscriptionsService } from "../../subscriptions/providers/subscriptions.service"; import { CreateDiscountDto } from "../DTO/create-discount.dto"; import { DiscountType } from "../enums/discount-type.enum"; +import { DirectDiscountRepository } from "../repositories/direct-discounts.repository"; import { DiscountRepository } from "../repositories/discounts.repository"; - @Injectable() export class DiscountsService { private MAX_ATTEMPTS = 10; constructor( private readonly discountRepository: DiscountRepository, + private readonly directDiscountRepository: DirectDiscountRepository, + private readonly subscriptionService: SubscriptionsService, private readonly dataSource: DataSource, ) {} + //***************************************** */ + async create(createDiscountDto: CreateDiscountDto) { const queryRunner = this.dataSource.createQueryRunner(); @@ -24,6 +30,8 @@ export class DiscountsService { await queryRunner.connect(); await queryRunner.startTransaction(); + await this.validateDates(createDiscountDto.startDate, createDiscountDto.endDate); + if (!createDiscountDto.direct) { await this.createCodeBasedDiscount(createDiscountDto, queryRunner); } else { @@ -42,7 +50,7 @@ export class DiscountsService { await queryRunner.release(); } } - + //***************************************** */ private async createCodeBasedDiscount(createDiscountDto: CreateDiscountDto, queryRunner: QueryRunner) { const discount = queryRunner.manager.create(this.discountRepository.target, createDiscountDto); @@ -63,12 +71,21 @@ export class DiscountsService { await queryRunner.manager.save(discount); return discount; } - - //**************************** */ + //***************************************** */ private async createDirectBasedDiscount(createDiscountDto: CreateDiscountDto, queryRunner: QueryRunner) { - const discount = queryRunner.manager.create(this.discountRepository.target, createDiscountDto); + // Create the discount entity + const discount = queryRunner.manager.create(this.directDiscountRepository.target, createDiscountDto); discount.value = this.calculateDiscountValue(createDiscountDto); + await queryRunner.manager.save(discount); + + const subscriptionPlans = await this.subscriptionService.getAllServiceSubscriptions(createDiscountDto.targetServices ?? []); + + for (const subscriptionPlan of subscriptionPlans) { + subscriptionPlan.directDiscount = discount; + await queryRunner.manager.save(subscriptionPlan); + } + return discount; } //**************************** */ @@ -91,4 +108,24 @@ export class DiscountsService { throw new BadRequestException(DiscountMessage.INVALID_DISCOUNT_TYPE); } + + //**************************** */ + + private async validateDates(startDate: string, endDate: string) { + if (dayjs(startDate).isAfter(dayjs(endDate))) { + throw new BadRequestException(DiscountMessage.START_DATE_MUST_BE_BEFORE_END_DATE); + } + + if (dayjs(startDate).isBefore(dayjs().subtract(1, "day"))) { + throw new BadRequestException(DiscountMessage.START_DATE_MUST_BE_AFTER_NOW); + } + + if (dayjs(startDate).isSame(dayjs(endDate))) { + throw new BadRequestException(DiscountMessage.START_DATE_MUST_BE_BEFORE_END_DATE); + } + + if (dayjs(endDate).isBefore(dayjs())) { + throw new BadRequestException(DiscountMessage.END_DATE_MUST_BE_AFTER_NOW); + } + } } diff --git a/src/modules/discounts/repositories/direct-discounts.repository.ts b/src/modules/discounts/repositories/direct-discounts.repository.ts new file mode 100755 index 0000000..65c4908 --- /dev/null +++ b/src/modules/discounts/repositories/direct-discounts.repository.ts @@ -0,0 +1,12 @@ +import { Injectable } from "@nestjs/common"; +import { InjectRepository } from "@nestjs/typeorm"; +import { Repository } from "typeorm"; + +import { DirectDiscount } from "../entities/direct-discount.entity"; + +@Injectable() +export class DirectDiscountRepository extends Repository { + constructor(@InjectRepository(DirectDiscount) repository: Repository) { + super(repository.target, repository.manager, repository.queryRunner); + } +} diff --git a/src/modules/discounts/repositories/discounts.repository.ts b/src/modules/discounts/repositories/discounts.repository.ts old mode 100644 new mode 100755 diff --git a/src/modules/discounts/repositories/usage-discounts.repository.ts b/src/modules/discounts/repositories/usage-discounts.repository.ts old mode 100644 new mode 100755 diff --git a/src/modules/invoices/DTO/apply-discount.dto.ts b/src/modules/invoices/DTO/apply-discount.dto.ts old mode 100644 new mode 100755 diff --git a/src/modules/invoices/DTO/update-invoice.dto.ts b/src/modules/invoices/DTO/update-invoice.dto.ts old mode 100644 new mode 100755 diff --git a/src/modules/invoices/constants/index.ts b/src/modules/invoices/constants/index.ts old mode 100644 new mode 100755 diff --git a/src/modules/invoices/enums/invoice-recurring-period.enum.ts b/src/modules/invoices/enums/invoice-recurring-period.enum.ts old mode 100644 new mode 100755 diff --git a/src/modules/invoices/invoices.module.ts b/src/modules/invoices/invoices.module.ts index 0ca6ee6..198f4cc 100755 --- a/src/modules/invoices/invoices.module.ts +++ b/src/modules/invoices/invoices.module.ts @@ -10,7 +10,6 @@ import { InvoicesService } from "./providers/invoices.service"; import { InvoiceProcessor } from "./queue/invoice.processor"; import { InvoiceItemsRepository } from "./repositories/invoice-items.repository"; import { InvoicesRepository } from "./repositories/invoices.repository"; -import { DiscountsModule } from "../discounts/discounts.module"; import { Discount } from "../discounts/entities/discount.entity"; import { UsageDiscount } from "../discounts/entities/usage-discount.entity"; import { DiscountRepository } from "../discounts/repositories/discounts.repository"; @@ -26,7 +25,6 @@ import { WalletsModule } from "../wallets/wallets.module"; LoggerModule, BullModule.registerQueue({ name: INVOICE.INVOICE_QUEUE_NAME }), TypeOrmModule.forFeature([Invoice, InvoiceItem, Discount, UsageDiscount]), - DiscountsModule, UsersModule, WalletsModule, UtilsModule, diff --git a/src/modules/invoices/queue/invoice.processor.ts b/src/modules/invoices/queue/invoice.processor.ts old mode 100644 new mode 100755 diff --git a/src/modules/landing/landing.controller.ts b/src/modules/landing/landing.controller.ts old mode 100644 new mode 100755 diff --git a/src/modules/landing/landing.module.ts b/src/modules/landing/landing.module.ts old mode 100644 new mode 100755 diff --git a/src/modules/landing/providers/landing.service.ts b/src/modules/landing/providers/landing.service.ts old mode 100644 new mode 100755 diff --git a/src/modules/learnings/DTO/update-learning-category.dto.ts b/src/modules/learnings/DTO/update-learning-category.dto.ts old mode 100644 new mode 100755 diff --git a/src/modules/learnings/DTO/update-learning.dto.ts b/src/modules/learnings/DTO/update-learning.dto.ts old mode 100644 new mode 100755 diff --git a/src/modules/logger/logger.module.ts b/src/modules/logger/logger.module.ts old mode 100644 new mode 100755 diff --git a/src/modules/logger/logger.service.ts b/src/modules/logger/logger.service.ts old mode 100644 new mode 100755 diff --git a/src/modules/notifications/interfaces/ISendNotificationData.ts b/src/modules/notifications/interfaces/ISendNotificationData.ts old mode 100644 new mode 100755 diff --git a/src/modules/referrals/DTO/use-referral-code.dto.ts b/src/modules/referrals/DTO/use-referral-code.dto.ts old mode 100644 new mode 100755 diff --git a/src/modules/referrals/entities/referral-code.entity.ts b/src/modules/referrals/entities/referral-code.entity.ts old mode 100644 new mode 100755 diff --git a/src/modules/referrals/entities/referral-reward.entity.ts b/src/modules/referrals/entities/referral-reward.entity.ts old mode 100644 new mode 100755 diff --git a/src/modules/referrals/entities/referral.entity.ts b/src/modules/referrals/entities/referral.entity.ts old mode 100644 new mode 100755 diff --git a/src/modules/referrals/enums/referral-reward-status.enum.ts b/src/modules/referrals/enums/referral-reward-status.enum.ts old mode 100644 new mode 100755 diff --git a/src/modules/referrals/enums/referral-status.enum.ts b/src/modules/referrals/enums/referral-status.enum.ts old mode 100644 new mode 100755 diff --git a/src/modules/referrals/providers/referrals.service.ts b/src/modules/referrals/providers/referrals.service.ts old mode 100644 new mode 100755 diff --git a/src/modules/referrals/referrals.controller.ts b/src/modules/referrals/referrals.controller.ts old mode 100644 new mode 100755 diff --git a/src/modules/referrals/referrals.module.ts b/src/modules/referrals/referrals.module.ts old mode 100644 new mode 100755 diff --git a/src/modules/referrals/repositories/referral-codes.repository.ts b/src/modules/referrals/repositories/referral-codes.repository.ts old mode 100644 new mode 100755 diff --git a/src/modules/referrals/repositories/referral-rewards.repository.ts b/src/modules/referrals/repositories/referral-rewards.repository.ts old mode 100644 new mode 100755 diff --git a/src/modules/referrals/repositories/referrals.repository.ts b/src/modules/referrals/repositories/referrals.repository.ts old mode 100644 new mode 100755 diff --git a/src/modules/sliders/DTO/create-slider.dto.ts b/src/modules/sliders/DTO/create-slider.dto.ts old mode 100644 new mode 100755 diff --git a/src/modules/sliders/DTO/update-slider.dto.ts b/src/modules/sliders/DTO/update-slider.dto.ts old mode 100644 new mode 100755 diff --git a/src/modules/sliders/entities/slider.entity.ts b/src/modules/sliders/entities/slider.entity.ts old mode 100644 new mode 100755 diff --git a/src/modules/sliders/providers/sliders.service.ts b/src/modules/sliders/providers/sliders.service.ts old mode 100644 new mode 100755 diff --git a/src/modules/sliders/repositories/sliders.repository.ts b/src/modules/sliders/repositories/sliders.repository.ts old mode 100644 new mode 100755 diff --git a/src/modules/sliders/sliders.controller.ts b/src/modules/sliders/sliders.controller.ts old mode 100644 new mode 100755 diff --git a/src/modules/sliders/sliders.module.ts b/src/modules/sliders/sliders.module.ts old mode 100644 new mode 100755 diff --git a/src/modules/subscriptions/entities/subscription.entity.ts b/src/modules/subscriptions/entities/subscription.entity.ts index de71bf6..bc37488 100755 --- a/src/modules/subscriptions/entities/subscription.entity.ts +++ b/src/modules/subscriptions/entities/subscription.entity.ts @@ -1,6 +1,6 @@ // eslint-disable-next-line import/no-named-as-default import Decimal from "decimal.js"; -import { Column, Entity, Index, ManyToOne, OneToMany } from "typeorm"; +import { Column, DeleteDateColumn, Entity, Index, ManyToOne, OneToMany } from "typeorm"; import { UserSubscription } from "./user-subscription.entity"; import { BaseEntity } from "../../../common/entities/base.entity"; @@ -31,4 +31,7 @@ export class SubscriptionPlan extends BaseEntity { @ManyToOne(() => DirectDiscount, (directDiscount) => directDiscount.subscriptionPlans, { nullable: true }) directDiscount?: DirectDiscount; + + @DeleteDateColumn({ nullable: true }) + deletedAt?: Date; } diff --git a/src/modules/subscriptions/entities/user-quick-access.entity.ts b/src/modules/subscriptions/entities/user-quick-access.entity.ts old mode 100644 new mode 100755 diff --git a/src/modules/subscriptions/providers/subscriptions.service.ts b/src/modules/subscriptions/providers/subscriptions.service.ts index 710a216..ba441c4 100755 --- a/src/modules/subscriptions/providers/subscriptions.service.ts +++ b/src/modules/subscriptions/providers/subscriptions.service.ts @@ -144,7 +144,7 @@ export class SubscriptionsService { } //************************************ */ - async getServiceSubscriptions(serviceId: string, queryDto: ServiceSubsQueryDto) { + async All(serviceId: string, queryDto: ServiceSubsQueryDto) { const service = await this.danakServices.findServiceById(serviceId); const { limit, skip } = PaginationUtils(queryDto); @@ -237,6 +237,45 @@ export class SubscriptionsService { } } //************************************ */ + async getServiceSubscriptions(serviceId: string, queryDto: ServiceSubsQueryDto) { + const service = await this.danakServices.findServiceById(serviceId); + + const { limit, skip } = PaginationUtils(queryDto); + + const queryBuilder = this.subscriptionsPlanRepository + .createQueryBuilder("subscription") + .leftJoin("subscription.service", "service") + .addSelect(["service.id"]) + // .leftJoin("subscription.discounts", "discount") + // .addSelect(["discount.calculationType", "discount.amount", "discount.startDate", "discount.endDate", "discount.isActive"]) + .where("service.id = :serviceId", { serviceId }); + + if (queryDto.q) { + queryBuilder.andWhere("subscription.name ILIKE :query", { query: `%${queryDto.q}%` }); + } + + if (queryDto.isActive !== undefined) { + queryBuilder.andWhere("subscription.isActive = :isActive", { isActive: queryDto.isActive === 1 }); + } + + const [subscriptions, count] = await queryBuilder.skip(skip).take(limit).getManyAndCount(); + + return { + service, + subscriptions, + count, + pagination: true, + }; + } + //************************************ */ + + async getAllServiceSubscriptions(serviceIds: string[]) { + const subscriptions = await this.subscriptionsPlanRepository.find({ + where: { service: { id: In(serviceIds) }, isActive: true }, + }); + return subscriptions; + } + //************************************ */ async countUserSubscriptions(userId: string) { const subscriptionCount = await this.userSubscriptionsRepository.count({ @@ -335,8 +374,6 @@ export class SubscriptionsService { const startOfWeek = dayjs().startOf("week").toDate(); const endOfWeek = dayjs().endOf("week").toDate(); - console.log(startOfWeek, endOfWeek); - const sales = await this.userSubscriptionsRepository .createQueryBuilder("userSubscription") .select("DATE(userSubscription.startDate)", "date") diff --git a/src/modules/subscriptions/providers/users-quick-access.service.ts b/src/modules/subscriptions/providers/users-quick-access.service.ts old mode 100644 new mode 100755 diff --git a/src/modules/subscriptions/repositories/users-quick-access.repository.ts b/src/modules/subscriptions/repositories/users-quick-access.repository.ts old mode 100644 new mode 100755 diff --git a/src/modules/subscriptions/subscriptions.module.ts b/src/modules/subscriptions/subscriptions.module.ts index 945b499..1110078 100755 --- a/src/modules/subscriptions/subscriptions.module.ts +++ b/src/modules/subscriptions/subscriptions.module.ts @@ -31,6 +31,6 @@ import { UserQuickAccessRepository } from "./repositories/users-quick-access.rep UserQuickAccessService, ], controllers: [SubscriptionsController], - exports: [SubscriptionsService, TypeOrmModule, SubscriptionsPlanRepository, UserSubscriptionsRepository], + exports: [SubscriptionsService, SubscriptionsPlanRepository, UserSubscriptionsRepository], }) export class SubscriptionsModule {} diff --git a/src/modules/tickets/constant/index.ts b/src/modules/tickets/constant/index.ts old mode 100644 new mode 100755 diff --git a/src/modules/tickets/interfaces/referral-strategy.ts b/src/modules/tickets/interfaces/referral-strategy.ts old mode 100644 new mode 100755 diff --git a/src/modules/tickets/providers/referral-strategy.factory.ts b/src/modules/tickets/providers/referral-strategy.factory.ts old mode 100644 new mode 100755 diff --git a/src/modules/tickets/providers/referral.service.ts b/src/modules/tickets/providers/referral.service.ts old mode 100644 new mode 100755 diff --git a/src/modules/tickets/strategies/group.strategy.ts b/src/modules/tickets/strategies/group.strategy.ts old mode 100644 new mode 100755 diff --git a/src/modules/tickets/strategies/round-robin.strategy.ts b/src/modules/tickets/strategies/round-robin.strategy.ts old mode 100644 new mode 100755 diff --git a/src/modules/users/DTO/create-customer.dto.ts b/src/modules/users/DTO/create-customer.dto.ts old mode 100644 new mode 100755 diff --git a/src/modules/users/DTO/update-customer.dto.ts b/src/modules/users/DTO/update-customer.dto.ts old mode 100644 new mode 100755 diff --git a/src/modules/users/entities/refresh-token.entity.ts b/src/modules/users/entities/refresh-token.entity.ts old mode 100644 new mode 100755 diff --git a/src/modules/users/enums/nationality.enum.ts b/src/modules/users/enums/nationality.enum.ts old mode 100644 new mode 100755 diff --git a/src/modules/users/providers/admins.service.ts b/src/modules/users/providers/admins.service.ts old mode 100644 new mode 100755 diff --git a/src/modules/users/providers/customers.service.ts b/src/modules/users/providers/customers.service.ts old mode 100644 new mode 100755 diff --git a/src/modules/users/repositories/refresh-token.repository.ts b/src/modules/users/repositories/refresh-token.repository.ts old mode 100644 new mode 100755 diff --git a/src/modules/utils/providers/international.utils.ts b/src/modules/utils/providers/international.utils.ts old mode 100644 new mode 100755