protected override void btnSave_Click(object sender, EventArgs e) { if (string.IsNullOrEmpty(txtOrder.Text.Trim())) txtOrder.Text = "0"; if (action.Equals("add")) { role = new cmsRole(); } else { role = rs.GetModel(id); if (role != null) { role.Attach(); } else { role = new cmsRole(); } } role.RoleName = txtName.Text.Trim(); role.OrderNo = Convert.ToInt32(txtOrder.Text.Trim()); role.IsEnabled = chkEnabled.Checked ? 1 : 0; try { long r = rs.Save(role); if (action.Equals("edit")) { r = role.Id; } if (r > 0) { hidID.Value = r.ToString(); List<cmsRolePurview> ls = new List<cmsRolePurview>(); string[] c_vals = hidCatalog.Value.Replace(",,", ",").Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries); string[] s_vals = hidMenu.Value.Replace(",,", ",").Split(new char[]{','}, StringSplitOptions.RemoveEmptyEntries); for (int i = 0; i < c_vals.Length; i++) { cmsRolePurview rp = new cmsRolePurview(); rp.RoleId = r; rp.NodeCode = c_vals[i]; rp.Type = 0; ls.Add(rp); } for (int i = 0; i < s_vals.Length; i++) { cmsRolePurview rp = new cmsRolePurview(); rp.RoleId = r; rp.NodeCode = s_vals[i]; rp.Type = 1; ls.Add(rp); } r = rps.Add(r, ls); if (action.Equals("add")) { ScriptUtil.ConfirmAndRedirect(@"角色添加成功!\n“确定”继续添加,“取消”则跳转到列表页。", "RoleAdd.aspx?node=" + NodeCode, "RoleList.aspx?node=" + NodeCode); } else { ScriptUtil.ConfirmAndRedirect(@"角色修改成功!\n“确定”留在本页,“取消”则跳转到列表页。", "RoleAdd.aspx?node=" + NodeCode + "&id=" + id + "&action=" + action, "RoleList.aspx?node=" + NodeCode); } } //else //{ // if (action.Equals("add")) // { // ScriptUtil.Alert("服务器发生未知错误!"); // } // else // { // ScriptUtil.ConfirmAndRedirect(@"角色修改成功!\n“确定”留在本页,“取消”则跳转到列表页。", "", "RoleList.aspx"); // } //} } catch (Exception ex) { ScriptUtil.Alert(ex.Message); Logger.Error(ex.Message); } }
private void InitData() { role = rs.GetModel(id); if (role != null) { hidID.Value = role.Id.ToString(); txtName.Text = role.RoleName; txtOrder.Text = role.OrderNo.ToString(); chkEnabled.Checked = role.IsEnabled.HasValue ? role.IsEnabled.Value == 1 : false; // 取权限 List<cmsRolePurview> purviews = rps.GetList(Convert.ToInt32(id)); List<cmsRolePurview> c_purviews = purviews.FindAll(delegate(cmsRolePurview r) { return r.Type == 0; }); List<cmsRolePurview> s_purviews = purviews.FindAll(delegate(cmsRolePurview r) { return r.Type == 1; }); StringBuilder sb = new StringBuilder(); foreach (cmsRolePurview item in c_purviews) { sb.Append("," + item.NodeCode + ","); } hidCatalog.Value = sb.ToString(); sb.Remove(0, sb.Length); foreach (cmsRolePurview item in s_purviews) { sb.Append("," + item.NodeCode + ","); } hidMenu.Value = sb.ToString(); } }