From a8ed3d24ba97b9ee93de0f15fb15b46a9850b2fc Mon Sep 17 00:00:00 2001
From: lg <999544862qq.com>
Date: 星期二, 17 九月 2024 16:58:39 +0800
Subject: [PATCH] 基础资料
---
DevApp/Gs.DevApp/UserControl/ToolBarMenu.cs | 265 ++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 262 insertions(+), 3 deletions(-)
diff --git a/DevApp/Gs.DevApp/UserControl/ToolBarMenu.cs b/DevApp/Gs.DevApp/UserControl/ToolBarMenu.cs
index 0ad94a6..9fc2707 100644
--- a/DevApp/Gs.DevApp/UserControl/ToolBarMenu.cs
+++ b/DevApp/Gs.DevApp/UserControl/ToolBarMenu.cs
@@ -1,12 +1,20 @@
-锘縰sing DevExpress.XtraEditors;
+锘縰sing DevExpress.XtraBars;
+using DevExpress.XtraEditors;
+using Gs.DevApp.Entity;
using Gs.DevApp.ToolBox;
+using Newtonsoft.Json;
using System;
-
+using System.Collections.Generic;
+using System.Data;
+using System.Linq;
+using System.Windows.Forms;
namespace Gs.DevApp.UserControl
{
public partial class ToolBarMenu : DevExpress.XtraEditors.XtraUserControl
{
+ public bool isSetBtn { get; set; }
+ public List<string> actions { get; }
/// <summary>
/// 鏂板
/// </summary>
@@ -33,9 +41,29 @@
public event EventHandler btnSaveClick;
/// <summary>
+ /// 鍙栨秷
+ /// </summary>
+ public event EventHandler btnEscClick;
+
+ /// <summary>
/// 寮�宸�
/// </summary>
public event EventHandler btnKGClick;
+
+ /// <summary>
+ /// 鏉冮檺
+ /// </summary>
+ public event EventHandler btnRoleClick;
+
+ /// <summary>
+ /// 鏉冮檺
+ /// </summary>
+ public event EventHandler btnReportClick;
+
+ /// <summary>
+ /// 鏉冮檺
+ /// </summary>
+ public event EventHandler btnQueryClick;
public ToolBarMenu()
@@ -47,6 +75,79 @@
this.btnLoad.ItemClick += BtnLoad_ItemClick;
this.btnSave.ItemClick += BtnSave_ItemClick;
this.btnKG.ItemClick += BtnKG_ItemClick;
+ this.btnEsc.ItemClick += BtnEsc_ItemClick;
+ this.btnRole.ItemClick += BtnRole_ItemClick;
+ this.btnReport.ItemClick += BtnReport_ItemClick;
+ this.btnQuery.ItemClick += BtnQuery_ItemClick;
+ List<string> lst = new List<string>();
+ foreach (BarItem item in barManager1.Items)
+ {
+ if (item is BarLargeButtonItem largeButtonItem)
+ {
+ if (!string.IsNullOrEmpty(item.Caption))
+ lst.Add(item.Caption);
+ }
+ }
+ this.actions = lst;
+ //鍒濆鍖栨寜閽姸鎬�
+ // initialization();
+ }
+
+ private void BtnQuery_ItemClick(object sender, ItemClickEventArgs e)
+ {
+ if (btnQueryClick != null)
+ {
+ btnQueryClick(this, e);
+ }
+ }
+
+ private void BtnReport_ItemClick(object sender, ItemClickEventArgs e)
+ {
+ if (btnReportClick != null)
+ {
+ btnReportClick(this, e);
+ }
+ }
+ /// <summary>
+ /// 鍒濆鍖栨寜閽姸鎬�
+ /// </summary>
+ protected override void OnCreateControl()
+ {
+ base.OnCreateControl();
+ if (this.Parent != null)
+ {
+ getNamespace();
+ }
+ }
+ //private void initialization()
+ //{
+ // List<string> lst = new List<string>();
+ // //lst.Add(btnAdd.Name);
+ // //lst.Add(btnEdit.Name);
+ // //lst.Add(btnLoad.Name);
+ // //lst.Add(btnDel.Name);
+ // //lst.Add(btnRole.Name);
+ // //lst.Add(btnReport.Name);
+ // //lst.Add(btnQuery.Name);
+ // setBtn(lst);
+ //}
+
+ private void BtnEsc_ItemClick(object sender, ItemClickEventArgs e)
+ {
+ if (MsgHelper.AskQuestion("纭畾瑕佽鍙栨秷鍚�?"))
+ {
+ List<string> lst = new List<string>();
+ lst.Add(btnAdd.Name);
+ lst.Add(btnEdit.Name);
+ lst.Add(btnLoad.Name);
+ lst.Add(btnDel.Name);
+ lst.Add(btnRole.Name);
+ _enabledBtn(lst);
+ if (btnEscClick != null)
+ {
+ btnEscClick(this, e);
+ }
+ }
}
private void BtnKG_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
@@ -62,19 +163,37 @@
if (btnSaveClick != null)
{
btnSaveClick(this, e);
+ if (isSetBtn == true)
+ {
+ List<string> lst = new List<string>();
+ lst.Add(btnAdd.Name);
+ lst.Add(btnEdit.Name);
+ lst.Add(btnEsc.Name);
+ _enabledBtn(lst);
+ }
}
}
private void BtnLoad_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
+
if (btnLoadClick != null)
{
+ //List<string> lst = new List<string>();
+ //lst.Add(btnRole.Name);
+ //setBtn(lst);
btnLoadClick(this, e);
}
+
}
private void BtnEdit_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
+ List<string> lst = new List<string>();
+ lst.Add(btnSave.Name);
+ lst.Add(btnEsc.Name);
+
+ _enabledBtn(lst);
if (btnEdtClick != null)
{
btnEdtClick(this, e);
@@ -83,17 +202,157 @@
private void BtnDel_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
- if (btnDelClick != null) {
+ if (btnDelClick != null)
+ {
btnDelClick(this, e);
}
}
+ /// <summary>
+ ///
+ /// </summary>
+ /// <param name="sender"></param>
+ /// <param name="e"></param>
private void BtnAdd_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
+ List<string> lst = new List<string>();
+ lst.Add(btnSave.Name);
+ lst.Add(btnEsc.Name);
+ _enabledBtn(lst);
if (btnAddClick != null)
{
btnAddClick(this, e);
}
+
+ }
+
+ private void BtnRole_ItemClick(object sender, ItemClickEventArgs e)
+ {
+ //List<string> lst = new List<string>();
+ //lst.Add(btnSave.Name);
+ //lst.Add(btnEsc.Name);
+ //setBtn(lst);
+ if (btnRoleClick != null)
+ {
+ btnRoleClick(this, e);
+ }
+ }
+ private void _enabledBtn(List<string> lstBtn)
+ {
+ foreach (BarItem item in barManager1.Items)
+ {
+ if (item is BarLargeButtonItem largeButtonItem)
+ {
+ if (lstBtn.Contains(item.Name))
+ largeButtonItem.Enabled = true;
+ else
+ largeButtonItem.Enabled = false;
+ }
+ }
+ }
+
+ /// <summary>
+ /// 鏍规嵁鍛藉悕绌洪棿鍜屾潈闄愶紝璇诲彇璇ョ獥浣撲笅闈㈢殑鎸夐挳闆嗗悎
+ /// </summary>
+ private void getNamespace()
+ {
+ string _formNamespace = "";
+ Control parentControl = this;
+ while (parentControl.Parent != null)
+ {
+ if (parentControl.Parent is Form parentForm)
+ {
+ Type formType = parentForm.GetType();
+ _formNamespace = formType.FullName;
+ break;
+ }
+ parentControl = parentControl.Parent;
+ }
+ var _obj = new
+ {
+ userGuid = LoginInfoModel.CurrentUser.LoginUserGuid,
+ orgGuid = LoginInfoModel.CurrentUser.LoginOrgGuid,
+ formNamespace = _formNamespace,
+ };
+ string strReturn = "";
+ try
+ {
+ strReturn = UtilityHelper.HttpPost("", "MenuAction/GetListByUserOrgSpace", JsonConvert.SerializeObject(_obj));
+ ReturnModel<DataTable> dd = UtilityHelper.GetNoPageTableByJson(strReturn);
+ DataTable dt = dd.rtnData;
+ List<string> _enabledList = new List<string>();
+ foreach (BarItem item in barManager1.Items)
+ {
+ ///鍏锋湁鑱斿姩鍏崇郴鐨勬寜閽�(澧炲姞)锛�
+ if (item.Caption == "澧炲姞")
+ {
+ bool ld1 = dt.AsEnumerable().Any(row => row.Field<string>("name") == "澧炲姞"
+ //|| row.Field<string>("name") == "淇敼"
+ );
+ if (ld1 == true)
+ {
+ btnEsc.Visibility = btnSave.Visibility = btnLoad.Visibility = BarItemVisibility.Always;
+ btnAdd.Visibility = BarItemVisibility.Always;
+ _enabledList.Add(item.Name);
+ continue;
+ }
+ }
+ ///鍏锋湁鑱斿姩鍏崇郴鐨勬寜閽�(淇敼)锛�
+ if (item.Caption == "淇敼")
+ {
+ bool ld1 = dt.AsEnumerable().Any(row => row.Field<string>("name") == "淇敼"
+ );
+ if (ld1 == true)
+ {
+ btnEsc.Visibility = btnSave.Visibility = btnLoad.Visibility = BarItemVisibility.Always;
+ btnEdit.Visibility = BarItemVisibility.Always;
+ _enabledList.Add(item.Name);
+ continue;
+ }
+ }
+ ///鍏锋湁鑱斿姩鍏崇郴鐨勬寜閽�(鏌ヨ)锛�
+ bool ld2 = dt.AsEnumerable().Any(row => row.Field<string>("name") == "鏌ヨ"
+ );
+ if (ld2 == true)
+ {
+ if (item.Caption == "鍒锋柊")
+ {
+ item.Visibility = BarItemVisibility.Always;
+ //鍑嗗鍚敤
+ _enabledList.Add(item.Name);
+ continue;
+ }
+ }
+ //鎸夐挳鏄惁鍦ㄦ潈闄愯〃涓�
+ bool exists = dt.AsEnumerable().Any(row => row.Field<string>("name") == item.Caption);
+ if (exists == true)
+ {
+ item.Visibility = BarItemVisibility.Always;
+ //鍑嗗鍚敤
+ string _btnName = _FindBarLargeButtonItemByCaption(item.Caption);
+ if (!string.IsNullOrEmpty(_btnName))
+ _enabledList.Add(_btnName);
+ }
+ }
+ _enabledBtn(_enabledList);
+ }
+ catch (Exception ex)
+ {
+ ToolBox.MsgHelper.Warning("鎻愮ず锛�" + ex.Message);
+ }
+ }
+
+
+ private string _FindBarLargeButtonItemByCaption(string caption)
+ {
+ foreach (BarItem item in barManager1.Items)
+ {
+ if (item is BarLargeButtonItem largeButtonItem && largeButtonItem.Caption == caption)
+ {
+ return largeButtonItem.Name;
+ }
+ }
+ return null;
}
}
}
--
Gitblit v1.9.3