Exemple #1
0
        public void OMetodoIndexDeveRetornarUmaViewComProdutos()
        {
            // arrange
            var produtoCtrl = new ProdutosController(new ProdutoRepository(), new CategoriaRepository());

            // action
            var result = produtoCtrl.Index();
            var model  = result.Model as IEnumerable <Produto>; // cast pra uma lista de produtos

            // assert
            Assert.AreEqual(typeof(ViewResult), result.GetType());
            Assert.IsNotNull(model);
        }
Exemple #2
0
        private void CarregaCategoria()
        {
            DataTable produtos = ProdutosController.GetProdutos("SELECT DISTINCT categoria FROM Produtos;");

            cmbCategoria.Items.Clear();
            if (produtos.Rows.Count > 0)
            {
                foreach (DataRow dr in produtos.Rows)
                {
                    cmbCategoria.Items.Add(dr["categoria"].ToString());
                }
            }
        }
Exemple #3
0
 public async Task Setup()
 {
     mockProdutos    = new Mock <IProdutoRepository>();
     fabricante      = new Fabricante();
     produto         = new Produto();
     mockFabricantes = new Mock <IFabricanteRepository>();
     mockFabricantes.Setup(f => f.FindByIdAsync(1)).ReturnsAsync(fabricante);
     mockProdutos.Setup(f => f.AddAsync(produto)).Returns(Task.CompletedTask);
     controller      = new ProdutosController(mockProdutos.Object, mockFabricantes.Object);
     produtoCreateVM = Generator.ValidProdutoCreateVM();
     // act
     result = await controller.Create(produtoCreateVM);
 }
 public async Task Setup()
 {
     mockProdutos    = new Mock <IProdutoRepository>();
     mockFabricantes = new Mock <IFabricanteRepository>();
     mockFabricantes.Setup(f => f.ListaFabricantesAsync()).ReturnsAsync(new List <Fabricante> {
         new Fabricante {
             Id = 999
         }
     }).Verifiable();
     controller = new ProdutosController(mockProdutos.Object, mockFabricantes.Object);
     // act
     produtoCreateVM = Generator.InvalidProdutoCreateVM();
     result          = await controller.Create(produtoCreateVM);
 }
Exemple #5
0
        private void Variacao()
        {
            try
            {
                DataTable dt = EntradaController.GetSqlEntradas("SELECT ProdutoId, preco FROM Entradas ORDER by ProdutoId");


                if (dt.Rows.Count > 0)
                {
                    string descricaoAnt = "";
                    double precoAnt     = 0;
                    double Varicao      = 0;

                    for (int i = 0; i < dt.Rows.Count; i++)
                    {
                        string descricao = ProdutosController.GetStringProduto((int)dt.Rows[i]["ProdutoId"]);
                        double Preco     = Convert.ToDouble(dt.Rows[i]["Preco"].ToString());

                        if (i > 0)
                        {
                            if (descricao == descricaoAnt)
                            {
                                Varicao = ((Preco - precoAnt) / precoAnt) * 100;

                                if (Varicao > 0)
                                {
                                    Grafico.Series["ChartValores"].Label = "#PERCENT";
                                    Grafico.Series["ChartValores"].Points.AddXY(descricao, Varicao);
                                }
                            }

                            descricaoAnt = descricao;
                            precoAnt     = Preco;
                        }
                        else
                        {
                            descricaoAnt = descricao;
                            precoAnt     = Preco;
                        }
                    }

                    Grafico.Titles["Titulo"].Text = "Variação do Preço";
                }
            }
            catch (Exception ex)
            {
                frmErro frm = new frmErro("Ocorreu um erro no calculo da variação: " + ex.Message);
                frm.ShowDialog();
            }
        }
Exemple #6
0
 private void frmSaida_Load(object sender, EventArgs e)
 {
     try
     {
         ProdutosController.CarregaCombo(cmbProduto);
         FornecedorController.CarregaCombo(cmbFornecedor);
         Util.CarregaCombo("Entradas", "Comprador", cmbComprador);
         CarregaForme();
     }
     catch (Exception ex)
     {
         frmErro.Mensagem(ex.Message);
     }
 }
 private void frmEditaEntrada_Load(object sender, EventArgs e)
 {
     try
     {
         ProdutosController.CarregaCombo(cmbProduto);
         cmbProduto.Text    = cl_Variaveis.Produto;
         txtQuantidade.Text = cl_Variaveis.Quantidade.ToString();
         txtPreco.Text      = cl_Variaveis.Preco;
     }
     catch (Exception ex)
     {
         frmErro.Mensagem(ex.Message);
     }
 }
Exemple #8
0
        public void AoExecutarOMetodoIndexDeveraRetornarAViewComOModeloCorreto()
        {
            //a
            var produtosController =
                new ProdutosController(new ProdutoRepositoryFake(), new TipoProdRepositoryFake());

            //a
            var result = produtosController.Index() as ViewResult;
            var model  = result.Model as List <Produto>;

            //a
            Assert.AreEqual(typeof(ViewResult), result.GetType());
            Assert.AreEqual(3, model.Count);
        }
Exemple #9
0
        public void MetodoIndexDeveraRetornarAViewComOModeloCorreto()
        {
            // arrange
            var produtosController = new ProdutosController(new ProdutoRepositoryFake(), new TipoProdutoRepositoryFake());

            // action
            var result = produtosController.Index();
            var model  = result.Model as IEnumerable <ProdutoIndexVM>;

            // assert
            Assert.AreEqual(typeof(ViewResult), result.GetType());
            Assert.AreEqual(3, model.Count());
            Assert.IsNotNull(model);
        }
Exemple #10
0
        public EditarProduto(int id)
        {
            InitializeComponent();

            ProdutosController controller = new ProdutosController();

            inputCodigoProduto.Text      = Convert.ToString(id);
            inputCodigoProduto.IsEnabled = false;

            for (int i = 0; i < controller.ListarCategorias().Count; i++)
            {
                cbCategoria.Items.Add(controller.ListarCategorias()[i]);
            }
        }
Exemple #11
0
        public async void GetProdutoById_Return_NotFoundResult()
        {
            //Arrange
            var controller = new ProdutosController(_repositoryMock.Object, _mapperMock.Object);

            _repositoryMock.Setup(x => x.ProdutoRepository.GetById(c => c.ProdutoId == It.IsAny <int>())).ReturnsAsync(() => null);


            //Act
            var data = await controller.Get(It.IsAny <int>());

            //Assert
            Assert.IsType <NotFoundResult>(data.Result);
            Assert.Null(data.Value);
        }
Exemple #12
0
        private void prev_Click(object sender, RoutedEventArgs e)
        {
            controller = new ProdutosController();
            int id = int.Parse(txCod.Text);

            if ((id - 1) <= 0)
            {
                LimparCampos();
                return;
            }

            Produtos p = controller.Prev(id);

            FillProd(p);
        }
Exemple #13
0
        public CadProduto()
        {
            InitializeComponent();

            txCod.ToNumeric();
            txValor.ToMoney();
            txCod_unidade.ToNumeric();
            txCod_fabricante.ToNumeric();
            txCod_marca.ToNumeric();
            txEan.ToNumeric();
            txNcm.ToNumeric();
            txAliquota.ToMoney();
            this.controller = new ProdutosController();
            txDescricao.Focus();
            btGrade.IsEnabled = false;
        }
        public void GetRightAmountOfProductsAfterDelete()
        {
            // Arrange
            IProdutoRepository fakeShirtRepository = new FakeProdutoRepository();
            ProdutosController produtosController = new ProdutosController(fakeShirtRepository);
            // Act
            var list = produtosController.GetProdutos() as List<Produto>;
            int numProdutos = list.Count;
            produtosController.DeleteProduto(1);
            list = produtosController.GetProdutos() as List<Produto>;
            int numProdutosAfterDelete = list.Count;

            //// Assert
            Assert.AreEqual(numProdutos-numProdutosAfterDelete, 1);

        }
        public void IndexDeveRetornarViewComModeloCorreto()
        {
            //arrange
            var produtosController = new ProdutosController(new ProdutoRepositoryFake(), new TipoDeProdutoRepositoryFake());

            //act
            var result = produtosController.Index();
            var model  = result.Model as IEnumerable <ProdutoIndexVM>;

            //assert
            Assert.AreEqual(typeof(ViewResult), result.GetType());
            //teste para verificar se possui mesmo 3 registros
            Assert.AreEqual(3, model.Count());
            //teste para verificar se a lista do model nao esta vazia
            Assert.IsNotNull(model);
        }
Exemple #16
0
        public void OMetodoIndexDeveraRetornarUmaViewComProdutos()
        {
            //arrange
            var produtosCtrl = new ProdutosController(new ProdutoRespositoryFake(), new CategoriaRespositoryFake());

            //act
            var result = produtosCtrl.Index() as ViewResult;
            var model  = result.Model as List <Produto>;

            //assert
            Assert.IsNotNull(result);
            Assert.IsInstanceOfType(result, typeof(ViewResult));

            Assert.IsNotNull(model);
            Assert.IsInstanceOfType(model, typeof(List <Produto>));
        }
Exemple #17
0
        private void btnSalvar_Click(object sender, EventArgs e)
        {
            try
            {
                int id = FornecedorController.GetIdfornecedor(cmbFornecedor.Text);

                ProdutosModel pm = new ProdutosModel();
                pm.Id         = IdProduto;
                pm.codbarra   = txtCodigoBarra.Text;
                pm.descricao  = txtDescricao.Text;
                pm.preco      = txtPreco.Text;
                pm.fornecedor = id;
                pm.desconto   = txtDesconto.Text;
                pm.imagem     = caminhoImagem;
                pm.categoria  = cmbCategoria.Text.ToUpper();
                pm.fabricante = cmbFabricante.Text.ToUpper();

                if (modo == 0)
                {
                    ProdutosController.Add(pm);
                    frmSuccess.Mensagem("Cadastro Inserido com Sucesso!!!");
                    Desativa();
                }
                else
                {
                    ProdutosController.Update(pm);
                    frmSuccess.Mensagem("Cadastro Atualizado com sucesso!!!");
                    Desativa();
                    DataTable dt = ProdutosController.GetProdutos();

                    if (cl_Variaveis.frmprodutoeditar != null)
                    {
                        cl_Variaveis.frmprodutoeditar.ExibirDados(dt);
                    }
                    if (cl_Variaveis.frmentrada != null)
                    {
                        cl_Variaveis.frmentrada.CarregaCampos();
                    }
                }
                btnSalvar.Enabled = false;
                this.Close();
            }
            catch (Exception ex)
            {
                frmErro.Mensagem("Erro : " + ex.Message);
            }
        }
Exemple #18
0
        private void dgvEntrada_KeyUp(object sender, KeyEventArgs e)
        {
            //TODO: PRODUTO
            if (e.KeyCode == Keys.Enter)
            {
                if (dgvProduto.SelectedRows.Count > 0)
                {
                    foreach (DataGridViewRow r in dgvProduto.SelectedRows)
                    {
                        int id = Convert.ToInt32(r.Cells["id"].Value.ToString());
                        _entrada._produtoModel = ProdutosController.GetProdutoModel(id);

                        this.Close();
                    }
                }
            }
        }
Exemple #19
0
        public void CarregaCampos()
        {
            DataTable dts = FornecedorController.GetSqlfornecedores("select distinct NomeFantasia from Fornecedores order by NomeFantasia;");

            Util.AutoCompleta(dts, cmbFornecedor);

            DataTable dtd = ProdutosController.GetProdutos("select distinct descricao from Produtos order by descricao;");

            Util.AutoCompleta(dtd, txtDescricao);

            DataTable dtc = EntradaController.GetSqlEntradas("select distinct Categoria from Entradas order by Categoria;");

            Util.AutoCompleta(dtc, txtCategoria);

            DataTable dtco = EntradaController.GetSqlEntradas("select distinct Comprador from Entradas order by Comprador;");

            Util.AutoCompleta(dtco, cmbComprador);
        }
Exemple #20
0
 private void btnEditar_Click(object sender, EventArgs e)
 {
     try
     {
         int id = ProdutosController.GetIdProduto(txtDescricao.Text);
         cl_Variaveis.frmentrada       = this;
         cl_Variaveis.frmprodutoeditar = null;
         using (frmProdutos form = new frmProdutos())
         {
             form.IdProduto = id;
             form.modo      = 1;
             form.ShowDialog();
         }
     }
     catch (Exception ex)
     {
         frmErro form = new frmErro("Ocorreu um erro ao tentar editar o produto: " + ex.Message);
     }
 }
Exemple #21
0
        private void dgvEntrada_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            if (e.ColumnIndex == 1 && e.RowIndex >= 0)
            {
                DataGridViewRow row = this.dgvProduto.Rows[e.RowIndex];
                int             id  = Convert.ToInt32(row.Cells["id"].Value.ToString());
                _entrada._produtoModel = ProdutosController.GetProdutoModel(id);
                this.Close();
            }


            if (e.ColumnIndex == 5 && e.RowIndex >= 0)
            {
                DataGridViewRow row = this.dgvProduto.Rows[e.RowIndex];
                int             id  = Convert.ToInt32(row.Cells["id"].Value);
                ProdutosModel   pm  = new ProdutosModel();
                pm = ProdutosController.GetProdutoModel(id);

                using (frmProdutos form = new frmProdutos())
                {
                    cl_Variaveis.frmentrada       = null;
                    cl_Variaveis.frmprodutoeditar = null;

                    form.IdProduto = id;
                    form.modo      = 1;
                    form.ShowDialog();
                }
            }
            if (e.ColumnIndex == 6 && e.RowIndex >= 0)
            {
                DataGridViewRow row = this.dgvProduto.Rows[e.RowIndex];
                int             id  = Convert.ToInt32(row.Cells["id"].Value);

                if (MessageBox.Show("Deseja excluir o selecionado?", "Informação", MessageBoxButtons.OKCancel) == DialogResult.OK)
                {
                    ProdutosController.Delete(id);
                    DataTable dt = ProdutosController.GetProdutos();
                    ExibirDados(dt);
                }
            }
        }
Exemple #22
0
        private void Salvar()
        {
            ProdutosController pc = new ProdutosController();
            Produtos           p  = (int.Parse(txCod.Text) == 0
                ? new Produtos()
                : pc.Find(int.Parse(txCod.Text)));

            //  p.Id = int.Parse(txCod.Text);
            p.Descricao      = txDescricao.Text;
            p.Ean            = txEan.Text;
            p.Referencia     = txReferencia.Text;
            p.Ncm            = txNcm.Text;
            p.Unidade_id     = int.Parse(txCod_unidade.Text);
            p.Valor_unit     = decimal.Parse(txValor.Text);
            p.Fabricante_id  = int.Parse(txCod_fabricante.Text);
            p.Marca_id       = int.Parse(txCod_marca.Text);
            p.Localizacao    = txLocalizacao.Text;
            p.Controla_lote  = rdoControleLote.IsChecked.Value;
            p.Controla_grade = rdoControleGrade.IsChecked.Value;
            p.Aliquota       = decimal.Parse(txAliquota.Text);

            if ((p.Foto == null) && !string.IsNullOrWhiteSpace(Path_arquivo_foto))
            {
                p.Foto = (string.IsNullOrEmpty(Path_arquivo_foto)
                    ? null
                    : File.ReadAllBytes(Path_arquivo_foto));
            }
            Produto_atual = p;

            if (pc.Save(p))
            {
                if (p.Controla_grade)
                {
                    btGrade.IsEnabled = true;
                }
                else
                {
                    LimparCampos();
                }
            }
        }
        static void Main(string[] args)
        {
            ProdutosController produtosController = new ProdutosController();
            int opcao;

            do
            {
                Console.WriteLine("\nBem Vindo ao nosso sitema de HortiFruti <3\n\n");
                Console.WriteLine("____________________________________________________");
                Console.WriteLine("Informe o que você desaja realizar no nosso sistema:");
                Console.WriteLine("\tOpção (1)\t-\tCadastrar algum produto");
                Console.WriteLine("\tOpção (2)\t-\tListar nossos prrodutos");
                Console.WriteLine("\tOpção (3)\t-\tSomar preços do produtos");
                Console.WriteLine("\tOpção (0)\t-\tSair do sistema\n");
                opcao = int.Parse(Console.ReadLine());

                switch (opcao)
                {
                case 1:
                    produtosController.CadastrarProduto();
                    break;

                case 2:
                    produtosController.ListarProdutos();
                    break;

                case 3:
                    double calculo = produtosController.CalcularLucro();
                    break;

                case 0:
                    System.Console.WriteLine("Muito obrigado pelo acesso, volte sempre!");
                    break;

                default:
                    System.Console.WriteLine("Perdão, ação não informada corretamente, verifique sua resposta!");
                    break;
                }
            }while(opcao != 0);
        }
Exemple #24
0
        private void CarregaForme()
        {
            try
            {
                EntradaModel  en = EntradaController.GetEntradaModel(IdEntrada);
                ProdutosModel pm = ProdutosController.GetProdutoModel(en.ProdutoId);


                cmbFornecedor.Text    = FornecedorController.GetStringfornecedor(en.FornecedorId);
                cmbComprador.Text     = en.Comprador;
                cmbProduto.Text       = pm.descricao;
                txtOrdem.Text         = en.Ordem;
                txtData.Text          = en.DataEntrada;
                txtPreco.Text         = en.Preco;
                txtDesconto.Text      = pm.desconto.ToString();
                txtComDesconto.Text   = en.Desconto;
                txtQuantidade.Text    = en.Quantidade.ToString();
                txtDescontoFinal.Text = en.DescontoTotal;
                lblTotal.Text         = en.Total;

                DataTable produtos = ProdutosController.GetProdutos("SELECT DISTINCT categoria FROM Produtos;");

                cmbCategoria.Items.Clear();
                if (produtos.Rows.Count > 0)
                {
                    foreach (DataRow dr in produtos.Rows)
                    {
                        cmbCategoria.Items.Add(dr["categoria"].ToString());
                    }
                }

                cmbCategoria.Text = en.Categoria;
            }
            catch (Exception ex)
            {
                frmErro.Mensagem(ex.Message);
            }
        }
Exemple #25
0
        public void DEVE_REMOVER_UM_PRODUTO_COM_GRADE()
        {
            ProdutosController controller = new ProdutosController();
            Produtos           produto    = GetProduto();

            produto.Controla_grade = true;

            controller.Save(produto);

            Grades_produtosController gc = new Grades_produtosController();

            Grades_produtos grade = new Grades_produtos();

            grade.Produto_id = produto.Id;
            grade.Cor_id     = 1;
            grade.Tamanho_id = 1;

            gc.Save(grade);

            controller = new ProdutosController();
            bool result = controller.Remove(produto.Id);

            Assert.IsTrue(result);
        }
Exemple #26
0
        private void txtPesquisa_KeyUp(object sender, KeyEventArgs e)
        {
            try
            {
                if (e.KeyCode == Keys.Enter)
                {
                    dgvProduto.Focus();
                }
                else
                {
                    dt = ProdutosController.GetProduto("Descricao", txtPesquisa.Text);

                    ExibirDados(dt);
                }

                if (e.KeyCode == Keys.Down)
                {
                    dgvProduto.Focus();
                }
            }
            catch
            {
            }
        }
Exemple #27
0
        private void AdicionaItem()
        {
            Itens_movimento item = new Itens_movimento();
            Estoque         est  = new ProdutosController().Get(txProduto.Text);
            Produtos        prod = est.Produtos;

            if (Tipo_movimento.Movimentacao_itens == (int)Tipo_movimentacao.SAIDA)
            {
                if (est.Quant <= 0)
                {
                    if (ParametrosController.FindParametro("EST_SAIZERO").Valor.Equals("N"))
                    {
                        MessageBox.Show($"Não é possível retirar o produto '{est.Produtos.Descricao}' do estoque porque o sistema está atualmente configurado para não permitir retiradas de estoque cujo o saldo atual é igual ou inferior a 0.", "EST_SAIZERO", MessageBoxButton.OK, MessageBoxImage.Exclamation);
                        return;
                    }
                }
            }

            if (prod == null)
            {
                return;
            }

            item.Produto_id = prod.Id;
            item.Produtos   = prod;
            item.Lote       = est.Lote;
            item.Sublote    = est.Sublote;
            item.Aliquota   = prod.Aliquota;
            item.Valor_unit = (Tipo_movimento.Utiliza_fornecedor
                 ? prod.Produtos_fornecedores.First(pf => pf.Fornecedor_id == int.Parse(txCod_cliente_fornecedor.Text)).Preco_custo
                 : prod.Valor_unit);
            item.Desconto    = this.Desconto;
            item.Acrescimo   = this.Acrescimo;
            item.Quant       = decimal.Parse(txQuant.Text);
            item.Valor_final = decimal.Parse(txValor_final.Text);
            item.Cfop        = Tipo_movimento.Cfop;
            item.Vendedor_id = int.Parse(txCod_vendedor.Text);

            if (Tipo_movimento.Utiliza_fornecedor && Tipo_movimento.Movimentacao_itens == (int)Tipo_movimentacao.ENTRADA)
            {
                item.Unidades = prod.Produtos_fornecedores.First(pf => pf.Fornecedor_id == int.Parse(txCod_cliente_fornecedor.Text)).Unidades;
            }
            else
            {
                item.Unidades = prod.Unidades;
            }

            item.Unidade_id = item.Unidades.Id;

            Movimento_Controller.AdicionaItem(item);
            dataGrid.ItemsSource = Movimento_Controller.Itens_movimento;

            txProduto.Text              = "0";
            txValor_unit.Text           = "0,00";
            txQuant.Text                = "0,00";
            txTotal_prod.Text           = "0,00";
            txDesconto.Text             = "0,00";
            txAcrescimo.Text            = "0,00";
            txValor_final.Text          = "0,00";
            lbDescricao_produto.Content = string.Empty;
            lbFatorConversao.Visibility = Visibility.Hidden;
            txProduto.Focus();
            txProduto.Text        = string.Empty;
            Desconto              = 0;
            Acrescimo             = 0;
            txDesconto.IsEnabled  = true;
            txAcrescimo.IsEnabled = true;

            RecalculaTotais();
        }
        private void Pesquisar()
        {
            List <Produtos> list = new ProdutosController().Search(txPesquisa.Text);

            dataGrid.ItemsSource = list;
        }
Exemple #29
0
 public ProdutoUT()
 {
     _produtosController = new ProdutosController();
 }
        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            ProdutosController produtosController = new ProdutosController();

            dgProdutos.DataContext = produtosController.ListarTodos();
        }