Beispiel #1
0
        public IActionResult AtualizarTaxa(Guid id, [FromBody] TaxaViewModel taxaViewModel)
        {
            try
            {
                var taxa = _taxaRepository.ObterPorId(id);

                if (taxa == null)
                {
                    throw new Exception("Taxa não encontrada.");
                }

                taxa.Percentual = taxaViewModel.Taxa;

                RegisterLog.Log(TipoLog.Info, "Atualização de percentual da taxa.");

                _taxaRepository.Atualizar(taxa);
                _unitOfWork.Commit();
            }catch (Exception e)
            {
                RegisterLog.Log(TipoLog.Error, "Erro ao atualizar taxa.");
                return(BadRequest(e.Message));
            }

            RegisterLog.Log(TipoLog.Info, "Atualização realizada com sucesso!");

            return(Ok("Atualização realizada com sucesso!"));
        }
Beispiel #2
0
        public AuthorController(LibraryContext libraryContext, IConfiguration configuration)
        {
            string path = configuration.GetValue <string>("PathRegisterLog");

            // Dependency Injection
            repository = new RepositoryAccess(libraryContext);
            log        = new RegisterLog(path);
        }
Beispiel #3
0
        public IActionResult CalcularValoresListaCartoes([FromBody] List <DadosTransacaoViewModel> dadosTransacaoViewModel)
        {
            try
            {
                var valorTransacao = dadosTransacaoViewModel.Sum(x => x.ValorCartao);

                var transacaoFactory = new TransacaoFactory(valorTransacao);
                var transacao        = transacaoFactory.Criar();

                RegisterLog.Log(TipoLog.Info, "Criar item de transacao para cada informação de cartão da lista.");

                dadosTransacaoViewModel.ForEach(
                    x => {
                    var taxa = _taxaRepository.ObterPorAdquirenteBandeira(x.IdBandeira, x.IdAdquirente);

                    if (taxa == null)
                    {
                        throw new Exception("Taxa não encontrada.");
                    }

                    transacao.CriarItem(taxa,
                                        x.NumeroCartao,
                                        x.ValidadeCartao,
                                        x.CvvCartao,
                                        x.ValorCartao);
                }
                    );

                RegisterLog.Log(TipoLog.Info, "Gravação da Transação.");
                _transacaoRepository.Gravar(transacao);
                _uow.Commit();

                var retorno = new List <string>();

                foreach (var item in transacao.Transacoes)
                {
                    retorno.Add(item.DescricaoRetorno);
                }

                RegisterLog.Log(TipoLog.Info, "Sucesso ao calcular valores para mais de um cartão.");
                return(Ok(retorno));
            }catch (Exception e)
            {
                return(BadRequest(e.Message));
            }
        }
Beispiel #4
0
        public ActionResult Register(RegisterLog model, RegisterLog formData)
        {
            Blog1 kayit = new Blog1();

            kayit.Number   = model.Number;
            kayit.Name     = model.Name;
            kayit.Surname  = model.SurName;
            kayit.Password = model.Password;
            db.Blog1.Add(kayit);

            db.SaveChanges();

            if (!ModelState.IsValid)
            {
                return(View(formData));
            }
            return(Content("Name : " + formData.Name + "E - Mail :" + formData.Email));
        }
Beispiel #5
0
        public IActionResult CalcularValores([FromBody] DadosTransacaoViewModel dadosTransacaoViewModel)
        {
            try
            {
                var valorTransacao = dadosTransacaoViewModel.ValorCartao;

                var transacaoFactory = new TransacaoFactory(valorTransacao);
                var transacao        = transacaoFactory.Criar();

                RegisterLog.Log(TipoLog.Info, "Consulta para Obter Taxa por Bandeira e Adquirente");
                var taxa = _taxaRepository.ObterPorAdquirenteBandeira(dadosTransacaoViewModel.IdBandeira, dadosTransacaoViewModel.IdAdquirente);

                if (taxa == null)
                {
                    throw new Exception("Taxa não encontrada");
                }

                transacao.CriarItem(taxa,
                                    dadosTransacaoViewModel.NumeroCartao,
                                    dadosTransacaoViewModel.ValidadeCartao,
                                    dadosTransacaoViewModel.CvvCartao,
                                    dadosTransacaoViewModel.ValorCartao);

                RegisterLog.Log(TipoLog.Info, "Gravação da Transação.");

                _transacaoRepository.Gravar(transacao);
                _uow.Commit();

                var itemTransacao = transacao.Transacoes.FirstOrDefault();

                RegisterLog.Log(TipoLog.Info, "Sucesso ao calcular valores.");
                return(Ok(itemTransacao.DescricaoRetorno));
            }
            catch (Exception e)
            {
                RegisterLog.Log(TipoLog.Error, "Erro na execução do cálculo de valores");
                return(BadRequest(e.Message));
            }
        }
Beispiel #6
0
        private static void ECMonitor(int timespan, int interval, string reportPath, bool clearly, bool decimalFormat)
        {
            var logs = new RegisterLog[byte.MaxValue];

            Console.CancelKeyPress += (sender, e) =>
            {
                if (reportPath != null)
                {
                    SaveRegisterLogs(reportPath, logs, clearly, decimalFormat);
                }
            };

            using (ec = LoadEC())
            {
                if (ec == null)
                {
                    return;
                }

                Console.WriteLine("monitoring...");

                for (byte b = 0; b < logs.Length; b++)
                {
                    AccessEcSynchronized(ec =>
                    {
                        logs[b].Values = new List <byte>();
                        logs[b].Values.Add(ec.ReadByte(b));
                    },
                                         ec);
                }

                int loopCount = 0;

                while ((timespan < 1) || (loopCount < Math.Ceiling(((double)timespan / interval) - 1)))
                {
                    Thread.Sleep(interval * 1000);
                    AccessEcSynchronized(ec =>
                    {
                        for (int i = 0; i < logs.Length; i++)
                        {
                            byte value = ec.ReadByte((byte)i);
                            logs[i].Values.Add(value);

                            if (value != logs[i].Values[0])
                            {
                                logs[i].Print = true;
                            }
                        }
                    },
                                         ec);

                    Console.Clear();
                    PrintRegisterLogs(logs, clearly, decimalFormat);
                    loopCount++;
                }
            }

            if (reportPath != null)
            {
                SaveRegisterLogs(reportPath, logs, clearly, decimalFormat);
            }
        }
Beispiel #7
0
        public IActionResult ListarAdquirentes()
        {
            RegisterLog.Log(TipoLog.Info, "Obter Adquirentes.");

            return(Ok(_adquirenteRepository.ObterTodos()));
        }
Beispiel #8
0
 public IActionResult ListarTaxas()
 {
     RegisterLog.Log(TipoLog.Info, "Obter Taxas");
     return(Ok(_taxaRepository.ObterTodos()));
 }
Beispiel #9
0
 public IActionResult ListarBandeiras()
 {
     RegisterLog.Log(TipoLog.Info, "Obter Bandeiras.");
     return(Ok(_bandeiraRepository.ObterTodos()));
 }
Beispiel #10
0
 /// <summary>
 /// 设置用户的脚本回调的函数
 /// </summary>
 /// <param name="registerLogCBFun"></param>
 public static void SetRegisterLogFunction(RegisterLog registerLogCBFun)
 {
     m_RegisterLog += registerLogCBFun;
 }
Beispiel #11
0
        public object Post(
            [FromBody] User usuario,
            [FromServices] UserManager <ApplicationUser> userManager,
            [FromServices] SignInManager <ApplicationUser> signInManager,
            [FromServices] TokenConfigurations tokenConfigurations)
        {
            bool         credenciaisValidas = false;
            List <Claim> listaClaims        = new List <Claim>();

            if (usuario != null && !string.IsNullOrWhiteSpace(usuario.UserID))
            {
                var userIdentity = userManager
                                   .FindByNameAsync(usuario.UserID).Result;
                if (userIdentity != null)
                {
                    var resultadoLogin = signInManager
                                         .CheckPasswordSignInAsync(userIdentity, usuario.Password, false)
                                         .Result;

                    if (resultadoLogin.Succeeded)
                    {
                        listaClaims = ObterListaDeClaims(userManager, userIdentity);

                        credenciaisValidas = listaClaims.Any();
                    }
                }

                if (credenciaisValidas)
                {
                    RegisterLog.Log(TipoLog.Info, $"Usuário {usuario.UserID} efetuou login no sistema.");

                    var key =
                        new SymmetricSecurityKey(Encoding.UTF8.GetBytes(_configuration["SecretKey"]));
                    var creds = new SigningCredentials(key, SecurityAlgorithms.HmacSha256);

                    DateTime dataCriacao   = DateTime.Now;
                    DateTime dataExpiracao = dataCriacao +
                                             TimeSpan.FromSeconds(tokenConfigurations.Seconds);

                    var token = new JwtSecurityToken(
                        issuer: tokenConfigurations.Issuer,
                        audience: tokenConfigurations.Audience,
                        claims: listaClaims,
                        expires: dataExpiracao,
                        signingCredentials: creds
                        );

                    return(new
                    {
                        authenticated = true,
                        created = dataCriacao.ToString("yyyy-MM-dd HH:mm:ss"),
                        expiration = dataExpiracao.ToString("yyyy-MM-dd HH:mm:ss"),
                        accessToken = new JwtSecurityTokenHandler().WriteToken(token),
                        message = "OK"
                    });
                }

                RegisterLog.Log(TipoLog.Info, "Sem permissão para usar a aplicação.");

                return(new
                {
                    authenticated = false,
                    message = "Sem permissão para usar a aplicação."
                });
            }

            return(null);
        }