예제 #1
0
        public ActionResult AdicionarBebidaSessao(string bebida)
        {
            Dictionary <int, int> EstoqueBebidas = new Dictionary <int, int>();
            EstoqueDao            estoquedao     = new EstoqueDao();
            Bebida novaBebida = JsonConvert.DeserializeObject <Bebida>(bebida);

            novaBebida.Quantidade = 1;

            Usuario usuario = (Usuario)Session["Usuario"] ?? new Usuario();

            if (!usuario.Carrinho.Bebidas.Exists(x => x.Id == novaBebida.Id))
            {
                usuario.Carrinho.Bebidas.Add(novaBebida);
                usuario.Carrinho.DataUltimaInsercaoCarrinho = DateTime.Now;
            }

            foreach (var item in usuario.Carrinho.Bebidas)
            {
                EstoqueBebidas[item.Id] = estoquedao.ConsultarEstoquePorId(item.Id);
            }
            ViewBag.Estoque = EstoqueBebidas;

            Session["Usuario"] = usuario;

            return(View("Index", usuario.Carrinho));
        }
예제 #2
0
        // GET: Carrinho
        public ActionResult Index(int i = 0)
        {
            Dictionary <int, int> EstoqueBebidas = new Dictionary <int, int>();
            EstoqueDao            estoquedao     = new EstoqueDao();
            Usuario usuario = (Usuario)Session["Usuario"] ?? new Usuario();

            foreach (var item in usuario.Carrinho.Bebidas)
            {
                int estoqueAtual = 0;
                estoqueAtual            = estoquedao.ConsultarEstoquePorId(item.Id);
                EstoqueBebidas[item.Id] = estoqueAtual;
                if (item.Quantidade > estoqueAtual)
                {
                    item.Quantidade = estoqueAtual;
                }
            }
            ViewBag.Estoque = EstoqueBebidas;
            if (i != 0)
            {
                ViewBag.MensagemHistorico = "Ops! O histórico foi atualizado agora mesmo! Por favor, revise seu pedido antes de prosseguir."
                ;
            }
            else
            {
                ViewBag.MensagemHistorico = "";
            }

            ViewBag.Notificacoes = new NotificacaoDao().ConsultarPorCliente(usuario.Id);

            return(View(usuario.Carrinho));
        }
예제 #3
0
        public ActionResult PvHistoricoEstoque()
        {
            List <Estoque> lista = new List <Estoque>();
            EstoqueDao     dao   = new EstoqueDao();

            lista = dao.ConsultarHistoricoEstoque();

            return(PartialView(lista));
        }
예제 #4
0
        private void txtIdSaida_TextChanged(object sender, EventArgs e)
        {
            int id   = Convert.ToInt32(txtIdSaida.Text);
            var peca = new EstoqueDao().GetById(id);

            txtNomeSaida.Text      = peca.Peca;
            txtValorUnitSaida.Text = peca.ValorUnitario.ToString();
            this.peca = peca;
        }
예제 #5
0
 public ActionResult PvEstoque()
 {
     try
     {
         EstoqueDao dao = new EstoqueDao();
         return(PartialView(dao.ConsultarTodos()));
     }catch (Exception ex)
     {
         return(View("Error"));
     }
 }
예제 #6
0
 // Método para cadastrar Produto
 public void Cadastrar(Estoque produto)
 {
     try
     {
         EstoqueDao estoqueDao = new EstoqueDao();
         estoqueDao.Cadastrar(produto);
     }
     catch (Exception erro)
     {
         throw erro;
     }
 }
예제 #7
0
 // Método para excluir produto
 public void ExcluirProduto(Estoque produto)
 {
     try
     {
         EstoqueDao estoqueDao = new EstoqueDao();
         estoqueDao.ExcluirProduto(produto);
     }
     catch (Exception erro)
     {
         throw erro;
     }
 }
예제 #8
0
 public ActionResult Baixa(int IdBebida, int Qtde)
 {
     try
     {
         EstoqueDao dao = new EstoqueDao();
         dao.Baixa(IdBebida, Qtde);
         return(RedirectToAction("Index", "Usuarios"));
     }catch (Exception ex)
     {
         return(View("Erro"));
     }
 }
예제 #9
0
 public ActionResult Entrada(int IdBebida, int Qtde, string Fornecedor, decimal VlrCusto, DateTime DtEntrada)
 {
     try
     {
         EstoqueDao dao = new EstoqueDao();
         dao.Entrada(IdBebida, Qtde, Fornecedor, VlrCusto, DtEntrada);
         return(RedirectToAction("Index", "Usuarios"));
     }
     catch (Exception ex)
     {
         return(View("Erro"));
     }
 }
예제 #10
0
        // Método para listar o estoque
        public DataTable ListarProdutos()
        {
            try
            {
                EstoqueDao estoqueDao = new EstoqueDao();
                DataTable  Dt         = new DataTable();

                Dt = estoqueDao.ListarProdutos();

                return(Dt);
            }
            catch (Exception erro)
            {
                throw erro;
            }
        }
예제 #11
0
        public ActionResult RemoverBebidaSessao(int idBebida)
        {
            Dictionary <int, int> EstoqueBebidas = new Dictionary <int, int>();
            EstoqueDao            estoquedao     = new EstoqueDao();
            Usuario usuario = (Usuario)Session["Usuario"] ?? new Usuario();

            usuario.Carrinho.Bebidas.RemoveAll(x => x.Id.Equals(idBebida));

            foreach (var item in usuario.Carrinho.Bebidas)
            {
                EstoqueBebidas[item.Id] = estoquedao.ConsultarEstoquePorId(item.Id);
            }
            ViewBag.Estoque = EstoqueBebidas;

            Session["Usuario"] = usuario;

            return(View("Index", usuario.Carrinho));
        }
예제 #12
0
 private void BtnBuscar_Click(object sender, EventArgs e)
 {
     if (dateBuscaFinal.Value < dateBuscaInicial.Value)
     {
         MessageBox.Show("Favor selecionar as datas corretamente.");
     }
     else if (dateBuscaFinal.Value > DateTime.Now)
     {
         MessageBox.Show("Não selecionar data final futura.");
     }
     else
     {
         var busca = new EstoqueDao().PesquisaItem(txtPesquisar.Text)
                     .Where(es => es.DataAdicao >= dateBuscaInicial.Value && es.DataAdicao <= dateBuscaFinal.Value)
                     .ToList();
         dataGridConsulta.DataSource = busca;
     }
 }
예제 #13
0
        private void btnConsultaEstoque_Click(object sender, EventArgs e)
        {
            IList <IEstoqueEntity> estoque = EstoqueDao.ConsultarEstoque(txtConsultaEstoque.Text);

            dtgridConsultaUsuario.Rows.Clear();

            if (estoque.Count <= 0)
            {
                MessageBox.Show("A busca não retornou resultado.");
                return;
            }

            int rowId = 0;

            foreach (IEstoqueEntity est in estoque)
            {
                rowId = dtgridConsultaUsuario.Rows.AddCopy(0);
                dtgridConsultaUsuario.Rows[rowId].Cells["CodigoItem"].Value      = est.IdItem;
                dtgridConsultaUsuario.Rows[rowId].Cells["QuantidadeTotal"].Value = est.QuantidadeTotal;
            }
        }
예제 #14
0
        private void brnConsultar_Click(object sender, EventArgs e)
        {
            ICollection resultado;
            string      nomeTela;
            string      lbl2 = "";

            #region Lista de veiculos
            if (radioListagemVeiculos.Checked)             //Lista de Veiculos
            {
                var lista = new VeiculosDao().GetAll();
                resultado = lista;
                nomeTela  = "Lista de Veiculos";
                lbl2      = $"Existem {lista.Count()} Veiculos cadastrados no sistema";

                AbreRelatorio(resultado, nomeTela, lbl2);
            }
            #endregion

            #region Lista de Motoristas
            else if (radioListagemMotoristas.Checked)             // Lista de Motoristas
            {
                var lista = new FuncionariosDao().GetAllMotoristas();
                resultado = lista;
                nomeTela  = "Lista de Motoristas";
                lbl2      = $"Existem {lista.Count()} Motoristas cadastrados no sistema.";

                AbreRelatorio(resultado, nomeTela, lbl2);
            }
            #endregion

            #region Lista de funcionários
            else if (radioListaFuncionarios.Checked)
            {
                var lista = new FuncionariosDao().GetAll();
                resultado = lista;
                nomeTela  = "Funcionários";
                lbl2      = $"Existem {lista.Count()} funcionários cadastrados no sistema.";
                AbreRelatorio(resultado, nomeTela, lbl2);
            }
            #endregion

            #region Lista de Clientes
            else if (radioListagemClientes.Checked)             // Lista de Clientes
            {
                var lista = new ClientesPjDao().GetAll();

                resultado = lista;
                nomeTela  = "Lista de Clientes";
                lbl2      = $"Existem {lista.Count()} clientes cadastrados no sistema";

                AbreRelatorio(resultado, "Lista de Clientes", lbl2);
            }
            #endregion

            #region Multas por veiculo
            else if (radioMultasPorVeiculo.Checked)             // Multas por veiculo
            {
                if (conferePlacaSelecionada())
                {
                    MensagemPlaca();
                }
                else if (!ConfereData())
                {
                }

                else
                {
                    var veiculo = GetVeiculo();
                    var lista   = new MultasDao().GetAll()
                                  .Where(m => m.VeiculoId == veiculo.Id)
                                  .Where(m => m.DataMulta >= dateInicio.Value && m.DataMulta <= dateFim.Value)
                                  .ToList();

                    resultado = lista;
                    nomeTela  = $"Multas de {veiculo.Placa} - {dateInicio.Value.ToShortDateString()} a {dateFim.Value.ToShortDateString()}";
                    lbl2      = $"O total de multas do veiculo {veiculo.Placa} é de {lista.Sum(v => v.Valor).ToString("C")}";

                    AbreRelatorio(resultado, nomeTela, lbl2);
                }
            }
            #endregion

            #region Sinistro por veiculo
            else if (radioSinistroVeiculo.Checked)             // Sinistro por veículo
            {
                if (conferePlacaSelecionada())
                {
                    MensagemPlaca();
                }
                else if (!ConfereData())
                {
                }
                else
                {
                    var veiculo = GetVeiculo();
                    var lista   = new SinistrosDao().GetAll()
                                  .Where(s => s.VeiculoId == veiculo.Id)
                                  .Where(a => a.Data >= dateInicio.Value && a.Data <= dateFim.Value)
                                  .ToList();

                    resultado = lista;
                    nomeTela  = $"Sinistros do veículo {veiculo.Placa}";
                    lbl2      = $"O valor gasto com sinistros do veiculo {veiculo.Placa} foi de {lista.Sum(v => v.Valor).ToString("C")}";

                    AbreRelatorio(resultado, nomeTela, lbl2);
                }
            }
            #endregion

            #region Abastecimento Geral
            else if (radioAbastecimentoGeral.Checked)             // abastecimento geral
            {
                if (!ConfereData())
                {
                }
                else
                {
                    var lista = new AbastecimentosDao().GetAll()
                                .Where(a => a.Data >= dateInicio.Value && a.Data <= dateFim.Value)
                                .ToList();

                    resultado = lista;
                    nomeTela  = "Lista de Abastecimentos Geral";

                    AbreRelatorio(resultado, nomeTela);
                }
            }

            #endregion

            #region Manutenção por Veiculo
            else if (radioListaManutencaoPorVeiculo.Checked)             // manutencao por veiculo
            {
                if (conferePlacaSelecionada())
                {
                    MensagemPlaca();
                }
                else if (!ConfereData())
                {
                }
                else
                {
                    var veiculo = GetVeiculo();
                    var lista   = new ManutencoesDao().GetAll()
                                  .Where(m => m.VeiculoId == veiculo.Id)
                                  .Where(m => m.Data >= dateInicio.Value && m.Data <= dateFim.Value)
                                  .ToList();

                    resultado = lista;
                    nomeTela  = $"Manutenções do veiculo {veiculo.Placa}";
                    lbl2      = $"O valor total gasto com manutenções do veiculo {veiculo.Placa} foi de {lista.Sum(v => v.Valor).ToString("C")}";

                    AbreRelatorio(resultado, nomeTela, lbl2);
                }
            }
            #endregion

            #region Manutenção Geral
            else if (radioManutencoesGeral.Checked)             // Manutencao por veiculo
            {
                if (!ConfereData())
                {
                }

                else
                {
                    var lista = new ManutencoesDao().GetAll()
                                .Where(m => m.Data >= dateInicio.Value && m.Data <= dateFim.Value)
                                .ToList();

                    resultado = lista;
                    nomeTela  = $"Manutenções {dateInicio.Value.ToShortDateString()} a {dateFim.Value.ToShortDateString()}";
                    lbl2      = $"O total em manutenções no periodo selecionado é de {lista.Sum(l => l.Valor).ToString("C")}";
                    AbreRelatorio(resultado, nomeTela, lbl2);
                }
            }
            #endregion

            #region Listagem de Estoque
            else if (radioListagemEstoque.Checked)
            {
                if (!ConfereData())
                {
                }
                else
                {
                    var lista = new EstoqueDao().GetAll()
                                .Where(es => es.DataAdicao >= dateInicio.Value && es.DataAdicao <= dateFim.Value)
                                .ToList();

                    resultado = lista;
                    nomeTela  = $"Estoque = {dateInicio.Value.ToShortDateString()} a {dateFim.Value.ToShortDateString()}";
                    lbl2      = $"Total em estoque no periodo selecionado é de {lista.Sum(v => v.ValorUnitario * v.Quantidade).ToString("C")}";
                    AbreRelatorio(resultado, nomeTela, lbl2);
                }
            }

            #endregion
        }
예제 #15
0
        // GET: Estoque/Delete/5
        public ActionResult Deletar(int id)
        {
            var pecaEstoque = new EstoqueDao().GetDetalhe(id);

            return(View(pecaEstoque));
        }
예제 #16
0
        // GET: Estoque
        public ActionResult Index()
        {
            var estoque = new EstoqueDao().GetAll();

            return(View(estoque));
        }
예제 #17
0
        // GET: Estoque/Edit/5
        public ActionResult Edit(int id)
        {
            var pecaEstoque = new EstoqueDao().GetById(id);

            return(View(pecaEstoque));
        }
예제 #18
0
        public ActionResult Checkout()
        {
            Usuario usuario = (Usuario)Session["Usuario"];

            if (usuario == null)
            {
                return(RedirectToAction("Login", "Usuarios"));
            }

            var listaEnderecos = new EnderecoDao().ConsultarPorCliente(usuario.Id);
            var listaCartoes   = new CartaoDao().ConsultarPorCliente(usuario.Id);

            List <SelectListItem> ddlEnderecos = new List <SelectListItem>
            {
                new SelectListItem
                {
                    Text  = "Selecione um endereço",
                    Value = "0"
                }
            };
            List <SelectListItem> ddlCartoes = new List <SelectListItem>
            {
                new SelectListItem
                {
                    Text  = "Selecione um cartão",
                    Value = "0"
                }
            };

            listaEnderecos.ForEach(x => ddlEnderecos.Add(new SelectListItem
            {
                Text     = string.Concat(x.Descricao, " - ", x.Logradouro, ", ", x.Numero, " ", x.Complemento),
                Value    = x.Id.ToString(),
                Selected = x.Entrega
            }));
            listaCartoes.ForEach(x => ddlCartoes.Add(new SelectListItem
            {
                Text     = string.Concat(x.Bandeira, " - final ", x.Numero.Substring(x.Numero.Length - 4)),
                Value    = x.Id.ToString(),
                Selected = x.Preferencial
            }));

            ViewBag.Enderecos = ddlEnderecos;
            ViewBag.Cartoes   = ddlCartoes;

            Cliente cliente = new Cliente
            {
                Carrinho = usuario?.Carrinho ?? new Carrinho()
            };

            Pedido pedido = new Pedido
            {
                Cliente = cliente,
                Bebidas = ((Usuario)Session["Usuario"])?.Carrinho?.Bebidas ?? new List <Bebida>()
            };

            //verifica se os itens ainda existem no estoque
            bool BebidasOK = new EstoqueDao().VerificaItensDisponiveis(pedido.Bebidas);

            if (!BebidasOK)
            {
                //retorna para o carrinho informando que o estoque foi atualizado
                return(RedirectToAction("Index", "Carrinho", new { i = 1 }));
            }

            return(View(pedido));
        }
        private void btnSalvarEntrada_Click(object sender, EventArgs e)
        {
            DialogResult result = MessageBox.Show("Deseja realmente criar um novo registro?",
                                                  "Confirma a criação ", MessageBoxButtons.YesNo,
                                                  MessageBoxIcon.Question);
            if (result == DialogResult.Yes)
            {
                MovimentoEntradaEntity entrada = new MovimentoEntradaEntity();
                IList<MovimentoEntradaItemEntity> itens = new List<MovimentoEntradaItemEntity>();

                entrada.IdFornecedor = _fornecedorSelecionado;
                entrada.DataMovimento = DateTime.Now;

                entrada.IdUsuario = Properties.Settings.Default.IdUsuarioLogado;

                foreach (DataGridViewRow row in dtgridItensSelecionados.Rows)
                {
                    if (row.Cells["CodigoItem"].Value != null && row.Cells["CodigoItem"].Value.ToString() != "")
                    {
                        if (row.Cells["Quantidade"].Value == null)
                        {
                            MessageBox.Show("Preencha a quantidade para o item " + row.Cells["ItemId"].Value + " - " + row.Cells["ItemName"].Value, "Campo Inválido");
                            return;
                        }

                        IItemEntity item = ItemDao.ConsultarPorCodigo(Convert.ToInt32(row.Cells["CodigoItem"].Value));
                        MovimentoEntradaItemEntity entradaItem = new MovimentoEntradaItemEntity();

                        entradaItem.IdItem = item.IdItem;
                        entradaItem.IdDeposito = Convert.ToInt32(row.Cells["Deposito"].Value);
                        entradaItem.QtdTotal = Convert.ToInt32(row.Cells["Quantidade"].Value);

                        itens.Add(entradaItem);
                    }
                }

                entrada.IdMovimentacaoEntrada = MovimentoEntradaDao.Inserir(entrada);

                foreach (var entradaItem in itens)
                {
                    entradaItem.IdMovimentoEntrada = entrada.IdMovimentacaoEntrada;

                    MovimentoEntradaItemEntity movimento = new MovimentoEntradaItemEntity
                    {
                        IdMovimentoEntrada = entradaItem.IdMovimentoEntrada,
                        IdItem = entradaItem.IdItem,
                        IdDeposito = entradaItem.IdDeposito,
                        QtdTotal = entradaItem.QtdTotal
                    };
                    MovimentoEntradaItemDao.Inserir(movimento);



                    EstoqueEntity estoque = new EstoqueEntity
                    {
                        IdItem = entradaItem.IdItem,
                        QuantidadeTotal = entradaItem.QtdTotal,
                        QuantidadeUtilizada = 0
                    };

                    IEstoqueEntity estoqueItem = EstoqueDao.ConsultarPorCodigoItem(entradaItem.IdItem);

                    if (estoqueItem != null)
                    {
                        EstoqueEntity atualizarEstoque = new EstoqueEntity
                        {
                          IdItem = entradaItem.IdItem,
                          QuantidadeTotal = entradaItem.QtdTotal + estoqueItem.QuantidadeTotal,
                          QuantidadeUtilizada = 0
                        };
                        EstoqueDao.Atualizar(atualizarEstoque, entradaItem.IdItem);
                    }
                    else
                    {
                        EstoqueDao.Incluir(estoque);
                    }
                }

                MessageBox.Show("Registro gravado com sucesso!");
                this.Close();
            }
        }
예제 #20
0
        private void AtualizaTabela()
        {
            var estoque = new EstoqueDao().GetAll();

            dataGridConsulta.DataSource = estoque;
        }
        private void btnSalvarSaida_Click(object sender, EventArgs e)
        {
            DialogResult result = MessageBox.Show("Deseja realmente criar um novo registro?",
                                                  "Confirma a criação ", MessageBoxButtons.YesNo,
                                                  MessageBoxIcon.Question);

            if (result == DialogResult.Yes)
            {
                MovimentoSaidaEntity             saida = new MovimentoSaidaEntity();
                IList <MovimentoSaidaItemEntity> itens = new List <MovimentoSaidaItemEntity>();

                saida.IdCliente     = 1;
                saida.DataMovimento = DateTime.Now;

                saida.IdUsuario = Properties.Settings.Default.IdUsuarioLogado;

                foreach (DataGridViewRow row in dtgridItensSelecionados.Rows)
                {
                    if (row.Cells["CodigoItem"].Value != null && row.Cells["CodigoItem"].Value.ToString() != "")
                    {
                        if (row.Cells["Quantidade"].Value == null)
                        {
                            MessageBox.Show("Preencha a quantidade para o item " + row.Cells["CodigoItem"].Value + " - " + row.Cells["Nome"].Value, "Campo Inválido");
                            return;
                        }

                        IEstoqueEntity estoque = EstoqueDao.ConsultarPorCodigoItem(Convert.ToInt32(row.Cells["CodigoItem"].Value));

                        if (Convert.ToInt32(row.Cells["Quantidade"].Value) > estoque.QuantidadeDisponivel)
                        {
                            MessageBox.Show("A quantidade disponivel para o item " + row.Cells["CodigoItem"].Value + row.Cells["Nome"].Value + " é de " + estoque.QuantidadeDisponivel);
                            return;
                        }

                        IItemEntity item = ItemDao.ConsultarPorCodigo(Convert.ToInt32(row.Cells["CodigoItem"].Value));
                        MovimentoSaidaItemEntity saidaItem = new MovimentoSaidaItemEntity();

                        saidaItem.IdItem     = item.IdItem;
                        saidaItem.IdDeposito = Convert.ToInt32(row.Cells["Deposito"].Value);
                        saidaItem.QtdTotal   = Convert.ToInt32(row.Cells["Quantidade"].Value);

                        itens.Add(saidaItem);
                    }
                }

                saida.IdMovimentoSaida = MovimentoSaidaDao.Inserir(saida);

                foreach (var saidaItem in itens)
                {
                    saidaItem.IdMovimentoSaida = saida.IdMovimentoSaida;

                    MovimentoSaidaItemEntity movimento = new MovimentoSaidaItemEntity
                    {
                        IdMovimentoSaida = saidaItem.IdMovimentoSaida,
                        IdItem           = saidaItem.IdItem,
                        IdDeposito       = saidaItem.IdDeposito,
                        QtdTotal         = saidaItem.QtdTotal
                    };
                    MovimentoSaidaItemDao.Inserir(movimento);

                    IEstoqueEntity estoqueItem = EstoqueDao.ConsultarPorCodigoItem(saidaItem.IdItem);

                    EstoqueEntity estoque = new EstoqueEntity
                    {
                        QuantidadeTotal = estoqueItem.QuantidadeTotal - saidaItem.QtdTotal
                    };

                    EstoqueDao.Atualizar(estoque, saidaItem.IdItem);
                }

                MessageBox.Show("Registro gravado com sucesso!");
                this.Close();
            }
        }
예제 #22
0
        private void PreenchePeca(int id)
        {
            var peca = new EstoqueDao().GetDetalhe(id);

            txtNomeSaida.Text = peca.Peca;
        }