// GET: EjecutivosYPlanta public ActionResult Index(string oDatosFormulario, string oDatosSAP) { try { RespuestaMotorModels oRespuestaMotor = new RespuestaMotorModels(); RespuestaSAPModels oRespuestaSAPModels = new RespuestaSAPModels(); UtilitiesGenerales oDiasContingente = new UtilitiesGenerales(); oRespuestaMotor = JsonConvert.DeserializeObject <RespuestaMotorModels>(oDatosFormulario); ViewBag.oRespuestaMotor = JsonConvert.SerializeObject(oRespuestaMotor); oRespuestaSAPModels = JsonConvert.DeserializeObject <RespuestaSAPModels>(oDatosSAP); ViewBag.oRespuestaSAPModels = JsonConvert.SerializeObject(oRespuestaSAPModels); ViewBag.NroIdentificacion = oRespuestaSAPModels.Details[0].NroDocumento; //Asignacion dle nombre del Empleado ViewBag.NombresEmpleado = oRespuestaSAPModels.Details[0].PrimerNombre + " " + oRespuestaSAPModels.Details[0].SegundoNombre + " "; ViewBag.ApellidosEmpleado = oRespuestaSAPModels.Details[0].PrimerApellido + " " + oRespuestaSAPModels.Details[0].SegundoApellido; foreach (var oReglas in oRespuestaMotor.Reglas) { switch (oReglas.Prmtro) { case "NroDias": ViewBag.NumeroDias = oDiasContingente.CalcularDiasContingente(oRespuestaSAPModels.Details[0].Contingentes.Contigente, oReglas).ToString().Replace('.', ','); // Pendiente por realizar //////////////////////// break; case "NroMinDias": ViewBag.MinimoDias = Convert.ToDouble(oReglas.Vlr_Slda); break; case "DiasMinCalendario": ViewBag.InicioFecha = DateTime.Now.AddDays(Convert.ToDouble(oReglas.Vlr_Slda)); break; case "DiasMaxCalendario": ViewBag.FinFecha = DateTime.Now.AddDays(Convert.ToDouble(oReglas.Vlr_Slda)); break; case "NroMinDiasCorreoCompensacion": ViewBag.NroMinDiasCorreoCompensacion = int.Parse(oReglas.Vlr_Slda); break; case "CorreoCompensacion": ViewBag.CorreoCompensacion = oReglas.Vlr_Slda; break; } } ViewBag.SabadoHabil = oRespuestaSAPModels.Details[0].SabadoHabil; // Se obtienen las fechas de los festivos, sabados y domingos (Si se envía true incluira los sábados, si se envía false no incluirá los sábados, según criterio) string DiasFestivosSabadosDomingos = FestivosColombia.DiasFestivoSabadosDomingosConcatenado(DateTime.Now.Year, oRespuestaSAPModels.Details[0].SabadoHabil == "NO" ? true : false); ViewBag.DiasFestivosSabadosDomingos = DiasFestivosSabadosDomingos; return(View()); } catch (Exception Ex) { Logger.Error("Ocurrió un error construyendo el View de Ejecutivos y Planta." + "Exception: " + Ex); return(null); } }
public JsonResult ArmarObjetoPantallaModal(string RespuestaMotor, string RespuestaSAP) { MensajeRespuesta oMensajeRespuesta = new MensajeRespuesta(); RespuestaSAPModels oRespuestaSap = new RespuestaSAPModels(); RespuestaMotorModels oRespuestaMotor = new RespuestaMotorModels { Escenario = new List <EscenarioModels>(), Reglas = new List <ReglaModels>(), Error = new ErrorModels() }; UtilitiesGenerales oDiasContingente = new UtilitiesGenerales(); ModalAnotadoresModels oModalAnotadoresModels = new ModalAnotadoresModels(); try { oRespuestaMotor = JsonConvert.DeserializeObject <RespuestaMotorModels>(RespuestaMotor); oRespuestaSap = JsonConvert.DeserializeObject <RespuestaSAPModels>(RespuestaSAP); oModalAnotadoresModels.NombreEmpleado = HttpUtility.HtmlDecode(oRespuestaSap.Details[0].PrimerNombre) + " " + HttpUtility.HtmlDecode(oRespuestaSap.Details[0].SegundoNombre) + " "; oModalAnotadoresModels.ApellidoEmpleado = HttpUtility.HtmlDecode(oRespuestaSap.Details[0].PrimerApellido) + " " + HttpUtility.HtmlDecode(oRespuestaSap.Details[0].SegundoApellido); foreach (var oReglas in oRespuestaMotor.Reglas) { switch (oReglas.Prmtro) { case "NroDias": oModalAnotadoresModels.NroDias = oDiasContingente.CalcularDiasContingente(oRespuestaSap.Details[0].Contingentes.Contigente, oReglas).ToString().Replace('.', ','); // Pendiente por realizar //////////////////////// break; case "NroMinDias": oModalAnotadoresModels.MinimoDias = Convert.ToDouble(oReglas.Vlr_Slda); break; case "DiasMinCalendario": oModalAnotadoresModels.InicioFecha = DateTime.Now.AddDays(Convert.ToDouble(oReglas.Vlr_Slda)); break; case "DiasMaxCalendario": oModalAnotadoresModels.FinFecha = DateTime.Now.AddDays(Convert.ToDouble(oReglas.Vlr_Slda)); break; case "NroMinDiasCorreoCompensacion": oModalAnotadoresModels.NroMinDiasCorreoCompensacion = int.Parse(oReglas.Vlr_Slda); break; case "CorreoCompensacion": oModalAnotadoresModels.CorreoCompensacion = oReglas.Vlr_Slda; break; } } oModalAnotadoresModels.SabadoHabil = oRespuestaSap.Details[0].SabadoHabil; // Se obtienen las fechas de los festivos, sabados y domingos (Si se envía true incluira los sábados, si se envía false no incluirá los sábados, según criterio) string DiasFestivosSabadosDomingos = FestivosColombia.DiasFestivoSabadosDomingosConcatenado(DateTime.Now.Year, oModalAnotadoresModels.SabadoHabil == "NO" ? true : false); oModalAnotadoresModels.DiasFestivosSabadosDomingos = DiasFestivosSabadosDomingos; oModalAnotadoresModels.CorreoSolicitante = !string.IsNullOrEmpty(oRespuestaSap.Details[0].CorreoCorp) ? oRespuestaSap.Details[0].CorreoCorp : oRespuestaSap.Details[0].CorreoPersonal; oModalAnotadoresModels.CorreoJefeSolicitante = !string.IsNullOrEmpty(oRespuestaSap.Details[0].CorreoCorpJefe) ? oRespuestaSap.Details[0].CorreoCorpJefe : oRespuestaSap.Details[0].CorreoPersonalJefe; oModalAnotadoresModels.CodigoEmpleado = oRespuestaSap.Details[0].NroPersonal; oModalAnotadoresModels.Sociedad = oRespuestaSap.Details[0].Sociedad; oMensajeRespuesta.Codigo = "1"; oMensajeRespuesta.Resultado = Json(oModalAnotadoresModels, JsonRequestBehavior.AllowGet); return(Json(oMensajeRespuesta, JsonRequestBehavior.AllowGet)); } catch (Exception Ex) { Logger.Error("Ocurrió un error interno en el consumo del API del motor de reglas. " + "Exception: " + Ex); oMensajeRespuesta.Codigo = "-3"; oMensajeRespuesta.Mensaje = "Ocurrió un error inesperado en la consulta de la información. Contacte al administrador del sistema"; oMensajeRespuesta.Resultado = Json(JsonConvert.SerializeObject(oMensajeRespuesta, Formatting.Indented), JsonRequestBehavior.AllowGet); return(Json(oMensajeRespuesta, JsonRequestBehavior.AllowGet)); } }