Exemplo n.º 1
0
 public List <jsTree> getChildF(int ParentID, List <CSF_Functions> dataAll, List <int> lFuncByRole)
 {
     try
     {
         List <jsTree> jsTreeList = new List <jsTree>();
         jsTree        objTree;
         jsTreeState   state;
         var           data = dataAll.Where(x => x.ParentID == ParentID);
         if (data.Count() > 0)
         {
             foreach (var item in data)
             {
                 objTree      = new jsTree();
                 state        = new jsTreeState();
                 objTree.id   = item.ID;
                 objTree.text = item.Name;
                 if (lFuncByRole.Contains(item.ID))
                 {
                     state.selected = true;
                 }
                 objTree.children = getChildF(item.ID, dataAll, lFuncByRole);
                 objTree.state    = state;
                 jsTreeList.Add(objTree);
             }
         }
         return(jsTreeList);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
Exemplo n.º 2
0
 //[CheckPermission]
 public JsonResult GetPermissionByRole(string RoleID, string ModuleID, string isadmin)
 {
     try
     {
         CSF_MVCEntities ett         = new CSF_MVCEntities();
         int             ROLEID      = Convert.ToInt32(RoleID);
         int             MODULEID    = Convert.ToInt32(ModuleID);
         bool            ISADMIN     = Convert.ToBoolean(isadmin);
         List <int>      lFuncByRole = ett.CSF_RoleFunction.Where(x => x.RoleID == ROLEID).Select(x => (int)x.FunctionID).ToList();
         List <int>      lPageByRole = ett.CSF_PageRole.Where(x => x.RoleID == ROLEID).Select(x => (int)x.PageID).ToList();
         #region jsTreePage
         List <jsTree> jsTreeList = new List <jsTree>();
         jsTree        objTree    = new jsTree();
         jsTreeState   state;
         var           dataAll = ett.CSF_Pages.Where(x => x.IsAdmin == ISADMIN).OrderBy(x => x.Order).ToList();
         var           data    = dataAll.Where(x => x.ParentID == 0);
         foreach (var item in data)
         {
             objTree      = new jsTree();
             state        = new jsTreeState();
             objTree.id   = item.ID;
             objTree.text = item.Name;
             if (lPageByRole.Contains(item.ID))
             {
                 state.selected = true;
             }
             objTree.children = getChild(item.ID, dataAll, lPageByRole);
             objTree.state    = state;
             jsTreeList.Add(objTree);
         }
         #endregion
         #region jsTreeFunction
         List <jsTree> jsTreeListF = new List <jsTree>();
         jsTree        objTreeF    = new jsTree();
         jsTreeState   stateF;
         var           dataAllF = ett.CSF_Functions.Where(x => x.ModuleID == MODULEID).ToList();
         var           dataF    = dataAllF.Where(x => x.ParentID == 0);
         foreach (var item in dataF)
         {
             objTreeF      = new jsTree();
             stateF        = new jsTreeState();
             objTreeF.id   = item.ID;
             objTreeF.text = item.Name;
             if (lFuncByRole.Contains(item.ID))
             {
                 stateF.selected = true;
             }
             objTreeF.children = getChildF(item.ID, dataAllF, lFuncByRole);
             objTreeF.state    = stateF;
             jsTreeListF.Add(objTreeF);
         }
         #endregion
         var jsonResults = new { lFuncByRole, lPageByRole, jsTreeList, jsTreeListF, state = true };
         return(Json(jsonResults, JsonRequestBehavior.AllowGet));
     }
     catch (Exception ex)
     {
         return(Json(new { state = false, message = ex }, JsonRequestBehavior.AllowGet));
     }
 }
Exemplo n.º 3
0
 //[CheckPermission]
 public JsonResult GetPermissionByRole(string RoleID, string ModuleID, string isadmin)
 {
     try
     {
         DT_WebGISEntities ett = new DT_WebGISEntities();
         int  ROLEID           = Convert.ToInt32(RoleID);
         int  MODULEID         = Convert.ToInt32(ModuleID);
         bool ISADMIN          = Convert.ToBoolean(isadmin);
         //List<int> lFuncByRole = ett.CSF_RoleFunction.Where(x => x.RoleID == ROLEID)
         //    .Select(x => (int)x.FunctionID)
         //    .ToList();
         List <int> lFuncByRole = ett.CSF_Functions
                                  .Join(ett.CSF_Modules,
                                        fc => fc.ModuleID,
                                        md => md.ID,
                                        (fc, md) => new { CSF_Functions = fc, CSF_Modules = md })
                                  .Where(md => md.CSF_Modules.IsActive == true)
                                  .Select(mfc => mfc.CSF_Functions)
                                  .Join(ett.CSF_RoleFunction,
                                        mfc => mfc.ID,
                                        rfc => rfc.FunctionID,
                                        (mfc, rfc) => new { CSF_Functions = mfc, CSF_RoleFunction = rfc })
                                  .Select(fr => fr.CSF_RoleFunction)
                                  .Where(x => x.RoleID == ROLEID)
                                  .Select(x => (int)x.FunctionID)
                                  .ToList();
         //List<int> lPageByRole = ett.CSF_PageRole.Where(x => x.RoleID == ROLEID).Select(x => (int)x.PageID).ToList();
         List <int> lPageByRole = ett.CSF_Pages
                                  .Join(ett.CSF_Modules,
                                        pg => pg.ModuleID,
                                        md => md.ID,
                                        (pg, md) => new { CSF_Pages = pg, CSF_Modules = md })
                                  .Where(md => md.CSF_Modules.IsActive == true)
                                  .Select(mpg => mpg.CSF_Pages)
                                  .Join(ett.CSF_PageRole,
                                        pg => pg.ID,
                                        pr => pr.PageID,
                                        (pg, pr) => new { CSF_Pages = pg, CSF_PageRole = pr })
                                  .Select(pgr => pgr.CSF_PageRole)
                                  .Where(x => x.RoleID == ROLEID).Select(x => (int)x.PageID).ToList();
         #region jsTreePage
         List <jsTree> jsTreeList = new List <jsTree>();
         jsTree        objTree    = new jsTree();
         jsTreeState   state;
         //var dataAll = ett.CSF_Pages.Where(x => x.IsAdmin == ISADMIN && x.IsActive == true).OrderBy(x => x.Order).ToList();
         var dataAll = ett.CSF_Pages
                       .Join(ett.CSF_Modules,
                             pg => pg.ModuleID,
                             md => md.ID,
                             (pg, md) => new { CSF_Pages = pg, CSF_Modules = md })
                       .Where(md => md.CSF_Modules.IsActive == true)
                       .Select(pgmd => pgmd.CSF_Pages)
                       .Where(x => x.IsAdmin == ISADMIN && x.IsActive == true).OrderBy(x => x.Order).ToList();
         var data = dataAll.Where(x => x.ParentID == 0);
         foreach (var item in data)
         {
             objTree      = new jsTree();
             state        = new jsTreeState();
             objTree.id   = item.ID;
             objTree.text = item.Name;
             if (lPageByRole.Contains(item.ID))
             {
                 state.selected = true;
             }
             objTree.children = getChild(item.ID, dataAll, lPageByRole);
             objTree.state    = state;
             jsTreeList.Add(objTree);
         }
         #endregion
         #region jsTreeFunction
         List <jsTree> jsTreeListF = new List <jsTree>();
         jsTree        objTreeF    = new jsTree();
         jsTreeState   stateF;
         //var dataAllF = ett.CSF_Functions.Where(x => x.ModuleID == MODULEID).ToList();
         var dataAllF = ett.CSF_Functions
                        .Join(ett.CSF_Modules,
                              fc => fc.ModuleID,
                              md => md.ID,
                              (fc, md) => new { CSF_Functions = fc, CSF_Modules = md })
                        .Where(md => md.CSF_Modules.IsActive == true)
                        .Select(fc => fc.CSF_Functions)
                        .Where(x => x.ModuleID == MODULEID).ToList();
         var dataF = dataAllF.Where(x => x.ParentID == 0);
         foreach (var item in dataF)
         {
             objTreeF      = new jsTree();
             stateF        = new jsTreeState();
             objTreeF.id   = item.ID;
             objTreeF.text = item.Name;
             if (lFuncByRole.Contains(item.ID))
             {
                 stateF.selected = true;
             }
             objTreeF.children = getChildF(item.ID, dataAllF, lFuncByRole);
             objTreeF.state    = stateF;
             jsTreeListF.Add(objTreeF);
         }
         #endregion
         var jsonResults = new { lFuncByRole, lPageByRole, jsTreeList, jsTreeListF, state = true };
         return(Json(jsonResults, JsonRequestBehavior.AllowGet));
     }
     catch (Exception ex)
     {
         return(Json(new { state = false, message = ex }, JsonRequestBehavior.AllowGet));
     }
 }