From a63eaf0110f7c5a20f0bfc2c5aa9d453045e9290 Mon Sep 17 00:00:00 2001 From: Aswin Ashar Abdullah Date: Fri, 26 Jul 2024 14:03:38 +0700 Subject: [PATCH] fix(season) update fix priority --- .../usecases/managers/helpers/validate.helper.ts | 1 - .../managers/update-season-period.manager.ts | 16 +++++++++------- .../usecases/season-period-data.orchestrator.ts | 7 +++++-- .../season-period-data.controller.ts | 2 +- 4 files changed, 15 insertions(+), 11 deletions(-) diff --git a/src/modules/season-related/season-period/domain/usecases/managers/helpers/validate.helper.ts b/src/modules/season-related/season-period/domain/usecases/managers/helpers/validate.helper.ts index 8a8d7ce..21dfd1e 100644 --- a/src/modules/season-related/season-period/domain/usecases/managers/helpers/validate.helper.ts +++ b/src/modules/season-related/season-period/domain/usecases/managers/helpers/validate.helper.ts @@ -1,5 +1,4 @@ import { HttpStatus, UnprocessableEntityException } from '@nestjs/common'; -import { Brackets } from 'typeorm'; import * as _ from 'lodash'; // function ini bergungsi untuk validasi season period yang sama diff --git a/src/modules/season-related/season-period/domain/usecases/managers/update-season-period.manager.ts b/src/modules/season-related/season-period/domain/usecases/managers/update-season-period.manager.ts index a90d333..98b5d12 100644 --- a/src/modules/season-related/season-period/domain/usecases/managers/update-season-period.manager.ts +++ b/src/modules/season-related/season-period/domain/usecases/managers/update-season-period.manager.ts @@ -13,14 +13,16 @@ import { ValidateSeasonPeriodHelper } from './helpers/validate.helper'; @Injectable() export class UpdateSeasonPeriodManager extends BaseUpdateManager { async validateProcess(): Promise { - const priority = await ValidateSeasonPeriodHelper( - this.dataService, - this.data, - ); + if (!this.data.isUpdatePrice) { + const priority = await ValidateSeasonPeriodHelper( + this.dataService, + this.data, + ); - Object.assign(this.data, { - priority: priority, - }); + Object.assign(this.data, { + priority: priority, + }); + } return; } diff --git a/src/modules/season-related/season-period/domain/usecases/season-period-data.orchestrator.ts b/src/modules/season-related/season-period/domain/usecases/season-period-data.orchestrator.ts index 8db3a3c..d525a16 100644 --- a/src/modules/season-related/season-period/domain/usecases/season-period-data.orchestrator.ts +++ b/src/modules/season-related/season-period/domain/usecases/season-period-data.orchestrator.ts @@ -43,8 +43,11 @@ export class SeasonPeriodDataOrchestrator extends BaseDataTransactionOrchestrato return this.createManager.getResult(); } - async update(dataId, data): Promise { - this.updateManager.setData(dataId, data); + async update(dataId, data, updatePrice = false): Promise { + this.updateManager.setData(dataId, { + ...data, + isUpdatePrice: updatePrice + }); this.updateManager.setService(this.serviceData, TABLE_NAME.SEASON_PERIOD); await this.updateManager.execute(); return this.updateManager.getResult(); diff --git a/src/modules/season-related/season-period/infrastructure/season-period-data.controller.ts b/src/modules/season-related/season-period/infrastructure/season-period-data.controller.ts index 76c7ed0..3a7050a 100644 --- a/src/modules/season-related/season-period/infrastructure/season-period-data.controller.ts +++ b/src/modules/season-related/season-period/infrastructure/season-period-data.controller.ts @@ -86,7 +86,7 @@ export class SeasonPeriodDataController { @Param('id') dataId: string, @Body() data: UpdateSeasonPeriodItemDto, ): Promise { - return await this.orchestrator.update(dataId, data); + return await this.orchestrator.update(dataId, data, true); } @Delete(':id')