public ActionResult Index()
        {
            ClearTempFolder();

            if (base.UserContext.RolesEmpresa.Any(s => s.Rol_Id == 1) && base.UserContext.RolesCliente.Count == 0)
            {
                vContactosSinFoto = vContactosSinFoto.GetAll();
            }
            else
            {
                vContactosSinFoto = vContactosSinFoto.GetByUserRol(base.UserContext.RolesCliente.ToList());
            }


            vContactosSinFoto.Datos.Columns.Add("CodCliente", typeof(GridViewDataHyperLinkColumn)).SetOrdinal(1);

            foreach (DataRow row in vContactosSinFoto.Datos.Rows)
            {
                if (row["CodigoCliente"].ToString() != "")
                {
                    int idCliente = Convert.ToInt32(row["CodigoCliente"].ToString());
                    GridViewDataHyperLinkColumn link = new GridViewDataHyperLinkColumn();
                    link.FieldName    = row["Cliente"].ToString();
                    row["CodCliente"] = link;
                }
            }

            return(View("Index", vContactosSinFoto));
        }
        public ActionResult ExportXLS(GridViewExportedRowType exportRowType)
        {
            vContactosSinFoto = vContactosSinFoto.GetByUserRol(base.UserContext.RolesCliente.ToList());


            var setting = GridHelper.GetSettingExport(vContactosSinFoto.GetDynamicCollectionList(vContactosSinFoto.Datos), _ControllerName);

            setting.SettingsExport.ExportedRowType = exportRowType;

            // retornamos el excel al usuario
            return(GridViewExtension.ExportToXls(setting, vContactosSinFoto.Datos, string.Format("{0}s_{1}.{2}", typeof(vContactos).Name, DateTime.Now.ToString("ddMMyyyy_HHmmss"), "xls")));
        }
        protected List <KeyValuePair <string, string> > GetEmailsCliente()
        {
            List <KeyValuePair <string, string> > emailClientes = new List <KeyValuePair <string, string> >();
            vContactosSinFoto vContactosSinFoto = new vContactosSinFoto();

            if (!this.UserContext.RolesEmpresa.Any(x => x.Rol.RoleName.Trim().ToUpper().Equals("CLIENTE")))
            {
                emailClientes = (vContactosSinFoto.GetViewModel().AsEnumerable().
                                 Where(c => c.Field <string>("Descripcion").Contains("Emails notificación de Sistema")).
                                 Select(e => new KeyValuePair <string, string>(e.Field <string>("Cliente"), e.Field <string>("Email")))).ToList();

                emailClientes.Add(new KeyValuePair <string, string>("Todos", "Todos"));
            }

            return(emailClientes);
        }
        public ActionResult GridViewAllPartial()
        {
            vContactosSinFoto = vContactosSinFoto.GetByUserRol(base.UserContext.RolesCliente.ToList());


            vContactosSinFoto.Datos.Columns.Add("CodCliente", typeof(GridViewDataHyperLinkColumn)).SetOrdinal(1);

            foreach (DataRow row in vContactosSinFoto.Datos.Rows)
            {
                if (row["CodigoCliente"].ToString() != "")
                {
                    int idCliente = Convert.ToInt32(row["CodigoCliente"].ToString());
                    GridViewDataHyperLinkColumn link = new GridViewDataHyperLinkColumn();
                    link.FieldName    = row["Cliente"].ToString();
                    row["CodCliente"] = link;
                }
            }

            return(PartialView("_GridForViews", vContactosSinFoto));
        }