public async Task <List <ViewModelQuejas> > Evaluar([FromBody] ViewModelQuejas viewModelQuejas) { try { var lista = new List <ViewModelQuejas>(); lista = await db.Quejas.Where (x => x.IdEmpleado == viewModelQuejas.IdEmpleado && x.IdEval001 == viewModelQuejas.IdEval001) .Select(y => new ViewModelQuejas { IdQuejas = y.IdQueja, IdEmpleado = Convert.ToInt32(y.IdEmpleado), IdEval001 = Convert.ToInt32(y.IdEval001), NombreCiudadano = y.Nombre, ApellidoCiudadano = y.Apellido, Descripcion = y.Descripcion, NumeroFormulario = Convert.ToInt32(y.NumeroFormulario), AplicaDescuento = Convert.ToBoolean(y.AplicaDescuento) }).ToListAsync(); //quejas.Add(lista); return(lista); } catch (Exception ex) { return(new List <ViewModelQuejas>()); throw; } }
public async Task <IActionResult> IndexQuejas(int idEmpleado, int ideval) { try { if (idEmpleado == 0 || ideval == 0) { idEmpleado = Convert.ToInt32(HttpContext.Session.GetInt32(Constantes.idEmpleadoSession)); ideval = Convert.ToInt32(HttpContext.Session.GetInt32(Constantes.idEval011Session)); } if (idEmpleado != 0 || ideval != 0) { HttpContext.Session.SetInt32(Constantes.idEmpleadoSession, Convert.ToInt32(idEmpleado)); HttpContext.Session.SetInt32(Constantes.idEval011Session, Convert.ToInt32(ideval)); //var lista = new List<ViewModelQuejas>(); var usuario = new ViewModelQuejas { IdEmpleado = Convert.ToInt32(idEmpleado), IdEval001 = Convert.ToInt32(ideval) }; var lista = await apiServicio.Listar <ViewModelQuejas>(usuario, new Uri(WebApp.BaseAddress) , "api/Quejas/ListaQuejas"); InicializarMensaje(null); return(View(lista)); } return(RedirectToAction("Index")); } catch (Exception ex) { InicializarMensaje(null); return(View()); } }
public async Task <IActionResult> Create(ViewModelQuejas viewModelQuejas) { try { var envio = new ViewModelQuejas() { IdEval001 = Convert.ToInt32(HttpContext.Session.GetInt32(Constantes.idEval011Session)), IdEmpleado = Convert.ToInt32(HttpContext.Session.GetInt32(Constantes.idEmpleadoSession)), NombreCiudadano = viewModelQuejas.NombreCiudadano, ApellidoCiudadano = viewModelQuejas.ApellidoCiudadano, Descripcion = viewModelQuejas.Descripcion, NumeroFormulario = viewModelQuejas.NumeroFormulario, AplicaDescuento = viewModelQuejas.AplicaDescuento }; if (envio.IdEval001 != 0 || envio.IdEmpleado != 0) { Response response = new Response(); response = await apiServicio.InsertarAsync <Response>(envio, new Uri(WebApp.BaseAddress) , "api/Quejas/InsertarQuejas"); if (response.IsSuccess) { return(RedirectToAction("IndexQuejas")); } } return(RedirectToAction("Index")); } catch (Exception) { throw; } }
public async Task <IActionResult> CalificacionFinal() { var envio = new ViewModelQuejas() { IdEval001 = Convert.ToInt32(HttpContext.Session.GetInt32(Constantes.idEval011Session)) }; if (envio.IdEval001 != 0) { var ListaObservacion = await apiServicio.ObtenerElementoAsync1 <ViewModelQuejas>(envio, new Uri(WebApp.BaseAddress), "api/Quejas/CalcularTotales"); if (ListaObservacion != null) { InicializarMensaje(null); return(View(ListaObservacion)); } InicializarMensaje(null); return(View()); } return(RedirectToAction("Index")); }
public async Task <Response> InsertarQuejas([FromBody] ViewModelQuejas viewModelQuejas) { using (var transaction = await db.Database.BeginTransactionAsync()) { try { var quejas = new Quejas { IdEmpleado = viewModelQuejas.IdEmpleado, IdEval001 = viewModelQuejas.IdEval001, Nombre = viewModelQuejas.NombreCiudadano, Apellido = viewModelQuejas.ApellidoCiudadano, Descripcion = viewModelQuejas.Descripcion, NumeroFormulario = Convert.ToString(viewModelQuejas.NumeroFormulario), AplicaDescuento = viewModelQuejas.AplicaDescuento }; await db.Quejas.AddAsync(quejas); await db.SaveChangesAsync(); transaction.Commit(); return(new Response { IsSuccess = true, Message = Mensaje.Satisfactorio }); } catch (Exception ex) { transaction.Rollback(); return(new Response { IsSuccess = false, Message = Mensaje.Error, }); } } }
public async Task <ViewModelQuejas> CalcularTotales([FromBody] ViewModelQuejas viewModelQuejas) { try { var totales = new ViewModelQuejas(); var eval = new Eval001() { IdEval001 = viewModelQuejas.IdEval001, }; var actividades = await db.EvaluacionActividadesPuestoTrabajo.Where(x => x.IdEval001 == eval.IdEval001).ToListAsync(); if (actividades != null) { double valor = 0, total = 0; foreach (var item in actividades) { valor = Convert.ToDouble(item.PorcetajeCumplimiento) + Convert.ToDouble(item.Aumento); total = total + valor; totales.ActividadesTotal = total; } } else { totales.ActividadesTotal = 0; } var conocimiento = await db.EvaluacionConocimiento.Where(x => x.IdEval001 == eval.IdEval001).ToListAsync(); if (conocimiento.Count != 0) { //double valor = 0, total = 0; double valor = 0, total = 0; foreach (var item in conocimiento) { var a = await db.NivelConocimiento.Where(x => x.IdNivelConocimiento == item.IdNivelConocimiento).FirstOrDefaultAsync(); var b = a.Nombre; if (b == EvaluacionDesempeño.Sobresaliente) { valor = 8; } if (b == EvaluacionDesempeño.MuyBueno) { valor = 6; } if (b == EvaluacionDesempeño.Bueno) { valor = 4; } if (b == EvaluacionDesempeño.Regular) { valor = 2; } if (b == EvaluacionDesempeño.Insuficiente) { valor = 0; } total = total + valor; } total = total / conocimiento.Count; totales.TotalConocimientos = total; } else { totales.TotalConocimientos = 0; } var competenciasTecnicas = await db.EvaluacionCompetenciasTecnicasPuesto.Where(x => x.IdEval001 == eval.IdEval001).ToListAsync(); if (competenciasTecnicas.Count != 0) { //double valor = 0, total = 0; double valor = 0, total = 0; foreach (var item in competenciasTecnicas) { var a = await db.NivelDesarrollo.Where(x => x.IdNivelDesarrollo == item.IdNivelDesarrollo).FirstOrDefaultAsync(); var b = a.Nombre; if (b == EvaluacionDesempeño.AltamenteDesarrollada) { valor = 8; } if (b == EvaluacionDesempeño.Desarrollada) { valor = 6; } if (b == EvaluacionDesempeño.MedianamenteDesarrollada) { valor = 4; } if (b == EvaluacionDesempeño.PocoDesarrollada) { valor = 2; } if (b == EvaluacionDesempeño.NoDesarrollada) { valor = 0; } total = total + valor; } total = total / competenciasTecnicas.Count; totales.TotalCompetenciasTecnicas = total; } else { totales.TotalCompetenciasTecnicas = 0; } var competenciasUniversales = await db.EvaluacionCompetenciasUniversales.Where(x => x.IdEval001 == eval.IdEval001).ToListAsync(); if (competenciasUniversales.Count != 0) { //double valor = 0, total = 0; double valor = 0, total = 0; foreach (var item in competenciasUniversales) { var a = await db.FrecuenciaAplicacion.Where(x => x.IdFrecuenciaAplicacion == item.IdFrecuenciaAplicacion).FirstOrDefaultAsync(); var b = a.Nombre; if (b == EvaluacionDesempeño.Siempre) { valor = 1.3; } if (b == EvaluacionDesempeño.Frecuentemente) { valor = 1; } if (b == EvaluacionDesempeño.Algunavez) { valor = 0.7; } if (b == EvaluacionDesempeño.Raravez) { valor = 0.3; } if (b == EvaluacionDesempeño.Nunca) { valor = 0; } total = total + valor; } total = total / competenciasUniversales.Count; totales.TotalCompetenciasUniversales = total; } else { totales.TotalCompetenciasUniversales = 0; } var TrabajoLiderazgo = await db.EvaluacionTrabajoEquipoIniciativaLiderazgo.Where(x => x.IdEval001 == eval.IdEval001).ToListAsync(); if (TrabajoLiderazgo.Count != 0) { //double valor = 0, total = 0; double valor = 0, total = 0; foreach (var item in TrabajoLiderazgo) { var a = await db.FrecuenciaAplicacion.Where(x => x.IdFrecuenciaAplicacion == item.IdFrecuenciaAplicacion).FirstOrDefaultAsync(); var b = a.Nombre; if (b == EvaluacionDesempeño.Siempre) { valor = 8; } if (b == EvaluacionDesempeño.Frecuentemente) { valor = 6; } if (b == EvaluacionDesempeño.Algunavez) { valor = 4; } if (b == EvaluacionDesempeño.Raravez) { valor = 2; } if (b == EvaluacionDesempeño.Nunca) { valor = 0; } total = total + valor; } total = total / TrabajoLiderazgo.Count; totales.TotalTrabajoLiderazgo = total; } else { totales.TotalTrabajoLiderazgo = 0; } var Quejas = await db.Quejas.Where(x => x.IdEval001 == eval.IdEval001 && x.AplicaDescuento == true).ToListAsync(); if (Quejas.Count != 0) { //double valor = 0, total = 0; double valor = 0, total = 0; foreach (var item in Quejas) { valor = 4; total = total + valor; } //total = total / Quejas.Count; totales.TotalQuejas = total; } else { totales.TotalQuejas = 0; } var TotalEvaluacion = totales.TotalCompetenciasTecnicas + totales.TotalCompetenciasUniversales + totales.TotalConocimientos + totales.TotalTrabajoLiderazgo + totales.ActividadesTotal; var totalConQuejas = TotalEvaluacion - totales.TotalQuejas; totales.TotalEvaluacion = totalConQuejas; return(totales); } catch (Exception ex) { ex.ToString(); return(new ViewModelQuejas()); } }