diff --git a/app/models/financial_adjust.py b/app/models/financial_adjust.py new file mode 100644 index 0000000..b36e3aa --- /dev/null +++ b/app/models/financial_adjust.py @@ -0,0 +1,20 @@ +import uuid +from datetime import datetime +from typing import Optional + +from pydantic import Field + +from core.models.base import BaseModel + + +class AdjustFinancialModel(BaseModel): + id: Optional[uuid.UUID] = Field(alias='_id') + project_id: Optional[uuid.UUID] = Field(description="کد شناسایی پروژه در این فیلد قرار می گیرد") + number:Optional[float] = Field(description='شماره تعدیل') + date_contractor:Optional[datetime] = Field(description="تاریخ ارسال پیمانکار") + amount_cycle_supervisor: Optional[int] = Field(description=" مبلغ تائید شده") + amount: Optional[int] = Field(description='مبلغ') + date_at: Optional[datetime] = Field(description='تاریخ پرداخت') + is_assign: bool = Field(description='آیا پروژه تفویضی است؟', default=0) + status_id: Optional[uuid.UUID] = Field(description='کد شناسایی صورت وضعیت در قسمت رسیدگی') + diff --git a/app/repositories/financial_adjust.py b/app/repositories/financial_adjust.py new file mode 100644 index 0000000..d5f9e8d --- /dev/null +++ b/app/repositories/financial_adjust.py @@ -0,0 +1,12 @@ +import uuid + +from app.config import TaskEnv +from app.models.financial_adjust import AdjustFinancialModel +from core.repositories.base import BaseRepository + + +class FinancialAdjustRepository(BaseRepository): + def __init__(self): + super().__init__(collection=TaskEnv.CLN_FINANCIAL_ADJUST, model=AdjustFinancialModel) + + diff --git a/app/urls/financial_adjust.py b/app/urls/financial_adjust.py new file mode 100644 index 0000000..f268866 --- /dev/null +++ b/app/urls/financial_adjust.py @@ -0,0 +1,45 @@ +from uuid import UUID + +from fastapi import Body + +from app.models.financial_adjust import AdjustFinancialModel +from app.repositories.financial_adjust import FinancialAdjustRepository +from core.app import app +from core.utils.router import generate_router, shrink +from core.utils.table_engine import TableEngineExport, TableEngineRequestType + +ThisModel = AdjustFinancialModel +router_base_url = 'financial_adjust' +_tag_base = [router_base_url] +router = generate_router(router_base_url, auth_dependencies=False, version='v2') +repo = FinancialAdjustRepository() + + + +@router.post('/create', response_model=ThisModel, tags=_tag_base, description='اگه پروژه تفویضی بود اون اطلاعاتی که باید از قسمت رسیدگی پر بشه را وارد نکن فقط status_id را وارد کن') +@shrink(repo.create) +def create(coding: ThisModel = Body(...)): + pass + + +@router.put('/{_id}', response_model=ThisModel, tags=_tag_base, description='تعدیل') +@shrink(repo.update) +def update(_id: UUID, coding: ThisModel = Body(...)): + pass + +@router.get('/{_id}', response_model=ThisModel, tags=_tag_base, description='تعدیل') +@shrink(repo.get) +def get(_id: UUID): + pass + +@router.delete('/{_id}', response_model=ThisModel, tags=_tag_base, description='تعدیل') +@shrink(repo.delete) +def delete(_id: UUID): + pass + +@router.post('', response_model=TableEngineExport[ThisModel], tags=_tag_base, description='تعدیل') +@shrink(repo.fetch) +def fetch(body: TableEngineRequestType = Body(...)): + pass + +app.include_router(router) \ No newline at end of file diff --git a/app/urls/financial_status.py b/app/urls/financial_status.py index 2d4d411..785d380 100644 --- a/app/urls/financial_status.py +++ b/app/urls/financial_status.py @@ -16,7 +16,7 @@ repo = FinancialStatusRepository() -@router.post('/create', response_model=ThisModel, tags=_tag_base, description='صورت وضعیت') +@router.post('/create', response_model=ThisModel, tags=_tag_base, description='اگه پروژه تفویضی بود اون اطلاعاتی که باید از قسمت رسیدگی پر بشه را وارد نکن فقط status_id را وارد کن') @shrink(repo.create) def create(coding: ThisModel = Body(...)): pass