コード例 #1
0
ファイル: Usuarios.aspx.cs プロジェクト: undergroundn/ICERP
 public static string llenararbol(string id)
 {
     try
     {
         Model.UnitOfWork.UnitOfWork uow = new Model.UnitOfWork.UnitOfWork();
         var areas = uow.MenuRepository.GetAll();
         JavaScriptSerializer jss = new JavaScriptSerializer();
         Area        ara          = new Area();
         List <Area> lista        = new List <Area>();
         foreach (Model.Menu ar in areas)
         {
             if (id == "0")
             {
                 ara = construir(ar);
             }
             else
             {
                 ara = construiract(ar, id);
             }
             lista.Add(ara);
         }
         var resultado = jss.Serialize(lista);
         return(resultado);
     }
     catch (Exception e)
     {
         _Log.Error("[ System ] " + " [ Page ] " + "[ Areas ] [ llenararbol ] [ Fin ]", e);
         return(string.Empty);
     }
 }
コード例 #2
0
ファイル: Usuarios.aspx.cs プロジェクト: undergroundn/ICERP
        public static Area construiract(Model.Menu nueva, string usuarioId)
        {
            try
            {
                Model.UnitOfWork.UnitOfWork uow = new Model.UnitOfWork.UnitOfWork();

                Area area = new Area();
                area.id     = nueva.MenuId.ToString();
                area.text   = nueva.NombreMenu;
                area.parent = nueva.MenuPadreId == null ? "#" : nueva.MenuPadreId.ToString();
                int iduser  = int.Parse(usuarioId);
                int idar    = int.Parse(area.id);
                var usuario = uow.MenuUsuarioRepository.GetBy(x => x.IdUsuario == iduser && x.IdMenu == idar);

                int contar = 0;
                if (usuario.Count > 0)
                {
                    int menuid = usuario[0].IdMenu != null?Int32.Parse(usuario[0].IdMenu.ToString()) : 0;

                    var usuario1 = uow.MenuRepository.GetBy(x => x.MenuPadreId == menuid);
                    contar = usuario1.Count;
                }
                state st = new state();

                if (usuario.Count > 0)
                {
                    if (area.parent == "#" && contar > 0)
                    {
                        //st.opened = "True";
                        st.selected = null;
                    }
                    else
                    {
                        st.selected = "True";
                    }
                }
                else
                {
                    st.selected = null;
                    //st.opened = null;
                    //st.disabled = null;
                }
                st.loaded  = "True";
                st.opened  = "True";
                area.state = st;
                return(area);
            }
            catch (Exception e)
            {
                _Log.Error("[ System ] " + " [ Page ] " + "[ Areas ] [ construiract ] [ Fin ]", e);
                return(new Area {
                });
            }
        }