예제 #1
0
파일: Ice.php 프로젝트: rtsantos/mais
 protected function _pedido($data)
 {
     $idPedido = 0;
     try {
         $idVeiculo = $this->_veiculo($data);
         //$this->_log('Veiculo OK');
         $idCliente = $this->_cliente($data);
         //$this->_log('Cliente OK');
         $idFuncionario = $this->_funcionario($data);
         //$this->_log('Funcionario OK');
         $dtEmis = $this->_toDate($data->dataVistoria);
         $this->_pedido->newRow();
         $ini = clone $dtEmis;
         $fim = clone $dtEmis;
         $ini->addDay(-7);
         $fim->addDay(+7);
         $_where = new ZendT_Db_Where();
         $_where->addFilter('pedido.id_veiculo', $idVeiculo);
         $_where->addFilter('pedido.id_empresa', Auth_Session_User::getInstance()->getIdEmpresa());
         $_where->addFilter('pedido.dt_emis', array($ini, $fim), 'BETWEEN');
         $exists = $this->_pedido->exists($_where);
         $this->_pedido->setIdCliente($idCliente)->setIdFuncionario($idFuncionario)->setDtEmis($dtEmis)->setIdVeiculo($idVeiculo);
         if (!$exists) {
             $itemPedido = array();
             $itemPedido['id_produto'] = $this->_produto->getId();
             $itemPedido['qtd_item'] = 1;
             $this->_pedido->setItemPedido($itemPedido);
             $pagtoPedido = array();
             $pagtoPedido['id_forma_pagto'] = $this->_formaPagto->getId();
             $this->_pedido->setPagamento($pagtoPedido);
             //echo 'Inserindo' . "\n";
             $this->_pedido->insert();
             //echo 'Inserido' . "\n";
         } else {
             //echo 'Atualizando' . "\n";
             $this->_pedido->update();
             //echo 'Atualizado' . "\n";
         }
         //$this->_log('Pedido OK');
         $data->id_pedido = $this->_pedido->getId();
         $data->id_veiculo = $idVeiculo;
         //echo "Pedido: " . $data->id_pedido;
         $this->_vistoria($data);
         //$this->_log('Vistoria OK');
         $idPedido = $this->_pedido->getId();
     } catch (Exception $ex) {
         $this->_log('Placa: ' . $data->placa . '. Erro: ' . $ex->getMessage());
     }
     return $idPedido;
 }