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; }
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>'; }