add get_ai_response

This commit is contained in:
2026-02-01 15:59:32 +03:30
parent 17096924c1
commit d6b6b46e3b
81 changed files with 331 additions and 202 deletions

2
.idea/RSI.iml generated
View File

@@ -19,7 +19,7 @@
<content url="file://$MODULE_DIR$"> <content url="file://$MODULE_DIR$">
<excludeFolder url="file://$MODULE_DIR$/arma" /> <excludeFolder url="file://$MODULE_DIR$/arma" />
</content> </content>
<orderEntry type="jdk" jdkName="Python 3.9 (rsi_env)" jdkType="Python SDK" /> <orderEntry type="jdk" jdkName="Python 3.10 (rsi-env) (3)" jdkType="Python SDK" />
<orderEntry type="sourceFolder" forTests="false" /> <orderEntry type="sourceFolder" forTests="false" />
</component> </component>
<component name="PyDocumentationSettings"> <component name="PyDocumentationSettings">

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -177,3 +177,77 @@ class SSLAdapter(HTTPAdapter):
self.context = create_urllib3_context() self.context = create_urllib3_context()
self.context.options |= 0x4 # OP_LEGACY_SERVER_CONNECT self.context.options |= 0x4 # OP_LEGACY_SERVER_CONNECT
super().__init__(*args, **kwargs) super().__init__(*args, **kwargs)
from datetime import datetime, timedelta
from django.utils import timezone
def apply_date_filter(queryset, date_filter):
if not date_filter:
return queryset
field = date_filter.get("field", "Date")
filter_type = date_filter.get("type")
value = date_filter.get("value")
now = timezone.now()
if filter_type == "today":
start = now.replace(hour=0, minute=0, second=0, microsecond=0)
end = start + timedelta(days=1)
return queryset.filter(
**{f"{field}__gte": start, f"{field}__lt": end}
)
if filter_type == "yesterday":
start = (now - timedelta(days=1)).replace(
hour=0, minute=0, second=0, microsecond=0
)
end = start + timedelta(days=1)
return queryset.filter(
**{f"{field}__gte": start, f"{field}__lt": end}
)
if filter_type == "last_n_days" and value:
start = now - timedelta(days=int(value))
return queryset.filter(**{f"{field}__gte": start})
if filter_type == "this_week":
start = now - timedelta(days=now.weekday())
start = start.replace(hour=0, minute=0, second=0, microsecond=0)
return queryset.filter(**{f"{field}__gte": start})
if filter_type == "this_month":
start = now.replace(day=1, hour=0, minute=0, second=0, microsecond=0)
return queryset.filter(**{f"{field}__gte": start})
if filter_type == "last_n_month" and value:
start = now
for _ in range(int(value)):
start = (start.replace(day=1) - timedelta(days=1)).replace(day=1)
start = start.replace(hour=0, minute=0, second=0, microsecond=0)
return queryset.filter(**{f"{field}__gte": start})
if filter_type == "this_year":
start = now.replace(
month=1, day=1, hour=0, minute=0, second=0, microsecond=0
)
return queryset.filter(**{f"{field}__gte": start})
if filter_type == "last_n_year" and value:
start = now.replace(
year=now.year - int(value),
month=1,
day=1,
hour=0,
minute=0,
second=0,
microsecond=0
)
return queryset.filter(**{f"{field}__gte": start})
return queryset

View File

@@ -11,9 +11,10 @@ from app.views import get_transport_to_kill, add_kill_house, update_hatching, ge
dashboard_province_detail_for_map, TransportCarcassDashboardView, GuildsTransportCarcassDashboardView, \ dashboard_province_detail_for_map, TransportCarcassDashboardView, GuildsTransportCarcassDashboardView, \
AllProductsTransportDashboardView, AllProductsTransportProductsListView, update_product_date, \ AllProductsTransportDashboardView, AllProductsTransportProductsListView, update_product_date, \
send_transport_carcass_detail_for_rasadyaar, delete_free_bar_from_rasadyaar, fix_number, \ send_transport_carcass_detail_for_rasadyaar, delete_free_bar_from_rasadyaar, fix_number, \
get_evacuation_detail_by_request_code, get_evacuation_details_by_request_codes, evacuation_report_type_summary, get_all_products_transport_by_code, \ get_evacuation_detail_by_request_code, get_evacuation_details_by_request_codes, evacuation_report_type_summary, \
get_all_products_transport_by_code, \
get_all_products_transport_dashboard_by_code, get_all_products_transport_products_by_code, \ get_all_products_transport_dashboard_by_code, get_all_products_transport_products_by_code, \
get_all_products_transport_provinces_by_code get_all_products_transport_provinces_by_code, get_ai_response
router = DefaultRouter() router = DefaultRouter()
@@ -236,6 +237,7 @@ urlpatterns = [
path('get-all-products-transport-products-by-code/', get_all_products_transport_products_by_code), path('get-all-products-transport-products-by-code/', get_all_products_transport_products_by_code),
path('get-all-products-transport-provinces-by-code/', get_all_products_transport_provinces_by_code), path('get-all-products-transport-provinces-by-code/', get_all_products_transport_provinces_by_code),
path('all_products_transport_excel/', all_products_transport_excel), path('all_products_transport_excel/', all_products_transport_excel),
path('get_ai_response/', get_ai_response),
] ]

File diff suppressed because it is too large Load Diff