protected void btnSave_Click(object sender, EventArgs e) { PRolePermissionsData rolePermissionsData = new PRolePermissionsData(); SCommBB commBB = new SCommBB(); PRolePermissionsBB rolePermissionsBB = new PRolePermissionsBB(); try { //删除当前角色所有权限 rolePermissionsBB.DeleteRecordByRole(this.RoleId, 2); //保存权限 string strPermissions = ""; CheckBox checkBox = new CheckBox(); foreach (DataListItem item in this.DataList1.Items) { //获取ItemoNo Label label = (Label)item.FindControl("itemNo"); string itemNo = label.Text; if (itemNo.IndexOf('-') >= 0) { itemNo = itemNo.Substring(itemNo.LastIndexOf('-') + 1); } foreach (System.Web.UI.Control control in item.Controls) { if (control.GetType() == checkBox.GetType()) { if (((CheckBox)control).Checked == true) { strPermissions += itemNo + "," + ((CheckBox)control).ToolTip + ",0|"; } } } } //保存权限 commBB.ExecuteSql("exec sys_BatchSavePermissions " + this.RoleId.ToString() + ",'" + strPermissions.Remove(strPermissions.Length - 1) + "'"); } catch (Exception ex) { this.ClientScript.RegisterStartupScript(this.GetType(), "ShowErr", "ShowErr(\"" + Server.UrlEncode(ex.Message) + "\",3);", true); return; } finally { commBB.Dispose(); rolePermissionsBB.Dispose(); } this.ClientScript.RegisterStartupScript(this.GetType(), "alert", "alert('保存成功!');", true); }
/// <summary> /// ����һ������ /// </summary> /// <param name="model">model</param> public int AddRecord(PRolePermissionsData model) { StringBuilder strSql = new StringBuilder(); strSql.Append("set nocount on; "); strSql.Append("insert into PRolePermissions("); strSql.Append("roleId,itemNo,permissionsTypeNo,isSpecial,mark)"); strSql.Append(" values ("); strSql.Append("@roleId,@itemNo,@permissionsTypeNo,@isSpecial,@mark)"); strSql.Append("; select @@identity; set nocount off; "); SqlParameter[] parameters = { new SqlParameter("@roleId", SqlDbType.Int), new SqlParameter("@itemNo", SqlDbType.NVarChar,20), new SqlParameter("@permissionsTypeNo", SqlDbType.NVarChar,50), new SqlParameter("@isSpecial", SqlDbType.Bit), new SqlParameter("@mark", SqlDbType.NVarChar,200) }; parameters[0].Value = model.roleId; parameters[1].Value = model.itemNo; parameters[2].Value = model.permissionsTypeNo; parameters[3].Value = model.isSpecial; parameters[4].Value = model.mark; int id = 0; try { object ret = SqlHelper.ExecuteScalar(this.connection, this.transaction, CommandType.Text, strSql.ToString(), parameters); if (ret != null && ret != DBNull.Value) { id = Convert.ToInt32(ret); } } catch (Exception ex) { throw ex; } return id; }
/// <summary> /// ����һ������ /// </summary> /// <param name="model">model</param> public bool ModifyRecord(PRolePermissionsData model) { bool ret = false; StringBuilder strSql = new StringBuilder(); strSql.Append("update PRolePermissions set "); strSql.Append("roleId=@roleId,"); strSql.Append("itemNo=@itemNo,"); strSql.Append("permissionsTypeNo=@permissionsTypeNo,"); strSql.Append("isSpecial=@isSpecial,"); strSql.Append("mark=@mark"); strSql.Append(" where id = @id "); SqlParameter[] parameters = { new SqlParameter("@id", SqlDbType.Int), new SqlParameter("@roleId", SqlDbType.Int), new SqlParameter("@itemNo", SqlDbType.NVarChar,20), new SqlParameter("@permissionsTypeNo", SqlDbType.NVarChar,50), new SqlParameter("@isSpecial", SqlDbType.Bit), new SqlParameter("@mark", SqlDbType.NVarChar,200) }; parameters[0].Value = model.id; parameters[1].Value = model.roleId; parameters[2].Value = model.itemNo; parameters[3].Value = model.permissionsTypeNo; parameters[4].Value = model.isSpecial; parameters[5].Value = model.mark; try { SqlHelper.ExecuteNonQuery(this.connection, this.transaction, CommandType.Text, strSql.ToString(), parameters); ret = true; } catch (Exception ex) { throw ex; } return ret; }
/// <summary> /// �õ�һ��model /// </summary> /// <param name="id">����ֵ</param> /// <returns>model</returns> public PRolePermissionsData GetModel(int id) { StringBuilder strSql = new StringBuilder(); strSql.Append("select * from PRolePermissions"); strSql.Append(" where id = @id "); SqlParameter[] parameters = { new SqlParameter("@id", SqlDbType.Int) }; parameters[0].Value = id; PRolePermissionsData model = new PRolePermissionsData(); DataSet ds = SqlHelper.ExecuteDataset(this.connection, this.transaction, CommandType.Text, strSql.ToString(), parameters); if (ds.Tables[0].Rows.Count > 0) { DataRow row = ds.Tables[0].Rows[0]; if (row["id"] != DBNull.Value) { model.id = Convert.ToInt32(row["id"]); } if (row["roleId"] != DBNull.Value) { model.roleId = Convert.ToInt32(row["roleId"]); } if (row["itemNo"] != DBNull.Value) { model.itemNo = Convert.ToString(row["itemNo"]); } if (row["permissionsTypeNo"] != DBNull.Value) { model.permissionsTypeNo = Convert.ToString(row["permissionsTypeNo"]); } if (row["isSpecial"] != DBNull.Value) { model.isSpecial = Convert.ToBoolean(row["isSpecial"]); } if (row["mark"] != DBNull.Value) { model.mark = Convert.ToString(row["mark"]); } return model; } else { return null; } }
/// <summary> /// ����һ������ /// </summary> /// <param name="model">model</param> public bool ModifyRecord(PRolePermissionsData model) { return this.rolePermissionsDB.ModifyRecord(model); }
/// <summary> /// ����һ������ /// </summary> /// <param name="model">model</param> public int AddRecord(PRolePermissionsData model) { return this.rolePermissionsDB.AddRecord(model); }