public ActionResult GetViewCampos(int GrupoEdicion)
        {
            List <ADESCOMBUSINESS.Areas.Configuracion.Models.ConfiguracionSistemaParamCompania> Parametros = new List <ADESCOMBUSINESS.Areas.Configuracion.Models.ConfiguracionSistemaParamCompania>();

            ADESCOMBUSINESS.Areas.Configuracion.Methods.ConfiguracionSistemaBusiness ConfiguracionSistemaProxy = new ADESCOMBUSINESS.Areas.Configuracion.Methods.ConfiguracionSistemaBusiness((ADESCOMBUSINESS.DataAccess.Models.LoginRS)Session["InfoUser"]);
            Parametros            = ConfiguracionSistemaProxy.GetParamByGrupoEdicion(GrupoEdicion);
            @ViewBag.GrupoEdicion = GrupoEdicion;

            if (GrupoEdicion == 2)
            {
                ADESCOMBUSINESS.Areas.Configuracion.Models.ConfiguracionSistemaNotifCompuesto ConfigNotif = new ADESCOMBUSINESS.Areas.Configuracion.Models.ConfiguracionSistemaNotifCompuesto();

                //Optimización
                List <ADESCOMBUSINESS.Areas.Configuracion.Models.SIS_TipoNotificacion> Elementos = new List <ADESCOMBUSINESS.Areas.Configuracion.Models.SIS_TipoNotificacion>();
                Elementos = ADESCOMBUSINESS.Areas.Configuracion.Methods.SIS_TipoNotificacionBusiness.GetAll((ADESCOMBUSINESS.DataAccess.Models.LoginRS)Session["InfoUser"]);

                ConfigNotif.EmailNotifications    = GetTemplates(Elementos.Where(x => x.TNO_AplicaEmail == true).ToList(), Convert.ToInt32(ADESCOMBUSINESS.GlobalBusiness.ObtConfigParam((ADESCOMBUSINESS.DataAccess.Models.LoginRS)Session["InfoUser"], "EmailNotifications")));
                ConfigNotif.BuzonAppNotifications = GetTemplates(Elementos.Where(x => x.TNO_AplicaBuzonApp == true).ToList(), Convert.ToInt32(ADESCOMBUSINESS.GlobalBusiness.ObtConfigParam((ADESCOMBUSINESS.DataAccess.Models.LoginRS)Session["InfoUser"], "AppNotifications")));
                ConfigNotif.PushNotifications     = GetTemplates(Elementos.Where(x => x.TNO_AplicaPushNotif == true).ToList(), Convert.ToInt32(ADESCOMBUSINESS.GlobalBusiness.ObtConfigParam((ADESCOMBUSINESS.DataAccess.Models.LoginRS)Session["InfoUser"], "PushNotifications")));
                //GHO No es necesario, no se van a manajar por compania, se manajara un set en general
                //ConfigNotif.Parametros = Parametros;

                return(View("GetViewNotificaciones", ConfigNotif));
            }
            else
            {
                int cta = Convert.ToInt32(ADESCOMBUSINESS.GlobalBusiness.ObtConfigParam((ADESCOMBUSINESS.DataAccess.Models.LoginRS)Session["InfoUser"], "CuentaCuotas"));
                //ViewBag.Cuenta_ID = new SelectList(ADESCOMBUSINESS.Areas.Contabilidad.Methods.CON_CuentasBusiness.GetCuentasEmpresa((ADESCOMBUSINESS.DataAccess.Models.LoginRS)Session["InfoUser"], cta), cta);
                ViewBag.Cuenta_ID = new SelectList(GetCuentas(0), "Cuenta_ID", "CTA_Alias", cta);

                String codigo = ConfiguracionSistemaProxy.GetCodigoActivacion();
                ViewBag.CodigoActivacion = codigo;

                return(View("GetViewCampos", Parametros));
            }
        }
        public ActionResult SetViewNotificaciones(FormCollection Form)
        {
            int GrupoEdicion = Convert.ToInt32(Form["GrupoEdicion"]);

            @ViewBag.GrupoEdicion = GrupoEdicion;

            //List<ADESCOMBUSINESS.Areas.Configuracion.Models.ConfiguracionSistemaParamCompania> Parametros = new List<ADESCOMBUSINESS.Areas.Configuracion.Models.ConfiguracionSistemaParamCompania>();
            List <ADESCOMBUSINESS.Areas.Configuracion.Models.ConfiguracionSistemaParamCompania> ParametrosUpdate = new List <ADESCOMBUSINESS.Areas.Configuracion.Models.ConfiguracionSistemaParamCompania>();

            ADESCOMBUSINESS.Areas.Configuracion.Methods.ConfiguracionSistemaBusiness ConfiguracionSistema = new ADESCOMBUSINESS.Areas.Configuracion.Methods.ConfiguracionSistemaBusiness((ADESCOMBUSINESS.DataAccess.Models.LoginRS)Session["InfoUser"]);
            //Parametros = ConfiguracionSistema.GetParamByGrupoEdicion(GrupoEdicion);

            /*foreach (ADESCOMBUSINESS.Areas.Configuracion.Models.ConfiguracionSistemaParamCompania parametro in Parametros)
             * {
             *  switch (parametro.TipoDato_ID)
             *  {
             *      case 2: //Entero
             *          parametro.CPA_Valor = Convert.ToInt32(Form[parametro.TCP_Nombre]);
             *          break;
             *      case 3: //Decimal
             *          parametro.CPA_Valor = Convert.ToDecimal(Form[parametro.TCP_Nombre]);
             *          break;
             *      case 4: //Fecha
             *          parametro.CPA_Valor = Convert.ToDateTime(Form[parametro.TCP_Nombre]);
             *          break;
             *      case 5: //SI/NO
             *          parametro.CPA_Valor = Convert.ToBoolean(Form[parametro.TCP_Nombre]);
             *          break;
             *      default:
             *          parametro.CPA_Valor = Form[parametro.TCP_Nombre].ToString();
             *          break;
             *  }
             *
             *  ParametrosUpdate.Add(parametro);
             * }*/

            //Notificaciones vía Email seleccionados
            ADESCOMBUSINESS.Areas.Configuracion.Models.ConfiguracionSistemaParamCompania param = new ADESCOMBUSINESS.Areas.Configuracion.Models.ConfiguracionSistemaParamCompania();
            param.TCP_Nombre       = "EmailNotifications";
            param.CPA_Valor        = Form["sumEmailsSelected"];
            param.CPA_UsuarioModif = true;
            ParametrosUpdate.Add(param);

            //Notificaciones vía Buzón App seleccionadas
            param                  = new ADESCOMBUSINESS.Areas.Configuracion.Models.ConfiguracionSistemaParamCompania();
            param.TCP_Nombre       = "AppNotifications";
            param.CPA_Valor        = Form["sumAppSelected"];
            param.CPA_UsuarioModif = true;
            ParametrosUpdate.Add(param);

            //Notificaciones vía Pushseleccionadas
            param                  = new ADESCOMBUSINESS.Areas.Configuracion.Models.ConfiguracionSistemaParamCompania();
            param.TCP_Nombre       = "PushNotifications";
            param.CPA_Valor        = Form["sumPushSelected"];
            param.CPA_UsuarioModif = true;
            ParametrosUpdate.Add(param);

            ParametrosUpdate = ConfiguracionSistema.SetParamByGrupoEdicion(ParametrosUpdate);

            foreach (ADESCOMBUSINESS.Areas.Configuracion.Models.ConfiguracionSistemaParamCompania parametro in ParametrosUpdate)
            {
                if (parametro.Error)
                {
                    ModelState.AddModelError(parametro.TCP_Nombre, parametro.ModelError);
                }
            }
            if (ModelState.IsValid)
            {
                ViewBag.Error = "OK";
            }

            ADESCOMBUSINESS.Areas.Configuracion.Models.ConfiguracionSistemaNotifCompuesto ConfigNotif = new ADESCOMBUSINESS.Areas.Configuracion.Models.ConfiguracionSistemaNotifCompuesto();

            //Optimización
            List <ADESCOMBUSINESS.Areas.Configuracion.Models.SIS_TipoNotificacion> Elementos = new List <ADESCOMBUSINESS.Areas.Configuracion.Models.SIS_TipoNotificacion>();

            Elementos = ADESCOMBUSINESS.Areas.Configuracion.Methods.SIS_TipoNotificacionBusiness.GetAll((ADESCOMBUSINESS.DataAccess.Models.LoginRS)Session["InfoUser"]);

            ConfigNotif.EmailNotifications    = GetTemplates(Elementos, Convert.ToInt32(ADESCOMBUSINESS.GlobalBusiness.ObtConfigParam((ADESCOMBUSINESS.DataAccess.Models.LoginRS)Session["InfoUser"], "EmailNotifications")));
            ConfigNotif.BuzonAppNotifications = GetTemplates(Elementos, Convert.ToInt32(ADESCOMBUSINESS.GlobalBusiness.ObtConfigParam((ADESCOMBUSINESS.DataAccess.Models.LoginRS)Session["InfoUser"], "AppNotifications")));
            ConfigNotif.PushNotifications     = GetTemplates(Elementos, Convert.ToInt32(ADESCOMBUSINESS.GlobalBusiness.ObtConfigParam((ADESCOMBUSINESS.DataAccess.Models.LoginRS)Session["InfoUser"], "PushNotifications")));

            //GHO No es necesario, no se van a manajar por compania, se manajara un set en general
            //ConfigNotif.Parametros = Parametros;

            return(View("GetViewNotificaciones", ConfigNotif));
        }