hotfix: skip economic export when customer number missing (local-only)

This commit is contained in:
Christian 2026-05-05 07:33:01 +02:00
parent ebdb13168d
commit a5866132ab
2 changed files with 61 additions and 7 deletions

View File

@ -1 +1 @@
2.2.95
2.2.96

View File

@ -254,15 +254,69 @@ class EconomicExportService:
(order['customer_id'],)
)
if not check_link or not check_link.get('hub_customer_id'):
raise HTTPException(
status_code=400,
detail=f"Customer '{order['customer_name']}' er ikke linket til en Hub kunde. Gå til vTiger kunder og link kunden først."
message = (
f"LOCAL-ONLY: Customer '{order['customer_name']}' er ikke linket til en Hub kunde. "
"Eksport til e-conomic er sprunget over."
)
logger.warning("⚠️ %s", message)
result = TModuleEconomicExportResult(
success=True,
dry_run=True,
order_id=request.order_id,
economic_draft_id=None,
economic_order_number=None,
message=message,
details={
"skipped_reason": "missing_hub_customer_link",
"order_number": order['order_number'],
"customer_name": order['customer_name'],
"read_only": self.read_only,
"dry_run": True,
}
)
audit.log_export_completed(
order_id=request.order_id,
economic_draft_id=None,
economic_order_number=None,
dry_run=True,
user_id=user_id,
)
return result
else:
raise HTTPException(
status_code=400,
detail=f"Customer '{order['customer_name']}' mangler e-conomic kundenummer. Opdater kunde i Customers modulet."
message = (
f"LOCAL-ONLY: Customer '{order['customer_name']}' mangler e-conomic kundenummer. "
"Eksport til e-conomic er sprunget over."
)
logger.warning("⚠️ %s", message)
result = TModuleEconomicExportResult(
success=True,
dry_run=True,
order_id=request.order_id,
economic_draft_id=None,
economic_order_number=None,
message=message,
details={
"skipped_reason": "missing_economic_customer_number",
"order_number": order['order_number'],
"customer_name": order['customer_name'],
"read_only": self.read_only,
"dry_run": True,
}
)
audit.log_export_completed(
order_id=request.order_id,
economic_draft_id=None,
economic_order_number=None,
dry_run=True,
user_id=user_id,
)
return result
customer_number = customer_data['economic_customer_number']