public function incluirprodutoAction() { $buscaPedido = new SolicitarReadequacaoCustoDAO(); if (isset($_POST['verifica']) && $_POST['verifica']) { if ($_POST['verifica'] == "SI") { $status = $_POST['status']; $idPronac = $_POST['idpronac']; $atualizaPedido = SolicitarReadequacaoCustoDAO::controlaStatus($status, $idPronac); die; } else { $status = $_POST['status']; $idPronac = $_POST['idpronac']; $atualizaPedido = SolicitarReadequacaoCustoDAO::controlaStatus($status, $idPronac); die; } } if (isset($_GET['idpronac'])) { $idPronac = $_GET['idpronac']; $prods = $buscaPedido->buscarProdutos($idPronac); $this->view->prods = $prods; } if (isset($_POST['ufAjax'])) { $this->_helper->layout->disableLayout(); // desabilita o Zend_Layout $iduf = $_POST['ufAjax']; if ($iduf != 0) { $resultadoMunicipio = SolicitarReadequacaoCustoDAO::buscarMunicipio($iduf); $i = 0; $municipio['error'] = false; foreach ($resultadoMunicipio as $valor) { $municipio[$i]['idMunicipioIBGE'] = $valor->idMunicipioIBGE; $municipio[$i]['nomeMunicipio'] = utf8_encode($valor->Descricao); $i++; } } else { $municipio['error'] = true; } echo json_encode($municipio); exit; } if (isset($_POST['idEtapa'])) { $this->_helper->layout->disableLayout(); // desabilita o Zend_Layout if (isset($_POST['idEtapa'])) { $resultadoItem = SolicitarReadequacaoCustoDAO::buscarItens($_POST['idEtapa']); $itemEtapa['error'] = false; $i = 0; foreach ($resultadoItem as $result) { $itemEtapa[$i]['IdItem'] = $result->idPlanilhaItens; $itemEtapa[$i]['NomeItem'] = utf8_encode($result->Descricao); $i++; } } else { $itemEtapa['error'] = true; } echo json_encode($itemEtapa); exit; } //se o produto estiver setado if (isset($_POST['acao'])) { $this->_helper->layout->disableLayout(); // desabilita o Zend_Layout $verificapedido = $buscaPedido->verificaPedidoAlteracao($_POST['idpronac']); if ($verificapedido == null) { $dados = array('IdPRONAC' => $_POST['idpronac'], 'idSolicitante' => $_POST['idAgente'], 'dtSolicitacao' => date('Y-m-d H:i:s'), 'stPedidoAlteracao' => 'T', 'siVerificacao' => 0); $idPedidoAlteracao = $buscaPedido->inserirPedido($dados); } else { $resultadoStatus = $buscaPedido->verificaPedidoAlteracao($_POST['idpronac']); $idPedidoAlteracao = $resultadoStatus['idPedidoAlteracao']; } $justificativa = Seguranca::tratarVarAjaxUFT8($_POST['justificativa']); $dados = array('idPedidoAlteracao' => $idPedidoAlteracao, 'tpAlteracaoProjeto' => 10, 'stVerificacao' => 0, 'dsJustificativa' => $justificativa); $insereTipo = SolicitarReadequacaoCustoDAO::inserirPedidoTipo($dados); try { //$verificarplanilha = $buscaPedido->verificarPlanilhaCriada($_POST['idpronac'], 'SR', $_POST['idProduto'], $_POST['etapa'], $_POST['item'], $_POST['uf'], $_POST['municipio']); $verificarplanilha = $buscaPedido->verificarPlanilhaCriada($_POST['idpronac'], 'SR'); if (count($verificarplanilha) == 0) { $insereCopiaPlanilha = SolicitarReadequacaoCustoDAO::inserirCopiaPlanilha($_POST['idpronac'], $idPedidoAlteracao); } // $valorFinal = explode(".", $_POST['vlUnitario']); // $valorFinal = $valorFinal[0] . $valorFinal[1] . "." . $valorFinal[2]; // diz se a solicitação de readequação será incluída ou alterada $PA = new PlanilhaAprovacao(); $buscarPlanilhaAprovacaoPai = $PA->buscar(array('idPlanilhaAprovacaoPai = ?' => $_POST['idPlanilhaAP'], 'tpPlanilha = ?' => 'SR')); if (count($buscarPlanilhaAprovacaoPai) > 0) { $acaoSR = 'A'; $colunaSR = 'idPlanilhaAprovacaoPai'; $idPlanilhaAprovacaoPai = !empty($_POST['idPlanilhaAP']) ? $_POST['idPlanilhaAP'] : null; } else { $buscarPlanilhaAprovacaoSR = $PA->buscar(array('idPlanilhaAprovacao = ?' => $_POST['idPlanilhaAP'], 'tpPlanilha = ?' => 'SR')); if (count($buscarPlanilhaAprovacaoSR) > 0) { $acaoSR = 'A'; $colunaSR = 'idPlanilhaAprovacao'; $idPlanilhaAprovacaoPai = $buscarPlanilhaAprovacaoSR[0]->idPlanilhaAprovacaoPai; } else { $acaoSR = 'I'; $colunaSR = 'idPlanilhaAprovacaoPai'; $idPlanilhaAprovacaoPai = !empty($_POST['idPlanilhaAP']) ? $_POST['idPlanilhaAP'] : null; } } $dados = array('idPlanilhaAprovacaoPai' => $idPlanilhaAprovacaoPai, 'dtPlanilha' => date('Y-m-d H:i:s'), 'IdPRONAC' => $_POST['idpronac'], 'idProduto' => $_POST['idProduto'], 'idEtapa' => $_POST['etapa'], 'idPlanilhaItem' => $_POST['item'], 'dsItem' => 'Produto', 'idUnidade' => $_POST['unidade'], 'qtItem' => $_POST['qtd'], 'nrOcorrencia' => $_POST['ocorrencia'], 'vlUnitario' => $_POST['vlUnitario'], 'qtDias' => $_POST['dias'], 'tpDespesa' => 0, 'tpPessoa' => $_POST['idTipoPessoa'], 'nrContraPartida' => 0, 'nrFonteRecurso' => $_POST['fonte'], 'idUFDespesa' => $_POST['uf'], 'idMunicipioDespesa' => $_POST['municipio'], 'dsJustificativa' => Seguranca::tratarVarAjaxUFT8($_POST['justificativa']), 'idAgente' => $_POST['idAgente'], 'idPedidoAlteracao' => $idPedidoAlteracao, 'tpAcao' => $_POST['acao'], 'tpPlanilha' => 'SR', 'stAtivo' => 'N'); if ($_POST['acao'] == 'E' or $_POST['acao'] == 'A') { // inclusão da solicitação de readequação if ($acaoSR == 'I') { $insertItem = SolicitarReadequacaoCustoDAO::inserirNovoProduto($dados); } else { $where = "tpPlanilha = 'SR' AND stAtivo = 'N' AND {$colunaSR} = " . $_POST['idPlanilhaAP']; $updateItem = SolicitarReadequacaoCustoDAO::atualizaItem($dados, $where); } /* $where = " (idEtapa = " . $_POST['etapa'] . ") AND (idProduto = " . $_POST['idProduto'] . ") AND (idPlanilhaItem = " . $_POST['item'] . ") AND tpPlanilha = 'SR' AND stAtivo = 'N' AND idUFDespesa = ".$_POST['uf']." AND idMunicipioDespesa = " . $_POST['municipio']; $resultPlanilhaAprovada = SolicitarReadequacaoCustoDAO::buscaUltimaPlanilhaAprovada($where); $idPlanilhaAprovacao = $resultPlanilhaAprovada[0]->idPlanilhaAprovacao; $wherePlanilhaAprovada = " (idPlanilhaAprovacao = " . $idPlanilhaAprovacao . " AND idEtapa = " . $_POST['etapa'] . ") AND (idProduto = " . $_POST['idProduto'] . ") AND (idPlanilhaItem = " . $_POST['item'] . ") AND tpPlanilha = 'SR' AND stAtivo = 'N'"; $atulizaItem = SolicitarReadequacaoCustoDAO::atualizaItem($dados, $wherePlanilhaAprovada); $dados2 = array( 'tpAcao' => $_POST['acao'] ); $where2 = " ( idPlanilhaAprovacao = ". $_POST['idaprovacaoA'] ." ) "; $alterarItem = SolicitarReadequacaoCustoDAO::alterarItem($dados2, $where2); */ } else { $insertItem = SolicitarReadequacaoCustoDAO::inserirNovoProduto($dados); } echo json_encode(array('error' => false)); die; } catch (Zend_Exception $e) { echo json_encode(array('error' => true, 'descricao:' => $e->getMessage())); die; } } if (isset($_POST['verifica']) and $_POST['verifica'] == "N") { $dados = array('stPedidoAlteracao' => 'A', 'dtSolicitacao' => date('Y-m-d H:i:s'), 'siVerificacao' => 0); $alterarpedido = SolicitarReadequacaoCustoDAO::alterarPedidoAlterado($dados); die; } if (isset($_POST['verificaPlanilha']) and $_POST['verificaPlanilha'] == "S") { $this->_helper->layout->disableLayout(); // desabilita o Zend_Layout $idProduto = $_POST['idProduto']; if ($idProduto == 0) { $resultadoProdutosItens = $buscaPedido->buscarProdutosItens(false, false, false, $_POST['idPlanilhaAprovacao']); } else { $resultadoProdutosItens = $buscaPedido->buscarProdutosItens(false, false, $idProduto, $_POST['idPlanilhaAprovacao']); } foreach ($resultadoProdutosItens as $resultadoarray) { $valorjson['idPlanilhaAprovacao'] = $resultadoarray->idPlanilhaAprovacao; $valorjson['idProduto'] = $resultadoarray->idProduto; $valorjson['qtItem'] = $resultadoarray->qtItem; $valorjson['nrOcorrencia'] = $resultadoarray->nrOcorrencia; $valorjson['vlUnitario'] = $resultadoarray->vlUnitario; $valorjson['qtDias'] = $resultadoarray->qtDias; $valorjson['Total'] = $resultadoarray->Total; $valorjson['nrFonteRecurso'] = $resultadoarray->nrFonteRecurso; $valorjson['idPlanilhaItem'] = $resultadoarray->idPlanilhaItem; $valorjson['idUnidade'] = $resultadoarray->idUnidade; $valorjson['Etapa'] = $resultadoarray->Etapa; $valorjson['iduf'] = $resultadoarray->iduf; $valorjson['idmun'] = $resultadoarray->idmun; $valorjson['idPlanilhaEtapa'] = $resultadoarray->idEtapa; $valorjson['dsjustificativa'] = !is_null(utf8_encode($resultadoarray->dsJustificativa)) ? utf8_encode($resultadoarray->dsJustificativa) : ''; $valorjson['acao'] = "A"; } $json = json_encode($valorjson); echo $json; die; } if (isset($_GET['idpronac'])) { $idPronac = $_GET['idpronac']; $idProduto = isset($_GET['idProduto']) ? $_GET['idProduto'] : 0; $tipoproduto = isset($_GET['idProduto']) ? 'P' : 'A'; $buscaInformacoes = new SolicitarReadequacaoCustoDAO(); $verificaPlanilhaCustoVerifica = $buscaInformacoes->buscarProdutoAprovacao($idPronac)->toArray(); if (empty($verificaPlanilhaCustoVerifica)) { $verificaPlanilhaCusto = $buscaInformacoes->buscarProdutoAprovacaoSemProposta($idPronac); $this->view->buscaPlanilhaCusto = $verificaPlanilhaCusto; } else { $verificaPlanilhaCusto = $buscaInformacoes->buscarProdutoAprovacao($idPronac); $this->view->buscaPlanilhaCusto = $verificaPlanilhaCusto; } $resultado = $buscaInformacoes->buscarProjetos($idPronac); $this->view->buscaprojeto = $resultado['0']; $resultadoProduto = $buscaInformacoes->buscarProdutos($idPronac); // Zend_Debug::dump($resultadoProduto); die; // $this->view->buscaproduto = $resultadoProduto; $resultadoItensCadastrados = $buscaInformacoes->buscarItensCadastrados($idPronac); //xd($resultadoItensCadastrados); $i = 0; if (empty($resultadoProduto[0]->produto)) { $verificaPlanilhaCustoVerificacao = $buscaInformacoes->buscarProdutoAprovacao($idPronac); foreach ($verificaPlanilhaCustoVerificacao as $produto) { $produtosxitens[$produto->idProduto]["produto"] = $produto; $buscaInformacoes = new SolicitarReadequacaoCustoDAO(); $buscaInformacoesEtapa = $buscaInformacoes->buscarProdutosItensInseridos($idPronac, null, $produto->idProduto); //if (count($buscaInformacoesEtapa) > 0) : foreach ($resultadoItensCadastrados as $item) { if ($item->idProduto == $produto->idProduto) { $produtosxitens[$produto->idProduto]["itens"][] = $item; } } //endif; } $this->view->produtosxitens = @$produtosxitens; $this->view->buscaproduto = $verificaPlanilhaCusto; } else { $resultadoprodutoVerificacao = $buscaInformacoes->buscarProdutos($idPronac); foreach ($resultadoprodutoVerificacao as $produto) { $produtosxitens[$produto->idProduto]["produto"] = $produto; $buscaInformacoes = new SolicitarReadequacaoCustoDAO(); $buscaInformacoesEtapa = $buscaInformacoes->buscarProdutosItensInseridos($idPronac, null, $produto->idProduto); //if (count($buscaInformacoesEtapa) > 0) : foreach ($resultadoItensCadastrados as $item) { if ($item->idProduto == $produto->idProduto) { $produtosxitens[$produto->idProduto]["itens"][] = $item; } } //endif; } $this->view->produtosxitens = $produtosxitens; $this->view->buscaproduto = $resultadoProduto; } $resultadoEtapa = $buscaInformacoes->buscarEtapa($tipoproduto); // Zend_Debug::dump($resultadoEtapa);die; $this->view->buscaetapa = $resultadoEtapa; $resultadoFonteRecurso = $buscaInformacoes->buscarFonteRecurso(); $this->view->buscafonterecurso = $resultadoFonteRecurso; $resultadoUnidade = $buscaInformacoes->buscarUnidade(); $this->view->buscaunidade = $resultadoUnidade; $resultadoUF = $buscaInformacoes->buscarUF(); $this->view->buscauf = $resultadoUF; $resultadoAcao = $buscaInformacoes->verificaTipoAcao($idPronac); $this->view->buscaacao = $resultadoAcao; $resultadoStatus = $buscaInformacoes->verificaPedidoAlteracao($idPronac); $this->view->buscastatus = $resultadoStatus; foreach ($resultadoEtapa as $idEtapa) { $resultadoProdutosItens = $buscaInformacoes->buscarProdutosItens($idPronac, $idEtapa->idPlanilhaEtapa, $idProduto); $valorProduto[$idEtapa->idPlanilhaEtapa] = $resultadoProdutosItens; } $this->view->buscaprodutositens = $valorProduto; $valorProduto = ''; foreach ($resultadoEtapa as $idEtapa) { $resultadoProdutosItens = $buscaInformacoes->buscarProdutosItensInseridos($idPronac, $idEtapa->idPlanilhaEtapa, $idProduto); if ($resultadoProdutosItens->count() > 0) { $valorProduto[$idEtapa->idPlanilhaEtapa] = $resultadoProdutosItens; } } $this->view->buscaprodutositensinseridos = $valorProduto; } $this->view->existirPlanilhaProduto = 'ok'; $_idPedidoAlteracao = isset($resultadoStatus['idPedidoAlteracao']) && !empty($resultadoStatus['idPedidoAlteracao']) ? $resultadoStatus['idPedidoAlteracao'] : 0; $_idPronac = isset($idPronac) && !empty($idPronac) ? $idPronac : 0; if (!$this->existirPlanilhaProduto($_idPronac, $_idPedidoAlteracao)) { $this->view->existirPlanilhaProduto = 'n'; } }