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);
    }
Ejemplo n.º 2
0
        /// <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;
        }
Ejemplo n.º 3
0
        /// <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;
        }
Ejemplo n.º 4
0
        /// <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;
            }
        }
Ejemplo n.º 5
0
 /// <summary>
 /// ����һ������
 /// </summary>
 /// <param name="model">model</param>
 public bool ModifyRecord(PRolePermissionsData model)
 {
     return this.rolePermissionsDB.ModifyRecord(model);
 }
Ejemplo n.º 6
0
 /// <summary>
 /// ����һ������
 /// </summary>
 /// <param name="model">model</param>
 public int AddRecord(PRolePermissionsData model)
 {
     return this.rolePermissionsDB.AddRecord(model);
 }