Exemple #1
0
     if ($exec_sql == 0) {
         $error = " erro 1" . $sql_ts_anterior;
     }
     $achou = mysql_num_rows($exec_sql);
     if ($achou > 0) {
         //esse status já esteve setado em outro momento
         $row_ts = mysql_fetch_array($exec_sql);
         // if (array_key_exists($rowABS['sistema'],$H_horarios)){  //verifica se o código da área possui carga horária definida no arquivo config.inc.php
         // $areaT = $rowABS['sistema']; //Recebe o valor da área de atendimento do chamado
         // } else $areaT = 1; //Carga horária default definida no arquivo config.inc.php
         $areaT = "";
         $areaT = testaArea($areaT, $rowABS['area_cod'], $H_horarios);
         $dt = new dateOpers();
         $dt->setData1($row_ts['ts_data']);
         $dt->setData2(date('Y-m-d H:i:s'));
         $dt->tempo_valido($dt->data1, $dt->data2, $H_horarios[$areaT][0], $H_horarios[$areaT][1], $H_horarios[$areaT][2], $H_horarios[$areaT][3], "H");
         $segundos = $dt->diff["sValido"];
         //segundos válidos
         $sql_upd = "update tempo_status set ts_tempo = (ts_tempo+" . $segundos . ") , ts_data ='" . date('Y-m-d H:i:s') . "' where ts_ocorrencia = " . $rowABS['numero'] . " and\n\t\t\t\t\t\t\tts_status = " . $rowABS['status_cod'] . " ";
         $exec_upd = mysql_query($sql_upd);
         if ($exec_upd == 0) {
             $error .= " erro 2";
         }
     } else {
         $sql_ins = "insert into tempo_status (ts_ocorrencia, ts_status, ts_tempo, ts_data) values (" . $rowABS['numero'] . ", " . $rowABS['status_cod'] . ", 0, '" . date('Y-m-d H:i:s') . "' )";
         $exec_ins = mysql_query($sql_ins);
         if ($exec_ins == 0) {
             $error .= " erro 3 " . $sql_ins;
         }
     }
 }
 $j++;
 $texto = trim($row['descricao']);
 $limite = 250;
 if (strlen($texto) > $limite) {
     $texto = substr($texto, 0, $limite - 3) . "...";
 }
 if ($calcula) {
     $areaChamado = "";
     $areaChamado = testaArea($areaChamado, $row['cod_area'], $H_horarios);
     $dtR->setData1($row['data_abertura']);
     if ($row['data_atendimento'] == "") {
         $dtR->setData2($hoje);
     } else {
         $dtR->setData2($row['data_atendimento']);
     }
     $dtR->tempo_valido($dtR->data1, $dtR->data2, $H_horarios[$areaChamado][0], $H_horarios[$areaChamado][1], $H_horarios[$areaChamado][2], $H_horarios[$areaChamado][3], "H");
     $diffR = $dtR->tValido;
     $diff2R = $dtR->diff["hValido"];
     $segundosR = $dtR->diff["sValido"];
     //segundos válidos
     $diff = date_difference($row['data_abertura'], $hoje);
     $sep = explode("dias", $diff);
     if ($sep[0] > 20) {
         //Se o chamado estiver aberto a mais de 20 dias o tempo é mostrado em dias para não ficar muito pesado.
         $diff = $sep[0] . " dias";
         $segundosS = $sep[0] * 86400;
     } else {
         $dtS->setData1($row['data_abertura']);
         if ($row['data_fechamento'] == "") {
             $dtS->setData2($hoje);
         } else {