diff --git a/DataBase/版本日志/SGGLDB_WH_2023-05-10.sql b/DataBase/版本日志/SGGLDB_WH_2023-05-10.sql new file mode 100644 index 00000000..4d505060 --- /dev/null +++ b/DataBase/版本日志/SGGLDB_WH_2023-05-10.sql @@ -0,0 +1,6 @@ + INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed) + VALUES('D1FC6ACA-C789-401C-B9FB-3A96FFE4C8AC','ȱ','JDGL/CostAnalysis/JDReport.aspx',45,'0','Menu_JDGL',0,1,1) + GO + INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) + VALUES('43C643F5-93E4-40E3-A66B-C34D26CF454E','D1FC6ACA-C789-401C-B9FB-3A96FFE4C8AC','ѯ',1) + GO \ No newline at end of file diff --git a/DataBase/版本日志/SGGLDB_WH_2023-05-10版本日志.txt b/DataBase/版本日志/SGGLDB_WH_2023-05-10版本日志.txt new file mode 100644 index 00000000..f2d26cee --- /dev/null +++ b/DataBase/版本日志/SGGLDB_WH_2023-05-10版本日志.txt @@ -0,0 +1,3 @@ +--ADD BY GaoFei 2023-05-10 +1、增加进度报表 +--END \ No newline at end of file diff --git a/DataBase/菜单初始化脚本/1-4进度管理(Menu_JDGL).sql b/DataBase/菜单初始化脚本/1-4进度管理(Menu_JDGL).sql index e409f4f5..2368f3a8 100644 --- a/DataBase/菜单初始化脚本/1-4进度管理(Menu_JDGL).sql +++ b/DataBase/菜单初始化脚本/1-4进度管理(Menu_JDGL).sql @@ -40,6 +40,13 @@ go VALUES('DA8CC928-675F-4BF4-B684-87387629B339','59AAE0F0-2DB6-4065-B304-7E2C56EC3E5D','查询',1) GO + INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed) + VALUES('D1FC6ACA-C789-401C-B9FB-3A96FFE4C8AC','进度报表','JDGL/CostAnalysis/JDReport.aspx',45,'0','Menu_JDGL',0,1,1) + GO + INSERT INTO dbo.Sys_ButtonToMenu(ButtonToMenuId,MenuId,ButtonName,SortIndex) + VALUES('43C643F5-93E4-40E3-A66B-C34D26CF454E','D1FC6ACA-C789-401C-B9FB-3A96FFE4C8AC','查询',1) + GO + INSERT INTO dbo.Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed) VALUES('9CAF311E-C234-4DA4-B235-D4E478FBD80E','里程碑','JDGL/WBS/MilePost.aspx',50,'0','Menu_JDGL',0,1,1) GO diff --git a/SGGL/FineUIPro.Web/DataShow/HiddenRectification.aspx b/SGGL/FineUIPro.Web/DataShow/HiddenRectification.aspx index 5473a570..a1ecc9b5 100644 --- a/SGGL/FineUIPro.Web/DataShow/HiddenRectification.aspx +++ b/SGGL/FineUIPro.Web/DataShow/HiddenRectification.aspx @@ -36,8 +36,8 @@ - - + + diff --git a/SGGL/FineUIPro.Web/DataShow/HiddenRectificationItem.aspx b/SGGL/FineUIPro.Web/DataShow/HiddenRectificationItem.aspx index e1593bd4..e76686f5 100644 --- a/SGGL/FineUIPro.Web/DataShow/HiddenRectificationItem.aspx +++ b/SGGL/FineUIPro.Web/DataShow/HiddenRectificationItem.aspx @@ -37,8 +37,8 @@ - - + + diff --git a/SGGL/FineUIPro.Web/DataShow/HiddenRectificationItem.aspx.cs b/SGGL/FineUIPro.Web/DataShow/HiddenRectificationItem.aspx.cs index 95f7dd72..26f1fb16 100644 --- a/SGGL/FineUIPro.Web/DataShow/HiddenRectificationItem.aspx.cs +++ b/SGGL/FineUIPro.Web/DataShow/HiddenRectificationItem.aspx.cs @@ -156,18 +156,12 @@ namespace FineUIPro.Web.DataShow protected string ConvertImageUrlByImage(object registrationId) { string url = string.Empty; - string httpUrl = string.Empty; - var sysSet6 = (from x in Funs.DB.Sys_Set where x.SetName == "程序访问地址" select x).ToList().FirstOrDefault(); - if (sysSet6 != null) - { - httpUrl = sysSet6.SetValue; - } if (registrationId != null) { var registration = BLL.HSSE_Hazard_HazardRegisterService.GetHazardRegisterByHazardRegisterId(registrationId.ToString()); if (registration != null) { - url = BLL.UploadAttachmentService.ShowImage(httpUrl, registration.ImageUrl); + url = BLL.UploadAttachmentService.ShowImage("../", registration.ImageUrl); } } return url; @@ -182,18 +176,12 @@ namespace FineUIPro.Web.DataShow protected string ConvertImgUrlByImage(object registrationId) { string url = string.Empty; - string httpUrl = string.Empty; - var sysSet6 = (from x in Funs.DB.Sys_Set where x.SetName == "程序访问地址" select x).ToList().FirstOrDefault(); - if (sysSet6 != null) - { - httpUrl = sysSet6.SetValue; - } if (registrationId != null) { var registration = BLL.HSSE_Hazard_HazardRegisterService.GetHazardRegisterByHazardRegisterId(registrationId.ToString()); if (registration != null) { - url = BLL.UploadAttachmentService.ShowImage(httpUrl, registration.RectificationImageUrl); + url = BLL.UploadAttachmentService.ShowImage("../", registration.RectificationImageUrl); } } return url; diff --git a/SGGL/FineUIPro.Web/FineUIPro.Web.csproj b/SGGL/FineUIPro.Web/FineUIPro.Web.csproj index 67b920bd..1afaad89 100644 --- a/SGGL/FineUIPro.Web/FineUIPro.Web.csproj +++ b/SGGL/FineUIPro.Web/FineUIPro.Web.csproj @@ -1258,6 +1258,7 @@ + @@ -12873,6 +12874,13 @@ EarnedValueCurve.aspx + + JDReport.aspx + ASPXCodeBehind + + + JDReport.aspx + PlanAdjust.aspx ASPXCodeBehind diff --git a/SGGL/FineUIPro.Web/JDGL/CostAnalysis/JDReport.aspx b/SGGL/FineUIPro.Web/JDGL/CostAnalysis/JDReport.aspx new file mode 100644 index 00000000..5da96bcb --- /dev/null +++ b/SGGL/FineUIPro.Web/JDGL/CostAnalysis/JDReport.aspx @@ -0,0 +1,126 @@ +<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="JDReport.aspx.cs" Inherits="FineUIPro.Web.JDGL.CostAnalysis.JDReport" %> + +<%@ Register Src="~/Controls/ChartControl.ascx" TagName="ChartControl" TagPrefix="uc1" %> + + + + + + 进度报表 + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+
+
+
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+ + + + diff --git a/SGGL/FineUIPro.Web/JDGL/CostAnalysis/JDReport.aspx.cs b/SGGL/FineUIPro.Web/JDGL/CostAnalysis/JDReport.aspx.cs new file mode 100644 index 00000000..d44dd0df --- /dev/null +++ b/SGGL/FineUIPro.Web/JDGL/CostAnalysis/JDReport.aspx.cs @@ -0,0 +1,218 @@ +using System; +using System.Collections.Generic; +using System.Data; +using System.Data.SqlClient; +using System.Linq; +using System.Text; +using BLL; +using AspNet = System.Web.UI.WebControls; + +namespace FineUIPro.Web.JDGL.CostAnalysis +{ + public partial class JDReport : PageBase + { + #region 加载页面 + protected void Page_Load(object sender, EventArgs e) + { + if (!IsPostBack) + { + this.txtMonths.Text = string.Format("{0:yyyy-MM}", DateTime.Now); + GetValue(); + } + } + + private void SetEmpty() + { + this.SimpleForm1.Title = string.Empty; + txt2.Text = string.Empty; + txt3.Text = string.Empty; + txt4.Text = string.Empty; + txt5.Text = string.Empty; + } + #endregion + + #region 获取记录值 + private void GetValue() + { + BindChart(); + //Model.Information_SafetyBriefing report = Funs.DB.Information_SafetyBriefing.FirstOrDefault(e => e.UnitId == drpUnit.SelectedValue && e.Month == month && e.YearId == year); + //if (report != null) + //{ + // string upState = string.Empty; + // if (report.UpState == BLL.Const.UpState_3) + // { + // upState = "(已上报)"; + // } + // else + // { + // upState = "(未上报)"; + // } + // this.SimpleForm1.Title = "实业安全简报" + report.YearId + "年 " + report.Month + "月" + upState; + // lbUnitName.Text = "填报企业:" + BLL.UnitService.GetUnitNameByUnitId(report.UnitId); + // lbCompileMan.Text = "编制人:" + BLL.UserService.GetUserNameByUserId(report.CompileMan); + // lbAuditor.Text = "审核人:" + report.Auditor; + // lbApprover.Text = "审批人:" + report.Approver; + // this.txtMainWork.Text = report.MainWork; + // this.txtHazardRecording.Text = report.HazardRecording; + // this.txtSafetyAccident.Text = report.SafetyAccident; + // this.txtEPAccident.Text = report.EPAccident; + // this.txtOHAccident.Text = report.OHAccident; + // this.txtWorkPermitNum.Text = report.WorkPermitNum; + // this.txtHiddenDangerDetection.Text = report.HiddenDangerDetection; + // this.txtRectificationSituation.Text = report.RectificationSituation; + // this.txtCheckProblemsRectification.Text = report.CheckProblemsRectification; + // this.txtPendingProject.Text = report.PendingProject; + // this.txtContractorManagement.Text = report.ContractorManagement; + // this.txtEnvironmentalEmissions.Text = report.EnvironmentalEmissions; + // this.txtNextMonthWorkPlan.Text = report.NextMonthWorkPlan; + //} + //else + //{ + // SetEmpty(); + //} + } + #endregion + + #region 数据绑定 + /// + /// 数据绑定 + /// + private void BindChart() + { + Model.Project_Installation installation = BLL.Project_InstallationService.GetProjectInstallationByProjectId(this.CurrUser.LoginProjectId); + if (installation != null && !string.IsNullOrEmpty(this.txtMonths.Text.Trim())) + { + string id = installation.InstallationId; + string date = this.txtMonths.Text.Trim() + "-01"; + string strSql = "select distinct (cast(YEAR(Months) as varchar(4))+'.'+cast(MONTH(Months) as varchar(2))) as 月份,t.Months," + + "ThisRealCost as '本月已完工作实际费用-ACWP',ThisPlanCost as '本月已完工作预算费用-BCWP',ThisPlanValue as '本月计划工作预算费用-BCWS',TotalPlanValue as '累计计划工作预算费用-BCWS',TotalRealCost as '累计已完工作实际费用-ACWP',TotalPlanCost as '累计已完工作预算费用-BCWP' " + + "from dbo.View_WBS_CostControlParentDetail as t where ParentId=@Id and t.Months<=@Months order by t.Months"; + //string date = DateTime.Now.Year + "-" + DateTime.Now.Month + "-01"; + SqlParameter[] parameter = new SqlParameter[] + { + new SqlParameter("@Id",id), + new SqlParameter("@Months",date), + }; + DataTable dt = SQLHelper.GetDataTableRunText(strSql, parameter); + decimal lastbcws = 0, bcws = 0, lastacwp = 0, acwp = 0, lastbcwp = 0, bcwp = 0; + for (int i = 0; i < dt.Rows.Count; i++) + { + dt.Rows[i]["本月已完工作实际费用-ACWP"] = Funs.GetNewDecimalOrZero(dt.Rows[i]["本月已完工作实际费用-ACWP"].ToString()) / 10000; + dt.Rows[i]["本月已完工作预算费用-BCWP"] = Funs.GetNewDecimalOrZero(dt.Rows[i]["本月已完工作预算费用-BCWP"].ToString()) / 10000; + dt.Rows[i]["本月计划工作预算费用-BCWS"] = Funs.GetNewDecimalOrZero(dt.Rows[i]["本月计划工作预算费用-BCWS"].ToString()) / 10000; + bcws = Funs.GetNewDecimalOrZero(dt.Rows[i]["累计计划工作预算费用-BCWS"].ToString()); + acwp = Funs.GetNewDecimalOrZero(dt.Rows[i]["累计已完工作实际费用-ACWP"].ToString()); + bcwp = Funs.GetNewDecimalOrZero(dt.Rows[i]["累计已完工作预算费用-BCWP"].ToString()); + if (bcws == lastbcws) + { + if (Funs.GetNewDateTimeOrNow(dt.Rows[i]["Months"].ToString()) > DateTime.Now) + { + dt.Rows[i]["累计计划工作预算费用-BCWS"] = DBNull.Value; + } + else + { + dt.Rows[i]["累计计划工作预算费用-BCWS"] = bcws / 10000; + } + } + else + { + dt.Rows[i]["累计计划工作预算费用-BCWS"] = bcws / 10000; + } + if (acwp == lastacwp) + { + if (Funs.GetNewDateTimeOrNow(dt.Rows[i]["Months"].ToString()) > DateTime.Now) + { + dt.Rows[i]["累计已完工作实际费用-ACWP"] = DBNull.Value; + } + else + { + dt.Rows[i]["累计已完工作实际费用-ACWP"] = acwp / 10000; + } + } + else + { + dt.Rows[i]["累计已完工作实际费用-ACWP"] = acwp / 10000; + } + if (bcwp == lastbcwp) + { + if (Funs.GetNewDateTimeOrNow(dt.Rows[i]["Months"].ToString()) > DateTime.Now) + { + dt.Rows[i]["累计已完工作预算费用-BCWP"] = DBNull.Value; + } + else + { + dt.Rows[i]["累计已完工作预算费用-BCWP"] = bcwp / 10000; + } + } + else + { + dt.Rows[i]["累计已完工作预算费用-BCWP"] = bcwp / 10000; + } + lastbcws = bcws; + lastacwp = acwp; + lastbcwp = bcwp; + } + this.ChartEV.CreateMaryChart(dt, 1220, 420, null); + decimal BCWP = Funs.GetNewDecimalOrZero(dt.Rows[dt.Rows.Count - 1]["累计已完工作预算费用-BCWP"].ToString()); + decimal BCWS = Funs.GetNewDecimalOrZero(dt.Rows[dt.Rows.Count - 1]["累计计划工作预算费用-BCWS"].ToString()); + decimal ACWP = Funs.GetNewDecimalOrZero(dt.Rows[dt.Rows.Count - 1]["累计已完工作实际费用-ACWP"].ToString()); + decimal CV = BCWP - ACWP; + decimal SV = BCWP - BCWS; + decimal CPI = BCWP / ACWP; + decimal SPI = BCWP / BCWS; + this.txt2.Text = "总体施工进度赢得值参数:\r\nBCWP:" + BCWP.ToString("0.####") + "\r\nBCWS:" + BCWS.ToString("0.####") + "\r\nACWP:" + ACWP.ToString("0.####") + "\r\nCV:" + CV.ToString("0.####") + "\r\nSV:" + SV.ToString("0.####") + "\r\nCPI:" + CPI.ToString("0.####") + "\r\nSPI:" + SPI.ToString("0.####"); + + + + //BCWP、BCWS、ACWP + } + } + #endregion + + #region 查询 + /// + /// 查询按钮 + /// + /// + /// + protected void btnSearch_Click(object sender, EventArgs e) + { + GetValue(); + } + #endregion + + #region 关闭弹出窗口 + /// + /// 关闭窗口 + /// + /// + /// + protected void Window1_Close(object sender, WindowCloseEventArgs e) + { + GetValue(); + } + #endregion + + #region 导出按钮 + /// 导出按钮 + /// + /// + /// + protected void btnOut_Click(object sender, EventArgs e) + { + //Response.ClearContent(); + //string filename = Funs.GetNewFileName(); + //Response.AddHeader("content-disposition", "attachment; filename=" + System.Web.HttpUtility.UrlEncode("工作量统计" + filename, System.Text.Encoding.UTF8) + ".xls"); + //Response.ContentType = "application/excel"; + //Response.ContentEncoding = Encoding.UTF8; + //this.Grid1.PageSize = Grid1.RecordCount; + //Response.Write(GetGridTableHtml2(Grid1)); + //Response.End(); + //DateTime months = Convert.ToDateTime(this.txtMonths.Text.Trim()); + //DataTable table = BLL.WorkloadStatisticsService.GetTreeDataTable(this.CurrUser.LoginProjectId, months, BLL.Const._Null, this.drpCnProfession.SelectedValue, this.drpUnitProject.SelectedValue, this.drpWbsSet.SelectedValue); + //Grid1.DataSource = table; + //Grid1.DataBind(); + } + #endregion + } +} \ No newline at end of file diff --git a/SGGL/FineUIPro.Web/JDGL/CostAnalysis/JDReport.aspx.designer.cs b/SGGL/FineUIPro.Web/JDGL/CostAnalysis/JDReport.aspx.designer.cs new file mode 100644 index 00000000..184428e5 --- /dev/null +++ b/SGGL/FineUIPro.Web/JDGL/CostAnalysis/JDReport.aspx.designer.cs @@ -0,0 +1,258 @@ +//------------------------------------------------------------------------------ +// <自动生成> +// 此代码由工具生成。 +// +// 对此文件的更改可能导致不正确的行为,如果 +// 重新生成代码,则所做更改将丢失。 +// +//------------------------------------------------------------------------------ + +namespace FineUIPro.Web.JDGL.CostAnalysis { + + + public partial class JDReport { + + /// + /// form1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::System.Web.UI.HtmlControls.HtmlForm form1; + + /// + /// PageManager1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.PageManager PageManager1; + + /// + /// RegionPanel1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.RegionPanel RegionPanel1; + + /// + /// Region2 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Region Region2; + + /// + /// SimpleForm1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form SimpleForm1; + + /// + /// Toolbar1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Toolbar Toolbar1; + + /// + /// txtMonths 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.DatePicker txtMonths; + + /// + /// btnSearch 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Button btnSearch; + + /// + /// btnOut 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Button btnOut; + + /// + /// ToolbarFill1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.ToolbarFill ToolbarFill1; + + /// + /// GroupPanel1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.GroupPanel GroupPanel1; + + /// + /// Form4 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form4; + + /// + /// cpEV 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.ContentPanel cpEV; + + /// + /// ChartEV 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::Web.Controls.ChartControl ChartEV; + + /// + /// GroupPanel2 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.GroupPanel GroupPanel2; + + /// + /// Form3 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form3; + + /// + /// txt2 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextArea txt2; + + /// + /// GroupPanel3 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.GroupPanel GroupPanel3; + + /// + /// Form2 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form2; + + /// + /// txt3 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextArea txt3; + + /// + /// GroupPanel4 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.GroupPanel GroupPanel4; + + /// + /// Form6 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form6; + + /// + /// txt4 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextArea txt4; + + /// + /// GroupPanel5 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.GroupPanel GroupPanel5; + + /// + /// Form5 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Form Form5; + + /// + /// txt5 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.TextArea txt5; + + /// + /// Window1 控件。 + /// + /// + /// 自动生成的字段。 + /// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。 + /// + protected global::FineUIPro.Window Window1; + } +} diff --git a/SGGL/FineUIPro.Web/common/Menu_JDGL.xml b/SGGL/FineUIPro.Web/common/Menu_JDGL.xml index 87cdad13..67343f61 100644 --- a/SGGL/FineUIPro.Web/common/Menu_JDGL.xml +++ b/SGGL/FineUIPro.Web/common/Menu_JDGL.xml @@ -5,6 +5,7 @@ +