Example #1
0
        public ActionResult Index(int?id)
        {
            var model = Session["Filtro"] as CaixaViewModel;

            if (model == null)
            {
                model = new CaixaViewModel();
                model.Filtro.PaginationParameters.PageSize         = this.DefaultPageSize;
                model.Filtro.PaginationParameters.UniqueIdentifier = GenerateUniqueIdentifier();
            }

            model.PodeSalvar   = caixaAppService.EhPermitidoSalvar();
            model.PodeDeletar  = caixaAppService.EhPermitidoDeletar();
            model.PodeImprimir = caixaAppService.EhPermitidoImprimir();

            var caixa = caixaAppService.ObterPeloId(id) ?? new CaixaDTO();

            if (id.HasValue && !caixa.Id.HasValue)
            {
                messageQueue.Add(Application.Resource.Sigim.ErrorMessages.NenhumRegistroEncontrado, TypeMessage.Error);
            }

            model.Caixa = caixa;

            return(View(model));
        }
        public async Task <CaixaViewModel> SaqueAsync(SaqueViewModel saqueViewModel, string _correlationId)
        {
            CaixaViewModel result = null;

            var saqueDomain = _mapper.Map <SaqueViewModel, Saque>(saqueViewModel);

            saqueDomain.ClienteId = await _criptografia.DecryptString(saqueDomain.ClienteId);

            var caixa = await _caixasRepository.CaixasAsync(saqueDomain.IdCaixa, _correlationId);

            var CaixaIsValid = ValidarCaixa(caixa, saqueDomain);

            var notasIsValid = ValidarNotas(saqueDomain.Valor, ref caixa);

            //var saldoIsValid = ValidarSaldo(saqueDomain);

            if (CaixaIsValid && notasIsValid)
            {
                var caixaComSaque = await _saquesRepository.SaqueAsync(saqueDomain, caixa, _correlationId);

                result = _mapper.Map <Caixa, CaixaViewModel>(caixaComSaque);
            }


            return(result);
        }
Example #3
0
        public HttpResponseMessage Inserir([FromBody] CaixaViewModel caixaViewModel)
        {
            var    formatter = new JsonMediaTypeFormatter();
            string retorno   = null;

            try
            {
                if (ModelState.IsValid)
                {
                    var caixaDomain = Mapper.Map <CaixaViewModel, Caixa>(caixaViewModel);

                    _caixaAppServiceBase.Add(caixaDomain);
                    retorno = "Caixa " + caixaDomain.CaiNumero + "inserido com sucesso.";
                }

                var jsonSerialize = new JsonSerialize();
                jsonSerialize.SerializarJson(formatter);
            }
            catch (Exception ex)
            {
                retorno = "Houve um erro interno:" + ex;
            }

            return(Request.CreateResponse(System.Net.HttpStatusCode.OK, retorno, formatter));
        }
 //[ActionName("BaixaPontuacao")]
 public ActionResult BaixaPontuacao(CaixaViewModel model)
 {
     if (_caixaService.BaixaPontos(model.idCliente))
     {
         TempData["mensagem"] = string.Format("Pontos baixados com sucesso, pontuaçao atual: {0}", _caixaService.ConsultarSaldo(model.idCliente));
         return(RedirectToAction("Inicio"));
     }
     return(RedirectToAction("Inicio"));
 }
Example #5
0
        public ActionResult Salvar(CaixaViewModel model)
        {
            if (ModelState.IsValid)
            {
                caixaAppService.Salvar(model.Caixa);
            }

            return(PartialView("_NotificationMessagesPartial"));
        }
Example #6
0
        public int Alterar(CaixaViewModel p)
        {
            Caixa caixa = new Caixa()
            {
                Id    = p.Id,
                Valor = p.Valor,
            };

            return(caixa.Alterar());
        }
Example #7
0
        private void btnSalvar_Click(object sender, EventArgs e)
        {
            var caixa = new CaixaViewModel
            {
                IdCaixa     = Guid.NewGuid(),
                NomeCaixa   = txtNomeCaixa.Text,
                IdUsuario   = Guid.Parse(Settings.Default.Logado),
                StatusCaixa = comboStatus.RetornoComboBox("Habilitado")
            };

            _caixaAppService.Add(caixa);
            LimpaComponentes();
            DesabilitaComponetes();
        }
Example #8
0
        public async Task <long> Salvar(long idPedidoVenda, CaixaViewModel caixaEscolhida, GrupoCorredorArmazenagemViewModel grupoCorredorArmazenagem, int numeroVolume, long idEmpresa, decimal peso, decimal cubagem)
        {
            long idPedidoVendaVolume = 0;

            try
            {
                var pedidoVendaVolumeRepository = _uow.PedidoVendaVolumeRepository.ObterPorIdPedidoVenda(idPedidoVenda)
                                                  .Where(x => x.IdGrupoCorredorArmazenagem == grupoCorredorArmazenagem.IdGrupoCorredorArmazenagem && x.NroVolume == numeroVolume &&
                                                         x.PesoVolume == peso && x.CubagemVolume == cubagem).FirstOrDefault();

                if (pedidoVendaVolumeRepository != null)
                {
                    return(pedidoVendaVolumeRepository.IdPedidoVendaVolume);
                }

                int numeroCentena = await GerarNumeroCentena(idEmpresa, idPedidoVenda);

                var pedidoVendaVolume = new PedidoVendaVolume()
                {
                    IdPedidoVenda              = idPedidoVenda,
                    IdCaixaCubagem             = caixaEscolhida.IdCaixa,
                    IdGrupoCorredorArmazenagem = grupoCorredorArmazenagem.IdGrupoCorredorArmazenagem,
                    DataHoraInicioSeparacao    = null,
                    DataHoraFimSeparacao       = null,
                    IdPedidoVendaStatus        = PedidoVendaStatusEnum.EnviadoSeparacao,
                    NroCentena     = numeroCentena,
                    NroVolume      = numeroVolume,
                    PesoVolume     = peso,
                    CorredorInicio = grupoCorredorArmazenagem.CorredorInicial,
                    CorredorFim    = grupoCorredorArmazenagem.CorredorFinal,
                    EtiquetaVolume = caixaEscolhida.TextoEtiqueta,
                    IdImpressora   = grupoCorredorArmazenagem.IdImpressora,
                    CubagemVolume  = cubagem
                };


                _uow.PedidoVendaVolumeRepository.Add(pedidoVendaVolume);
                await _uow.SaveChangesAsync();

                idPedidoVendaVolume = pedidoVendaVolume.IdPedidoVendaVolume;
            }
            catch (Exception ex)
            {
                _log.Error(String.Format("Erro ao salvar o volume do pedido de venda {0}.", idPedidoVenda), ex);
            }

            return(idPedidoVendaVolume);
        }
Example #9
0
 public ActionResult Lista(CaixaViewModel model)
 {
     if (ModelState.IsValid)
     {
         Session["Filtro"] = model;
         int totalRegistros;
         var result = caixaAppService.ListarPeloFiltro(model.Filtro, out totalRegistros);
         if (result.Any())
         {
             var listaViewModel = CreateListaViewModel(model.Filtro.PaginationParameters, totalRegistros, result);
             return(PartialView("ListaPartial", listaViewModel));
         }
         return(PartialView("_EmptyListPartial"));
     }
     return(PartialView("_NotificationMessagesPartial"));
 }
Example #10
0
        public Historico GerarPontuacao(CaixaViewModel model)
        {
            Historico historico = null;
            var       dto       = _historicoRepository.ConsultarHistorico(model.idCliente).FirstOrDefault();

            if (dto is null)
            {
                historico = new Historico(model.idCliente, model.valorDaCompra);
                historico.PontosEmDobro();
            }
            else
            {
                historico = new Historico(model.idCliente, model.valorDaCompra);
                historico.PontosEmDobro();
                historico.SomarValores(dto._pontoGanhos);
            }

            _historicoRepository.Salvar(historico);
            return(historico);
        }
Example #11
0
        public int Gravar(CaixaViewModel p)
        {
            int result;

            Caixa caixa = new Caixa()
            {
                Valor = p.Valor,
            };

            if (p.Id != 0)
            {
                caixa.Id = p.Id;
                result   = caixa.Alterar();
            }
            else
            {
                result = caixa.Gravar();
            }

            return(result);
        }
        public ActionResult Concluir(CaixaViewModel model)
        {
            if (ModelState.IsValid)
            {
                if (!string.IsNullOrEmpty(model.Nome))
                {
                    Cliente dto = _caixaService.SalvarCliente(new Cliente {
                        nome = model.Nome
                    });
                    model.idCliente      = dto.idCliente;
                    TempData["mensagem"] = "cliente cadastrado com sucesso";
                }
                else
                {
                    ClienteViewModel cliente = _caixaService.ConsultarCliente(model.idCliente);

                    if (cliente.idCliente == 0)
                    {
                        TempData["novo_cliente"] = "Está é a primeira compra do cliente, digite o nome do novo cliente ";
                        return(View());
                    }
                }


                var historico = _caixaService.GerarPontuacao(model);
                if (historico._pontoGanhos >= 100)
                {
                    TempData["pontuacao100"] = "O cliente atingingiu 100 pontos";
                }
                else
                {
                    TempData["mensagem"] += "Pontos adicionados com sucesso";
                }
            }

            return(View(model));
        }
Example #13
0
        public IActionResult Index(CaixaViewModel model)
        {
            //ModelState.Clear();


            int Saque = model.Valor_Saque;
            int resultado_Subtraido = Saque;
            int valor_sugerido      = 0;


            foreach (var nota in model.List_Cedula)
            {
                if (nota.Quantidade > 0)
                {
                    int contador = 1;

                    while (resultado_Subtraido >= nota.Valor & contador <= nota.Quantidade)
                    {
                        resultado_Subtraido -= nota.Valor;
                        contador            += 1;
                        valor_sugerido      += nota.Valor;
                    }
                }
            }


            if (resultado_Subtraido == 0)
            {
                ViewBag.Resultado = "Saque realizado";
            }
            else
            {
                ViewBag.Resultado = $"nova sugestão de saque {valor_sugerido}";
            }
            return(View(model));
        }
        public async Task <IActionResult> Create(CaixaViewModel model)
        {
            try
            {
                if (model.Caixa.Valor > 0)
                {
                    var cpf = model.Cliente.CPF;

                    var idCli = PesquisarClientePorCpf(cpf);
                    if (idCli != 0)
                    {
                        model.Caixa.ClienteId = idCli;
                    }

                    var idCol = PesquisarColaboradorPorCpf(cpf);
                    if (idCol != 0)
                    {
                        model.Caixa.ColaboradorId = idCol;
                    }
                    else
                    {
                        var userId  = userManager.GetUserAsync(User).Result.Id;
                        var usuario = await userManager.FindByIdAsync(userId);

                        var idLogado = colaboradorDAL.ObterColaboradorPorEmail(usuario.ToString()).Result.Id;
                        model.Caixa.ColaboradorId = idLogado;
                        idCol = (long)idLogado;
                    }


                    if (idCli != 0 || idCol != 0)
                    {
                        if (model.Caixa.ProdutoId == 0)
                        {
                            model.Caixa.ProdutoId = 6;
                        }

                        if (model.Caixa.HistoricoId == 0)
                        {
                            model.Caixa.HistoricoId = 8;
                        }

                        if (model.Caixa.Tipo == EnumHelper.Tipo.Credito)
                        {
                            model.Caixa.StatusPgto = EnumHelper.YesNo.Sim;
                        }


                        model.Caixa.IdUser = userManager.GetUserAsync(User).Result.Id;
                        await caixaDAL.GravarLancamento(model.Caixa);
                    }

                    return(RedirectToAction(nameof(Index)));
                }

                return(RedirectToAction(nameof(Index)));
            }
            catch (DbUpdateConcurrencyException)
            {
                ModelState.AddModelError("", "Não foi possível inserir os dados.");
            }
            return(View(model.Caixa));
        }
Example #15
0
        public ActionResult Index()
        {
            CaixaViewModel model = new CaixaViewModel();

            return(View(model));
        }