示例#1
0
 function getDataInicioDias($id_atividade, $dias)
 {
     $link = connectSQL();
     $pai = new Pai();
     $DAO = new PaiDAO();
     $query_r = mysql_query("SELECT dia FROM " . MYSQL_BASE_FERIADOS . " WHERE excluido IS NULL");
     $query_retorno = array();
     while ($row = mysql_fetch_array($query_r)) {
         $query_retorno[] = $row['dia'];
     }
     mysql_free_result($query_r);
     $query = mysql_query("SELECT ADDDATE(ADDDATE('" . $data_inicio . "', vencimento), (SELECT COUNT(*) FROM " . MYSQL_BASE_FERIADOS . " WHERE dia BETWEEN '" . $data_inicio . "' AND ADDDATE('" . $data_inicio . "', vencimento)) ) AS new_fim,\r\n\t\t\t\t\t\t\t\tdias_corridos\r\n\t\t\t\t\t\t\tFROM " . MYSQL_BASE_PROCEDIMENTO_LICITATORIO_ATIVIDADE . "\r\n\t\t\t\t\t\t\tWHERE excluido IS NULL\r\n\t\t\t\t\t\t\tAND dias_corridos = 'N'\r\n\t\t\t\t\t\t\tAND id = " . $id_atividade . "\r\n\t\t\t\t\t\t\t/*Consulta com calculo do Feriado + os dias Vencimentos*/\r\n\t\t\t\t\t\t\tUNION\r\n\t\t\t\t\t\t\tSELECT ADDDATE('" . $data_inicio . "', vencimento) AS new_fim,\r\n\t\t\t\t\t\t\t\tdias_corridos\r\n\t\t\t\t\t\t\tFROM " . MYSQL_BASE_PROCEDIMENTO_LICITATORIO_ATIVIDADE . "\r\n\t\t\t\t\t\t\tWHERE excluido IS NULL\r\n\t\t\t\t\t\t\tAND dias_corridos = 'S'\r\n\t\t\t\t\t\t\tAND id = " . $id_atividade);
     $res = array();
     // 		$dias_corridos = array();
     // 		$new_fim = array();
     while ($row = mysql_fetch_array($query)) {
         $new_fim[] = array();
         $dias_corridos[] = array();
         // 				'dias_corridos'	=> $row ['dias_corridos'],
         // 				'new_fim'		=> $row ['new_fim']
         $new_fim[] = $row['new_fim'];
         $dias_corridos[] = $row['dias_corridos'];
     }
     if ($dias_corridos == 'N') {
         //Se vencimento não são dias corridos, calcula feriados + sabados e domingos
         $fim = mysql_query("CALL sp_fim_de_semana (@retorno, '" . $data_inicio . "', '" . $new_fim . "');");
         while ($fim_semana = mysql_fetch_array($fim)) {
             $fim_de_semana = $fim_semana['qtd'];
             //Quantidade de Sabados e Domingos
         }
         mysql_free_result($fim);
         $data = date('Y/m/d', strtotime('+' . $fim_de_semana . ' days', strtotime($new_fim)));
         // Calculo Dias de Vencimentos + Feriados + Sabado e Domingos
         $new_data = $pai->verificaDataFim($data, $query_retorno);
     } else {
         $new_data = $new_fim;
         //Se vencimento são dias corridos, calcula data inicial + dias de vencimento
     }
     mysql_free_result($query);
     return $new_data;
 }