From 7040ec7c0612de7966f3cb6daf579f489b15ba3b Mon Sep 17 00:00:00 2001 From: GloireMutaliko21 Date: Thu, 3 Oct 2024 14:03:44 +0200 Subject: [PATCH] fix: daily plan save by team --- packages/contracts/src/daily-plan.model.ts | 2 +- packages/core/src/tasks/daily-plan/daily-plan.service.ts | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/packages/contracts/src/daily-plan.model.ts b/packages/contracts/src/daily-plan.model.ts index ee6c702daf7..e4e1071821c 100644 --- a/packages/contracts/src/daily-plan.model.ts +++ b/packages/contracts/src/daily-plan.model.ts @@ -38,7 +38,7 @@ export interface IDailyPlanTasksUpdateInput // Interface for data type should be sent when need to delete a task from many daily plans export interface IDailyPlansTasksUpdateInput - extends Pick, + extends Pick, IBasePerTenantAndOrganizationEntityModel { plansIds: ID[]; } diff --git a/packages/core/src/tasks/daily-plan/daily-plan.service.ts b/packages/core/src/tasks/daily-plan/daily-plan.service.ts index 5fabc553623..82e832fe348 100644 --- a/packages/core/src/tasks/daily-plan/daily-plan.service.ts +++ b/packages/core/src/tasks/daily-plan/daily-plan.service.ts @@ -41,7 +41,7 @@ export class DailyPlanService extends TenantAwareCrudService { async createDailyPlan(partialEntity: IDailyPlanCreateInput): Promise { try { const tenantId = RequestContext.currentTenantId(); - const { employeeId, organizationId, taskId } = partialEntity; + const { employeeId, organizationId, organizationTeamId, taskId } = partialEntity; const dailyPlanDate = new Date(partialEntity.date).toISOString().split('T')[0]; @@ -56,6 +56,7 @@ export class DailyPlanService extends TenantAwareCrudService { query.setFindOptions({ relations: { tasks: true } }); query.where('"dailyPlan"."tenantId" = :tenantId', { tenantId }); query.andWhere('"dailyPlan"."organizationId" = :organizationId', { organizationId }); + query.andWhere('"dailyPlan"."organizationTeamId" = :organizationTeamId', { organizationTeamId }); query.andWhere(p(`DATE("dailyPlan"."date") = :dailyPlanDate`), { dailyPlanDate: `${dailyPlanDate}` }); query.andWhere('"dailyPlan"."employeeId" = :employeeId', { employeeId }); let dailyPlan = await query.getOne(); @@ -317,7 +318,7 @@ export class DailyPlanService extends TenantAwareCrudService { async removeTaskFromManyPlans(taskId: ID, input: IDailyPlansTasksUpdateInput): Promise { try { const tenantId = RequestContext.currentTenantId(); - const { employeeId, plansIds, organizationId } = input; + const { employeeId, plansIds, organizationId, organizationTeamId } = input; const currentDate = new Date().toISOString().split('T')[0]; // Initial query @@ -331,6 +332,7 @@ export class DailyPlanService extends TenantAwareCrudService { // Conditions query.where(p(`"${query.alias}"."tenantId" = :tenantId`), { tenantId }); query.andWhere(p(`"${query.alias}"."organizationId" = :organizationId`), { organizationId }); + query.andWhere(p(`"${query.alias}"."organizationTeamId" = :organizationTeamId`), { organizationTeamId }); query.andWhere(p(`"${query.alias}"."employeeId" = :employeeId`), { employeeId }); // Find condition must include only today and future plans. We cannot delete tasks from past plans