Exemple #1
0
        public HorasPericulosidadeQueueManager(IPeriodoPericulosidadeService service)
        {
            _connectionFactory = new ConnectionFactory()
            {
                //Uri = new Uri("amqp://*****:*****@toad.rmq.cloudamqp.com/qaawhjrg"),
                HostName = "localhost",
                UserName = "******",
                Password = "******"
            };

            var conn     = _connectionFactory.CreateConnection();
            var channel  = conn.CreateModel();
            var consumer = new EventingBasicConsumer(channel);

            consumer.Received += (sender, args) =>
            {
                var message = Encoding.UTF8.GetString(args.Body);
                Console.WriteLine($"{DateTime.Now} [Worker - Periculosidade] Nova mensagem recebida: {message}");

                var command = JsonConvert.DeserializeObject <AdicionarPeriodoPericulosidadeCommand>(message);

                service.Adicionar(command);
            };

            channel.BasicConsume(FILA_HORAS_PERICULOSIDADE, true, consumer);
        }
Exemple #2
0
        public IActionResult PostHoraPericulosidade(AdicionarPeriodoPericulosidadeCommand command)
        {
            if (ModelState.IsValid)
            {
                _periculosidadeService.Adicionar(command);
                return(Ok());
            }

            return(BadRequest(ModelState.Values.SelectMany(v => v.Errors).Select(e => e.ErrorMessage)));
        }