public async Task Update(EstablecimientoDto establecimiento, long id) { var _establecimiento = _mapper.Map <Galeno.Dominio.Entidades.Establecimiento>(establecimiento); _establecimiento.Id = id; await _repositorio.Update(_establecimiento); }
public async Task <IActionResult> Edit(EstablecimientoViewModel vm) { try { ViewBag.EstablecimientoDuplicado = false; if (!ModelState.IsValid) { throw new Exception("Error de validacion no controlado."); } // comprobar si cambio la direccion var direccionId = await _helperDireccion.ExisteDireccion(vm.Direccion); if (!direccionId.HasValue) { direccionId = await _helperDireccion.NuevaDireccion(vm.Direccion); } else { var existe = await _establecimientoServicio.Existe(vm.Nombre, vm.Direccion.Descripcion, vm.Direccion.LocalidadId, vm.Id); if (existe) { ViewBag.EstablecimientoDuplicado = true; throw new Exception("Establecimiento duplicado"); } } vm.DireccionId = direccionId.Value; var dto = new EstablecimientoDto() { Id = vm.Id, Nombre = vm.Nombre, DireccionId = vm.DireccionId }; await _establecimientoServicio.Modificar(dto); return(RedirectToAction(nameof(Index))); } catch (Exception) { return(View(vm)); } }
public async Task <IActionResult> Create(EstablecimientoViewModel vm) { try { if (!ModelState.IsValid) { throw new Exception("Error de validacion no controlado."); } ViewBag.EstablecimientoDuplicado = false; // Existe establecimiento var existeEstablecimiento = await _establecimientoServicio.Existe(vm.Nombre, vm.Direccion.Descripcion, vm.Direccion.LocalidadId); if (existeEstablecimiento) { ViewBag.EstablecimientoDuplicado = true; throw new Exception("Establecimiento duplicado."); } // Existe direccion -> si no existe la creo y obtengo el id var direccionId = await _helperDireccion.ExisteDireccion(vm.Direccion); if (!direccionId.HasValue) { // creo la direccion y devuelvo el id direccionId = await _helperDireccion.NuevaDireccion(vm.Direccion); } vm.DireccionId = direccionId.Value; // creo el establecimiento var dto = new EstablecimientoDto() { Nombre = vm.Nombre, DireccionId = vm.DireccionId }; await _establecimientoServicio.Insertar(dto); return(RedirectToAction(nameof(Index))); } catch (Exception) { return(View(vm)); } }
public async Task Create(EstablecimientoDto establecimiento) { var _establecimiento = _mapper.Map <Galeno.Dominio.Entidades.Establecimiento>(establecimiento); await _repositorio.Add(_establecimiento); }