public async Task <ActionResult> ObtenerPorId(int id) { Usuario usuario = await _repositorioUsuarios.ObtenerPorId(id); if (usuario is null) { return(NotFound($"No existe el usuario con id {id}")); } UsuarioVm usuarioVm = new UsuarioVm() { Id = usuario.Id, Nombre = usuario.Nombre, IdPermiso = usuario.Permiso.Id, Permiso = usuario.Permiso.Nombre, HashContrasenia = usuario.Contrasenia }; if (_repositorioPermisos.EsPeritoNoResponsable(usuario.Permiso.Id)) { usuarioVm.ImpReparacionDanios = usuario.ImpRepacionDanios; } return(Ok(usuarioVm)); }
public async Task <ActionResult> Create(SiniestroVm siniestroVm) { ValidarSiniestro(siniestroVm); Estado estado = await _repositorioEstados.ObtenerPorTipo(TipoEstado.SinValorar); Aseguradora aseguradora = await _repositorioAseguradoras.ObtenerPorId(siniestroVm.IdAseguradora); Usuario usuarioCreado = await _repositorioUsuarios.ObtenerPorId(siniestroVm.IdUsuarioAlta); SujetoAfectado sujetoAfectado = (SujetoAfectado)siniestroVm.IdSujetoAfectado; Usuario perito = await _repositorioPeritos.ObtenerPorId(siniestroVm.IdPerito); Danio danio = await _repositorioDanios.ObtenerPorId(siniestroVm.IdDanio); Siniestro siniestro = new Siniestro() { Estado = estado, Aseguradora = aseguradora, Direccion = siniestroVm.Direccion, Descripcion = siniestroVm.Descripcion, UsuarioCreado = usuarioCreado, FechaHoraAlta = DateTime.Now, SujetoAfectado = sujetoAfectado, ImpValoracionDanios = 0.00M, Perito = perito, Danio = danio }; try { await _repositorioSiniestros.Guardar(siniestro); } catch (Exception) { return(StatusCode(500, "No se ha podido crear el siniestro")); } return(Ok(true)); }
public async Task <ActionResult> ObtenerEstadisticas(int idUsuario) { Usuario usuario = await _repositorioUsuarios.ObtenerPorId(idUsuario); int totalNumSiniestros; List <DetalleEstadisticaVm> numSiniestrosPorAseguradora; bool tienePermisoAdministracion = _repositorioPermisos.TienePermisoAdministracion(usuario.Permiso.Id); if (tienePermisoAdministracion) { totalNumSiniestros = await _repositorioUsuarios.ObtenerNumSiniestrosPorIdUsuario(idUsuario); numSiniestrosPorAseguradora = await _repositorioUsuarios.ObtenerEstadisticasPorIdUsuario(idUsuario); EstadisticasUsuarioVm estadisticasUsuarioVm = new EstadisticasUsuarioVm() { NumSiniestros = totalNumSiniestros, NumSiniestrosPorAseguradora = numSiniestrosPorAseguradora }; return(Ok(estadisticasUsuarioVm)); } else { totalNumSiniestros = await _repositorioPeritos.ObtenerNumSiniestrosPorIdPerito(idUsuario); numSiniestrosPorAseguradora = await _repositorioPeritos.ObtenerEstadisticasPorIdPerito(idUsuario); List <DetalleEstadisticaVm> numSiniestrosCerrarPorAseguradora = await _repositorioPeritos.ObtenerSiniestrosCerrarPorIdPerito(idUsuario); EstadisticasPeritoVm estadisticasPeritoVm = new EstadisticasPeritoVm() { NumSiniestros = totalNumSiniestros, NumSiniestrosPorAseguradora = numSiniestrosPorAseguradora, NumSiniestrosCerrarPorAseguradora = numSiniestrosCerrarPorAseguradora }; return(Ok(estadisticasPeritoVm)); } }
public async Task <ActionResult> Crear(MensajeVm mensajeVm) { Usuario usuario = await _repositorioUsuarios.ObtenerPorId(mensajeVm.IdUsuarioCreado); Siniestro siniestro = await _repositorioSiniestros.ObtenerPorId(mensajeVm.IdSiniestro); Mensaje mensaje = new Mensaje() { Descripcion = mensajeVm.Descripcion, Usuario = usuario, Siniestro = siniestro }; try { await _repositorioMensajes.Guardar(mensaje); } catch (Exception) { return(StatusCode(500, "Ha habido un error al crear el mensaje")); } return(Ok(true)); }
public ActionResult Edit(int id) { var i = repositorioUsuarios.ObtenerPorId(id); return(View(i)); }