Advertisement
Guest User

Farinhas

a guest
Jun 26th, 2019
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.84 KB | None | 0 0
  1. def sub_pacotes_farinha(sub_pacotes):
  2.  
  3. sub_pacotes_dict = {
  4. 'Farinhas Biscoitos': [0, 0, 0],
  5. 'Farinhas Domésticas': [0, 0, 0],
  6. 'Farinhas Integrais': [0, 0, 0],
  7. 'Farinhas Massas': [0, 0, 0],
  8. 'Farinhas Nutrição Infantil': [0, 0, 0],
  9. 'Farinhas Pães': [0, 0, 0],
  10. 'Subprodutos': [0, 0, 0]
  11. }
  12.  
  13.  
  14. for item in sub_pacotes:
  15. if( #FARINHAS BISCOITOS
  16. item.cd_sub_pacote == '000000000010000712' or # FARINHA C1 JACQUET SC25P
  17. item.cd_sub_pacote == '000000000010000205' or # FARINHA DE TRIGO INDUSTRIAL C1 SC25
  18. item.cd_sub_pacote == '000000000010000206' or # FARINHA DE TRIGO INDUSTRIAL C1 SC25I
  19. item.cd_sub_pacote == '000000000010000235' or # FARINHA DE TRIGO INDUSTRIAL C6 BAG
  20. item.cd_sub_pacote == '000000000010000236' # FARINHA DE TRIGO INDUSTRIAL C6 KG
  21. ):
  22. sub_pacotes_dict['Farinhas Biscoitos'][0] += item.fat_mes_vol_real
  23. sub_pacotes_dict['Farinhas Biscoitos'][1] += item.fat_mes_vol_meta
  24. try:
  25. sub_pacotes_dict['Farinhas Biscoitos'][2] = 100 * (
  26. sub_pacotes_dict['Farinhas Biscoitos'][0]/sub_pacotes_dict['Farinhas Biscoitos'][1])
  27. except ZeroDivisionError:
  28. sub_pacotes_dict['Farinhas Biscoitos'][2] = 100
  29.  
  30. elif( #FARINHAS DOMÉSTICAS
  31. item.cd_sub_pacote == '000000000010000194' or # FARINHA DE TRIGO BOM PRATO E3 F10X1
  32. item.cd_sub_pacote == '000000000010000195' or # FARINHA DE TRIGO BOM PRATO E3 F5X5
  33. item.cd_sub_pacote == '000000000010000198' or # FARINHA DE TRIGO ESPECIAL E4 F10X1
  34. item.cd_sub_pacote == '000000000010000199' # FARINHA DE TRIGO ESPECIAL E4 F5X5
  35. ):
  36. sub_pacotes_dict['Farinhas Domésticas'][0] += item.fat_mes_vol_real
  37. sub_pacotes_dict['Farinhas Domésticas'][1] += item.fat_mes_vol_meta
  38. try:
  39. sub_pacotes_dict['Farinhas Domésticas'][2] = 100 * (
  40. sub_pacotes_dict['Farinhas Domésticas'][0] / sub_pacotes_dict['Farinhas Domésticas'][1])
  41. except ZeroDivisionError:
  42. sub_pacotes_dict['Farinhas Domésticas'][2] = 100
  43.  
  44. elif( #FARINHAS INTEGRAIS
  45. item.cd_sub_pacote == '000000000010000229' or # FARINHA DE TRIGO INT FINA1 SC25
  46. item.cd_sub_pacote == '000000000010000230' or # FARINHA DE TRIGO INT FINA1 SC25P
  47. item.cd_sub_pacote == '000000000010000231' or # FARINHA DE TRIGO INT FINA2 BAG1000
  48. item.cd_sub_pacote == '000000000010000232' or # FARINHA DE TRIGO INT FINA2 F10X1
  49. item.cd_sub_pacote == '000000000010000233' or # FARINHA DE TRIGO INT FINA2 SC25
  50. item.cd_sub_pacote == '000000000010000253' or # FARINHA DE TRIGO INT GROSSA F10X1
  51. item.cd_sub_pacote == '000000000010000254' or # FARINHA DE TRIGO INT GROSSA SC25
  52. item.cd_sub_pacote == '000000000010000224' or # FARINHA DE TRIGO INT MEDIA SC25P
  53. item.cd_sub_pacote == '000000000010000710' or # FARINHA INT DE CENTEIO 10X1
  54. item.cd_sub_pacote == '000000000010000245' or # FARINHA INT DE CENTEIO SC25
  55. item.cd_sub_pacote == '000000000010000246' or # FARINHA INT DE CENTEIO SC25P
  56. item.cd_sub_pacote == '000000000010000268' or # FIBRA DE TRIGO IREKS SC25P
  57. item.cd_sub_pacote == '000000000010000243' or # FIBRA DE TRIGO SC25P
  58. item.cd_sub_pacote == '000000000010000226' # TRIGO FRAGMENTADO SC25P
  59. ):
  60. sub_pacotes_dict['Farinhas Integrais'][0] += item.fat_mes_vol_real
  61. sub_pacotes_dict['Farinhas Integrais'][1] += item.fat_mes_vol_meta
  62. try:
  63. sub_pacotes_dict['Farinhas Integrais'][2] = 100 * (
  64. sub_pacotes_dict['Farinhas Integrais'][0] / sub_pacotes_dict['Farinhas Integrais'][1])
  65. except ZeroDivisionError:
  66. sub_pacotes_dict['Farinhas Integrais'][2] = 100
  67.  
  68. elif( #FARINHAS MASSAS
  69. item.cd_sub_pacote == '000000000010000207' or # FARINHA DE TRIGO INDUSTRIAL C1 SC25P
  70. item.cd_sub_pacote == '000000000010000220' or # FARINHA DE TRIGO INDUSTRIAL C5 SC25
  71. item.cd_sub_pacote == '000000000010000221' or # FARINHA DE TRIGO INDUSTRIAL C5 SC25P
  72. item.cd_sub_pacote == '000000000010000681' or # FARINHA DE TRIGO MESCLA BAG1250
  73. item.cd_sub_pacote == '000000000010000239' # SEMOLA F10X1
  74. ):
  75. sub_pacotes_dict['Farinhas Massas'][0] += item.fat_mes_vol_real
  76. sub_pacotes_dict['Farinhas Massas'][1] += item.fat_mes_vol_meta
  77. try:
  78. sub_pacotes_dict['Farinhas Massas'][2] = 100 * (
  79. sub_pacotes_dict['Farinhas Massas'][0] / sub_pacotes_dict['Farinhas Massas'][1])
  80. except ZeroDivisionError:
  81. sub_pacotes_dict['Farinhas Massas'][2] = 100
  82.  
  83. elif( #FARINHAS NUTIÇÃO INFANTIL
  84. item.cd_sub_pacote == '000000000010000670' # FARINHA DE TRIGO NUTRICAO INFANT BAG
  85. ):
  86. sub_pacotes_dict['Farinhas Nutrição Infantil'][0] += item.fat_mes_vol_real
  87. sub_pacotes_dict['Farinhas Nutrição Infantil'][1] += item.fat_mes_vol_meta
  88. try:
  89. sub_pacotes_dict['Farinhas Nutrição Infantil'][2] = 100 * (
  90. sub_pacotes_dict['Farinhas Nutrição Infantil'][0] / sub_pacotes_dict['Farinhas Nutrição Infantil'][1])
  91. except ZeroDivisionError:
  92. sub_pacotes_dict['Farinhas Nutrição Infantil'][2] = 100
  93. elif( #FARINHAS PÃES
  94. item.cd_sub_pacote == '000000000010000192' or # FARINHA DE TRIGO ESPECIAL E2 SC25
  95. item.cd_sub_pacote == '000000000010000193' or # FARINHA DE TRIGO ESPECIAL E2 SC25P
  96. item.cd_sub_pacote == '000000000010000201' or # FARINHA DE TRIGO ESPECIAL E4 SC25
  97. item.cd_sub_pacote == '000000000010000202' or # FARINHA DE TRIGO ESPECIAL E4 SC25I
  98. item.cd_sub_pacote == '000000000010000203' or # FARINHA DE TRIGO ESPECIAL E4 SC25P
  99. item.cd_sub_pacote == '000000000010000821' or # FARINHA DE TRIGO IND FERMENTO C2 BAG
  100. item.cd_sub_pacote == '000000000010000822' or # FARINHA DE TRIGO IND FERMENTO C2 SC25P
  101. item.cd_sub_pacote == '000000000010000208' or # FARINHA DE TRIGO INDUSTRIAL C2 BAG
  102. item.cd_sub_pacote == '000000000010000210' or # FARINHA DE TRIGO INDUSTRIAL C2 SC25P
  103. item.cd_sub_pacote == '000000000010000211' or # FARINHA DE TRIGO INDUSTRIAL C3 BAG
  104. item.cd_sub_pacote == '000000000010000212' or # FARINHA DE TRIGO INDUSTRIAL C3 KG
  105. item.cd_sub_pacote == '000000000010000214' or # FARINHA DE TRIGO INDUSTRIAL C3 SC25I
  106. item.cd_sub_pacote == '000000000010000215' or # FARINHA DE TRIGO INDUSTRIAL C3 SC25P
  107. item.cd_sub_pacote == '000000000010000691' or # FARINHA ESPECIAL PAO CONGELADO E5 SC25
  108. item.cd_sub_pacote == '000000000010000263' # FARINHA PRE MIST AGRAMIX SC25V
  109. ):
  110. sub_pacotes_dict['Farinhas Pães'][0] += item.fat_mes_vol_real
  111. sub_pacotes_dict['Farinhas Pães'][1] += item.fat_mes_vol_meta
  112. try:
  113. sub_pacotes_dict['Farinhas Pães'][2] = 100 * (
  114. sub_pacotes_dict['Farinhas Pães'][0] / sub_pacotes_dict['Farinhas Pães'][
  115. 1])
  116. except ZeroDivisionError:
  117. sub_pacotes_dict['Farinhas Pães'][2] = 100
  118.  
  119. elif( #SUBPRODUTOS
  120. item.cd_sub_pacote == '000000000020000128' or # FARELO DE TRIGO KG
  121. item.cd_sub_pacote == '000000000020000119' or # FARINHA PARA COLA BAG
  122. item.cd_sub_pacote == '000000000020000120' or # FARINHA PARA COLA SC50
  123. item.cd_sub_pacote == '000000000020000132' # RESIDUO DE TRIGO GROSSO KG
  124. ):
  125. sub_pacotes_dict['Subprodutos'][0] += item.fat_mes_vol_real
  126. sub_pacotes_dict['Subprodutos'][1] += item.fat_mes_vol_meta
  127. try:
  128. sub_pacotes_dict['Subprodutos'][2] = 100 * (
  129. sub_pacotes_dict['Subprodutos'][0] / sub_pacotes_dict['Subprodutos'][
  130. 1])
  131. except ZeroDivisionError:
  132. sub_pacotes_dict['Subprodutos'][2] = 100
  133.  
  134. while len(sub_pacotes_dict) > 6:
  135. menor = ''
  136. valor_base = int(sys.maxsize)
  137. for item in sub_pacotes_dict:
  138. if sub_pacotes_dict[item][0] < valor_base:
  139. valor_base = sub_pacotes_dict[item][0]
  140. menor = item
  141. del sub_pacotes_dict[menor]
  142.  
  143. sub_pacotes_list = sorted(sub_pacotes_dict.items(), key=lambda x: x[1][0], reverse=True)
  144. return sub_pacotes_list
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement