From 88f23a6f4df08a07e6807be76572d2533a1528f9 Mon Sep 17 00:00:00 2001 From: shahzeydyfah Date: Thu, 29 May 2025 14:28:22 +0330 Subject: [PATCH] fix(bill delay):update project --- app/repositories/bill_delay.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/app/repositories/bill_delay.py b/app/repositories/bill_delay.py index 0f1bbe3..c875b91 100644 --- a/app/repositories/bill_delay.py +++ b/app/repositories/bill_delay.py @@ -3,6 +3,7 @@ from uuid import UUID from app.config import TaskEnv from app.models.bill_delay import BillDelayModel from core.repositories.base import BaseRepository +from core.service.mongo_db import use_collection class BillDelayRepository(BaseRepository): @@ -59,9 +60,17 @@ class BillDelayRepository(BaseRepository): return coding async def create(self, coding: BillDelayModel): coding = self.create_sum(coding) - return await super().create(coding) + delay = await super().create(coding) + await use_collection(TaskEnv.CLN_PROJECT).update_one({"_id": coding.project_id}, {"$inc": {"all_delay_day":coding.total_day}}) + return delay async def update(self, _id: UUID, update: BillDelayModel): + old = await self.get(_id) + old_model = BillDelayModel(**old) update = self.create_sum(update) + if old_model.total_day: + diff = update.total_day - old_model.total_day + await use_collection(TaskEnv.CLN_PROJECT).update_one({"_id": update.project_id}, + {"$inc": {"all_delay_day": diff}}) return await super().update(_id, update)