public function createObjectFromData($row) { //Cria um novo objeto piso com os dados da consulta $analise = new Analise_Model(); $analise->set_id($row->id); $analise->set_nomepiso($row->nomepiso); $analise->set_qtdpiso($row->qtdpiso); $analise->set_custopiso($row->custopiso); $analise->set_qtddesperdicio($row->qtddesperdicio); $analise->set_custorejunte($row->custorejunte); $analise->set_custototal($row->custototal); $analise->set_idrelatorio($row->idRelatorio); return $analise; }
public function index() { $this->load->view("template/header"); $this->load->helper('url'); // ($_SESSION['MARGEMSEGURANCA'])// Retorna 10 ou 25 (padrao 10) // ($_SESSION['ESPACAMENTO']) // Retorno = valor em apenas numeros (padrao 5 mm) // ($_SESSION['RODAPE']) // TRUE ou FALSE (padrao "FALSE") // ($_SESSION['MAODEOBRA']) // valor em numero colocado (padrao 25) /* if($this->input->post()){ echo "POST"; } * */ //validação dos variaveis essenciais 1/2 bosta if (empty($_SESSION['AREA']) || empty($_SESSION['PISO']) || $_SESSION['AREA'] == 0) { $data['mensagem'] = "Impossível continuar." . "<br> Nao foram definidos os parametros referentes à <a href=" . base_url('/Area') . ">Área </a> ou <a href=" . base_url('/Pisos/ver') . ">Piso. </a>"; $this->load->view("template/mensagem", $data); } else { //Carregando os modelos e bibliotecas necessárias $this->carregarModelosBiblioteca(); //contas feitas através de funcoes listadas abaixo $analiseData['custoArgamassa'] = $this->calcularCustoArgamassa(); $analiseData['custoMaodeObra'] = $this->calcularCustoMaodeObra(); $analiseData['custoProdutos'] = $this->calcularCustoProdutos(); $contador = 0; if (isset($_SESSION['PISO_CUSTOMIZADO']) || isset($_SESSION['PISO'])) { if (isset($_SESSION['PISO_CUSTOMIZADO'])) { //inserir como primeiro piso o customizado // $analiseData['analises'][$contador]['nomePiso'] = $_SESSION['PISO_CUSTOMIZADO']['nome']; // // $analiseData['analises'][$contador]['qtdPiso'] = // $this->calcular_qtdpisos( // $_SESSION['PERIMETRO'], // $_SESSION['PISO_CUSTOMIZADO']['largura'], $_SESSION['PISO_CUSTOMIZADO']['comprimento'] ); // // $analiseData['analises'][$contador]['custoPiso'] = // $this->calcular_custo($analiseData['analises'][$contador]['qtdPiso'], // $_SESSION['PISO_CUSTOMIZADO']['preco'], // $_SESSION['PISO_CUSTOMIZADO']['quantidade']); // // $analiseData['analises'][$contador]['qtdDesperdicio'] = // $this->calcular_desperdicio( // $analiseData['analises'][$contador]['qtdPiso'], // $_SESSION['PISO_CUSTOMIZADO']['quantidade']); // // //calcularCustoRejunte($Altura, $Largura, $Comprimento, $Espacamento, $CR ){ // $analiseData['analises'][$contador]['custoRejunte'] = // $this->calcularCustoRejunte( // $_SESSION['PISO_CUSTOMIZADO']['altura'], // $_SESSION['PISO_CUSTOMIZADO']['largura']*10, // $_SESSION['PISO_CUSTOMIZADO']['comprimento']*10); // // $analiseData['analises'][$contador]['custoTotal'] = // $this->calcular_custo_final( // $analiseData['analises'][$contador]['custoPiso'], // $analiseData['custoArgamassa'], // $analiseData['analises'][$contador]['custoRejunte'], // $analiseData['custoProdutos'], // $analiseData['custoMaodeObra']); // // $contador++; } $piso = new Piso_Model(); foreach ($_SESSION['PISO'] as $pisoID) { $pisoId = (int) $pisoID; if ($pisoId != 100) { $piso = $this->pisofactory->getPiso($pisoId); //calcular gastos para cada piso e embutir na variavel de analise $analiseData['analises'][$contador]['nomePiso'] = $piso->get_nome(); //calcular quantidade de caixas necessárias para (area + rodape) * despedicio // calcular_qtdpisos ($area, $Perimetro, $Largura, $Comprimento){ $analiseData['analises'][$contador]['qtdPiso'] = $this->calcular_qtdpisos($_SESSION['PERIMETRO'], $piso->get_largura(), $piso->get_comprimento()); // calcular_custo ($qtdpisos, $valor_piso){ $analiseData['analises'][$contador]['custoPiso'] = $this->calcular_custo($analiseData['analises'][$contador]['qtdPiso'], $piso->get_preco(), $piso->get_quantidade_embalagem()); //calcular_desperdicio($qtdPisos, $qtdPisosxCaixas, $MargemSeguranca); $analiseData['analises'][$contador]['qtdDesperdicio'] = $this->calcular_desperdicio($analiseData['analises'][$contador]['qtdPiso'], $piso->get_quantidade_embalagem()); //calcularCustoRejunte($Altura, $Largura, $Comprimento, $Espacamento, $Rejunte)0; $analiseData['analises'][$contador]['custoRejunte'] = $this->calcularCustoRejunte($piso->get_altura(), $piso->get_largura(), $piso->get_comprimento()); //calcular_custo_final($CustoPisos, $Custo_Argamassa, $CustoRejunte, $CustoProdutos, $MaodeObra)0; $analiseData['analises'][$contador]['custoTotal'] = $this->calcular_custo_final($analiseData['analises'][$contador]['custoPiso'], $analiseData['custoArgamassa'], $analiseData['analises'][$contador]['custoRejunte'], $analiseData['custoProdutos'], $analiseData['custoMaodeObra']); // array_push($analiseData['analises'][], $analise); $contador++; } else { $analiseData['analises'][$contador]['nomePiso'] = $_SESSION['PISO_CUSTOMIZADO']['nome']; $analiseData['analises'][$contador]['qtdPiso'] = $this->calcular_qtdpisos($_SESSION['PERIMETRO'], $_SESSION['PISO_CUSTOMIZADO']['largura'], $_SESSION['PISO_CUSTOMIZADO']['comprimento']); $analiseData['analises'][$contador]['custoPiso'] = $this->calcular_custo($analiseData['analises'][$contador]['qtdPiso'], $_SESSION['PISO_CUSTOMIZADO']['preco'], $_SESSION['PISO_CUSTOMIZADO']['quantidade']); $analiseData['analises'][$contador]['qtdDesperdicio'] = $this->calcular_desperdicio($analiseData['analises'][$contador]['qtdPiso'], $_SESSION['PISO_CUSTOMIZADO']['quantidade']); //calcularCustoRejunte($Altura, $Largura, $Comprimento, $Espacamento, $CR ){ $analiseData['analises'][$contador]['custoRejunte'] = $this->calcularCustoRejunte($_SESSION['PISO_CUSTOMIZADO']['altura'], $_SESSION['PISO_CUSTOMIZADO']['largura'] * 10, $_SESSION['PISO_CUSTOMIZADO']['comprimento'] * 10); $analiseData['analises'][$contador]['custoTotal'] = $this->calcular_custo_final($analiseData['analises'][$contador]['custoPiso'], $analiseData['custoArgamassa'], $analiseData['analises'][$contador]['custoRejunte'], $analiseData['custoProdutos'], $analiseData['custoMaodeObra']); $contador++; } } } else { $pisos = FALSE; //nenhum piso foi selecionado, requisitar para que o usuário o faça } // echo '<pre>'; // print_r($analiseData); // echo '</pre>'; $this->load->view("ver_relatorios", $analiseData); } if ($this->input->post()) { //construução do relatório //Create a data array so we can pass information to the view $relatorio = new Relatorio_model(); $analiseData['custoArgamassa'] = $this->calcularCustoArgamassa(); $analiseData['custoMaodeObra'] = $this->calcularCustoMaodeObra(); $analiseData['custoProdutos'] = $this->calcularCustoProdutos(); $relatorio->set_custototalargamassa($analiseData['custoArgamassa']); $relatorio->set_customaodeobra($analiseData['custoMaodeObra']); $relatorio->set_custototalprodutos($analiseData['custoProdutos']); if (isset($_POST['nome'])) { $nomeRelatorio = $_POST['nome']; } else { $nomeRelatorio = 'Meu relatorio'; } if (isset($_POST['descricao'])) { $descRelatorio = $_POST['descricao']; } $relatorio->set_nome($nomeRelatorio); $relatorio->set_descricao($descRelatorio); $nomeUser = $_SESSION['LOGIN']; $Usuario = $this->usuariofactory->getUsuarioByUsername($nomeUser); $relatorio->set_idusuario($Usuario->get_id()); $relatorio->commit(); //$id = $this->relatoriofactory->getMaxId() + 1; //$relatorio->set_id($id); foreach ($analiseData['analises'] as $analise) { $analise_model = new Analise_Model(); $analise_model->set_nomepiso($analise['nomePiso']); $analise_model->set_qtdpiso($analise['qtdPiso']); $analise_model->set_custopiso($analise['custoPiso']); $analise_model->set_qtddesperdicio($analise['qtdDesperdicio']); $analise_model->set_custorejunte($analise['custoRejunte']); $analise_model->set_custototal($analise['custoTotal']); $analise_model->set_idrelatorio($relatorio->get_id()); $analise_model->commit(); } $data['mensagem'] = "Relatório salvo com sucesso!"; $this->load->view('template/mensagem', $data); } // echo '<pre>'; // print_r($analiseData); // echo '</pre>'; $this->load->view("template/footer"); }