Files
Rasadyar_RSI/app/__pycache__/views.cpython-39.pyc

954 lines
120 KiB
Plaintext
Raw Normal View History

2026-01-18 11:29:19 +03:30
a
2026-02-01 08:35:33 +03:30
<00><>~i\7<00>@s^ddlZddlZddlZddlZddlmZddlZddlmZddl m
2026-01-18 11:29:19 +03:30
Z
ddl Z ddl Z ddl Z ddlZddlmZddlmZmZmZmZmZmZmZmZddlmZddlmZdd lmZm Z dd
2026-02-01 08:26:08 +03:30
l!m"Z"m#Z#dd l$m%Z%dd l&m'Z'dd l(m)Z)ddl*m+Z+m,Z,ddl-m.Z.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;ddl<m=Z=m>Z>m?Z?ddl@mAZAmBZBmCZCmDZDmEZEmFZFmGZGmHZHmIZImJZJmKZKmLZLmMZMmNZNddlOmPZPmQZQmRZRmSZSmTZTmUZUmVZVmWZWmXZXmYZYmZZZm[Z[m\Z\m]Z]m^Z^m_Z_m`Z`maZambZbmcZcmdZdmeZemfZfmgZgmhZhmiZimjZjmkZkmlZlddlmmnZnddlompZpmqZqmrZrmsZsGdd<16>dejt<6A>ZuGdd<18>dejt<6A>Zve"dg<01>e#e%g<01>edd<1B><00><01><01>Zwe"dg<01>e#e%g<01>edd<1D><00><01><01>ZxGdd<1F>dejt<6A>ZyGd d!<21>d!ejt<6A>ZzGd"d#<23>d#ejt<6A>Z{Gd$d%<25>d%ejt<6A>Z|Gd&d'<27>d'ejt<6A>Z}Gd(d)<29>d)ejt<6A>Z~Gd*d+<2B>d+ejt<6A>ZGd,d-<2D>d-ejt<6A>Z<>Gd.d/<2F>d/ejt<6A>Z<>Gd0d1<64>d1ejt<6A>Z<>Gd2d3<64>d3ejt<6A>Z<>Gd4d5<64>d5ejt<6A>Z<>Gd6d7<64>d7ejt<6A>Z<>Gd8d9<64>d9ejt<6A>Z<>Gd:d;<3B>d;ejt<6A>Z<>Gd<d=<3D>d=ejt<6A>Z<>Gd>d?<3F>d?ejt<6A>Z<>e"dg<01>e#e%g<01>ed@dA<64><00><01><01>Z<>e"dBg<01>e#e%g<01>edCdD<64><00><01><01>Z<>e"dg<01>e#e%g<01>edEdF<64><00><01><01>Z<>e"dg<01>e#e%g<01>edGdH<64><00><01><01>Z<>e"dg<01>e#e%g<01>edIdJ<64><00><01><01>Z<>GdKdL<64>dLejt<6A>Z<>GdMdN<64>dNejt<6A>Z<>e"dBg<01>e#e%g<01>edOdP<64><00><01><01>Z<>GdQdR<64>dRejt<6A>Z<>GdSdT<64>dTejt<6A>Z<>dUZ<55>dVZ<56>dWZ<57>dXZ<58>dYdZ<64>Z<>Gd[d\<5C>d\ejt<6A>Z<>e"dBg<01>e#e%g<01>ed]d^<5E><00><01><01>Z<>Gd_d`<60>d`ejt<6A>Z<>Gdadb<64>dbejt<6A>Z<>Gdcdd<64>dde)<29>Z<>Gdedf<64>dfejt<6A>Z<>Gdgdh<64>dhe)<29>Z<>Gdidj<64>djejt<6A>Z<>dkdl<64>Z<>dmdn<64>Z<>dodp<64>Z<>dqdr<64>Z<>e"dg<01>e#e%g<01>edsdt<64><00><01><01>Z<>e"dBg<01>e#e%g<01>edudv<64><00><01><01>Z<>e"dBg<01>e#e%g<01>edwdx<64><00><01><01>Z<>e"dBg<01>e#e%g<01>edydz<64><00><01><01>Z<>e"dBg<01>e#e%g<01>d{d|<7C><00><01>Z<>Gd}d~<7E>d~ejt<6A>Z<>Gdd<7F><64>d<>ejt<6A>Z<>e"dg<01>e#e%g<01>ed<>d<EFBFBD><64><00><01><01>Z<>Gd<>d<EFBFBD><64>d<>ejt<6A>Z<>Gd<>d<EFBFBD><64>d<>e)<29>Z<>Gd<>d<EFBFBD><64>d<>e)<29>Z<>d<EFBFBD>d<EFBFBD><64>Z<>d<EFBFBD>d<EFBFBD><64>Z<>d<EFBFBD>d<EFBFBD><64>Z<>e"dg<01>e#e%g<01>ed<>d<EFBFBD><64><00><01><01>Z<>e"dg<01>e#e%g<01>ed<>d<EFBFBD><64><00><01><01>Z<>e"dg<01>e#e%g<01>ed<>d<EFBFBD><64><00><01><01>Z<>e"dg<01>e#e%g<01>ed<>d<EFBFBD><64><00><01><01>Z<>dS)<29><>N)<01>d)<01> defaultdict)<01>BytesIO)<01> BeautifulSoup)<08>Sum<75>Count<6E>Avg<76>Q<>Min<69>Max<61>Prefetch<63>F)<01> HttpResponse)<01> csrf_exempt)<02>viewsets<74>status)<02>api_view<65>permission_classes)<01>AllowAny)<01>Response)<01>APIView)<02> iranprovince<63>irancity)<0E>PoultryFilterSet<65>PoultryHatchingFilterSet<65>"TransportingChickenDetailFilterSet<65>PoultryInfoFilterSet<65>HatchingCalculationsFilterSet<65>HatchingsFilterSet<65>TransportingDetailFilterSet<65>KillHouseFilterSet<65>!TransportingDetailCustomFilterSet<65>CustomHatchingsFilterSet<65>TransportCarcassDetailFilterSet<65>DriverFilterSet<65>GuildsFilterSet<65>AllProductsTransportFilterSet)<03>
SSLAdapter<EFBFBD>get_hatching_permit_code<64>normalize_persian_arabic_text)<0E>Poultry<72>PoultryHatching<6E>TransportingChickenDetail<69>Hatching<6E>TransportingDetail<69> KillHouse<73>ApkInfo<66>TransportCarcassDetail<69>Guilds<64>Driver<65>InquiryCredentials<6C>AllProductsTransport<72>EvacuationDetail<69>RasadyarAppInfo)<1D>PoultrySerializer<65>PoultryHatchingSerializer<65>#TransportingChickenDetailSerializer<65>HatchingSerializer<65>HatchingCalculationSerializer<65>PoultryInfoSerializer<65>HatchingsSerializer<65>HatchingDetailSerializer<65>HatchingForUpdateSerializer<65>TransportingSerializer<65>TransportingDetailSerializer<65>KillHouseSerializer<65>HatchingAnalysisSerializer<65>HatchingAnalysisSerializerTwo<77>TransportingReportDashboard<72>&TransportingForClearanceCodeSerializer<65>ApkInfoSerializer<65> TransportCarcassDetailSerializer<65>DriverSerializer<65>&KillHouseForTransportCarcassSerializer<65>$StewardForTransportCarcassSerializer<65>#GuildsForTransportCarcassSerializer<65>3KillHouseForTransportCarcassForRassadyaarSerializer<65>%TransportingDetailForUpdateSerializer<65>InquiryCredentialsSerializer<65>AllProductsTransportSerializer<65>EvacuationDetailSerializer<65>RasadyarAppInfoSerializer<65>$AllProductsTransportCustomSerializer<65><01>Province)<04>CustomPagination<6F> build_query<72>build_calculation<6F>convert_to_miladic@s8eZdZej<04><05>ZeZe gZ
2026-01-18 11:29:19 +03:30
e Z e Zdd<02>Zdd<04>ZdS)<06>PoultryViewSetc Os~|j<00>dg<00>}|D]X}tjj|dd<03><01><05>}|rX|<05><06>D]\}}t|||<08>q8|<06><08>qtjj fi|<05><01>qt
2026-02-01 08:26:08 +03:30
ddit j d<06>S)N<>Data<74>UnitId<49>r]<00>result<6C>با موفقیت ثبت شد<D8B4>r) <0A>data<74>getr*<00>objects<74>filter<65>first<73>items<6D>setattr<74>save<76>createrr<00>HTTP_201_CREATED) <09>self<6C>request<73>args<67>kwargsrb<00>poultryZregistered_poultry<72>key<65>value<75>rs<00>-D:\MNPC_no_internet\Rasadyar_RSI\app\views.pyrj5s
2026-01-18 11:29:19 +03:30
zPoultryViewSet.createc Os<>tjjdd<02>}|j<03>d<03>}|r4|<04>t|jjj|<05><02>}|j <09>dd<00>}|rRt
2026-02-01 08:26:08 +03:30
|<06>|j _ |<00> |<04>}|dur~|j|dd<06>}|<00>|j<10>S|j|dd<06>}t|jtjd<07>S)NF<4E><01>trashrr<00> page_sizeT<65><01>manyra)r*rdre<00>GETrcrX<00>filterset_class<73>Meta<74>fields<64> query_params<6D>int<6E>pagination_classrw<00>paginate_queryset<65>get_serializer<65>get_paginated_responserb<00>serializer_classrr<00> HTTP_200_OK) rlrmrnrorprrrw<00>page<67>
serializerrsrsrt<00>listCs <0E> 
2026-01-18 11:29:19 +03:30
 zPoultryViewSet.listN)<11>__name__<5F>
2026-02-01 08:26:08 +03:30
__module__<EFBFBD> __qualname__r*rd<00>all<6C>querysetr8r<>rrrWr<>rr{rjr<>rsrsrsrtr[.s
r[c@sLeZdZejjdd<02><01>ddddd<07><05>d<03>Ze Z
2026-01-18 11:29:19 +03:30
e gZ e Zdd <09>Zd
2026-02-01 08:26:08 +03:30
d <0B>Zd S) <0A>PoultryDashboardViewSetFru<00>idrV<00>City<74>LocationIdProvince<63>LocationIdCityc
2026-01-18 11:29:19 +03:30
Cs<>|j<00>d<01>}|j<00>d<02>}|j<00>d<03>}|jjdd<05>}tjjdd<06>}|r\|j|d<07>}|j|d<08>}|rx|j|d <09>}|j|d
<EFBFBD>}|r<>|d kr<>|<04><06>r<>|<05>t|jj j
2026-02-01 08:26:08 +03:30
|<04><02>}|j t d <0C>t d <0A>t d<0E>t d<0F>t d tdd<11>d<12>t d tdd<11>d<12>t dtdd<11>d<12>t dtdd<11>d<12>t dtddd<14>d<12>d<15> }tjj|dd<16>j t d<17>td<18>t dtdd<19>d<12>tdtdd<19>d<12>d<1A>}|j t ddd<1D>t ddd<1D>d<1F>} d |<05><11>i|<07>|<08>| <09>d!|jdd<11><01><11>i<01>S)"N<>province<63>city<74>searchF<68><01>Province__isnullru<00>ZProvince__icontains<6E><01> ProvinceName<6D><01>City__icontains<6E><01>CityName<6D> undefinedr<64><00> ChickCountSum<75>
Evacuation<EFBFBD>LeftOver<65>F<00><01>Age__lte<74>re<00>(<00><02>Age__gter<65><00> <09> total_count<6E>total_quantity<74>total_evacuation<6F>total_left_over<65> active_count<6E>active_quantity<74>active_evacuation<6F>active_left_over<65>active_ready_left_over<65><02> hatching__inrv<00>
GoodAmount<EFBFBD>Age<67>Zhatching__Age__lte)<04> total_killing<6E>total_killing_age<67>active_killing<6E>active_killing_ager<65>T<><01>distinctr<74>)<02>province_count<6E>
city_count<EFBFBD> poultry_count<6E>active_bars_count)rzrcr<>rer-rd<00>striprXr{r|r}<00> aggregaterrr r.r<00>count)
rlrmr<>r<>r<>Zbase_poultriesZbase_hatchingsZhatchings_dataZtransporting_dataZlocation_statsrsrsrt<00>_optimized_db_hits<74>sb       <0E><12> <02><10>
2026-01-18 11:29:19 +03:30


<EFBFBD><08><02><02><02><10>z*PoultryDashboardViewSet._optimized_db_hitsc Os|<00>z6|<00>|<01>}|<04>dd<02>pd}|<04>dd<02>p,d}|d|d|d|d|d|d t|d |d
d <0B>|d t|d |d
d <0B>|d t|d |d
d <0B>|d|d|d|dt|d|d
d <0B>|d|dt|d|d
d <0B>|d|dt|d|d
d <0B>|dt|d|dd
2026-02-01 08:26:08 +03:30
d <0B>d<16>}t|tjd<17>WSt<06>yv}z$tdt|<08>d<19>tjd<17>WYd}~Sd}~00dS)Nr<4E>r<00>r<>r<>r<>r<>r<>r<><00>d<00>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>)r<>r<>r<><00>total_hatching_count<6E>total_hatching_quantity<74>total_hatching_evacuation<6F>!total_hatching_evacuation_percent<6E>total_hatching_killing_quantity<74>'total_hatching_killing_quantity_percent<6E>total_hatching_left_over<65> total_hatching_left_over_percent<6E>total_hatching_killing_age<67>total_active_hatching_count<6E>total_active_hatching_quantity<74> total_active_hatching_evacuation<6F>(total_active_hatching_evacuation_percent<6E>total_active_hatching_bars<72>&total_active_hatching_killing_quantity<74>.total_active_hatching_killing_quantity_percent<6E>!total_active_hatching_killing_age<67>total_active_hatching_left_over<65>'total_active_hatching_left_over_percent<6E>%total_ready_active_hatching_left_over<65>&total_ready_hatching_left_over_percentrau(خطا در پردازش داده‌ها)<02>error<6F>details) r<>rc<00>roundrrr<><00> Exception<6F>str<74>HTTP_500_INTERNAL_SERVER_ERROR) rlrmrnrorbr<>r<>r_<00>ersrsrtr<><00>sR
<02><10><14><02>  <04>zPoultryDashboardViewSet.listN)r<>r<>r<>r*rdre<00>only<6C>order_byr<79>r8r<>rrrr{r<>r<>rsrsrsrtr<><00>s
<EFBFBD><02>:r<>rzc Cs<>ttjjddd<03><02>}tjjddd|d<07><04>d<08>jtd <09>td
2026-01-18 11:29:19 +03:30
<EFBFBD>d <0B>}|jd dd <0A><02>d<08>jtd
<EFBFBD>d<0E>}t jjtjjddd|d<07>dd<0F><02>d<10>jtd<11>d<12>}dd<14>|D<00>}dd<14>|D<00>}dd<14>|D<00>}g}|D]<5D>} |<05>
| ddd <0B><02>}
|<06>
| ddi<01>} |<07>
| ddi<01>} |
d<00>pd} |
2026-02-01 08:26:08 +03:30
d<00>pd}| d<00>p"d}|<08> | || d<00>p8d| dk<04>rRt || d<00>nd| || dk<04>rrt || d<00>ndd<1C><07>q<>t |dd<1E>dd<1F>}t|<10>S) N<>nameT<65><01>flatr<74><00>AF)r<>r<>rvZProvinceName__inr<6E>r<>r<><00>r<>r<><00>r<>)r<>r<><00>hatching__ProvinceNamer<65><00>r<>cSsi|]}|d|<01>qSr<>rs<00><02>.0<EFBFBD>hrsrsrt<00>
<dictcomp>8<00>z/all_province_detail_for_map.<locals>.<dictcomp>cSsi|]}|d|<01>qSr<>rsr<>rsrsrtr<>9r<>cSsi|]}|d|<01>qS<00>r<>rs)r<><00>trsrsrtr<>:r<>rr<>r<>r<>r<>)r<>r<><00>total_killed_quantityr<79><00> province_name<6D>total_active_left<66>total_active_left_percentcSs|dS)Nr<4E>rs<00><01>xrsrsrt<00><lambda>Vr<>z-all_province_detail_for_map.<locals>.<lambda><3E>rq<00>reverse)r<>rVrd<00> values_listr-re<00>values<65>annotaterr.rc<00>appendr<64><00>sortedr)rm<00> provinces<65> hatchings<67>active_hatchingsZ transportings<67> hatching_dictZactive_hatching_dictZtransporting_dict<63>resultsr<73>Zh_dataZa_h_dataZt_datar<61><00>
total_leftr<EFBFBD>Zsorted_resultsrsrsrt<00>all_province_detail_for_maps<><02><02><06>
2026-01-18 11:29:19 +03:30
<02><02><06><02><02><02> <06>  <06>
<EFBFBD><06>
<EFBFBD><02>
2026-02-01 08:26:08 +03:30
<02>r c
2026-01-18 11:29:19 +03:30
Cs<>tjjdddd<04>jtd<05>td<06>d<07>}tjjdddd<04>jtd<06>d <09>}tjjtjjdddd<04>dd
2026-02-01 08:26:08 +03:30
<EFBFBD>jtd <0B>d <0C>}|d pvd}|dp<>d}|dp<>d}|dkr<>t||d<00>nd}|dkr<>t||d<00>nd}|||dp<>d|||d<13>} t| <09>S)Nr<4E>r<>F)r<>r<>rvr<>r<>r<>r<>)r<>r<>r<>r<>r<>rr<>r<>r<>r<>)r<>r<>r<>r<>r<>r<>)r-rdrer<>rr.r<>r)
rm<00>total_hatchingZ total_activeZtotal_transportingr<67>r
r<>Zleft_over_percentr<74>r_rsrsrt<00>!dashboard_province_detail_for_map]sL<02><06> <02><06><02><02><06>   
<02> r c @s^eZdZejjdd<02><01>ddddddd d
2026-01-18 11:29:19 +03:30
d d <0C>
<EFBFBD>d<03>Ze Z
2026-02-01 08:26:08 +03:30
e gZ e Zd d<0E>Zdd<10>Zdd<12>ZdS)<14>HatchingDashboardViewSetFrur<><00>
KillingAver<EFBFBD>r<>r<><00>
SystemCode<EFBFBD>Dater<65>r<>r<>c Cs<>|j<00>d<01>}|j<00>d<02>}|j<00>d<03>}|j<00>d<04>}|j<00>d<05>}|j<00>d<06>}|j<00>d<07>} |j<00>d<08>}
2026-01-18 11:29:19 +03:30
|j<00>d <09>} |
r<EFBFBD>| r<>z8tj<02>|
d
<EFBFBD><02><04>}
tj<02>| d
<EFBFBD><02><04>} |j|
| gd <0B>}Wnty<>Yn0|r<>|jt|<08>d <0C>}|r<>|jd d<0E>}|r<>|j|d<0F>}|<03>r|j|d<10>}|<07>r|j|d<11>}| <09>rltj jt
| d<12>t
| d<13>Bt
| d<14>Bt
| d<15>Bt
2026-02-01 08:26:08 +03:30
| d<16>Bdd<18><02> <0B>} |j| d<19>}|<04>r<>|dk<03>r<>|<04> <0C><00>r<>|<01>t |jjj|<04><02>}|S)N<> system_coder<65><00>leftoverr<72>r<><00> killing_ager<65><00>date1<65>date2<65>%Y-%m-%d)<01>Date__date__range)rr)<01> LeftOver__gtr<74><00>rr<>)ZUserName__contains)ZFirstName__contains)ZLastName__contains)ZMobile__contains)ZUnitName__containsFru<00>rpr<>)rzrc<00>datetime<6D>strptime<6D>datere<00>
ValueErrorrr*rdr rfr<>rXr{r|r}) rlr<>rmrr<>rr<>r<>rr<>rrrprsrsrt<00>_apply_filters<72>sR              <02><08><02>
2026-01-18 11:29:19 +03:30
 <0E>z'HatchingDashboardViewSet._apply_filterscCs<>|<01>tdtjjdd<03>d<04><02>}|jdd<06>}|jtd<07>td<08>td <09>td
<EFBFBD>tdtdd<06>d <0B>tdtdd<06>d <0B>td tdd<06>d <0B>td
tdd<06>d <0B>td
td dd <0A>d <0B>d<0E> }tjj|dd<0F>jtd<10>t d<11>tdtdd<12>d <0B>t dtdd<12>d <0B>td<07>t
2026-02-01 08:26:08 +03:30
d<11>t d<11>d<13>}i|<03>|<04>S)NZtransportingdetail_setFru)r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>)r<><00>avg_killing_ager<65><00>active_avg_ager<65><00>min_age<67>max_age) <0C>prefetch_relatedr r.rdrer<>rrr rr
r )rlrrZ
2026-01-18 11:29:19 +03:30
main_statsZ
2026-02-01 08:26:08 +03:30
bars_statsrsrsrt<00>_calculate_metricss< <0C><04> <12> <02><06> z+HatchingDashboardViewSet._calculate_metricsc Os<>|<00>|j|<01>}|<00>|<04>}|<05>dd<02>p&d}|<05>dd<02>p6d}|r<>|<04><04>jr<>|<04><04>jj}|<04><04>jj} |<04><04>jj}
2026-01-18 11:29:19 +03:30
|<04><04>jj } |<04><04>jj
} nd}d} d}
d} d} || |
| | |dr<>|dnd|dr<>|dnd|dr<>|dnd|dr<>t |d|dd <09>nd|d
<00>r
|d
nd|d
<00>r,t |d
|dd <09>nd|d
2026-02-01 08:26:08 +03:30
<00>r@|d nd|d <00>rbt |d |dd <09>nd|d <00>rv|d nd|<05>d d<02>|d<00>r<>|dnd|d<00>r<>|dnd|d<00>r<>|dnd|d<00>r<>t |d|dd <09>nd|<05>d d<02>|d<00>r<>|dnd|d<00>rt |d|dd <09>nd|d<00>r2|dnd|d<00>rTt |d|dd <09>nd|d<00>rh|dnd|d<00>r<>t |d|ddd <09>nd|d<00>p<>d|<05>dd<02>|<05>dd<02>d<16>} t | t jd<17>S)Nr<4E>rr<>r<><00>r<>r<>r<>r<>r<>r<>r!r<>r<>r<>r<>r<>r<>r"r#r$)<1D> poultry_name<6D>poultry_mobile<6C>poultry_firstName<6D>poultry_lastName<6D>poultry_userNamer<65>r<>r<>r<>r<>r<>r<>r<>r<>Ztotal_hatching_barsr<73>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>Z least_ageZmost_agera)r r<>r&rcrfrp<00>UnitName<6D>Mobile<6C> FirstName<6D>LastName<6D>UserNamer<65>rrr<>)rlrmrnroZfiltered_hatchings<67>metricsr<73>r<>r(r)r*r+r,r_rsrsrtr<>Bs<>
2026-01-18 11:29:19 +03:30
    <06><06><06>
<06><10>
<06><10><06><02><02><06><02> 

2026-02-01 08:26:08 +03:30
<EFBFBD>*zHatchingDashboardViewSet.listN)r<>r<>r<>r-rdrer<>r<>r<>r;r<>rrrr{r r&r<>rsrsrsrtr<00>s
2026-01-18 11:29:19 +03:30

2026-02-01 08:26:08 +03:30
<EFBFBD><02>*%rc@s,eZdZej<04><05>ZeZe gZ
2026-01-18 11:29:19 +03:30
e Z dd<02>Z dS)<04>PoultryHatchingDashboardViewSetcOsXtjjdd<02><01>d<03>}|j<04>d<04>}|j<04>d<05>}|rz|rztj<06>t|jd<00>d<06><02> <09>}tj<06>t|jd<00>d<06><02> <09>}|j||d<07>}|j<04>d<08>}|r<>|d kr<>|<07>
<EFBFBD>r<>|<04>t |j j j|<07><02>}tjj|jd
d d <0C>dd <0A>}tjjddd<0E>} |jtd<0F>d<10>dp<>d}
|jtd<13>d<10>d<00>p
d} | jtd<14>d<10>d<00>p$d} t|<08>t|<04>|
| |
2026-02-01 08:26:08 +03:30
| t| <09>| d<15>} t| tjd<16>S)NFrurrrr<00><02>Date__date__gte<74>Date__date__lter<65>r<>rpTr<54>)<02>pk__inrv<00>Zhatching__isnullrv<00> HatchingCount<6E><01>totalr;r<00>EvacuationCountr<74>)rpr<00>hatching_quantity<74>evacuation_countZhatching_remain_quantity<74>bars<72> bars_quantityra)r+rdrer<>rzrcrrr<>rr<>rXr{r|r}r*rr,r<>r<00>lenrrr<>)rlrmrnrorrrr<>rp<00>
transportsr=r>r@r_rsrsrtr<><00>s6   <0E><02> z$PoultryHatchingDashboardViewSet.listN)r<>r<>r<>r+rdr<>r<>r9r<>rrrr{r<>rsrsrsrtr3<00>s
2026-01-18 11:29:19 +03:30

2026-02-01 08:26:08 +03:30
r3c@s8eZdZej<04><05>ZeZe gZ
2026-01-18 11:29:19 +03:30
e Z e Zdd<02>Zdd<04>ZdS)<06>PoultryHatchingViewSetc Os<>|jd}|j<00>d<01>|D]<5D>}tjj|dd<03><01><05>}|r`|<05><06>D]\}}t|||<08>q@|<06><08>qtjj fi|<05><01>} t
jj|dd<05><01><05>}
|
r|
2026-02-01 08:26:08 +03:30
| _ | <09><08>qt ddit jd<08>S) Nr\<00> DesCertId<49>rDr]r^r_r`ra)rb<00>popr+rdrerfrgrhrirjr*rprrrk) rlrmrnrorb<00> hatching_dataZregistered_hatchingrqrr<00>hatchingrprsrsrtrj<00>s
2026-01-18 11:29:19 +03:30
 

zPoultryHatchingViewSet.createc Ostjjdd<02><01>d<03>}|j<04>d<04>}|j<04>d<05>}|rz|rztj<06>t|jd<00>d<06><02> <09>}tj<06>t|jd<00>d<06><02> <09>}|j||d<07>}|j<04>d<08>}|r<>|d kr<>|<07>
<EFBFBD>r<>|<04>t |j j j|<07><02>}|j<0F>d
d<00>}|r<>t|<08>|j_|<00>|<04>} | dur<>|j| d d <0C>}
|<00>|
j<16>S|j|d d <0C>}
t|
2026-02-01 08:26:08 +03:30
jtjd <0A>S)NFrurrrrr4r<>r<>rwTrxra)r+rdrer<>rzrcrrr<>rr<>rXr{r|r}r~rr<>rwr<>r<>r<>rbr<>rrr<>) rlrmrnrorrrr<>rwr<>r<>rsrsrtr<><00>s,   <0E> 
 zPoultryHatchingViewSet.listN)r<>r<>r<>r+rdr<>r<>r9r<>rrrWr<>rr{rjr<>rsrsrsrtrC<00>s
rCc@sDeZdZejjdd<02>ZeZe gZ
2026-01-18 11:29:19 +03:30
e Z e Zdd<04>Zdd<06>Zdd<08>Zd S)
2026-02-01 08:26:08 +03:30
<EFBFBD>HatchingsViewSetFruc Cs<>i}|jj<01>d<01>}|jj<01>d<02>}|jj<01>d<03>}|jj<01>d<04>}|jj<01>d<05>}|jj<01>d<06>}|jj<01>d<07>}|r<>|r<>tj<03>t|jjd<00>d<08><02><06>}tj<03>t|jjd<00>d<08><02><06>}||d <||d
<|r<>t|<06>|d <|r<>||d <|r<>||d <|r<>||d<|r<>||d<|S)Nrr<>r<><00>agerrrrr5r6rrZ
Age__exact<EFBFBD>CityName__icontains<6E>ProvinceName__icontains)rmrzrcrrr<>rr) rl<00>filtersrr<>r<>rJrrrrsrsrt<00> set_filters<72>s0 zHatchingsViewSet.set_filtersc s<dddddddddddd<06> }t|jd<00>dk<04>r"|j<01>d g<00>}d |jvrT|j<01>d <09>|j<01>d
2026-01-18 11:29:19 +03:30
g<00>}d
|jvrx|j<01>d
<EFBFBD>tjj|jd d <0C><01><07>}td |jdi<01>|r<>|j<01> <09>D]\}} t
||| <09>q<>|<07> <0B>n<>t jj|jdd<10><01><07>}
tjj|
d<11><01> d<12><01><0E>} | <0B>r| jdnd} | |jd<tjjfi|j<01><01>}|jtjdd<16>|_|
<EFBFBD>rZ|
|_|<07> <0B>hd<17><01>|<06>rvg} g}|D]R}<0F>fdd<19>|<0F> <09>D<00>}|<10>dd<00>}|du<01>r<>||d<|<0E>|<11>| <0A>||f<02><00>qti}|<0E>r<>tjj|dd<1D>}dd<19>|D<00>}g}| D]j\}}|<11>rD|<12>|<11>}|<15>r<>d|v<00>r<>|d|_||_|j dd gd!<21><00>q<>||d <|<14>tfi|<10><01><01><00>q<>|<14>rvtj<05>|<14>|<05>rV|D]<5D>}tjj|d"d#<23><01><07>}|<17>r<>|<16> <09>D]\}} t
||| <09><00>q<>|<17> <0B>ntjjfi|<16><01>}tjj|jdd$<24><02><07>}||_|<18>r,|j|_|j|_|jj |j!k<03>r$d%|_"|<17> <0B>|j<11>#<23>|jj<11>#<23>j$d|_%|<17> <0B><00>q<>tjjd|d&<26>}|jd'd(<28>j&t'd)<29>d*<2A>d+<00>p<>d}t|j&t(d,<2C>d-<2D>d.<00>p<>d<08>}|j)|j*|dk<04>r<>|j)|j*|nd|_+td/|j,i<01>|j-|v<00>r<>||j-|_-||_.t|j*||j)d0<00>|_/|<07> <0B>ntd1<64>t0d2d3it1j2d4<64>S)5N<35>آربراکرز (آپلاس)<29>راس<D8A7>آرین<DB8C>ایندین ریور<D988>کاب<D8A7> u!آربراکرز (آ<><D8A2>لاس)u!آربراک<D8A7><DAA9>ز (آپلاس)u!آربر<D8A8><D8B1>کرز (آپلاس)u
را<D8B1><D8A7>u
ر<><D8B1>سu
<00><>اسu آ<><D8A2>ینu آر<D8A2><D8B1>نuایندین ریو<DB8C><D988>uایند<D986><D8AF>ن ریورu
ک<><DAA9>ب<EFBFBD>GoodSumr<00>
2026-02-01 08:35:33 +03:30
Transportsr6<00> RequestCode<64>rW<00>1r<31>rrrr<>r<><00>Period<6F>L<00><01>days>"<00>MenuUserAccessId<49>ReportTypeString<6E> LogTableName<6D>
ReportType<EFBFBD> AllowUpdate<74>
MoStartDay<EFBFBD>MenuUserAccess<73>MoDate<74>ModalCss<73> IsDeleted<65> GoodCount<6E>RegDateShamsiOnlyTime<6D> MoDateShamsi<73>StringId<49>RegDate<74>
ReportDate<EFBFBD>ReportDateShamsi<73> IsPersisted<65> ReportStatus<75>GridContainerParametersModel<65> PageTitle<6C>
MoReportId<EFBFBD>
ExternalId<EFBFBD> MoReportSubId<49> LogTableAlias<61>
PartIdCode<EFBFBD> ErrorCode<64> RequestId<49>MoReason<6F>MoEndDay<61> RegDateShamsi<73>Message<67> AllowInsert<72>RegDateShamsiWithTimecs&i|]\}}|<01>vs|dkr||<02>qS<00><01>Idrs<00>r<><00>k<>v<>Zallowed_evacuation_fieldsrsrtr<>Hs<10>z+HatchingsViewSet.create.<locals>.<dictcomp>r<>rtF)<02>ExternalId__inrvcSsi|] }|j|<01>qSrs<00>rt<00>r<><00>evrsrsrtr<>Xr<>rhrH<00><01> update_fields<64> TrackingCode<64>r<><00>rwrvT<>rvrH<00>تایید تخلیه)<01>TrackingStatusDescriptionr<6E>r:r;r<><00><01>avg_ager<65><00>2r<32>uتعداد حمل صفر استr_r`ra)3rrbrcrFr-rdrerf<00>printrgrhrir*r<><00>lastrZrjrr<00> timedelta<74> ArchiveDaterprr6rhrH<00> bulk_creater.r/<00> DesPartIdCoderVr<>r<><00>
2026-02-01 08:26:08 +03:30
ProvinceId<EFBFBD>Outrr]r<>r<>rrr<>r<>r<>r<><00> PedigreeNamer<00>samasat_discharge_percentagerrrk<00>rlrmrnro<00>BREED_STANDARDIZATIONr?<00>evacuation_detailsrHrqrrrpr<00>periodZcleaned_payloadZ external_ids<64>evacuation_data<74>
clean_data<EFBFBD> external_idZ existing_mapZ existing_qsr<73><00>
2026-01-18 11:29:19 +03:30
evacuation<EFBFBD>transport_data<74> transport<72>
2026-02-01 08:26:08 +03:30
kill_houser@Zave_agersr<>rtrjs<><02> 
2026-01-18 11:29:19 +03:30
 
 

 
<06> 

<02> 

 <06>

 <02><02><02><02><08><02><02>  <12>
zHatchingsViewSet.createc
Os<>|jj<01>d<01>}tjjfi|<00><06><00><01>}|rJ|dkr>|jdd<04>}n |jdd<05>}|j<01>d<06>}|r<>|dkr<>|<06><07>r<>|<05>t|j j
j |<06><02>}|j <0C>dd<00>}|r<>t |<07>|j_|<00>|<05>}|dur<>t|d d
<EFBFBD>} |<00>| j<13>St|d d
2026-02-01 08:26:08 +03:30
<EFBFBD>} t| jtjd <0B>S) N<>state<74>pendingr<67>r<>)ZAge__gtr<74>r<>rwTrxra)rmrzrcr-rdrerNr<>rXr{r|r}r~rr<>rwr<>r?r<>rbrrr<>)
rlrmrnror<>rr<>rwr<>r<>rsrsrtr<><00>s*  <0E> 
   zHatchingsViewSet.listN)r<>r<>r<>r-rdrer<>r>r<>rrrWr<>rr{rNrjr<>rsrsrsrtrI<00>srIc@s<eZdZejjdd<02>ZeZe gZ
e Z e Zdd<04>Zdd<06>ZdS)<08>HatchingsCustomViewSetFruc s<>dddddddddddd<06> }|j<00>dg<00>}d|jvr@|j<00>d<07>|j<00>dg<00>}d|jvrd|j<00>d<08>tjj|jd d
2026-01-18 11:29:19 +03:30
<EFBFBD><01><06>}|r<>|j<00><07>D]\}} t||| <09>q<>|<07> <09>n<>t
jj|jd d <0C><01><06>}
tjj|
d <0A><01> d<0E><01> <0C>} | r<>| j dnd} | |jd<tjjfi|j<00><01>}|jtjdd<12>|_|
<EFBFBD>r2|
2026-02-01 08:35:33 +03:30
|_|<07> <09>hd<13><01>|<06>rPg} g}|D]R}<0F>fdd<15>|<0F><07>D<00>}|<10>dd<00>}|du<01>r<>||d<|<0E>|<11>| <0A>||f<02><00>qLi}|<0E>r<>tjj|d<18>}dd<15>|D<00>}g}| D]n\}}|<11>r||v<00>r||}|<10><07>D]\}} t||| <09><00>q<>||_|<15> <09>n||d<|<14>tfi|<10><01><01><00>q<>|<14>rPtj<04>|<14>|<05>r0|D]<5D>}tjj|dd<1C><01><06>}|<17>r<>|<16><07>D]\}} t||| <09><00>q<>|<17> <09>ntjjfi|<16><01>}tjj|jdd<1E><02><06>}||_|<18>r|j|_|j|_|jj|jk<03>r<>d|_|<17> <09>|j<0F> <20>|jj<0F> <20>j!d|_"|<17> <09><00>qZtjjd|d <20>}|j#t$d!<21>d"<22>d#<00>pXd$}t%|j#t&d%<25>d&<26>d'<00>ptd$<24>}|j'|j(|d$k<04>r<>|j'|j(|nd$|_)|j*|v<00>r<>||j*|_*||_+|<07> <09>t,d(d)it-j.d*<2A>S)+NrOrPrQrRrSrTrVr6rWrXrrrr<>r<>rZr[r\>"r^r_r`rarbrcrdrerfrgrhrirjrkrlrmrnrorprqrrrsrtrurvrwrxryrzr{r|r}r~rcs&i|]\}}|<01>vs|dkr||<02>qSr<>rsr<>r<>rsrtr<><00>s<10>z1HatchingsCustomViewSet.create.<locals>.<dictcomp>r<>rt)r<>cSsi|] }|j|<01>qSrsr<>r<>rsrsrtr<><00>r<>rHr<>r<>Fr<46>Tr<54>r<>r:r;rr<>r<>r<>r_r`ra)/rbrcrFr-rdrerfrgrhrir*r<>r<>rZrjrrr<>r<>rprr6rHr<>r.r/r<>rVr<>r<>r<>r<>rr]r<>r<>rrrr<>r<>r<>r<>rrrrkr<>rsr<>rtrj<00>s<><02>
2026-01-18 11:29:19 +03:30
 
 

 
<06> 

<02> 
 <06>

 <02><02><08><02><02>  zHatchingsCustomViewSet.createcOsp|<00>|<00><01><00>}|j<02>d<01>}|r*t|<05>|j_|<00>|<04>}|durTt|dd<03>}|<00> |j
<EFBFBD>St|dd<03>}t |j
2026-02-01 08:26:08 +03:30
t j d<04>S)NrwTrxra)<0E>filter_queryset<65> get_querysetr~rcrr<>rwr<>r?r<>rbrrr<>)rlrmrnror<>rwr<>r<>rsrsrtr<>2s  
   zHatchingsCustomViewSet.listN)r<>r<>r<>r-rdrer<>r>r<>rrrWr<>r"r{rjr<>rsrsrsrtr<><00>s|r<>c@s(eZdZej<04><05>ZeZe gZ
2026-01-18 11:29:19 +03:30
dd<02>Z dS)<04>+PoultryHatchingForUpdatePedigreeNameViewSetcOsl|jd}|j<00>d<01>|D]>}tjj|dd<03><01><05>}|r|jrFd|_n
|d|_|<06><07>qtddit j
2026-02-01 08:35:33 +03:30
d<08>S) Nr\rw<00>rwu ترکیبیr<DB8C>r_r`ra) rbrFr+rdrerfr<>rirrrk)rlrmrnrorbrGrHrsrsrtrjFs
2026-01-18 11:29:19 +03:30
 

2026-02-01 08:26:08 +03:30
z2PoultryHatchingForUpdatePedigreeNameViewSet.createN) r<>r<>r<>r+rdr<>r<>r9r<>rrrjrsrsrsrtr<>As
r<>c@s8eZdZej<04><05>ZeZe gZ
2026-01-18 11:29:19 +03:30
e Z e Zdd<02>Zdd<04>ZdS)<06> TransportingChickenDetailViewSetc
Os<>|jd}|j<00>d<01>|D]<5D>}tjj|dd<03><01><05>}|r`|<05><06>D]\}}t|||<08>q@|<06><08>qtjj fi|<05><01>}t
2026-02-01 08:26:08 +03:30
jj|dd<05><01><05>} | r| |_ |<06><08>qt ddit jd<08>S) Nr\r<>r<><00>CertIdrEr_r`ra)rbrFr,rdrerfrgrhrirjr+rHrrrk)
rlrmrnrorbr<>r<>rqrrrHrsrsrtrj]s
2026-01-18 11:29:19 +03:30
 

z'TransportingChickenDetailViewSet.createc Ostjjddd<02><02>d<03>}|j<04>d<04>}|j<04>d<05>}|r||r|tj<06>t|jd<00>d<06><02> <09>}tj<06>t|jd<00>d<06><02> <09>}|j||d<07>}|j<04>d<08>}|r<>|d kr<>|<07>
<EFBFBD>r<>|<04>t |j j j|<07><02>}|j<0F>d
d<00>}|r<>t|<08>|j_|<00>|<04>} | dur<>|j| d d <0C>}
|<00>|
j<16>S|j|d d <0C>}
t|
2026-02-01 08:26:08 +03:30
jtjd <0A>S)NFr8<00> -issue_daterrr)Zreside_date__date__gteZreside_date__date__lter<65>r<>rwTrxra)r,rdrer<>rzrcrrr<>rr<>rXr{r|r}r~rr<>rwr<>r<>r<>rbr<>rrr<>) rlrmrnrorBrrr<>rwr<>r<>rsrsrtr<>ps0<02>   <0E> 
 z%TransportingChickenDetailViewSet.listN)r<>r<>r<>r,rdr<>r<>r:r<>rrrWr<>rr{rjr<>rsrsrsrtr<>Vs
r<>c@s,eZdZej<04><05>ZeZe gZ
2026-01-18 11:29:19 +03:30
e Z dd<02>Z dS)<04>HatchingViewSetc Os<>tjjdd<02>}|j<03>d<03>}|j<03>d<04>}|j<03>d<05>}i}|rB||d<|rN||d<|rZ||d<|jfi|<08><01>}|j<05>d d<00>} | r<>t| <09>|j_|<00> |<04>}
|
dur<>|j
|
d
d <0B>} |<00> | j <0C>S|j |d
2026-02-01 08:26:08 +03:30
d <0B>} t| j tjd <0C>S) NFrur<>r<>rJZHatchingAge__exact<63>LocationNameCity__icontains<6E>LocationNameProvince__icontainsrwTrxra)r+rdrerzrcr~rr<>rwr<>r<>r<>rbr<>rrr<>) rlrmrnrorr<>r<>rJrMrwr<>r<>rsrsrtr<><00>s*    
 zHatchingViewSet.listN)r<>r<>r<>r+rdr<>r<>r;r<>rrrWr<>r<>rsrsrsrtr<><00>s
2026-01-18 11:29:19 +03:30

2026-02-01 08:26:08 +03:30
r<>c@sHeZdZejjdd<02>ZeZe gZ
2026-01-18 11:29:19 +03:30
e Z dd<04>Z dd<06>Zdd<08>Zd d
2026-02-01 08:26:08 +03:30
<EFBFBD>Zd S) <0C>TransportingDashboardViewSetFruc Cs(i}|j<00>d<01>}|j<00>d<02>}|rl|rlz4tj<02>|d<03><02><04>}tj<02>|d<03><02><04>}||g|d<WntyjYn0|j<00>d<05>}r<>||d<|j<00>d<07>}r<>|dkr<>d}||d <|j<00>d
2026-01-18 11:29:19 +03:30
<EFBFBD>}r<>||d <|j<00>d <0C>} r<>| |d <|jfi|<03><01>}|j<00>d<0E>}
<EFBFBD>r$|
dk<03>r$|
<EFBFBD><07><00>r$|<01>t|j j
j |
2026-02-01 08:35:33 +03:30
<EFBFBD><02>}|S)Nrrrrr<>r<>r<>r<><00>&hatching__poultry__Province__icontainsrW<00>hatching__RequestCoderwr<>r<>) rzrcrrrrrer<>rXr{r|r}) rlr<>rmrMrrr<>r<>rWr<>r<>rsrsrtr <00>s6   <0E>z+TransportingDashboardViewSet._apply_filtersc
2026-01-18 11:29:19 +03:30
Cs*|j<00>d<01>}|j<00>d<02>}|rl|rlz8tj<02>|d<03><02><04>}tj<02>|d<03><02><04>}|j||dd<05>}WntyjYn0|j<00>d<06>}r<>|j|d<07>}|j<00>d<08>}r<>|d kr<>d}|r<>|j|d
<EFBFBD>}|j<00>d <0B>}r<>|j|d <0C>}|j<00>d <0A>}r<>|j|d<0E>}|j<00>d<0F>} <09>r&| d k<03>r&| <09><07><00>r&|<01>tt j
2026-02-01 08:35:33 +03:30
j | <09><02>}|S)NrrrF<><03> date__gte<74> date__lte<74> date__isnullr<6C><00>Zdestination_city__icontainsr<73>r<><00>Zdestination_province__icontainsrW<00>r<>rw<00><01>jihadi_destinationr<6E>) rzrcrrrrerr<>rXr&r|r})
2026-02-01 08:26:08 +03:30
rlr<>rmrrr<>r<>rWr<>r<>rsrsrt<00>_apply_filters_all_productss<  <02>
2026-01-18 11:29:19 +03:30
      <0C>z8TransportingDashboardViewSet._apply_filters_all_productsc Cs<>|jtd<01>td<02>td<03>tdtdd<05>d<06>tdtdd<05>d<06>tdtdd<05>d<06>tdtdd<05>d<06>d<08>}|jtd<01>td <09>tdtdd
<EFBFBD>d<06>td tdd
<EFBFBD>d<06>tdtdd
<EFBFBD>d<06>td tdd
2026-02-01 08:26:08 +03:30
<EFBFBD>d<06>d <0B>}|<03>d <0C>p<>d |<04>d <0C>p<>d |d <|<03>d<0E>p<>d |<04>d<0E>p<>d |d<|<03>d<0F>p<>d |<04>d<0F><01>p d |d<|<03>d<10><01>p"d |<04>d<10><01>p0d |d<|<03>d<11><01>pFd |<04>d<11><01>pTd |d<|<03>d<12><01>pjd |<04>d<12><01>pxd |d<|d <00>p<>d}|<03>|d|d|d|dd<15><02>|S)Nr<4E>r<>r<>F<>r<>r<>T)r<>r<>r<><00> input_count<6E>input_quantity<74> output_count<6E>output_quantity<74>quantity<74><01>out)r<>r<>r<>r<>r<>r<>r<>rr<>r<>r<>r<>r<>r<>r<>)<02> input_percent<6E>output_percent)r<>rrrr rc<00>update)rlr<>Zall_products_queryset<65>statsZall_products_statsr<73>rsrsrtr&9s:<10>
2026-01-18 11:29:19 +03:30
<10>  "$$$<0E>z/TransportingDashboardViewSet._calculate_metricsc
Os<>z<>|<00>|j|<01>}tjjddd<03>}|<00>||<01>}|<00>||<06>}|d|dpHd|dpRd|d|d pbdt|d
d <0B>|d |d p~dt|dd <0B>d<0F> }t|t j
2026-02-01 08:26:08 +03:30
d<10>WSt y<>} z"tdt | <09>it j d<10>WYd} ~ Sd} ~ 00dS)NF<4E>"مرغ زنده -جهت كشتار<D8A7>rv<00>productr<74>r<>rr<>r<>r<>r<>r<>r<>r<>r<>) Z bar_countZ bar_quantityZtotal_bar_killing_ageZinput_bar_countZinput_bar_quantityZinput_bar_percentZ
output_barZoutput_bar_quantityZoutput_bar_percentrar<>)r r<>r5rdrer<>r&r<>rrr<>r<>r<>r<>)
rlrmrnroZ filtered_bars<72>query_all_productsZfiltered_all_productsr2r_r<>rsrsrtr<>\s0<02>  
2026-01-18 11:29:19 +03:30


 
 <0C> 
2026-02-01 08:26:08 +03:30
<04>z!TransportingDashboardViewSet.listN)r<>r<>r<>r.rdrer<>rAr<>rrrr{r r<>r&r<>rsrsrsrtr<><00>s#%#r<>c@s4eZdZejjdd<02>ZeZe gZ
e Z e Zdd<04>ZdS)<06>TransportingDetailViewSetFrucOsfi}|j<00>d<01>}|j<00>d<02>}|j<00>d<03>}|j<00>d<04>}|j<00>d<05>} |j<00>d<06>}
2026-01-18 11:29:19 +03:30
|
dkrXd}
|r<>|r<>tj<02>t|jd<00>d<08><02><05>}tj<02>t|jd<00>d<08><02><05>}||d <||d
<| r<>| |d <|
r<EFBFBD>|
|d <|r<>||d <|r<>||d<|j<00>d<0F>} tjjfi|<04>ddi<01><01><01> d<12>} t
jjddd<14>} |<05>r&| j|d<15>} |<06>r8| j|d<16>} |<07>rT|<08>rT| j||dd<17>} | <09>rf| j| d<18>} |
<EFBFBD>rx| j|
2026-02-01 08:35:33 +03:30
d<19>} | <0B>r<>| dk<03>r<>| <0B> <0B><00>r<>| <0C>t |j jj| <0B><02>} | <0A>t tjj| <0B><02>} t| <0C>}t| <0A>}dd<1B>}g}|D]}|<11>||<12>d|f<03><00>q<>|D]}|<11>||<12>d|f<03><00>q<>|jdd<1F>d d!<21>d"d#<23>|D<00>}|j<14>d$d<00>}|<14>rXt|<14>|j_|<00><16>}|<15>||<01>}|du<01>rlg}|D]<5D>}t|d%<25><02>r<>t|d&|id'<27>}|<17>|j<1B>n<>t|d&|id'<27>}|j}|j<05>r<>|jn|j}|<1A>rt|tj<05><02>r<>tj<02>|tj j!<21>n||d%<nd|d%<|j"|d <|j#|d(<|j$|d)<|j%|d*<|j&|d+<|j'|d,<|j(|d-<|<17>|<19><00>q~|<15>)|<17>Sg}|D]<5D>}t|d%<25><02>r<>t|d&|id'<27>}|<17>|j<1B>n<>t|d&|id'<27>}|j}|j<05>r<>|jn|j}|<1A>r<>t|tj<05><02>r<>tj<02>|tj j!<21>n||d%<nd|d%<|j"|d <|j#|d(<|j$|d)<|j%|d*<|j&|d+<|j'|d,<|j(|d-<|<17>|<19><00>qtt*|t+j,d.<2E>S)/NrwrWrrr<>r<>r<>rr5r6r<>r<>r<>r<>r<>rvF<>-Dater<65>r<>r<>r<>r<>r<>r<>cSsrt|d<01>r>|jr>t|jtj<03>r(|j<01><04>St|jtj<04>rj|jSn,t|d<02>rT|jrT|jSt|d<03>rj|jrj|jStjjS)Nrr<00>unloading_date)<07>hasattrr<00>
2026-02-01 08:26:08 +03:30
isinstancerrr<><00>min<69><01>objrsrsrt<00> get_sort_date<74>s
z5TransportingDetailViewSet.list.<locals>.get_sort_date<74> transporting<6E> all_productscSs|dS<00>Nrrsr<>rsrsrtr<><00>r<>z0TransportingDetailViewSet.list.<locals>.<lambda>Tr<54>cSsg|]\}}}|<02>qSrsrs<00>r<><00>_r<5F>rsrsrt<00>
2026-02-01 08:35:33 +03:30
<listcomp><3E>r<>z2TransportingDetailViewSet.list.<locals>.<listcomp>rwrrm<00><01>contextr<74>r<><00> DesUnitNamerVr<>r<>ra)-rzrcrrr<>rr.rdrer<>r5r<>rXr{r|r}r&r<>r<00>sortr~rr<>rwr<>r<>rBrbrQr<>r<><00>combine<6E>timer<65>r<><00>trackingr<67><00> destination<6F>destination_province<63>destination_cityr<79>r<>rrr<>)rlrmrnrorMrwrWrrr<>r<>r<>rBr<>Ztransports_list<73>all_products_listr<74><00> combined_listr<74><00>sorted_objectsrw<00> paginatorr<72><00>serialized_datar<61>rb<00>
2026-02-01 08:26:08 +03:30
date_valuersrsrtr<><00>s<>        <02>   <02>  <0E> <0C>   
2026-01-18 11:29:19 +03:30
 *







 *






2026-02-01 08:26:08 +03:30
zTransportingDetailViewSet.listN)r<>r<>r<>r.rdrer<>rBr<>rrrWr<>rr{r<>rsrsrsrtr<>}s r<>c@s,eZdZej<04><05>ZeZe gZ
2026-01-18 11:29:19 +03:30
e Z dd<02>Z dS)<04>HatchingCalculationsViewSetc Os<>|j<00>d<01>}|j<00>d<02>}|j<00>d<03>}ddi}|r:|g|d<|rH|g|d<tjjfi|<07><01>}|rt|<08>t|jjj|<06><02>}t |dt
d <09>} t |d
t
d <09>}
|<08> d <0B><01> <0C><00> <0A>} t |d t
d <09>} t| |
2026-02-01 08:26:08 +03:30
| | d <0A>tjd<0E>S)Nr<4E>r<>rrrvFZLocationNameCity__inZLocationNameProvince__inr<<00>r<><00> column_name<6D>aggregate_funcr9rpr<>)<04>evacuation_sumZhatching_count<6E> total_poultryrra)rzrcr+rdrerXr{r|r}rYrrr<>r<>rrr<>) rlrmrnror<>r<>rrrMrr<>Ztotal_poultry_hatchingr<67>Ztotal_leftoverrsrsrtr<> s0   
2026-01-18 11:29:19 +03:30

2026-02-01 08:26:08 +03:30
<0E><02><04><04>z HatchingCalculationsViewSet.listN)r<>r<>r<>r+rdr<>r<>r<r<>rrrr{r<>rsrsrsrtr<>s
2026-01-18 11:29:19 +03:30

2026-02-01 08:26:08 +03:30
r<>c@s0eZdZej<04><05>ZeZe gZ
2026-01-18 11:29:19 +03:30
e Z e Zdd<02>ZdS)<04>PoultryInfoViewSetc Ostjjdd<02><01>d<03>}|j<04>d<04>}|j<04>d<05>}|j<04>d<06>}|j<04>d<07>}|rj|jtjjddd <09>jd
d d <0C>d <0A>}|rz|j|d<0E>}|r<>|j|d<0F>}|r<>|dkr<>|<05><08>r<>|<04>t |j
j j |<05><02>}|j <0A>dd<00>} | r<>t| <09>|j_|<00>|<04>}
|
dur<>|j|
2026-02-01 08:26:08 +03:30
d d<12>} |<00>| j<14>S|j|d d<12>} t| jtjd<13>S)NFrur<>r<>rr<>r<>r)rrvrpTr<54>)r7)r<>)r<>r<>rwrxra)r*rdrer<>rzrcr-rr<>rXr{r|r}r~rr<>rwr<>r<>r<>rbr<>rrr<>) rlrmrnrorpr<>rr<>r<>rwr<>r<>rsrsrtr<>Bs:    <02><04>  <0E> 
 zPoultryInfoViewSet.listN)r<>r<>r<>r*rdr<>r<>r=r<>rrrWr<>rr{r<>rsrsrsrtr<>;s 
r<>c@sHeZdZejjdd<02><01>ddddd<07><05>d<03>Ze Z
2026-01-18 11:29:19 +03:30
e gZ e ZeZdd <09>Zd
2026-02-01 08:35:33 +03:30
S) <0B>TotalKillHousesViewSetFrur<>rwr-rVr<>c%
2026-01-18 11:29:19 +03:30
Os|j<00>d<01>}ddi}|j<00>d<04>}r,||d<|j<00>d<06>}rD||d<|j<00>d<08>}r\||d <|jjfi|<05><01>} |r<>|d
kr<>|<04><04>r<>| <09>t|jjj|<04><02>} |j <09>d d<00>}
|
r<EFBFBD>t
|
2026-02-01 08:35:33 +03:30
<EFBFBD>|j _ |<00> | <09>} | dur<>| n| } t| jd d d<0E><02><10><00>} i}| <0A>r<>|j<00>d<0F>p<>d}|j<00>d<10><01>pd}tjj| dd<11><02>dddd<15>}|<0F>rntj<14>t|<0F>d<16><02><17>}tj<14>t|<10>d<16><02><17>}|j||d<17>}|<11>d<12>jtd<13>tdtdd<18>d<19>tdtd d<18>d<19>tdtdd<18>d<19>tdtd d<18>d<19>td<1A>d<1B>}tjj| ddd<1D><03>ddd d!d"<22>}|<0F>r|j||dd#<23>}|<15>d<1E>jtd<1F>tdtdd$<24>d<19>tdtd d$<24>d<19>tdtdd$<24>d<19>tdtd d$<24>d<19>td<1A>d<1B>}d%d&<26>|D<00>}d'd&<26>|D<00>}| D<00>]0}|<17>|i<00>}|<18>|i<00>}|<1A>d(<28><01>p<>d)|<1B>d(<28><01>p<>d)}|<1A>d*<2A><01>p<>d)|<1B>d*<2A><01>p<>d)}|<1A>d+<2B><01>p<>d)|<1B>d+<2B><01>p<>d)}|<1A>d,<2C><01>pd)|<1B>d,<2C><01>pd)}|<1A>d-<2D><01>p(d)|<1B>d-<2D><01>p6d)} |<1A>d.<2E><01>pHd)|<1B>d.<2E><01>pVd)}!|d)k<04>r<>t| |d/d0<64>}"t|!|d/d0<64>}#nd)}"d)}#||| ||"|!||#d1<64>||<<00>q|| du<01>r<>|j| d ||d2<64>d3<64>}$|<00> |$j!<21>S|j"| d ||d2<64>d3<64>}$t#|$j!t$j%d4<64>S)5Nr<4E>rvFr<46>rVr<>r<>r<>r-r<>rwrwTr<54>rr<00><02>DesPartIdCode__inrvr<>r<>r<>rrr4r<>r<>r<><00>r;<00> input_total<61> output_totalr<6C>r<>r<>r<><00><03>jihadi_destination__inrvr<>r<>r<>r<>rr<>r<>r<>cSsi|]}|d|<01>qS<00>r<>rs<00>r<><00>itemrsrsrtr<><00>r<>z/TotalKillHousesViewSet.list.<locals>.<dictcomp>cSsi|]}|d|<01>qSr<>rsrrsrsrtr<><00>r<>r<>rr;r<>r<>r<>r<>r<>r<>)r?<00>total_bars_quantity<74>
2026-02-01 08:26:08 +03:30
input_bars<EFBFBD>total_input_bars_quantity<74>total_input_bars_percent<6E> output_bars<72>total_output_bars_quantity<74>total_output_bars_percent)rm<00>
info_cache<EFBFBD>ryr<>ra)&rzrcr<>rer<>rXr{r|r}r~rr<>rwr<>r<>rr<>r.rdr<>rrr<>rrrrr rr5r<>r<>r<>rbr<>rrr<>)%rlrmrnror<>rMr<>r<><00>kill_houses_name<6D> kill_housesrwr<>Zitems_to_serialize<7A> part_id_codesr rrZ
bars_queryZ date1_objZ date2_objZbars_aggregationsZall_products_queryZall_products_aggregations<6E> bars_dictZall_products_dict<63> part_id_codeZ bars_dataZall_products_datar<61>rrr
<00>input_bars_count<6E>output_bars_countrr r<>rsrsrtr<>ms<> <0E> 
2026-01-18 11:29:19 +03:30
<02><08>
<06> <02>
<EFBFBD><02>
<06> 
        
<02>
2026-02-01 08:26:08 +03:30
 zTotalKillHousesViewSet.listN)r<>r<>r<>r/rdrer<>r<>r<>rCr<>rrrWr<>r r{r<>rsrsrsrtr<>fs "r<>c@s0eZdZejjdddd<02>ZeZe gZ
dd<04>Z dS)<06>HatchingAnalysisPedigreeViewSetF<74>rv<00>poultry__isnullZPedigreeName__isnullc$ Os<>i}|j<00>d<01>}|j<00>d<02>}|j<00>d<03>}|j<00>d<04>}|j<00>d<05>} |j<00>d<06>}
2026-01-18 11:29:19 +03:30
|r<>| r<>tj<02>t|jd<00>d<07><02><05>}tj<02>t|jd<00>d<07><02><05>} ||d<| |d <|r<>||d
<|r<>||d <|r<>||d <|
d kr<>d|d<n|jjfi|<04><01>} | <0B>d<10>j t
ddd<13>d<14><01> d<15>} | <0B>d<10>j t
d<16>d<17><01> d<18>} | <0B>d<10>j t d<16>d<19><01> d<1A>}| <0B>d<10>j t d<1B>d<1C><01> d<1D>}| <0B>d<10>j t d<1E>d<1F><01> d <20>}| <0B>d<10>j t d!<21>d"<22><01> d#<23>}|D](}|d$du<01>r<>t|d$<00>nd%|d$<<00>q<>| jdd&<26><01>d<10>j t
d<16>d<17><01> d<18>}| jdd&<26><01>d<10>j t d<16>d<17><01> d<18>}| <0B>d'd<10>j t d<16>d(<28><01> d'd)<29>}td*d+<2B><00>}|D]J}|d'}|d}|d,}||d-<00>||d.<2E><02>||d/|7<<00>q6d0d1<64>|<16><11>D<00>}| <0B>d<10>j t d2<64>d3<64><01> d4<64>}| <0B>d<10>j t d5<64>d6<64><01> d7<64>}d8d9<64>|D<00>}d:d9<64>|D<00>}| jt d<16>d;<3B>d<<00>pd=}g}|D]\}|d}|<1C>|d%<25>} |<1D>|d=<3D>}t| |d>d?<3F>}!t| |d>d?<3F>}"|<1F>||!|"d@<40><03><00>q
2026-02-01 08:26:08 +03:30
| | ||||||||||dA<64> }#t|#tjdB<64>S)CN<43>pedigreer<65>r<>rrr<>rr5r6rKrL<00>PedigreeName__icontains<6E>activer<65>r<>r<>rpTr<54><00>r<><00>-poultry_countr<74><00><01> chick_count<6E> -chick_count<6E><01> chick_sum<75>
-chick_sumr<6D><00>Z left_over<65>
-left_overr<72>)<01> pedigree_namez-pedigree_namer<00><01> average_age<67> -average_ager'rr<>r<>)<01> hatching_sumz -hatching_sumcSs
dgd<02>S)Nr)<02> total_sum<75>breedsrsrsrsrsrtr<> r<>z6HatchingAnalysisPedigreeViewSet.list.<locals>.<lambda>r)r+)rr)r*cSs$g|]\}}||d|dd<02><03>qS)r*r+)r<>Zhatching_sum_allr+rs)r<>r<>rrsrsrtr<>-s
<06><06>z8HatchingAnalysisPedigreeViewSet.list.<locals>.<listcomp>r<><00>r<><00> -evacuation<6F>transport_hatching__GoodAmount)Z
count_barsz -count_barscSsi|]}|d|dpd<02>qS)r<>r<>rrsrrsrsrtr<>=s<02>z8HatchingAnalysisPedigreeViewSet.list.<locals>.<dictcomp>cSsi|]}|d|dpd<02>qS)r<>r!rrsrrsrsrtr<>As<02>r:r;r<>r<>r<>)r%rr;) <0C>pedigree_name_poultry<72>pedigree_name_hatching_count<6E>pedigree_name_hatching_sum<75>pedigree_name_leftover<65>pedigree_name_pedigree<65>pedigree_name_average_age<67>#pedigree_name_active_hatching_count<6E>!pedigree_name_active_hatching_sum<75>province_result<6C>pedigree_name_evacuation_sum<75>pedigree_name_bars_sumZ$pedigree_evacuation_hatching_percentra)rzrcrrr<>rr<>rerrrr<>rrrrrrgr<>r<>rrr<>)$rlrmrnrorMrr<>r<>rrr<>rr/r0r1r2r3r4rr5r6Zhatchings_by_provinceZprovinces_dictr<74>r)r7r8r9Zevacuation_dictrr Zevacuation_hatching_percentr<74>Zpercent_by_pedigreeZpercent_by_totalr_rsrsrtr<><00>s<>      
2026-01-18 11:29:19 +03:30


<EFBFBD><02>
<06><02>
<06><02><02><02><02><06><02>&<06><02><06><02> <06><04>  <02><06>
<06><02>
2026-02-01 08:26:08 +03:30
<06><02><02><02>  <02> <02>z$HatchingAnalysisPedigreeViewSet.listN<74> r<>r<>r<>r-rdrer<>rDr<>rrr<>rsrsrsrtr<00>src@s.eZdZejjddd<02>ZeZe gZ
dd<04>Z dS)<06>HatchingAnalysisProvinceViewF)rvrcOs<>i}|j<00>d<01>}|j<00>d<02>}|j<00>d<03>}|rx|rxtj<02>t|jd<00>d<04><02><05>}tj<02>t|jd<00>d<04><02><05>}||d<||d<|dkr<>d|d <n|jjfi|<04><01>}|jd
2026-01-18 11:29:19 +03:30
d <0B><01>d <0C>j t
d <0A>d<0E><01> d<0F>} |<08>d <0C>j t
d<10>d<11><01> d<12>}
|<08>d <0C>j t
d<13>d<14><01> d<15>} |<08>d <0C>j t d<16>d<17><01> d<18>} |<08>d <0C>j t ddd<1B>d<1C><01> d<1D>} | D](}|ddu<01>rVt|d<00>nd|d<<00>q8|<08>d <0C>j t
d <20>t
d<10>d!<21><02> d"<22>}g}|D]H}|d#}|d$}|<11>r<>t||d%d&<26>}nd}|<10>|d |d'<27><02><00>q<>| |
2026-02-01 08:26:08 +03:30
| | | |d(<28>}t|tjd)<29>S)*Nr<4E>rrrr5r6rr<>r<>F)Z&transport_hatching__GoodAmount__isnullr<6C>r.<00>Z good_amount<6E> -good_amountr<74>r r"r<>r#r$rr&r(rpTr<54>rrr'rr<>)r<><00> total_chicksz -ProvinceNamer>r<>r<>r<>)r<>Zevacuation_hatching)<06>province_sum_transporting<6E>province_hatching_sum<75>province_name_poultry<72>province_name_leftover<65>province_name_average_age<67>$province_evacuation_hatching_percentra)rzrcrrr<>rr<>rerrrr<>rrrr<>rrrr<>)rlrmrnrorMr<>rrrr?r@rBrCrArZ province_datarDr>r<><00>percentr_rsrsrtr<>ls<>   
2026-01-18 11:29:19 +03:30
 <02><06><02>
<06><02><02><02><06><02>

<EFBFBD><02>&
2026-02-01 08:26:08 +03:30
<06><02><02> <02>z!HatchingAnalysisProvinceView.listN) r<>r<>r<>r-rdrer<>rEr<>rrr<>rsrsrsrtr;gsr;c@s4eZdZejjddd<02><02>d<03>ZeZ e
gZ dd<05>Z dS)<07>"TransportingReportDashboardViewSetF<74>rvr<>rHc
2026-01-18 11:29:19 +03:30
Osi}|j<00>d<01>}|j<00>d<02>}|j<00>d<03>}|rx|rxtj<02>t|jd<00>d<04><02><05>}tj<02>t|jd<00>d<04><02><05>}||d<||d<|jjfi|<04><01>}|r<>|<08>t|d<07>t|d<08>B<00>}|j t
d <09>d
<EFBFBD>d } |jd d d<0E>j t d <09>t d <09>d<0F>}
|jd d d<0E>j t d<10>d<11>dp<>d } |<08>d<13>jt
d <09>d
<EFBFBD><01>d<14>} | D](} | d du<01>r<t| d <00>nd | d <<00>q|<08>d<13>jt d<10>d<15><01>d<16>}|j t d<10>d<11>d<00>p|d }|jdd<18><01>d<19>jt d<1A>d<1B><01>d<1C>dd<1D>}|<08>d<13>jt d<1A>d<1E><01>d<1F><01><12>}| du<01>r<>t| <09>nd |
2026-02-01 08:26:08 +03:30
| ||| ||<08><13>|d <20> }t|tjd!<21>S)"Nrr<00>locationrr5r6r<>r<>r<>r&r'r<>r)r<>r<>)Z minimum_ageZ maximum_ageZhatching__ChickCountSum)<01>
good_countrIrVr(r r"F)ZDesUnitName__isnullr<6C>r<>r<r=<00>)Z sum_killingz -sum_killing) <09>average_age_killing<6E>minimum_maximum_age_killing<6E>average_age_killing_province<63>hatching_killing_province<63>killing_name_hatching<6E>active_hatching<6E>country_hatchingZtransport_car_count<6E>maximum_killing_provincera)rzrcrrr<>rr<>rer r<>rr
r rrrr<>rrfr<>rrr<>)rlrmrnrorMrrrHrBrKrLrPrMrJrNrQrOrRr_rsrsrtr<><00>s<>   <12><06><02><02><02><06><02>&<02><06><02><06><02><02> <02><06><02><06><02><06><02><02> z'TransportingReportDashboardViewSet.listN) r<>r<>r<>r.rdre<00>select_relatedr<64>rFr<>rrr<>rsrsrsrtrF<00>srFc@s.eZdZejjddd<02>ZeZe gZ
dd<04>Z dS)<06>TransportingAnalysisViewSetFrGcOs<>|j}|<04>d<01>jtd<02>d<03>}dd<05>|D<00>}|<04>dd<06>jtd<02>d<03>}i}i} i}
2026-01-18 11:29:19 +03:30
i} |D]d} | d} | d}| d}| |vs<>||| kr<>||| <||
| <| | vs<>|| | krV|| | <|| | <qV|jdd <09><01>dd<06>jtd<02>d<03>}i}|D]B} | d} | d}| d}| |v<01>rg|| <|| <00>||d
<EFBFBD><02>q<>g}|<06><06>D]<5D>} |<11>| g<00>}|<14>r<>t|d d <0C>d <0A>}t |dd <0C>d <0A>}|d}|d}|d}|d}nd}d}d}d}|<13>| |||||<06>| d<10>|<08>| d<10>| <09>| d<10>|
<EFBFBD>| <0A>| <0B>| <0A>d<11>
<EFBFBD><00>q4t
2026-02-01 08:26:08 +03:30
|t j d<12>S)NrVr<>)<01>total_good_amountcSsi|]}|d|d<00>qS)rVrUrsrrsrsrtr<><00>r<>z4TransportingAnalysisViewSet.list.<locals>.<dictcomp>r<>rUTr<54>)<02> unit_namerUcSs|dS<00>NrUrsr<>rsrsrtr<>+r<>z2TransportingAnalysisViewSet.list.<locals>.<lambda><3E>rqcSs|dSrWrsr<>rsrsrtr<>,r<>rVr)
r<EFBFBD>Zmax_out_province_slaughterhouseZmax_out_amountZmin_out_province_slaughterhouseZmin_out_amount<6E>total_killing_province<63>total_max_amount<6E>total_min_amountZtotal_max_amount_unit_nameZtotal_min_amount_unit_namera) r<>rrrrer<00>keysrc<00>maxr<78>rrr<>)rlrmrnro<00>qsrYZtotal_killing_dictZtotal_good_amount_in_and_outrZr[Zmax_unit_name_in_and_outZmin_unit_name_in_and_outrr<><00>amountrVZall_dataZ unit_lookuprUr_Z out_unitsZmax_unitZmin_unitZ max_unit_nameZmax_unit_amountZ min_unit_nameZmin_unit_amountrsrsrtr<><00>sz <06>
2026-01-18 11:29:19 +03:30
<06>
<02>
  



2026-02-01 08:26:08 +03:30
<08> z TransportingAnalysisViewSet.listN) r<>r<>r<>r.rdrer<>rAr<>rrr<>rsrsrsrtrT<00>srTcCs<>|j<00>d<01>}|j<00>d<02>}ddi}|rp|rptj<02>t|jd<00>d<05><02><05>}tj<02>t|jd<00>d<05><02><05>}||d<||d<tjjfi|<03><01>}t |dt
2026-01-18 11:29:19 +03:30
d <09>}t ||<04> <0C>d
2026-02-01 08:26:08 +03:30
<EFBFBD>t jd <0B>S) NrrrvFrZissue_date__date__gteZissue_date__date__lter<65>r<>)<02> total_amountZlen_transportsra)rzrcrrr<>rr,rdrerYrrr<>rr<>)rmrrrMrBr`rsrsrt<00>get_transport_to_killGs  <06><04>ra<00>POSTc Cs<>|jd<00><01>}tjt|<01>d<02>}|j}g}t|jdd<04><01>D]t\}}|dks8|durRq8|d}|d}|d} |d}
2026-01-18 11:29:19 +03:30
|d } tj j
|d
d <0B>s8t|||
2026-02-01 08:35:33 +03:30
<EFBFBD> <0B>| <09> <0B>| d <0C>} | <0C> <0C>q8t |<04>S) N<>file<6C><01>filenameT<65><01> values_onlyr<79>rr<><00><00>Fr<46>)rwr-rVr<>r<>)<0E>FILES<45>read<61>openpyxl<78> load_workbookrr<00> enumerate<74> iter_rowsr/rdre<00>rstriprir) rmrc<00>wb_obj<62>sheet<65>list1<74>i<>rowrwr-r<>rVZ Province_idr<64>rsrsrt<00>add_kill_house[s,<02>
2026-02-01 08:26:08 +03:30
rvcCs<>i}|j<00>d<01>}|dkr"d|d<n6|dkr4d|d<n$|dkrFd|d<ntd d
2026-01-18 11:29:19 +03:30
itjd <0B>Stjjfi|<01>d d d<0E><02><01>}t|dd<10>j }t|tj
2026-02-01 08:26:08 +03:30
d <0B>S)Nr<4E><00>ha<68>
همدانr<D986><00>ma<6D>
مرکزی<D8B2>ku<6B>کردستانr_uشهر اشتباه استraF<><46>)rvr<>Trx) rzrcrr<00>HTTP_403_FORBIDDENr-rdrer@rbr<>)rmrMr<>rH<00>ser_datarsrsrt<00>update_hatching}s 
2026-01-18 11:29:19 +03:30


2026-02-01 08:26:08 +03:30
r<>c Cs<>dddddddddddd<06> }tjjdt|<01><04><00>d<08><02>d d
2026-01-18 11:29:19 +03:30
<EFBFBD>}d }|D]2}|j}||vrD|||_|jd
2026-02-01 08:26:08 +03:30
gd <0C>|d 7}qDtd|t |<02>|d|<03>dt |<02>|<00>d<11>d<12><04>S)NrOrPrQrRrSrTF)rvZPedigreeName__inr<6E>r<>rr<>r<><00>successzUpdated z records. Skipped <20>.)rZupdated_recordsZskipped_records<64>message)
r-rdrer<>r\r<>r<>rirrA)rmr<>r<00> updated_countrH<00> original_namersrsrt<00>
2026-01-18 11:29:19 +03:30
get_breeds<EFBFBD>s><02>
<EFBFBD><04>


2026-02-01 08:26:08 +03:30
<18>r<EFBFBD>c#CsTt}|j<01>d<01>}|j<01>d<02>}|j<01>d<03>}ddi}|j<01>d<06>}rH||d<|j<01>d<08>}r`||d <|j<01>d
2026-01-18 11:29:19 +03:30
<EFBFBD>}rx||d <tjjfi|<05><01><01>d <0C>} |r<>|d kr<>|<02><07>r<>| <09>t|j j
|<02><02>} t | j ddd<10><02>}
|
s<EFBFBD>t dddddddddddd<12> <0B>Stjj|
dd<13><02>dddd<17>} tjj|
ddd<19><03>ddddd<1E>} |<03>rztj<11>t|<03>d<1F><02><14>}tj<11>t|<04>d<1F><02><14>}| j||d <20>} | j||dd!<21>} | <0B>d<14>jtd<15>d"<22>} | <0C>d<1A>jtd<1B>d"<22>}d#d$<24>| D<00>}|D],}|d}|<0F>|d<11>|d%<00>p<>d||<<00>q<>d&d'<27>t|<0F><19>d(d)<29>dd*<2A>D<00>}d}d}|<12>r<>|d}|d+}|d|dg}d,d$<24>tjj|d-<2D><01>dd <0B>D<00>}|<18>|d<00>}|<18>|d<00>}|<19>r<>|j|d%d.<2E>}|<1A>r<>|j|d%d.<2E>}| jtd<15>tdtdd/<2F>d0<64>tdtdd/<2F>d0<64>td tdd/<2F>d0<64>td tdd/<2F>d0<64>td <0C>d1<64>}| jtd<1B>tdtdd2<64>d0<64>tdtdd2<64>d0<64>td tdd2<64>d0<64>td tdd2<64>d0<64>td <0C>d1<64>}|d3<00>pTd|d3<00>p`d}|d4<00>ppd|d4<00>p|d}|d5<00>p<>d|d5<00>p<>d}|d6<00>p<>d|d6<00>p<>d} |d7<00>p<>d|d7<00>p<>d}!|d8<00>p<>d|d8<00>p<>d}"t t|
<EFBFBD>|||"|!|| |<13>r|<13>d
<EFBFBD>nd|<13>r&|<13>d9<64>nd|<14>r8|<14>d
2026-02-01 08:35:33 +03:30
<EFBFBD>nd|<14>rJ|<14>d9<64>ndd<12> <0B>S):Nr<4E>rrrvFr<46>rVr<>r<>r<>r-r<>r<>rwTr<54>r) ZkillHouseCountr?rZtotal_bars_output_countZtotal_bars_input_countrr
2026-02-01 08:26:08 +03:30
Ztop_kill_house_nameZtop_kill_house_amountZlow_kill_house_nameZlow_kill_house_amountr<74>r<>r<>r<>rr<>rr<>r<>r<>rr<>rr4r<><00>r`cSsi|]}|d|dpd<02>qS)r<>r`rrs)r<><00>statrsrsrtr<> r<>z.dashboard_total_kill_house.<locals>.<dictcomp>r`cSsg|]\}}||d<00><02>qS))r<>r`rsr<>rsrsrtr<>
s<06>z.dashboard_total_kill_house.<locals>.<listcomp>cSs|dS)Nr<4E>rsr<>rsrsrtr<> r<>z,dashboard_total_kill_house.<locals>.<lambda>r<><00><><EFBFBD><EFBFBD><EFBFBD>cSsi|] }|j|<01>qSrsr<>)r<><00>khrsrsrtr<> r<>)<01>PartIdCode__in)r<>r_r<>r<>r<>r<>r<>r;r<>r<>r<>r<>r_)r rzrcr/rdrer<>r<>rXr|r}r<>rrr.r<>r5rrr<>rrrrrrgr-r<>r rrA)#rmr{r<>rrrMr<>r<>rrrr?<00>all_products_transportZkill_house_stats_barsZkill_house_stats_all_productsZ
stats_dictr<EFBFBD>Zpart_idZkill_house_statsZtop_kill_house_infoZlow_kill_house_infoZtop_statZlow_statZkill_house_part_idsZkill_houses_dictZtop_kill_houseZlow_kill_houseZaggregation_barsZaggregation_all_productsr<73>rrr
r<>r<>rsrsrt<00>dashboard_total_kill_house<73>s<>    <0C><02><02>
2026-01-18 11:29:19 +03:30
<EFBFBD><02>
<06>
2026-02-01 08:26:08 +03:30
<06>"<14> <06><06><06> <06> <12>r<EFBFBD>c@s0eZdZejjdddd<02>ZeZe gZ
dd<04>Z dS)<06>HatchingAnalysisOverviewViewSetFrc&OsPi}|j<00>d<01>}|j<00>d<02>}|j<00>d<03>}|j<00>d<04>}|j<00>d<05>} |j<00>d<06>}
2026-01-18 11:29:19 +03:30
|r<>| r<>tj<02>t|jd<00>d<07><02><05>}tj<02>t|jd<00>d<07><02><05>} ||d<| |d <|r<>||d
<|r<>||d <|r<>||d <|
d kr<>d|d<|jjfi|<04><01>} | jdd<11><01>dd<13>j t
d<14>d<15><01> d<16>} | jdd<17><01>dd<13>j t
d<19>d<1A><01> d<1B>} | jdd<17><01>dd<13>j t
2026-02-01 08:26:08 +03:30
d<1C>d<1D><01> d<1E>}t t <0A>}t t<0E>}t t <0A>}t t<0E>}t t <0A>}t t<0E>}| D]F}|d}|d}|d<00>p<>d }|||7<||<00>||i<01><00>q<>t||jd!<21>}t||jd!<21>}| D]F}|d}|d}|d"<00>pd }|||7<||<00>||i<01><00>q<>t||jd!<21>}t||jd!<21>}|D]F} | d}| d}| d#<00>pxd }!|||!7<||<00>||!i<01><00>qXt||jd!<21>}"t||jd!<21>}#|||||d$<24>|||||d$<24>d%<25>|||||d&<26>|||||d&<26>d%<25>|"||"||"d'<27>|#||#||#d'<27>d%<25>d(<28>}$d)|$i}%t|%tjd*<2A>S)+Nrr<>r<>rrr<>rr5r6rKrLrrr<>r<>F)Z'transport_hatching__DesUnitName__isnullZtransport_hatching__DesUnitNamer<65>r.r<>z -total_amount)Zpoultry__UnitName__isnullZpoultry__UnitNamer<65>rrr<>r,r-r`rrXrr<>)r<>r`<00> pedigrees)r]r<>)r<>Ztotal_chick_countr<74>)r<>r<>r<>)r<><00>hatching_poultryZevacuation_poultry<72>overviewra)rzrcrrr<>rr<>rerrrr<>rrr<>rr]r<>rrr<>)&rlrmrnrorMrr<>r<>rrr<>rZkill_houses_overviewZhatching_total_poultry_overviewZ!evacuation_total_poultry_overviewZkill_house_totalZkill_house_total_pedigreesZhatching_totalZhatching_total_pedigreesZevacuation_totalZevacuation_total_pedigreesr<00>kill_house_namer%r`Zmax_kill_house_nameZmin_kill_house_namerbZpoultry_unit_nameZchick_count_sumZmax_poultry_unit_nameZmin_poultry_unit_name<6D>infor<6F>Zmax_evacuation_total_poultryZmin_evacuation_total_poultryr<79>r_rsrsrtr<>X s<>       <04><06><02><02><06><02> <04><06><02><06><06><04><06><06><04><06><06><04><04>(<04>z$HatchingAnalysisOverviewViewSet.listNr:rsrsrsrtr<>Q sr<>c@s4eZdZejjdd<02>ZeZe gZ
e Z e Zdd<04>ZdS)<06>TransportingDetailCustomViewSetFruc Os<>|<00>|<00><01><00>}|j<02>d<01>}|rD|dkrD|<05><04>rD|<04>t|jjj |<05><02>}|j
<EFBFBD>dd<00>}|rbt |<06>|j _ |<00>|<04>}|dur<>|j|dd<05>}|<00>|j<11>S|j|dd<05>}t|jtjd<06>S)Nr<4E>r<>rwTrxra)r<>r<>rzrcr<>rerXr{r|r}r~rr<>rwr<>r<>r<>rbr<>rrr<>) rlrmrnrorBr<>rwr<>r<>rsrsrtr<><00> s  <0E> 
 z$TransportingDetailCustomViewSet.listN)r<>r<>r<>r.rdrer<>rBr<>rrrWr<>r!r{r<>rsrsrsrtr<><00> s r<>c Cshddi}ddi}ddi}|j<00>d<03>}|r<>|dkrBd|d<d|d<nD|dkr\d |d<d |d<n*|d
2026-01-18 11:29:19 +03:30
krvd |d<d |d<nd |d<d |d<|j<00>d <0A>dkr<>tj<02>t|jd <00>d<0F><02><05>}tj<02>t|jd<00>d<0F><02><05>}||d<||d<tj<07>t fi|<01><01>t fi|<02><01>B<00>}t
jjfi|<03>|dd<14><02><01>j |j d<15><01> d<16>}|jddd<19><02><0F>} |j| d<15><01> d<16>}t|dd<1A>j }
t|
2026-02-01 08:26:08 +03:30
<EFBFBD>S)NrvFr<46>rwrx<00>poultry__LocationNameProvinceZpoultry__Provinceryrzr{r|<00>
بوشهرr<00>Nonerrr5r6<00>r<>uبارگیری<D8B1>r<><00>TrackingStatusDescription__in<69><01>TrackingCode__inr<6E>r<>Tr<54>rx)rzrcrrr<>rr-rdrer r.<00>excluderbr<>rr<>rGr) rmrMZfilters_province<63> filters_barr<72>rrrp<00>bar<61>quarantine_coderrsrsrt<00>send_different_bar<61> sF 
2026-01-18 11:29:19 +03:30


2026-02-01 08:26:08 +03:30
<02><02>$<04><02>r<>c@s4eZdZejjdd<02>ZeZe gZ
e Z e Zdd<04>ZdS)<06>ApiSendDifferentBarFrucOs<>ddi}ddi}|j<00>d<03>}|dkr.d|d<n,|dkr@d|d<n|d krRd
2026-01-18 11:29:19 +03:30
|d<nd |d<|j<00>d <0C>d kr<>tj<02>t|jd <00>d<0E><02><05>}tj<02>t|jd<00>d<0E><02><05>}||d<||d<tjjfi|<04><01>} t jjfi|<05>| dd<13><02><01>j
|j d<14><01> d<15>}
|
j ddd<18><02><0E>} |
j| d<14><01> d<15>}
|j<00>d<19>} |j<00>d<1A>} | <0C>r\| dk<03>r\| <0A><0F><00>r\|
<EFBFBD>t|jjj| <0A><02>}
|j<14>dd<00>}|<0E>r|t|<0E>|j_|<00>|
<EFBFBD>}|du<01>r<>|j|dd<1D>}|<00>|j <0B>St|
2026-02-01 08:26:08 +03:30
dd<1D>j }t|<11>S)NrvFr<46>rwrxr<>ryrzr{r|r<>rr<>rrr5r6r<>r<>r<>r<>r<>Tr<54>r<>rrr<>rwrx)rzrcrrr<>rr-rdrer.r<>rbr<>rr<>r<>rXr{r|r}r~rr<>rwr<>r<>r<>rGr)rlrmrnrorMr<>r<>rrrpr<>r<>r<>rrrwr<>r<>rrsrsrtr<>!
2026-01-18 11:29:19 +03:30
sV 


<02><02><04><02>  <0E> 

2026-02-01 08:26:08 +03:30
 zApiSendDifferentBar.listN<74>r<>r<>r<>r.rdrer<>rGr<>rrrWr<>rr{r<>rsrsrsrtr<>
s r<>c@s<eZdZejjdd<02>ZeZe gZ
2026-01-18 11:29:19 +03:30
dd<04>Z dd<06>Z dd<08>Z d S)
2026-02-01 08:26:08 +03:30
<EFBFBD>ApkInfoViewSetFrucCs
|j<00><01>S<00>N<>r<>rf<00>rlrsrsrt<00>
2026-01-18 11:29:19 +03:30
get_objectU
2026-02-01 08:26:08 +03:30
szApkInfoViewSet.get_objectcOs,tjjdd<02><01><03>}|<00>|<04>}t|jtjd<03>S<00>NFrura) r0rdrerfr<>rrbrr<><00>rlrmrnro<00>instancer<65>rsrsrtr<>X
2026-01-18 11:29:19 +03:30
s
zApkInfoViewSet.listcOsHtjjdd<02><01><03>}|j||jdd<04>}|jdd<05>|<05><07>t|jt j
2026-02-01 08:26:08 +03:30
d<06>S<00>NFruT)rb<00>partial)<01>raise_exceptionra) r0rdrerfr<>rb<00>is_validrirrr<>r<>rsrsrtr<>]
2026-01-18 11:29:19 +03:30
s
2026-02-01 08:26:08 +03:30
 zApkInfoViewSet.updateN)r<>r<>r<>r0rdrer<>rHr<>rrr<>r<>r<>rsrsrsrtr<>P
s r<>zhttps://s3.rasadyar.comZrasadyarZzG3ewsbYsTqCmuwsz,RInUMB78zlQZp6CNf8+sRoSh2cNDHcGQhXrLnTJ1AuI=cCs<tjdtttd<02>}|j|t|ddid<05>t<02>dt<06>d|<01><00>S)N<>s3)Z endpoint_urlZaws_access_key_idZaws_secret_access_keyZACLz public-read)Z ExtraArgs<67>/)<07>boto3<6F>client<6E>RASADYAR_ENDPOINT<4E>RASADYAR_ACCESS_KEY<45>RASADYAR_SECRET_KEYZupload_fileobj<62>RASADYAR_BUCKET_NAME)<03>imager<65>r<>rsrsrt<00>upload_to_liarak
s<02><06>r<>c@sDeZdZejjdd<02>ZeZe gZ
2026-01-18 11:29:19 +03:30
dd<04>Z dd<06>Z dd<08>Z d d
2026-02-01 08:26:08 +03:30
<EFBFBD>Zd S) <0C>RasadyarAppInfoViewSetFrucCs
|j<00><01>Sr<>r<>r<>rsrsrtr<><00>
sz!RasadyarAppInfoViewSet.get_objectcOs:tjjdd<02><01><03>}|s tj<01><04>}|<00>|<04>}t|jtj d<03>Sr<>)
r7rdrerfrjr<>rrbrr<>r<>rsrsrtr<><00>
2026-01-18 11:29:19 +03:30
s


zRasadyarAppInfoViewSet.listc Ostjjdd<02><01><03>}|st<00>}d|jvr<>d<04>tjtj tj
dd<06><02>}|j<04> d<03>}|j }d|vrj|<07> d<07>dnd}|<05>d|<08><00>}t||<07>} | |_d |jvr<>|j<10> d <09>}
t|
t<12>r<>zt<13>|
<EFBFBD>|_Wq<>tjy<>|
|_Yq<>0n|
|_|<04><17>|<00>|<04>} t| jtjd
2026-02-01 08:26:08 +03:30
<EFBFBD>S) NFrurcr'rJ)r<>r<>r<>r<>ra)r7rdrerfrj<00>join<69>random<6F>choices<65>string<6E>ascii_uppercase<73>digitsrcr<><00>splitr<74>rcrbr<>r<><00>json<6F>loadsr<73><00>JSONDecodeErrorrir<>rrrk) rlrmrnror<>Zran<61>file_obj<62> file_name<6D>file_extension<6F>file_url<72> info_datar<61>rsrsrtrj<00>
2026-01-18 11:29:19 +03:30
s,
 

 

zRasadyarAppInfoViewSet.createc Os<>tjjdd<02><01><03>}|st<00>}d|jvr<>|jd}d|jvrJ|j<05>d<04>dnd}|rhdt<07><08>j <09>d|<06><00>ndt<07><08>j <09><00>}t
||<07>}||_ d|j vr<>|j <0C> d<08>} t| t<0F>r<>zt<10>| <09>|_Wq<>tjy<>| |_Yq<>0n| |_|<04><14>|<00>|<04>}
t|
j tjd <09>S)
2026-02-01 08:26:08 +03:30
NFrurcr<>r<>r'Zrasadyar_app_info_r<5F>ra)r7rdrerfrjr<>r<><00>uuid<69>uuid4<64>hexr<78>rcrbrcr<>r<>r<>r<>r<>r<>rir<>rrr<>) rlrmrnror<><00> uploaded_filer<65>Zunique_filenamer<65>r<>r<>rsrsrtr<><00>
2026-01-18 11:29:19 +03:30
s(

*

 

2026-02-01 08:26:08 +03:30
zRasadyarAppInfoViewSet.updateN)r<>r<>r<>r7rdrer<>rSr<>rrr<>r<>rjr<>rsrsrsrtr<>{
sr<>cCs<>ddi}|j<00>d<03>dkr`tj<02>t|jd<00>d<05><02><05>}tj<02>t|jd<00>d<05><02><05>}||d<||d<tjj|jd d
2026-01-18 11:29:19 +03:30
<EFBFBD>}t jjfi|<01>|d d <0C><02><01><01>
2026-02-01 08:26:08 +03:30
d <0A>}t |dd<0F>j }t |<06>S)NrvFrr<>rrr5r6<00>licence_numberrXr<>r<>r<>Trx)rzrcrrr<>rr-rdrer.r<>rGrbr)rmr<>rrrHr<>rrsrsrt<00>&send_different_bar_with_licence_number<65>
s <02><02><02>r<>c@s<eZdZejjdd<02>ZeZe gZ
e Z e Zdd<04>Zdd<06>ZdS)<08>TransportCarcassDetailViewSetFruc,s |j<00>d<01>}|j<00>d<02>}|j<00>d<03>}|dkr0d}d|jv<00>r<>|j<00>d<06>}|j<00>d<05>}i} |jj|d<07>}
2026-01-18 11:29:19 +03:30
tjjdd |d
<EFBFBD>} |r<>tj<06>t|jd<00>d <0B><02> <09>}tj<06>t|jd <00>d <0B><02> <09>} |
<EFBFBD>t
|| dd <0A>t
|| dd<0F>B<00>}
| j|| dd<10>} |<04>r*|dk<03>r*|<04> <0B><00>r*|
<EFBFBD>t |j jj|<04><02>}
| <0B>t tjj|<04><02>} t|
<EFBFBD>} t| <0B>}dd<12>}g}| D]}|<10>||<11>d|f<03><00>qJ|D]}|<10>||<11>d|f<03><00>qj|jdd<16>dd<17>dd<19>|D<00>}|j<14>dd<00>}|<13>r<>t|<13>|j_|<00><16>}|<14>||<01>}|du<01>r\g}|D]d}t|d<1B><02>rt|d|id<1D>}|<16>|j<1B>n4t|d|id<1D>}|j}|j |d<|j|d<|<16>|<18><00>q<>|<14>|<16>Sg}|D]d}t|d<1B><02>r<>t|d|id<1D>}|<16>|j<1B>n4t|d|id<1D>}|j}|j |d<|j|d<|<16>|<18><00>qdt|t j!d<1F>S|<05> r|d k<02> r<>i}|<06>r<>||d!<t"}t#jjfi|<19><01><01>$d"<22>}|<04>rD|dk<03>rD|<04> <0B><00>rD|<1B>t |jj|<04><02>}|j<00>d<06>}|j<00>d <0C>} t%jjdd#<23>}t&jjdd$d%d&<26>}tjjdd |j'd'dd(<28>d)<29>}tjjdd*|j'd'dd(<28>d+<2B>}|<07>rVtj<06>t|<07>d <0B><02> <09>}tj<06>t| <0C>d <0B><02> <09>} |<1C>t
|| dd <0A>t
|| dd<0F>B<00>}|j|| dd<10>}|tj(d,d-<2D>} | tj(d,d-<2D>}!|j| |!d.<2E>}|j| |!dd<10>}|<1C>)d/<2F>j*t+d0<64>t+d0t
dd1<64>d2<64>t+d0t
dd1<64>d2<64>t,d"t
dd1<64>d2<64>t,d"t
dd1<64>d2<64>t,d"<22>d3<64>}"|<1E>)d/<2F>j*t+d0<64>t+d0t
dd1<64>d2<64>t+d0t
dd1<64>d2<64>t,d"t
dd1<64>d2<64>t,d"t
dd1<64>d2<64>t,d"<22>d3<64>}#|<1D>)d4<64>j*t+d5<64>t+d5t
dd6<64>d2<64>t+d5t
dd6<64>d2<64>t,d"t
dd6<64>d2<64>t,d"t
dd6<64>d2<64>t,d"<22>d3<64>}$|<1F>)d7<64>j*t+d0<64>t+d0t
dd1<64>d2<64>t+d0t
dd1<64>d2<64>t,d"t
dd1<64>d2<64>t,d"t
dd1<64>d2<64>t,d"<22>d3<64>}%d8d9<64>|"D<00><01>|#D<00>]N}&|&<26>d/<2F>}'|'<27>s<><73>q<>|'<27>v<00>r<1E>|'<00>d:d;<3B><02>pd;|&<26>d:d;<3B><02>p d;<00>|'d:<<00>|'<00>d<d;<3B><02>p@d;|&<26>d<d;<3B><02>pPd;<00>|'d<<<00>|'<00>d=d;<3B><02>ppd;|&<26>d=d;<3B><02>p<>d;<00>|'d=<<00>|'<00>d>d;<3B><02>p<>d;|&<26>d>d;<3B><02>p<>d;<00>|'d><<00>|'<00>d?d;<3B><02>p<>d;|&<26>d?d;<3B><02>p<>d;<00>|'d?<<00>|'<00>d@d;<3B><02>pd;|&<26>d@d;<3B><02>pd;<00>|'d@<n|&<26>|'<<00>q<>dAd9<64>|$D<00>}(|%D<00>]<5D>}&|&<26>d7<64>}'|'<27>sV<73>q<|'|(v<00>r<>|(|'<00>d:d;<3B><02>ptd;|&<26>d:d;<3B><02>p<>d;|(|'d:<|(|'<00>d<d;<3B><02>p<>d;|&<26>d<d;<3B><02>p<>d;|(|'d<<|(|'<00>d=d;<3B><02>p<>d;|&<26>d=d;<3B><02>p<>d;|(|'d=<|(|'<00>d>d;<3B><02>pd;|&<26>d>d;<3B><02>pd;|(|'d><|(|'<00>d?d;<3B><02>p4d;|&<26>d?d;<3B><02>pDd;|(|'d?<|(|'<00>d@d;<3B><02>pdd;|&<26>d@d;<3B><02>ptd;|(|'d@<nl|'|&<26>d:d;<3B><02>p<>d;|&<26>d<d;<3B><02>p<>d;|&<26>d=d;<3B><02>p<>d;|&<26>d>d;<3B><02>p<>d;|&<26>d?d;<3B><02>p<>d;|&<26>d@d;<3B><02>p<>d;dB<64>|(|'<<00>q<t|<1B>}|j<13>fdCd<16>dd<17>|j<14>dd<00>}|<13> r0t|<13>|j_|<00>|<1B>}|du<01> rft-|d|<01>|(dD<64>dE<64>}|<00>|j<1B>St-|d|<01>|(dD<64>dE<64>}t|jt j!d<1F>Si})|<06> r<>||)d<t.}*t/jjfi|)<29>dddF<64><02><01><01>$d"<22>}+|<04> r<>|dk<03> r<>|<04> <0B><00> r<>|+<2B>t |*jj|<04><02>}+|j<00>d<06>}|j<00>d <0C>} t%jjdd#<23><01>$dG<64>}|<07>
r^tj<06>t|<07>d <0B><02> <09>}tj<06>t| <0C>d <0B><02> <09>} |j|| dH<64>}|<1C>)d/d7<64>j*t+d0t
t0d/<2F>d<07>d2<64>t+d0t
dt0d/<2F>dI<64>d2<64>t+d0t
dt0d/<2F>dI<64>d2<64>t,d"t
dt0d/<2F>dI<64>d2<64>t,d"t
dt0d/<2F>dI<64>d2<64>t,d"t
t0d/<2F>d<07>d2<64>t+d0t
dt0d7<64>dJ<64>d2<64>t,d"t
dt0d7<64>dJ<64>d2<64>t+d0t
dt0d7<64>dJ<64>d2<64>t,d"t
dt0d7<64>dJ<64>d2<64>dK<64>
2026-02-01 08:26:08 +03:30
}"i<00>|"D]&}&|&d/<00> pd|&d7}|<08> rP|&<26>|<<00> qPt|+<2B>}+|+j<13>fdLd<16>dd<17>|j<14>dd<00>}|<13> r<>t|<13>|j_|<00>|+<2B>}|du<01> r<>t1|d|<01>dM<64>dE<64>}|<00>|j<1B>St1|+d|<01>dM<64>dE<64>}t|jt j!d<1F>StdNt j!d<1F>S)ONr<4E><00>roler<65>r<><00>coder<00><01> jihadi_originF<6E>گوشت مرغ تازه)rvr<>r<>rr<00><03>product_date__gte<74>product_date__lte<74>product_date__isnullT<6C>r<>r<>r<>r<>cSsJt|d<01>r|jr|jSt|d<02>r,|jr,|jSt|d<03>rB|jrB|jStjjS<00>N<> product_daterr<><00>r<>r<>rr<>rr<>r<>rsrsrtr<> sz9TransportCarcassDetailViewSet.list.<locals>.get_sort_date<74>carcassr<73>cSs|dSr<>rsr<>rsrsrtr<>/ r<>z4TransportCarcassDetailViewSet.list.<locals>.<lambda>r<>cSsg|]\}}}|<02>qSrsrsr<>rsrsrtr<>2 r<>z6TransportCarcassDetailViewSet.list.<locals>.<listcomp>rwr<>rmr<><00>id_quarantinehrar/rVr<>ru<00>
2026-02-01 08:35:33 +03:30
2025-03-21r<31>)rvr5r<>rwr<><00>rvr<><00>jihadi_origin__inr<6E><00>rvr<>rr<>r\r4r<>r<>r<>r<>r<>r<>r<>r<>r<>cSs i|]}|<01>d<00>r|d|<01>qSr<><00>rc<00>r<>rursrsrtr<><00> r<>z6TransportCarcassDetailViewSet.list.<locals>.<dictcomp>r;rr<>r<>r<>r<>r<>cSs i|]}|<01>d<00>r|d|<01>qSrr<>r<>rsrsrtr<><00> r<>)r<>r;r<>r<>r<>r<>r<>cs<00><00>|ji<00>pi<00>dd<02>pdS<00>Nr;r<00>rcrw<00>r<><00>rrsrtr<><00> r<><00>rmr<00>buy_dictr <00>rv<00>
2026-02-01 08:26:08 +03:30
is_steward<EFBFBD> -product_date<74>r<>r<>)r<>r<>)r<>r<>)
r;r<>r<>r<>r<>r<><00>total_input_buy_bars_wight<68>total_input_buy_bars_count<6E>total_output_buy_bars_wight<68>total_output_buy_bars_countcs<00><00>|ji<00>pi<00>dd<02>pdSr<><00>rc<00> jihadi_code)<01>sr<73>rsrtr<> r<><00>rmr<00>ok)2rzrcr<>rer5rdrrr<>rr r<>rXr{r|r}r&r<>rr<>r~rr<>rwr<>r<>rIrbrQ<00> record_idr<64>rrr<>r r/r<>r1r.rr<>rrrrrKr%r2r rL),rlrmrnror<><00> type_roler<65>rr<>rM<00> query_carcassr<73>r<00> carcass_listr<74>r<>r<>r<>r<>rwr<>r<>r<>r<>rb<00>filters_kill_house<73>kill_house_filterset_classr<73>r?<00>buy_bars<72>all_products_transport_carcassr<73><00>date_1_for_buy_bars<72>date_2_for_buy_bars<72> bars_summaryZ&all_products_transport_carcass_summary<72> buy_summaryZall_products_transport_summaryrurqr<><00>filters_steward<72>steward_filterset_class<73>stewardrsr<>rtr<><00>
2026-01-18 11:29:19 +03:30
s      <02><02><02><02><02><04><02> <02><0E> <0C>
  
 


 


 <0C>  
<02> <0C><06><06>
<06>
<06>
<06>
<06>



000002 


000002<10>

<02> 

<0E> <0E>" <0C>   <0E><0E><0E><0E><04> 
<02> 

 <0C>  <0C>z"TransportCarcassDetailViewSet.listc"OsH|jd<00><01>}tjt|<04>d<02>}|j}ttj<08> d<03>j
ddd<05><02>}tt jj ddd<07>j
ddd<05><02>}d d
<EFBFBD>t |jdd <0B><01>D<00>} d d ddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-<2D>!}
|j<0F>d,<2C>d.kr<>dnd} g} g} i}|jd/dd0<64>D<00>]<5D>}|s<>q<EFBFBD>tt| |<0F><02>}|<10>d1<64>}|<11>sq<>|<10>d2<64>}|<10>d3<64>}|<12>r~||v<01>r~||v<01>r~| <0C>t ||<10>d4<64>|<10>d5<64>|<10>d6<64>dd7<64><05>|<08>|<12>|<13>r<>||v<01>r<>||v<01>r<>| <0C>t ||<10>d8<64>|<10>d9<64>|<10>d:<3A>dd7<64><05>|<08>|<13>i}|
<EFBFBD><15>D]<5D>\}}||v<00>r<>||}|d;v<00>rf|<17>rfzRt|t<17><02>r4tt|<17>d<<3C><01>\}}}t|||<1A>}nt|d=<3D><02>rRt|j|j|j<1F>}Wnd}Yn0|d,k<02>rz| ||<n|||<<00>q<>|||<q<>| <0C>r<>t jj | dd><3E>tt!jj |<0E>"<22>d?<3F>j
2026-02-01 08:35:33 +03:30
ddd<05><02>}|<0E><15>D]T\}}| |d,<||v<00>rt!jj |d@<40>j#fi|<1C><01>n||d<| <0A>t!fi|<1C><01><01><00>q<>| <0A>r6t!j<08> | <0A>t$dAdBit%j&dC<64>S)DNrcrdrwTr<54>Fr<46>r<>cSsg|]}t|<01><01><01><00>qSrs<00>r<>r<><00>r<><00>cellrsrsrtr<>9 r<>z8TransportCarcassDetailViewSet.create.<locals>.<listcomp>rfr<><00>destination_prev<65>destination_changed<65>paymentr<74>rr<>r<>rgr<><00>unit<69>origin_province<63> origin_city<74>originr<6E>r<>r<>r<>r<><00>owner<65>car_tracking_code<64> driver_name<6D>plater_<00> unloading<6E> gross_weight<68> tare_weight<68>
2026-01-18 11:29:19 +03:30
net_weight<EFBFBD>
scale_code<EFBFBD>
2026-02-01 08:26:08 +03:30
scale_name<EFBFBD> scale_receiptr<74>r<>)!r<><00>مقصد قبلی<D984>تغییر مقصدu پرداخت<D8AE> رهگیری<D8B1>
2026-01-18 11:29:19 +03:30
تاریخuساعت<D8B9>
محصول<D988>
اقلام<D8A7>
مقدار<D8A7>واحد<D8AD>استان مبدا<D8AF>شهرستان مبدا<D8AF>مبدا<D8AF>استان مقصد<D8B5>شهرستان مقصد<D8B5>مقصد<D8B5>ش جهادی مبدا<D8AF>ش جهادی مقصد<D8B5>مالک<D984>کد رهگیری خودرو<D8B1>نام رانندهuپلاکuمبلغ<D984>
2026-02-01 08:26:08 +03:30
تخلیه<DB8C> وزن پر<D9BE>وزن خالی<D984>وزن<D8B2>کد باسکول<D988>نام باسکول<D988>قبض باسکول<D988>تاریخ تخلیهr<D987><00>truer<65><00><02>min_rowrgrr+r,r'r&r%)r<>r<>r<>r<>r<>r*r)r(<00>rr<>r<><00>year)<01>ignore_conflicts<74>Z tracking__in)r<>r_r<>ra)'rjrkrlrmrr<00>setr/rdr<>rr2re<00>nextrorbrc<00>dict<63>zipr<00>addrgr<>r<><00>maprr<>rZr<>r<<00>month<74>dayr<79>r1r\r<>rrrk)rlrmrnrorcrqrrZkill_house_codeZsteward_jihadi_code<64>headers<72> field_mapZout_flagZbulk_guilds_createZbulk_records_createZrecord_updatesru<00>row_data<74> tracking_valZ steward_codeZ guilds_code<64> record_data<74>col_name<6D> model_fieldrr<00>y<>mrZexisting_trackingsrbrsrsrtrj, s<><14><18><02>$
2026-01-18 11:29:19 +03:30


<02>
<02>

  


 
<06><04><04>
2026-02-01 08:26:08 +03:30
 z$TransportCarcassDetailViewSet.createN)r<>r<>r<>r1rdrer<>rIr<>rrrWr<>r#r{r<>rjrsrsrsrtr<><00>
sOr<4F>c@sDeZdZejjdd<02>ZeZe gZ
2026-01-18 11:29:19 +03:30
e Z e Zdd<04>Zdd<06>Zdd<08>Zd S)
2026-02-01 08:26:08 +03:30
<EFBFBD> DriveViewSetFrucOs<>d|jvr>|jjdd<03><01>d<04>jddd<06><02><05>}td|itjd<08>Sd |jvr~|jjdd
2026-01-18 11:29:19 +03:30
d
d <0B><03> d <0C>}|j
|dd <0A>}t|j tjd<08>Si}|j<00> d<0E>}|j<00> d<0F>}|j<00> d<10>} |j<00> d<11>}
|
dkr<>d}
|<07>r|<08>rt j <0A>t|jd<00>d<13><02><10>}t j <0A>t|jd<00>d<13><02><10>}||d<||d<|j<00> d<16>} |jjfi|<06><01><01> d<17>} | <0B>rf| dk<03>rf| <0B><11><00>rf| <0C>t|jjj| <0B><02>} |j<16> dd<00>} | <0A>r<>t| <0A>|j_|<00>| <0C>}|du<01>r<>|j|dd <0A>}|<00>|j <0B>S|j
2026-02-01 08:26:08 +03:30
| dd <0A>}t|j tjd<08>S)Nr<4E>z^\d{7}$)<01>tracking_code__regex<65> tracking_codeTr<54><00>codesrar<>F)rQrvZ pelak__isnullrrxrrr<>r<>r<>rr<>r<>r<><00>-daterw)rzr<>rer<>rr<>rrr<>r<>r<>rbrcrrr<>rr<>rXr{r|r}r~rr<>rwr<>r<>r<>)rlrmrnro<00>queryr<79>rMrrr<>r<>r<>rBrwr<>rsrsrtr<><00> sF
2026-01-18 11:29:19 +03:30
"
      <0E> 

 zDriveViewSet.listcOs<>|jd<00><01>}tjt|<04>d<02>}|j}dd<04>t|jdd<06><01>D<00>}ddd d
<EFBFBD>}g} |jd dd <0C>D]x}
|
durjq\tt ||
<EFBFBD><02>} | <0B>
2026-02-01 08:26:08 +03:30
d <0A>} i} |<08> <0B>D] \}}|| vr<>| |}|| |<q<>t j j| | d<0E>\}}| <09>d|ji<01>q\tdditjd<12>S)NrcrdcSsg|]}t|<01><01><01><00>qSrsrr rsrsrtr<><00> r<>z'DriveViewSet.create.<locals>.<listcomp>TrfrRr<>r)r.r*r,r<>r9r/)r<00>defaultsrr_r<>ra)rjrkrlrmrrr@rorArBrcrgr3rd<00>update_or_createrrrrrk)rlrmrnrorcrqrrrGrHZ created_listrurIrrKrLrMrrr<><00>createdrsrsrtrj<00> s6<02> 
2026-01-18 11:29:19 +03:30

<02>
<06>zDriveViewSet.createc
Os<>|j<00>d<01>}tjj|d<02><01><05>}|r<>|j<00>d<03>}d}|r<>t|t<07>r<>z<dd<05>|<06>d<06>D<00>}t |<08>dkrzt
|d|d |d
<00>}Wn(t t fy<>} z WYd} ~ n
d} ~ 00gd <0B>}
|
2026-02-01 08:26:08 +03:30
D] } | |jvr<>t || |j| <00>q<>|dur<>||_|<05><0F>td d itjd<0E>S)NrR)rR<00>expire_licence_datecSsg|] }t|<01><01>qSrs)r)r<>r<>rsrsrtr<> r<>z'DriveViewSet.update.<locals>.<listcomp>r<>rhrr<>r<>)<07>car_idr<00>
owner_name<EFBFBD>pelak<61>weight<68>car_type<70> health_permitr_r<>ra)rbrcr3rdrerfr<>r<>r<>rArZr<00>
IndexErrorrhrYrirrr<>) rlrmrnrorR<00>driverZdate_str<74> expire_date<74>partsr<73>r<><00>fieldrsrsrtr<> s, <02>
2026-01-18 11:29:19 +03:30
  
2026-02-01 08:26:08 +03:30
zDriveViewSet.updateN)r<>r<>r<>r3rdrer<>rJr<>rrrWr<>r$r{r<>rjr<>rsrsrsrtrP<00> s**rPc@s"eZdZegZdd<02>Zdd<04>ZdS)<06>TransportCarcassDashboardViewc&Cs<> |j<00>d<01>}|j<00>d<02>}|j<00>d<03>}|dkr0d}|j<00>d<05>p>d}|j<00>d<06>pNd}|<03> r<>|dk<02>r i}|rp||d<t}tjjfi|<07><01><01>d <09>} |r<>|dkr<>|<02><07>r<>| <09>t|j j
2026-01-18 11:29:19 +03:30
|<02><02>} | j d
d d <0C>} t jj| d d<0E>}
t jj| d ddd<11><04>dd<13>} tjjd d| d<15>} tjjd d| d<17>} |<05>r<>tj<10>t|<05>d<18><02><13>}tj<10>t|<06>d<18><02><13>}|
<EFBFBD>t||d d<19>t||d d<1A>B<00>}
| j||d d<1B>} |tjdd<1D>}|tjdd<1D>}| j||d<1E>} | j||d d<1B>} |
jtd<1F>tdtd d <20>d!<21>tdtd d <20>d!<21>td td d <20>d!<21>td td d <20>d!<21>td <09>d"<22>}| jtd<1F>tdtd d <20>d!<21>tdtd d <20>d!<21>td td d <20>d!<21>td td d <20>d!<21>td <09>d"<22>}| jtd<12>tdtd d#<23>d!<21>tdtd d#<23>d!<21>td td d#<23>d!<21>td td d#<23>d!<21>td <09>d"<22>}| jtd<1F>tdtd d <20>d!<21>tdtd d <20>d!<21>td td d <20>d!<21>td td d <20>d!<21>td <09>d"<22>}|<10>d$<24><01>pd%|<11>d$<24><01>p(d%|d$<|<10>d&<26><01>p>d%|<11>d&<26><01>pLd%|d&<|<10>d'<27><01>pbd%|<11>d'<27><01>ppd%|d'<|<10>d(<28><01>p<>d%|<11>d(<28><01>p<>d%|d(<|<10>d)<29><01>p<>d%|<11>d)<29><01>p<>d%|d)<|<10>d*<2A><01>p<>d%|<11>d*<2A><01>p<>d%|d*<|<12>d$<24><01>p<>d%|<13>d$<24><01>pd%|d$<|<12>d&<26><01>pd%|<13>d&<26><01>p$d%|d&<|<12>d'<27><01>p:d%|<13>d'<27><01>pHd%|d'<|<12>d(<28><01>p^d%|<13>d(<28><01>pld%|d(<|<12>d)<29><01>p<>d%|<13>d)<29><01>p<>d%|d)<|<12>d*<2A><01>p<>d%|<13>d*<2A><01>p<>d%|d*<|d*<00>p<>d%}|d$<00>p<>d%}|d&<00>p<>d%}|d'<00>p<>d%}|d(<00>pd%}|d)<00>pd%}|d%k<04>rHt|||d+d<1C>}t|||d+d<1C>}nd%}d%}td,d-t|<14>t|<15>t|<18>t|<16>t|d&<00>p|d%d.d/<00>|t|<19>t|<17>t|d'<00>p<>d%d.d/<00>|t|d&<00>p<>d%d.d/|d'<00>p<>d%d.d/<00>|d(<00>p<>d%|d)<00>p<>d%t| <09>|<00>|
| <0C>d0<64><11>Si}|<04>r||d<tjjfi|<1C>d d d1<64><02><01><01>d <09>}t}|<02>rr|dk<03>rr|<02><07><00>rr|<1D>t|j j
|<02><02>}|j d2d d <0C>}|j<00>d<05><01>p<>d}|j<00>d<06><01>p<>d}t jjt|d3<64>t|d4<64>Bd d5<64><02>d6<64>}
tjjd dd7<64><02>t|d3<64>t|d4<64>B<00>}|<05>r@tj<10>t|<05>d<18><02><13>}tj<10>t|<06>d<18><02><13>}|
j||d8<64>}
|j||d d<1B>}|
jtdt|d3<64>d!<21>tdtd |d9<64>d!<21>tdtd |d9<64>d!<21>td td |d9<64>d!<21>td td |d9<64>d!<21>td t|d3<64>d!<21>tdt|d d:<3A>d!<21>td t|d d:<3A>d!<21>tdt|d d:<3A>d!<21>td t|d d:<3A>d!<21>tdt|d3<64>d!<21>d;<3B> }|jtdt|d3<64>d!<21>tdtd |d9<64>d!<21>tdtd |d9<64>d!<21>td td |d9<64>d!<21>td td |d9<64>d!<21>td t|d3<64>d!<21>tdt|d d:<3A>d!<21>td t|d d:<3A>d!<21>tdt|d d:<3A>d!<21>td t|d d:<3A>d!<21>tdt|d3<64>d!<21>d;<3B> } |<10>d$<24><01>p<>d%| <20>d$<24><01>p<>d%|d$<|<10>d&<26><01> pd%| <20>d&<26><01> pd%|d&<|<10>d'<27><01> p*d%| <20>d'<27><01> p8d%|d'<|<10>d(<28><01> pNd%| <20>d(<28><01> p\d%|d(<|<10>d)<29><01> prd%| <20>d)<29><01> p<>d%|d)<|<10>d*<2A><01> p<>d%| <20>d*<2A><01> p<>d%|d*<|<10>d<<3C><01> p<>d%| <20>d<<3C><01> p<>d%|d<<|<10>d=<3D><01> p<>d%| <20>d=<3D><01> p<>d%|d=<|<10>d><3E><01>
pd%| <20>d><3E><01>
pd%|d><|<10>d?<3F><01>
p&d%| <20>d?<3F><01>
p4d%|d?<|<10>d@<40><01>
pJd%| <20>d@<40><01>
pXd%|d@<|d*<00>
pld%}|d$<00>
pzd%}|d&<00>
p<EFBFBD>d%}|d'<00>
p<EFBFBD>d%}|d(<00>
p<EFBFBD>d%}|d)<00>
p<EFBFBD>d%}|d<<00>
p<EFBFBD>d%}!|d><00>
p<EFBFBD>d%}"|!|"}#|d=<00>
p<EFBFBD>d%}$|d?<00>
p<EFBFBD>d%}%|d%k<04> r,t|||d+d<1C>}t|||d+d<1C>}nd%}d%}tdAdt|<14>t|<15>t|<18>t|<16>t|!<21>|t|<19>t|<17>t|"<22>|t|#<23>t|<1D>|<00>|
2026-02-01 08:35:33 +03:30
|<1F>t|$<24>t|%<25>dB<64><11>StdCt j!dD<64>S)ENr<4E>r<>r<>r<>rrr/rVr<>rwTr<54>F)r<>rvr<>r<>)r<>rvr5r<>r<>r<>r<>r<>r<>r<>rr<>r<>r<>r<>r\r4r<>r<>r<>r<>r<>r;rr<>r<>r<>r<>r<>r<><00>کشتارگاهu مرغ گرمg@g<00>?)r<>r<>r?<00>total_bars_wightr<00>total_input_bars_wightr<74>rr <00>total_output_bars_wightr<74>r <00>total_ware_houser<65>r<><00>total_count_kill_house<73> last_updater<65>r<><00>r<><00>rru<00> -modify_dater<65>r<>)r<>r<>)rr<>) r;r<>r<>r<>r<>r<>r<>r<>r<>r<>rjr<>r<>r<>r<>rju
2026-02-01 08:26:08 +03:30
مباشر)r<>r<>r?rgrrhr<>rr rir<>r rj<00>total_count_stewardrlr<>r<>r<>ra)"rzrcr r/rdrer<>r<>rXr|r}rr1r.r<>r5rrr<>rr r<>r<>rrr<>rrrA<00>#_get_last_update_date_for_dashboardr2r%rr<>)&rlrmr<>r<>r<>rrr<>r<>r<>r?r<>rr<>rr<00> aggregationZ*all_products_transport_carcass_aggregationZbuy_aggregationZ"all_products_transport_aggregationr<6E>rrr
rrrr rrrZall_products_transport_stewardZ*all_products_transport_steward_aggregationr<6E>r<>rjr<>r<>rsrsrtrc5 s<>   
2026-01-18 11:29:19 +03:30
 <0C><02><04><02><02> <0C><06><06><06> <06><06><06>
$$$$$$$$$$$$
<10><02>.  
<EFBFBD>" <0C><02><02><02><12><06><10><10>$$$$$$$$$$$

2026-02-01 08:26:08 +03:30
<06>z!TransportCarcassDashboardView.getcCstg}|<01><00>r4|<01><01>}|r4t|d<01>r4|jr4|<03>|j<03>|<02><00>rd|<02><01>}|rdt|d<01>rd|jrd|<03>|j<03>|rpt|<03>SdS)ufتابع helper برای دریافت آخرین تاریخ به‌روزرسانی از دو queryset<65> modify_dateN)<06>existsrfr<>rsrr])rlZ queryset1Z queryset2<74>dates<65> first_objrsrsrtrq7s  zATransportCarcassDashboardView._get_last_update_date_for_dashboardN)r<>r<>r<>rrrcrqrsrsrsrtre2 s
rec@s4eZdZejjdd<02>ZeZe gZ
e Z e Zdd<04>ZdS)<06>GuildsTransportCarcassViewSetFruc$ sz|j<00>d<01>}|j<00>d<02>}|dkr$d}d|jv<00>r<>|j<00>d<04>}|j<00>d<05>}i}tjj|dd<07>} tjjdd|d <09>}
2026-01-18 11:29:19 +03:30
|r<>tj<06>t|jd<00>d
<EFBFBD><02> <09>}tj<06>t|jd <00>d
<EFBFBD><02> <09>} | <09>t
|| dd <0C>t
|| d d<0E>B<00>} |
j|| dd<0F>}
|<04>r |dk<03>r |<04> <0B><00>r | <09>t |j jj|<04><02>} |
<EFBFBD>t tjj|<04><02>}
t| <09>} t|
<EFBFBD>} dd<11>}g}| D]}|<0F>||<10>d|f<03><00>q@| D]}|<0F>||<10>d|f<03><00>q`|jdd<15>d d<16>dd<18>|D<00>}|j<14>dd<00>}|<12>r<>t|<12>|j_|<00><16>}|<13>||<01>}|du<01>rfg}|D]x}t|d<1A><02>rt|d|id<1C>}|<15>|j<1B>nHt|d|id<1C>}|j}|j |d<|j|d<|j|d<|j|d<|<15>|<17><00>q<>|<13> |<15>Sg}|D]x}t|d<1A><02>r<>t|d|id<1C>}|<15>|j<1B>nHt|d|id<1C>}|j}|j |d<|j|d<|j|d<|j|d<|<15>|<17><00>qnt!|t"j#d <20>Si}|<05>r||d<t$jjfi|<18>ddd!<21><02><01><01>%d"<22>}t&}|<04>r\|dk<03>r\|<04> <0B><00>r\|<19>t |jj|<04><02>}t|j'd#d d$<24><02>}d%d<18>|D<00>}|j<00>d<05>}|j<00>d <0B>} tjjd|d&<26><02>%d'<27>}tjjdd|d(<28>}|<07>r tj<06>t|<07>d
<EFBFBD><02> <09>}tj<06>t| <0B>d
<EFBFBD><02> <09>} |j|| d)<29>}|j|| dd<0F>}|<1C>(d<1F>j)t*dt
dd*<2A>d+<2B>t*dt
d d*<2A>d+<2B>t*d<1E>t+d"<22>t+d"t
dd*<2A>d+<2B>t+d"t
d d*<2A>d+<2B>d,<2C>}|<1D>(d<1F>j)t*dt
dd*<2A>d+<2B>t*dt
d d*<2A>d+<2B>t*d<1E>t+d"<22>t+d"t
dd*<2A>d+<2B>t+d"t
2026-02-01 08:26:08 +03:30
d d*<2A>d+<2B>d,<2C>}i<00>|D]<5D>} | d}|<06>r<>|<06>v<01>r<>d-d-d-d-d-d-d,<2C><06>|<<00>|d.| d.<00>pd-7<<00>|d/| d/<00>p4d-7<<00>|d0| d0<00>pRd-7<<00>|d1| d1<00>ppd-7<<00>|d2| d2<00>p<>d-7<<00>|d3| d3<00>p<>d-7<<00>q<>|D]<5D>} | d}|<06>r<>|<06>v<01>r<>d-d-d-d-d-d-d,<2C><06>|<<00>|d.| d.<00>pd-7<<00>|d/| d/<00>p"d-7<<00>|d0| d0<00>p@d-7<<00>|d1| d1<00>p^d-7<<00>|d2| d2<00>p|d-7<<00>|d3| d3<00>p<>d-7<<00>q<>t,<2C>}!g}"|D]0}#|#j-<2D>r<>|#j-|!v<01>r<>|!<21>.|#j-<2D>|"<22>|#<23><00>q<>|"j<13>fd4d<15>d d<16>|"}|j<14>dd<00>}|<12>rt|<12>|j_|<00>|<19>}|du<01>rT|j/|d |<01>d5<64>d6<64>}|<00> |j<1B>S|j/|d |<01>d5<64>d6<64>}t!|jt"j#d <20>S)7Nr<4E>r<>r<>r<>rF)r<>rvr<>)rvr<>r<>rrr<>Tr<54>r<>cSsJt|d<01>r|jr|jSt|d<02>r,|jr,|jSt|d<03>rB|jrB|jStjjSr<>r<>r<>rsrsrtr<><00>sz9GuildsTransportCarcassViewSet.list.<locals>.get_sort_dater<65>r<>cSs|dSr<>rsr<>rsrsrtr<><00>r<>z4GuildsTransportCarcassViewSet.list.<locals>.<lambda>r<>cSsg|]\}}}|<02>qSrsrsr<>rsrsrtr<><00>r<>z6GuildsTransportCarcassViewSet.list.<locals>.<listcomp>rwr<>rmr<>r<>r<>r<>rar<>r<>r<>r<>cSsg|] }|r|<01>qSrsrs)r<>r<>rsrsrtr<><00>r<>)rvrr<>r<>r<>r<>r<>)r<>r<>rjr<><00>total_count_input_buy<75>total_count_output_buyrr<>r<>rjr<>rxrycs<00><00>|ji<00>pi<00>dd<02>pdS)Nrjrr<>)<01>str<74>rsrtr<>r<>r<>r )0rzrcr1rdrer5rrr<>rr r<>rXr{r|r}r&r<>rr<>r~rr<>rwr<>r<>rIrbrQr<>r<>r<>r<>rrr<>r2r<>r%rrrrrr?r<>rCr<>)$rlrmrnror<>r<>r<>rrMr<>r<>rr<>r<>r<>r<>r<>r<>rwr<>r<>r<>r<>rbrrrZsteward_jihadi_codesr?r<>rZall_products_summaryruZseen_jihadi_codesZunique_stewardsrzrsr<>rtr<>Psv     <02><02><02><02><04><02> <02><0E> <0C>   
2026-01-18 11:29:19 +03:30
 




 



"  <02><02><02><06>
<10>
<10> 
<02>
"
<02>
" 
<02> 

2026-02-01 08:26:08 +03:30
 z"GuildsTransportCarcassViewSet.listN)r<>r<>r<>r2rdrer<>rMr<>rrrWr<>r#r{r<>rsrsrsrtrwHs rwc@seZdZegZdd<02>ZdS)<04>#GuildsTransportCarcassDashboardViewc Cs8|j<00>d<01>}|j<00>d<02>}|dkr$d}i}|r4||d<tjjfi|<04>ddd<05><02><01><01>d<06>}t}|r<>|dkr<>|<02><07>r<>|<05>t|j j
2026-01-18 11:29:19 +03:30
|<02><02>}|j ddd <09>}|j<00>d
<EFBFBD>p<>d}|j<00>d <0B>p<>d}t jj|dd <0C>} t jjdd |d<0E>}
|<07>r"tj<0E>t|<07>d<0F><02><11>}tj<0E>t|<08>d<0F><02><11>}| j||d<10>} |
j||dd<11>}
| jtdtdd<13>d<14>tdtdd<13>d<14>td<12>td<06>tdtdd<13>d<14>tdtdd<13>d<14>td<15>d<16>} |
jtdtdd<13>d<14>tdtdd<13>d<14>td<12>td<06>tdtdd<13>d<14>tdtdd<13>d<14>td<15>d<17>} | d<00>p<>d| d<00>p<>d} | d<00>pd| d<00>pd}| d<00>pd| d<00>p*d}| d<00>p:d| d<00>pFd}| d<00>pVd| d<00>pbd}| d<00>prd| d<00>p~d}| <0B>d<1F>}| <0C>d <20>}d}|<13>r<>|<14>r<>t||<14>}n|<13>r<>|}n
2026-02-01 08:26:08 +03:30
|<14>r<>|}|dk<04>r<>t| |d!d"<22>}t||d!d"<22>}nd}d}td#d t| <0A>t|<0E>t|<0F>||t|<05>|t|<11>t|<12>d$<24> <0B>S)%Nr<4E>r<>r<>Fr<46>r<>r<>Tr<54>rr)rrvr<>r<>rr<>r<>r<>r<>r<>rs)r<>r<>rjr<>rxry<00>last_update_carcass)r<>r<>rjr<>rxry<00>last_update_all_productsr<73>rr<>rjr<>rxryr|r}r<>r<>uصنف) r<>r<>r<>r<>rjZtotal_input_buy_bars_percentZtotal_output_buy_bars_percentZtotal_count_guildrlr<>r<>)rzrcr2rdrer<>r%r<>rXr|r}rr1r5rrr<>rr<>rr rr r]r<>rrrA)rlrmr<>r<>rrrrrr?r<>rrZall_products_aggregationr<6E>r<>rjr<>rxryr|r}rlrr rsrsrtrc4s<>  " <0C><02><02><06><06>
2026-01-18 11:29:19 +03:30
<06>


  
2026-02-01 08:26:08 +03:30
<06>z'GuildsTransportCarcassDashboardView.getN<74>r<>r<>r<>rrrcrsrsrsrtr{1sr{c@s4eZdZejjdd<02>ZeZe gZ
e Z e Zdd<04>ZdS)<06>ApiSendDifferentBarFromHatchingFrucOs<>ddi}ddi}|j<00>d<03>dkrhtj<02>t|jd<00>d<05><02><05>}tj<02>t|jd<00>d<05><02><05>}||d<||d<tjjfi|<04>d |jd
2026-01-18 11:29:19 +03:30
i<01><01>}|<08> <09><00>r<>t
jjfi|<05>|d d <0C><02><01>j |j d <0A><01> d<0E>} | jddd<11><02><0F>}
| j|
2026-02-01 08:35:33 +03:30
d <0A><01> d<0E>} |j<00>d<12>} |j<00>d<13>} | <0B>r*| dk<03>r*| <0C><10><00>r*| <09>t|jjj| <0C><02>} |j<15>dd<00>} | <0A>rJt| <0A>|j_|<00>| <09>}|du<01>rx|j|dd<16>}|<00>|j <0C>St| dd<16>j }t|<10>Stg<00>S)NrvFrr<>rrr5r6rwr<>r<>r<>r<>r<>r<>Tr<54>r<>rrr<>rwrx)rzrcrrr<>rr-rdrertr.r<>rbr<>rr<>r<>rXr{r|r}r~rr<>rwr<>r<>r<>rGr)rlrmrnrorMr<>rrrpr<>r<>r<>rrrwr<>r<>rrsrsrtr<><00>sJ<02><02> 
2026-01-18 11:29:19 +03:30
<04><02>  <0E> 

2026-02-01 08:26:08 +03:30
 z$ApiSendDifferentBarFromHatching.listNr<4E>rsrsrsrtr<00>s rcCsHdd<02>tD<00>}tjjt|d<03>t|d<04>Bdd<06>}|D] }|<02><05>q6dS)NcSsg|] }|d<00>qS<00>r<>rs<00>r<><00>prsrsrtr<><00>r<>z fix_province.<locals>.<listcomp>)Zorigin_province__in)Zdestination_province__inFru)rr1rdrer ri<00>Z province_listZ wrong_records<64>recordrsrsrt<00> fix_province<63>s<02>r<>cCsHdd<02>tD<00>}tjjt|d<03>t|d<04>Bdd<06>}|D] }|<02><05>q6dS)NcSsg|] }|d<00>qSr<>rsr<>rsrsrtr<><00>r<>zfix_city.<locals>.<listcomp>)Zorigin_city__in)Zdestination_city__inFru)rr1rdrer rir<>rsrsrt<00>fix_city<74>s<02>r<>cCs<>tj<00>t|jd<00>d<02><02><04>}tj<00>t|jd<00>d<02><02><04>}tjjdd||dd<06>dd<07>}|D<00>]}|j}t <09>
2026-01-18 11:29:19 +03:30
<EFBFBD>}|<06> dt <0C><00>d t|<05>i}|j d
|dd d id <0A>}t|jd<0E>} z<>| <09>d<0F>}
|
dd<11><00>rL|
2026-02-01 08:26:08 +03:30
dd<11>D]z} | <0B>d<12>} | dd<14>D]^} | <0A>d<15>}|j<0F><12><00>d<16>d}tt|<0F>d<17><01>\}}}t<16>|||<12><03><17>}||_d|_|<04><1A>q<>q<EFBFBD>WqZ|j|_d|_|<04><1A>YqZ0qZtt|<03><01>S)NrrrFT)rvr<>r<>r<><00>has_product_datei<65><00>https://<2F>gid<69>%https://e.ivo.ir/Rahgiri/Gidprnt.aspx<70>
User-Agent<6E>oMozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36<EFBFBD>rb<00>verifyrG<00> html.parser<65>table<6C><00><00>trr<72>r<><00>td<74>:r<>)rrr<>rzrr1rdrer<><00>requests<74>Session<6F>mountr'<00>postr<00>text<78>find_all<6C>findr<64>r<>rDr<00> jdatetime<6D> togregorianr<6E>r<>rirrA)rmrrr?r<><00>
quarantine<EFBFBD>sessionrbrOr<>r<>rtru<00>rr<72><00> shamsi_dater<rErF<00>gregorian_datersrsrt<00>update_product_date<74>sN<02><02><02><06>
2026-01-18 11:29:19 +03:30
 
<04><02> 


2026-02-01 08:26:08 +03:30
r<>cCsHtjjdddd<03><03>d<04>dd<05>}|D<00>]}|j}t<05><06>}|<03>dt<08><00>dt |<02>i}|j
2026-01-18 11:29:19 +03:30
d|dd d
id <0B>}t |j d <0C>}d|_ z<>|<06>d <0A>}|dd<0F><00>r|dd<0F>D]z}|<08>d<10>} | dd<12>D]^}
|
2026-02-01 08:26:08 +03:30
<EFBFBD>d<13>} | j <0C><10><00>d<14>d} tt| <0C>d<15><01>\} }}t<14>| ||<0F><03><16>}||_d|_ |<01><18>q<>q<EFBFBD>Wq$|j|_d|_ |<01><18>Yq$0q$dS)NFT)rvr<>r<>rTiXr<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>)r1rdrer<>r<>r<>r<>r<>r'r<>r<>rr<>r<>r<>r<>r<>r<>rDrr<>rr<>r<>ri)r?r<>r<>r<>rbrOr<>r<>rtrur<>r<>r<>r<rErFr<>rsrsrt<00>update_product_date_cronsF
2026-01-18 11:29:19 +03:30
<02><02><06>
 
<04><02> 


2026-02-01 08:26:08 +03:30
r<>c
2026-01-18 11:29:19 +03:30
s<>|jd}|<01>d<02>}tjjd|d<04><02>d<05>}|j<00>d<06>}|j<00>d<07>}tj<07>t |<03>d<08><02>
<EFBFBD>}tj<07>t |<04>d<08><02>
<EFBFBD>}t jjt ||dd <09>t ||d
d <0B>Bdd <0C><02> d dddd<10>}|tjdd<12>}|tjdd<12>}tjj||ddd<14><04> ddddd<18>}t|jdd
d<19><02><12><00>} t|jdd
d<19><02><12><00>}
| |
} tjj||ddd<1B>j| d<1C><01> d dddd<10>} tjj||dddd<1E>j| d<1C><01> d dddd<10>} |<05>d<0F>jtd <0A>td t dd <20>d!<21>td t d
d <20>d!<21>tdt dd <20>d!<21>tdt d
d <20>d!<21>td<05>d"<22>}| <0C>d<0F>jtd <0A>td t dd <20>d!<21>td t d
d <20>d!<21>tdt dd <20>d!<21>tdt d
d <20>d!<21>td<05>d"<22>}|<08>d<17>jtd<15>tdt dd#<23>d!<21>tdt d
d#<23>d!<21>tdt dd#<23>d!<21>tdt d
d#<23>d!<21>td<05>d"<22>}| <0A>d<1F>jtd <0A>td t dd <20>d!<21>td t d
d <20>d!<21>tdt dd <20>d!<21>tdt d
d <20>d!<21>td<05>d"<22>}i<00>|D]<5D>}|d}|<13>r<>|<13>v<01>rd$d$d$d$d$d$d"<22><06>|<<00>|d%|d%<00>p2d$7<<00>|d&|d&<00>pPd$7<<00>|d'|d'<00>pnd$7<<00>|d(|d(<00>p<>d$7<<00>|d)|d)<00>p<>d$7<<00>|d*|d*<00>p<>d$7<<00>q<>|D]<5D>}|d}|<13>r<>|<13>v<01>rd$d$d$d$d$d$d"<22><06>|<<00>|d%|d%<00>p d$7<<00>|d&|d&<00>p>d$7<<00>|d'|d'<00>p\d$7<<00>|d(|d(<00>pzd$7<<00>|d)|d)<00>p<>d$7<<00>|d*|d*<00>p<>d$7<<00>q<>i}|D]<5D>}|d}||v<01>r<>d$d$d$d$d$d$d"<22>||<||d%|d%<00>p d$7<||d&|d&<00>p*d$7<||d'|d'<00>pHd$7<||d(|d(<00>pfd$7<||d)|d)<00>p<>d$7<||d*|d*<00>p<>d$7<<00>q<>|D]<5D>}|d}|<13>r<>||v<01>r<>d$d$d$d$d$d$d"<22>||<||d%|d%<00>p<>d$7<||d&|d&<00>pd$7<||d'|d'<00>p6d$7<||d(|d(<00>pTd$7<||d)|d)<00>prd$7<||d*|d*<00>p<>d$7<<00>q<>t|<02>}|j<19>fd+d,<2C>d
d-<2D>t|d
2026-02-01 08:26:08 +03:30
|<00>|d.<2E>d/<2F>}t|jtjd0<64>S)1Nr<4E><00>,F<>rvr<>r<>rrrr<>Tr<54>rur<>r<>r<>r<>r<>r\r<>)r5r6rvr<>r<>r<>r<>r<>r<>r<>)r<>r<>rvr<>r>r<>)r<>r<>r<>rvr<>r<>r<>r<>r<>r<>rr;r<>r<>r<>r<>r<>cs<00><00>|ji<00>pi<00>dd<02>pdSr<>r<>r<>r<>rsrtr<><00>r<>z=send_transport_carcass_detail_for_rasadyaar.<locals>.<lambda>r<>r<>r ra)rzr<>r/rdrer<>rcrrr<>rr1r r<>r<>r.r<>rr<>r5r<>rrrrr<>rNrrbrr<>)rmr<>r<>rrr?rrr<>Zquarantine_barsZquarantine_buyZ all_trackZall_products_carcassZall_products_liverZall_products_carcass_summaryrZall_products_live_summaryrurqr<>r<>rsr<>rt<00>+send_transport_carcass_detail_for_rasadyaar&s:
2026-01-18 11:29:19 +03:30

    <0C><02>
<EFBFBD><02>
<EFBFBD><02><02>
<EFBFBD><02><02>
<EFBFBD>
<06>
<06>
<06>
<06> 
<02>
"
<02>
"
<02>
"
<02>
"
2026-02-01 08:26:08 +03:30
<02><0E>r<>cCsH|j}t|<01>d}tjjdd|d<04>jdd<06>}t|dd<07>j}t|tj d<08>S) Nr<4E>FT)rvr<>r<>r<>)r<>rxra)
rbrAr.rdrer<>rOrrr<>)rmr<>r?rrsrsrt<00>delete_free_bar_from_rasadyaar<61>s <02>r<>cCsj|j}tjjdt|<01><05><00>d<02>}g}|<01><06>D]6\}}|j|d<03><01><07>}|r*|j|kr*|<03> ||ji<01>q*t
|<03>S)NFr<46>r<>) rbr*rdrer<>r\rgrfr.rr)rmrbZ poultreis<69> result_listr<74>r<>rprsrsrt<00>
fix_number<EFBFBD>sr<>cCsz|j<00>d<01>}|s"tdditjd<04>Stjj|dd<06><02><08>}|sHtgtj d<04>St
2026-01-18 11:29:19 +03:30
jj|dd<07><02> d<08>}t |d d
2026-02-01 08:26:08 +03:30
<EFBFBD>}t|jtj d<04>S) NrW<00>detailzRequestCode is requiredraF<>rWrv<00>rHrv<00> -create_dateTrx) rbrcrr<00>HTTP_400_BAD_REQUESTr-rdrerfr<>r6r<>rR)rm<00> request_coderH<00> evacuationsr<73>rsrsrt<00>%get_evacuation_detail_by_request_code<64>s  r<>cCs<>|j<00>dg<00>}|rt|t<03>s.tdditjd<04>Si}tjj |dd<06>}|D]2}t
2026-01-18 11:29:19 +03:30
jj |dd<07><02> d<08>}t |d d
2026-02-01 08:26:08 +03:30
<EFBFBD>}|j||j <qF|D]}||vr~g||<q~t|tjd<04>S) NrSr<>zRequestCodes list is requiredraF)ZRequestCode__inrvr<>r<>Trx)rbrcr<>r<>rrr<>r-rdrer6r<>rRrWr<>)rmZ request_codesr_rrHr<>r<>r<>rsrsrt<00>'get_evacuation_details_by_request_codes<65>s 
r<>c@s0eZdZej<04><05>ZeZe gZ
dd<02>Z dd<04>Z dS)<06>InquiryCredentialsViewSetcOs,tjjdd<02><01><03>}|<00>|<04>}t|jtjd<03>Sr<>) r4rdrerfr<>rrbrr<><00>rlrmrnro<00>inquiry_credentialsr<73>rsrsrtr<>s
2026-01-18 11:29:19 +03:30
zInquiryCredentialsViewSet.listcOsHtjjdd<02><01><03>}|j||jdd<04>}|jdd<05>|<05><07>t|jt j
2026-02-01 08:26:08 +03:30
d<06>Sr<>) r4rdrerfr<>rbr<>rirrr<>r<>rsrsrtr<>s
 z InquiryCredentialsViewSet.updateN) r<>r<>r<>r4rdr<>r<>rPr<>rrr<>r<>rsrsrsrtr<>s
2026-01-18 11:29:19 +03:30

2026-02-01 08:26:08 +03:30
r<>c@s8eZdZejjdd<02>ZeZe gZ
e Z dd<04>Z dd<06>ZdS)<08>EvacuationDetailViewSetFrucOs0t|jt<02>r|jn|jg}d}d}|D]<5D>}|<07>dg<00>}|r&t|<08>dkrHq&|<07>d<03>} | sXq&tjj| dd<05><02><08>}
2026-01-18 11:29:19 +03:30
|
srq&|D]<5D>} | <0B> <09>} | <0C>
dd<00>} | dur<>| | d<d}| r<>t jj| dd<08><02><08>}|r<>| <0C> <0C>D]\}}t |||<10>q<>|
|_|<0E><0F>|d 7}qv|
| d
2026-02-01 08:35:33 +03:30
<t jjfi| <0C><01>|d 7}qvq&td ||d <0C>tjd <0A>S)Nrr6rWFr<46>r<>rt)rtrvr<>rHr`)r_rX<00>updatedra)r<>rbr<>rcrAr-rdrerf<00>copyrFr6rgrhrHrirjrrrk)rlrmrnro<00> data_listZ total_createdZ total_updatedZ item_datar<61>r<>rHr<>r<>r<>r<>rqrrrsrsrtrj*sP 
2026-01-18 11:29:19 +03:30
 <02>

 <02><04>zEvacuationDetailViewSet.createc Os<>|<00>|<00><01><00>}|j<02>d<01>}|rB|dkrB|<05><04>rB|<04>tgd<03>|<05><02>}|j<07>dd<00>}|r`t|<06>|j _
|<00> |<04> dd<06><02>}|dur<>|j |dd<08>}|<00>|j<0F>S|j|<04> dd<06>dd<08>}t|jtjd <09>S)
2026-02-01 08:26:08 +03:30
Nr<EFBFBD>r<>)r<><00>SourceUnitNamer<65>rwr<>r<>Trxra)r<>r<>rzrcr<>rerXr~rr<>rwr<>r<>r<>r<>rbr<>rrr<>) rlrmrnror<>r<>rwr<>r<>rsrsrtr<>Zs   <0C>  zEvacuationDetailViewSet.listN)r<>r<>r<>r6rdrer<>rRr<>rrrWr<>rjr<>rsrsrsrtr<>$s 0r<30>c Cs<>tjjdd<02>jdd<04>jdd<06>}|<01>d<07>jtd<08>d <09>}tt<08>}|<01>dd
2026-01-18 11:29:19 +03:30
<EFBFBD><02> <09>D]*}|d}|d
}|durL||<00>
|<06>qLg}|<02> d d<07>D]2}|d}t |<03> |g<00><02>} |<07>||d | d <0A><03>q<>t|<07>}
tdd<0F>|<03><04>D<00><01>} t|
2026-02-01 08:35:33 +03:30
|| d<10>tjd<11>S)NFruT)ZReportTypeString__isnullr')r_r_r<>)r<>raz-countr<74>)<03>report_type_stringr<67><00> report_typescss|]}t|<01>dkVqdS)r<>N)rA)r<>rrsrsrt<00> <genexpr><3E>r<>z1evacuation_report_type_summary.<locals>.<genexpr>)Ztotal_report_typesr<73>Z&report_type_matches_report_type_stringra)r6rdrer<>rrrrr?r<>rCr<>rrcrrAr<>rrr<>) rmr<>Zreport_type_counterZtype_relationsrr<>Zreport_type_valuer<65><00>entryZassociated_typesZdistinct_countZmapping_is_uniquersrsrt<00>evacuation_report_type_summaryqs@<02><02>
2026-01-18 11:29:19 +03:30
<06><02>
2026-02-01 08:26:08 +03:30
<02><04>r<EFBFBD>csLeZdZejjdd<02>ZeZe gZ
2026-02-01 08:35:33 +03:30
e Z e Zdd<04>Z<0F>fdd<06>Zdd<08>Z<11>ZS) <09>AllProductsTransportViewSetFrucOs<>ddi}|j<00>d<03>}|j<00>d<04>}|j<00>d<05>}|j<00>d<06>}|j<00>d<07>} |rX|dkrX||d <|r~|dkr~|d
krvd |d<n||d<|r<>|r<>|dkr<>|dkr<>z8tj<02>t|<07>d <0C>}
tj<02>t|<08>d <0C>} |
|d <| |d<Wnty<>Yn0tj<07>d<0F>j fi|<04><01>} | <09>r*| dk<03>r*| <09>
<EFBFBD><00>r*| <0C> t |j j j| <09><02>} | <0C>dd<11>} |j<10>dd<00>} | <0A>rVt| <0A>|j_|<00>| <0C>}i}|<00><15>}||d<|du<01>r<>|j|d|d<15>}|<00>|j<18>S|j| d|d<15>}t|jtjd<16>S)NrvF<> product_typer<65>rrr<>r<>r<>rzu
مرکزيrr<>r<>rHrTr<>rw<00>location_cacheTr ra)rzrcrrr<>rr5rdrSrer<>rXr{r|r}r<>r~rr<>rwr<><00>get_serializer_contextr<74>r<>rbr<>rrr<>)rlrmrnrorMr<>r<>rrr<><00>
start_date<EFBFBD>end_daterBrwr<>r<>r<>r<>rsrsrtr<><00>sL       
  <0E>  
2026-02-01 08:26:08 +03:30

 z AllProductsTransportViewSet.listc s<>d|jvr|<00>|<01>S|j}t|t<04>r|g}|D]0}|<06>d<02>}|r,tjj||d<03>\}} |<05> |<08>q,|j
2026-01-18 11:29:19 +03:30
|dd<05>}
t |
2026-02-01 08:35:33 +03:30
jt j d<06>St<0E>j|g|<02>Ri|<03><01>SdS)Nrcr<>)r<>rVTrxra)rj<00>_import_from_excelrbr<>r<>rcr5rdrWrr<>rrrk<00>superrj) rlrmrnrorbZcreated_objectsrr<>r<>rXr<><00><01> __class__rsrtrj<00>s 
2026-01-18 11:29:19 +03:30



<02>
 z"AllProductsTransportViewSet.createcCs>|jd<00><01>}tjt|<02>d<02>}|j}dd<04>t|jdd<06><01>D<00>}ddd d
d
d d d ddddddddddddddddddd d!d"d#<23>}d$}d$}d$} |jd%dd&<26>D<00>]v}
|
r<EFBFBD>td'd(<28>|
D<00><01>r<>q<EFBFBD>t t
||
<EFBFBD><02>} | <0B> d)<29>p<>| <0B> d*<2A>} | <0B> d+<2B>p<>| <0B> d+<2B>} | <0B> d,<2C>p<>| <0B> d,<2C>}t | <0A>| <0C>sq<>t jj| d-d.<2E><02><10>}| <0B> d/<2F><01>r@| <0B> d/d0<64><02><11>nd0}|d1v<00>r^|<0F>r^| d27} q<>i}|<06><12>D<00>]<5D>\}}|| v<00>rj| |}|d3v<00>r8|<14>r8z<38>t|t<14><02>r<>d4|v<00>r<>|<14>d4<64>}t|<15>d5k<02>r<>tt|<15>\}}}t|||<18>}ntj<1A>|d6<64><02><1C>}nt|d7<64><02>rt|j|j|j <20>}Wnt!t"t#f<03>y6d8}Yn0|dk<02>r<>|<14>r<>z*t|t<14><02>rht$|<14>%d9d0<64><02>}nt$|<14>}Wnt!t&f<02>y<>d8}Yn0|d:v<00>r<>|<14>r<>z*t|t<14><02>r<>t$|<14>%d9d0<64><02>}nt$|<14>}Wnt!t&f<02>y<>d8}Yn0|||<<00>qjd8}z4t'| <0C>}|<1A> t| <0C><01>}|<1B>r*t(jj|d-d;<3B><02>)<29>}Wnt*<2A>y@Yn0|<0F>r<>|<11><12>D]\}}t+|||<14><00>qP|<19>rt||_,|<0F>-<2D>|j.<2E>r<>|j/<2F>r<>|j.|j/k<03>r<>d|_0|<0F>-<2D>|d27}q<>| |d
2026-02-01 08:35:33 +03:30
<t fi|<11><01>}|<19>r<>||_,|<1D>-<2D>|j.<2E>r|j/<2F>r|j.|j/k<03>rd|_0|<1D>-<2D>|d27}q<>t1d<||| |<07>d=|<08>d>| <09>d?<3F>d@<40>t2j3dA<64>S)BzImport data from Excel filercrdcSs g|]}|rt|<01><01><01>nd<00>qS)r'rr rsrsrtr<><00>r<>zBAllProductsTransportViewSet._import_from_excel.<locals>.<listcomp>Trfr<>r r r<>rr<>rgr<>rrrrr<>r<>r<>r<>r<>rrrrrrrrrr<>r)r<>rr<00>کد رهگیریrr r!r"r#r$r%r&r'r(r)r*r+r,r-r.r/r1r2r3r4r5r6r7r0rr<>r9css|]}|duVqdSr<>rsr rsrsrtr<>r<>zAAllProductsTransportViewSet._import_from_excel.<locals>.<genexpr>r<>rr)r+F)r<>rvr0r')u تخلیه.r0r<>r;r<>rhrr<Nr<4E>)rrrr<>r<>u' رکورد جدید اضافه شد، u+ رکورد به‌روزرسانی شد، u) رکورد رد شد (تخلیه شده))r_rXr<><00>skippedr<64>ra)4rjrkrlrmrrr@ror<>rArBrcr<>r5rdrerfr<>rgr<>r<>r<>rArDrrZrrrr<>r<rErFr<00>AttributeErrorr`<00>float<61>replace<63> TypeErrorr(r-r<>r<>rhrHrir<>rr<>rrrk)rlrmrcrqrrrGrHZ created_countr<74>Z skipped_countrurIrJr<>Zjihadi_origin_codeZexisting_recordZ unloading_valrKrLrMrrrcrNrOrZ hatching_objZ
2026-02-01 08:26:08 +03:30
permit_mapZ permit_coderqZ
2026-02-01 08:35:33 +03:30
new_recordrsrsrtr<><00>s<><02>  
2026-01-18 11:29:19 +03:30
 

 
  
  
 

2026-02-01 08:35:33 +03:30
<14><04>z.AllProductsTransportViewSet._import_from_excel)r<>r<>r<>r5rdrer<>rTr<>rrrWr<>r&r{r<>rjr<><00> __classcell__rsrsr<>rtr<><00>s7 r<>c@seZdZegZdd<02>ZdS)<04>!AllProductsTransportDashboardViewc Cs<>|j<00>d<01>}|j<00>d<02>}|j<00>d<03>}|j<00>d<04>}|j<00>d<05>p>d}|j<00>d<06>pNd}ddi}|d krdd}|rx|d krx||d
2026-01-31 22:57:28 +03:30
<|r<>|r<>|d kr<>|d kr<>z8tj<02>t|<06>d <0B>} tj<02>t|<07>d <0B>}
| |d <|
2026-02-01 08:35:33 +03:30
|d <Wnty<>Yn0|j<00>d<0E>} t} | <0B>r| d k<03>r| dk<02>rd|d<n| |d<tjj fi|<08><01>} |<04>rX|d k<03>rX|<04>
<EFBFBD><00>rX| <0A> t | j j |<04><02>} |<02>rt|dk<02>rbddi}i}|<03>r<>||d<t} tjj fi|<0F><01><01>d<13>}|<04>r<>|d k<03>r<>|<04>
<EFBFBD><00>r<>|<10> t | j j |<04><02>}|jddd<16>}||d<| <0B>r<>| d k<03>r<>t| <0B>|d<| j fi|<0E><01>}|jtd<18>tdtdd<19>d<1A>tdtdd<19>d<1A>tdtdd<19>d<1A>tdtdd<19>d<1A>td<13>d<1B>}|d<00>ppd}|d<00>p~d}|d<00>p<>d}|d <00>p<>d}|d!<00>p<>d}|d"<00>p<>d}|dk<04>r<>||dk<04>r<>t|||d#d$<24>}t|||d#d$<24>}nd}d}|<12>d%<25>jd&dd<16><02><17>}td'|t|<14>t|<15>t|<18>t|<16>|t|<19>t|<17>||<10><1A>|d(<28> tjd)<29>Si}ddi}|<03>r|||d<t} tjj fi|<1D>ddd*<2A><02><01><01>d<13>}|<04>r<>|d k<03>r<>|<04>
<EFBFBD><00>r<>|<1E> t | j j |<04><02>}|jd+dd<16>}| <0A> t|d,<2C>t|d-<2D>B<00><01>d%<25>}| <0B>r| d k<03>rt| <0B>|d<|fi|<0E><01>}|jtd<18>tdtdd<19>d<1A>tdtdd<19>d<1A>tdtdd<19>d<1A>tdtdd<19>d<1A>td<13>d<1B>}|d<00>p<>d}|d<00>p<>d}|d<00>p<>d}|d <00>p<>d}|d!<00>p<>d}|d"<00>p<>d}|dk<04>r||dk<04>rt|||d#d$<24>}t|||d#d$<24>}nd}d}|jd&dd<16><02><17>}t|t|<14>t|<15>t|<18>t|<16>|t|<19>t|<17>||<1E><1A>|d.<2E> tjd)<29>S| jtd<18>tdtdd<19>d<1A>tdtdd<19>d<1A>tdtdd<19>d<1A>tdtdd<19>d<1A>td<13>d<1B>}|d<00>p<>d}|d<00>p<>d}|d<00>p<>d}|d <00>pd}|d!<00>pd}|d"<00>pd}|dk<04>rd||dk<04>rdt|||d#d$<24>}t|||d#d$<24>}nd}d}| <0A>d%<25>jd&dd<16><02><17>}td/|t|<14>t|<15>t|<18>t|<16>|t|<19>t|<17>||d0<64> tjd)<29>S)1Nr<4E>r<>r<>r<>rrrvFr<46>r<>rr<>r<>r<>rzu
مركزيr/rVr<>rwTr<54>r<>r<>r<>r<>r<>r<>rr;r<>r<>r<>r<>r<>r<>rorsrf) r<>r<>r?rgrrhrr rir rkrlrar<>r<>rmrn) r<>r?rgrrhrr rir rprlr<>) r<>r<>r?rgrrhrr rir rl)rzrcrrr<>rr&r5rdrer<>rXr|r}r/r<>rr)r<>rr rr<>rfrrr<>rr<>r2) rlrmr<>r<>r<>r<>rrrMr<>r<>r<>r<>r<>Z filters_queryr<79>r<>Zkill_house_codesr?rrr<>r<>r<>r<>r<>r<>r<>r<>rlrrZ steward_codesrsrsrtrc<00>sX        

 <0C>
 <0C> <06> <02> <04>" <0C><12><02> <06> <02> <04><06> <02> <04>z%AllProductsTransportDashboardView.getNr~rsrsrsrtr<><00>sr<>c@seZdZegZdd<02>ZdS)<04>$AllProductsTransportProductsListViewcCsBtjjddd<02>jdd<04>jddd<07><02><05><00>d<05>}tdt|<02>it j
2026-01-18 11:29:19 +03:30
d <09>S)
2026-02-01 08:35:33 +03:30
NF)rv<00>product__isnullr'<00>r<>r<>Tr<54><00>productsra) r5rdrer<>rr<>r<>rr<>rr<>)rlrmr<>rsrsrtrcVs<02><02><04>
<02><08><04>z(AllProductsTransportProductsListView.getNr~rsrsrsrtr<>Ssr<>c"Cs$d}|jrfd}|jjrL|jjj|jjj|jjj|jjj|jjj|jjjd<02>}|jj||jj|jj d<03>}|j
2026-01-18 11:29:19 +03:30
t |j <0C>dt |j
<EFBFBD>|j |jr<>|j<0E><0F>nd|j|j|jd|jr<>|jjnd|jr<>|jjnd|j|j|j|j|j|j|jr<>|jjnddddddddd|j<0E>r
2026-02-01 08:35:33 +03:30
|j<0E><0F>nd|j|j||j|jd<06>!S)u:تبدیل TransportingDetail به فرمت یکپارچهN<D987>r]rwrVr<>r-r.<00>rwrprWr<>r.uقطعه<D8B9>!r<>rq<00>sourcer<65>r<>rr<>rgr<>rrrrr<>r<>r<>r<>r<>rrrrrrrrrr<>rr<>rH<00> create_daters)rHrpr]rwrVr<>r-r.rWr<>r<>r<>rqr<>rr<00>GoodNamer<65>r<>r<>r<>r<><00>SourcePartIdCoder<65><00>PersonFullNamer<65>r<>r<>rs<00>r<>rGZ poultry_datarsrsrt<00>'_convert_transporting_detail_to_unifiedasd<08> <06><04>r<EFBFBD>c"Cs<>|jt|j<02>d|j|j|j|j|j|j|j |j
|j |j |j |j|j|j|j|j|j|j|j|j|j|j|j|j|j|j|jd|j|jd<03>!S)u>تبدیل TransportCarcassDetail به فرمت یکپارچهr1Nr<4E>) r<>r<>rqr<>r<>rr<>rgr<>rrrrr<>r<>r<>r<>r<>rrrrrrrrrr<>rr<>r<>rsr<>rsrsrt<00>%_convert_transport_carcass_to_unified<65>sD<04>r<EFBFBD>c"Cs<>d}|jrfd}|jjrL|jjj|jjj|jjj|jjj|jjj|jjjd<02>}|jj||jj|jj d<03>}|j
t |j <0C>d|j |j|j|j|j|j|j|j|j|j|j|j|j|j|j|j|j|j|j|j |j!|j"|j#|j$|j%|j&|j'||j(|j)d<05>!S)u<تبدیل AllProductsTransport به فرمت یکپارچهNr<4E>r<>r5r<>)*rHrpr]rwrVr<>r-r.rWr<>r<>r<>rqr<>r<>rr<>rgr<>rrrrr<>r<>r<>r<>r<>rrrrrrrrrr<>rr<>r<>rsr<>rsrsrt<00> _convert_all_products_to_unified<65>sd<08> <06><04>r<EFBFBD>cs4|j<00>d<01>}|s"tdditjd<04>S|j<00>d<05>}|dvrHtdditjd<04>S|j<00>d<08>}|rr|d vrrtdd
2026-01-18 11:29:19 +03:30
itjd<04>S|j<00>d <0B>}|j<00>d <0C>}d}d}|r<>|r<>|d kr<>|d kr<>z(tj<05>t|<04>d<0E>}tj<05>t|<05>d<0E>}Wnty<>Yn0|j<00>d<0F>}|j<00>d<10>} |j<00>d<11>}
g<00>t <09><00><01><01>fdd<13>} |dk<02>r<>|dk<02>rt
j j d|d<17>} |<06>r`|<07>r`| j ||d<18>} |<08>r||d k<03>r|| j |d<19>} | <09>r<>| d k<03>r<>| j | d<1A>} | D]} | t | <0A><01><00>q<>tj j d|dd<1C><03>d<1D>}|<06>r<>|<07>r<>|j ||d<1E>}|<08>r<>|d k<03>r<>|j |d<1F>}|D]} | t| <0A><01><00>qn<>t
j j d|d <20><02>d!<21>} |<06>rH|<07>rH| j ||d<18>} |<08>rd|d k<03>rd| j |d"<22>} | <09>r<>| d k<03>r<>| j | d<1A>} | D]} | t | <0A><01><00>q<><71>n<>|d#k<02>r<>|dk<02>r,tj j d|d<17>}|<06>r<>|<07>r<>|j ||d<18>}|<08>r<>|d k<03>r<>|j |d<19>}| <09>r| d k<03>r|j | d<1A>}|D]} | t| <0A><01><00>qnhtj j d|dd$<24><03>d%d&<26>}|<06>r`|<07>r`|j ||d<1E>}|<08>r||d k<03>r||j |d'<27>}|D]} | t| <0A><01><00>q<>n<EFBFBD>|dk<02>r<>t
j j d|d<17>}nt
j j d|d <20>}|<06>r<>|<07>r<>|j ||d<18>}|<08>r|d k<03>r|dk<02>r|j |d<19>}n |j |d"<22>}| <09>r,| d k<03>r,|j | d<1A>}|D]} | t | <0A><01><00>q0|
<EFBFBD>rx|
d k<03>rx|
<EFBFBD><14><00>rx|
2026-02-01 08:35:33 +03:30
<EFBFBD><15><00><00>fd(d)<29><08>D<00><01><02>jd*d+<2B>d,d-<2D>t<17>}|j<18>d.d<00>}|<12>r<>t|<12>|_t|j<18>d/d0<64><02>}|d0|j}||j}<15>||<15>}tt<1B><02>|t<1B><02>k<00>rd1|d0<00><00>nd|d0k<04>r"d1|d0<00><00>nd|d2<64>tjd<04>S)3Nr<4E>r<><00>کد الزامی استra<00>type<70><02>inr<6E><00>$نوع باید in یا out باشد<D8B4>from<6F>r*r/<00>-from باید Poultry یا KillHouse باشدrrr<>rr<>r<>r<>cs6|<00>d<01>}|r|<01>vrdS|r(<28><00>|<01><00><01>|<00>dS)Nr<4E>FT)rcrCr)rr<>)<02>seen_tracking_codes<65>unified_resultsrsrt<00>add_if_not_duplicate's
2026-01-18 11:29:19 +03:30
 

2026-02-01 08:35:33 +03:30
z@get_all_products_transport_by_code.<locals>.add_if_not_duplicater*r<>F<>rvr<><00>r<>r<><00>r<>r<>r<><00>rvZhatching__poultry__PartIdCoder<65>r<><00>Z Date__gteZ Date__lterU<00>rvr<>rT<00>rr/<00>rvr<>r<>rH<00>hatching__poultryr<79>cs<>g|]<5D>}|<01>d<00>r&<26>t|d<00><01><02>vs<>|<01>d<01>rD<72>t|d<00><01><02>vs<>|<01>d<02>rb<72>t|d<00><01><02>vs<>|<01>d<03>r<><72>t|d<00><01><02>vs<>|<01>d<04>r<><72>t|d<00><01><02>vs<>|<01>d<05>r<04>t|d<00><01><02>vr|<01>qS)r<>r<>rr<>rr)rcr<><00>lower)r<>r<><00><01> search_lowerrsrtr<><00>s<1E>z6get_all_products_transport_by_code.<locals>.<listcomp>cSs|<00>d<01>ptjjS)Nr)rcrrr<>r<>rsrsrtr<><00>r<>z4get_all_products_transport_by_code.<locals>.<lambda>Tr<54>rwr<>r<>z?page=)r<>r@<00>previousr )rzrcrrr<>rrr<>rr?r5rdrer<>r.r<>r<>r1r<>rSr<>r<>r<>rWr~rrwrAr<>)rmr<><00>transport_type<70> from_sourcerrr<>r<>r<>r<>r<>r<>r<>r<><00>transport_details<6C>carcass_detailsr?r<>rw<00> page_number<65> start_index<65> end_indexZpaginated_resultsrs)r<>r<>r<>rt<00>"get_all_products_transport_by_code<64>s <04> <04>  <04>      
2026-01-18 11:29:19 +03:30

<02>   <02><02>  <02><02>   

<02>   <02><04>  
<02><02> 
  
<02>


2026-02-01 08:26:08 +03:30
 <02><04>rcs<>|j<00>d<01>}|s"tdditjd<04>S|j<00>d<05>}|dvrHtdditjd<04>S|j<00>d<08>}|rr|d vrrtdd
2026-01-18 11:29:19 +03:30
itjd<04>S|j<00>d <0B>}|j<00>d <0C>}d}d}|r<>|r<>|d kr<>|d kr<>z(tj<05>t|<04>d<0E>}tj<05>t|<05>d<0E>}Wnty<>Yn0|j<00>d<0F>}|j<00>d<10>} |j<00>d<11>}
t <09>} |dk<02>r<>|dk<02>r(t
j j d|d<15>} |<06>rN|<07>rN| j ||d<16>} |<08>rj|d k<03>rj| j |d<17>} | <09>r<>| d k<03>r<>| j | d<18>} | <0B> | j dd<19>jdd<18>jddd<1C><02><10><00>tj j d|dd<1E><03>dd <20>} |<06>r<>|<07>r<>| j ||d!<21>} |<08>r<>|d k<03>r<>| j |d"<22>} | <0B> | j dd#<23>jdd$<24>jd%dd<1C><02><10><00>n<>t
j j d|d&<26>} |<06>rR|<07>rR| j ||d<16>} |<08>rn|d k<03>rn| j |d'<27>} | <09>r<>| d k<03>r<>| j | d<18>} | <0B> | j dd<19>jdd<18>jddd<1C><02><10><00><00>n<>|d(k<02>r<>|dk<02>rVtj j d|d<15>}|<06>r<>|<07>r<>|j ||d<16>}|<08>r|d k<03>r|j |d<17>}| <09>r,| d k<03>r,|j | d<18>}| <0B> |j dd<19>jdd<18>jddd<1C><02><10><00>nxtj j d|dd)<29><03>dd <20>} |<06>r<>|<07>r<>| j ||d!<21>} |<08>r<>|d k<03>r<>| j |d*<2A>} | <0B> | j dd#<23>jdd$<24>jd%dd<1C><02><10><00>n<>|dk<02>r<>t
j j d|d<15>}nt
j j d|d&<26>}|<06>r<>|<07>r<>|j ||d<16>}|<08>rJ|d k<03>rJ|dk<02>r>|j |d<17>}n |j |d'<27>}| <09>rf| d k<03>rf|j | d<18>}| <0B> |j dd<19>jdd<18>jddd<1C><02><10><00>|
<EFBFBD>r<>|
d k<03>r<>|
<EFBFBD><14><00>r<>|
2026-02-01 08:35:33 +03:30
<EFBFBD><15><00><00>fd+d,<2C>| D<00>} td-d.<2E>| D<00>td/<2F>}td0|itjd<04>S)1Nr<4E>r<>r<>rar<>r<>r<>r<>r<>r<>rrr<>rr<>r<>r<>r*r<>Fr<46>r<>r<>r<>)r<>r'Tr<54>r<>r<>rHr<>r<>rU)ZGoodName__isnull)r<>r<>r<>r<>r/r<>r<>cs$h|]}|r<04>t|<01><01><01>vr|<01>qSrs<00>r<>r<>r<>r<>rsrt<00> <setcomp>Vs<14>z>get_all_products_transport_products_by_code.<locals>.<setcomp>cSsg|] }|r|<01>qSrsrsr<>rsrsrtr<>[r<>z?get_all_products_transport_products_by_code.<locals>.<listcomp>rXr<><00>rzrcrrr<>rrr<>rr?r5rdrer<>r<>rr<>r.rSr1r<>r<>rr<>)rmr<>r<>r<>rrr<>r<>r<>r<>r<>Z products_setr<74>r<>r<>r?r<>rsr<>rt<00>+get_all_products_transport_products_by_code<64>s< <04> <04>  <04>      
2026-01-18 11:29:19 +03:30

<02>    <02><04><08><02><04>   <02><04><08><02>    <02><04><08>

<02>    <02><04><08><02><04>   <02><04><08>
<02><02> 
   <02><04><08>
2026-02-01 08:26:08 +03:30
<02><04><04>rcs|j<00>d<01>}|s"tdditjd<04>S|j<00>d<05>}|dvrHtdditjd<04>S|j<00>d<08>}|rr|d vrrtdd
2026-01-18 11:29:19 +03:30
itjd<04>S|j<00>d <0B>}|j<00>d <0C>}d}d}|r<>|r<>|d kr<>|d kr<>z(tj<05>t|<04>d<0E>}tj<05>t|<05>d<0E>}Wnty<>Yn0|j<00>d<0F>}|j<00>d<10>} |j<00>d<11>}
t <09>} |dk<02>r<>|dk<02>r(t
j j d|d<15>} |<06>rN|<07>rN| j ||d<16>} |<08>rj|d k<03>rj| j |d<17>} | <09>r<>| d k<03>r<>| j | d<18>} | <0B> | j dd<19>jdd<17>jddd<1D><02><10><00>tj j d|dd<1F><03>d d!<21>} |<06>r<>|<07>r<>| j ||d"<22>} |<08>r<>|d k<03>r<>| j |d#<23>} | <0B> | j dd$<24>jdd#<23>jd%dd<1D><02><10><00>n<>t
j j d|d&<26>} |<06>rR|<07>rR| j ||d<16>} |<08>rn|d k<03>rn| j |d'<27>} | <09>r<>| d k<03>r<>| j | d<18>} | <0B> | j dd(<28>jdd'<27>jd)dd<1D><02><10><00><00>n<>|d*k<02>r<>|dk<02>rVtj j d|d<15>}|<06>r<>|<07>r<>|j ||d<16>}|<08>r|d k<03>r|j |d<17>}| <09>r,| d k<03>r,|j | d<18>}| <0B> |j dd<19>jdd<17>jddd<1D><02><10><00>nxtj j d|dd+<2B><03>d d!<21>} |<06>r<>|<07>r<>| j ||d"<22>} |<08>r<>|d k<03>r<>| j |d,<2C>} | <0B> | j dd-<2D>jdd,<2C>jd.dd<1D><02><10><00>nz|dk<02>r<>t
j j d|d<15>}nt
j j d|d&<26>}|<06>r|<07>r|j ||d<16>}|<08>rJ|d k<03>rJ|dk<02>r>|j |d<17>}n |j |d'<27>}| <09>r<>| d k<03>r<>|j | d<18>}|dk<02>r<>| <0B> |j dd<19>jdd<17>jddd<1D><02><10><00>n(| <0B> |j dd(<28>jdd'<27>jd)dd<1D><02><10><00>|
<EFBFBD>r<>|
d k<03>r<>|
<EFBFBD><14><00>r<>|
2026-02-01 08:35:33 +03:30
<EFBFBD><15><00><00>fd/d0<64>| D<00>} td1d2<64>| D<00>td3<64>}td4|itjd<04>S)5Nr<4E>r<>r<>rar<>r<>r<>r<>r<>r<>rrr<>rr<>r<>r<>r*r<>Fr<46>r<>r<>r<>)Zdestination_province__isnullr'r<>Tr<54>r<>r<>rHr<>r<>rUr<>rVr<>r<>)Zorigin_province__isnullrr/r<>r<>)Zhatching__ProvinceName__isnullr<6C>cs$h|]}|r<04>t|<01><01><01>vr|<01>qSrsrr<>r<>rsrtrs<14>z?get_all_products_transport_provinces_by_code.<locals>.<setcomp>cSsg|] }|r|<01>qSrsrsr<>rsrsrtr<>r<>z@get_all_products_transport_provinces_by_code.<locals>.<listcomp>rXrr)rmr<>r<>r<>rrr<>r<>r<>r<>r<>Z provinces_setr<74>r<>r<>r?rrsr<>rt<00>,get_all_products_transport_provinces_by_codebsL <04> <04>  <04>      
2026-01-18 11:29:19 +03:30

<02>    <02><04><08><02><04>   <02><04><08><02>    <02><04><08>

<02>    <02><04><08><02><04>   <02><04><08>
<02><02> 
  
 <02><04><08> <02><04><08>
2026-02-01 08:26:08 +03:30
<02><04><04>rc Cs<> |j<00>d<01>}|s"tdditjd<04>S|j<00>d<05>}|dvrHtdditjd<04>S|j<00>d<08>}|rr|d vrrtdd
2026-01-18 11:29:19 +03:30
itjd<04>S|j<00>d <0B>}|j<00>d <0C>}d}d}|r<>|r<>|d kr<>|d kr<>z(tj<05>t|<04>d<0E>}tj<05>t|<05>d<0E>}Wnty<>Yn0|j<00>d<0F>}|j<00>d<10>} |j<00>d<11>}
d} d} d} d}d}d}d}|dk<02>r |dk<02>r<>t j
j d|d<16>}|<06>rd|<07>rd|j ||d<17>}|<08>r<>|d k<03>r<>|j |d<18>}| <09>r<>| d k<03>r<>|j | d<19>}|j t d<1A>t dtdd<1B>d<1C>t dtdd<1B>d<1C>tdtdd<1B>d<1C>tdtdd<1B>d<1C>td<1E>td<1F>d <20>}| |d!<00>pd7} | |d"<00>pd7} | |d#<00>p*d7} ||d$<00>p<d7}||d%<00>pNd7}||d&<00>p`d7}|d'<00>r<>|<11>r<>|d'|k<04>r<>|d'}tj
j d|d(d)<29><03>d*d+<2B>}|<06>r<>|<07>r<>|j ||d,<2C>}|<08>r<>|d k<03>r<>|j |d-<2D>}|j t d.<2E>t d.tdd/<2F>d<1C>t d.tdd/<2F>d<1C>tdtdd/<2F>d<1C>tdtdd/<2F>d<1C>td<1E>td<1F>d <20>}| |d!<00>pDd7} | |d"<00>pVd7} | |d#<00>phd7} ||d$<00>pzd7}||d%<00>p<>d7}||d&<00>p<>d7}|d'<00>r|<11>r<>|d'|k<04>r|d'}<11> qFt j
j d|d0<64>}|<06>r<>|<07>r<>|j ||d<17>}|<08>r|d k<03>r|j |d1<64>}| <09>r.| d k<03>r.|j | d<19>}|j t d<1A>t dtdd<1B>d<1C>t dtdd<1B>d<1C>tdtdd<1B>d<1C>tdtdd<1B>d<1C>td<1E>td<1F>d <20>}| |d!<00>p<>d7} | |d"<00>p<>d7} | |d#<00>p<>d7} ||d$<00>p<>d7}||d%<00>p<>d7}||d&<00>p<>d7}|d'<00> rF|<11>r|d'|k<04> rF|d'}<11>n&|d2k<02>r<>|dk<02>r<>tj
j d|d<16>}|<06>r^|<07>r^|j ||d<17>}|<08>rz|d k<03>rz|j |d<18>}| <09>r<>| d k<03>r<>|j | d<19>}|j t d<1A>t dtdd<1B>d<1C>t dtdd<1B>d<1C>tdtdd<1B>d<1C>tdtdd<1B>d<1C>td<1E>td<1F>d <20>}| |d!<00>pd7} | |d"<00>pd7} | |d#<00>p$d7} ||d$<00>p6d7}||d%<00>pHd7}||d&<00>pZd7}|d'<00>r<>|<11>r||d'|k<04>r<>|d'}<11> qFtj
j d|d(d3<64><03>d*d+<2B>}|<06>r<>|<07>r<>|j ||d,<2C>}|<08>r<>|d k<03>r<>|j |d4<64>}|j t d.<2E>t d.tdd/<2F>d<1C>t d.tdd/<2F>d<1C>tdtdd/<2F>d<1C>tdtdd/<2F>d<1C>td<1E>td<1F>d <20>}| |d!<00>pBd7} | |d"<00>pTd7} | |d#<00>pfd7} ||d$<00>pxd7}||d%<00>p<>d7}||d&<00>p<>d7}|d'<00> rF|<11>r<>|d'|k<04> rF|d'}<11>n||dk<02>r<>t j
j d|d<16>}nt j
j d|d0<64>}|<06>r|<07>r|j ||d<17>}|<08>rD|d k<03>rD|dk<02>r8|j |d<18>}n |j |d1<64>}| <09>r`| d k<03>r`|j | d<19>}|
<EFBFBD>r<>|
d k<03>r<>|
<EFBFBD><14><00>r<>|<16> ttjj|
2026-02-01 08:26:08 +03:30
<EFBFBD><02>}|j t d<1A>t dtdd<1B>d<1C>t dtdd<1B>d<1C>tdtdd<1B>d<1C>tdtdd<1B>d<1C>td<1E>td<1F>d5<64>}|d6<00>p<>d} |d"<00> pd} |d#<00> pd} |d$<00> p d}|d7<00> p.d}|d8<00> p<d}|d'}| dk<04> r<>| |dk<04> r<>t| | |d9d:<3A>}t|| |d9d:<3A>}nd}d}tt| <0B>t|<0F>|t|<10>| d;t| <0C>|t| <0A>|t|<0E>d<<3C> tjd<04>S)=Nr<4E>r<>r<>rar<>r<>r<>r<>r<>r<>rrr<>rr<>r<>r<>rr*r<>Fr<46>r<>r<>r<>r<>r<>r<>Tr<54>rs)r;r<>r<><00> input_cnt<6E>
output_cnt<EFBFBD> total_cnt<6E>last_modr r;r<>r<>r r
2026-02-01 08:35:33 +03:30
r r<>r<>rHr<>r<>rUr<>r<>r<>r<>r/r<>r<>)r;r<>r<>r<>r<>r<>r r<>r<>r<>r<>r<>r<>) r?rrlr r<>r<>rgrrhr ri)rzrcrrr<>rrr<>rr5rdrer<>rr rr r.rSr1r<>rXr&r|r}r<>rr<>)rmr<>r<>r<>rrr<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>rlr<>Zaggr<67>r<>Zall_barsrrr<>r<>rsrsrt<00>,get_all_products_transport_dashboard_by_codes<> <04> <04>  <04>      
2026-01-18 11:29:19 +03:30

<02>   <06> <02><04>  <06>  <02>   <06>  

<02>   <06>  <02><04>  <06>  
<02><02> 
   <0C><06>
2026-02-01 08:26:08 +03:30
<06> <04>r )<29>rr<>r<>r<><00>thisrr<><00> collectionsr<00>iorr<>r<>rlr<>Zbs4r<00>django.db.modelsrrrr r
2026-01-18 11:29:19 +03:30
r r r <00> django.httpr<00>django.views.decorators.csrfr<00>rest_frameworkrr<00>rest_framework.decoratorsrrZrest_framework.permissionsr<00>rest_framework.responser<00>rest_framework.viewsr<00>app.cityandprovincerrZapp.filtersetsrrrrrrrr r!r"r#r$r%r&<00>
2026-02-01 08:26:08 +03:30
app.helperr'r(r)Z
2026-02-01 08:35:33 +03:30
app.modelsr*r+r,r-r.r/r0r1r2r3r4r5r6r7Zapp.serializersr8r9r:r;r<r=r>r?r@rArBrCrDrErFrGrHrIrJrKrLrMrNrOrPrQrRrSrT<00>authentication.modelsrV<00>helpersrWrXrYrZ<00> ModelViewSetr[r<>r r rr3rCrIr<>r<>r<>r<>r<>r<>r<>r<>r<>rr;rFrTrarvr<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>rPrerwr{rr<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>rrrr rsrsrsrt<00><module>sT    (     @@| tsE  );C8]!+{KDQ&'6Ga|jf/  &"%   M&iR:':3/6