§
    #­”hW?  ã                   óŠ  — d dl mZmZ d dlmZ d dlmZ d dlmZ d dlm	Z	 d dl
mZ d dlmZ d dlmZ d d	lmZ d d
lmZmZmZ d dlmZ d dlmZ d dlmZmZ d dlmZ d dlZd dl Z d dlm!Z!mZm"Z"m#Z#m$Z$ d dl%m&Z&m'Z' d dlmZ d dlmZ d dl(m)Z) d dl m*Z* d dl+m,Z, d dl-m.Z. d dlZd dl/m0Z0 d dl(m)Z) d„ Z1ed„ ¦   «         Z2d„ Z3d„ Z4dS )é    )ÚrenderÚredirect)Ú
LoginForms)Úauth)Úlogin_required)Úmessages)Úget_user_info)ÚHttpResponseForbidden)ÚEspecies)ÚCadastroLote)ÚSumÚFÚ	functions)ÚEstufa)ÚRepique)ÚSaidasEspeciesÚSaidas)ÚExtractMonthN)ÚCountr   ÚCaseÚWhenÚBooleanField)Ú	ProtocoloÚProtocoloSemeadura)r   )ÚUsuarioFuncionario)Úget_object_or_404)ÚMetasModels)Ú	MetasForm)Únowc                 óT  — t          ¦   «         }| j        dk    rýt          | j        ¦  «        }|                     ¦   «         rÕ|d                              ¦   «         }|d                              ¦   «         }t          j        | ||¬¦  «        }|�dt          j        | |¦  «         t          t          |¬¦  «        j
        }t          j        | d|j        › d�¦  «         t          d|j        ¬	¦  «        S t          j        | d
¦  «         t          d¦  «        S t#          | dd|i¦  «        S )NÚPOSTÚnome_usuarioÚsenha)ÚusernameÚpassword©ÚusuariozBem-vindo, ú!Údashboard_one©Úuser_idz)Login falhou. Verifique suas credenciais.Úloginzdashboard/login.htmlÚform)r   Úmethodr!   Úis_validÚvaluer   Úauthenticater,   r   r   Úfuncionarior   ÚsuccessÚnome_completor   ÚidÚerrorr   )Úrequestr-   r"   r#   r'   r2   s         ú2D:\Projeto AMA\sistema_ama\apps\dashboard\views.pyr,   r,      sA  € Ý‰<Œ<€Dà„~˜ÒÐÝ˜'œ,Ñ'Ô'ˆà�=Š=‰?Œ?ð 	)Ø Ô/×5Ò5Ñ7Ô7ˆLØ˜”M×'Ò'Ñ)Ô)ˆEåÔ'Ø ,¸ð@ñ @ô @ˆGàÐ"Ý”
˜7 GÑ,Ô,Ð,õ 0Ý&°ð9ñ 9ô 9Ü9Dð åÔ ØÐG¨;Ô+DÐGÐGÐGñIô Ið Iõ   ¸¼ÐDÑDÔDÐDå”ØÐHñJô Jð Jå Ñ(Ô(Ð(å�'Ð1°F¸D°>ÑBÔBÐBó    c                 ór  — | j         j        |k    rt          d¦  «        S t          j                             dd¦  «                             d¬¦  «        }i }d}dgdz  }|D ]�}|j        j        }||vrP|j        j        dk    r|j        j	        j
        n|j        j        j        }|j        j        |j        j        d|d	œ||<   |j        r|j        nd}	||         d
xx         |	z  cc<   ||	z  }ŒŽ|j        j        r$|j        j        j        dz
  }
||
xx         |	z  cc<   t#          |                     ¦   «         ¦  «        }t&          j                             ¦   «         j        }t          j                             d|¬¦  «                             t1          d¦  «        ¬¦  «                             d¦  «                             t3          d¦  «        ¬¦  «                             d¦  «        }dgdz  }|D ]%}|d         dz
  }t7          |d         ¦  «        ||<   Œ&t8          j                             ¦   «                              d¦  «        d d…         }t<          j                             ¦   «         }t<          j                             d¬¦  «                             d¦  «        d d…         }t<          j                             d¬¦  «                             d¦  «        d d…         }|                     dd¦  «                             t3          d¦  «        ¬¦  «                             d¦  «        d d…         }t>          j                             ¦   «         }|                     tA          tC          dd¬¦  «        dtE          ¦   «         ¬¦  «        ¬¦  «                             d¬¦  «                             d ¦  «        d d…         }|                     tA          tC          dd¬¦  «        dtE          ¦   «         ¬¦  «        ¬¦  «                             d¬¦  «                             d ¦  «        d d…         }|                     dd¦  «                             t3          d¦  «        ¬!¦  «                             d"¦  «        d d…         }tF          j                             ¦   «         }tF          j                             d¬¦  «                             d#¦  «        d d…         }tF          j                             d¬¦  «                             d#¦  «        d d…         }|                     dd¦  «                             t3          d$¦  «        ¬%¦  «                             d&¦  «        d d…         }tI          ||d'z
  d(¦  «        }g }|D �] } t<          j                             | ¬)¦  «         %                    t3          d¦  «        ¬*¦  «        d+         pd}!t          j                             d| ¬¦  «         %                    t3          d¦  «        ¬*¦  «        d+         pd}"tF          j                             | ¬,¦  «         %                    t3          d$¦  «        ¬*¦  «        d+         pd}#| &                    | t7          |!¦  «        t7          |"¦  «        t7          |#¦  «        d-œ¦  «         �Œ"t<          j                             |¬)¦  «                             t1          d.¦  «        ¬¦  «                             d¦  «                             t3          d¦  «        ¬/¦  «                             d¦  «        }$dgdz  }%|$D ]#}&t7          |&d0         ¦  «        |%|&d         dz
  <   Œ$t>          j                             |d¬1¦  «                             t1          d2¦  «        ¬¦  «                             d¦  «                             t3          d¦  «        ¬3¦  «                             d¦  «        }'d4gdz  }(|'D ]/})|)d         dz
  }|)d5         �tO          |)d5         ¦  «        nd4|(|<   Œ0t8          j         %                    t3          d6¦  «        ¦  «        d7         }*|*�tO          |*¦  «        nd}+tF          j         %                    t3          d$¦  «        ¦  «        d8         },|,�t7          tO          |,¦  «        ¦  «        nd}-t<          j         %                    t3          d¦  «        ¦  «        d9         }.|.�t7          tO          |.¦  «        ¦  «        nd}/t>          j         %                    t3          d¦  «        ¦  «        d:         }0|0�t7          tO          |0¦  «        ¦  «        nd}1tQ          |¬;¦  «        }2tR          j         *                    ¦   «         }3tR          j                             ¦   «                              d<¦  «        d d…         }4t8          j         *                    ¦   «         }5t8          j                             ¦   «                              d<¦  «        d d…         }6tW          ¦   «                              ¦   «         }7tX          j                             | j         d¬=¦  «                             d>¦  «        }8|8d d?…         }9g }:|9D ]û};|;j-        |7k     r|;j.        rd@}<ndA}<ndB}<|;j/        dk    r#|;j0        |;j/        z  dCz  }=tc          |=dC¦  «        }=nd}=|;j2        rJ	 tf          j         4                    |;j2        ¬D¦  «        }>|>j5        j
        }?n# tf          j6        $ r dE}?Y nw xY wdE}?|: &                    |;j7        j8        |; 9                    ¦   «         |;j:        |;j-        |;j/        |;j0        |<t7          |=¦  «        |?dFœ	¦  «         Œü|8 *                    ¦   «         }@tw          | dGi dH|2“dI|“dJ|3“dK|4“dL|5“dM|6“dN|+“dO|-“dP|/“dQ|1“dRty          j=        |%¦  «        “dSty          j=        |¦  «        “dT|“dU|“dV|“dW|“dX|“||||||                     ¦   «         |ty          j=        |(¦  «        ty          j=        |¦  «        |:|@dYœ¥¦  «        S )ZNu3   VocÃª nÃ£o tem permissÃ£o para acessar este perfil.Ú	protocoloÚ	semeaduraT)Úprotocolo__finalizador   é   r   )Únumero_protocoloÚdata_saida_protocoloÚquantidade_mudasÚcliente_nomerA   é   )r=   Ú%protocolo__data_saida_protocolo__yearÚprotocolo__data_saida_protocolo)ÚmesrF   Úqtd_especie)Útotal_mudasrH   z-entrada_sementes_kgé
   F)Ú
finalizadoz-quantidade_repicadaÚ&semeadura__lote__especie__nome_popularÚ"semeadura__lote__especie__especiesÚquantidade_repicada)Útotal_mudas_produzidasz-total_mudas_produzidas)Údata_venda__isnullÚthen)ÚdefaultÚoutput_field)Útem_data_vendaz-qtd_especie)Útotal_vendasz-total_vendasz-quantidade_mortalidadeÚquantidade_mortalidade)Útotal_mortalidadez-total_mortalidadeé   éÿÿÿÿ)Údata_repique__year)ÚtotalrZ   )Údata_estufa__year)ÚanoÚtotal_sementesrT   rV   Údata_repique)Útotal_repicador_   )Údata_venda__yearÚ semeadura__protocolo__finalizadoÚ
data_venda)Útotal_vendidog        rc   Úentrada_sementes_kgÚentrada_sementes_kg__sumÚquantidade_mortalidade__sumÚquantidade_repicada__sumÚqtd_especie__sumr*   z-id)Ú
criado_porrJ   Ú
data_finalé   u
   ConcluÃ­daÚFalhouzEm andamentoéd   r&   ÚDesconhecido)	ÚespecieÚ	tipo_metaÚdata_inicialrj   Úquantidade_metaÚquantidade_feitaÚstatusÚ
percentualri   zdashboard/dashboard_one.htmlÚ	user_infor+   Únumero_de_especiesÚultimas_especiesÚnumero_de_lotesÚultimos_lotesr]   rV   Útotal_repicadaÚtotal_qtd_especiesÚdados_repicadosÚdados_anuaisÚdez_maiores_lotesÚ mudas_produzidas_nao_finalizadasÚmudas_produzidas_finalizadasÚmudas_produzidas_agrupadasÚ#mudas_mais_vendidas_nao_finalizadas)Úmudas_mais_vendidas_finalizadasÚmudas_mais_vendidas_agrupadasÚ$maiores_mortalidades_nao_finalizadasÚ maiores_mortalidades_finalizadasÚmaiores_mortalidades_agrupadasÚgrouped_finalizadosÚtotal_mudas_vendidasÚdados_vendasÚdados_protocolosÚ
metas_infoÚtotal_metas)>Úuserr5   r
   r   ÚobjectsÚselect_relatedÚfilterr;   Útipo_clienteÚcliente_fisicor4   Úcliente_empresaÚnome_fantasiaÚnum_protocolor@   rG   ÚmonthÚlistÚvaluesÚdatetimeÚdateÚtodayÚyearÚannotater   r   Úorder_byÚintr   Úallr   r   r   r   r   r   ÚrangeÚ	aggregateÚappendÚfloatr	   r   Úcountr   r   rj   Úmeta_atingidaÚ
quantidadeÚquantidade_acumuladaÚminri   r   Úgetr2   ÚDoesNotExistro   Únome_popularÚget_tipo_meta_displayrq   r   ÚjsonÚdumps)Ar7   r+   Ú!protocolos_finalizados_semeadurasr‰   rŠ   Úvendas_por_mes_listaÚpsÚprotocolo_idrB   rA   Ú	mes_vendaÚgrouped_finalizados_listÚ	ano_atualÚprotocolos_por_mesrŒ   r;   Ú	mes_indexr   Úmudas_mais_produzidasr€   r�   r‚   Úmudas_mais_vendidasrƒ   r„   r…   Úmaiores_mortalidadesr†   r‡   rˆ   Úanosr~   r\   Útotal_produzidas_anoÚtotal_vendidas_anoÚtotal_mortalidade_anoÚrepiques_por_mesr}   ÚrepiqueÚvendas_por_mesr‹   ÚvendaÚtotal_sementes_decimalr]   Útotal_mortalidade_decimalrV   Útotal_repicadas_decimalÚtotal_repicadasÚtotal_qtd_especies_decimalr|   rv   rw   rx   ry   rz   ÚhojeÚmetasÚmetas_displayr�   Úmetart   ru   Úusuario_funcionarioÚcriado_por_nomerŽ   sA                                                                    r8   r)   r)   <   sñ  € à„|„˜'Ò!Ð!Ý$Ð%ZÑ[Ô[Ð[õ );Ô(B×(QÒ(QÐR]Ð_jÑ(kÔ(k×(rÒ(rØ"ð )sñ )ô )Ð%ð
 ÐØÐð ˜3 ™8Ðà/ð 1ð 1ˆØ”|”ˆØÐ2Ð2Ð2ØHJÌÔHaÐehÒHhÐHh˜2œ<Ô6ÔDÐDÐnpÔnzô  oKô  oYˆLà$&¤LÔ$>Ø(*¬Ô(IØ$%Ø ,ð	1ð 1Ð Ñ-ð .0¬^ÐB˜2œ>˜>ÀÐØ˜LÔ)Ð*<Ð=Ð=Ô=ÐAQÑQÐ=Ð=Ñ=ØÐ 0Ñ0ÐÐà	„|Ô(ð <à”LÔ5Ô;¸aÑ?ˆ	Ø˜YÐ'Ð'Ô'Ð+;Ñ;Ð'Ð'Ñ'õ  $Ð$7×$>Ò$>Ñ$@Ô$@ÑAÔAÐõ ”×#Ò#Ñ%Ô%Ô*€Iõ ,Ô3×:Ò:Ø"Ø.7ð ;ñ ô ÷ ‚hÝÐ:Ñ;Ô;ð ñ ô ç‚fˆU�m„m—H’HÝ˜Ñ&Ô&ð ñ ô ç‚hˆu�o„oð ð �s˜R‘xÐð (ð Dð Dˆ	Ø˜eÔ$ qÑ(ˆ	Ý&)¨)°MÔ*BÑ&CÔ&CÐ˜Ñ#Ð#õ %Ô,×0Ò0Ñ2Ô2×;Ò;Øñ ô  Ø #  ô%Ðõ $œO×/Ò/Ñ1Ô1ÐÝ'.¤×'=Ò'=Øð (>ñ (ô (ß"š(Ð#9Ñ:Ô:¸3¸B¸3ô(@Ð$å#*¤?×#9Ò#9Øð $:ñ $ô $ß!šÐ"8Ñ9Ô9¸#¸2¸#ô$?Ð à!6×!=Ò!=Ð>fØ>bñ"dô "dßdlÒdlÝ"Ð#8Ñ9Ô9ð emñ e;ô e;ß;Cº8ÐD]Ñ;^Ô;^Ð_bÐ`bÐ_bô"dÐõ )Ô0×4Ò4Ñ6Ô6Ðð +>×*FÒ*FÝÝ D¨uÐ5Ñ5Ô5ØÝ%™œð
ñ 
ô 
ð +Gñ +ô +÷ ‚f˜E€fÑ"Ô"§8¢8¨NÑ#;Ô#;¸C¸R¸Cô+AÐ'ð ':×&BÒ&BÝÝ D¨uÐ5Ñ5Ô5ØÝ%™œð
ñ 
ô 
ð 'Cñ 'ô '÷ ‚f˜D€fÑ!Ô!§(¢(¨>Ñ":Ô":¸3¸B¸3ô'@Ð#ð %8×$>Ò$>Ð?gØ?cñ%eô %eßemÒemÝ˜Ñ'Ô'ð fnñ f)ô f)ß)1ª°/Ñ)BÔ)BÀ3ÀBÀ3ô%HÐ!õ "œ>×-Ò-Ñ/Ô/ÐÝ+1¬>×+@Ò+@Øð ,Añ ,ô ,ß"š(Ð#<Ñ=Ô=¸c¸r¸cô,CÐ(å'-¤~×'<Ò'<Øð (=ñ (ô (ß!šÐ";Ñ<Ô<¸S¸b¸Sô(BÐ$à%9×%@Ò%@ÐAiØAeñ&gô &gßgoÒgoÝÐ6Ñ7Ô7ð hpñ h9ô h9ß9AºÐBVÑ9WÔ9WÐX[ÐY[ÐX[ô&]Ð"õ
 �˜I¨™M¨2Ñ.Ô.€Dð
 €LØð ñ ˆÝ&œ×5Ò5Ø"ð  6ñ  
ô  
ç
Š)ÝÐ+Ñ,Ô,ð ñ 
ô 
à
ô	 ð  ð ð	 	õ 0Ô7×>Ò>Ø"&Ø25ð ?ñ 
ô 
÷ Š)Ý�mÑ$Ô$ð ñ 
ô 
à
ôð ð
 ð 	õ !'¤× 5Ò 5Ø!ð !6ñ !
ô !
ç
Š)ÝÐ.Ñ/Ô/ð ñ 
ô 
à
ô	!ð !ð ð	 	ð 	×ÒØÝ!Ð"6Ñ7Ô7ÝÐ 2Ñ3Ô3Ý!$Ð%:Ñ!;Ô!;ð	
ð 
ñ 	ô 	ð 	ñ 	õ ”×-Ò-ÀÐ-ÑKÔK×TÒTÝ˜Ñ(Ô(ð Uñ ô ç‚fˆU�m„m—H’HÝÐ0Ñ1Ô1ð ñ ô ç‚hˆu�o„oð	 ð �c˜B‘h€Oð $ð Mð Mˆå.1°'Ð:JÔ2KÑ.LÔ.Lˆ˜ œ¨Ñ*Ñ+Ð+õ $Ô+×2Ò2Ø"Ø)-ð 3ñ ô ÷ ‚hÝ˜Ñ&Ô&ð ñ ô ç‚fˆU�m„m—H’HÝ˜-Ñ(Ô(ð ñ ô ç‚hˆu�o„oð ð �5˜2‘:€Lð  ð Sð SˆØ˜%”L 1Ñ$ˆ	à',¨_Ô'=Ð'Iõ #(Ø�/Ô"ñ#$ô #$ð #$ØORð 	�YÑÐõ *Ô1×;Ò;ÝÐ!Ñ"Ô"ñ$ô $Ø$>ô@Ðð $:Ð#Eõ Øñ ô  ð  ØKLð õ !'¤× 8Ò 8ÝÐ$Ñ%Ô%ñ!'ô !'Ø'Dô!FÐð ";Ð!Fõ �EÐ";Ñ<Ô<ñ ô ð ØLMð õ &œo×7Ò7½Ð<QÑ8RÔ8RÑSÔSØ"ô$Ðð  7ÐBõ �%Ð 7Ñ8Ô8ñ ô ð ØHIð õ "0Ô!7×!AÒ!AÅ#ÀmÑBTÔBTÑ!UÔ!UØô"Ðð #=Ð"Hõ �UÐ#=Ñ>Ô>ñ ô ð ØNOð õ  gÐ.Ñ.Ô.€Iå!Ô)×/Ò/Ñ1Ô1ÐÝÔ'×+Ò+Ñ-Ô-×6Ò6°uÑ=Ô=¸c¸r¸cÔBÐå"Ô*×0Ò0Ñ2Ô2€OÝ Ô(×,Ò,Ñ.Ô.×7Ò7¸Ñ>Ô>¸sÀ¸sÔC€Må‰5Œ5�:Š:‰<Œ<€Dõ Ô×&Ò&Ø”<¨Eð 'ñ 3ô 3ß3;²8¸LÑ3IÔ3Ið 
ð ˜"˜1˜"”I€Mà€JØð (ð (ˆàŒ?˜TÒ!Ð!ØÔ!ð "Ø%��à!��à#ˆFð Œ?˜QÒÐØÔ3°d´oÑEÈÑLˆJÝ˜Z¨Ñ-Ô-ˆJˆJàˆJð Œ?ð 	-ð1Ý&8Ô&@×&DÒ&DØ œOð 'Eñ '-ô '-Ð#à"5Ô"AÔ"O��øÝ%Ô2ð 1ð 1ð 1Ø"0���ð1øøøð -ˆOà×ÒØ”|Ô0Ø×3Ò3Ñ5Ô5Ø Ô-Øœ/Ø#œà $Ô 9Øå˜j™/œ/Ø)ð
ð 
ñ 	ô 	ð 	ð 	ð —+’+‘-”-€Kõ �'Ð9ð $<Ø�Yð$<à�7ð$<ð 	Ð0ð	$<ð
 	Ð,ð$<ð 	˜?ð$<ð 	˜ð$<ð 	˜.ð$<ð 	Ð.ð$<ð 	˜/ð$<ð 	Ð0ð$<ð 	�4œ: oÑ6Ô6ð$<ð 	�œ
 <Ñ0Ô0ð$<ð  	Ð.ð!$<ð$ 	+Ð,Lð%$<ð& 	'Ð(Dð'$<ð( 	%Ð&@ð)$<ð, 	.Ð/Rð-$<ð. ,KØ)Fà0TØ,LØ*Hà2×9Ò9Ñ;Ô;Ø 4Ýœ
 <Ñ0Ô0Ý œJÐ'7Ñ8Ô8Ø Ø"ðG$<ð $<ð $<ñ $ô $ð $s   ë1lìlìlc                 ór   — t          j        | ¦  «         t          j        | d¦  «         t	          d¦  «        S )NzLogout efetuado com sucesso!r,   )r   Úlogoutr   r3   r   )r7   s    r8   rÒ   rÒ   r  s4   € Ý„K�ÑÔÐÝÔ�WÐ<Ñ=Ô=Ð=Ý�GÑÔÐr9   c                 ó�   — | j         j        st          d¦  «        S t          | j         j        ¦  «        }t          | dd|i¦  «        S )NÚindexzdashboard/error.htmlrv   )r�   Úis_authenticatedr   r	   r5   r   )r7   rv   s     r8   r6   r6   x  sF   € ØŒ<Ô(ð !Ý˜Ñ Ô Ð Ý˜gœlœoÑ.Ô.€IÝ�'Ð1°KÀÐ3KÑLÔLÐLr9   )5Údjango.shortcutsr   r   Úapps.dashboard.formsr   Údjango.contribr   Údjango.contrib.auth.decoratorsr   r   Úapps.dashboard.utilsr	   Údjango.httpr
   Úapps.especies.modelsr   Úapps.lotes.modelsr   Údjango.db.modelsr   r   r   Úapps.estufa.modelsr   Úapps.repique.modelsr   Úapps.saidas.modelsr   r   Údjango.db.models.functionsr   r›   r°   r   r   r   r   Úapps.protocolos.modelsr   r   Úapps.funcionario.modelsr   r   Úapps.metas.modelsr   Úapps.metas.formsr   Údjango.utils.timezoner   r,   r)   rÒ   r6   © r9   r8   ú<module>ré      sd  ðØ -Ð -Ð -Ð -Ð -Ð -Ð -Ð -Ø +Ð +Ð +Ð +Ð +Ð +Ø Ð Ð Ð Ð Ð Ø 9Ð 9Ð 9Ð 9Ð 9Ð 9Ø #Ð #Ð #Ð #Ð #Ð #Ø .Ð .Ð .Ð .Ð .Ð .Ø -Ð -Ð -Ð -Ð -Ð -Ø )Ð )Ð )Ð )Ð )Ð )Ø *Ð *Ð *Ð *Ð *Ð *Ø .Ð .Ð .Ð .Ð .Ð .Ð .Ð .Ð .Ð .Ø %Ð %Ð %Ð %Ð %Ð %Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'Ø 5Ð 5Ð 5Ð 5Ð 5Ð 5Ð 5Ð 5Ø 3Ð 3Ð 3Ð 3Ð 3Ð 3Ø €€€Ø €€€Ø AÐ AÐ AÐ AÐ AÐ AÐ AÐ AÐ AÐ AÐ AÐ AÐ AÐ AØ @Ð @Ð @Ð @Ð @Ð @Ð @Ð @Ø  Ð  Ð  Ð  Ð  Ð  Ø 3Ð 3Ð 3Ð 3Ð 3Ð 3Ø 6Ð 6Ð 6Ð 6Ð 6Ð 6Ø .Ð .Ð .Ð .Ð .Ð .Ø )Ð )Ð )Ð )Ð )Ð )Ø &Ð &Ð &Ð &Ð &Ð &Ø €€€Ø %Ð %Ð %Ð %Ð %Ð %Ø 6Ð 6Ð 6Ð 6Ð 6Ð 6ðCð Cð Cð< ðrð rñ „ðrðj	ð ð ðMð Mð Mð Mð Mr9   