/// <summary> /// fill module accessright from datarow /// </summary> /// <param name="dr"></param> /// <param name="allowAccessActionList"></param> /// <param name="accessRightDA"></param> /// <returns></returns> private ModuleRightModel FillModuleRightModel(DataRow dr, List <string> allowAccessActionList, AccessRightDA accessRightDA) { ModuleRightModel mrModel = new ModuleRightModel(); mrModel.ModuleCode = CommUtil.ConvertObjectToString(dr["code"]); mrModel.ModuleName = CommUtil.ConvertObjectToString(dr["name"]); DataTable dtAccessRight = accessRightDA.GetAccessRightByModuleCode(dr["code"].ToString()); Dictionary <string, bool> dicAction = new Dictionary <string, bool>(); for (int j = 0; j < dtAccessRight.Rows.Count; j++) { DataRow drAction = dtAccessRight.Rows[j]; if (drAction["name"] != null) { if (allowAccessActionList.Contains(mrModel.ModuleCode + "_" + drAction["code"].ToString())) { dicAction[drAction["name"].ToString()] = true; } else { dicAction[drAction["name"].ToString()] = false; } } } mrModel.DicAction = dicAction; return(mrModel); }
/// <summary> /// Get the module allow action by groupid /// </summary> /// <param name="groupID"></param> /// <returns></returns> private List <string> GetModuleAccessRightByGroupID(string groupID) { List <string> moduleARList = new List <string>(); AccessRightDA accessRightDA = null; DataTable dt = new DataTable(); try { accessRightDA = new AccessRightDA(); dt = accessRightDA.GetAccessRightByGroupID(groupID); for (int i = 0; i < dt.Rows.Count; i++) { DataRow dr = dt.Rows[i]; string allowAccessModuleAction = CommUtil.ConvertObjectToString(dr["ModuleCode"]) + "_" + CommUtil.ConvertObjectToString(dr["ActionCode"]); moduleARList.Add(allowAccessModuleAction); } } finally { if (accessRightDA != null) { accessRightDA.CloseConnection(); } } return(moduleARList); }
public List <SelectListItem> GetAllOperation() { List <SelectListItem> _operationList = new List <SelectListItem>(); OperationDA opDA = null; DataTable dt = new DataTable(); try { opDA = new OperationDA(); dt = opDA.GetAllOperation(); for (int i = 0; i < dt.Rows.Count; i++) { DataRow dr = dt.Rows[i]; SelectListItem item = new SelectListItem(); item.Text = CommUtil.ConvertObjectToString(dr["Operation_desc"]); item.Value = CommUtil.ConvertObjectToString(dr["Operation_code"]); _operationList.Add(item); } } finally { if (opDA != null) { opDA.CloseConnection(); } } return(_operationList); }
public IEnumerable <MenuModel> GetMenu() { List <string> moduleList = new List <string>(); List <MenuModel> menuList = new List <MenuModel>(); ModuleDA moduleDA = null; DataTable dt = new DataTable(); try { moduleDA = new ModuleDA(); dt = moduleDA.GetMenuByUserID(UserUID, Operation); for (int i = 0; i < dt.Rows.Count; i++) { DataRow dr = dt.Rows[i]; if ("".Equals(CommUtil.ConvertObjectToString(dr["ModuleCode"])) || moduleList.Contains(CommUtil.ConvertObjectToString(dr["ModuleCode"]))) { continue; } else { moduleList.Add(CommUtil.ConvertObjectToString(dr["ModuleCode"])); } MenuModel mm = new MenuModel(); mm.ModuleCode = CommUtil.ConvertObjectToString(dr["ModuleCode"]); mm.ModuleName = CommUtil.ConvertObjectToString(dr["ModuleName"]); mm.ModuleController = CommUtil.ConvertObjectToString(dr["ModuleController"]); mm.ModuleAction = CommUtil.ConvertObjectToString(dr["ModuleAction"]); mm.IsFatherNode = CommUtil.ConvertObjectToBool(dr["IsFatherNode"]); bool isSelect = false; if (mm.IsFatherNode) { mm.SubMenu = GetSubMenu(mm.ModuleCode, 1, out isSelect); } else { isSelect = CheckMenuSelected(mm.ModuleController, mm.ModuleAction); } mm.IsSelect = isSelect; menuList.Add(mm); } } finally { if (moduleDA != null) { moduleDA.CloseConnection(); } } return(menuList); }
/// <summary> /// Get all goup info /// </summary> /// <param name="groupID"></param> /// <param name="selectedGroupID"></param> /// <param name="selectedGroupName"></param> /// <returns></returns> private List <GroupM> GetAllGroup(string groupID, out string selectedGroupID, out string selectedGroupName) { selectedGroupID = ""; selectedGroupName = ""; bool getGroupFisrstElement = false; if (groupID == null) { getGroupFisrstElement = true; } List <GroupM> groupList = new List <GroupM>(); GroupDA groupDA = null; DataTable dt = new DataTable(); try { groupDA = new GroupDA(); dt = groupDA.GetAllGroup(Operation); for (int i = 0; i < dt.Rows.Count; i++) { DataRow dr = dt.Rows[i]; GroupM group = new GroupM(); group.GroupID = CommUtil.ConvertObjectToString(dr["GroupID"]); group.GroupName = CommUtil.ConvertObjectToString(dr["GroupName"]); groupList.Add(group); if (i == 0 && getGroupFisrstElement) { selectedGroupID = group.GroupID; selectedGroupName = group.GroupName; } if (group.GroupID.Equals(groupID)) { selectedGroupID = group.GroupID; selectedGroupName = group.GroupName; } } } finally { if (groupDA != null) { groupDA.CloseConnection(); } } return(groupList); }
public bool EditModuleAccessRight(string moduleActions, string groupID) { if (!string.IsNullOrEmpty(moduleActions)) { AccessRightDA accessRightDA = null; DataTable dtAction = new DataTable(); try { accessRightDA = new AccessRightDA(); dtAction = accessRightDA.GetAllAction(); Dictionary <string, string> dicAction = new Dictionary <string, string>(); for (int i = 0; i < dtAction.Rows.Count; i++) { DataRow dr = dtAction.Rows[i]; dicAction[CommUtil.ConvertObjectToString(dr["name"])] = CommUtil.ConvertObjectToString(dr["code"]); } accessRightDA.DeleteAccessRightByGroupID(groupID); string[] rights = moduleActions.Split(','); if (rights.Count() > 0) { foreach (string module_actions in rights) { if (!string.IsNullOrEmpty(module_actions)) { string[] module_action = module_actions.Split('_'); if (module_action.Count() == 2) { accessRightDA.InsertAccessRight(module_action[0], groupID, dicAction[module_action[1]], module_action[1], 1, UserID, DateTime.Now); } } } } } finally { if (accessRightDA != null) { accessRightDA.CloseConnection(); } } } return(true); }
public List <SelectListItem> GetOperation() { List <SelectListItem> _operationList = new List <SelectListItem>(); List <string> _operationCheck = new List <string>(); OperationDA opDA = null; DataTable dt = new DataTable(); try { opDA = new OperationDA(); dt = opDA.GetOperationByUserID(UserID); for (int i = 0; i < dt.Rows.Count; i++) { DataRow dr = dt.Rows[i]; SelectListItem item = new SelectListItem(); item.Text = CommUtil.ConvertObjectToString(dr["Operation_desc"]); item.Value = CommUtil.ConvertObjectToString(dr["Operation_code"]); if (!_operationCheck.Contains(item.Text)) { _operationCheck.Add(item.Text); _operationList.Add(item); } } if (_operationList.Count == 1) { Operation = CommUtil.ConvertObjectToString(_operationList[0].Value); OperationName = CommUtil.ConvertObjectToString(_operationList[0].Text); } } finally { if (opDA != null) { opDA.CloseConnection(); } } return(_operationList); }
private List <MenuModel> GetSubMenu(string code, int deep, out bool isSelect) { bool temp = false; isSelect = false; List <string> moduleList = new List <string>(); List <MenuModel> menuList = new List <MenuModel>(); ModuleDA moduleDA = null; DataTable dt = new DataTable(); try { moduleDA = new ModuleDA(); dt = moduleDA.GetMenuByCodeAndUserID(code, UserUID, Operation); for (int i = 0; i < dt.Rows.Count; i++) { DataRow dr = dt.Rows[i]; if ("".Equals(CommUtil.ConvertObjectToString(dr["ModuleCode"])) || moduleList.Contains(CommUtil.ConvertObjectToString(dr["ModuleCode"]))) { continue; } else { moduleList.Add(CommUtil.ConvertObjectToString(dr["ModuleCode"])); } MenuModel mm = new MenuModel(); mm.ModuleCode = CommUtil.ConvertObjectToString(dr["ModuleCode"]); mm.ModuleName = CommUtil.ConvertObjectToString(dr["ModuleName"]); mm.ModuleController = CommUtil.ConvertObjectToString(dr["ModuleController"]); mm.ModuleAction = CommUtil.ConvertObjectToString(dr["ModuleAction"]); mm.IsFatherNode = CommUtil.ConvertObjectToBool(dr["IsFatherNode"]); if (mm.IsFatherNode && deep <= 5) { mm.SubMenu = GetSubMenu(mm.ModuleCode, deep + 1, out isSelect); } else { isSelect = CheckMenuSelected(mm.ModuleController, mm.ModuleAction); } mm.IsSelect = isSelect; //subMenu is selected if (isSelect) { temp = true; } menuList.Add(mm); } //if submenu is selectd father menu is selected if (temp) { isSelect = true; } } finally { if (moduleDA != null) { moduleDA.CloseConnection(); } } return(menuList); }