예제 #1
0
        public frmProduto(int id)
        {
            InitializeComponent();
            _produto        = new Produto();
            _produtoServico = new ProdutoServico();
            _produto        = _produtoServico.Listar <Produto>(r => r.Marca, r => r.Categoria)
                              .FirstOrDefault(r => r.Id == id);

            txtNome.Text        = _produto.Nome;
            txtDescricao.Text   = _produto.Descricao;
            txtCor.Text         = _produto.Cor;
            nudQuantidade.Value = _produto.Quantidade;

            btnExcluir.Visible = true;
        }
예제 #2
0
        public Principal()
        {
            InitializeComponent();
            WindowState     = FormWindowState.Maximized;
            FormBorderStyle = FormBorderStyle.FixedSingle;
            _contexto       = new PizzariaContext();

            _pedidoRepositorio  = new PedidoRepositorio(_contexto);
            _clienteRepositorio = new ClienteRepositorio(_contexto);
            _produtoRepositorio = new ProdutoRepositorio(_contexto);

            _pedidoServico  = new PedidoServico(_pedidoRepositorio);
            _clienteServico = new ClienteServico(_clienteRepositorio);
            _produtoServico = new ProdutoServico(_produtoRepositorio);
        }
예제 #3
0
        public ActionResult CadastroEdicaoProduto(int?id)
        {
            ProdutoViewModel model;

            if (id == null)
            {
                model = new ProdutoViewModel();
            }
            else
            {
                var     servico = new ProdutoServico(new ProdutoRepositorio());
                Produto produto = servico.BuscarPorId(Convert.ToInt32(id));
                model = produto.ConverterParaViewModel();
            }
            return(View("CadastroEdicaoProduto", model));
        }
예제 #4
0
        public void ProdutoDeletadoComSucesso()
        {
            ProdutoServico produtoServico =
                new ProdutoServico(new ProdutoRepositorioMock());

            Produto produto = new Produto()
            {
                Id    = 1,
                Nome  = "Ajax",
                Valor = 2.50M
            };

            produtoServico.Excluir(1);
            Produto produtoExcluido = produtoServico.BuscarProdutoPeloNome("Ajax");

            Assert.IsNull(produtoExcluido);
        }
예제 #5
0
        public void ProdutoInserirComSucesso()
        {
            ProdutoServico produtoServico =
                new ProdutoServico(new ProdutoRepositorioMock());

            Produto produto = new Produto()
            {
                Id    = 4,
                Nome  = "Omo",
                Valor = 2.50M
            };

            produtoServico.Inserir(produto);
            Produto produtoEditado = produtoServico.BuscarProdutoPeloNome("Omo");

            Assert.IsNotNull(produtoEditado);
        }
        public FormCadastroPedido(PizzariaContext contexto, ProdutoServico servico)
        {
            InitializeComponent();
            _pedido   = new Pedido();
            _contexto = contexto;
            _endereco = new Localizacao();

            _servicoProduto = servico;

            _userControlItensPedido      = new ItensPedidoControl();
            _userControlItensPedido.Dock = DockStyle.Fill;
            panelItensPedido.Controls.Add(_userControlItensPedido);

            _tamanho = TamanhoEnum.Grande;
            LimparCamposSabores();
            CarregarSabores(_tamanho);
        }
예제 #7
0
        public async Task <bool> Atualizar(ProdutoServico produtoServico)
        {
            if (!ExecutarValidacao(new ProdutoServicoValidation(), produtoServico))
            {
                return(false);
            }

            if (_produtoServicoRepository.JaExiste(produtoServico.Id, produtoServico.Nome))
            {
                Notificar("Já existe um produto com este nome informado.");
                return(false);
            }

            await _produtoServicoRepository.Atualizar(produtoServico);

            return(true);
        }
        public ActionResult Salvar(ProdutoModel model)
        {
            ProdutoServico produtoServico = ServicoDeDependencias.MontarProdutoServico();

            Produto produto = new Produto(model.Nome, model.Valor, model.Id);

            if (produto.Id != 0)
            {
                produtoServico.Editar(produto);
            }
            else
            {
                produtoServico.Salvar(produto);
            }

            return(RedirectToAction("ListarProdutos"));
        }
예제 #9
0
        public Produto(int idProduto, bool alterar)
        {
            InitializeComponent();

            if (alterar)
            {
                IdProduto = idProduto;

                var produto = new ProdutoServico().PegarDadosProduto(idProduto);

                input_nome.Text       = produto.NomeProduto;
                input_codigo.Text     = produto.CodigoBarras;
                input_quantidade.Text = produto.ValorUnitario.ToString();
                CarregarImagemPadrao(produto.UrlImagem);
                btn_salvar_produto.Click -= SalvarProduto;
                btn_salvar_produto.Click += AtualizarProduto;
            }
        }
        public async Task <IActionResult> Get([FromRoute] int id)
        {
            try
            {
                ProdutoServico produtoServico = produtoServicoRepositorio.FindBy(p => p.Id == id && p.Excluido != true).FirstOrDefault();

                if (produtoServico == null)
                {
                    return(NotFound());
                }

                ProdutoServicoViewModel model = _mapper.Map <ProdutoServicoViewModel>(produtoServico);

                return(Ok(model));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.ToString()));
            }
        }
        public async Task <IActionResult> Post([FromBody] ProdutoServicoViewModel model)
        {
            try
            {
                ProdutoServico obj = _mapper.Map <ProdutoServico>(model);
                obj.Ativo    = true;
                obj.Excluido = false;


                await produtoServicoRepositorio.AddAndSaveAsync(obj);

                model.Id = obj.Id;

                return(Ok(model));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.ToString()));
            }
        }
예제 #12
0
        public Produto(int idProduto)
        {
            InitializeComponent();

            var produto = new ProdutoServico().PegarDadosProduto(idProduto);

            input_nome.Text       = produto.NomeProduto;
            input_nome.IsReadOnly = true;

            input_codigo.Text       = produto.CodigoBarras;
            input_codigo.IsReadOnly = true;

            input_quantidade.Text       = produto.ValorUnitario.ToString();
            input_quantidade.IsReadOnly = true;

            CarregarImagemPadrao(produto.UrlImagem);
            lb_imagem.Drop -= CarregarFoto;

            btn_salvar_produto.IsEnabled = false;
        }
        public ActionResult Salvar(ProdutoModel model)
        {
            ProdutoServico produtoServico = ServicoDeDependencias.MontarProdutoServico();

            Produto produto = new Produto(
                model.Id == null ? 0 : (int)model.Id,
                model.Nome,
                model.Valor);

            if (produto.Id == 0)
            {
                ViewBag.Mensagem = "Produto cadastrado com sucesso!";
            }
            else
            {
                ViewBag.Mensagem = "Produto editado com sucesso!";
            }
            produtoServico.Salvar(produto);
            return(RedirectToAction("Produto"));
        }
예제 #14
0
        public ActionResult Salvar(ProdutoViewModel model)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    var     servico = new ProdutoServico(new ProdutoRepositorio());
                    Produto produto = new Produto(Convert.ToInt32(model.Id), model.Nome, model.Valor);

                    servico.Validar(produto);

                    servico.Salvar(produto);

                    if (produto.Id == 0)
                    {
                        ViewBag.Mensagem = "Cadastro concluído com sucesso.";
                    }
                    else
                    {
                        ViewBag.Mensagem = "Cadastro atualizado com sucesso.";
                    }

                    return(View("FichaTecnica", model));
                }
                catch (RegraNegocioException ex)
                {
                    ModelState.AddModelError("", ex.Message);
                }
                catch
                {
                    ModelState.AddModelError("", "Ocorreu um erro inesperado. Contate o administrador do sistema.");
                }
                return(View("CadastroEdicaoProduto"));
            }
            else
            {
                ModelState.AddModelError("", "Ocorreu algum erro.");
                return(View("CadastroEdicaoProduto"));
            }
        }
        public async Task <IActionResult> Delete(int id)
        {
            try
            {
                ProdutoServico obj = await produtoServicoRepositorio.FindAsync(id);

                if (obj == null)
                {
                    return(NotFound());
                }

                obj.Excluido = true;

                await produtoServicoRepositorio.EditAndSaveAsync(obj);

                return(Ok("Excluido!!"));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.ToString()));
            }
        }
예제 #16
0
        public ActionResult Salvar(ProdutoModel produtoModel)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    Produto        produto        = Mapper.Map <ProdutoModel, Produto>(produtoModel);
                    ProdutoServico produtoServico = ServicoDeDependencias.MontarProdutoServico();
                    produtoServico.Persistir(produto);

                    return(RedirectToAction("Listar"));
                }
            } catch (ProdutoException e)
            {
                ModelState.AddModelError("", e.Message);
                return(View("ProdutoPersistir", produtoModel));
            }


            ModelState.AddModelError("", "Ocorreu um erro no preenchimento do formulário.");
            return(View("ProdutoPersistir", produtoModel));
        }
        private void ExcluirProduto(object sender, RoutedEventArgs e)
        {
            //pega o id do produto
            string idProduto = ((Button)sender).Tag.ToString();

            //pega o produto de acordo com o ID
            var produto = new ProdutoServico().PegarDadosProduto(int.Parse(idProduto));

            //modal perguntando se realmente deseja excluir o produto
            var opcao = MessageBox.Show("Você realmente deseja excluir o produto: " + produto.NomeProduto, "AVISO!", MessageBoxButton.YesNo);

            //caso a resposta seja sim
            //exclui o produto
            switch (opcao)
            {
            case MessageBoxResult.Yes:
                new ProdutoServico().DeletarProduto(int.Parse(idProduto));
                break;
            }

            //recarrega a lista de produtos
            CarregarLista(null, null);
        }
        public async Task <IActionResult> Patch([FromRoute] int id, [FromBody] ProdutoServicoViewModel model)
        {
            try
            {
                ProdutoServico obj = await produtoServicoRepositorio.FindAsync(id);

                if (obj == null)
                {
                    return(NotFound("Erro ao atualizar"));
                }

                obj.Descricao = model.Descricao;
                obj.Ativo     = true;
                obj.Excluido  = false;

                await produtoServicoRepositorio.EditAndSaveAsync(obj);

                return(Ok(model));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.ToString()));
            }
        }
예제 #19
0
 public ProdutosController(ProdutoContext context)
 {
     this.produtoServico = new ProdutoServico(context);
 }
 public FormCadastroProduto(PizzariaContext contexto, ProdutoServico servico)
 {
     InitializeComponent();
     CarregaValoresComboBox();
     _produtoServico = servico;
 }
 public GerenciadorFormularioPedido(PedidoServico pedidoServico, PizzariaContext contexto, ProdutoServico produtoServico)
 {
     _pedidoServico  = pedidoServico;
     _produtoServico = produtoServico;
     _contexto       = contexto;
 }
예제 #22
0
 public frmListagemProdutos()
 {
     InitializeComponent();
     _produto        = new Produto();
     _produtoServico = new ProdutoServico();
 }
        public void InitializeObjects()
        {
            mockRepositorio = new Mock <IProdutoRepositorio>();

            produtoServico = new ProdutoServico(mockRepositorio.Object);
        }
예제 #24
0
 public ProdutoController()
 {
     produtoServico = new ProdutoServico();
 }
예제 #25
0
 public ProdutoController(LOJAContext context)
 {
     produtoServico    = new ProdutoServico(context);
     produtoValidation = new ProdutoValidation();
 }
        public static ProdutoServico MontarProdutoServico()
        {
            ProdutoServico produtoServico = new ProdutoServico(new ProdutoRepositorio());

            return(produtoServico);
        }
예제 #27
0
 public GerenciadorFormularioProduto(ProdutoServico produtoServico)
 {
     _produtoServico = produtoServico;
 }
예제 #28
0
 public ProdutoServicoDTO(ProdutoServico produtoServico)
 {
     Id = produtoServico.Id;
     NmProdutoServico = produtoServico.NmProdutoServico;
     DtInclusao       = produtoServico.DtInclusao.ToString("dd/MM/yyyy");
 }
예제 #29
0
 private void TesteBuscarPorCodigoDeBarras()
 {
     string codigoDeBarras = "111 111 111";
     var    produtos       = new ProdutoServico().BuscarPorCodigoDeBarras(codigoDeBarras);
 }
예제 #30
0
 private void TesteBuscarPorNome()
 {
     string nome     = "produto 1";
     var    produtos = new ProdutoServico().BuscarPorNome(nome);
 }