Files
sakhteman/app/repositories/financial_pre_payment.py
T

25 lines
915 B
Python

import uuid
from app.config import TaskEnv
from app.models.financial_pre_payment import PrePaymentModel
from core.repositories.base import BaseRepository
from core.service.mongo_db import use_collection
class PrePaymentRepository(BaseRepository):
def __init__(self):
super().__init__(collection=TaskEnv.CLN_FINANCIAL_PRE_PAYMENT, model=PrePaymentModel)
async def sum_amount(self,project_id:uuid.UUID):
sum = await use_collection(TaskEnv.CLN_FINANCIAL_PRE_PAYMENT).aggregate([
{'$match': {'project_id': project_id}},
{'$group': {'_id': None, 'sum': { '$sum': "$amount"}}}
]).to_list(None)
if sum:
return sum[0]['sum']
return None
async def get_list(self,project_id:uuid.UUID):
get_list = await use_collection(TaskEnv.CLN_FINANCIAL_PRE_PAYMENT).find({'project_id': project_id}).to_list(None)
return get_list