Esempio n. 1
0
        public async Task LiberaDrone()
        {
            var listaDrones = await _dronesRepository.GetByStatus(DroneStatus.Pronto.ToString());

            foreach (var item in listaDrones)
            {
                var listPedidosDrone = await _droneQuery.RetornaConsultaDronePedido(item);

                if (!TemPedido(listPedidosDrone)) //Se o drone ainda não tem pedido, então ele não será atualizado o seu status, pois não tem entrega para efetuar
                {
                    continue;
                }

                if (listPedidosDrone != null)
                {
                    foreach (var p in listPedidosDrone.Pedidos)
                    {
                        p.Status = PedidoStatus.EmTransito.ToString();
                        await _pedidosRepository.Atualizar(p);
                    }
                }

                item.Status          = DroneStatus.EmTransito;
                item.DataAtualizacao = DateTime.Now;
                await AtualizaDrone(item);
            }
        }
Esempio n. 2
0
        public void GetByStatus()
        {
            var status = _autoFaker.Generate <DroneStatus>();

            var result = _repositoryDrone.GetByStatus(status.ToString());

            Assert.Equal(status.ToString(), result.Result.FirstOrDefault().Status.ToString());
        }
        public async Task <DroneEntity> SelecionarDrone()
        {
            var listaDrones = await _dronesRepository.GetAll();

            AtualizaStatusDrones(listaDrones);
            var drones = await _dronesRepository.GetByStatus(DroneStatus.Pronto);

            return(drones.Count > 0 ? drones[0] : null);
        }