public ActionResult Index(enc_resolucion_Info model) { try { foreach (var item in model.lista_resoluccion) { foreach (var item_ in item.lista) { if (item_.re_ponderacion == null) { ViewBag.mensaje = "La pregunta " + item_.ep_descripcion + "\n" + "no ha sido contestada para el empleado \n" + item.re_nombres; return(PartialView("Index", model)); } } } decimal idresoluccion = 0; foreach (var item in model.lista_resoluccion) { if (reso_data.grabarDB(item, ref idresoluccion)) { foreach (var item_ in item.lista) { item_.IdResolucion = idresoluccion; } resol_data_det.grabardb(item.lista); } } return(RedirectToAction("Mensaje", new { mensaje = "Evaluación realizada exitósamente" })); } catch (Exception ex) { throw; } }
public ActionResult Index() { try { enc_resolucion_Info info = new enc_resolucion_Info(); Decimal IdEmpleado = 0; IdEmpleado = (Session["IdEmpleado"]) == null?0:Convert.ToDecimal((Session["IdEmpleado"])); info.Concepto = "Califique del [0-100], de acuerdo a lo preguntado"; info_periodo = data_periodo.GetInfoPeriodoActivo(); if (info_periodo == null) { return(RedirectToAction("Mensaje", "Resolucion_formulario", new { mensaje = "No existe periodo de evaluación activo" })); } if (reso_data.empleado_realizo_encuesta(IdEmpleado, info_periodo.IdPeriodo)) { return(RedirectToAction("Mensaje", "Resolucion_formulario", new { mensaje = "Evaluación realizada exitósamente, espere los resultados" })); } info = reso_data.GetResolver_evaluacion(IdEmpleado, info_periodo.IdPeriodo); if (info.lista_resoluccion.Count == 0) { return(RedirectToAction("Mensaje", "Resolucion_formulario", new { mensaje = "Actualmente no existe un formulario disponible para usted, comuníquese con sistemas" })); } return(PartialView("Index", info)); } catch (Exception ex) { throw; } }
public enc_resolucion_Info GetResolver_evaluacion(decimal?IdEmpleado, int IdPeriodo) { try { enc_resolucion_Info info = new enc_resolucion_Info(); List <enc_resolucion_formulario_Info> listaresolu = new List <enc_resolucion_formulario_Info>(); List <enc_resolucion_formulario_det_Info> lista_det = new List <enc_resolucion_formulario_det_Info>(); using (Entities_general contex = new Entities_general()) { listaresolu = (from emp_evalua in contex.rol_empleado join emp_x_form in contex.rol_empleado_x_formulario on emp_evalua.IdEmpleado equals emp_x_form.Idempleado_evaluado join formulario in contex.enc_formulario on emp_x_form.IdFormulario equals formulario.IdFormulario where emp_x_form.Idempleado == IdEmpleado && emp_x_form.IdPeriodo == IdPeriodo && formulario.IdPeriodo == IdPeriodo select new enc_resolucion_formulario_Info { IdEmpleado = emp_x_form.Idempleado, IdEmpleado_evaluado = emp_x_form.Idempleado_evaluado, re_nombres = emp_evalua.re_nombres + " " + emp_evalua.re_apellidos, lista = (from preg in contex.enc_formulario_pregunta join peri in contex.tbl_periodo_evaluacion on emp_x_form.IdPeriodo equals peri.IdPeriodo where preg.IdFormulario == emp_x_form.IdFormulario && preg.IdFormulario == formulario.IdFormulario && peri.estado_cierre == false && peri.estado == true && preg.estado == true && !contex.enc_resolucion_formulario.Any(v => v.IdEmpleado == IdEmpleado && v.IdPeriodo == emp_x_form.IdPeriodo) && preg.IdPeriodo == IdPeriodo && peri.IdPeriodo == IdPeriodo select new enc_resolucion_formulario_det_Info { IdPregunta = preg.IdPregunta, ep_descripcion = preg.ep_descripcion, re_ponderacion = preg.ep_calificacion ?? 0, ep_calificacion = preg.ep_calificacion }).ToList() } ).ToList(); } info.lista_resoluccion = listaresolu; return(info); } catch (Exception ex) { throw; } }
public ActionResult enc_resolucion_formulario_det(decimal?IdEmpleado, decimal?IdEmpleadoEva, decimal?IdFormulario) { try { info_periodo = data_periodo.GetInfoPeriodoActivo(); if (info_periodo == null) { return(RedirectToAction("Mensaje", "Resolucion_formulario", new { mensaje = "No existe periodo de evaluación activo" })); } enc_resolucion_Info info = new enc_resolucion_Info(); info = reso_data.GetResolver_evaluacion(IdEmpleado, info_periodo.IdPeriodo); return(PartialView("Index", info)); } catch (Exception ex) { throw; } }