/// <summary> /// 更新部门 /// </summary> /// <param name="cInfo">实体</param> public void Update(MenuInfo cInfo) { if (string.IsNullOrEmpty(cInfo.ID)) { throw new ArgumentNullException("参数ID不能为空。"); } dal.Update(cInfo); }
/// <summary> /// 添加栏目 /// </summary> /// <param name="ID">实体主键</param> /// <returns></returns> public void Delete(string ID) { MenuInfo cInfo = new MenuInfo(); cInfo.ID = ID; dal.Delete(cInfo); }
/// <summary> /// 添加同辈节点 /// </summary> /// <param name="peerMenuID">同辈节点ID</param> /// <param name="cInfo">添加的栏目,“栏目代码信息”(MenuCode)属性为系统自动生成</param> /// <returns>新增实体的主键</returns> public string AddPeer(string peerMenuID, MenuInfo cInfo) { if (string.IsNullOrEmpty(peerMenuID)) { throw new ArgumentNullException("同级节点ID不能为空。"); } MenuInfo peerNode = GetByID(peerMenuID); return AddChild(peerNode.ParentID, cInfo); }
/// <summary> /// 添加栏目 /// </summary> /// <param name="parentMenuID">父节点ID</param> /// <param name="cInfo">添加的栏目,“栏目代码信息”(MenuCode)属性为系统自动生成。如系统已存在父节点(0103),并且具有2个同级节点,同级节点的最大编号为(010302),则该节点编号为010303</param> /// <returns>新增实体的主键</returns> public string AddChild(string parentMenuID, MenuInfo cInfo) { if (string.IsNullOrEmpty(parentMenuID)) { throw new ArgumentNullException("父节点ID不能为空。"); } // 生成新增栏目的栏目代码 string maxChildCode = new Menu().getMaxChildCode(parentMenuID); MenuInfo pInfo = new Menu().GetByID(parentMenuID); // 末2位+1,为空则为00; if (string.IsNullOrEmpty(maxChildCode)) { cInfo.MenuCode = pInfo.MenuCode + "00"; } else { // 默认编码为00~99 int width = 2; string max = maxChildCode.Substring(maxChildCode.Length - width); int maxNum = int.Parse(max); cInfo.MenuCode = pInfo.MenuCode + String.Format("{0:D2}", maxNum++); ; } cInfo.ParentID = parentMenuID; string menuID = dal.Add(cInfo); //获取副栏目权限组,子节点默认绑定 PermissionGroupInfo pgInfo = new PermissionGroup().GetByMenuID(parentMenuID); if (null != pgInfo && string.IsNullOrEmpty(pgInfo.ID) == true) { AddPermissionGroup(menuID, pgInfo.ID); } return menuID; }
/// <summary> /// 添加部门 /// </summary> /// <param name="cInfo">实体</param> /// <returns>新增实体的主键</returns> public string Add(MenuInfo cInfo) { return dal.Add(cInfo); }
private MenuInfo getMenu() { MenuInfo mInfo = new MenuInfo(); mInfo.ID = this.NodeID; string parentID = this.ParentID; mInfo.Name = tbName.Text; mInfo.URL = tbURL.Text; mInfo.Remark = tbRemark.Text; mInfo.Target = rblExtend.SelectedValue; mInfo.MenuCode = tbSortNum.Text; return mInfo; }