|
7 | 7 | - Section 15.8: Reporting must align with Architecture targets |
8 | 8 | """ |
9 | 9 |
|
| 10 | +from django.conf import settings |
10 | 11 | from django.contrib import messages |
11 | 12 | from django.contrib.auth.decorators import login_required |
12 | 13 | from django.db import models |
@@ -83,15 +84,24 @@ def request_report(request): |
83 | 84 | if report_type == ReportJob.ReportType.INVENTORY_VALUATION: |
84 | 85 | from reporting.tasks import generate_inventory_valuation_report |
85 | 86 |
|
86 | | - generate_inventory_valuation_report.delay(job.id) |
| 87 | + if getattr(settings, "CELERY_TASK_ALWAYS_EAGER", False): |
| 88 | + generate_inventory_valuation_report(job.id) |
| 89 | + else: |
| 90 | + generate_inventory_valuation_report.delay(job.id) |
87 | 91 | elif report_type == ReportJob.ReportType.SALES_SUMMARY: |
88 | 92 | from reporting.tasks import generate_sales_summary_report |
89 | 93 |
|
90 | | - generate_sales_summary_report.delay(job.id) |
| 94 | + if getattr(settings, "CELERY_TASK_ALWAYS_EAGER", False): |
| 95 | + generate_sales_summary_report(job.id) |
| 96 | + else: |
| 97 | + generate_sales_summary_report.delay(job.id) |
91 | 98 | elif report_type == ReportJob.ReportType.STOCK_MOVEMENT: |
92 | 99 | from reporting.tasks import generate_stock_movement_report |
93 | 100 |
|
94 | | - generate_stock_movement_report.delay(job.id) |
| 101 | + if getattr(settings, "CELERY_TASK_ALWAYS_EAGER", False): |
| 102 | + generate_stock_movement_report(job.id) |
| 103 | + else: |
| 104 | + generate_stock_movement_report.delay(job.id) |
95 | 105 |
|
96 | 106 | messages.success(request, f"Report requested: {job.get_report_type_display()}") |
97 | 107 |
|
|
0 commit comments