Ejemplo n.º 1
0
        public ViewResult Edit(string userName)
        {
            var user      = Membership.GetUser(userName);
            var userRoles = Roles.GetRolesForUser(userName);
            AplicacionesGM_MVCEntities          db           = new AplicacionesGM_MVCEntities();
            IEnumerable <aspnet_Users>          usuarios     = from u in db.aspnet_Users select u;
            IEnumerable <aspnet_Origenes>       origenes     = from o in db.aspnet_Origenes select o;
            IEnumerable <aspnet_AplicacionesGM> aplicaciones = from a in db.aspnet_AplicacionesGM select a;
            IEnumerable <aspnet_Delegaciones>   delegaciones = from d in db.aspnet_Delegaciones select d;

            ProfileBase profile = ProfileBase.Create(user.UserName);

            //Agentes de Moraval
            Areas.Clientes.Models.DSas400TableAdapters.AGTAG003TableAdapter taMV = new Areas.Clientes.Models.DSas400TableAdapters.AGTAG003TableAdapter();
            var        agentesMV = (from a in taMV.GetData() select new { a.AGCDG, NOMBRE = a.AGNBR + " (" + a.AGCDG + ")" }).OrderBy(a => a.NOMBRE);
            SelectList list      = new SelectList(agentesMV.AsEnumerable(), "AGCDG", "NOMBRE", profile["IDAgenteQSMV"]);

            ViewData["AgentesMV"] = list;


            //Agentes de Hierros
            Areas.Clientes.Models.DSas400TableAdapters.AGTAG004TableAdapter taHMA = new Areas.Clientes.Models.DSas400TableAdapters.AGTAG004TableAdapter();
            var agentesHMA = (from a in taHMA.GetData() select new { a.AGCDG, NOMBRE = a.AGNBR + " (" + a.AGCDG + ")" }).OrderBy(a => a.NOMBRE);

            list = new SelectList(agentesHMA.AsEnumerable(), "AGCDG", "NOMBRE", profile["IDAgenteQSHMA"]);
            ViewData["AgentesHMA"] = list;

            //Agentes de ECA
            Areas.Clientes.Models.DSas400TableAdapters.AGTAG006TableAdapter taECA = new Areas.Clientes.Models.DSas400TableAdapters.AGTAG006TableAdapter();
            var agentesECA = (from a in taECA.GetData() select new { a.AGCDG, NOMBRE = a.AGNBR + " (" + a.AGCDG + ")" }).OrderBy(a => a.NOMBRE);

            list = new SelectList(agentesECA.AsEnumerable(), "AGCDG", "NOMBRE", profile["IDAgenteQSECA"]);
            ViewData["AgentesECA"] = list;

            return(View(new AccountEditViewModel
            {
                DisplayName = user.UserName,
                User = user,
                Roles = Roles.GetAllRoles().ToDictionary(role => role, role => userRoles.Contains(role)),
                Status = user.IsOnline
                            ? AccountEditViewModel.StatusEnum.Online
                            : !user.IsApproved
                                ? AccountEditViewModel.StatusEnum.Unapproved
                                : user.IsLockedOut
                                    ? AccountEditViewModel.StatusEnum.LockedOut
                                    : AccountEditViewModel.StatusEnum.Offline,
                Subordinados = new CheckBoxModel(usuarios.AsEnumerable().OrderBy(u => u.UserName).ToDictionary(u => u.UserId.ToString(), u => u.UserName), new List <string>()),
                Origenes = new CheckBoxModel(origenes.AsEnumerable().OrderBy(o => o.Descripcion).ToDictionary(o => o.OrigenID.ToString(), o => o.Descripcion), new List <string>()),
                Aplicaciones = new CheckBoxModel(aplicaciones.AsEnumerable().OrderBy(a => a.Nombre).ToDictionary(a => a.AplicacionesGMID.ToString(), a => a.Nombre), new List <string>()),
                Delegaciones = new CheckBoxModel(delegaciones.AsEnumerable().OrderBy(d => d.Descripcion).ToDictionary(d => d.DelegacionID.ToString(), d => d.Descripcion), new List <string>())
            }));
        }