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

956 lines
119 KiB
Plaintext
Raw Normal View History

2026-01-18 11:29:19 +03:30
a
5Zie<00>@sZddlZddlZddlZddlZddlmZddlZddlmZddl m
Z
ddl Z ddl Z ddl Z ddlZddlmZddlmZmZmZmZmZmZmZmZddlmZddlmZdd lmZm Z dd
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>ddl?m@Z@mAZAmBZBmCZCmDZDmEZEmFZFmGZGmHZHmIZImJZJmKZKmLZLmMZMddlNmOZOmPZPmQZQmRZRmSZSmTZTmUZUmVZVmWZWmXZXmYZYmZZZm[Z[m\Z\m]Z]m^Z^m_Z_m`Z`maZambZbmcZcmdZdmeZemfZfmgZgmhZhmiZimjZjmkZkddllmmZmddlnmoZompZpmqZqmrZrGdd<16>dejs<6A>ZtGdd<18>dejs<6A>Zue"dg<01>e#e%g<01>edd<1B><00><01><01>Zve"dg<01>e#e%g<01>edd<1D><00><01><01>ZwGdd<1F>dejs<6A>ZxGd d!<21>d!ejs<6A>ZyGd"d#<23>d#ejs<6A>ZzGd$d%<25>d%ejs<6A>Z{Gd&d'<27>d'ejs<6A>Z|Gd(d)<29>d)ejs<6A>Z}Gd*d+<2B>d+ejs<6A>Z~Gd,d-<2D>d-ejs<6A>ZGd.d/<2F>d/ejs<6A>Z<>Gd0d1<64>d1ejs<6A>Z<>Gd2d3<64>d3ejs<6A>Z<>Gd4d5<64>d5ejs<6A>Z<>Gd6d7<64>d7ejs<6A>Z<>Gd8d9<64>d9ejs<6A>Z<>Gd:d;<3B>d;ejs<6A>Z<>Gd<d=<3D>d=ejs<6A>Z<>Gd>d?<3F>d?ejs<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>dLejs<6A>Z<>GdMdN<64>dNejs<6A>Z<>e"dBg<01>e#e%g<01>edOdP<64><00><01><01>Z<>GdQdR<64>dRejs<6A>Z<>GdSdT<64>dTejs<6A>Z<>dUZ<55>dVZ<56>dWZ<57>dXZ<58>dYdZ<64>Z<>Gd[d\<5C>d\ejs<6A>Z<>e"dBg<01>e#e%g<01>ed]d^<5E><00><01><01>Z<>Gd_d`<60>d`ejs<6A>Z<>Gdadb<64>dbejs<6A>Z<>Gdcdd<64>dde)<29>Z<>Gdedf<64>dfejs<6A>Z<>Gdgdh<64>dhe)<29>Z<>Gdidj<64>djejs<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~ejs<6A>Z<>Gdd<7F><64>d<>ejs<6A>Z<>e"dg<01>e#e%g<01>ed<>d<EFBFBD><64><00><01><01>Z<>Gd<>d<EFBFBD><64>d<>ejs<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)<02>
SSLAdapter<EFBFBD>get_hatching_permit_code)<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
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
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>kwargsra<00>poultryZregistered_poultry<72>key<65>value<75>rr<00>!D:\mnpc\Rasadyar_RSI\app\views.pyri5s
zPoultryViewSet.createc Os<>tjjdd<02>}|j<03>d<03>}|r4|<04>t|jjj|<05><02>}|j <09>dd<00>}|rRt
|<06>|j _ |<00> |<04>}|dur~|j|dd<06>}|<00>|j<10>S|j|dd<06>}t|jtjd<07>S)NF<4E><01>trashrq<00> page_sizeT<65><01>manyr`)r)rcrd<00>GETrbrW<00>filterset_class<73>Meta<74>fields<64> query_params<6D>int<6E>pagination_classrv<00>paginate_queryset<65>get_serializer<65>get_paginated_responsera<00>serializer_classrr<00> HTTP_200_OK) rkrlrmrnrorqrv<00>page<67>
serializerrrrrrs<00>listCs <0E> 
 zPoultryViewSet.listN)<11>__name__<5F>
__module__<EFBFBD> __qualname__r)rc<00>all<6C>querysetr7r<>rrrVrrrzrir<>rrrrrrrsrZ.s
rZc@sLeZdZejjdd<02><01>ddddd<07><05>d<03>Ze Z
e gZ e Zdd <09>Zd
d <0B>Zd S) <0A>PoultryDashboardViewSetFrt<00>idrU<00>City<74>LocationIdProvince<63>LocationIdCityc
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
|<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__isnullrt<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>rd<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__inru<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)ryrbr<>rdr,rc<00>striprWrzr{r|<00> aggregaterrr r-r<00>count)
rkrlr<>r<>r<>Zbase_poultriesZbase_hatchingsZhatchings_dataZtransporting_dataZlocation_statsrrrrrs<00>_optimized_db_hits<74>sb       <0E><12> <02><10>


<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
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_percentr`u(خطا در پردازش داده‌ها)<02>error<6F>details) r<>rb<00>roundrrr<><00> Exception<6F>str<74>HTTP_500_INTERNAL_SERVER_ERROR) rkrlrmrnrar<>r<>r^<00>errrrrsr<><00>sR
<02><10><14><02>  <04>zPoultryDashboardViewSet.listN)r<>r<>r<>r)rcrd<00>only<6C>order_byr<79>r7r<>rrrrzr<>r<>rrrrrrrsr<><00>s
<EFBFBD><02>:r<>ryc Cs<>ttjjddd<03><02>}tjjddd|d<07><04>d<08>jtd <09>td
<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} |
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<>ruZProvinceName__inr<6E>r<>r<><00>r<>r<><00>r<>)r<>r<><00>hatching__ProvinceNamer<65><00>r<>cSsi|]}|d|<01>qSr<>rr<00><02>.0<EFBFBD>hrrrrrs<00>
<dictcomp>8<00>z/all_province_detail_for_map.<locals>.<dictcomp>cSsi|]}|d|<01>qSr<>rrr<>rrrrrsr<>9r<>cSsi|]}|d|<01>qS<00>r<>rr)r<><00>trrrrrsr<>: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>rr<00><01>xrrrrrs<00><lambda>Vr<>z-all_province_detail_for_map.<locals>.<lambda><3E>rp<00>reverse)r<>rUrc<00> values_listr,rd<00>values<65>annotaterr-rb<00>appendr<64><00>sortedr)rl<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_resultsrrrrrs<00>all_province_detail_for_maps<><02><02><06>
<02><02><06><02><02><02> <06>  <06>
<EFBFBD><06>
<EFBFBD><02>
<02>r
c
Cs<>tjjdddd<04>jtd<05>td<06>d<07>}tjjdddd<04>jtd<06>d <09>}tjjtjjdddd<04>dd
<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<>rur<>r<>r<>r<>)r<>r<>r<>r<>r<>rr<>r<>r<>r<>)r<>r<>r<>r<>r<>r<>)r,rcrdr<>rr-r<>r)
rl<00>total_hatchingZ total_activeZtotal_transportingr<67>r r<>Zleft_over_percentr<74>r^rrrrrs<00>!dashboard_province_detail_for_map]sL<02><06> <02><06><02><02><06>   
<02> r c @s^eZdZejjdd<02><01>ddddddd d
d d <0C>
<EFBFBD>d<03>Ze Z
e gZ e Zd d<0E>Zdd<10>Zdd<12>ZdS)<14>HatchingDashboardViewSetFrtr<><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>}
|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
| 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__containsFrt<00>ror<>)ryrb<00>datetime<6D>strptime<6D>daterd<00>
ValueErrorr~r)rcr rer<>rWrzr{r|) rkr<>rlrr<>rr<>r<>rr<>rrrorrrrrs<00>_apply_filters<72>sR              <02><08><02>
 <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
d<11>t d<11>d<13>}i|<03>|<04>S)NZtransportingdetail_setFrt)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-rcrdr<>rrr rr
r )rkrrZ
main_statsZ
bars_statsrrrrrs<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}
|<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
<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_ager`)rr<>r%rbrero<00>UnitName<6D>Mobile<6C> FirstName<6D>LastName<6D>UserNamer<65>rrr<>)rkrlrmrnZfiltered_hatchings<67>metricsr<73>r<>r'r(r)r*r+r^rrrrrsr<>Bs<>
    <06><06><06>
<06><10>
<06><10><06><02><02><06><02> 

<EFBFBD>*zHatchingDashboardViewSet.listN)r<>r<>r<>r,rcrdr<>r<>r<>r:r<>rrrrzrr%r<>rrrrrrrsr <00>s

<EFBFBD><02>*%r c@s,eZdZej<04><05>ZeZe gZ
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>|
| |
| t| <09>| d<15>} t| tjd<16>S)NFrtrrrr<00><02>Date__date__gte<74>Date__date__lter<65>r<>roTr<54>)<02>pk__inru<00>Zhatching__isnullru<00> HatchingCount<6E><01>totalr:r<00>EvacuationCountr<74>)ror<00>hatching_quantity<74>evacuation_countZhatching_remain_quantity<74>bars<72> bars_quantityr`)r*rcrdr<>ryrbrrr<>rr<>rWrzr{r|r)r<>r+r<>r<00>lenrrr<>)rkrlrmrnrrrr<>ro<00>
transportsr<r=r?r^rrrrrsr<><00>s6   <0E><02> z$PoultryHatchingDashboardViewSet.listN)r<>r<>r<>r*rcr<>r<>r8r<>rrrrzr<>rrrrrrrsr2<00>s

r2c@s8eZdZej<04><05>ZeZe gZ
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|
| _ | <09><08>qt ddit jd<08>S) Nr[<00> DesCertId<49>rCr\r]r^r_r`)ra<00>popr*rcrdrerfrgrhrir)rorrrj) rkrlrmrnra<00> hatching_dataZregistered_hatchingrprq<00>hatchingrorrrrrsri<00>s
 

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|
jtjd <0A>S)NFrtrrrrr3r<>r<>rvTrwr`)r*rcrdr<>ryrbrrr<>rr<>rWrzr{r|r}r~rrvr<>r<>r<>rar<>rrr<>) rkrlrmrnrrrr<>rvr<>r<>rrrrrsr<><00>s,   <0E> 
 zPoultryHatchingViewSet.listN)r<>r<>r<>r*rcr<>r<>r8r<>rrrVrrrzrir<>rrrrrrrsrB<00>s
rBc@sDeZdZejjdd<02>ZeZe gZ
e Z e Zdd<04>Zdd<06>Zdd<08>Zd S)
<EFBFBD>HatchingsViewSetFrtc 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>agerrrrr4r5rrZ
Age__exact<EFBFBD>CityName__icontains<6E>ProvinceName__icontains)rlryrbrrr<>rr~) rk<00>filtersrr<>r<>rIrrrrrrrrs<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
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>
Transportsr5<00> RequestCode<64>rV<00>1r<31>rrrr<>r<><00>Period<6F>L<00><01>days>"<00>MoDate<74> IsDeleted<65>
ReportDate<EFBFBD>
PartIdCode<EFBFBD>MoReason<6F> AllowInsert<72>StringId<49> MoDateShamsi<73>MoEndDay<61>
MoStartDay<EFBFBD> ErrorCode<64> PageTitle<6C>RegDate<74> LogTableName<6D>RegDateShamsiOnlyTime<6D>ReportDateShamsi<73>MenuUserAccess<73> IsPersisted<65>
MoReportId<EFBFBD> RequestId<49>
ExternalId<EFBFBD> AllowUpdate<74> ReportStatus<75>GridContainerParametersModel<65> GoodCount<6E> MoReportSubId<49> LogTableAlias<61> RegDateShamsi<73>ReportTypeString<6E>RegDateShamsiWithTime<6D>
ReportType<EFBFBD>ModalCss<73>Message<67>MenuUserAccessIdcs&i|]\}}|<01>vs|dkr||<02>qS<00><01>Idrr<00>r<><00>k<>v<>Zallowed_evacuation_fieldsrrrsr<>Hs<10>z+HatchingsViewSet.create.<locals>.<dictcomp>r<>rqF)<02>ExternalId__inrucSsi|] }|j|<01>qSrr<00>rq<00>r<><00>evrrrrrsr<>Xr<>rurG<00><01> update_fields<64> TrackingCode<64>r<><00>r`ruT<>rurG<00>تایید تخلیه)<01>TrackingStatusDescriptionr<6E>r9r:r<><00><01>avg_ager<65><00>2r<32>uتعداد حمل صفر استr^r_r`)3r~rarbrEr,rcrdre<00>printrfrgrhr)r<><00>lastrYrirr<00> timedelta<74> ArchiveDaterorr5rurG<00> bulk_creater-r.<00> DesPartIdCoderUr<>r<><00>
ProvinceId<EFBFBD>Outrr\r<>r<>rrr<>r<>r<>r<><00> PedigreeNamer<00>samasat_discharge_percentagerrrj<00>rkrlrmrn<00>BREED_STANDARDIZATIONr><00>evacuation_detailsrGrprqror<00>periodZcleaned_payloadZ external_ids<64>evacuation_data<74>
clean_data<EFBFBD> external_idZ existing_mapZ existing_qsr<73><00>
evacuation<EFBFBD>transport_data<74> transport<72>
kill_houser?Zave_agerrr<>rsris<><02> 
 
 

 
<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
<EFBFBD>} t| jtjd <0B>S) N<>state<74>pendingr<67>r<>)ZAge__gtr<74>r<>rvTrwr`)rlryrbr,rcrdrMr<>rWrzr{r|r}r~rrvr<>r>r<>rarrr<>)
rkrlrmrnr<>rr<>rvr<>r<>rrrrrsr<><00>s*  <0E> 
   zHatchingsViewSet.listN)r<>r<>r<>r,rcrdr<>r=r<>rrrVrrrzrMrir<>rrrrrrrsrH<00>srHc@s<eZdZejjdd<02>ZeZe gZ
e Z e Zdd<04>Zdd<06>ZdS)<08>HatchingsCustomViewSetFrtc 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
<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|
|_|<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)+NrNrOrPrQrRrSrUr5rVrWrrrr<>r<>rYrZr[>"r]r^r_r`rarbrcrdrerfrgrhrirjrkrlrmrnrorprqrrrsrtrurvrwrxryrzr{r|r}r~cs&i|]\}}|<01>vs|dkr||<02>qSrrrr<>r<>rrrsr<><00>s<10>z1HatchingsCustomViewSet.create.<locals>.<dictcomp>r<>rq)r<>cSsi|] }|j|<01>qSrrr<>r<>rrrrrsr<><00>r<>rGr<>r<>Fr<46>Tr<54>r<>r9r:rr<>r<>r<>r^r_r`)/rarbrEr,rcrdrerfrgrhr)r<>r<>rYrirrr<>r<>rorr5rGr<>r-r.r<>rUr<>r<>r<>r<>rr\r<>r<>rr~rr<>r<>r<>r<>rrrrjr<>rrr<>rsri<00>s<><02>
 
 

 
<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
t j d<04>S)NrvTrwr`)<0E>filter_queryset<65> get_querysetr}rbr~rrvr<>r>r<>rarrr<>)rkrlrmrnr<>rvr<>r<>rrrrrsr<>2s  
   zHatchingsCustomViewSet.listN)r<>r<>r<>r,rcrdr<>r=r<>rrrVrr"rzrir<>rrrrrrrsr<><00>s|r<>c@s(eZdZej<04><05>ZeZe gZ
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
d<08>S) Nr[r`<00>r`u ترکیبیr<DB8C>r^r_r`) rarEr*rcrdrer<>rhrrrj)rkrlrmrnrarFrGrrrrrsriFs
 

z2PoultryHatchingForUpdatePedigreeNameViewSet.createN) r<>r<>r<>r*rcr<>r<>r8r<>rrrirrrrrrrsr<>As
r<>c@s8eZdZej<04><05>ZeZe gZ
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
jj|dd<05><01><05>} | r| |_ |<06><08>qt ddit jd<08>S) Nr[r<>r<><00>CertIdrDr^r_r`)rarEr+rcrdrerfrgrhrir*rGrrrj)
rkrlrmrnrar<>r<>rprqrGrrrrrsri]s
 

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|
jtjd <0A>S)NFr7<00> -issue_daterrr)Zreside_date__date__gteZreside_date__date__lter<65>r<>rvTrwr`)r+rcrdr<>ryrbrrr<>rr<>rWrzr{r|r}r~rrvr<>r<>r<>rar<>rrr<>) rkrlrmrnrArrr<>rvr<>r<>rrrrrsr<>ps0<02>   <0E> 
 z%TransportingChickenDetailViewSet.listN)r<>r<>r<>r+rcr<>r<>r9r<>rrrVrrrzrir<>rrrrrrrsr<>Vs
r<>c@s,eZdZej<04><05>ZeZe gZ
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
d <0B>} t| j tjd <0C>S) NFrtr<>r<>rIZHatchingAge__exact<63>LocationNameCity__icontains<6E>LocationNameProvince__icontainsrvTrwr`)r*rcrdryrbr}r~rrvr<>r<>r<>rar<>rrr<>) rkrlrmrnrr<>r<>rIrLrvr<>r<>rrrrrsr<><00>s*    
 zHatchingViewSet.listN)r<>r<>r<>r*rcr<>r<>r:r<>rrrVrr<>rrrrrrrsr<><00>s

r<>c@sHeZdZejjdd<02>ZeZe gZ
e Z dd<04>Z dd<06>Zdd<08>Zd d
<EFBFBD>Zd S) <0C>TransportingDashboardViewSetFrtc 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
<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 |
<EFBFBD><02>}|S)Nrrrrr<>r<>r<>r<><00>&hatching__poultry__Province__icontainsrV<00>hatching__RequestCoder`r<>r<>) ryrbrrrrrdr<>rWrzr{r|) rkr<>rlrLrrr<>r<>rVr<>r<>rrrrrsr<00>s6   <0E>z+TransportingDashboardViewSet._apply_filtersc
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
j | <09><02>}|S)NrrrF<><03> date__gte<74> date__lte<74> date__isnullr<6C><00>Zdestination_city__icontainsr<73>r<><00>Zdestination_province__icontainsrV<00>r<>r`<00><01>jihadi_destinationr<6E>) ryrbrrrrdrr<>rWr&r{r|)
rkr<>rlrrr<>r<>rVr<>r<>rrrrrs<00>_apply_filters_all_productss<  <02>
      <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
<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 rb<00>update)rkr<>Zall_products_queryset<65>statsZall_products_statsr<73>rrrrrsr%9s:<10>
<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
d<10>WSt y<>} z"tdt | <09>it j d<10>WYd} ~ Sd} ~ 00dS)NF<4E>"مرغ زنده -جهت كشتار<D8A7>ru<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_percentr`r<>)rr<>r4rcrdr<>r%r<>rrr<>r<>r<>r<>)
rkrlrmrnZ filtered_bars<72>query_all_productsZfiltered_all_productsr1r^r<>rrrrrsr<>\s0<02>  


 
 <0C> 
<04>z!TransportingDashboardViewSet.listN)r<>r<>r<>r-rcrdr<>r@r<>rrrrzrr<>r%r<>rrrrrrrsr<><00>s#%#r<>c@s4eZdZejjdd<02>ZeZe gZ
e Z e Zdd<04>ZdS)<06>TransportingDetailViewSetFrtcOsfi}|j<00>d<01>}|j<00>d<02>}|j<00>d<03>}|j<00>d<04>}|j<00>d<05>} |j<00>d<06>}
|
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|
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)/Nr`rVrrr<>r<>r<>rr4r5r<>r<>r<>r<>r<>ruF<>-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>
isinstancerrr<><00>min<69><01>objrrrrrs<00> get_sort_date<74>s
z5TransportingDetailViewSet.list.<locals>.get_sort_date<74> transporting<6E> all_productscSs|dS<00>Nrrrr<>rrrrrsr<><00>r<>z0TransportingDetailViewSet.list.<locals>.<lambda>Tr<54>cSsg|]\}}}|<02>qSrrrr<00>r<><00>_r<5F>rrrrrs<00>
<listcomp><3E>r<>z2TransportingDetailViewSet.list.<locals>.<listcomp>rvrrl<00><01>contextr<74>r<><00> DesUnitNamerUr<>r<>r`)-ryrbrrr<>rr-rcrdr<>r4r<>rWrzr{r|r&r<>r<00>sortr}r~rrvr<>r<>rArarPr<>r<><00>combine<6E>timer<65>r<><00>trackingr<67><00> destination<6F>destination_province<63>destination_cityr<79>r<>rrr<>)rkrlrmrnrLr`rVrrr<>r<>r<>rAr<>Ztransports_list<73>all_products_listr<74><00> combined_listr<74><00>sorted_objectsrv<00> paginatorr<72><00>serialized_datar<61>ra<00>
date_valuerrrrrsr<><00>s<>        <02>   <02>  <0E> <0C>   
 *







 *






zTransportingDetailViewSet.listN)r<>r<>r<>r-rcrdr<>rAr<>rrrVrrrzr<>rrrrrrrsr<>}s r<>c@s,eZdZej<04><05>ZeZe gZ
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| |
| | d <0A>tjd<0E>S)Nr<4E>r<>rqruFZLocationNameCity__inZLocationNameProvince__inr;<00>r<><00> column_name<6D>aggregate_funcr8ror<>)<04>evacuation_sumZhatching_count<6E> total_poultryrr`)ryrbr*rcrdrWrzr{r|rXrrr<>r<>rrr<>) rkrlrmrnr<>r<>rqrLrr<>Ztotal_poultry_hatchingr<67>Ztotal_leftoverrrrrrsr<> s0   

<0E><02><04><04>z HatchingCalculationsViewSet.listN)r<>r<>r<>r*rcr<>r<>r;r<>rrrrzr<>rrrrrrrsr<>s

r<>c@s0eZdZej<04><05>ZeZe gZ
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|
d d<12>} |<00>| j<14>S|j|d d<12>} t| jtjd<13>S)NFrtr<>r<>rr<>r<>r)rruroTr<54>)r6)r<>)r<>r<>rvrwr`)r)rcrdr<>ryrbr,r<>r<>rWrzr{r|r}r~rrvr<>r<>r<>rar<>rrr<>) rkrlrmrnror<>rr<>r<>rvr<>r<>rrrrrsr<>Bs:    <02><04>  <0E> 
 zPoultryInfoViewSet.listN)r<>r<>r<>r)rcr<>r<>r<r<>rrrVrrrzr<>rrrrrrrsr<>;s 
r<>c@sHeZdZejjdd<02><01>ddddd<07><05>d<03>Ze Z
e gZ e ZeZdd <09>Zd
S) <0B>TotalKillHousesViewSetFrtr<>r`r,rUr<>c%
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
|
<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>ruFr<46>rUr<>r<>r<>r,r<>rvr`Tr<54>rr<00><02>DesPartIdCode__inrur<>r<>r<>rrr3r<>r<>r<><00>r:<00> input_total<61> output_totalr<6C>r<>r<>r<><00><03>jihadi_destination__inrur<>r<>r<>r<>rr<>r<>r<>cSsi|]}|d|<01>qS<00>r<>rr<00>r<><00>itemrrrrrsr<><00>r<>z/TotalKillHousesViewSet.list.<locals>.<dictcomp>cSsi|]}|d|<01>qSr<>rrrrrrrrsr<><00>r<>r<>rr:r<>r<>r<>r<>r<>r<>)r><00>total_bars_quantity<74>
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)rl<00>
info_cache<EFBFBD>rxr<>r`)&ryrbr<>rdr<>rWrzr{r|r}r~rrvr<>r<>r<>r<>r-rcr<>rrr<>rrrrr rr4r<>r<>r<>rar<>rrr<>)%rkrlrmrnr<>rLr<>r<><00>kill_houses_name<6D> kill_housesrvr<>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<>rrrrrsr<>ms<> <0E> 
<02><08>
<06> <02>
<EFBFBD><02>
<06> 
        
<02>
 zTotalKillHousesViewSet.listN)r<>r<>r<>r.rcrdr<>r<>r<>rBr<>rrrVrr rzr<>rrrrrrrsr<>fs "r<>c@s0eZdZejjdddd<02>ZeZe gZ
dd<04>Z dS)<06>HatchingAnalysisPedigreeViewSetF<74>ru<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>}
|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
| | ||||||||||dA<64> }#t|#tjdB<64>S)CN<43>pedigreer<65>r<>rrr<>rr4r5rJrK<00>PedigreeName__icontains<6E>activer<65>r<>r<>roTr<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>breedsrrrrrrrrrsr<> r<>z6HatchingAnalysisPedigreeViewSet.list.<locals>.<lambda>r(r*)rr(r)cSs$g|]\}}||d|dd<02><03>qS)r)r*)r<>Zhatching_sum_allr*rr)r<>r<>rrrrrrsr<>-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<>rrrrrrrrrsr<>=s<02>z8HatchingAnalysisPedigreeViewSet.list.<locals>.<dictcomp>cSsi|]}|d|dpd<02>qS)r<>r rrrrrrrrrsr<>As<02>r9r: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_percentr`)ryrbrrr<>rr<>rdrrrr<>rrr~rrrfr<>r<>rrr<>)$rkrlrmrnrLrr<>r<>rrr<>rr.r/r0r1r2r3rr4r5Zhatchings_by_provinceZprovinces_dictr<74>r(r6r7r8Zevacuation_dictrr Zevacuation_hatching_percentr<74>Zpercent_by_pedigreeZpercent_by_totalr^rrrrrsr<><00>s<>      


<EFBFBD><02>
<06><02>
<06><02><02><02><02><06><02>&<06><02><06><02> <06><04>  <02><06>
<06><02>
<06><02><02><02>  <02> <02>z$HatchingAnalysisPedigreeViewSet.listN<74> r<>r<>r<>r,rcrdr<>rCr<>rrr<>rrrrrrrsr<00>src@s.eZdZejjddd<02>ZeZe gZ
dd<04>Z dS)<06>HatchingAnalysisProvinceViewF)rurcOs<>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
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<>| |
| | | |d(<28>}t|tjd)<29>S)*Nr<4E>rrrr4r5rr<>r<>F)Z&transport_hatching__GoodAmount__isnullr<6C>r-<00>Z good_amount<6E> -good_amountr<74>rr!r<>r"r#rr%r'roTr<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_percentr`)ryrbrrr<>rr<>rdrrrr<>rrr~r<>rrrr<>)rkrlrmrnrLr<>rrrr>r?rArBr@rZ province_datarCr=r<><00>percentr^rrrrrsr<>ls<>   
 <02><06><02>
<06><02><02><02><06><02>

<EFBFBD><02>&
<06><02><02> <02>z!HatchingAnalysisProvinceView.listN) r<>r<>r<>r,rcrdr<>rDr<>rrr<>rrrrrrrsr:gsr:c@s4eZdZejjddd<02><02>d<03>ZeZ e
gZ dd<05>Z dS)<07>"TransportingReportDashboardViewSetF<74>rur<>rGc
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 |
| ||| ||<08><13>|d <20> }t|tjd!<21>S)"Nrr<00>locationrr4r5r<>r<>r<>r%r&r<>r)r<>r<>)Z minimum_ageZ maximum_ageZhatching__ChickCountSum)<01>
good_countrHrUr'rr!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_provincer`)ryrbrrr<>rr<>rdr r<>rr
r rrrr<>r~rer<>rrr<>)rkrlrmrnrLrrrGrArJrKrOrLrIrMrPrNrQr^rrrrrsr<><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-rcrd<00>select_relatedr<64>rEr<>rrr<>rrrrrrrsrE<00>srEc@s.eZdZejjddd<02>ZeZe gZ
dd<04>Z dS)<06>TransportingAnalysisViewSetFrFcOs<>|j}|<04>d<01>jtd<02>d<03>}dd<05>|D<00>}|<04>dd<06>jtd<02>d<03>}i}i} i}
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
|t j d<12>S)NrUr<>)<01>total_good_amountcSsi|]}|d|d<00>qS)rUrTrrrrrrrrsr<><00>r<>z4TransportingAnalysisViewSet.list.<locals>.<dictcomp>r<>rTTr<54>)<02> unit_namerTcSs|dS<00>NrTrrr<>rrrrrsr<>+r<>z2TransportingAnalysisViewSet.list.<locals>.<lambda><3E>rpcSs|dSrVrrr<>rrrrrsr<>,r<>rUr)
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_namer`) r<>rrrrdr<00>keysrb<00>maxr<78>rrr<>)rkrlrmrn<00>qsrXZtotal_killing_dictZtotal_good_amount_in_and_outrYrZZmax_unit_name_in_and_outZmin_unit_name_in_and_outrr<><00>amountrUZall_dataZ unit_lookuprTr^Z out_unitsZmax_unitZmin_unitZ max_unit_nameZmax_unit_amountZ min_unit_nameZmin_unit_amountrrrrrsr<><00>sz <06>
<06>
<02>
  



<08> z TransportingAnalysisViewSet.listN) r<>r<>r<>r-rcrdr<>r@r<>rrr<>rrrrrrrsrS<00>srScCs<>|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
d <09>}t ||<04> <0C>d
<EFBFBD>t jd <0B>S) NrrruFrZissue_date__date__gteZissue_date__date__lter<65>r<>)<02> total_amountZlen_transportsr`)ryrbrrr<>rr+rcrdrXrrr<>rr<>)rlrrrLrAr_rrrrrs<00>get_transport_to_killGs  <06><04>r`<00>POSTc Cs<>|jd<00><01>}tjt|<01>d<02>}|j}g}t|jdd<04><01>D]t\}}|dks8|durRq8|d}|d}|d} |d}
|d } tj j
|d
d <0B>s8t|||
<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>)r`r,rUr<>r<>)<0E>FILES<45>read<61>openpyxl<78> load_workbookrr<00> enumerate<74> iter_rowsr.rcrd<00>rstriprhr) rlrb<00>wb_obj<62>sheet<65>list1<74>i<>rowr`r,r<>rUZ Province_idr<64>rrrrrs<00>add_kill_house[s,<02>
rucCs<>i}|j<00>d<01>}|dkr"d|d<n6|dkr4d|d<n$|dkrFd|d<ntd d
itjd <0B>Stjjfi|<01>d d d<0E><02><01>}t|dd<10>j }t|tj
d <0B>S)Nr<4E><00>ha<68>
همدانr<D986><00>ma<6D>
مرکزی<D8B2>ku<6B>کردستانr^uشهر اشتباه استr`F<><46>)rur<>Trw) ryrbrr<00>HTTP_403_FORBIDDENr,rcrdr?rar<>)rlrLr<>rG<00>ser_datarrrrrs<00>update_hatching}s 


rc Cs<>dddddddddddd<06> }tjjdt|<01><04><00>d<08><02>d d
<EFBFBD>}d }|D]2}|j}||vrD|||_|jd
gd <0C>|d 7}qDtd|t |<02>|d|<03>dt |<02>|<00>d<11>d<12><04>S)NrNrOrPrQrRrSF)ruZPedigreeName__inr<6E>r<>rr<>r<><00>successzUpdated z records. Skipped <20>.)rZupdated_recordsZskipped_records<64>message)
r,rcrdr<>r[r<>r<>rhrr@)rlr<>r<00> updated_countrG<00> original_namerrrrrs<00>
get_breeds<EFBFBD>s><02>
<EFBFBD><04>


<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
<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
<EFBFBD>nd|<14>rJ|<14>d9<64>ndd<12> <0B>S):Nr<4E>rrruFr<46>rUr<>r<>r<>r,r<>r<>r`Tr<54>r) ZkillHouseCountr>rZtotal_bars_output_countZtotal_bars_input_countrr Ztop_kill_house_nameZtop_kill_house_amountZlow_kill_house_nameZlow_kill_house_amountr<74>r<>r<>r<>rr<>r<>r<>r<>r<>rr<>rr3r<><00>r_cSsi|]}|d|dpd<02>qS)r<>r_rrr)r<><00>statrrrrrsr<> r<>z.dashboard_total_kill_house.<locals>.<dictcomp>r_cSsg|]\}}||d<00><02>qS))r<>r_rrr<>rrrrrsr<>
s<06>z.dashboard_total_kill_house.<locals>.<listcomp>cSs|dS)Nr<4E>rrr<>rrrrrsr<> r<>z,dashboard_total_kill_house.<locals>.<lambda>r<><00><><EFBFBD><EFBFBD><EFBFBD>cSsi|] }|j|<01>qSrrr<>)r<><00>khrrrrrsr<> r<>)<01>PartIdCode__in)r<>r^r<>r<>r<>r<>r<>r:r<>r<>r<>r<>r^)r ryrbr.rcrdr<>r<>rWr{r|r<>r<>rr-r<>r4rrr<>rrrrrrfr,r<>r rr@)#rlrzr<>rrrLr<>r<>r rrr><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<>rrrrrs<00>dashboard_total_kill_house<73>s<>    <0C><02><02>
<EFBFBD><02>
<06>
<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>}
|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
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<>rr4r5rJrKrrr<>r<>F)Z'transport_hatching__DesUnitName__isnullZtransport_hatching__DesUnitNamer<65>r-r<>z -total_amount)Zpoultry__UnitName__isnullZpoultry__UnitNamer<65>rrr<>r+r,r_rrWrr<>)r<>r_<00> pedigrees)r\r<>)r<>Ztotal_chick_countr<74>)r<>r<>r<>)r<><00>hatching_poultryZevacuation_poultry<72>overviewr`)ryrbrrr<>rr<>rdrrrr<>rr~r<>rr\r<>rrr<>)&rkrlrmrnrLrr<>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_nameraZpoultry_unit_nameZchick_count_sumZmax_poultry_unit_nameZmin_poultry_unit_name<6D>infor<6F>Zmax_evacuation_total_poultryZmin_evacuation_total_poultryr<79>r^rrrrrsr<>X s<>       <04><06><02><02><06><02> <04><06><02><06><06><04><06><06><04><06><06><04><04>(<04>z$HatchingAnalysisOverviewViewSet.listNr9rrrrrrrsr<>Q sr<>c@s4eZdZejjdd<02>ZeZe gZ
e Z e Zdd<04>ZdS)<06>TransportingDetailCustomViewSetFrtc 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<>rvTrwr`)r<>r<>ryrbr<>rdrWrzr{r|r}r~rrvr<>r<>r<>rar<>rrr<>) rkrlrmrnrAr<>rvr<>r<>rrrrrsr<><00> s  <0E> 
 z$TransportingDetailCustomViewSet.listN)r<>r<>r<>r-rcrdr<>rAr<>rrrVrr!rzr<>rrrrrrrsr<><00> s r<>c Cshddi}ddi}ddi}|j<00>d<03>}|r<>|dkrBd|d<d|d<nD|dkr\d |d<d |d<n*|d
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|
<EFBFBD>S)NruFr<46>rvrw<00>poultry__LocationNameProvinceZpoultry__Provincerxryrzr{<00>
بوشهرr<00>Nonerrr4r5<00>r<>uبارگیری<D8B1>r<><00>TrackingStatusDescription__in<69><01>TrackingCode__inr<6E>r<>Tr<54>rw)ryrbrrr<>rr,rcrdr r-<00>excluderar<>r<>r<>rFr) rlrLZfilters_province<63> filters_barr<72>rrro<00>bar<61>quarantine_coder~rrrrrs<00>send_different_bar<61> sF 


<02><02>$<04><02>r<>c@s4eZdZejjdd<02>ZeZe gZ
e Z e Zdd<04>ZdS)<06>ApiSendDifferentBarFrtcOs<>ddi}ddi}|j<00>d<03>}|dkr.d|d<n,|dkr@d|d<n|d krRd
|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|
dd<1D>j }t|<11>S)NruFr<46>rvrwr<>rxryrzr{r<>rr<>rrr4r5r<>r<>r<>r<>r<>Tr<54>r<>rqr<>rvrw)ryrbrrr<>rr,rcrdr-r<>rar<>r<>r<>r<>rWrzr{r|r}r~rrvr<>r<>r<>rFr)rkrlrmrnrLr<>r<>rrror<>r<>r<>rqrvr<>r<>r~rrrrrsr<>!
sV 


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

 zApiSendDifferentBar.listN<74>r<>r<>r<>r-rcrdr<>rFr<>rrrVrrrzr<>rrrrrrrsr<>
s r<>c@s<eZdZejjdd<02>ZeZe gZ
dd<04>Z dd<06>Z dd<08>Z d S)
<EFBFBD>ApkInfoViewSetFrtcCs
|j<00><01>S<00>N<>r<>re<00>rkrrrrrs<00>
get_objectU
szApkInfoViewSet.get_objectcOs,tjjdd<02><01><03>}|<00>|<04>}t|jtjd<03>S<00>NFrtr`) r/rcrdrer<>rrarr<><00>rkrlrmrn<00>instancer<65>rrrrrsr<>X
s
zApkInfoViewSet.listcOsHtjjdd<02><01><03>}|j||jdd<04>}|jdd<05>|<05><07>t|jt j
d<06>S<00>NFrtT)ra<00>partial)<01>raise_exceptionr`) r/rcrdrer<>ra<00>is_validrhrrr<>r<>rrrrrsr<>]
s
 zApkInfoViewSet.updateN)r<>r<>r<>r/rcrdr<>rGr<>rrr<>r<>r<>rrrrrrrsr<>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<>rrrrrs<00>upload_to_liarak
s<02><06>r<>c@sDeZdZejjdd<02>ZeZe gZ
dd<04>Z dd<06>Z dd<08>Z d d
<EFBFBD>Zd S) <0C>RasadyarAppInfoViewSetFrtcCs
|j<00><01>Sr<>r<>r<>rrrrrsr<><00>
sz!RasadyarAppInfoViewSet.get_objectcOs:tjjdd<02><01><03>}|s tj<01><04>}|<00>|<04>}t|jtj d<03>Sr<>)
r6rcrdrerir<>rrarr<>r<>rrrrrsr<><00>
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
<EFBFBD>S) NFrtrbr&rI)r<>r<>r<>r<>r`)r6rcrdreri<00>join<69>random<6F>choices<65>string<6E>ascii_uppercase<73>digitsrbr<><00>splitr<74>rbrar<>r<><00>json<6F>loadsr<73><00>JSONDecodeErrorrhr<>rrrj) rkrlrmrnr<>Zran<61>file_obj<62> file_name<6D>file_extension<6F>file_url<72> info_datar<61>rrrrrsri<00>
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)
NFrtrbr<>r<>r&Zrasadyar_app_info_r<5F>r`)r6rcrdrerir<>r<><00>uuid<69>uuid4<64>hexr<78>rbrarbr<>r<>r<>r<>r<>r<>rhr<>rrr<>) rkrlrmrnr<><00> uploaded_filer<65>Zunique_filenamer<65>r<>r<>rrrrrsr<><00>
s(

*

 

zRasadyarAppInfoViewSet.updateN)r<>r<>r<>r6rcrdr<>rRr<>rrr<>r<>rir<>rrrrrrrsr<>{
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
<EFBFBD>}t jjfi|<01>|d d <0C><02><01><01>
d <0A>}t |dd<0F>j }t |<06>S)NruFrr<>rrr4r5<00>licence_numberrWr<>r<>r<>Trw)ryrbrrr<>rr,rcrdr-r<>rFrar)rlr<>rrrGr<>r~rrrrrs<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>TransportCarcassDetailViewSetFrtc,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>}
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>
}"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>گوشت مرغ تازه)rur<>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<>rrrrrsr<> sz9TransportCarcassDetailViewSet.list.<locals>.get_sort_date<74>carcassr<73>cSs|dSr<>rrr<>rrrrrsr<>/ r<>z4TransportCarcassDetailViewSet.list.<locals>.<lambda>r<>cSsg|]\}}}|<02>qSrrrrr<>rrrrrsr<>2 r<>z6TransportCarcassDetailViewSet.list.<locals>.<listcomp>rvr<>rlr<><00>id_quarantinehr`r.rUr<>rt<00>
2025-03-21r<31>)rur4r<>r`r<><00>rur<><00>jihadi_origin__inr<6E><00>rur<>rr<>r[r3r<>r<>r<>r<>r<>r<>r<>r<>r<>cSs i|]}|<01>d<00>r|d|<01>qSr<><00>rb<00>r<>rtrrrrrsr<><00> r<>z6TransportCarcassDetailViewSet.list.<locals>.<dictcomp>r:rr<>r<>r<>r<>r<>cSs i|]}|<01>d<00>r|d|<01>qSrr<>r<>rrrrrsr<><00> r<>)r<>r:r<>r<>r<>r<>r<>cs<00><00>|ji<00>pi<00>dd<02>pdS<00>Nr:r<00>rbr`<00>r<><00>rrrrsr<><00> r<><00>rlr<00>buy_dictr <00>ru<00>
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>rb<00> jihadi_code)<01>sr<73>rrrsr<> r<><00>rlr<00>ok)2ryrbr<>rdr4rcrrr<>rr r<>rWrzr{r|r&r<>rr<>r}r~rrvr<>r<>rHrarP<00> record_idr<64>rrr<>r r.r<>r0r-r<>r<>rrrrrJr%r1r rK),rkrlrmrnr<><00> type_roler<65>rr<>rL<00> query_carcassr<73>r<00> carcass_listr<74>r<>r<>r<>r<>rvr<>r<>r<>r<>ra<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_summaryrtrpr<><00>filters_steward<72>steward_filterset_class<73>stewardrrr<>rsr<><00>
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
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)DNrbrcr`Tr<54>Fr<46>r<>cSsg|]}t|<01><01><01><00>qSrr<00>r<>r<><00>r<><00>cellrrrrrsr<>9 r<>z8TransportCarcassDetailViewSet.create.<locals>.<listcomp>rer<><00>destination_prev<65>destination_changed<65>paymentr<74>rr<>r<>rfr<><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>
net_weight<EFBFBD>
scale_code<EFBFBD>
scale_name<EFBFBD> scale_receiptr<74>r<>)!r<><00>مقصد قبلی<D984>تغییر مقصدu پرداخت<D8AE> رهگیری<D8B1>
تاریخuساعت<D8B9>
محصول<D988>
اقلام<D8A7>
مقدار<D8A7>واحد<D8AD>استان مبدا<D8AF>شهرستان مبدا<D8AF>مبدا<D8AF>استان مقصد<D8B5>شهرستان مقصد<D8B5>مقصد<D8B5>ش جهادی مبدا<D8AF>ش جهادی مقصد<D8B5>مالک<D984>کد رهگیری خودرو<D8B1>نام رانندهuپلاکuمبلغ<D984>
تخلیه<DB8C> وزن پر<D9BE>وزن خالی<D984>وزن<D8B2>کد باسکول<D988>نام باسکول<D988>قبض باسکول<D988>تاریخ تخلیهr<D987><00>truer<65><00><02>min_rowrfrr*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<>r`)'rirjrkrlrr<00>setr.rcr<>r<>r1rd<00>nextrnrarb<00>dict<63>zipr<00>addrfr<>r<><00>mapr~r<>rYr<>r;<00>month<74>dayr<79>r0r[r<>rrrj)rkrlrmrnrbrprqZkill_house_codeZsteward_jihadi_code<64>headers<72> field_mapZout_flagZbulk_guilds_createZbulk_records_createZrecord_updatesrt<00>row_data<74> tracking_valZ steward_codeZ guilds_code<64> record_data<74>col_name<6D> model_fieldrq<00>y<>mrZexisting_trackingsrarrrrrsri, s<><14><18><02>$


<02>
<02>

  


 
<06><04><04>
 z$TransportCarcassDetailViewSet.createN)r<>r<>r<>r0rcrdr<>rHr<>rrrVrr#rzr<>rirrrrrrrsr<><00>
sOr<4F>c@sDeZdZejjdd<02>ZeZe gZ
e Z e Zdd<04>Zdd<06>Zdd<08>Zd S)
<EFBFBD> DriveViewSetFrtcOs<>d|jvr>|jjdd<03><01>d<04>jddd<06><02><05>}td|itjd<08>Sd |jvr~|jjdd
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
| dd <0A>}t|j tjd<08>S)Nr<4E>z^\d{7}$)<01>tracking_code__regex<65> tracking_codeTr<54><00>codesr`r<>F)rPruZ pelak__isnullrrwrrr<>r<>r<>rr<>r<>r<><00>-daterv)ryr<>rdr<>r<>r<>rrr<>r<>r<>rarbrrr<>rr<>rWrzr{r|r}r~rrvr<>r<>r<>)rkrlrmrn<00>queryr<79>rLrrr<>r<>r<>rArvr<>rrrrrsr<><00> sF
"
      <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>
d <0A>} i} |<08> <0B>D] \}}|| vr<>| |}|| |<q<>t j j| | d<0E>\}}| <09>d|ji<01>q\tdditjd<12>S)NrbrccSsg|]}t|<01><01><01><00>qSrrrrrrrrrsr<><00> r<>z'DriveViewSet.create.<locals>.<listcomp>TrerQr<>r)r-r)r+r<>r8r.)r<00>defaultsrr^r<>r`)rirjrkrlrrr?rnr@rArbrfr2rc<00>update_or_createrrrrrj)rkrlrmrnrbrprqrFrGZ created_listrtrHrrJrKrLrqr<><00>createdrrrrrsri<00> s6<02> 

<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>}
|
D] } | |jvr<>t || |j| <00>q<>|dur<>||_|<05><0F>td d itjd<0E>S)NrQ)rQ<00>expire_licence_datecSsg|] }t|<01><01>qSrr)r~)r<>r<>rrrrrsr<> r<>z'DriveViewSet.update.<locals>.<listcomp>r<>rgrr<>r<>)<07>car_idr<00>
owner_name<EFBFBD>pelak<61>weight<68>car_type<70> health_permitr^r<>r`)rarbr2rcrdrer<>r<>r<>r@rYr<00>
IndexErrorrgrXrhrrr<>) rkrlrmrnrQ<00>driverZdate_str<74> expire_date<74>partsr<73>r<><00>fieldrrrrrsr<> s, <02>
  
zDriveViewSet.updateN)r<>r<>r<>r2rcrdr<>rIr<>rrrVrr$rzr<>rir<>rrrrrrrsrO<00> s**rOc@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
|<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>|
|<1F>t|$<24>t|%<25>dB<64><11>StdCt j!dD<64>S)ENr<4E>r<>r<>r<>rrr.rUr<>r`Tr<54>F)r<>rur<>r<>)r<>rur4r<>r<>r<>r<>r<>r<>r<>rr<>r<>r<>r<>r[r3r<>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>rrt<00> -modify_dater<65>r<>)r<>r<>)rr<>) r:r<>r<>r<>r<>r<>r<>r<>r<>r<>rir<>r<>r<>r<>riu
مباشر)r<>r<>r>rfrrgr<>rrrhr<>r
ri<00>total_count_stewardrkr<>r<>r<>r`)"ryrbr r.rcrdr<>r<>rWr{r|r<>r0r-r<>r4rrr<>rr r<>r<>rrr<>rr~r@<00>#_get_last_update_date_for_dashboardr1r%rr<>)&rkrlr<>r<>r<>rrr<>r<>r<>r>r<>r<>r<>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<>rir<>r<>rrrrrsrb5 s<>   
 <0C><02><04><02><02> <0C><06><06><06> <06><06><06>
$$$$$$$$$$$$
<10><02>.  
<EFBFBD>" <0C><02><02><02><12><06><10><10>$$$$$$$$$$$

<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>existsrer<>rrrr\)rkZ queryset1Z queryset2<74>dates<65> first_objrrrrrsrp7s  zATransportCarcassDashboardView._get_last_update_date_for_dashboardN)r<>r<>r<>rrrbrprrrrrrrsrd2 s
rdc@s4eZdZejjdd<02>ZeZe gZ
e Z e Zdd<04>ZdS)<06>GuildsTransportCarcassViewSetFrtc$ 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>}
|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
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<>rur<>)rur<>r<>rrr<>Tr<54>r<>cSsJt|d<01>r|jr|jSt|d<02>r,|jr,|jSt|d<03>rB|jrB|jStjjSr<>r<>r<>rrrrrsr<><00>sz9GuildsTransportCarcassViewSet.list.<locals>.get_sort_dater<65>r<>cSs|dSr<>rrr<>rrrrrsr<><00>r<>z4GuildsTransportCarcassViewSet.list.<locals>.<lambda>r<>cSsg|]\}}}|<02>qSrrrrr<>rrrrrsr<><00>r<>z6GuildsTransportCarcassViewSet.list.<locals>.<listcomp>rvr<>rlr<>r<>r<>r<>r`r<>r<>r<>r<>cSsg|] }|r|<01>qSrrrr)r<>r<>rrrrrsr<><00>r<>)rurr<>r<>r<>r<>r<>)r<>r<>rir<><00>total_count_input_buy<75>total_count_output_buyrr<>r<>rir<>rwrxcs<00><00>|ji<00>pi<00>dd<02>pdS)Nrirr<>)<01>str<74>rrrsr<>r<>r<>r )0ryrbr0rcrdr4rrr<>rr r<>rWrzr{r|r&r<>rr<>r}r~rrvr<>r<>rHrarPr<>r<>r<>r<>rrr<>r1r<>r%r<>rrrrr>r<>rBr<>)$rkrlrmrnr<>r<>r<>rrLr<>r<>rr<>r<>r<>r<>r<>r<>rvr<>r<>r<>r<>rarrrZsteward_jihadi_codesr>r<>rZall_products_summaryrtZseen_jihadi_codesZunique_stewardsryrrr<>rsr<>Psv     <02><02><02><02><04><02> <02><0E> <0C>   
 




 



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

 z"GuildsTransportCarcassViewSet.listN)r<>r<>r<>r1rcrdr<>rLr<>rrrVrr#rzr<>rrrrrrrsrvHs rvc@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
|<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
|<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)rrur<>r<>rr<>r<>r<>r<>r<>rr)r<>r<>rir<>rwrx<00>last_update_carcass)r<>r<>rir<>rwrx<00>last_update_all_productsr<73>rr<>rir<>rwrxr{r|r<>r<>uصنف) r<>r<>r<>r<>riZtotal_input_buy_bars_percentZtotal_output_buy_bars_percentZtotal_count_guildrkr<>r<>)ryrbr1rcrdr<>r%r<>rWr{r|r<>r0r4rrr<>rr<>rr rr r\r<>rr~r@)rkrlr<>r<>rrrrrr>r<>rqZall_products_aggregationr<6E>r<>rir<>rwrxr{r|rkrr
rrrrrsrb4s<>  " <0C><02><02><06><06>
<06>


  
<06>z'GuildsTransportCarcassDashboardView.getN<74>r<>r<>r<>rrrbrrrrrrrsrz1srzc@s4eZdZejjdd<02>ZeZe gZ
e Z e Zdd<04>ZdS)<06>ApiSendDifferentBarFromHatchingFrtcOs<>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
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|
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)NruFrr<>rrr4r5r`r<>r<>r<>r<>r<>r<>Tr<54>r<>rqr<>rvrw)ryrbrrr<>rr,rcrdrsr-r<>rar<>r<>r<>r<>rWrzr{r|r}r~rrvr<>r<>r<>rFr)rkrlrmrnrLr<>rrror<>r<>r<>rqrvr<>r<>r~rrrrrsr<><00>sJ<02><02> 
<04><02>  <0E> 

 z$ApiSendDifferentBarFromHatching.listNr<4E>rrrrrrrsr~<00>s r~cCsHdd<02>tD<00>}tjjt|d<03>t|d<04>Bdd<06>}|D] }|<02><05>q6dS)NcSsg|] }|d<00>qS<00>r<>rr<00>r<><00>prrrrrsr<><00>r<>z fix_province.<locals>.<listcomp>)Zorigin_province__in)Zdestination_province__inFrt)rr0rcrdr rh<00>Z province_listZ wrong_records<64>recordrrrrrs<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>qSrrrr<>rrrrrsr<><00>r<>zfix_city.<locals>.<listcomp>)Zorigin_city__in)Zdestination_city__inFrt)rr0rcrdr rhr<>rrrrrs<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>
<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|
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)rur<>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>ra<00>verifyrF<00> html.parser<65>table<6C><00><00>trr<72>r<><00>td<74>:r<>)rrr<>ryrr0rcrdr<><00>requests<74>Session<6F>mountr'<00>postr<00>text<78>find_all<6C>findr<64>r<>rCr~<00> jdatetime<6D> togregorianr<6E>r<>rhrr@)rlrrr>r<><00>
quarantine<EFBFBD>sessionrarNr<>r<>rsrt<00>rr<72><00> shamsi_dater;rDrE<00>gregorian_daterrrrrs<00>update_product_date<74>sN<02><02><02><06>
 
<04><02> 


r<>cCsHtjjdddd<03><03>d<04>dd<05>}|D<00>]}|j}t<05><06>}|<03>dt<08><00>dt |<02>i}|j
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]^}
|
<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)rur<>r<>rSiXr<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>)r0rcrdr<>r<>r<>r<>r<>r'r<>r<>rr<>r<>r<>r<>r<>r<>rCr~r<>rr<>r<>rh)r>r<>r<>r<>rarNr<>r<>rsrtr<>r<>r<>r;rDrEr<>rrrrrs<00>update_product_date_cronsF
<02><02><06>
 
<04><02> 


r<>c
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
|<00>|d.<2E>d/<2F>}t|jtjd0<64>S)1Nr<4E><00>,F<>rur<>r<>rrrr<>Tr<54>rtr<>r<>r<>r<>r<>r[r<>)r4r5rur<>r<>r<>r<>r<>r<>r<>)r<>r<>rur<>r=r<>)r<>r<>r<>rur<>r<>r<>r<>r<>r<>rr:r<>r<>r<>r<>r<>cs<00><00>|ji<00>pi<00>dd<02>pdSr<>r<>r<>r<>rrrsr<><00>r<>z=send_transport_carcass_detail_for_rasadyaar.<locals>.<lambda>r<>r<>r r`)ryr<>r.rcrdr<>rbrrr<>rr0r r<>r<>r-r<>r<>r<>r4r<>rrrrr<>rMrrarr<>)rlr<>r<>rrr>rrr<>Zquarantine_barsZquarantine_buyZ all_trackZall_products_carcassZall_products_liverZall_products_carcass_summaryrZall_products_live_summaryrtrpr<>r<>rrr<>rs<00>+send_transport_carcass_detail_for_rasadyaar&s:

    <0C><02>
<EFBFBD><02>
<EFBFBD><02><02>
<EFBFBD><02><02>
<EFBFBD>
<06>
<06>
<06>
<06> 
<02>
"
<02>
"
<02>
"
<02>
"
<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)rur<>r<>r<>)r<>rwr`)
rar@r-rcrdr<>rNrrr<>)rlr<>r>r~rrrrrs<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<>) rar)rcrdr<>r[rfrer-rr)rlraZ poultreis<69> result_listr<74>r<>rorrrrrs<00>
fix_number<EFBFBD>sr<>cCsz|j<00>d<01>}|s"tdditjd<04>Stjj|dd<06><02><08>}|sHtgtj d<04>St
jj|dd<07><02> d<08>}t |d d
<EFBFBD>}t|jtj d<04>S) NrV<00>detailzRequestCode is requiredr`F<>rVru<00>rGru<00> -create_dateTrw) rarbrr<00>HTTP_400_BAD_REQUESTr,rcrdrer<>r5r<>rQ)rl<00> request_coderG<00> evacuationsr<73>rrrrrs<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
jj |dd<07><02> d<08>}t |d d
<EFBFBD>}|j||j <qF|D]}||vr~g||<q~t|tjd<04>S) NrRr<>zRequestCodes list is requiredr`F)ZRequestCode__inrur<>r<>Trw)rarbr<>r<>rrr<>r,rcrdr5r<>rQrVr<>)rlZ request_codesr^rrGr<>r<>r<>rrrrrs<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<>) r3rcrdrer<>rrarr<><00>rkrlrmrn<00>inquiry_credentialsr<73>rrrrrsr<>s
zInquiryCredentialsViewSet.listcOsHtjjdd<02><01><03>}|j||jdd<04>}|jdd<05>|<05><07>t|jt j
d<06>Sr<>) r3rcrdrer<>rar<>rhrrr<>r<>rrrrrsr<>s
 z InquiryCredentialsViewSet.updateN) r<>r<>r<>r3rcr<>r<>rOr<>rrr<>r<>rrrrrrrsr<>s

r<>c@s8eZdZejjdd<02>ZeZe gZ
e Z dd<04>Z dd<06>ZdS)<08>EvacuationDetailViewSetFrtcOs0t|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>}
|
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
<t jjfi| <0C><01>|d 7}qvq&td ||d <0C>tjd <0A>S)Nrr5rVFr<46>r<>rq)rqrur<>rGr_)r^rW<00>updatedr`)r<>rar<>rbr@r,rcrdre<00>copyrEr5rfrgrGrhrirrrj)rkrlrmrn<00> data_listZ total_createdZ total_updatedZ item_datar<61>r<>rGr<>r<>r<>r<>rprqrrrrrsri*sP 
 <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)
Nr<EFBFBD>r<>)r<><00>SourceUnitNamer<65>rvr<>r<>Trwr`)r<>r<>ryrbr<>rdrWr}r~rrvr<>r<>r<>r<>rar<>rrr<>) rkrlrmrnr<>r<>rvr<>r<>rrrrrsr<>Zs   <0C>  zEvacuationDetailViewSet.listN)r<>r<>r<>r5rcrdr<>rQr<>rrrVrrir<>rrrrrrrsr<>$s 0r<30>c Cs<>tjjdd<02>jdd<04>jdd<06>}|<01>d<07>jtd<08>d <09>}tt<08>}|<01>dd
<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|
|| d<10>tjd<11>S)NFrtT)ZReportTypeString__isnullr&)ryryr<>)r<>r{z-countr<74>)<03>report_type_stringr<67><00> report_typescss|]}t|<01>dkVqdS)r<>N)r@)r<>rrrrrrs<00> <genexpr><3E>r<>z1evacuation_report_type_summary.<locals>.<genexpr>)Ztotal_report_typesr<73>Z&report_type_matches_report_type_stringr`)r5rcrdr<>rrrrr>r<>rBr<>rrbrr@r<>rrr<>) rlr<>Zreport_type_counterZtype_relationsrr<>Zreport_type_valuer<65><00>entryZassociated_typesZdistinct_countZmapping_is_uniquerrrrrs<00>evacuation_report_type_summaryqs@<02><02>
<06><02>
<02><04>r<EFBFBD>csLeZdZejjdd<02>ZeZe gZ
e Z e Zdd<04>Z<0F>fdd<06>Zdd<08>Z<11>ZS) <09>AllProductsTransportViewSetFrtcOs<>|<00>|<00><01><00>}|j<02>d<01>}|j<02>d<02>}|j<02>d<03>}|j<02>d<04>}|j<02>d<05>} |rb|dkrb|j|d<07>}|rz|dkrz|j|d<08>}|r<>|r<>|dkr<>|dkr<>z6tj<05>t|<07>d <09>}
tj<05>t|<08>d <09>} |j|
| d
<EFBFBD>}Wnty<>Yn0| <09>r | dk<03>r | <09> <09><00>r |<04>t
|j j j | <09><02>}|j<0E>d d<00>} | <0C>r,t| <0C>|j_|<00>|<04>d d <0A><02>} | du<01>rb|j| dd<0F>}|<00>|j<16>S|j|<04>d d <0A>dd<0F>}t|jtjd<10>S)N<> product_typer<65>rrr<>r<><00>r<><00>r<>r<00>r<>r<>rvrSr<>Trwr`)r<>r<>ryrbrdrrr<>rr<>rWrzr{r|r}r~rrvr<>r<>r<>r<>rar<>rrr<>)rkrlrmrnrAr<>r<>rrr<><00>
start_date<EFBFBD>end_datervr<>r<>rrrrrsr<><00>s>          <0E> 
 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
|dd<05>}
t |
jt j d<06>St<0E>j|g|<02>Ri|<03><01>SdS)Nrbr<>)r<>rUTrwr`)ri<00>_import_from_excelrar<>r<>rbr4rcrVrr<>rrrj<00>superri) rkrlrmrnraZcreated_objectsrr<>r<>rWr<><00><01> __class__rrrsri<00>s 



<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
<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 filerbrccSs g|]}|rt|<01><01><01>nd<00>qS)r&rrrrrrrsr<><00>r<>zBAllProductsTransportViewSet._import_from_excel.<locals>.<listcomp>Trer<>r
r r<>rr<>rfr<>r rrrr<>r<>r<>r<>r<>rrrrrrrrrr<>r)r<>rr<00>کد رهگیریrrr r!r"r#r$r%r&r'r(r)r*r+r,r-r.r0r1r2r3r4r5r6r/rr<>r8css|]}|duVqdSr<>rrrrrrrrsr<> r<>zAAllProductsTransportViewSet._import_from_excel.<locals>.<genexpr>r<>rr(r*F)r<>rur/r&)u تخلیه.r/r<>r:r<>rgrr;Nr<4E>)rrrr<>r<>u' رکورد جدید اضافه شد، u+ رکورد به‌روزرسانی شد، u) رکورد رد شد (تخلیه شده))r^rWr<><00>skippedr<64>r`)4rirjrkrlrrr?rnr<>r@rArbr<>r4rcrdrer<>rfr<>r<>r<>r@rCr~rYrrrr<>r;rDrEr<00>AttributeErrorr_<00>float<61>replace<63> TypeErrorr(r,r<>r<>rgrGrhr<>rr<>rrrj)rkrlrbrprqrFrGZ created_countr<74>Z skipped_countrtrHrIr<>Zjihadi_origin_codeZexisting_recordZ unloading_valrJrKrLrqrbrMrNrZ hatching_objZ
permit_mapZ permit_coderpZ
new_recordrrrrrsr<><00>s<><02>  
 

 
  
  
 

<14><04>z.AllProductsTransportViewSet._import_from_excel)r<>r<>r<>r4rcrdr<>rSr<>rrrVrr&rzr<>rir<><00> __classcell__rrrrr<>rsr<><00>s) r<>c@seZdZegZdd<02>ZdS)<04>!AllProductsTransportDashboardViewcCs~|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}|dkr\d}tjjdd <09>}|r<>|dkr<>|j|d
<EFBFBD>}|r<>|r<>|dkr<>|dkr<>z6tj<05>t|<06>d <0B>} tj<05>t|<07>d <0B>}
|j| |
d <0C>}Wnty<>Yn0|j<00>d <0A>} t } |<04>r"|dk<03>r"|<04>
<EFBFBD><00>r"|<08>t | j j |<04><02>}|<02>r|dk<02>ri} |<03>rD|| d<t } tjjfi| <0A><01><01>d<10>}|<04>r<>|dk<03>r<>|<04>
<EFBFBD><00>r<>|<0E>t | j j |<04><02>}|jddd<13>}|j|d<14>}| <0B>r<>| dk<03>r<>|j| d<15>}|jtd<16>tdtdd<17>d<18>tdtdd<17>d<18>tdtdd<17>d<18>tdtdd<17>d<18>td<10>d<19>}|d<00>p&d}|d<00>p4d}|d<00>pBd}|d<00>pPd}|d<00>p^d}|d <00>pld}|dk<04>r<>||dk<04>r<>t|||d!d"<22>}t|||d!d"<22>}nd}d}|<10>d#<23>jd$dd<13><02><16>}td%|t|<12>t|<13>t|<16>t|<14>|t|<17>t|<15>||<0E><19>|d&<26> tjd'<27>Si}|<03>r*||d<t } tjjfi|<1B>ddd(<28><02><01><01>d<10>}|<04>r~|dk<03>r~|<04>
<EFBFBD><00>r~|<1C>t | j j |<04><02>}|jd)dd<13>}|<08>t|d<14>t|d*<2A>B<00><01>d#<23>}| <0B>r<>| dk<03>r<>|j| d<15>}|jtd<16>tdtdd<17>d<18>tdtdd<17>d<18>tdtdd<17>d<18>tdtdd<17>d<18>td<10>d<19>}|d<00>p*d}|d<00>p8d}|d<00>pFd}|d<00>pTd}|d<00>pbd}|d <00>ppd}|dk<04>r<>||dk<04>r<>t|||d!d"<22>}t|||d!d"<22>}nd}d}|jd$dd<13><02><16>}t|t|<12>t|<13>t|<16>t|<14>|t|<17>t|<15>||<1C><19>|d+<2B> tjd'<27>S| <0B>r0| dk<03>r0|j| d<15>}|jtd<16>tdtdd<17>d<18>tdtdd<17>d<18>tdtdd<17>d<18>tdtdd<17>d<18>td<10>d<19>}|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>r t|||d!d"<22>}t|||d!d"<22>}nd}d}|<08>d#<23>jd$dd<13><02><16>}td,|t|<12>t|<13>t|<16>t|<14>|t|<17>t|<15>||d-<2D> tjd'<27>S).Nr<4E>r<>r<>r<>rrr<>Frtr<>rr<>r<>r.rUr<>r`Tr<54>rlr<>r<>r<>r<>r<>r<>rr:r<>r<>r<>r<>r<>r<>rnrrre) r<>r<>r>rfrrgrrrhr
rjrkr`r<>r<>rm) r<>r>rfrrgrrrhr
rorkr<>) r<>r<>r>rfrrgrrrhr
rk)ryrbr4rcrdrrr<>rr&r<>rWr{r|r.r<>r<>r<>rr rr<>rerr~r<>rr<>r1)rkrlr<>r<>r<>r<>rrr<>r<>r<>r<>r<>r<>r<>Zkill_house_codesr>rqr<>r<>r<>r<>r<>r<>r<>r<>rkrrZ steward_codesrrrrrsrbxsH         <0C>
 <0C>  <06> <02> <04>" <0C><12><02> <06> <02> <04> <06> <02> <04>z%AllProductsTransportDashboardView.getNr}rrrrrrrsr<>usr<>c@seZdZegZdd<02>ZdS)<04>$AllProductsTransportProductsListViewcCsBtjjddd<02>jdd<04>jddd<07><02><05><00>d<05>}tdt|<02>it j
d <09>S)
NF)ru<00>product__isnullr&r<>r<>Tr<54><00>productsr`) r4rcrdr<>r<>r<>r<>rr<>rr<>)rkrlr<>rrrrrsrb<s<02><02><04>
<02><08><04>z(AllProductsTransportProductsListView.getNr}rrrrrrrsr<>9sr<>c"Cs$d}|jrfd}|jjrL|jjj|jjj|jjj|jjj|jjj|jjjd<02>}|jj||jj|jj d<03>}|j
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
|j<0E><0F>nd|j|j||j|jd<06>!S)u:تبدیل TransportingDetail به فرمت یکپارچهN<D987>r\r`rUr<>r,r-<00>r`rorVr<>r-uقطعه<D8B9>!r<>rp<00>sourcer<65>r<>rr<>rfr<>r rrrr<>r<>r<>r<>r<>rrrrrrrrrr<>rr<>rG<00> create_daterr)rGror\r`rUr<>r,r-rVr<>r<>r<>rpr<>rr<00>GoodNamer<65>r<>r<>r<>r<><00>SourcePartIdCoder<65><00>PersonFullNamer<65>r<>r<>rr<00>r<>rFZ poultry_datarrrrrs<00>'_convert_transporting_detail_to_unifiedGsd<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 به فرمت یکپارچهr0Nr<4E>) r<>r<>rpr<>r<>rr<>rfr<>r rrrr<>r<>r<>r<>r<>rrrrrrrrrr<>rr<>r<>rrr<>rrrrrs<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<>r4r<>)*rGror\r`rUr<>r,r-rVr<>r<>r<>rpr<>r<>rr<>rfr<>r rrrr<>r<>r<>r<>r<>rrrrrrrrrr<>rr<>r<>rrr<>rrrrrs<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
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|
<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>کد الزامی استr`<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)rbrBr)rr<>)<02>seen_tracking_codes<65>unified_resultsrrrs<00>add_if_not_duplicate s
 

z@get_all_products_transport_by_code.<locals>.add_if_not_duplicater)r<>F<>rur<>r<>r<>r<>r<><00>ruZhatching__poultry__PartIdCoder<65>r<><00>Z Date__gteZ Date__lterT<00>rur<>rS<00>rr.<00>rur<>r<>rG<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)rbr<><00>lower)r<>r<><00><01> search_lowerrrrsr<>ys<1E>z6get_all_products_transport_by_code.<locals>.<listcomp>cSs|<00>d<01>ptjjS)Nr)rbrrr<>r<>rrrrrsr<><00>r<>z4get_all_products_transport_by_code.<locals>.<lambda>Tr<54>rvr<>r<>z?page=)r<>r?<00>previousr)ryrbrrr<>rrr<>rr>r4rcrdr<>r-r<>r<>r0r<>rRr<>r<>r<>rVr}r~rvr@r<>)rlr<><00>transport_type<70> from_sourcerrr<>r<>r<>r<>r<>r<>r<>r<><00>transport_details<6C>carcass_detailsr>r<>rv<00> page_number<65> start_index<65> end_indexZpaginated_resultsrr)r<>r<>r<>rs<00>"get_all_products_transport_by_code<64>s <04> <04>  <04>      

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

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


 <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
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<>|
<EFBFBD><15><00><00>fd+d,<2C>| D<00>} td-d.<2E>| D<00>td/<2F>}td0|itjd<04>S)1Nr<4E>r<>r<>r`r<>r<>r<>r<>r<>r<>rrr<>rr<>r<>r<>r)r<>Fr<46>r<>r<>r<>)r<>r&Tr<54>r<>r<>rGr<>r<>rT)ZGoodName__isnull)r<>r<>r<>r<>r.r<>r<>cs$h|]}|r<04>t|<01><01><01>vr|<01>qSrr<00>r<>r<>r<>r<>rrrs<00> <setcomp><s<14>z>get_all_products_transport_products_by_code.<locals>.<setcomp>cSsg|] }|r|<01>qSrrrrr<>rrrrrsr<>Ar<>z?get_all_products_transport_products_by_code.<locals>.<listcomp>rWr<><00>ryrbrrr<>rrr<>rr>r4rcrdr<>r<>r<>r<>r-rRr0r<>r<>rr<>)rlr<>r<>r<>rrr<>r<>r<>r<>r<>Z products_setr<74>r<>r<>r>r<>rrr<>rs<00>+get_all_products_transport_products_by_code<64>s< <04> <04>  <04>      

<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><04>rcs|j<00>d<01>}|s"tdditjd<04>S|j<00>d<05>}|dvrHtdditjd<04>S|j<00>d<08>}|rr|d vrrtdd
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<>|
<EFBFBD><15><00><00>fd/d0<64>| D<00>} td1d2<64>| D<00>td3<64>}td4|itjd<04>S)5Nr<4E>r<>r<>r`r<>r<>r<>r<>r<>r<>rrr<>rr<>r<>r<>r)r<>Fr<46>r<>r<>r<>)Zdestination_province__isnullr&r<>Tr<54>r<>r<>rGr<>r<>rTr<>rUr<>r<>)Zorigin_province__isnullrr.r<>r<>)Zhatching__ProvinceName__isnullr<6C>cs$h|]}|r<04>t|<01><01><01>vr|<01>qSrrrr<>r<>rrrsr<00>s<14>z?get_all_products_transport_provinces_by_code.<locals>.<setcomp>cSsg|] }|r|<01>qSrrrrr<>rrrrrsr<><00>r<>z@get_all_products_transport_provinces_by_code.<locals>.<listcomp>rWrr)rlr<>r<>r<>rrr<>r<>r<>r<>r<>Z provinces_setr<74>r<>r<>r>rrrr<>rs<00>,get_all_products_transport_provinces_by_codeHsL <04> <04>  <04>      

<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>
<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
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|
<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<>r`r<>r<>r<>r<>r<>r<>rrr<>rr<>r<>r<>rr)r<>Fr<46>r<>r<>r<>r<>r<>r<>Tr<54>rr)r:r<>r<><00> input_cnt<6E>
output_cnt<EFBFBD> total_cnt<6E>last_modrr:r<>r<>rrr r<>r<>rGr<>r<>rTr<>r<>r<>r<>r.r<>r<>)r:r<>r<>r<>r<>r<>r r<>r<>r<>r<>r<>r<>) r>rrkrr<>r<>rfrrgr
rh)ryrbrrr<>rrr<>rr4rcrdr<>rr rr r-rRr0r<>rWr&r{r|r<>r~r<>)rlr<>r<>r<>rrr<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>rkr<>Zaggr<67>r<>Zall_barsrqr<>r<>rrrrrs<00>,get_all_products_transport_dashboard_by_codes<> <04> <04>  <04>      

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

<02>   <06>  <02><04>  <06>  
<02><02> 
   <0C><06>
<06> <04>r
)<29>rr<>r<>r<><00>thisrr<><00> collectionsr<00>iorr<>r<>rkr<>Zbs4r<00>django.db.modelsrrrr r
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>
app.helperr'r(Z
app.modelsr)r*r+r,r-r.r/r0r1r2r3r4r5r6Zapp.serializersr7r8r9r:r;r<r=r>r?r@rArBrCrDrErFrGrHrIrJrKrLrMrNrOrPrQrRrS<00>authentication.modelsrU<00>helpersrVrWrXrY<00> ModelViewSetrZr<>r
r r r2rBrHr<>r<>r<>r<>r<>r<>r<>r<>r<>rr:rErSr`rurr<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>rOrdrvrzr~r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>rrrr
rrrrrrrs<00><module>sT    (     @@| tsE  );C8]!+{KDQ&'6Ga|jf/  &"%   M&\E:':3/6