Пример #1
0
        public void SetStatus_Retorna_CODIGO_PEDIDO_INVALIDO()
        {
            var pedidoModel       = new PedidoModel(0);
            var createStatusModel = new CreateStatusModel();

            var status = StatusHelper.SetStatus(pedidoModel, createStatusModel);

            Assert.Equal(status[0], Status.CodigoPedidoInvalido.GetDescription());
        }
Пример #2
0
        public ResponseStatusModel Criar(CreateStatusModel model)
        {
            var Status = new StatusEvento();

            Status.NomeStatus = model.NomeStatus;

            repositorio.CreateStatus(Status);
            return(new ResponseStatusModel(Status));
        }
Пример #3
0
 public ActionResult Create(CreateStatusModel model)
 {
     if (!ModelState.IsValid)
     {
         return(BadRequest(ModelState));
     }
     else
     {
         return(Ok(service.Criar(model)));
     }
 }
Пример #4
0
        public void Register_Retorna_CreatedResult()
        {
            var createStatusModel = new CreateStatusModel()
            {
                Status         = Status.Aprovado.GetDescription(),
                Pedido         = "123456",
                ItensAprovados = 3,
                ValorAprovado  = 20
            };

            var mock = new Mock <IServicePedido>();

            mock.Setup(it => it.RecoverByPedido("123456")).Returns(new PedidoModel(0));

            var statusController = new StatusController(mock.Object);

            var result = statusController.Register(createStatusModel) as CreatedResult;

            Assert.Equal(201, result.StatusCode);
        }
Пример #5
0
        public static List <string> SetStatus(PedidoModel pedido, CreateStatusModel statusModel)
        {
            var rules = new Dictionary <Status, bool>
            {
                // Status PEDIDO INVÁLIDO
                { Status.CodigoPedidoInvalido, pedido.Id == 0 },

                // Status REPROVADO
                { Status.Reprovado, statusModel.Status == Status.Reprovado.GetDescription() },

                // Status APROVADO
                {
                    Status.Aprovado,
                    statusModel.Status == Status.Aprovado.GetDescription() &&
                    statusModel.ItensAprovados == pedido.QuantidadeItensPedido &&
                    statusModel.ValorAprovado == pedido.ValorTotalPedido
                },
                {
                    Status.AprovadoValorMenor,
                    statusModel.Status == Status.Aprovado.GetDescription() &&
                    statusModel.ValorAprovado < pedido.ValorTotalPedido
                },
                {
                    Status.AprovadoQuantidadeMenor,
                    statusModel.Status == Status.Aprovado.GetDescription() &&
                    statusModel.ItensAprovados < pedido.QuantidadeItensPedido
                },
                {
                    Status.AprovadoValorMaior,
                    pedido.Id > 0 && statusModel.Status == Status.Aprovado.GetDescription() &&
                    statusModel.ValorAprovado > pedido.ValorTotalPedido
                },
                {
                    Status.AprovadoQuantidadeMaior,
                    pedido.Id > 0 && statusModel.Status == Status.Aprovado.GetDescription() &&
                    statusModel.ItensAprovados > pedido.QuantidadeItensPedido
                }
            };

            return(rules.Where(it => it.Value == true).Select(it => it.Key.GetDescription().ToString()).ToList());
        }