Example #1
0
        /// <summary>
        ///
        /// </summary>
        /// <returns></returns>
        public static Entity.RoleMenu GetRoleMenu(string RoleID)
        {
            Entity.RoleMenu       roleMenu  = new Entity.RoleMenu();
            DBOperatorBase        db        = new DataBase();
            IDBTypeElementFactory dbFactory = db.GetDBTypeElementFactory();

            try
            {
                IDbDataParameter[] prams =
                {
                };
                IDataReader dataReader = db.ExecuteReader(Config.con, CommandType.Text, "Select * from vRoleMenu where RoleID='" + RoleID + "'", null);
                while (dataReader.Read())
                {
                    roleMenu.role.RoleName    = dataReader["RoleName"].ToString();
                    roleMenu.role.Description = dataReader["Description"].ToString();
                    //roleMenu.role.IsAudit = bool.Parse(dataReader["IsAudit"].ToString());
                    Entity.Menu entity = new Entity.Menu();
                    //entity.RoleID = DataHelper.ParseToInt(dataReader["RoleID"].ToString());
                    entity.ID       = DataHelper.ParseToInt(dataReader["MenuID"].ToString());
                    entity.MenuName = dataReader["MenuName"].ToString();
                    entity.MenuUrl  = dataReader["MenuUrl"].ToString();
                    roleMenu.menuList.Add(entity);
                }
            }
            catch (Exception ex)
            {
            }
            finally
            {
                db.Conn.Close();
            }
            return(roleMenu);
        }
Example #2
0
        /// <summary>
        ///
        /// </summary>
        /// <returns></returns>
        public static List <Entity.RoleMenu> GetAllRoleMenu()
        {
            List <Entity.RoleMenu> list      = new List <Entity.RoleMenu>();
            DBOperatorBase         db        = new DataBase();
            IDBTypeElementFactory  dbFactory = db.GetDBTypeElementFactory();

            try
            {
                IDbDataParameter[] prams =
                {
                };
                IDataReader dataReader = db.ExecuteReader(Config.con, CommandType.StoredProcedure, "proc_RoleMenu_GetAll", prams);
                while (dataReader.Read())
                {
                    Entity.RoleMenu entity = new Entity.RoleMenu();
                    //entity.RoleID = DataHelper.ParseToInt(dataReader["RoleID"].ToString());
                    //entity.MenuID = DataHelper.ParseToInt(dataReader["MenuID"].ToString());
                    list.Add(entity);
                }
            }
            catch (Exception ex)
            {
            }
            finally
            {
                db.Conn.Close();
            }
            return(list);
        }
Example #3
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="RoleID">    </param>
        /// <param name="MenuID">    </param>
        /// <returns></returns>
        public static int AddRoleMenu(Entity.RoleMenu roleMenu)
        {
            int            iReturn = 0;
            int            i       = 0;
            DBOperatorBase db      = new DataBase();

            IDBTypeElementFactory dbFactory = db.GetDBTypeElementFactory();
            SqlTransactionHelper  thelper   = new SqlTransactionHelper(Config.con);
            IDbTransaction        trans     = thelper.StartTransaction();

            try
            {
                IDbDataParameter[] prams =
                {
                    dbFactory.MakeInParam("@RoleName",    DBTypeConverter.ConvertCsTypeToOriginDBType(roleMenu.role.RoleName.GetType().ToString()),    roleMenu.role.RoleName,    20),
                    dbFactory.MakeInParam("@Description", DBTypeConverter.ConvertCsTypeToOriginDBType(roleMenu.role.Description.GetType().ToString()), roleMenu.role.Description,  0),
                    //dbFactory.MakeInParam("@IsAudit",	DBTypeConverter.ConvertCsTypeToOriginDBType(roleMenu.role.IsAudit.GetType().ToString()),roleMenu.role.IsAudit,4),
                    dbFactory.MakeOutReturnParam()
                };
                iReturn = db.ExecuteNonQueryTrans(trans, CommandType.StoredProcedure, "proc_Role_Add", prams);
                i       = int.Parse(prams[2].Value.ToString());

                if (i > 0)
                {
                    roleMenu.role.ID = i;
                }
                if (i == 0)
                {
                    return(0);
                }
                for (int s = 0; s < roleMenu.menuList.Count; s++)
                {
                    iReturn = db.ExecuteNonQueryTrans(trans, CommandType.Text, "Insert into [RoleMenu]([RoleID],[MenuID]) values ('" + roleMenu.role.ID + "','" + roleMenu.menuList[s].ID + "')", null);
                }

                thelper.CommitTransaction(trans);
                iReturn = 1;
            }
            catch (Exception ex)
            {
                thelper.RollTransaction(trans);
                iReturn = 0;
            }
            finally
            {
                db.Conn.Close();
            }
            return(iReturn);
        }
Example #4
0
 private void LoadData(string sId)
 {
     if (!string.IsNullOrEmpty(sId))
     {
         StringBuilder   sb       = new StringBuilder();
         Entity.RoleMenu rolemenu = DAL.RoleMenu.GetRoleMenu(sId);
         txt_RoleName.Text    = rolemenu.role.RoleName;
         txt_Description.Text = rolemenu.role.Description;
         foreach (Entity.Menu menu in rolemenu.menuList)
         {
             int             menuID = menu.ID;
             FineUI.TreeNode tn     = Tree2.FindNode(menuID.ToString());
             tn.Checked = true;
             sb.Append(menuID.ToString() + ",");
         }
         old = sb.ToString().Substring(0, sb.Length - 1);
     }
 }
Example #5
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="RoleID">    </param>
        /// <param name="MenuID">    </param>
        /// <returns></returns>
        public static int UpdateRoleMenu(Entity.RoleMenu roleMenu)
        {
            int            iReturn = 0;
            int            i       = 0;
            DBOperatorBase db      = new DataBase();

            IDBTypeElementFactory dbFactory = db.GetDBTypeElementFactory();
            SqlTransactionHelper  thelper   = new SqlTransactionHelper(Config.con);
            IDbTransaction        trans     = thelper.StartTransaction();

            try
            {
                //iReturn = db.ExecuteNonQueryTrans(trans, CommandType.Text, "Update	[Role] set RoleName='" + roleMenu.role.RoleName + "',Description='" + roleMenu.role.Description + "',IsAudit='" + roleMenu.role.IsAudit + "'where ID='" + roleMenu.role.ID + "'", null);

                for (int s = 0; s < roleMenu.NewAdd.Count; s++)
                {
                    iReturn = db.ExecuteNonQueryTrans(trans, CommandType.Text, "Insert into [RoleMenu]([RoleID],[MenuID]) values ('" + roleMenu.role.ID + "','" + roleMenu.NewAdd[s].ToString() + "')", null);
                }
                for (int t = 0; t < roleMenu.Delete.Count; t++)
                {
                    iReturn = db.ExecuteNonQueryTrans(trans, CommandType.Text, "Delete from [RoleMenu] where RoleID='" + roleMenu.role.ID + "' and MenuID='" + roleMenu.Delete[t].ToString() + "'", null);
                }

                thelper.CommitTransaction(trans);
                iReturn = 1;
            }
            catch (Exception ex)
            {
                thelper.RollTransaction(trans);
                iReturn = 0;
            }
            finally
            {
                db.Conn.Close();
            }
            return(iReturn);
        }
Example #6
0
        protected void btn_save_Click(object sender, EventArgs e)
        {
            if (string.IsNullOrEmpty(sGuid))
            {
                //Add
                Entity.RoleMenu roleMenu = new Entity.RoleMenu();
                roleMenu.role.RoleName    = txt_RoleName.Text;
                roleMenu.role.Description = txt_Description.Text;
                string[] checkmenus = Tree2.GetCheckedNodeIDs();
                foreach (string checkID in checkmenus)
                {
                    Entity.Menu menu = new Entity.Menu();
                    menu.ID = int.Parse(checkID.ToString());
                    roleMenu.menuList.Add(menu);
                }

                int success = DAL.RoleMenu.AddRoleMenu(roleMenu);
                if (success == 1)
                {
                    Alert.ShowInTop(" 保存成功!", MessageBoxIcon.Information);
                    PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
                }
                else
                {
                    Alert.ShowInTop("保存失败!", MessageBoxIcon.Warning);
                }
            }
            else
            {
                //Update
                Entity.RoleMenu roleMenu = new Entity.RoleMenu();
                roleMenu.role.ID          = int.Parse(sGuid);
                roleMenu.role.RoleName    = txt_RoleName.Text;
                roleMenu.role.Description = txt_Description.Text;
                string[] checkmenus = Tree2.GetCheckedNodeIDs();

                int[] check = new int[checkmenus.Length];
                for (int i = 0; i < checkmenus.Length; i++)
                {
                    check[i] = int.Parse(checkmenus[i]);
                }



                StringBuilder   sb       = new StringBuilder();
                Entity.RoleMenu rolemenu = DAL.RoleMenu.GetRoleMenu(sGuid);
                txt_RoleName.Text    = rolemenu.role.RoleName;
                txt_Description.Text = rolemenu.role.Description;
                foreach (Entity.Menu menu in rolemenu.menuList)
                {
                    int             menuID = menu.ID;
                    FineUI.TreeNode tn     = Tree2.FindNode(menuID.ToString());
                    tn.Checked = true;
                    sb.Append(menuID.ToString() + ",");
                }
                old = sb.ToString().Substring(0, sb.Length - 1);
                string[] oldIds = old.Split(',');
                int[]    oldid  = new int[oldIds.Length];
                for (int s = 0; s < oldIds.Length; s++)
                {
                    oldid[s] = int.Parse(oldIds[s]);
                }

                List <int> Checked = new List <int>();
                for (int i = 0; i < checkmenus.Length; i++)
                {
                    Checked.Add(int.Parse(checkmenus[i]));
                }
                List <int> OldID = new List <int>();
                for (int i = 0; i < oldIds.Length; i++)
                {
                    OldID.Add(int.Parse(oldIds[i]));
                }
                List <int> Delete = ListHelper.ExceptList(OldID, Checked);
                List <int> Add    = ListHelper.ExceptList(Checked, OldID);
                foreach (int a in Delete)
                {
                    roleMenu.Delete.Add(a.ToString());
                }
                foreach (int b in Add)
                {
                    roleMenu.NewAdd.Add(b.ToString());
                }
                //var c = oldid.Intersect(check);
                //var d = oldid.Except(check);
                //var f = check.Except(oldid);
                //foreach (var q in d)
                //{
                //    roleMenu.Delete.Add(q.ToString());
                //}
                //foreach (var w in f)
                //{
                //    roleMenu.NewAdd.Add(w.ToString());
                //}
                int success = DAL.RoleMenu.UpdateRoleMenu(roleMenu);
                if (success == 1)
                {
                    Alert.ShowInTop(" 修改成功!", MessageBoxIcon.Information);
                    PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
                }
                else
                {
                    Alert.ShowInTop("修改失败!", MessageBoxIcon.Warning);
                }
            }
        }