private Response Existe(SolicitudPermiso SolicitudPermiso) { var fechaDesde = SolicitudPermiso.FechaDesde; var fechaHasta = SolicitudPermiso.FechaHasta; var horaDesde = SolicitudPermiso.HoraDesde; var horaHasta = SolicitudPermiso.HoraHasta; var SolicitudPermisorespuesta = db.SolicitudPermiso.Where(p => p.FechaDesde == fechaDesde && p.FechaHasta == fechaHasta && p.HoraDesde == horaDesde && p.HoraHasta == horaHasta && p.IdEmpleado == SolicitudPermiso.IdEmpleado && p.IdTipoPermiso == SolicitudPermiso.IdTipoPermiso).FirstOrDefault(); if (SolicitudPermisorespuesta != null) { return(new Response { IsSuccess = true, Message = Mensaje.ExisteRegistro, Resultado = SolicitudPermisorespuesta, }); } return(new Response { IsSuccess = false, Resultado = SolicitudPermisorespuesta, }); }
public async Task <SolicitudPermisoViewModel> ObtenerInformacionSolicitudPermiso([FromBody] int idSolicitudPermiso) { try { SolicitudPermiso solicitudPermiso = await db.SolicitudPermiso .Include(x => x.Empleado) .ThenInclude(x => x.Persona) .Include(x => x.TipoPermiso) .Where(x => x.IdSolicitudPermiso == idSolicitudPermiso) .SingleOrDefaultAsync(); Empleado empleado = await db.Empleado .Include(x => x.Persona) .Include(x => x.Dependencia) .SingleOrDefaultAsync(m => m.IdEmpleado == solicitudPermiso.Empleado.IdEmpleado); var solicitudPermisoViewModel = new SolicitudPermisoViewModel { NombresApellidosEmpleado = empleado.Persona.Nombres + " " + empleado.Persona.Apellidos, NombreDependencia = empleado.Dependencia.Nombre, SolicitudPermiso = solicitudPermiso }; return(solicitudPermisoViewModel); } catch (Exception ex) { throw; } }
public async Task <List <SolicitudPermiso> > ListarInformacionEmpleado([FromBody] SolicitudPermiso solicitudPermiso) { try { return(await db.SolicitudPermiso .Include(x => x.Empleado) .ThenInclude(x => x.Persona) .Include(x => x.TipoPermiso) .Where(x => (x.IdEmpleado == solicitudPermiso.IdEmpleado) && (x.Estado == 0 || x.Estado == -1)) .ToListAsync()); } catch (Exception ex) { return(new List <SolicitudPermiso>()); } }
public async Task <Response> PutSolicitudPermiso([FromRoute] int id, [FromBody] SolicitudPermiso solicitudPermiso) { try { if (!ModelState.IsValid) { return(new Response { IsSuccess = false, Message = Mensaje.ModeloInvalido }); } var SolicitudPermiso = db.SolicitudPermiso.Find(solicitudPermiso.IdSolicitudPermiso); SolicitudPermiso.HoraDesde = solicitudPermiso.HoraDesde; SolicitudPermiso.HoraHasta = solicitudPermiso.HoraHasta; SolicitudPermiso.FechaDesde = solicitudPermiso.FechaDesde; SolicitudPermiso.FechaHasta = solicitudPermiso.FechaHasta; SolicitudPermiso.Motivo = solicitudPermiso.Motivo; SolicitudPermiso.IdTipoPermiso = solicitudPermiso.IdTipoPermiso; SolicitudPermiso.Estado = solicitudPermiso.Estado; SolicitudPermiso.FechaAprobado = DateTime.Now; SolicitudPermiso.Observacion = solicitudPermiso.Observacion; db.SolicitudPermiso.Update(SolicitudPermiso); await db.SaveChangesAsync(); return(new Response { IsSuccess = true, Message = Mensaje.Satisfactorio, Resultado = SolicitudPermiso }); } catch (Exception ex) { return(new Response { IsSuccess = true, Message = Mensaje.Excepcion, }); } }
public async Task <Response> PostSolicitudPermiso([FromBody] SolicitudPermiso SolicitudPermiso) { try { if (!ModelState.IsValid) { return(new Response { IsSuccess = false, Message = "" }); } var respuesta = Existe(SolicitudPermiso); if (!respuesta.IsSuccess) { db.SolicitudPermiso.Add(SolicitudPermiso); await db.SaveChangesAsync(); return(new Response { IsSuccess = true, Message = Mensaje.Satisfactorio }); } return(new Response { IsSuccess = false, Message = Mensaje.ExisteRegistro, }); } catch (Exception ex) { return(new Response { IsSuccess = false, Message = Mensaje.Error, }); } }
public async Task <IActionResult> PedirPermiso(SolicitudPermisoViewModel solicitudPermisoViewModel) { try { if (!ModelState.IsValid) { this.TempData["Mensaje"] = $"{Mensaje.Error}|{Mensaje.ModeloInvalido}"; await CargarCombos(); return(View(solicitudPermisoViewModel)); } if (solicitudPermisoViewModel.SolicitudPermiso.FechaDesde > solicitudPermisoViewModel.SolicitudPermiso.FechaHasta) { this.TempData["MensajeTimer"] = $"{Mensaje.Error}|{Mensaje.ErrorFechaDesdeHasta}|{"12000"}"; await CargarCombos(); return(View(solicitudPermisoViewModel)); } string fechaDesde = solicitudPermisoViewModel.SolicitudPermiso.FechaDesde.DayOfWeek.ToString(); string fechaHasta = solicitudPermisoViewModel.SolicitudPermiso.FechaHasta.DayOfWeek.ToString(); // Diferencia en horas TimeSpan?diferenciaHoras = solicitudPermisoViewModel.SolicitudPermiso.HoraHasta - solicitudPermisoViewModel.SolicitudPermiso.HoraDesde; // Diferencia en dìas TimeSpan?tsDiferenciaDias = solicitudPermisoViewModel.SolicitudPermiso.FechaHasta - solicitudPermisoViewModel.SolicitudPermiso.FechaDesde; var solicitudPermiso = new SolicitudPermiso { IdEmpleado = solicitudPermisoViewModel.SolicitudPermiso.Empleado.IdEmpleado, IdTipoPermiso = solicitudPermisoViewModel.SolicitudPermiso.IdTipoPermiso, Motivo = solicitudPermisoViewModel.SolicitudPermiso.Motivo, Observacion = solicitudPermisoViewModel.SolicitudPermiso.Observacion, Estado = solicitudPermisoViewModel.SolicitudPermiso.Estado, FechaSolicitud = DateTime.Now, FechaDesde = solicitudPermisoViewModel.SolicitudPermiso.FechaDesde, FechaHasta = solicitudPermisoViewModel.SolicitudPermiso.FechaHasta, HoraDesde = solicitudPermisoViewModel.SolicitudPermiso.HoraDesde, HoraHasta = solicitudPermisoViewModel.SolicitudPermiso.HoraHasta, }; var response = await apiServicio.InsertarAsync(solicitudPermiso, new Uri(WebApp.BaseAddress), "api/SolicitudesPermisos/InsertarSolicitudPermiso"); if (response.IsSuccess) { return(this.RedireccionarMensajeTime( "SolicitudesPermisosAprobador", "IndexEmpleado", $"{Mensaje.Success}|{response.Message}|{"6000"}" )); } await CargarCombos(); this.TempData["MensajeTimer"] = $"{Mensaje.Error}|{response.Message}|{"12000"}"; return(View(solicitudPermisoViewModel)); } catch (Exception ex) { return(BadRequest()); } }