From 5ac9cee30c72cb12d7a20f56a4b5e027921c2ecd Mon Sep 17 00:00:00 2001 From: gaofei <181547018@qq.com> Date: Tue, 6 Dec 2022 15:36:37 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=A1=B9=E7=9B=AE=E7=BA=A7?= =?UTF-8?q?=E5=8F=8A=E8=BF=9B=E5=BA=A6=E9=A6=96=E9=A1=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- SGGL/FineUIPro.Web/JDGL/WBS/WBSSet.aspx.cs | 2 +- SGGL/FineUIPro.Web/common/mainMenu_JDGL.aspx | 4 +- .../common/mainMenu_JDGL.aspx.cs | 3 + SGGL/FineUIPro.Web/common/mainProject.aspx | 95 +++++-------- SGGL/FineUIPro.Web/common/mainProject.aspx.cs | 134 ++++++++++++++---- 5 files changed, 151 insertions(+), 87 deletions(-) diff --git a/SGGL/FineUIPro.Web/JDGL/WBS/WBSSet.aspx.cs b/SGGL/FineUIPro.Web/JDGL/WBS/WBSSet.aspx.cs index bbfbc195..54fd8d0b 100644 --- a/SGGL/FineUIPro.Web/JDGL/WBS/WBSSet.aspx.cs +++ b/SGGL/FineUIPro.Web/JDGL/WBS/WBSSet.aspx.cs @@ -313,7 +313,7 @@ namespace FineUIPro.Web.JDGL.WBS if (list.Count == 0) { operating = "add"; - string openUrl = String.Format("CostControlInitEdit.aspx?operating=add&Id={0}", trWBS.SelectedNodeID, "增加 - "); + string openUrl = String.Format("CostControlEdit.aspx?operating=add&Id={0}", trWBS.SelectedNodeID, "增加 - "); PageContext.RegisterStartupScript(Window3.GetShowReference(openUrl)); } else diff --git a/SGGL/FineUIPro.Web/common/mainMenu_JDGL.aspx b/SGGL/FineUIPro.Web/common/mainMenu_JDGL.aspx index 053d27bb..cb5f974f 100644 --- a/SGGL/FineUIPro.Web/common/mainMenu_JDGL.aspx +++ b/SGGL/FineUIPro.Web/common/mainMenu_JDGL.aspx @@ -140,7 +140,7 @@
进度统计
-
+
@@ -150,7 +150,7 @@
赢得值曲线
-
+
diff --git a/SGGL/FineUIPro.Web/common/mainMenu_JDGL.aspx.cs b/SGGL/FineUIPro.Web/common/mainMenu_JDGL.aspx.cs index b80a9b0a..e33cf51b 100644 --- a/SGGL/FineUIPro.Web/common/mainMenu_JDGL.aspx.cs +++ b/SGGL/FineUIPro.Web/common/mainMenu_JDGL.aspx.cs @@ -31,6 +31,9 @@ namespace FineUIPro.Web result = Convert.ToDouble(views[0].TotalRealNum); } return JsonConvert.SerializeObject(result); + //double totalCost = from x in Funs.DB.WBS_CostControl where x.ProjectId == this.CurrUser.LoginProjectId && x.is select x; + + } } diff --git a/SGGL/FineUIPro.Web/common/mainProject.aspx b/SGGL/FineUIPro.Web/common/mainProject.aspx index b101e8d1..e7ce5fc4 100644 --- a/SGGL/FineUIPro.Web/common/mainProject.aspx +++ b/SGGL/FineUIPro.Web/common/mainProject.aspx @@ -243,7 +243,7 @@ padding-left: 2em;
-
施工进度曲线
+
赢得值曲线
更多
@@ -499,13 +499,13 @@ padding-left: 2em; @@ -919,7 +896,7 @@ padding-left: 2em; }) $(".js-more-2").click(function () { - window.open("../JDGL/Check/ProgressCompletion.aspx"); + window.open("../common/mainMenu_JDGL.aspx"); }) $(".js-more-3").click(function () { diff --git a/SGGL/FineUIPro.Web/common/mainProject.aspx.cs b/SGGL/FineUIPro.Web/common/mainProject.aspx.cs index a9d1e4b6..72241f58 100644 --- a/SGGL/FineUIPro.Web/common/mainProject.aspx.cs +++ b/SGGL/FineUIPro.Web/common/mainProject.aspx.cs @@ -5,6 +5,8 @@ using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; +using System.Data; +using System.Data.SqlClient; using BLL; namespace FineUIPro.Web.common @@ -127,33 +129,115 @@ namespace FineUIPro.Web.common Model.BusinessColumn businessColumn = new Model.BusinessColumn(); List listCategories = new List(); businessColumn.title = "赢得值曲线"; - var views = (from x in Funs.DB.View_JDGL_ProgressCompletion where x.ProjectId == this.CurrUser.LoginProjectId orderby x.Months select x).ToList(); - Model.SingleSerie s = new Model.SingleSerie(); - Model.SingleSerie s2 = new Model.SingleSerie(); - Model.SingleSerie s3 = new Model.SingleSerie(); - Model.SingleSerie s4 = new Model.SingleSerie(); - List listdata = new List(); - List listdata2 = new List(); - List listdata3 = new List(); - List listdata4 = new List(); - for (int i = 0; i < views.Count; i++) + Model.Project_Installation installation = BLL.Project_InstallationService.GetProjectInstallationByProjectId(this.CurrUser.LoginProjectId); + if (installation != null) { - listCategories.Add(views[i].MonthStr); - listdata.Add(Convert.ToDouble(views[i].PlanNum)); - listdata2.Add(Convert.ToDouble(views[i].TotalPlanNum)); - listdata3.Add(Convert.ToDouble(views[i].RealNum)); - listdata4.Add(Convert.ToDouble(views[i].TotalRealNum)); + Model.SingleSerie s = new Model.SingleSerie(); + Model.SingleSerie s2 = new Model.SingleSerie(); + Model.SingleSerie s3 = new Model.SingleSerie(); + Model.SingleSerie s4 = new Model.SingleSerie(); + Model.SingleSerie s5 = new Model.SingleSerie(); + Model.SingleSerie s6 = new Model.SingleSerie(); + List listdata = new List(); + List listdata2 = new List(); + List listdata3 = new List(); + List listdata4 = new List(); + List listdata5 = new List(); + List listdata6 = new List(); + 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 order by t.Months"; + //string date = DateTime.Now.Year + "-" + DateTime.Now.Month + "-01"; + SqlParameter[] parameter = new SqlParameter[] + { + new SqlParameter("@Id",installation.InstallationId), + //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"] = 0; + } + 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"] = 0; + } + 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"] = 0; + } + else + { + dt.Rows[i]["累计已完工作预算费用-BCWP"] = bcwp / 10000; + } + } + else + { + dt.Rows[i]["累计已完工作预算费用-BCWP"] = bcwp / 10000; + } + lastbcws = bcws; + lastacwp = acwp; + lastbcwp = bcwp; + + listCategories.Add(dt.Rows[i]["月份"].ToString()); + if (Funs.GetNewDateTimeOrNow(dt.Rows[i]["Months"].ToString()) <= DateTime.Now) + { + listdata.Add(Convert.ToDouble(dt.Rows[i]["本月计划工作预算费用-BCWS"])); + listdata2.Add(Convert.ToDouble(dt.Rows[i]["累计计划工作预算费用-BCWS"])); + listdata3.Add(Convert.ToDouble(dt.Rows[i]["本月已完工作预算费用-BCWP"])); + listdata4.Add(Convert.ToDouble(dt.Rows[i]["累计已完工作预算费用-BCWP"])); + listdata5.Add(Convert.ToDouble(dt.Rows[i]["本月已完工作实际费用-ACWP"])); + listdata6.Add(Convert.ToDouble(dt.Rows[i]["累计已完工作实际费用-ACWP"])); + } + } + s.data = listdata; + s2.data = listdata2; + s3.data = listdata3; + s4.data = listdata4; + s5.data = listdata5; + s6.data = listdata6; + series.Add(s); + series.Add(s2); + series.Add(s3); + series.Add(s4); + series.Add(s5); + series.Add(s6); + businessColumn.categories = listCategories; + businessColumn.series = series; } - s.data = listdata; - s2.data = listdata2; - s3.data = listdata3; - s4.data = listdata4; - series.Add(s); - series.Add(s2); - series.Add(s3); - series.Add(s4); - businessColumn.categories = listCategories; - businessColumn.series = series; return JsonConvert.SerializeObject(businessColumn); } }