| | |
| | | |
| | | |
| | | |
| | | #region 用户菜单快捷方式自定义 |
| | | |
| | | #region 获取用户快捷方式选择菜单 |
| | | |
| | | //快捷方式自定义菜单:获取树组件数据 |
| | | [Route("Web/Xt_UserFastMenu_Display")] |
| | | [HttpGet] |
| | | public object Xt_UserFastMenu_Display(string HMakeName) |
| | | { |
| | | try |
| | | { |
| | | //获取构建树状结构的数据 |
| | | List<MenuInit> menuInitList = new List<MenuInit>(); //用以获取Gy_Menu_1中的所有菜单信息,以及对应节点是否被选中需要加载显示 |
| | | |
| | | SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); |
| | | ds = oCn.RunProcReturn("Select * from Gy_Menu_1 Order by HItemID ", "Gy_Menu"); //获取Gy_Menu_1中的所有菜单信息,用于为menuInitList列表充实数据 |
| | | |
| | | DataSet ds1 = new DataSet(); |
| | | for (int i = 0; i < ds.Tables[0].Rows.Count; i++) //将Gy_Menu_1中的菜单信息及选中情况保存到menuInitList列表中, |
| | | { |
| | | //填充基本数据 |
| | | MenuInit menuInit = new MenuInit(); |
| | | menuInit.HitemID = ds.Tables[0].Rows[i]["HItemID"].ToString(); |
| | | menuInit.HPartentID = ds.Tables[0].Rows[i]["HPartentID"].ToString(); |
| | | menuInit.HNumber = ds.Tables[0].Rows[i]["HNumber"].ToString(); |
| | | menuInit.HName = ds.Tables[0].Rows[i]["HName"].ToString(); |
| | | menuInit.HLevel = int.Parse(ds.Tables[0].Rows[i]["HLevel"].ToString()); |
| | | menuInit.Hurl = ds.Tables[0].Rows[i]["Hurl"].ToString(); |
| | | menuInit.HType = ds.Tables[0].Rows[i]["HType"].ToString(); |
| | | menuInit.HSelected = false; |
| | | |
| | | //判断用户是否选中显示该菜单 |
| | | String sql = "Select * from Xt_UserFastMenu where HSubFuncID = '" + ds.Tables[0].Rows[i]["HItemID"] + "' and HUserID='" + HMakeName + "'"; |
| | | ds1 = oCn.RunProcReturn(sql, "Xt_UserFastMenu"); |
| | | if (ds1.Tables[0].Rows.Count > 0) //对于Gy_Menu_1表中的菜单节点,通过检索在Gy_MenuDefineSet表中对应用户是否存在该节点的信息,判断该用户是否选中该节点需要加载显示在侧菜单栏 |
| | | { |
| | | menuInit.HSelected = true; |
| | | } |
| | | menuInitList.Add(menuInit); //将Gy_Menu_1表中的菜单节点信息逐一添加到menuInitList列表中 |
| | | } |
| | | |
| | | |
| | | //存储树状结构的数据 |
| | | List<MenuDefineList> tree = new List<MenuDefineList>(); //用以获取菜单清单在layui中树组件渲染参数option中data值值的参数 |
| | | for (int i = 0; i < menuInitList.Count; i++) //获取菜单清单中的根节点的渲染数据 |
| | | { |
| | | if (menuInitList[i].HPartentID == "0" || menuInitList[i].HitemID == menuInitList[i].HPartentID) //判断是否是根节点 |
| | | { |
| | | MenuDefineList define = new MenuDefineList(); |
| | | define.id = menuInitList[i].HitemID; |
| | | define.field = menuInitList[i].HitemID; |
| | | define.title = menuInitList[i].HName; |
| | | define.spread = false; |
| | | define.selected = false; |
| | | if (menuInitList[i].HSelected == true) |
| | | { |
| | | define.selected = true; |
| | | } |
| | | tree.Add(define); |
| | | } |
| | | } |
| | | |
| | | MenuDefineResult res = new MenuDefineResult(); |
| | | res.dt = menuInitList; |
| | | res.tree = tree; |
| | | |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "查询成功!"; |
| | | objJsonResult.data = res; |
| | | return objJsonResult; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "查询失败!"; |
| | | objJsonResult.data = e.ToString(); |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | #region 保存用户快捷方式选择菜单 |
| | | |
| | | //保存用户快捷方式选择菜单 |
| | | [Route("Web/Xt_UserFastMenu_Save")] |
| | | [HttpPost] |
| | | public object Xt_UserFastMenu_Save([FromBody] JObject sMainSub) |
| | | { |
| | | try |
| | | { |
| | | //获取传参的自定义数据 |
| | | var _value = sMainSub["sMainSub"].ToString(); |
| | | string msg = _value.ToString(); |
| | | string[] sArray = msg.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); |
| | | string HMakeName = sArray[1].ToString(); |
| | | string saveData = sArray[0].ToString(); |
| | | List<SaveDefineMenu> saveDataList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<SaveDefineMenu>>(saveData); |
| | | |
| | | //声明数据库操作工具 |
| | | SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); |
| | | |
| | | //设置数据库操作的回滚点,若在提交前报错,则回滚到该点,期间操作取消 |
| | | oCN.BeginTran(); |
| | | |
| | | //删除当前用户的自定义数据 |
| | | string sql = "delete from Xt_UserFastMenu where HUserID = '" + HMakeName + "'"; |
| | | oCN.RunProc(sql); |
| | | |
| | | //插入当前用户最新的自定义数据 |
| | | for (int i = 0; i < saveDataList.Count; i++) |
| | | { |
| | | sql = "select * from Gy_Menu_1 where HPartentID = '" + saveDataList[i].HItemID + "'"; |
| | | ds = oCn.RunProcReturn(sql, "Gy_Menu_1"); |
| | | if (ds.Tables[0].Rows.Count == 0) //判断该节点是否为最下级节点,即不存在子节点 |
| | | { |
| | | sql = "select * from Gy_Menu_1 where HItemID = '" + saveDataList[i].HItemID + "'"; |
| | | ds = oCn.RunProcReturn(sql, "Gy_Menu_1"); |
| | | if (ds.Tables[0].Rows.Count > 0) |
| | | { |
| | | string HUserID = HMakeName; |
| | | string HSubFuncID = ds.Tables[0].Rows[0]["HItemID"].ToString(); |
| | | string HCaption = ds.Tables[0].Rows[0]["HName"].ToString(); |
| | | |
| | | sql = "insert into Xt_UserFastMenu(HUserID,HSubFuncID,HCaption) values('" + HUserID + "','" + HSubFuncID + "','" + HCaption + "')"; |
| | | oCN.RunProc(sql); |
| | | } |
| | | } |
| | | } |
| | | //提交数据库操作 |
| | | oCN.Commit(); |
| | | |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "保存成功!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "查询失败!"; |
| | | objJsonResult.data = e.ToString(); |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | #region 加载console.html页面的快捷方式 |
| | | //快捷方式自定义菜单:获取树组件数据 |
| | | [Route("Web/Xt_UserFastMenu_Init")] |
| | | [HttpGet] |
| | | public object Xt_UserFastMenu_Init(string HMakeName) |
| | | { |
| | | try |
| | | { |
| | | SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); |
| | | string sql = "select a.HSubFuncID, a.HCaption,a.HPicNum,b.Hurl from Xt_UserFastMenu as a join Gy_Menu_1 as b on a.HSubFuncID = b.HItemID where a.HUserID = '" + HMakeName + "' Order by a.HItemID"; |
| | | ds = oCn.RunProcReturn(sql, "Xt_UserFastMenu"); //获取Xt_UserFastMenu中该用户设置的自定义菜单信息,用于在前端加载 |
| | | |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "查询成功!"; |
| | | objJsonResult.data = ds.Tables[0]; |
| | | return objJsonResult; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "查询失败!"; |
| | | objJsonResult.data = e.ToString(); |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | #endregion |
| | | #endregion |
| | | |
| | | |
| | | |
| | | |