/// <summary> /// 删除资源授权,同时删除但前角色的子角色所拥有的成员 /// </summary> /// <param name="roleResource"></param> /// <param name="childRoleList"></param> public void DeleteRoleResource(RoleResourceMapping roleResource, List <Role> childRoleList) { //using (DaoManager daoMgr = new DaoManager()) //{ //try //{ //daoMgr.BeginTransaction(); DeleteRoleResource(roleResource); foreach (Role role in childRoleList) { List <RoleResourceMapping> selectList = QueryByTypeResRole(roleResource.Type, roleResource.Resource.Id, role.ID); if (selectList != null && selectList.Count != 0) { DeleteRoleResource(selectList[0]); } } //daoMgr.CommitTransaction(); //} //catch (Exception ex) //{ // //daoMgr.RollBackTransaction(); // throw ex; //} //} }
private List <RoleResourceMapping> QueryList(string sql) { List <RoleResourceMapping> infoList = new List <RoleResourceMapping>(); //using (DbDataReader dbReader = base.ExecuteReader(sqlModel)) //{ if (this.ExecQuery(sql) < 0) { return(null); } while (this.Reader.Read()) { RoleResourceMapping info = new RoleResourceMapping(); info.Id = Reader[0].ToString(); //id info.Name = Reader[1].ToString(); //名称 info.ParentId = Reader[2].ToString(); //父级角色id info.Role.ID = Reader[3].ToString(); //角色id if (Reader[4] != null) { ResourceProcess resProcess = new ResourceProcess(); newResList = resProcess.QueryById(Reader[4].ToString()); if (newResList.Count != 0) { info.Resource = newResList[0]; //资源id } else { if (Reader[4].ToString() != string.Empty) { info.Resource.Id = Reader[4].ToString(); } else { info.Resource.Id = null; } } } else { info.Resource = new Resource(); } info.Type = Reader[5].ToString(); //类型 info.OrderNumber = FrameWork.Function.NConvert.ToDecimal(Reader[6].ToString()); //本级内序号 info.Parameter = Reader[7].ToString(); //参数 info.ValidState = Reader[8].ToString(); //有效性标志 1 在用 0 停用 info.OperCode = Reader[9].ToString(); //操作员 info.OperDate = FrameWork.Function.NConvert.ToDateTime(Reader[10].ToString()); //操作时间 info.Icon = Reader[11].ToString(); infoList.Add(info); } Reader.Close(); //} return(infoList); }
private int Delete(RoleResourceMapping info) { //AbstractSqlModel sqlMode = new SqlModel("Privilege.RoleResourceMapping.delete"); //sqlMode["id"] = info.Id; //if (base.ExecuteNonQuery(sqlMode) == 0) //{ // new Exception(); //} string sql = ""; if (this.Sql.GetSql("PRIVILEGE.ROLERESOURCEMAPPING.DELETE", ref sql) == -1) { return(-1); } try { sql = string.Format(sql, info.Id); } catch (Exception ex) { this.Err = ex.Message; return(-1); } if (this.ExecNoQuery(sql) <= 0) { return(-1); } return(0); }
/// <summary> /// 找相同角色同级结点的ORDER_NUMBUER /// </summary> /// <param name="roleRes"></param> /// <returns></returns> private List <RoleResourceMapping> Query(RoleResourceMapping roleRes) { //AbstractSqlModel sqlModel = new SqlModel("Privilege.RoleResourceMapping.QueryByTypeParentRole"); //sqlModel["type"] = roleRes.Type; //sqlModel["parent_id"] = roleRes.Id; //sqlModel["role_id"] = roleRes.Role.Id; //return this.QueryList(sqlModel); string[] args = new string[] { roleRes.Role.ID, roleRes.Id, roleRes.Type }; string sql = ""; if (this.Sql.GetSql("PRIVILEGE.ROLERESOURCEMAPPING.QUERYBYTYPEPARENTROLE", ref sql) == -1) { return(null); } try { sql = string.Format(sql, args); } catch (Exception ex) { this.Err = ex.Message; return(null); } return(this.QueryList(sql)); }
/// <summary> /// 生成菜单项 /// </summary> /// <param name="menu"></param> /// <returns></returns> private static ToolStripMenuItem CreateMenuItem(RoleResourceMapping menu) { ToolStripMenuItem _menuItem = new ToolStripMenuItem(); string _menuName = ""; if (string.IsNullOrEmpty(menu.Resource.Shortcut)) { _menuName = menu.Name; } else { _menuName = menu.Name; _menuItem.ShowShortcutKeys = true; Shortcut _shortcut = (Shortcut)Enum.Parse(typeof(Shortcut), menu.Resource.Shortcut); _menuItem.ShortcutKeys = (Keys)_shortcut; } _menuItem.Text = _menuName; _menuItem.ToolTipText = _menuName; if (!string.IsNullOrEmpty(menu.Icon)) { _menuItem.Image = Neusoft.FrameWork.WinForms.Classes.Function.GetImage((Neusoft.FrameWork.WinForms.Classes.EnumImageList)(Neusoft.FrameWork.Function.NConvert.ToInt32(menu.Icon))); } ; _menuItem.Tag = menu; _menuItem.Enabled = Neusoft.FrameWork.Function.NConvert.ToBoolean(menu.ValidState); _menuItem.Click += new EventHandler(MenuItemClick); return(_menuItem); }
public AddAuthorizeForm(Role crole, Role prole, RoleResourceMapping roleResource, String pageType) { InitializeComponent(); parentRole = prole; currentRole = crole; controlRoleResource = roleResource; pageJudge = pageType; Init(); }
/// <summary> /// 利用反射动态生成控件 /// </summary> /// <param name="menuItem"></param> /// <returns></returns> private static Control DynamicCreateControl(RoleResourceMapping menuItem) { string _controlName = menuItem.Resource.WinName.Trim(); string _argument = ""; if (_controlName.IndexOf(" ") > 0)//控件带参数 { _argument = _controlName.Substring(_controlName.IndexOf(" ") + 1).Trim(); _controlName = _controlName.Substring(0, _controlName.IndexOf(" ")); } object _obj; Control _control; try { //装载程序集 Assembly _assembly; Type _type = Type.GetType(_controlName); if (_type == null) { _assembly = Assembly.LoadFrom(Application.StartupPath + "\\" + menuItem.Resource.DllName.Trim() + ".dll"); } else { _assembly = System.Reflection.Assembly.GetAssembly(_type); } _type = _assembly.GetType(_controlName); if (_type == null) { MessageBox.Show("程序集:" + menuItem.Resource.DllName.Trim() + ".dll中无类型为" + _controlName + "的控件!"); return(null); } object[] _arguments = null; if (!string.IsNullOrEmpty(_argument)) { _arguments = new object[1]; _arguments[0] = _argument; } _obj = Activator.CreateInstance(_type, _arguments); } catch (Exception e) { SystemErrorForm _error = new SystemErrorForm(e); _error.ShowDialog(); return(null); } _control = _obj as Control; _control.Tag = menuItem.Parameter; _control.Text = menuItem.Name; return(_control); }
private void LoadRoleResource() { nTreeListView1.Items.Clear(); PrivilegeService _proxy = Common.Util.CreateProxy(); using (_proxy as IDisposable) { if (currentRole != null) { currentRoleResourcList = _proxy.QueryByTypeRoleId(pageJudge, currentRole.ID); } } TreeListViewItem rootNode = null; if (pageJudge == MenuPageJudge) { rootNode = new TreeListViewItem("授权的菜单:", 0); } if (pageJudge == WebPageJudge) { rootNode = new TreeListViewItem("授权Web菜单:", 6); } if (pageJudge == UserPageJudge) { rootNode = new TreeListViewItem("授权的用户:", 0); } if (pageJudge == DictionaryPageJudge) { rootNode = new TreeListViewItem("授权的常数:", 3); } if (pageJudge == ReportPageJudge) { rootNode = new TreeListViewItem("授权的报表:", 0); } currentRoleResource = new RoleResourceMapping(); currentRoleResource.ParentId = "root"; currentRoleResource.Id = "root"; currentRoleResource.OrderNumber = 0; currentRoleResource.ValidState = "1"; rootNode.Tag = currentRoleResource; nTreeListView1.Items.Add(rootNode); if (currentRoleResourcList == null || currentRoleResourcList.Count == 0) { return; } ConstructTreeNode(rootNode, currentRoleResourcList); nTreeListView1.ExpandAll(); }
private void ConstructTreeNode(TreeListViewItem parent, List <RoleResourceMapping> currentRoleResourcList) { List <TreeListViewItem> childs = null; if (parent != null) { childs = new List <TreeListViewItem>(); RoleResourceMapping parentRoleResourceMapping = parent.Tag as RoleResourceMapping; List <RoleResourceMapping> childRoleResourceList = new List <RoleResourceMapping>(); foreach (RoleResourceMapping roleResourceMapping in currentRoleResourcList) { if (roleResourceMapping.ParentId == parentRoleResourceMapping.Id) { childRoleResourceList.Add(roleResourceMapping); } } for (int j = 1; j < childRoleResourceList.Count; j++) { for (int i = 0; i < childRoleResourceList.Count - j; i++) { if (childRoleResourceList[i].OrderNumber > childRoleResourceList[i + 1].OrderNumber) { RoleResourceMapping roleResourceChange = new RoleResourceMapping(); roleResourceChange = childRoleResourceList[i]; childRoleResourceList[i] = childRoleResourceList[i + 1]; childRoleResourceList[i + 1] = roleResourceChange; ; } } } foreach (RoleResourceMapping sequenceRoleResource in childRoleResourceList) { TreeListViewItem item = new TreeListViewItem(sequenceRoleResource.Name, 1); item.Tag = sequenceRoleResource; item.SubItems.AddRange(GetRoleResInfo(sequenceRoleResource)); childs.Add(item); } foreach (TreeListViewItem item in childs) { parent.Items.Add(item); ConstructTreeNode(item, currentRoleResourcList); initImage(item); } } }
private static List <RoleResourceMapping> sequenceLists(List <RoleResourceMapping> childRoleResourceList) { for (int j = 1; j < childRoleResourceList.Count; j++) { for (int i = 0; i < childRoleResourceList.Count - j; i++) { if (childRoleResourceList[i].OrderNumber > childRoleResourceList[i + 1].OrderNumber) { RoleResourceMapping roleResourceChange = new RoleResourceMapping(); roleResourceChange = childRoleResourceList[i]; childRoleResourceList[i] = childRoleResourceList[i + 1]; childRoleResourceList[i + 1] = roleResourceChange; } } } return(childRoleResourceList); }
public void ModifyRoleRes() { if (nTreeListView1.SelectedIndices.Count == 0) { return; } if (nTreeListView1.SelectedIndices[0] == 0) { return; } currentRoleResource = nTreeListView1.SelectedItems[0].Tag as RoleResourceMapping; AddAuthorizeForm updateAuthorizeForm = new AddAuthorizeForm(currentRole, parentRole, currentRoleResource, pageJudge, "UpdateRes"); updateAuthorizeForm.ShowDialog(); if (updateAuthorizeForm.DialogResult == DialogResult.OK) { LoadRoleResource(); } }
private RoleResourceMapping Update(RoleResourceMapping info) { //AbstractSqlModel sqlModel = new SqlModel("Privilege.RoleResourceMapping.update"); //this.SetInfo(sqlModel, info); //base.ExecuteNonQuery(sqlModel); string[] args = new string[] { info.Id, info.Name, info.ParentId, info.Role.ID, info.Resource.Id, info.Type, info.OrderNumber.ToString(), info.Parameter, info.ValidState, info.OperCode, info.OperDate.ToString(), info.Icon }; string sql = ""; if (this.Sql.GetSql("PRIVILEGE.ROLERESOURCEMAPPING.UPDATE", ref sql) == -1) { return(null); } try { sql = string.Format(sql, args); } catch (Exception ex) { this.Err = ex.Message; return(null); } if (this.ExecNoQuery(sql) <= 0) { return(null); } return(info); }
private void SetRoleOrgValue() { foreach (TreeListViewItem newItem in nTreeListView1.Items) { RoleResourceMapping newRoleRes = new RoleResourceMapping(); if (newItem.Checked == true) { string[] orgTypeArray = newItem.Tag as string[]; newRoleRes.Id = new NFC.Management.DataBaseManger().GetSequence("PRIV.SEQ_ROLE_RESOURCE "); newRoleRes.Type = pageJudge; newRoleRes.OperCode = ((Context.Operator as NeuPrincipal).Identity as NeuIdentity).User.Id; newRoleRes.OperDate = NFC.Function.NConvert.ToDateTime(new NFC.Management.DataBaseManger().GetSysDateTime()); newRoleRes.Resource.Id = orgTypeArray[0]; newRoleRes.Name = orgTypeArray[1]; newRoleRes.Parameter = orgTypeArray[2]; newRoleRes.Role.Id = currentRole.Id; //newRoleRes.Parameter=newItem. saveRoleResourcList.Add(newRoleRes); } } }
/// <summary> /// 删除 /// </summary> /// <param name="roleResource"></param> public void DeleteRoleResource(RoleResourceMapping roleResource) { //using (DaoManager daoMgr = new DaoManager()) //{ //try //{ //daoMgr.BeginTransaction(); Delete(roleResource); //删除菜单授权时,把其窗口的设置信息也同时删除// {EA8B2DAB-A171-49df-8C3F-087EB627A032} //Framework.Facade.ConfigurationManager.Delete(roleResource.Id, "FormSetting"); //重置节点内序号 List <RoleResourceMapping> currentRoleResList = QueryByTypeParentId(roleResource.Type, roleResource.ParentId); if (currentRoleResList != null) { foreach (RoleResourceMapping currentRoleRes in currentRoleResList) { if (currentRoleRes.OrderNumber > roleResource.OrderNumber) { currentRoleRes.OrderNumber = currentRoleRes.OrderNumber - 1; UpdateRoleResource(currentRoleRes); } } } //daoMgr.CommitTransaction(); //} //catch (Exception ex) //{ // //daoMgr.RollBackTransaction(); // throw ex; //} //} }
public void AddRoleRes() { if (nTreeListView1.ItemsCount == 0 || nTreeListView1.SelectedItems.Count == 0) { //设置默认根节点 currentRoleResource = new RoleResourceMapping(); currentRoleResource.ParentId = "root"; currentRoleResource.Id = "root"; currentRoleResource.OrderNumber = 0; currentRoleResource.ValidState = "1"; } else { currentRoleResource = nTreeListView1.SelectedItems[0].Tag as RoleResourceMapping; } AddAuthorizeForm addAuthorizeForm = new AddAuthorizeForm(currentRole, parentRole, currentRoleResource, pageJudge); addAuthorizeForm.ShowDialog(); if (addAuthorizeForm.DialogResult == DialogResult.OK) { AuthorizeResourceControl_Load(null, null); } }
private string[] GetRoleResInfo(RoleResourceMapping sequenceRoleRes) { string[] sequenceRoleResString = null; string ValidStateString = string.Empty; if (sequenceRoleRes.Resource.Id != null) { if (sequenceRoleRes.ValidState == "1") { ValidStateString = "启用"; } else { ValidStateString = "禁用"; } sequenceRoleResString = new string[] { sequenceRoleRes.Resource.Name, sequenceRoleRes.Resource.WinName, sequenceRoleRes.Resource.DllName, sequenceRoleRes.Parameter, ValidStateString, sequenceRoleRes.OperCode, sequenceRoleRes.OperDate.ToString() }; } else { sequenceRoleResString = new string[] { " ", " ", " ", sequenceRoleRes.Parameter, ValidStateString, sequenceRoleRes.OperCode, sequenceRoleRes.OperDate.ToString() }; } return(sequenceRoleResString); }
/// <summary> /// 生成系统默认帮助菜单 /// </summary> /// <param name="menuStrip"></param> private static void CreateDefaultMenu(MenuStrip menuStrip, int iShortCut) { ToolStripMenuItem helpMenu = new ToolStripMenuItem("帮助" + "(&" + ((char)iShortCut).ToString() + ")"); helpMenu.Image = Neusoft.FrameWork.WinForms.Classes.Function.GetImage(Neusoft.FrameWork.WinForms.Classes.EnumImageList.PR菜单下);//ImageRes.主菜单节点_关闭16; helpMenu.DropDownOpened += new EventHandler(menuItem_DropDownOpened); helpMenu.DropDownClosed += new EventHandler(menuItem_DropDownClosed); RoleResourceMapping _register = new RoleResourceMapping(); _register.Name = "注册"; _register.Resource.WinName = "*#$%Register"; _register.ValidState = "1"; _register.Icon = Neusoft.FrameWork.WinForms.Classes.EnumImageList.Z注销.GetHashCode().ToString(); helpMenu.DropDownItems.Add(CreateMenuItem(_register)); RoleResourceMapping _changeRegister = new RoleResourceMapping(); _changeRegister.Name = "更改登录"; _changeRegister.Resource.WinName = "*#$%ResetGroup"; _changeRegister.ValidState = "1"; _changeRegister.Icon = Neusoft.FrameWork.WinForms.Classes.EnumImageList.J集体.GetHashCode().ToString(); helpMenu.DropDownItems.Add(CreateMenuItem(_changeRegister)); helpMenu.DropDownItems.Add(new ToolStripSeparator()); RoleResourceMapping _change = new RoleResourceMapping(); _change.Name = "修改密码"; _change.Resource.WinName = "*#$%ChangePWD"; _change.ValidState = "1"; _change.Icon = Neusoft.FrameWork.WinForms.Classes.EnumImageList.X修改.GetHashCode().ToString(); helpMenu.DropDownItems.Add(CreateMenuItem(_change)); helpMenu.DropDownItems.Add(new ToolStripSeparator()); RoleResourceMapping _about = new RoleResourceMapping(); _about.Name = "关于"; _about.Resource.WinName = "*#$%About"; _about.ValidState = "1"; _about.Icon = Neusoft.FrameWork.WinForms.Classes.EnumImageList.X信息.GetHashCode().ToString(); helpMenu.DropDownItems.Add(CreateMenuItem(_about)); #region {DD84CBE6-6C42-4b29-AB55-4775F7A759D0} RoleResourceMapping _calc = new RoleResourceMapping(); _calc.Name = "计算器"; _calc.Resource.WinName = "*#$%Calc"; _calc.ValidState = "1"; _calc.Icon = Neusoft.FrameWork.WinForms.Classes.EnumImageList.X信息.GetHashCode().ToString(); helpMenu.DropDownItems.Add(CreateMenuItem(_calc)); #endregion RoleResourceMapping _helpManual = new RoleResourceMapping(); _helpManual.Name = "帮助"; _helpManual.Resource.WinName = "*#$%Help"; _helpManual.ValidState = "1"; _helpManual.Icon = Neusoft.FrameWork.WinForms.Classes.EnumImageList.B帮助.GetHashCode().ToString(); helpMenu.DropDownItems.Add(CreateMenuItem(_helpManual)); helpMenu.DropDownItems.Add(new ToolStripSeparator()); //RoleResourceMapping _language = new RoleResourceMapping(); //_language.Name = "语言设置"; //_language.Resource.WinName = "*#$%Language"; //_language.ValidState = "1"; //_help.DropDownItems.Add(CreateMenuItem(_language)); //RoleResourceMapping _skin = new RoleResourceMapping(); //_skin.Name = "皮肤"; //_skin.Resource.WinName = "*#$%Skin"; //_skin.ValidState = "1"; //_help.DropDownItems.Add(CreateMenuItem(_skin)); RoleResourceMapping _exit = new RoleResourceMapping(); _exit.Name = "退出"; _exit.Resource.WinName = "*#$%Exit"; _exit.ValidState = "1"; _exit.Icon = Neusoft.FrameWork.WinForms.Classes.EnumImageList.T退出.GetHashCode().ToString(); helpMenu.DropDownItems.Add(CreateMenuItem(_exit)); menuStrip.Items.Add(helpMenu); }
/// <summary> /// 找相同角色同级结点的ORDER_NUMBUER /// </summary> /// <param name="roleRes"></param> /// <returns></returns> public List <RoleResourceMapping> QueryByTypeParentRole(RoleResourceMapping roleRes) { return(Query(roleRes)); }
/// <summary> /// 更新 /// </summary> /// <param name="roleResourceMapping"></param> /// <returns></returns> public RoleResourceMapping UpdateRoleResource(RoleResourceMapping roleResourceMapping) { return(Update(roleResourceMapping)); }
/// <summary> /// 插入 /// </summary> /// <param name="roleResourceMapping"></param> public void InsertRoleResource(RoleResourceMapping roleResourceMapping) { Insert(roleResourceMapping); }
/// <summary> /// 找相同角色同级结点的ORDER_NUMBUER /// </summary> /// <param name="type"></param> /// <param name="parentId"></param> /// <param name="roleId"></param> /// <returns></returns> public List <RoleResourceMapping> QueryByTypeParentRole(RoleResourceMapping parentRoleRes) { return(this.Channel.QueryByTypeParentRole(parentRoleRes)); }
public RoleResourceMapping UpdateRoleResource(RoleResourceMapping roleResource) { return(this.Channel.UpdateRoleResource(roleResource)); }
private RoleResourceMapping SetRoleResource() { RoleResourceMapping currentRoleResource = new RoleResourceMapping(); if (cbResource.SelectedValue != null) { currentRoleResource.Resource.Id = cbResource.SelectedValue.ToString(); } else { currentRoleResource.Resource.Id = null; } if (nrbRight.Checked == true) { currentRoleResource.ValidState = "1"; } else { currentRoleResource.ValidState = "0"; } if (controlRoleResource == null) { currentRoleResource.ParentId = "root"; PrivilegeService _proxy = Common.Util.CreateProxy(); using (_proxy as IDisposable) { currentRoleResource.OrderNumber = _proxy.QueryRoleResource(pageJudge, "root").Count; } } else { if (pageUpdate == JudgeOperate) { currentRoleResource.ParentId = controlRoleResource.ParentId; currentRoleResource.OrderNumber = controlRoleResource.OrderNumber; } else { currentRoleResource.ParentId = controlRoleResource.Id; PrivilegeService _proxy = Common.Util.CreateProxy(); using (_proxy as IDisposable) { //为根节点默认当前的角色 if (controlRoleResource.Id == "root") { controlRoleResource.Role = currentRole; controlRoleResource.Type = pageJudge; } currentRoleResource.OrderNumber = _proxy.QueryByTypeParentRole(controlRoleResource).Count; } } } if (pageUpdate == JudgeOperate) { currentRoleResource.Role.ID = controlRoleResource.Role.ID; currentRoleResource.Id = controlRoleResource.Id; } else { currentRoleResource.Role.ID = currentRole.ID; currentRoleResource.Id = new FrameWork.Management.DataBaseManger().GetSequence("PRIV.SEQ_ROLE_RESOURCE"); } currentRoleResource.Parameter = tbparameter.Text.Trim(); currentRoleResource.Type = pageJudge; currentRoleResource.Name = tbTypeName.Text.Trim(); currentRoleResource.OperCode = Neusoft.FrameWork.Management.Connection.Operator.ID; currentRoleResource.OperDate = FrameWork.Function.NConvert.ToDateTime(new FrameWork.Management.DataBaseManger().GetSysDateTime()); if (cmbImage.SelectedIndex != -1) { currentRoleResource.Icon = cmbImage.SelectedIndex.ToString(); } //if (cmbImage.Text == string.Empty) //{ // currentRoleResource.Icon = null; //} return(currentRoleResource); }
private static System.Windows.Forms.Control DynamicCreateForm(Control control, RoleResourceMapping menuItem) { System.Windows.Forms.Form _form = null; IMaintenanceControlable _query = control as IMaintenanceControlable; if (_query != null)//实现该接口,为一般查询窗口,对应承载窗体为frmQueryBase { _form = new frmQuery(_query); _form.Text = control.Text; _form.Icon = HIS.Properties.Resources.标无白边; return(_form); } IControlable _operation = control as IControlable; if (_operation != null)//业务操作窗口,承载窗体为frmOperationBase { TreeView _tree = null; //生成树 if (!string.IsNullOrEmpty(menuItem.Resource.TreeName)) { _tree = CreateTree(menuItem.Resource.TreeName, menuItem.Resource.TreeDllName); if (_tree == null) { return(null); } } if (_tree == null) { _form = new frmBaseForm(control); } else { _form = new frmBaseForm(control, _tree); } _form.Text = control.Text; } else { //_form = new System.Windows.Forms.Form(); //_form.Controls.Add(control); //_form.Size = new Size(control.Size.Width + 10, control.Size.Height + 30); //_form.StartPosition = FormStartPosition.CenterScreen; // _form.Text = control.Text; return(control); } _form.Tag = menuItem.Parameter; _form.Icon = HIS.Properties.Resources.标无白边; return(_form); }
private static void MenuItemClick(object sender, EventArgs e) { RoleResourceMapping _menuItem = (sender as ToolStripMenuItem).Tag as RoleResourceMapping; if (_menuItem == null) { return; } if (string.IsNullOrEmpty(_menuItem.Resource.WinName)) { return; } int _rtn = ResponseDefaultMenu(_menuItem); //if (_rtn == 0 | _rtn == 1) return;//返回2继续 //{D55E413A-9947-4783-B031-9EA1F2E6104B} if (_rtn == 0 | _rtn == 1 | _rtn == -1) { return; //返回2继续 } //控制重复打开窗口 if (openedForms.ContainsKey(_menuItem.Id)) { Form form = openedForms[_menuItem.Id] as Form; if (form != null && form.Visible) { form.Icon = HIS.Properties.Resources.标无白边; ((Form)openedForms[_menuItem.Id]).Activate(); return; } } Control _control = DynamicCreateControl(_menuItem); if (_control == null) { return; } _control.Dock = DockStyle.Fill; Control preTemControl = _control; //传入的控件不是窗口,用系统自动创建承载窗体 if (!_control.GetType().IsSubclassOf(typeof(System.Windows.Forms.Form))) { _control = (Control)DynamicCreateForm(_control, _menuItem); } if (_control == null) { return; } if (_control.GetType() == typeof(frmBaseForm) || _control.GetType().IsSubclassOf(typeof(frmBaseForm))) { //要修改,读取菜单的样式。 (_control as frmBaseForm).SetFormID(_menuItem.Id);//设置窗体显示风格 } #region 4.5中有此段代码,移植过来的 //获取接口是否实现 Neusoft.FrameWork.WinForms.Classes.IPreArrange preArrange = preTemControl as Neusoft.FrameWork.WinForms.Classes.IPreArrange; if (preArrange != null) { if (preArrange.PreArrange() == -1) { return; } } #endregion openedForms[_menuItem.Id] = _control as Form; //显示窗体 ShowControl(_control, _menuItem.Resource.WinName.Trim(), _menuItem.Resource.ShowType); }
public void InsertRoleResource(RoleResourceMapping roleResourceMapping) { this.Channel.InsertRoleResource(roleResourceMapping); }
private static int ResponseDefaultMenu(RoleResourceMapping menuItem) { switch (menuItem.Resource.WinName) { case "*#$%Register": frmLogin _frmLogin = new frmLogin(); _frmLogin.ShowDialog(); return(0); case "*#$%ResetGroup": foreach (Form f in parentForm.MdiChildren) { f.Close(); } Neusoft.HISFC.Models.Base.Employee user = Neusoft.FrameWork.Management.Connection.Operator as Neusoft.HISFC.Models.Base.Employee; //{D55E413A-9947-4783-B031-9EA1F2E6104B} //LoginFunction.Login(user.User01, user.Password); if (LoginFunction.Login(user.User01, user.Password) < 0) { return(-1); } if (HIS.Program.MainForm == null) { HIS.Program.MainForm = new frmMain(); } HIS.Program.MainForm.InitMenu(((Neusoft.HISFC.Models.Base.Employee)Neusoft.FrameWork.Management.Connection.Operator).CurrentGroup.ID); return(0); case "*#$%ChangePWD": frmChangePwd _frmChange = new frmChangePwd(); _frmChange.ShowDialog(); return(0); case "*#$%Help": try { System.Diagnostics.Process.Start(Neusoft.FrameWork.WinForms.Classes.Function.CurrentPath + "help.chm"); } catch (Exception ex) { MessageBox.Show(ex.Message); } return(0); case "*#$%About": frmAbout frm = new frmAbout(); frm.ShowDialog(); return(0); #region {DD84CBE6-6C42-4b29-AB55-4775F7A759D0} case "*#$%Calc": try { System.Diagnostics.Process.Start("calc.exe"); } catch (Exception ex) { MessageBox.Show("加载系统计算器时发生异常"); } return(0); #endregion case "*#$%Language": //frmLanguage language = new frmLanguage(); //language.ShowDialog(); return(0); case "*#$%SuperMan": //frmSelectUser frmSuperMan = new frmSelectUser(); //frmSuperMan.MdiParent = mainForm; //frmSuperMan.Show(); //frmSuperMan.WindowState = FormWindowState.Normal; //frmSuperMan.WindowState = FormWindowState.Maximized; return(0); case "*#$%Skin": //frmSkinManager frmSkin = new frmSkinManager(); //frmSkin.ShowDialog(); return(0); case "*#$%Exit": parentForm.Close(); return(0); } return(2);//继续下面的 }
public void DeleteRoleResource(RoleResourceMapping roleResource) { this.Channel.DeleteRoleResource(roleResource); }
public void DeleteRoleResource(RoleResourceMapping roleResource, List <Role> childRoleList) { this.Channel.DeleteRoleResource(roleResource, childRoleList); }
/// <summary> /// 找相同角色同级结点的ORDER_NUMBUER /// </summary> /// <param name="parentRoleres"></param> public List <RoleResourceMapping> QueryByTypeParentRole(RoleResourceMapping parentRoleres) { return(new RoleResourceProcess().QueryByTypeParentRole(parentRoleres)); }