TransWar File Browser

Path: C:\

<?php
  ///////////////////////////////////////////////////////////
  //                                                       //
  //      PROGRAMA ATUALIZA QUADRO DE FUNCIONÁRIOS,        //
  //       ZERA APONTAMENTOS DA JORNADA ANTERIOR E         //
  //        ATUALIZA HORÁRIO DE ENTRADA E SAÍDA.           //
  //                                                       //
  ///////////////////////////////////////////////////////////
  ini_set('max_execution_time',259200); 
  ini_set ('memory_limit','-1');
  date_default_timezone_set('America/Sao_Paulo');
  function cmp($a, $b) {
      $c = strnatcmp($a['Nome'] , $b['Nome']);
      return $c;
  }
  function obs($str){
    $regrex = '/#(.*?)#/';
    preg_match_all($regrex, $str, $resultado);
    if(isset($resultado[1][0])){return $resultado[1][0];}else{return '';}
  }
  $matriz = file_get_contents('upload/funcionario.json');
  $pessoa=json_decode($matriz, true);
  $p=count($pessoa);
  require_once("RequestAPI.php");
  $url = "https://transwar.lannister.emitir.me/people/search?is_employee=on";
  $dataResponse = new RequestAPI();
  $resposta = $dataResponse->getResponse($url);
  $data=json_decode($resposta[1], true);
  $resta=$resposta[0];if($resta<=5){sleep(40);}
  if($data!==''){
    if ($data['success']==1){
      $p1=0;
      $npage=ceil($data['total']/40);
      if($npage>=1){
        for($i=1;$i<=$npage;$i++){
          $dataResponse = new RequestAPI();
          $resposta = $dataResponse->getResponse($url.'&page='.$i);
          $data=json_decode($resposta[1], true);
          $resta=$resposta[0];if($resta<=5){sleep(40);}
          if ($data['success']==1){
            foreach ($data['data'] as $funcionario => $y){
              if(isset($y['pis']) and isset($y['hr']['operational']['work_schedule_start']) and isset($y['hr']['operational']['work_schedule_end'])){
                $pis =preg_replace( '/[^0-9]/', '', $y['pis']);
                $pess[$p1]['Pis']=$pis;
                $pess[$p1]['Nome']=trim($y['name']);
                $hora1=strtotime($y['hr']['operational']['work_schedule_start']);
                $pess[$p1]['hora1']=date('Y-m-d H:i', $hora1);
                $hora2=strtotime($y['hr']['operational']['work_schedule_end']);
                $sai = date('Y-m-d H:i', $hora2);
                if(isset($y['departamento'])){
                  $pess[$p1]['Departamento']=trim($y['departamento']);}
                else{
                  $pess[$p1]['Departamento']='';
                }
                if(isset($y['owner']['id'])){
                  $pess[$p1]['Empresa']=trim($y['owner']['id']);}
                else{
                  $pess[$p1]['Empresa']='';
                }
                if(isset($y['hr']['gender'])){
                  $pess[$p1]['Sexo']=trim($y['hr']['gender']);}
                else{
                  $pess[$p1]['Sexo']='';
                }
                if(isset($y['obs'])){
                  $pess[$p1]['Coment']=obs($y['obs']);}
                else{
                  $pess[$p1]['Coment']='';
                }
                if ($hora1 <= $hora2){ 
                  $pess[$p1]['hora2']=$sai;}
                else{ 
                  $pess[$p1]['hora2']=date('Y-m-d H:i', strtotime($sai."+ 1 day"));
                }
                $pess[$p1]['aponta1']='';
                $pess[$p1]['aponta2']='';
                $pess[$p1]['aponta3']='';
                $pess[$p1]['aponta4']='';
                for($y=0;$y<$p;$y++) {
                  if($pis===$pessoa[$y]['Pis']){ 
                    $pess[$p1]['aponta1']=$pessoa[$y]['aponta1'];
                    $pess[$p1]['aponta2']=$pessoa[$y]['aponta2'];
                    $pess[$p1]['aponta3']=$pessoa[$y]['aponta3'];
                    $pess[$p1]['aponta4']=$pessoa[$y]['aponta4'];
                    break;
                  }
                }
                $p1++;
              }
            }
          }
        }
      }
    }
    $dados=$data['data'];
    usort($pess, 'cmp'); 
/*
    echo '<pre>';
    print_r($pess);
*/
    $json=json_encode($pess);
    $fopen=fopen('upload/funcionario.json','w');
    $fwrite=fwrite($fopen,$json);
    fclose($fopen);
  }
  echo "<script type=\"text/javascript\">alert(\"Relação de funcionários atualizada com sucesso!.\");location.href='index.php';</script>";
?>