public async Task <IActionResult> UpdateCliente(int id, [FromBody] ClienteResource clienteResource) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var cliente = await repository.GetCliente(id); if (cliente == null) { return(NotFound()); } mapper.Map <ClienteResource, Cliente>(clienteResource, cliente); cliente.UltimaModificacao = DateTime.Now; await unitOfWork.CompleteAsync(); cliente = await repository.GetCliente(cliente.Id); var result = mapper.Map <Cliente, ClienteResource>(cliente); return(Ok(result)); }
public async Task <IActionResult> ActualizarCliente(int id, [FromBody] ClienteResource clienteResource) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var cliente = await repository.GetCliente(id); if (cliente == null) { return(NotFound()); } cliente = mapper.Map <ClienteResource, Cliente>(clienteResource, cliente); if (clienteResource.MascotaId > 0) { var mascota = await mascotaRepository.GetMascota(clienteResource.MascotaId); if (mascota == null) { return(NotFound(mascota.Id)); } var clienteMascota = new ClienteMascota { ClienteId = cliente.Id, MascotaId = mascota.Id }; if (!mascota.EstaAsignada) { cliente.Mascotas.Add(clienteMascota); } else { var removedMascota = cliente.Mascotas.Where(cm => cm.MascotaId == clienteResource.MascotaId).ToList(); foreach (var m in removedMascota) { cliente.Mascotas.Remove(m); } } mascota.EstaAsignada = !mascota.EstaAsignada; cliente.Actualizacion = DateTime.Now; await unitOfWork.CompleteAsync(); } cliente = await repository.GetCliente(cliente.Id); var resultado = mapper.Map <Cliente, ClienteResource>(cliente); return(Ok(resultado)); }
public ActionResult Create(FormCollection collection) { try { // TODO: Add insert logic here string Dnia = collection["Numero1"]; string DNIB = collection["Numero2"]; ClienteResource proce = new ClienteResource(); proce = ProcesarClientes.GetCliente(DNIB); return(View(proce)); //return Json(proce, JsonRequestBehavior.AllowGet); } catch { return(View()); } }
public async Task <IActionResult> CrearCliente([FromBody] ClienteResource clienteResource) { if (!ModelState.IsValid) { return(BadRequest()); } var cliente = mapper.Map <ClienteResource, Cliente>(clienteResource); cliente.Actualizacion = DateTime.Now; repository.Add(cliente); await unitOfWork.CompleteAsync(); cliente = await repository.GetCliente(cliente.Id); var resultado = mapper.Map <Cliente, ClienteResource>(cliente); return(Ok(resultado)); }
public async Task <IActionResult> UpdateAsync(int id, [FromBody] ClienteResource resource) { var response = await _mediator.Send(new UpdateClienteCommand(id, resource.Nombre, resource.Apellidos, resource.FechaNaciemiento, resource.Email, resource.Telefono, resource.Direccion, resource.DateCreated, resource.DateUpdated)); return(ProduceResponse(response)); }
public async Task <IActionResult> PostAsync([FromBody] ClienteResource resource) { var cliente = await _mediator.Send(new CreateClienteCommand(resource.Nombre, resource.Apellidos, resource.FechaNaciemiento, resource.Email, resource.Telefono, resource.Direccion, resource.DateCreated, resource.DateUpdated)); return(Created($"/api/clientes/{cliente.Id}", cliente)); }