<?php
$tempo_inicio = date('H:i:s'); //hora que termina de endossar todas propostas passada pelo arquivo.
$mail_content = "Tempo de inicio do script: ".$tempo_inicio.".<br><br>";

require_once('Agro_Curl.php');
$Curl = new Agro_Curl();
$linhas = array();

//criando arquivo de log vazio
$filename = '/tmp/tonismar.'.date('YmdGis').'.log';
$whandle = @fopen($filename, 'a');

//lendo arquivo com propostas e nro de parcelas
//padrao do arquivo .csv proposta;nr_de_parcelas
$handle = @fopen("$argv[1]", 'r');

if ($handle) {

    //faz até final de arquivo de entrada acabar
    while (($buffer = fgets($handle, 4096)) !== false) {

        $dados = explode(';', $buffer);
        $Curl->setUrl('/endosso/proposta/duplicarlote/id/'.$dados[0].'/nr_parcelas/'.$dados[1]);
        $Curl->doRequest();

        $result = $Curl->getResult();

        //se o endosso foi gerado com sucesso, pega o id_proposta de endosso
        if ($result->id) {
            $id = $result->id;
            $Curl->setUrl('/endosso/ajax/finaliza/id_proposta/'.$result->id.'/status/AGUARDANDO_ENVIO_SEG/tp_endosso/1/fl_lote/true');
            $Curl->doRequest();

            $result = $Curl->getResult();
        }

        //se foi transmitida gera o boleto
        if (trim($result->message) == trim('Proposta de Endosso encaminhada para fluxo de Emissão.')) {
            $message = $result->message;
            $Curl->setUrl('/default/gerarboleto/gerarboleto/id_proposta/'.$id);
            $Curl->doRequest();

            $result = $Curl->getResult();
        }

       // se boleto foi gerado com sucesso
        if ($result->status) {
            $boleto = 'Boleto gerado com sucesso.';
        } else {
            $boleto = 'Erro ao gerar boleto.';
        }

        $lin = $dados[0].';'.$id.';'.$message.';'.$boleto.';'.$dados[2]."\n";

        fputs($whandle, $lin);
        $mail_content .= $lin.'<br>';

        unset($lin);
    }

    if (!feof($handle)) {
        echo "Error: inesperado\n";
    }

    $tempo_fim = date('H:i:s'); //hora que termina de endossar todas propostas passada pelo arquivo.
    $mail_content .= "<br><br>Tempo de término do script: ".$tempo_fim.".";

    $Curl->sendMail($mail_content);

    fclose($handle);
    fclose($whandle);
} else {
    echo 'Erro ao abrir arquivo '.$argv[1].'.';
}
?>
