diff --git a/EProject/FineUIPro.Web/common/Main.aspx.cs b/EProject/FineUIPro.Web/common/Main.aspx.cs index 7feb9ea..c78e87f 100644 --- a/EProject/FineUIPro.Web/common/Main.aspx.cs +++ b/EProject/FineUIPro.Web/common/Main.aspx.cs @@ -1107,37 +1107,30 @@ namespace FineUIPro.Web.common //Cost 成本 System.Web.UI.WebControls.Image imgCost = (System.Web.UI.WebControls.Image)this.Grid1.Rows[i].FindControl("imgCost"); double s = 0; - //获取项目的最新成本 - var costManage = BLL.CostReportService.GetMaxMonthCostReportByEprojectId(eprojectId); - if (costManage != null) + + decimal? orginalBudget = eproject.ProjectControl_OrginalBudget.HasValue ? eproject.ProjectControl_OrginalBudget : 0;//原始的预算 + decimal? changedBudget = eproject.ProjectControl_ChangedBudget.HasValue ? eproject.ProjectControl_ChangedBudget : 0;//变更的预算 + decimal? actualCost = eproject.ProjectControl_Actual.HasValue ? eproject.ProjectControl_Actual : 0;//实际的成本 + decimal? committedPRPO = eproject.ProjectControl_CommittedPRPO.HasValue ? eproject.ProjectControl_CommittedPRPO : 0;//承诺的PR或PO成本 + decimal? committedSSRs = eproject.ProjectControl_CommittedSSRs.HasValue ? eproject.ProjectControl_CommittedSSRs : 0; //承诺的SSR成本 + decimal? costToComplete = eproject.PM_General_CostToComplete.HasValue ? eproject.PM_General_CostToComplete : 0; //预估的完工任需成本 + decimal? rmb = actualCost + committedPRPO + committedSSRs + costToComplete;//预估的最终成本=实际的成本+承诺的PR或PO成本+承诺的SSR成本+预估的完工任需成本 + + //成本差异=(预估的最终成本-原始的预算-变更的预算)/(原始的预算+变更的预算)*100% + if (orginalBudget + changedBudget > 0) { - decimal? orginalBudget = costManage.OrginalBudget.HasValue ? costManage.OrginalBudget : 0;//原始的预算 - decimal? changedBudget = costManage.ChangedBudget.HasValue ? costManage.ChangedBudget : 0;//变更的预算 - decimal? actualCost = costManage.ActualCost.HasValue ? costManage.ActualCost : 0;//实际的成本 - decimal? committedPRPO = costManage.CommittedPRPO.HasValue ? costManage.CommittedPRPO : 0;//承诺的PR或PO成本 - decimal? committedSSRs = costManage.CommittedSSRs.HasValue ? costManage.CommittedSSRs : 0; //承诺的SSR成本 - decimal? costToComplete = costManage.CostToComplete.HasValue ? costManage.CostToComplete : 0; //预估的完工任需成本 - decimal? rmb = actualCost + committedPRPO + committedSSRs + costToComplete;//预估的最终成本=实际的成本+承诺的PR或PO成本+承诺的SSR成本+预估的完工任需成本 - //成本差异=(预估的最终成本-原始的预算-变更的预算)/(原始的预算+变更的预算)*100% - if (orginalBudget + changedBudget > 0) + s = Convert.ToDouble((rmb - orginalBudget - changedBudget) / (orginalBudget + changedBudget)); + if (s > 0.1) { - s = Convert.ToDouble((rmb - orginalBudget - changedBudget) / (orginalBudget + changedBudget)); - if (s > 0.1) - { - imgCost.ImageUrl = "../Images/RedLight.jpg"; - } - else if (0.1 >= s && s > 0.05) - { - imgCost.ImageUrl = "../Images/YellowLight.jpg"; - } - else if (s <= 0.05) - { - imgCost.ImageUrl = "../Images/GreenLight.jpg"; - } + imgCost.ImageUrl = "../Images/RedLight.jpg"; } - else + else if (0.1 >= s && s > 0.05) { - imgCost.ImageUrl = "../Images/NoLight.jpg"; + imgCost.ImageUrl = "../Images/YellowLight.jpg"; + } + else if (s <= 0.05) + { + imgCost.ImageUrl = "../Images/GreenLight.jpg"; } } else @@ -1145,6 +1138,45 @@ namespace FineUIPro.Web.common imgCost.ImageUrl = "../Images/NoLight.jpg"; } + #region 不用了 + //获取项目的最新成本 + //var costManage = BLL.CostReportService.GetMaxMonthCostReportByEprojectId(eprojectId); + //if (costManage != null) + //{ + // decimal? orginalBudget = costManage.OrginalBudget.HasValue ? costManage.OrginalBudget : 0;//原始的预算 + // decimal? changedBudget = costManage.ChangedBudget.HasValue ? costManage.ChangedBudget : 0;//变更的预算 + // decimal? actualCost = costManage.ActualCost.HasValue ? costManage.ActualCost : 0;//实际的成本 + // decimal? committedPRPO = costManage.CommittedPRPO.HasValue ? costManage.CommittedPRPO : 0;//承诺的PR或PO成本 + // decimal? committedSSRs = costManage.CommittedSSRs.HasValue ? costManage.CommittedSSRs : 0; //承诺的SSR成本 + // decimal? costToComplete = costManage.CostToComplete.HasValue ? costManage.CostToComplete : 0; //预估的完工任需成本 + // decimal? rmb = actualCost + committedPRPO + committedSSRs + costToComplete;//预估的最终成本=实际的成本+承诺的PR或PO成本+承诺的SSR成本+预估的完工任需成本 + // //成本差异=(预估的最终成本-原始的预算-变更的预算)/(原始的预算+变更的预算)*100% + // if (orginalBudget + changedBudget > 0) + // { + // s = Convert.ToDouble((rmb - orginalBudget - changedBudget) / (orginalBudget + changedBudget)); + // if (s > 0.1) + // { + // imgCost.ImageUrl = "../Images/RedLight.jpg"; + // } + // else if (0.1 >= s && s > 0.05) + // { + // imgCost.ImageUrl = "../Images/YellowLight.jpg"; + // } + // else if (s <= 0.05) + // { + // imgCost.ImageUrl = "../Images/GreenLight.jpg"; + // } + // } + // else + // { + // imgCost.ImageUrl = "../Images/NoLight.jpg"; + // } + //} + //else + //{ + // imgCost.ImageUrl = "../Images/NoLight.jpg"; + //} + #endregion #endregion #region 范围指标 // Scope 范围指标 diff --git a/EProjectPackFile_2025-09-02-01.zip b/EProjectPackFile_2025-09-02-01.zip new file mode 100644 index 0000000..97cd7b1 Binary files /dev/null and b/EProjectPackFile_2025-09-02-01.zip differ diff --git a/EProjectPackFile_2025-09-02-01/PackFile/bin/FineUIPro.Web.dll b/EProjectPackFile_2025-09-02-01/PackFile/bin/FineUIPro.Web.dll new file mode 100644 index 0000000..21a695f Binary files /dev/null and b/EProjectPackFile_2025-09-02-01/PackFile/bin/FineUIPro.Web.dll differ