From 17096924c136b3b7896c234c75dffd960347cbba Mon Sep 17 00:00:00 2001 From: 7nimor <7nimor@gmail.com> Date: Sun, 1 Feb 2026 08:35:33 +0330 Subject: [PATCH] update --- .../excel_processing.cpython-39.pyc | Bin 52197 -> 52237 bytes app/__pycache__/helper.cpython-39.pyc | Bin 5981 -> 5953 bytes app/__pycache__/helper_excel.cpython-39.pyc | Bin 9957 -> 9957 bytes app/__pycache__/views.cpython-39.pyc | Bin 122470 -> 122543 bytes app/excel_processing.py | 5 ++++- app/helper.py | 2 +- app/views.py | 10 ++++++++-- 7 files changed, 13 insertions(+), 4 deletions(-) diff --git a/app/__pycache__/excel_processing.cpython-39.pyc b/app/__pycache__/excel_processing.cpython-39.pyc index bda6062eb8b99fb43cd4ea0b956bca151519adc7..9df0dac62aa50f0df66c3cf6def1a7773ff8b700 100644 GIT binary patch delta 10614 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 O{4iS+8OTq5nEik6>8kGl delta 10352 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 diff --git a/app/__pycache__/helper.cpython-39.pyc b/app/__pycache__/helper.cpython-39.pyc index 3bc7b67310496829cf8281c7f31759676fa9e9b4..b7cc30afbc11d3ecacc2918764a3e5142f0c08bc 100644 GIT binary patch delta 60 zcmcbscTkTvk(ZZ?0SLP9)n#7Y$eSt1s4%%)P?05=L6dp&3c;(4le>k3dB958Sr}PZ MIhZ!T5iVo~0QXN0>i_@% delta 84 zcmX@8cUO-$k(ZZ?0SMx5)n#7Z$eSt1s57}-P*Gq3V+wN$%R;7Fh8l)o22Iw@a|Ew4 ka^6~5$^=w=vw3oka0DL@NFzH7BMU1BBM;-|3&MrW0Me)x3jhEB diff --git a/app/__pycache__/helper_excel.cpython-39.pyc b/app/__pycache__/helper_excel.cpython-39.pyc index 7b69508e7d8ae06cda83e730edf2bf7c1a72f3bf..ec448699aecb7cd02d5f0efc56fa0001917b62a8 100644 GIT binary patch delta 22 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 'ك' (U+0643 - Arabic Kaf) # 'ی' (U+06CC - Persian Yeh) -> 'ي' (U+064A - Arabic Yeh) text = str(text) - text = text.replace('ک', 'ك') # Persian Kaf to Arabic Kaf + # text = text.replace('ک', 'ك') # Persian Kaf to Arabic Kaf text = text.replace('ی', 'ي') # Persian Yeh to Arabic Yeh return text diff --git a/app/views.py b/app/views.py index a71e302..a1797e9 100644 --- a/app/views.py +++ b/app/views.py @@ -4522,7 +4522,10 @@ class AllProductsTransportViewSet(viewsets.ModelViewSet): filters['product'] = product_type if destination_province and destination_province != 'undefined': - filters['destination_province'] = normalize_persian_arabic_text(destination_province) + if destination_province == 'مرکزی': + filters['destination_province'] = 'مرکزي' + else: + filters['destination_province'] = destination_province if date1 and date2 and date1 != 'undefined' and date2 != 'undefined': try: @@ -4762,7 +4765,10 @@ class AllProductsTransportDashboardView(APIView): destination_province = request.GET.get('destination_province') kill_house_filterset_class = AllProductsTransportFilterSet if destination_province and destination_province != 'undefined': - filters['destination_province'] = normalize_persian_arabic_text(destination_province) + if destination_province == 'مرکزی': + filters['destination_province'] = 'مركزي' + else: + filters['destination_province'] = destination_province queryset = AllProductsTransport.objects.filter(**filters) if search and search != 'undefined' and search.strip():