✏️ 正在编辑: Consistencia.php
路径:
/srv/systems_dir/yuppiecred-lidernegocios/library/Core/Banco/Planilha/Consistencia.php
提示:
您可以编辑任何文件(包括二进制文件),但请注意不当修改可能导致文件损坏。
<?php class Core_Banco_Planilha_Consistencia { protected $colunas = array( 'numero_contrato' => 'A', 'numero_ade' => 'B', 'descricao_consistencia' => 'C' ); protected $naoImportadas = array(); protected function _addNaoImportadas($contrato) { $this->naoImportadas[] = $contrato; } protected function _getNaoImportadas() { return $this->naoImportadas; } public function getColuna($coluna) { return isset($this->colunas[$coluna]) ? trim($this->colunas[$coluna]) : null; } public function importar(array $sheetData) { $indice = 0; $dbtable = new Model_DbTable_ContratoPendencia(); for ($i = 2; $i <= count($sheetData); $i++) { $dados = array( 'contrato_id' => null, 'descricao' => null, 'tipo' => null, 'usuario_cadastro' => null ); $this->_getNumeroContrato($sheetData[$i], $dados); $this->_getNumeroAde($sheetData[$i], $dados); $this->_getDescricao($sheetData[$i], $dados); $this->_getTipo($dados); $this->_getUsuario($dados); try { $dbtable->jaExisteConsistencia($dados); $result = $dbtable->insert($dados); if ($result > 0) { $indice++; } else { $sheetData[$i]['motivo'] = ''; $this->_addNaoImportadas($dados); } } catch (Exception $e) { if( $e->getCode()){ $sheetData[$i]['motivo'] = "Contrato não encontrado, verifique sua planilha."; }else{ $sheetData[$i]['motivo'] = $e->getMessage(); } $this->_addNaoImportadas($sheetData[$i]); } } $retorno = new stdClass(); $retorno->importadas = $indice; $retorno->naoImportadas = $this->_getNaoImportadas(); return $retorno; } protected function _getDescricao(array $sheetData, array &$dados) { $dados['descricao'] = isset($sheetData[$this->getColuna('descricao_consistencia')]) ? $sheetData[$this->getColuna('descricao_consistencia')] : null; } protected function _getTipo(array &$dados) { $dados['tipo'] = "2"; } protected function _getUsuario(array &$dados) { $dados['usuario_cadastro'] = Yuppie_Auth::getIdentity()->id; } protected function _getNumeroContrato(array $sheetData, array &$dados) { $modelContrato = new Model_Contrato(); $numeroContrato = isset($sheetData[$this->getColuna('numero_contrato')]) ? $sheetData[$this->getColuna('numero_contrato')] : null; if($numeroContrato){ $contrato = $modelContrato->existe($numeroContrato); if($contrato){ $dados['contrato_id'] = $contrato->id; }else{ $dados['contrato_id'] = null; } }else{ $dados['contrato_id'] = null; } } protected function _getNumeroAde(array $sheetData, array &$dados) { $modelContrato = new Model_Contrato(); $numeroAde = isset($sheetData[$this->getColuna('numero_ade')]) ? $sheetData[$this->getColuna('numero_ade')] : null; if (empty($dados['contrato_id'])) { if ($numeroAde) { $contrato = $modelContrato->existeAde($numeroAde); if ($contrato) { $dados['contrato_id'] = $contrato->id; } else { $dados['contrato_id'] = null; } } else { $dados['contrato_id'] = null; } } } }
💾 保存文件
← 返回文件管理器