feat: add new api and fix some problems
This commit is contained in:
@@ -11,6 +11,7 @@ from weasyprint import HTML
|
||||
|
||||
from core.apps.evaluation.models import AutoEvaluationModel
|
||||
from core.apps.evaluation.choices.auto import ObjectOwnerType
|
||||
from core.apps.documents.models import ExecutorInfoModel
|
||||
from core.apps.documents.serializers.contract import ContractPDFRequestSerializer
|
||||
from core.services import CurrencyService
|
||||
|
||||
@@ -194,6 +195,7 @@ class ValuationReportPDFView(APIView):
|
||||
contract_ctx = self._contract_context(auto, report_date)
|
||||
inspection_ctx = self._inspection_context(payload)
|
||||
rates_ctx = self._rates_context(valuation_date)
|
||||
executor_ctx = self._executor_context()
|
||||
|
||||
ctx = {
|
||||
"logo_url": "",
|
||||
@@ -211,8 +213,9 @@ class ValuationReportPDFView(APIView):
|
||||
"owner": owner_ctx,
|
||||
"contract": contract_ctx,
|
||||
"company": {
|
||||
"director": "—",
|
||||
"director": executor_ctx.get("evaluator_full_name") or "—",
|
||||
},
|
||||
"executor": executor_ctx,
|
||||
"rates": rates_ctx,
|
||||
"inspection": inspection_ctx,
|
||||
"cost": {
|
||||
@@ -372,6 +375,40 @@ class ValuationReportPDFView(APIView):
|
||||
"eur": rates.get("EUR", ""),
|
||||
}
|
||||
|
||||
def _executor_context(self):
|
||||
instance = ExecutorInfoModel.objects.order_by("-created_at").first()
|
||||
if not instance:
|
||||
return {
|
||||
"name": "",
|
||||
"address": "",
|
||||
"account_number": "",
|
||||
"tin": "",
|
||||
"bank": "",
|
||||
"mfo": "",
|
||||
"oked": "",
|
||||
"email": "",
|
||||
"phone": "",
|
||||
"evaluator_full_name": "",
|
||||
"evaluator_certificate": "",
|
||||
"license_info": "",
|
||||
"insurance_info": "",
|
||||
}
|
||||
return {
|
||||
"name": instance.name or "",
|
||||
"address": instance.address or "",
|
||||
"account_number": instance.account_number or "",
|
||||
"tin": instance.tin or "",
|
||||
"bank": instance.bank or "",
|
||||
"mfo": instance.mfo or "",
|
||||
"oked": instance.oked or "",
|
||||
"email": instance.email or "",
|
||||
"phone": instance.phone or "",
|
||||
"evaluator_full_name": instance.evaluator_full_name or "",
|
||||
"evaluator_certificate": instance.evaluator_certificate or "",
|
||||
"license_info": instance.license_info or "",
|
||||
"insurance_info": instance.insurance_info or "",
|
||||
}
|
||||
|
||||
def _empty_analog(self):
|
||||
return {
|
||||
"source": "",
|
||||
|
||||
Reference in New Issue
Block a user