Пример #1
0
 public function listarProdutosRequisitados(requisicoesModel $requisicao)
 {
     $this->load->model('produtos/produtosModel');
     $this->load->model('suprimentos/requisicoes/requisicaoProdutoModel');
     $this->load->model('produtos/unidademedidaModel');
     $this->load->model('produtos/unidadeMedidaEstoqueModel');
     try {
         $this->db->clear();
         $this->db->setTabela('requisicoes');
         $this->db->setCondicao(" id_requisicao = ? ");
         $this->db->setParameter(1, $requisicao->getId());
         $requisicoesModel = new requisicoesModel();
         if ($this->db->select()) {
             $result = $this->db->result();
             $requisicoesModel->setId($result['id_requisicao']);
             $requisicoesModel->setCodigo($result['codigo_requisicao']);
             $requisicoesModel->setTitulo($result['titulo_requisicao']);
             $requisicoesModel->setObservacoes($result['observacoes_requisicao']);
             $requisicoesModel->setData($result['data_requisicao']);
             $requisicoesModel->setStatus(statusRequisicoes::getAttribute($result['status_requisicao']));
             $this->db->clear();
             $this->db->setTabela('produtos as A , requisicao_produto as B , unidade_medida_produto as C, unidade_medida as D');
             $this->db->setCondicao("B.id_requisicao = ? AND B.id_produto = A.id_produto AND B.id_unidade_medida_produto = C.id_unidade_medida_produto AND C.id_unidade_medida = D.id_unidade_medida");
             $this->db->setParameter(1, $requisicao->getId());
             $usuariosModel = new usuariosModel();
             $funcionariosModel = new funcionariosModel();
             if ($this->db->select()) {
                 $resultProd = $this->db->resultAll();
                 foreach ($resultProd as $key => $produto) {
                     //unidade medida
                     $unidademedidaModel = new unidademedidaModel();
                     $unidademedidaModel->setId($produto['id_unidade_medida']);
                     $unidademedidaModel->setNome($produto['nome_unidade_medida']);
                     //unidade de medida do produto
                     $unidadeMedidaEstoqueModel = new unidadeMedidaEstoqueModel();
                     $unidadeMedidaEstoqueModel->setId($produto['id_unidade_medida_produto']);
                     $unidadeMedidaEstoqueModel->setUnidadeMedida($unidademedidaModel);
                     //prodtos
                     $produtosModel = new produtosModel();
                     $produtosModel->setId($produto['id_produto']);
                     $produtosModel->setNome($produto['nome_produto']);
                     $produtosModel->setFoto($produto['foto_produto']);
                     $produtosModel->addUnidadeMedidaEstoque($unidadeMedidaEstoqueModel);
                     //produtos requisitados
                     $requisicaoProdutoModel = new requisicaoProdutoModel();
                     $requisicaoProdutoModel->setId($produto['id_requisicao_produto']);
                     $requisicaoProdutoModel->setQuantidade($produto['quantidade_produto']);
                     $requisicaoProdutoModel->addProduto($produtosModel);
                     $requisicaoProdutoModel->setStatus(statusRequisicoes::getAttribute($produto['status_requisicao_produto']));
                     $requisicoesModel->addProdutoRequisitado($requisicaoProdutoModel);
                 }
             }
         }
         return $requisicoesModel;
     } catch (Exception $e) {
         throw new Exception($e, 1);
     }
 }