Пример #1
0
 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;
 }
Пример #2
0
 public function importXls($fileName = '')
 {
     $cnpj = '';
     $_pessoa = new Ca_Model_Pessoa_Mapper();
     $_pessoa->setCodigo($cnpj)->retrieve();
     $idCliente = $_pessoa->getId();
     if (!$fileName) {
         $fileName = APPLICATION_PATH . '/modules/vendas/contexts/Vsp/tokio.xls';
     }
     $objReader = ZendT_Excel_IOFactory::createReader('Excel5');
     $objPHPExcel = $objReader->load($fileName);
     $data = $objPHPExcel->getSheet()->toArray(null, true, true, true);
     if (count($data) > 0) {
         $_pedido = new Vendas_DataView_Pedido_MapperView();
         $_veiculo = new Frota_DataView_Veiculo_MapperView();
         unset($data[0]);
         foreach ($data as $row) {
             $_veiculo->newRow()->setPlaca($row['D']);
             if ($_veiculo->exists()) {
                 $_veiculo->setDescricao($row['C'])->setChassi($row['E'])->setChassi()->update();
             } else {
                 $_veiculo->setDescricao($row['C'])->setChassi($row['E'])->setChassi()->insert();
             }
             $_pedido->newRow()->setIdCliente($idCliente)->setDtEmis($row['A'])->setSinistro($row['B'])->setIdVeiculo($_veiculo->getId());
             if (!$_pedido->exists()) {
                 $_pedido->insert();
             }
         }
     }
     echo '<pre>';
     print_r($data);
     echo '</pre>';
 }