Advertisement
galvao

Untitled

Feb 13th, 2013
39
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <?php
  2. function formataData($dt)
  3. {
  4.     if (strpos($dt, '-') !== false) {
  5.         list($ano, $mes, $dia) = explode('-', $dt);
  6.         $r = "$dia/$mes/$ano";
  7.     } else {
  8.         list($dia, $mes, $ano) = explode('/', $dt);
  9.         $r = "$ano-$mes-$dia";
  10.     }
  11.  
  12.     return $r;
  13. }
  14.  
  15. function Feriados($ano)
  16. {
  17.     global $feriados;
  18.  
  19.     $dia = 86400;
  20.     $datas = array();
  21.     $datas['pascoa'] = easter_date($ano);
  22.     $datas['sexta_santa'] = $datas['pascoa'] - (2 * $dia);
  23.     $datas['carnaval'] = $datas['pascoa'] - (47 * $dia);
  24.     $datas['corpus_cristi'] = $datas['pascoa'] + (60 * $dia);
  25.  
  26.     $feriados[] = date('d/m',$datas['sexta_santa']);
  27.     $feriados[] = date('d/m',$datas['pascoa']);
  28.     $feriados[] = date('d/m',$datas['corpus_cristi']);
  29. }
  30.  
  31. function Soma1dia($data)
  32. {
  33.     $data = formataData($data);
  34.  
  35.     $d = new DateTime($data);
  36.     $i = new DateInterval('P1D');
  37.     $d->add($i);
  38.  
  39.     return $d->format('d/m/Y');
  40. }
  41.  
  42. function dataToTimestamp($data)
  43. {
  44.     list($dia, $mes, $ano) = explode('/', $data);
  45.     return mktime(0, 0, 0, $mes, $dia, $ano);
  46. }
  47.  
  48. function CalculaDias($xDataInicial, $xDataFinal)
  49. {
  50.     list($diaInicial, $mesInicial, $anoInicial) = explode('/', $xDataInicial);
  51.     list($diaFinal, $mesFinal, $anoFinal) = explode('/', $xDataFinal);
  52.  
  53.     $d0 = new DateTime($anoInicial . '-' . $mesInicial . '-' . $diaInicial);
  54.     $d1 = new DateTime($anoFinal . '-' . $mesFinal . '-' . $diaFinal);
  55.  
  56.     $diff = $d0->diff($d1);
  57.  
  58.     return $diff->format('%a');
  59. }
  60.  
  61. function DiasUteis($yDataInicial,$yDataFinal)
  62. {
  63.     global $feriados;
  64.  
  65.     $diaFDS = 0;
  66.     $calculoDias = CalculaDias($yDataInicial, $yDataFinal); //número de dias entre a data inicial e a final
  67.  
  68.     list($diaInicial, $mesInicial, $anoInicial) = explode('/', $yDataInicial);
  69.     list($diaFinal, $mesFinal, $anoFinal) = explode('/', $yDataFinal);
  70.  
  71.     $d0 = new DateTime("$anoInicial-$mesInicial-$diaInicial");
  72.     $d1 = new DateTime("$anoFinal-$mesFinal-$diaFinal");
  73.  
  74.     for ($n = $calculoDias; $n > 0; $n--) {
  75.         $i = new DateInterval('P' . $n . 'D');
  76.         $d0->add($i);
  77.  
  78.         $diaSemana = $d0->format('w');
  79.         $dataResultante = $d0->format('d/m');
  80.  
  81.         if (in_array($dataResultante, $feriados) or $diaSemana == 0 or $diaSemana == 6) {
  82.             $diaFDS++;
  83.         }
  84.     }
  85.  
  86.     return $calculoDias - $diaFDS;
  87. }
  88.  
  89. $feriados = array (
  90.     '01/01',
  91.     //'02/02',
  92.     //date('d/m',$datas['carnaval']),
  93.     '21/04',
  94.     '01/05',
  95.     '26/05',
  96.     '20/09', // Revolução Farroupilha \m/
  97.     '12/10',
  98.     '02/11',
  99.     '15/11',
  100.     '25/12',
  101. );
  102.  
  103. Feriados(date('Y'));
  104.  
  105. mysql_connect("192.168.0.11", "root", "50ny") or die(mysql_error());
  106. mysql_select_db("glpi2") or die(mysql_error());
  107.  
  108. switch (date("m")){
  109. case "01":    $mes_extenso = Janeiro;     break;
  110. case "02":    $mes_extenso = Fevereiro;   break;
  111. case "03":    $mes_extenso = Março;       break;
  112. case "04":    $mes_extenso = Abril;       break;
  113. case "05":    $mes_extenso = Maio;        break;
  114. case "06":    $mes_extenso = Junho;       break;
  115. case "07":    $mes_extenso = Julho;       break;
  116. case "08":    $mes_extenso = Agosto;      break;
  117. case "09":    $mes_extenso = Setembro;    break;
  118. case "10":    $mes_extenso = Outubro;     break;
  119. case "11":    $mes_extenso = Novembro;    break;
  120. case "12":    $mes_extenso = Dezembro;    break;
  121. }
  122.  
  123. $datainicio      = "01/02/2013";
  124. $datafim         = "28/02/2013";
  125. $hoje            = date("d/m/Y");
  126. $horas_uteis_dia = 8.8;
  127.  
  128. //##########################################################################################################
  129.  
  130. echo  "<!DOCTYPE HTML>
  131. <html>
  132. <head>
  133. <title>Indicadores de atendimento Marelli </title>";
  134. //echo  "<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'>";
  135. echo  "</head>
  136. <body>";
  137. echo  "<font face = 'Verdana'>";
  138.  
  139. echo "<p>M&ecirc;s atual: ";
  140. echo $mes_extenso;
  141. echo "</p>";
  142.  
  143. echo "<p>N&uacute;mero de Horas &Uacute;teis por dia: ";
  144. echo $horas_uteis_dia;
  145. echo "</p>";
  146.  
  147. echo "<p>N&uacute;mero de dias corridos do at&eacute; hoje: ";
  148. $dias_corridos = CalculaDias($datainicio, $hoje) + 1;
  149. echo $dias_corridos;
  150. echo "</p>";
  151.  
  152. echo "<p>N&uacute;mero de dias &Uacute;teis do M&ecirc;s at&eacute; hoje: ";
  153. $diasuteis = DiasUteis($datainicio, $hoje) + 1;
  154. echo $diasuteis;
  155. echo "</p>";
  156.  
  157. echo "<p>N&uacute;mero de horas &Uacute;teis do M&ecirc;s at&eacute; hoje: ";
  158. $horassuteis = round((DiasUteis($datainicio, $hoje) + 1) * $horas_uteis_dia = 8.8, 2);
  159. echo $horassuteis;
  160. echo "</p>";
  161.  
  162. echo "<p>N&uacute;mero de dias &Uacute;teis do M&ecirc;s: ";
  163. $diasuteismes = (int)DiasUteis($datainicio, $datafim) + 1;
  164. echo $diasuteismes;
  165. echo "</p>";
  166.  
  167. $q_tot_chamados_novos         = mysql_query("select count(*) FROM `glpi_tickets` WHERE date BETWEEN '2013-02-01 00:00:00' AND '2013-02-28 23:59:59' and status = 'new'") or die(mysql_error());
  168. //$q_tot_chamados_novos_flavio  = mysql_query("select count(*) FROM `glpi_tickets` WHERE date BETWEEN '2013-02-01 00:00:00' AND '2013-02-28 23:59:59' and status = 'new' and users_id_lastupdater = 135") or die(mysql_error());
  169. //$q_tot_chamados_novos_igor    = mysql_query("select count(*) FROM `glpi_tickets` WHERE date BETWEEN '2013-02-01 00:00:00' AND '2013-02-28 23:59:59' and status = 'new' and users_id_lastupdater = 157") or die(mysql_error());
  170. //$q_tot_chamados_novos_rodrigo = mysql_query("select count(*) FROM `glpi_tickets` WHERE date BETWEEN '2013-02-01 00:00:00' AND '2013-02-28 23:59:59' and status = 'new' and users_id_lastupdater = 332") or die(mysql_error());
  171. //$tot_chamados_novos         = mysql_fetch_array( $q_tot_chamados_novos );
  172. //$tot_chamados_novos_flavio  = mysql_fetch_array( $q_tot_chamados_novos_flavio );
  173. //$tot_chamados_novos_igor    = mysql_fetch_array( $q_tot_chamados_novos_igor );
  174. //$tot_chamados_novos_rodrigo = mysql_fetch_array( $q_tot_chamados_novos_rodrigo );
  175.  
  176. echo "<p align = 'center'>";
  177. echo "<font size = '6' color = '#FF0000'>";
  178. echo "N&uacute;mero de chamados n&atilde;o atendidos: ";
  179. $tot_chamados_novos = mysql_fetch_array( $q_tot_chamados_novos );
  180. echo $tot_chamados_novos[0];
  181. echo "</p>";
  182.  
  183.  
  184.  
  185. echo "<table align = 'center' border='1'>";
  186. echo "<tr>
  187. <th> </th> <th width='90'>Geral</th> <th width='90'>Flavio</th> <th width='90'>Igor</th> <th width='90'>Rodrigo</th>
  188. </tr>";
  189.  
  190. $q_tot_chamados_geral   = mysql_query("SELECT count(*) FROM glpi_tickets WHERE date BETWEEN '2013-02-01 00:00:00' AND '2013-02-28 23:59:59'") or die(mysql_error());
  191. $q_tot_chamados_flavio  = mysql_query("SELECT count(*) FROM `glpi_tickets` WHERE date BETWEEN '2013-02-01 00:00:00' AND '2013-02-28 23:59:59' and users_id_lastupdater = 135") or die(mysql_error());
  192. $q_tot_chamados_igor    = mysql_query("SELECT count(*) FROM `glpi_tickets` WHERE date BETWEEN '2013-02-01 00:00:00' AND '2013-02-28 23:59:59' and users_id_lastupdater = 157") or die(mysql_error());
  193. $q_tot_chamados_rodrigo = mysql_query("SELECT count(*) FROM `glpi_tickets` WHERE date BETWEEN '2013-02-01 00:00:00' AND '2013-02-28 23:59:59' and users_id_lastupdater = 332") or die(mysql_error());
  194. $tot_chamados_geral   = mysql_fetch_array( $q_tot_chamados_geral );
  195. $tot_chamados_flavio  = mysql_fetch_array( $q_tot_chamados_flavio );
  196. $tot_chamados_igor    = mysql_fetch_array( $q_tot_chamados_igor );
  197. $tot_chamados_rodrigo = mysql_fetch_array( $q_tot_chamados_rodrigo );
  198.  
  199. echo    "<tr align=center>";
  200. echo "<td align=left>Total de Chamados</td> <td>";
  201. echo $tot_chamados_geral[0] - $tot_chamados_novos[0];
  202. echo "</td>";
  203. echo "<td>";
  204. echo "$tot_chamados_flavio[0]";
  205. echo "</td>";
  206. echo "<td>";
  207. echo "$tot_chamados_igor[0]";
  208. echo "</td>";
  209. echo "<td>";
  210. echo "$tot_chamados_rodrigo[0]";
  211. echo "</td>";
  212. echo    "</tr>";
  213.  
  214. $q_tot_chamados_abertos         = mysql_query("select count(*) FROM `glpi_tickets` WHERE date BETWEEN '2013-02-01 00:00:00' AND '2013-02-28 23:59:59' and status = 'assign'") or die(mysql_error());
  215. $q_tot_chamados_abertos_flavio  = mysql_query("select count(*) FROM `glpi_tickets` WHERE date BETWEEN '2013-02-01 00:00:00' AND '2013-02-28 23:59:59' and status = 'assign' and users_id_lastupdater = 135") or die(mysql_error());
  216. $q_tot_chamados_abertos_igor    = mysql_query("select count(*) FROM `glpi_tickets` WHERE date BETWEEN '2013-02-01 00:00:00' AND '2013-02-28 23:59:59' and status = 'assign' and users_id_lastupdater = 157") or die(mysql_error());
  217. $q_tot_chamados_abertos_rodrigo = mysql_query("select count(*) FROM `glpi_tickets` WHERE date BETWEEN '2013-02-01 00:00:00' AND '2013-02-28 23:59:59' and status = 'assign' and users_id_lastupdater = 332") or die(mysql_error());
  218. $tot_chamados_abertos         = mysql_fetch_array( $q_tot_chamados_abertos );
  219. $tot_chamados_abertos_flavio  = mysql_fetch_array( $q_tot_chamados_abertos_flavio );
  220. $tot_chamados_abertos_igor    = mysql_fetch_array( $q_tot_chamados_abertos_igor );
  221. $tot_chamados_abertos_rodrigo = mysql_fetch_array( $q_tot_chamados_abertos_rodrigo );
  222.  
  223. echo    "<tr align=center>";
  224. echo "<td align=left>Chamados Abertos</td> <td>";
  225. echo "$tot_chamados_abertos[0]";
  226. echo "</td>";
  227. echo "<td>";
  228. echo "$tot_chamados_abertos_flavio[0]";
  229. echo "</td>";
  230. echo "<td>";
  231. echo "$tot_chamados_abertos_igor[0]";
  232. echo "</td>";
  233. echo "<td>";
  234. echo "$tot_chamados_abertos_rodrigo[0]";
  235. echo "</td>";
  236. echo    "</tr>";
  237.  
  238. $q_tot_chamados_fechados         = mysql_query("select count(*) FROM `glpi_tickets` WHERE date BETWEEN '2013-02-01 00:00:00' AND '2013-02-28 23:59:59' and status = 'closed'") or die(mysql_error());
  239. $q_tot_chamados_fechados_flavio  = mysql_query("select count(*) FROM `glpi_tickets` WHERE date BETWEEN '2013-02-01 00:00:00' AND '2013-02-28 23:59:59' and status = 'closed' and users_id_lastupdater = 135") or die(mysql_error());
  240. $q_tot_chamados_fechados_igor    = mysql_query("select count(*) FROM `glpi_tickets` WHERE date BETWEEN '2013-02-01 00:00:00' AND '2013-02-28 23:59:59' and status = 'closed' and users_id_lastupdater = 157") or die(mysql_error());
  241. $q_tot_chamados_fechados_rodrigo = mysql_query("select count(*) FROM `glpi_tickets` WHERE date BETWEEN '2013-02-01 00:00:00' AND '2013-02-28 23:59:59' and status = 'closed' and users_id_lastupdater = 332") or die(mysql_error());
  242. $tot_chamados_fechados         = mysql_fetch_array( $q_tot_chamados_fechados );
  243. $tot_chamados_fechados_flavio  = mysql_fetch_array( $q_tot_chamados_fechados_flavio );
  244. $tot_chamados_fechados_igor    = mysql_fetch_array( $q_tot_chamados_fechados_igor );
  245. $tot_chamados_fechados_rodrigo = mysql_fetch_array( $q_tot_chamados_fechados_rodrigo );
  246.  
  247. echo    "<tr align=center>";
  248. echo "<td align=left>Chamados Fechados</td> <td>";
  249. echo "$tot_chamados_fechados[0]";
  250. echo "</td>";
  251. echo "<td>";
  252. echo "$tot_chamados_fechados_flavio[0]";
  253. echo "</td>";
  254. echo "<td>";
  255. echo "$tot_chamados_fechados_igor[0]";
  256. echo "</td>";
  257. echo "<td>";
  258. echo "$tot_chamados_fechados_rodrigo[0]";
  259. echo "</td>";
  260. echo    "</tr>";
  261.  
  262. $q_tot_chamados_solucionados         = mysql_query("select count(*) FROM `glpi_tickets` WHERE date BETWEEN '2013-02-01 00:00:00' AND '2013-02-28 23:59:59' and status = 'solved'") or die(mysql_error());
  263. $q_tot_chamados_solucionados_flavio  = mysql_query("select count(*) FROM `glpi_tickets` WHERE date BETWEEN '2013-02-01 00:00:00' AND '2013-02-28 23:59:59' and status = 'solved' and users_id_lastupdater = 135") or die(mysql_error());
  264. $q_tot_chamados_solucionados_igor    = mysql_query("select count(*) FROM `glpi_tickets` WHERE date BETWEEN '2013-02-01 00:00:00' AND '2013-02-28 23:59:59' and status = 'solved' and users_id_lastupdater = 157") or die(mysql_error());
  265. $q_tot_chamados_solucionados_rodrigo = mysql_query("select count(*) FROM `glpi_tickets` WHERE date BETWEEN '2013-02-01 00:00:00' AND '2013-02-28 23:59:59' and status = 'solved' and users_id_lastupdater = 332") or die(mysql_error());
  266. $tot_chamados_solucionados         = mysql_fetch_array( $q_tot_chamados_solucionados );
  267. $tot_chamados_solucionados_flavio  = mysql_fetch_array( $q_tot_chamados_solucionados_flavio );
  268. $tot_chamados_solucionados_igor    = mysql_fetch_array( $q_tot_chamados_solucionados_igor );
  269. $tot_chamados_solucionados_rodrigo = mysql_fetch_array( $q_tot_chamados_solucionados_rodrigo );
  270.  
  271. echo    "<tr align=center>";
  272. echo "<td align=left>Chamados Solucionados</td> <td>";
  273. echo "$tot_chamados_solucionados[0]";
  274. echo "</td>";
  275. echo "<td>";
  276. echo "$tot_chamados_solucionados_flavio[0]";
  277. echo "</td>";
  278. echo "<td>";
  279. echo "$tot_chamados_solucionados_igor[0]";
  280. echo "</td>";
  281. echo "<td>";
  282. echo "$tot_chamados_solucionados_rodrigo[0]";
  283. echo "</td>";
  284. echo    "</tr>";
  285.  
  286. $q_tot_chamados_pendentes         = mysql_query("select count(*) FROM `glpi_tickets` WHERE date BETWEEN '2000-01-01 00:00:00' AND '2013-01-31 23:59:59' and status = 'assign'") or die(mysql_error());
  287. $q_tot_chamados_pendentes_flavio  = mysql_query("select count(*) FROM `glpi_tickets` WHERE date BETWEEN '2000-01-01 00:00:00' AND '2013-01-31 23:59:59' and status = 'assign' and users_id_lastupdater = 135") or die(mysql_error());
  288. $q_tot_chamados_pendentes_igor    = mysql_query("select count(*) FROM `glpi_tickets` WHERE date BETWEEN '2000-01-01 00:00:00' AND '2013-01-31 23:59:59' and status = 'assign' and users_id_lastupdater = 157") or die(mysql_error());
  289. $q_tot_chamados_pendentes_rodrigo = mysql_query("select count(*) FROM `glpi_tickets` WHERE date BETWEEN '2000-01-01 00:00:00' AND '2013-01-31 23:59:59' and status = 'assign' and users_id_lastupdater = 332") or die(mysql_error());
  290. $tot_chamados_pendentes           = mysql_fetch_array( $q_tot_chamados_pendentes );
  291. $tot_chamados_pendentes_flavio  = mysql_fetch_array( $q_tot_chamados_pendentes_flavio );
  292. $tot_chamados_pendentes_igor    = mysql_fetch_array( $q_tot_chamados_pendentes_igor );
  293. $tot_chamados_pendentes_rodrigo = mysql_fetch_array( $q_tot_chamados_pendentes_rodrigo );
  294.  
  295. echo    "<tr align=center>";
  296. echo "<td align=left>Chamados Pendentes</td> <td>";
  297. echo "$tot_chamados_pendentes[0]";
  298. echo "</td>";
  299. echo "<td>";
  300. echo "$tot_chamados_pendentes_flavio[0]";
  301. echo "</td>";
  302. echo "<td>";
  303. echo "$tot_chamados_pendentes_igor[0]";
  304. echo "</td>";
  305. echo "<td>";
  306. echo "$tot_chamados_pendentes_rodrigo[0]";
  307. echo "</td>";
  308. echo    "</tr>";
  309.  
  310. $q_tot_chamados_segundos         = mysql_query("select sum(actiontime) from glpi_tickettasks where date BETWEEN '2013-02-01 00:00:00' AND '2013-02-28 23:59:59'") or die(mysql_error());
  311. $q_tot_chamados_segundos_flavio  = mysql_query("select sum(actiontime) from glpi_tickettasks where date BETWEEN '2013-02-01 00:00:00' AND '2013-02-28 23:59:59' and users_id = 135") or die(mysql_error());
  312. $q_tot_chamados_segundos_igor    = mysql_query("select sum(actiontime) from glpi_tickettasks where date BETWEEN '2013-02-01 00:00:00' AND '2013-02-28 23:59:59' and users_id = 157") or die(mysql_error());
  313. $q_tot_chamados_segundos_rodrigo = mysql_query("select sum(actiontime) from glpi_tickettasks where date BETWEEN '2013-02-01 00:00:00' AND '2013-02-28 23:59:59' and users_id = 332") or die(mysql_error());
  314. $tot_chamados_segundos         = mysql_fetch_array( $q_tot_chamados_segundos );
  315. $tot_chamados_segundos_flavio  = mysql_fetch_array( $q_tot_chamados_segundos_flavio );
  316. $tot_chamados_segundos_igor    = mysql_fetch_array( $q_tot_chamados_segundos_igor );
  317. $tot_chamados_segundos_rodrigo = mysql_fetch_array( $q_tot_chamados_segundos_rodrigo );
  318.  
  319. //echo    "<tr align=center>";
  320. //        echo "<td align=left>Total em Segundos de atendimentos</td> <td>";
  321. //        echo "$tot_chamados_segundos[0]";
  322. //        echo "</td>";
  323. //        echo "<td>";
  324. //        echo "$tot_chamados_segundos_flavio[0]";
  325. //        echo "</td>";
  326. //        echo "<td>";
  327. //        echo "$tot_chamados_segundos_igor[0]";
  328. //        echo "</td>";
  329. //        echo "<td>";
  330. //        echo "$tot_chamados_segundos_rodrigo[0]";
  331. //        echo "</td>";
  332. //echo    "</tr>";
  333.  
  334. echo    "<tr align=center>";
  335. echo "<td align=left>Total em Horas de atendimentos</td> <td>";
  336. $hgeral   = round ($tot_chamados_segundos[0]/3600, 2);
  337. $hflavio  = round ($tot_chamados_segundos_flavio[0]/3600, 2);
  338. $higor    = round ($tot_chamados_segundos_igor[0]/3600, 2);
  339. $hrodrigo = round ($tot_chamados_segundos_rodrigo[0]/3600, 2);
  340. echo "$hgeral";
  341. echo "</td>";
  342. echo "<td>";
  343. echo "$hflavio";
  344. echo "</td>";
  345. echo "<td>";
  346. echo "$higor";
  347. echo "</td>";
  348. echo "<td>";
  349. echo "$hrodrigo";
  350. echo "</td>";
  351. echo    "</tr>";
  352. echo    "<tr align=center>";
  353. echo "<td align=left>Total em Dias &uacute;teis de atendimentos</td> <td>";
  354. $dugeral   = round ($hgeral/$horas_uteis_dia, 2);
  355. $duflavio  = round ($hflavio/$horas_uteis_dia, 2);
  356. $duigor    = round ($higor/$horas_uteis_dia, 2);
  357. $durodrigo = round ($hrodrigo/$horas_uteis_dia, 2);
  358. echo "$dugeral";
  359. echo "</td>";
  360. echo "<td>";
  361. echo "$duflavio";
  362. echo "</td>";
  363. echo "<td>";
  364. echo "$duigor";
  365. echo "</td>";
  366. echo "<td>";
  367. echo "$durodrigo";
  368. echo "</td>";
  369. echo    "</tr>";
  370.  
  371. echo    "</table>";
  372.  
  373. //##########################################################################################################
  374.  
  375. echo "<p align=center>";
  376. echo "<img src=\"http://chart.apis.google.com/chart?chs=400x150&chd=t:70,30&cht=p3&chl=Homens|Mulheres&chl=70%|30%&chdl=Homens|Mulheres&chco=c60000|1da3f8&chf=bg,s,58e015\" />";
  377.  
  378. echo "<img src=\"http://chart.apis.google.com/chart?chs=400x150&chd=t:70,30&cht=p3&chl=Homens|Mulheres&chl=70%|30%&chdl=Homens|Mulheres&chco=c60000|1da3f8&chf=bg,s,58e015\" />";
  379. echo "</p>";
  380.  
  381. echo  "</center>
  382. </body>
  383. </html>";
  384. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement