public ActionResult CadastroCashGame(CashGame cashGame)
        {
            var result = CashGameAplicacao.CadatrarCashGame(cashGame);

            if (result.TemValor())
            {
                ViewBag.erro = result;
                return(View("CadastroCashGame", new PaginacaoModel2 <CashGame, Cliente, FiltroCliente>
                {
                    ListaModel = new List <CashGame> {
                        cashGame
                    },
                    ListaModel2 = new List <Cliente> {
                        new Cliente
                        {
                            Nome = cashGame.NomeCliente,
                            Id = cashGame.IdCliente
                        }
                    }
                }));
            }

            var nomeImpressora = UsuarioAplicacao.ObterDadosUsuarioLogado().Impressora.ToString();

            ImpressaoAplicacao.GravarImpressao(cashGame.Id, nomeImpressora, TipoImpressao.CashGame);
            return(RedirectToAction("FiltroCashGame"));
        }
Exemple #2
0
        public string Validar(CashGame cashGame)
        {
            StringBuilder erros = new StringBuilder();

            if (cashGame.IdCliente == 0)
            {
                erros.AppendLine("Favor selecionar um cliente! ");
            }

            if (cashGame.Valor == 0)
            {
                erros.AppendLine("Um valor deve ser informado!");
            }

            if (cashGame.Situacao == Dominio.Enumeradores.SituacaoVenda.Pago && cashGame.Id > 0)
            {
                erros.AppendLine("Impossivel alterar um valor no Cash Game pago!");
            }

            if (cashGame.Situacao == Dominio.Enumeradores.SituacaoVenda.Pago && cashGame.TipoFinalizador == Dominio.Enumeradores.TipoFinalizador.Nenhum)
            {
                erros.AppendLine("Favor inserir tipo do pagamento!");
            }

            return(erros.ToString());
        }
Exemple #3
0
 public CashGameViewModel([NotNull] CashGame model)
 {
     CashGameId      = model.CashGameId;
     Stakes          = model.Stakes;
     IsResolved      = model.IsFinished;
     StartTime       = model.TimeStarted;
     NumberOfPlayers = model.PartiesToGame.Count;
 }
 public void Imprime(CashGame cashGame, string nomeImpressora)
 {
     try
     {
         cash = cashGame;
         ImprimeUmaVez(EventoEpson, EventoEpson, nomeImpressora);
     }
     catch
     {
     }
 }
Exemple #5
0
        public int StartCashGame(CashGameCreateModel model)
        {
            try
            {
                if (model == null)
                {
                    return(-1);
                }
                var trans = _context.Database.BeginTransaction();
                var game  = new CashGame
                {
                    GameName    = "Cash Poker",
                    Stakes      = model.Stakes,
                    TimeStarted = DateTime.Now
                };
                _context.CashGames.Add(game);
                _context.SaveChanges();
                foreach (var player in model.StartingPlayers)
                {
                    var party = new CashGameParty
                    {
                        AmountStaked     = 0m,
                        PlayerId         = player,
                        GameId           = game.CashGameId,
                        IsPlayerFinished = false
                    };
                    _context.CashGameParties.Add(party);
                }

                if (_httpContext.HttpContext != null)
                {
                    var userId = _httpContext.HttpContext.User.FindFirstValue(ClaimTypes.NameIdentifier);
                    var audit  = new MatchAudit
                    {
                        AuditDate = DateTime.Now,
                        MatchId   = game.CashGameId,
                        UserId    = userId,
                        Type      = AuditType.CreateMatch
                    };
                    _context.MatchAudits.Add(audit);
                }

                _context.SaveChanges();
                trans.Commit();
                return(game.CashGameId);
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
                Log.Error(e, "Error occured while saving a new match");
                return(-1);
            }
        }
        public string CadatrarCashGame(CashGame entidade)
        {
            var result = ValidadorCashGame.Validar(entidade);

            if (result != "")
            {
                return(result);
            }
            entidade.DataCadastro      = DateTime.Now;
            entidade.IdUsuarioCadastro = AutenticacaoAplicacao.ObterUsuarioLogado().Id;
            GeraPagamentoCashGame(entidade);
            CashGameRepositorio.Cadastrar(entidade);
            Contexto.Salvar();

            //var nomeImpressora = UsuarioAplicacao.ObterDadosUsuarioLogado().Impressora.ToString();
            //new ImprimeCashGame().Imprime(entidade, nomeImpressora);
            return(result);
        }
 private void GeraPagamentoCashGame(CashGame entidade)
 {
     if (entidade.Situacao == SituacaoVenda.Pago)
     {
         ParcelamentoPagamento parcelamentoPagamento = new ParcelamentoPagamento();
         parcelamentoPagamento.DataPagamento   = DateTime.Now;
         parcelamentoPagamento.IdCliente       = entidade.IdCliente;
         parcelamentoPagamento.TipoFinalizador = entidade.TipoFinalizador ?? TipoFinalizador.Dinheiro;
         parcelamentoPagamento.ValorPago       = entidade.Valor;
         var pagamento = new Pagamento
         {
             IdCliente   = entidade.IdCliente,
             Data        = DateTime.Now,
             Situacao    = SituacaoVenda.Pago,
             ValorAberto = 0,
             ValorTotal  = entidade.Valor
         };
         parcelamentoPagamento.Pagamento = pagamento;
         PagamentoRepositorio.Cadastrar(pagamento);
         ParcelamentoPagamentoRepositorio.Cadastrar(parcelamentoPagamento);
         entidade.Pagamento = pagamento;
     }
 }
        public ActionResult AlterarCashGame(CashGame cashGame)
        {
            var result = CashGameAplicacao.AlterarCashGame(cashGame);

            if (result.TemValor())
            {
                ViewBag.erro = result;
                return(View("AlterarCashGame", new PaginacaoModel2 <CashGame, Cliente, FiltroCliente>
                {
                    ListaModel = new List <CashGame> {
                        cashGame
                    },
                    ListaModel2 = new List <Cliente> {
                        new Cliente
                        {
                            Nome = cashGame.NomeCliente,
                            Id = cashGame.IdCliente
                        }
                    }
                }));
            }
            return(RedirectToAction("FiltroCashGame"));
        }
        public string AlterarCashGame(CashGame modelo)
        {
            var entidade = CashGameRepositorio.Buscar(modelo.Id);
            var result   = ValidadorCashGame.Validar(entidade);

            if (result != "")
            {
                return(result);
            }
            entidade.Valor         = modelo.Valor;
            entidade.Situacao      = modelo.Situacao;
            entidade.IdCliente     = modelo.IdCliente;
            entidade.DataAlteracao = DateTime.Now;
            if (modelo.Situacao == SituacaoVenda.Pago)
            {
                entidade.TipoFinalizador = modelo.TipoFinalizador;
            }
            entidade.IdUsuarioAlteracao = AutenticacaoAplicacao.ObterUsuarioLogado().Id;
            CashGameRepositorio.Atualizar(entidade);
            GeraPagamentoCashGame(entidade);
            var row = Contexto.Salvar();

            return(result);
        }