update: change the danak services fetch to another route and accept category id "

query for that
This commit is contained in:
mahyargdz
2025-03-02 15:19:55 +03:30
parent af9f365bc7
commit 4d0344c376
9 changed files with 99 additions and 25 deletions
@@ -10,7 +10,8 @@ import { CategoryListSearchQueryDto, CategorySearchQueryDto } from "../DTO/categ
import { CreateCategoryDto } from "../DTO/create-category.dto";
import { CreateServiceDto } from "../DTO/create-service.dto";
import { DanakServiceReviewQueryDto } from "../DTO/danak-service-review-query.dto";
import { DanakServicesSearchQueryDto } from "../DTO/danak-services-search-query.dto";
import { DanakServicesQueryDto, DanakServicesSearchQueryDto } from "../DTO/danak-services-search-query.dto";
import { UpdateReviewStatusDto } from "../DTO/update-review-status.dto";
import { DanakServiceCategory } from "../entities/danak-service-category.entity";
import { ReviewStatus } from "../enums/review-status.enum";
import { DanakServicesCategoryRepository } from "../repositories/danak-services-category.repository";
@@ -96,7 +97,7 @@ export class DanakServicesService {
}
/******************************************** */
async getCategoryServices(categoryId: string) {
async getCategoryServices(categoryId?: string) {
const category = await this.danakServicesCategoryRepository.findOne({
where: { id: categoryId, isActive: true, danakServices: { isActive: true } },
relations: {
@@ -164,6 +165,11 @@ export class DanakServicesService {
async getServicesList(queryDto: DanakServicesSearchQueryDto) {
return this.danakServicesRepository.getServicesForAdmin(queryDto);
}
/******************************************** */
async getServicesListForUser(queryDto: DanakServicesQueryDto) {
return this.danakServicesRepository.getServicesForUser(queryDto);
}
/******************************************** */
@@ -322,6 +328,14 @@ export class DanakServicesService {
/******************************************** */
async updateDanakServiceReviewStatus(updateParamDto: UpdateReviewStatusDto) {
if (updateParamDto.status === ReviewStatus.APPROVED) {
return await this.approveReview(updateParamDto.id);
} else {
return await this.rejectReview(updateParamDto.id);
}
}
async approveReview(reviewId: string) {
const review = await this.danakServiceReviewRepository.findOneBy({ id: reviewId });
if (!review) throw new BadRequestException(ServiceMessage.REVIEW_NOT_EXIST);