Beispiel #1
0
        public IActionResult CreateCliente([FromBody] AddClienteRequest cliente)
        {
            if (cliente == null)
            {
                return(BadRequest());
            }

            if (!ModelState.IsValid)
            {
                return(new UnprocessableEntityObjectResult(ModelState));
            }

            _clientesRepository.ClienteExists(Guid.NewGuid());

            var clienteEntity = Mapper.Map <Cliente>(cliente);

            _clientesRepository.AddCliente(clienteEntity);

            if (!_clientesRepository.Save())
            {
                throw new Exception("Fallo al guardar cliente");
            }

            var clienteToReturn = Mapper.Map <ClienteResponse>(clienteEntity);

            return(CreatedAtRoute("GetCliente",
                                  new { id = clienteToReturn.Id },
                                  clienteToReturn));
        }
Beispiel #2
0
        public IActionResult BlockClienteCreation(Guid id)
        {
            if (_clientesRepository.ClienteExists(id))
            {
                return(new StatusCodeResult(StatusCodes.Status409Conflict));
            }

            return(NotFound());
        }
Beispiel #3
0
            public void OnActionExecuting(ActionExecutingContext context)
            {
                if (context.ActionArguments.ContainsKey("id"))
                {
                    var id = (System.Guid)context.ActionArguments["id"];

                    if (!_clientesRepository.ClienteExists(id))
                    {
                        context.Result = new NotFoundObjectResult(id);
                        return;
                    }
                }
            }
Beispiel #4
0
        public IActionResult GetPresupuestosForCliente(Guid clienteId)
        {
            if (!_clientesRepository.ClienteExists(clienteId))
            {
                return(NotFound());
            }

            var presupuestoFromRepo = _clientesRepository.GetPresupuestosForCliente(clienteId);

            var presupuestos = Mapper.Map <IEnumerable <PresupuestoResponse> >(presupuestoFromRepo);

            return(Ok(presupuestos));
        }