Skip to content

Commit

Permalink
Inclusão funcionalidade Nota Fiscal
Browse files Browse the repository at this point in the history
Acertos diversos, alterações no layout, inclusão da funcionalidade de
CRUD da Nota Fiscal
  • Loading branch information
marcosvpinto committed Mar 2, 2013
1 parent 4537871 commit 022c689
Show file tree
Hide file tree
Showing 28 changed files with 3,467 additions and 119 deletions.
112 changes: 112 additions & 0 deletions estoque/application/controllers/itemnota.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,112 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class ItemNota extends CI_Controller {

public function ItemNota()
{
parent::__construct();
$this->check_isvalidated();
}

private function check_isvalidated(){
if(! $this->session->userdata('validated')){
redirect('login');
}
}

function addItens()
{
$id = $this->uri->segment(3);
$this->load->model('MNotaFiscal', '', TRUE);
$nota = $this->MNotaFiscal->getNota($id)->result();
if($nota[0]->fechado == '1'){
redirect('NotaFiscal/listing', 'refresh');
}
else {
$data['include'] = "item_nota_add";
$this->load->model('MNotaFiscal', '', TRUE);
$data['nota_fiscal'] = $this->MNotaFiscal->getNota($id)->result();
$this->load->model('MFornecedor', '', TRUE);
$data['fornecedores'] = $this->MFornecedor->listFornecedor();
$this->load->model('MProduto', '', TRUE);
$data['produtos'] = $this->MProduto->listProduto();
$data['data_table'] = $this->listing($id);
$data['title'] = "Cadastro de Nota Fiscal - Controle de Estoque";
$data['headline'] = "Adicionar Itens à Nota";
$this->load->view('template', $data);
}

}

function createItens()
{
$this->load->model('MItemNota', '', TRUE);
$this->MItemNota->addItem($_POST);
redirect('ItemNota/addItens/'.$_POST['cod_nota'], 'refresh');
}

function editItem()
{
$id = $this->uri->segment(3);
$cod_nota = $this->uri->segment(4);
$this->load->model('MNotaFiscal', '', TRUE);
$data['nota_fiscal'] = $this->MNotaFiscal->getNota($cod_nota)->result();
$this->load->model('MFornecedor', '', TRUE);
$data['fornecedores'] = $this->MFornecedor->listFornecedor();
$this->load->model('MProduto', '', TRUE);
$data['produtos'] = $this->MProduto->listProduto();
$this->load->model('MItemNota', '', TRUE);
$data['item'] = $this->MItemNota->getItem($id)->result();
$data['title'] = "Modificar Notas Fiscais - Controle de Estoque";
$data['headline'] = "Edição de Item da Nota Fiscal";
$data['include'] = "item_nota_edit";
$this->load->view('template', $data);
}

function updateItem()
{
$this->load->model('MItemNota','',TRUE);
$this->MItemNota->updateItem($_POST['id_item'], $_POST);
redirect('ItemNota/addItens/' . $_POST['cod_nota'], 'refresh');
}

function deleteItem()
{
$id = $this->uri->segment(3);
$cod_nota = $this->uri->segment(4);
$this->load->model('MItemNota','',TRUE);
$this->MItemNota->deleteItem($id);
redirect('ItemNota/addItens/'.$cod_nota, 'refresh');
}

function listing($id)
{
$this->load->model('MItemNota','',TRUE);
$qry = $this->MItemNota->getItens($id);
$table = $this->table->generate($qry);
$tmpl = array ( 'table_open' => '<table id="tabela">' );
$this->table->set_template($tmpl);
$this->table->set_empty("&nbsp;");
$this->table->set_heading('Editar', 'Produto', 'Quantidade', 'Valor Item', 'Subtotal', 'Excluir');
$table_row = array();
foreach ($qry->result() as $item)
{
$table_row = NULL;
$table_row[] = anchor('ItemNota/editItem/' . $item->id_item . '/' . $item->cod_nota, '<span class="ui-icon ui-icon-pencil"></span>');
$this->load->model('MProduto', '', TRUE);
$produto = $this->MProduto->getProduto($item->cod_produto)->result();
//var_dump($produto);
$table_row[] = $produto[0]->nome_produto;
$table_row[] = $item->quantidade;
$table_row[] = 'R$ ' . number_format($item->valor_item, 2, ',', '.');
$table_row[] = 'R$ ' . number_format(($item->quantidade)*($item->valor_item), 2, ',', '.');
$table_row[] = anchor('ItemNota/deleteItem/' . $item->id_item . '/'.$item->cod_nota, '<span class="ui-icon ui-icon-trash"></span>',
"onClick=\" return confirm('Tem certeza que deseja remover o registro?')\"");
$this->table->add_row($table_row);
}
return $table = $this->table->generate();
}
}

/* End of file NotaFiscal.php */
/* Location: ./application/controllers/NotaFiscal.php */
90 changes: 77 additions & 13 deletions estoque/application/controllers/notafiscal.php
Original file line number Diff line number Diff line change
Expand Up @@ -28,37 +28,96 @@ function create()
{
$this->load->model('MNotaFiscal', '', TRUE);
$_POST['data_nota'] = pt_to_mysql($this->input->post('data_nota'));
$this->MNotaFiscal->addNota($_POST);
redirect('NotaFiscal/listing', 'refresh');
$id = $this->MNotaFiscal->addNota($_POST);
redirect('ItemNota/addItens/'.$id, 'refresh');
}

function edit()
{
$id = $this->uri->segment(3);
$this->load->model('MNotaFiscal', '', TRUE);
$data['nota_fiscal'] = $this->MNotaFiscal->getNota($id)->result();
$data['title'] = "Modificar Produto - Controle de Estoque";
$data['headline'] = "Edição de Notas Fiscais";
$data['include'] = "nota_fiscal_edit";
$this->load->model('MFornecedor', '', TRUE);
$data['fornecedores'] = $this->MFornecedor->listFornecedor();
$data['title'] = "Modificar Produto - Controle de Estoque";
$data['headline'] = "Edição de Notas Fiscais";
$data['include'] = "nota_fiscal_edit";
$this->load->view('template', $data);
}

function update()
{
$this->load->model('MNotaFiscal','',TRUE);
$_POST['data_nota'] = pt_to_mysql($this->input->post('data_nota'));
$this->MNotaFiscal->updateNota($_POST['cod_nota'], $_POST);
redirect('NotaFiscal/listing', 'refresh');
}

function delete()
function fechar()
{
$id = $this->uri->segment(3);
$this->load->model('MNotaFiscal','',TRUE);
$this->MNotaFiscal->deleteNota($id);
$this->MNotaFiscal->fecharNota($id);
redirect('NotaFiscal/listing', 'refresh');
}

function verNota()
{
$id = $this->uri->segment(3);

$this->load->model('MNotaFiscal','',TRUE);
$notas = $this->MNotaFiscal->getNota($id);

$nt = $notas->result();
$cod_nota = $nt[0]->cod_nota;

$this->load->model('MItemNota', '', TRUE);
$itens = $this->MItemNota->getItens($cod_nota);

$table1 = $this->table->generate($notas);
$tmpl = array ( 'table_open' => '<table id="tabela1">' );
$this->table->set_template($tmpl);
$this->table->set_empty("&nbsp;");
$this->table->set_heading('Número', 'Fornecedor', 'Data da Nota');
$table_row = array();
foreach ($notas->result() as $nota)
{
$table_row = NULL;
$table_row[] = $nota->numero_nota;
$this->load->model('MFornecedor', '', TRUE);
$fornecedor = $this->MFornecedor->getFornecedor($nota->id_fornecedor)->result();
$table_row[] = $fornecedor[0]->razao_social;
$table_row[] = mysql_to_pt($nota->data_nota);
$this->table->add_row($table_row);
}
$table1 = $this->table->generate();
$data['data_table1'] = $table1;

$table2 = $this->table->generate($itens);
$tmpl = array ( 'table_open' => '<table id="tabela2">' );
$this->table->set_template($tmpl);
$this->table->set_empty("&nbsp;");
$this->table->set_heading('Produto', 'Quantidade', 'Valor Item', 'Subtotal');
$table_row = array();
foreach ($itens->result() as $item)
{
$table_row = NULL;
$this->load->model('MProduto', '', TRUE);
$produto = $this->MProduto->getProduto($item->cod_produto)->result();
$table_row[] = $produto[0]->nome_produto;
$table_row[] = $item->quantidade;
$table_row[] = 'R$ ' . number_format($item->valor_item, 2, ',', '.');
$table_row[] = 'R$ ' . number_format(($item->quantidade)*($item->valor_item), 2, ',', '.');
$this->table->add_row($table_row);
}
$table2 = $this->table->generate();
$data['data_table2'] = $table2;

$data['title'] = "Listagem de Notas Fiscais - Controle de Estoque";
$data['headline'] = "Listagem de Nota Fiscal";
$data['include'] = 'notafiscal_view';
$this->load->view('template', $data);
}

function listing()
{
Expand All @@ -68,18 +127,23 @@ function listing()
$tmpl = array ( 'table_open' => '<table id="tabela">' );
$this->table->set_template($tmpl);
$this->table->set_empty("&nbsp;");
$this->table->set_heading('Editar', 'Número', 'Fornecedor', 'Data da Nota', 'Excluir');
$this->table->set_heading('Editar', 'Itens', 'Número', 'Fornecedor', 'Data da Nota', 'Visualizar');
$table_row = array();
foreach ($qry->result() as $nota)
{
$table_row = NULL;
$table_row[] = anchor('NotaFiscal/edit/' . $nota->cod_nota, '<span class="ui-icon ui-icon-pencil"></span>');
if($nota->fechado == '1'){
$table_row[] = '';
$table_row[] = '';
}
else {
$table_row[] = anchor('NotaFiscal/edit/' . $nota->cod_nota, '<span class="ui-icon ui-icon-pencil"></span>');
$table_row[] = anchor('ItemNota/addItens/' . $nota->cod_nota, '<span class="ui-icon ui-icon-plus"></span>');
}
$table_row[] = $nota->numero_nota;
$table_row[] = $nota->razao_social;
$data_human = mysql_to_pt($nota->data_nota);
$table_row[] = $data_human;
$table_row[] = anchor('NotaFiscal/delete/' . $nota->cod_nota, '<span class="ui-icon ui-icon-trash"></span>',
"onClick=\" return confirm('Tem certeza que deseja remover o registro?')\"");
$table_row[] = mysql_to_pt($nota->data_nota);
$table_row[] = anchor('NotaFiscal/verNota/' . $nota->cod_nota, '<span class="ui-icon ui-icon-circle-zoomin"></span>');
$this->table->add_row($table_row);
}
$table = $this->table->generate();
Expand Down
128 changes: 128 additions & 0 deletions estoque/application/controllers/pedido.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Pedido extends CI_Controller {

public function Pedido()
{
parent::__construct();
$this->check_isvalidated();
}

private function check_isvalidated(){
if(! $this->session->userdata('validated')){
redirect('login');
}
}

function add()
{
$data['title'] = "Cadastro de Pedidos - Controle de Estoque";
$data['headline'] = "Cadastro de Pedidos";
$data['include'] = "pedido_add";
$this->load->model('MUsuario', '', TRUE);
$data['usuarios'] = $this->MUsuario->listUsuario();
$this->load->model('MProduto', '', TRUE);
$data['produtos'] = $this->MProduto->listProduto();
$this->load->view('template', $data);
}

function create()
{
$this->load->model('MPedido', '', TRUE);
$_POST['data_pedido'] = pt_to_mysql($this->input->post('data_pedido'));
$this->MPedido->addPedido($_POST);
redirect('Pedido/listing', 'refresh');
}

function edit()
{
$id = $this->uri->segment(3);
$this->load->model('MPedido', '', TRUE);
$data['pedido'] = $this->MPedido->getPedido($id)->result();
$this->load->model('MUsuario', '', TRUE);
$data['usuarios'] = $this->MUsuario->listUsuario();
$this->load->model('MProduto', '', TRUE);
$data['produtos'] = $this->MProduto->listProduto();
$data['title'] = "Modificar Pedido - Controle de Estoque";
$data['headline'] = "Edição de Pedidos";
$data['include'] = "pedido_edit";
$this->load->view('template', $data);
}

function update()
{
$this->load->model('MPedido','',TRUE);
$_POST['data_pedido'] = pt_to_mysql($this->input->post('data_pedido'));
$this->MPedido->updatePedido($_POST['cod_pedido'], $_POST);
redirect('Pedido/listing', 'refresh');
}

function delete()
{
$id = $this->uri->segment(3);
$this->load->model('MPedido','',TRUE);
$this->MPedido->deletePedido($id);
redirect('Pedido/listing', 'refresh');
}

function baixa()
{
$id = $this->uri->segment(3);
$this->load->model('MPedido','',TRUE);
$this->MPedido->baixaPedido($id);
redirect('Pedido/listing', 'refresh');
}

function listing()
{
$this->load->model('MPedido','',TRUE);
$qry = $this->MPedido->listPedido();
$table = $this->table->generate($qry);
$tmpl = array ( 'table_open' => '<table id="tabela">' );
$this->table->set_template($tmpl);
$this->table->set_empty("&nbsp;");
$this->table->set_heading('Editar', 'Baixa', 'Usuário', 'Produto', 'Quantidade', 'Data Pedido', 'Status', 'Excluir');
$table_row = array();
foreach ($qry->result() as $pedido)
{
$table_row = NULL;
if($pedido->flag_baixa == 'A')
{
$table_row[] = anchor('Pedido/edit/' . $pedido->cod_pedido, '<span class="ui-icon ui-icon-pencil"></span>');
$table_row[] = anchor('Pedido/baixa/' . $pedido->cod_pedido, '<span class="ui-icon ui-icon-check"></span>');
} else
{
$table_row[] = NULL;
$table_row[] = NULL;
}
$table_row[] = $pedido->login;
$table_row[] = $pedido->nome_produto;
$table_row[] = $pedido->quantidade_pedida;
$table_row[] = mysql_to_pt($pedido->data_pedido);
if($pedido->flag_baixa == 'A')
{
$table_row[] = 'Aberta';
} elseif($pedido->flag_baixa == 'S')
{
$table_row[] = 'Atendida';
}
if($pedido->flag_baixa == 'A')
{
$table_row[] = anchor('Pedido/delete/' . $pedido->cod_pedido, '<span class="ui-icon ui-icon-trash"></span>');
} else
{
$table_row[] = NULL;
}
$this->table->add_row($table_row);
}
$table = $this->table->generate();
$data['title'] = "Listagem de Pedidos - Controle de Estoque";
$data['headline'] = "Listagem de Pedidos";
$data['include'] = 'pedido_listing';
$data['data_table'] = $table;
$this->load->view('template', $data);
}
}

/* End of file Pedido.php */
/* Location: ./application/controllers/Pedido.php */
Loading

0 comments on commit 022c689

Please sign in to comment.