public async Task <Response> InsertarSolicitudPlanificacionVacaciones([FromBody] SolicitudPlanificacionVacacionesViewModel solicitudPlanificacionVacacionesViewModel)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(new Response
                    {
                        IsSuccess = false,
                        Message = Mensaje.ModeloInvalido
                    });
                }

                var modelo = new SolicitudPlanificacionVacaciones {
                    Estado         = solicitudPlanificacionVacacionesViewModel.Estado,
                    FechaDesde     = solicitudPlanificacionVacacionesViewModel.FechaDesde,
                    FechaHasta     = solicitudPlanificacionVacacionesViewModel.FechaHasta,
                    FechaSolicitud = DateTime.Now,
                    IdEmpleado     = solicitudPlanificacionVacacionesViewModel.DatosBasicosEmpleadoViewModel.IdEmpleado,
                    Observaciones  = ""
                };

                db.SolicitudPlanificacionVacaciones.Add(modelo);
                await db.SaveChangesAsync();

                return(new Response
                {
                    IsSuccess = true,
                    Message = Mensaje.GuardadoSatisfactorio
                });
            }
            catch (Exception ex)
            {
                return(new Response
                {
                    IsSuccess = false,
                    Message = Mensaje.Error,
                });
            }
        }
        public async Task <Response> PutSolicitudPlanificacionVacaciones([FromRoute] int id, [FromBody] SolicitudPlanificacionVacaciones SolicitudPlanificacionVacaciones)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(new Response
                    {
                        IsSuccess = false,
                        Message = Mensaje.ModeloInvalido,
                    });
                }

                var SolicitudPlanificacionVacacionesActualizar = await db.SolicitudPlanificacionVacaciones.Where(x => x.IdSolicitudPlanificacionVacaciones == SolicitudPlanificacionVacaciones.IdSolicitudPlanificacionVacaciones).FirstOrDefaultAsync();

                if (SolicitudPlanificacionVacacionesActualizar != null)
                {
                    try
                    {
                        SolicitudPlanificacionVacacionesActualizar.IdEmpleado     = SolicitudPlanificacionVacaciones.IdEmpleado;
                        SolicitudPlanificacionVacacionesActualizar.FechaSolicitud = SolicitudPlanificacionVacaciones.FechaSolicitud;
                        SolicitudPlanificacionVacacionesActualizar.FechaDesde     = SolicitudPlanificacionVacaciones.FechaDesde;
                        SolicitudPlanificacionVacacionesActualizar.FechaHasta     = SolicitudPlanificacionVacaciones.FechaHasta;
                        SolicitudPlanificacionVacacionesActualizar.Observaciones  = SolicitudPlanificacionVacaciones.Observaciones;
                        SolicitudPlanificacionVacacionesActualizar.Estado         = SolicitudPlanificacionVacaciones.Estado;

                        db.SolicitudPlanificacionVacaciones.Update(SolicitudPlanificacionVacacionesActualizar);
                        await db.SaveChangesAsync();

                        return(new Response
                        {
                            IsSuccess = true,
                            Message = Mensaje.Satisfactorio,
                        });
                    }
                    catch (Exception ex)
                    {
                        await GuardarLogService.SaveLogEntry(new LogEntryTranfer
                        {
                            ApplicationName      = Convert.ToString(Aplicacion.SwTH),
                            ExceptionTrace       = ex.Message,
                            Message              = Mensaje.Excepcion,
                            LogCategoryParametre = Convert.ToString(LogCategoryParameter.Critical),
                            LogLevelShortName    = Convert.ToString(LogLevelParameter.ERR),
                            UserName             = "",
                        });

                        return(new Response
                        {
                            IsSuccess = false,
                            Message = Mensaje.Error,
                        });
                    }
                }
                return(new Response
                {
                    IsSuccess = false,
                    Message = Mensaje.ExisteRegistro
                });
            }
            catch (Exception ex)
            {
                return(new Response
                {
                    IsSuccess = false,
                    Message = Mensaje.Excepcion
                });
            }
        }