0813
This commit is contained in:
@@ -0,0 +1,91 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
|
||||
namespace BLL
|
||||
{
|
||||
/// <summary>
|
||||
/// 低温储罐完成情况
|
||||
/// </summary>
|
||||
public class LowTankCompletionService
|
||||
{
|
||||
public static Model.SGGLDB db = Funs.DB;
|
||||
|
||||
/// <summary>
|
||||
/// 根据主键获取低温储罐完成情况
|
||||
/// </summary>
|
||||
/// <param name="lowTankCompletionId"></param>
|
||||
/// <returns></returns>
|
||||
public static Model.JDGL_LowTankCompletion GetLowTankCompletionById(string lowTankCompletionId)
|
||||
{
|
||||
return Funs.DB.JDGL_LowTankCompletion.FirstOrDefault(e => e.LowTankCompletionId == lowTankCompletionId);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 添加低温储罐完成情况
|
||||
/// </summary>
|
||||
/// <param name="lowTankCompletion"></param>
|
||||
public static void AddLowTankCompletion(Model.JDGL_LowTankCompletion lowTankCompletion)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
Model.JDGL_LowTankCompletion newLowTankCompletion = new Model.JDGL_LowTankCompletion
|
||||
{
|
||||
LowTankCompletionId = lowTankCompletion.LowTankCompletionId,
|
||||
ProjectId = lowTankCompletion.ProjectId,
|
||||
Code = lowTankCompletion.Code,
|
||||
Name = lowTankCompletion.Name,
|
||||
Unit = lowTankCompletion.Unit,
|
||||
TotalNum = lowTankCompletion.TotalNum,
|
||||
PlanNum = lowTankCompletion.PlanNum,
|
||||
RealNum = lowTankCompletion.RealNum,
|
||||
CompileMan = lowTankCompletion.CompileMan,
|
||||
CompileDate = lowTankCompletion.CompileDate,
|
||||
StartDate = lowTankCompletion.StartDate,
|
||||
EndDate = lowTankCompletion.EndDate
|
||||
};
|
||||
db.JDGL_LowTankCompletion.InsertOnSubmit(newLowTankCompletion);
|
||||
db.SubmitChanges();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 修改低温储罐完成情况
|
||||
/// </summary>
|
||||
/// <param name="lowTankCompletion"></param>
|
||||
public static void UpdateLowTankCompletion(Model.JDGL_LowTankCompletion lowTankCompletion)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
Model.JDGL_LowTankCompletion newLowTankCompletion = db.JDGL_LowTankCompletion.FirstOrDefault(e => e.LowTankCompletionId == lowTankCompletion.LowTankCompletionId);
|
||||
if (newLowTankCompletion != null)
|
||||
{
|
||||
newLowTankCompletion.Code = lowTankCompletion.Code;
|
||||
newLowTankCompletion.Name = lowTankCompletion.Name;
|
||||
newLowTankCompletion.TotalNum = lowTankCompletion.TotalNum;
|
||||
newLowTankCompletion.PlanNum = lowTankCompletion.PlanNum;
|
||||
newLowTankCompletion.RealNum = lowTankCompletion.RealNum;
|
||||
newLowTankCompletion.CompileMan = lowTankCompletion.CompileMan;
|
||||
newLowTankCompletion.CompileDate = lowTankCompletion.CompileDate;
|
||||
db.SubmitChanges();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据主键删除低温储罐完成情况
|
||||
/// </summary>
|
||||
/// <param name="lowTankCompletionId"></param>
|
||||
public static void DeleteLowTankCompletionById(string lowTankCompletionId)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
var lowTankCompletion = (from x in db.JDGL_LowTankCompletion where x.LowTankCompletionId == lowTankCompletionId select x).FirstOrDefault();
|
||||
if (lowTankCompletion != null)
|
||||
{
|
||||
var q = from x in db.JDGL_LowTankCompletion where x.ProjectId == lowTankCompletion.ProjectId && x.Code == lowTankCompletion.Code && x.Name == lowTankCompletion.Name select x;
|
||||
if (q.Count() > 0)
|
||||
{
|
||||
db.JDGL_LowTankCompletion.DeleteAllOnSubmit(q);
|
||||
db.SubmitChanges();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -24,6 +24,30 @@ namespace BLL
|
||||
return Funs.DB.WBS_CnProfession.FirstOrDefault(e => e.CnProfessionId == cnProfessionId);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据装置Id和专业编号获取专业Id
|
||||
/// </summary>
|
||||
/// <param name="unitProjectId">专业Id</param>
|
||||
/// <returns></returns>
|
||||
public static string GetCnProfessionIdByInstallationIdAndOldId(string installationId, string oldId)
|
||||
{
|
||||
string cnProfessionId = string.Empty;
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
var ins = db.Project_Installation.FirstOrDefault(x => x.InstallationId == installationId);
|
||||
if (ins.IsEnd == true)
|
||||
{
|
||||
var cn = db.WBS_CnProfession.FirstOrDefault(x => x.InstallationId == ins.InstallationId && x.OldId.ToString() == oldId);
|
||||
cnProfessionId = cn.CnProfessionId;
|
||||
}
|
||||
else
|
||||
{
|
||||
var childIns = db.Project_Installation.FirstOrDefault(x => x.SuperInstallationId == installationId);
|
||||
cnProfessionId = GetCnProfessionIdByInstallationIdAndOldId(childIns.InstallationId, oldId);
|
||||
}
|
||||
return cnProfessionId;
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 增加专业
|
||||
/// </summary>
|
||||
@@ -64,6 +88,8 @@ namespace BLL
|
||||
newCnP.WeightsMoney = cnProfession.WeightsMoney;
|
||||
newCnP.IsWeightsApprove = cnProfession.IsWeightsApprove;
|
||||
newCnP.UnitId = cnProfession.UnitId;
|
||||
newCnP.IsSelected = cnProfession.IsSelected;
|
||||
newCnP.IsApprove = cnProfession.IsApprove;
|
||||
db.SubmitChanges();
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,156 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BLL
|
||||
{
|
||||
public class CostControlDetailHistoryService
|
||||
{
|
||||
/// <summary>
|
||||
/// 根据Id获取一个费控项明细历史记录信息
|
||||
/// </summary>
|
||||
/// <param name="costControlDetailHistoryId">费控项明细历史记录Id</param>
|
||||
public static Model.WBS_CostControlDetailHistory GetCostControlDetailHistoryByCostControlDetailHistoryId(string costControlDetailHistoryId)
|
||||
{
|
||||
return Funs.DB.WBS_CostControlDetailHistory.FirstOrDefault(e => e.CostControlDetailHistoryId == costControlDetailHistoryId);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据CostControlId判断是否存在费控项明细历史记录信息
|
||||
/// </summary>
|
||||
/// <param name="costControlId">costControlId</param>
|
||||
public static bool IsExitCostControlDetailHistoryByCostControlId(string costControlId)
|
||||
{
|
||||
return (from x in Funs.DB.WBS_CostControlDetailHistory where x.CostControlId == costControlId select x).Count() > 0;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据Id获取对应费控项明细历史记录信息
|
||||
/// </summary>
|
||||
/// <param name="toWbs">对应wbsId</param>
|
||||
public static List<Model.WBS_CostControlDetailHistory> GetCostControlDetailHistorysByCostControlId(string costControlId)
|
||||
{
|
||||
return (from x in Funs.DB.WBS_CostControlDetailHistory where x.CostControlId == costControlId orderby x.VersionNum, x.Months select x).ToList();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据costControlId和年及月获取对应费控项明细历史记录信息
|
||||
/// </summary>
|
||||
/// <param name="costControlId">对应wbsId</param>
|
||||
/// <param name="toFlag">对应标志</param>
|
||||
/// <param name="years">年</param>
|
||||
/// <param name="months">月</param>
|
||||
public static Model.WBS_CostControlDetailHistory GetCostControlDetailHistoryByCostControlIdAndMonths(string costControlId, DateTime months)
|
||||
{
|
||||
return (from x in Funs.DB.WBS_CostControlDetailHistory where x.CostControlId == costControlId && x.Months == months select x).FirstOrDefault();
|
||||
}
|
||||
|
||||
public static Model.WBS_CostControlDetailHistory GetWBS_CostControlDetailHistoryByCostControlId(string costControlId)
|
||||
{
|
||||
return (from x in Funs.DB.WBS_CostControlDetailHistory where x.CostControlId == costControlId select x).FirstOrDefault();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <param name="costControlId"></param>
|
||||
/// <param name="toFlag"></param>
|
||||
/// <param name="months"></param>
|
||||
/// <returns></returns>
|
||||
public static bool IsExitWBS_CostControlDetailHistoryByCostControlIdOrMonth(string costControlId, DateTime months)
|
||||
{
|
||||
bool result = false;
|
||||
var q = Funs.DB.WBS_CostControlDetailHistory.FirstOrDefault(e => e.CostControlId == costControlId && e.Months == months);
|
||||
if (q != null)
|
||||
{
|
||||
result = true;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据年及月获取之前月份的对应费控项明细历史记录信息集合(含当月)
|
||||
/// </summary>
|
||||
/// <param name="years">年</param>
|
||||
/// <param name="months">月</param>
|
||||
public static List<Model.WBS_CostControlDetailHistory> GetTotalWBS_CostControlDetailHistorysByYearMonth2(string costControlId, DateTime months)
|
||||
{
|
||||
return (from x in Funs.DB.WBS_CostControlDetailHistory where x.CostControlId == costControlId && x.Months <= months select x).ToList();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据CostControlId月获取当前最大版本
|
||||
/// </summary>
|
||||
/// <param name="costControlId">costControlId</param>
|
||||
public static int GetMaxVersionNumByCostControlId(string costControlId)
|
||||
{
|
||||
int i = 0;
|
||||
var q = (from x in Funs.DB.WBS_CostControlDetailHistory where x.CostControlId == costControlId orderby x.VersionNum descending select x.VersionNum ?? 0).ToList();
|
||||
if (q.Count > 0)
|
||||
{
|
||||
i = q[0];
|
||||
}
|
||||
return i;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 增加费控项明细历史记录
|
||||
/// </summary>
|
||||
/// <param name="user">费控项明细历史记录</param>
|
||||
public static void AddCostControlDetailHistory(Model.WBS_CostControlDetailHistory costControlDetailHistory)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
Model.WBS_CostControlDetailHistory newWBS_CostControlDetailHistory = new Model.WBS_CostControlDetailHistory();
|
||||
newWBS_CostControlDetailHistory.CostControlDetailHistoryId = costControlDetailHistory.CostControlDetailHistoryId;
|
||||
newWBS_CostControlDetailHistory.CostControlId = costControlDetailHistory.CostControlId;
|
||||
newWBS_CostControlDetailHistory.Months = costControlDetailHistory.Months;
|
||||
newWBS_CostControlDetailHistory.PlanNum = costControlDetailHistory.PlanNum;
|
||||
newWBS_CostControlDetailHistory.VersionNum = costControlDetailHistory.VersionNum;
|
||||
|
||||
db.WBS_CostControlDetailHistory.InsertOnSubmit(newWBS_CostControlDetailHistory);
|
||||
db.SubmitChanges();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 修改费控项明细历史记录
|
||||
/// </summary>
|
||||
/// <param name="user">费控项明细历史记录</param>
|
||||
public static void UpdateCostControlDetailHistory(Model.WBS_CostControlDetailHistory costControlDetailHistory)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
Model.WBS_CostControlDetailHistory newWBS_CostControlDetailHistory = db.WBS_CostControlDetailHistory.First(e => e.CostControlDetailHistoryId == costControlDetailHistory.CostControlDetailHistoryId);
|
||||
newWBS_CostControlDetailHistory.PlanNum = costControlDetailHistory.PlanNum;
|
||||
|
||||
db.SubmitChanges();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据Id删除费控项明细历史记录信息
|
||||
/// </summary>
|
||||
/// <param name="userId"></param>
|
||||
public static void DeleteCostControlDetailHistory(string costControlDetailHistoryId)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
Model.WBS_CostControlDetailHistory ins = db.WBS_CostControlDetailHistory.First(e => e.CostControlDetailHistoryId == costControlDetailHistoryId);
|
||||
db.WBS_CostControlDetailHistory.DeleteOnSubmit(ins);
|
||||
db.SubmitChanges();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据costControlId删除费控项明细历史记录信息
|
||||
/// </summary>
|
||||
/// <param name="userId"></param>
|
||||
public static void DeleteCostControlDetailHistoryByCostControlId(string costControlId)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
var details = from x in db.WBS_CostControlDetailHistory where x.CostControlId == costControlId select x;
|
||||
if (details.Count() > 0)
|
||||
{
|
||||
db.WBS_CostControlDetailHistory.DeleteAllOnSubmit(details);
|
||||
db.SubmitChanges();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,166 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BLL
|
||||
{
|
||||
public class CostControlDetailService
|
||||
{
|
||||
/// <summary>
|
||||
/// 根据Id获取一个费控项明细信息
|
||||
/// </summary>
|
||||
/// <param name="costControlDetailId">费控项明细Id</param>
|
||||
public static Model.WBS_CostControlDetail GetCostControlDetailByCostControlDetailId(string costControlDetailId)
|
||||
{
|
||||
return Funs.DB.WBS_CostControlDetail.FirstOrDefault(e => e.CostControlDetailId == costControlDetailId);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据CostControlId判断是否存在费控项明细信息
|
||||
/// </summary>
|
||||
/// <param name="costControlId">costControlId</param>
|
||||
public static bool IsExitCostControlDetailByCostControlId(string costControlId)
|
||||
{
|
||||
return (from x in Funs.DB.WBS_CostControlDetail where x.CostControlId == costControlId select x).Count() > 0;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据costControlId和年及月获取对应费控项明细信息
|
||||
/// </summary>
|
||||
/// <param name="costControlId">对应wbsId</param>
|
||||
/// <param name="toFlag">对应标志</param>
|
||||
/// <param name="years">年</param>
|
||||
/// <param name="months">月</param>
|
||||
public static Model.WBS_CostControlDetail GetCostControlDetailByCostControlIdAndMonths(string costControlId, DateTime months)
|
||||
{
|
||||
return (from x in Funs.DB.WBS_CostControlDetail where x.CostControlId == costControlId && x.Months == months select x).FirstOrDefault();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据costControlId和年及月获取对应费控项明细视图信息
|
||||
/// </summary>
|
||||
/// <param name="costControlId">对应wbsId</param>
|
||||
/// <param name="toFlag">对应标志</param>
|
||||
/// <param name="years">年</param>
|
||||
/// <param name="months">月</param>
|
||||
public static Model.View_WBS_CostControlDetail GetCostControlDetailViewByCostControlIdAndMonths(string costControlId, DateTime months)
|
||||
{
|
||||
return (from x in Funs.DB.View_WBS_CostControlDetail where x.CostControlId == costControlId && x.Months == months select x).FirstOrDefault();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据costControlId和年及月获取对应费控项明细信息
|
||||
/// </summary>
|
||||
/// <param name="costControlId">对应wbsId</param>
|
||||
/// <param name="toFlag">对应标志</param>
|
||||
/// <param name="years">年</param>
|
||||
/// <param name="months">月</param>
|
||||
public static Model.View_WBS_CostControlDetail GetViewCostControlDetailByCostControlIdYearMonth(string costControlId, DateTime months)
|
||||
{
|
||||
return (from x in Funs.DB.View_WBS_CostControlDetail where x.CostControlId == costControlId && x.Months == months select x).FirstOrDefault();
|
||||
}
|
||||
|
||||
public static Model.WBS_CostControlDetail GetWBS_CostControlDetailByCostControlId(string costControlId)
|
||||
{
|
||||
return (from x in Funs.DB.WBS_CostControlDetail where x.CostControlId == costControlId select x).FirstOrDefault();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <param name="costControlId"></param>
|
||||
/// <param name="toFlag"></param>
|
||||
/// <param name="months"></param>
|
||||
/// <returns></returns>
|
||||
public static bool IsExitWBS_CostControlDetailByCostControlIdOrMonth(string costControlId, DateTime months)
|
||||
{
|
||||
bool result = false;
|
||||
var q = Funs.DB.WBS_CostControlDetail.FirstOrDefault(e => e.CostControlId == costControlId && e.Months == months);
|
||||
if (q != null)
|
||||
{
|
||||
result = true;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据年及月获取之前月份的对应费控项明细信息集合(含当月)
|
||||
/// </summary>
|
||||
/// <param name="years">年</param>
|
||||
/// <param name="months">月</param>
|
||||
public static List<Model.WBS_CostControlDetail> GetTotalWBS_CostControlDetailsByYearMonth2(string costControlId, DateTime months)
|
||||
{
|
||||
return (from x in Funs.DB.WBS_CostControlDetail where x.CostControlId == costControlId && x.Months <= months select x).ToList();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据CostControlId月获取所有月份的对应费控项明细信息集合
|
||||
/// </summary>
|
||||
/// <param name="costControlId">costControlId</param>
|
||||
public static List<Model.WBS_CostControlDetail> GetCostControlDetailsByCostControlId(string costControlId)
|
||||
{
|
||||
return (from x in Funs.DB.WBS_CostControlDetail where x.CostControlId == costControlId orderby x.Months select x).ToList();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 增加费控项明细
|
||||
/// </summary>
|
||||
/// <param name="user">费控项明细</param>
|
||||
public static void AddCostControlDetail(Model.WBS_CostControlDetail costControlDetail)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
Model.WBS_CostControlDetail newWBS_CostControlDetail = new Model.WBS_CostControlDetail();
|
||||
newWBS_CostControlDetail.CostControlDetailId = costControlDetail.CostControlDetailId;
|
||||
newWBS_CostControlDetail.CostControlId = costControlDetail.CostControlId;
|
||||
newWBS_CostControlDetail.Months = costControlDetail.Months;
|
||||
newWBS_CostControlDetail.PlanNum = costControlDetail.PlanNum;
|
||||
newWBS_CostControlDetail.ThisNum = costControlDetail.ThisNum;
|
||||
|
||||
db.WBS_CostControlDetail.InsertOnSubmit(newWBS_CostControlDetail);
|
||||
db.SubmitChanges();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 修改费控项明细
|
||||
/// </summary>
|
||||
/// <param name="user">费控项明细</param>
|
||||
public static void UpdateCostControlDetail(Model.WBS_CostControlDetail costControlDetail)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
Model.WBS_CostControlDetail newWBS_CostControlDetail = db.WBS_CostControlDetail.First(e => e.CostControlDetailId == costControlDetail.CostControlDetailId);
|
||||
newWBS_CostControlDetail.PlanNum = costControlDetail.PlanNum;
|
||||
newWBS_CostControlDetail.ThisNum = costControlDetail.ThisNum;
|
||||
|
||||
db.SubmitChanges();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据Id删除费控项明细信息
|
||||
/// </summary>
|
||||
/// <param name="userId"></param>
|
||||
public static void DeleteCostControlDetail(string costControlDetailId)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
Model.WBS_CostControlDetail ins = db.WBS_CostControlDetail.First(e => e.CostControlDetailId == costControlDetailId);
|
||||
db.WBS_CostControlDetail.DeleteOnSubmit(ins);
|
||||
db.SubmitChanges();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据costControlId删除费控项明细信息
|
||||
/// </summary>
|
||||
/// <param name="userId"></param>
|
||||
public static void DeleteCostControlDetailByCostControlId(string costControlId)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
var details = from x in db.WBS_CostControlDetail where x.CostControlId == costControlId select x;
|
||||
if (details.Count() > 0)
|
||||
{
|
||||
db.WBS_CostControlDetail.DeleteAllOnSubmit(details);
|
||||
db.SubmitChanges();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,65 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BLL
|
||||
{
|
||||
public class CostControlInitService
|
||||
{
|
||||
/// <summary>
|
||||
/// 根据费控项Id获取费控项信息
|
||||
/// </summary>
|
||||
/// <param name="unitProjectId">费控项Id</param>
|
||||
/// <returns></returns>
|
||||
public static Model.WBS_CostControlInit GetCostControlInitByCostControlInitId(string costControlInitId)
|
||||
{
|
||||
return Funs.DB.WBS_CostControlInit.FirstOrDefault(e => e.CostControlInitId.ToString() == costControlInitId);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 增加费控项
|
||||
/// </summary>
|
||||
/// <param name="user">费控项</param>
|
||||
public static void AddCostControlInit(Model.WBS_CostControlInit costControlInit)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
Model.WBS_CostControlInit newUP = new Model.WBS_CostControlInit();
|
||||
newUP.CostControlInitId = SQLHelper.GetNewID();
|
||||
newUP.CostControlInitCode = costControlInit.CostControlInitCode;
|
||||
newUP.CostControlInitName = costControlInit.CostControlInitName;
|
||||
newUP.Unit = costControlInit.Unit;
|
||||
|
||||
db.WBS_CostControlInit.InsertOnSubmit(newUP);
|
||||
db.SubmitChanges();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 修改费控项信息
|
||||
/// </summary>
|
||||
/// <param name="user">费控项信息</param>
|
||||
public static void UpdateCostControlInit(Model.WBS_CostControlInit costControlInit)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
Model.WBS_CostControlInit newUP = db.WBS_CostControlInit.First(e => e.CostControlInitId == costControlInit.CostControlInitId);
|
||||
|
||||
newUP.CostControlInitCode = costControlInit.CostControlInitCode;
|
||||
newUP.CostControlInitName = costControlInit.CostControlInitName;
|
||||
newUP.Unit = costControlInit.Unit;
|
||||
db.SubmitChanges();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据Id删除费控项信息
|
||||
/// </summary>
|
||||
/// <param name="userId"></param>
|
||||
public static void DeleteCostControlInit(string costControlInitId)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
Model.WBS_CostControlInit CnP = db.WBS_CostControlInit.First(e => e.CostControlInitId.ToString() == costControlInitId);
|
||||
db.WBS_CostControlInit.DeleteOnSubmit(CnP);
|
||||
db.SubmitChanges();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,146 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BLL
|
||||
{
|
||||
public class CostControlParentDetailService
|
||||
{
|
||||
/// <summary>
|
||||
/// 根据Id获取一个费控项父级明细信息
|
||||
/// </summary>
|
||||
/// <param name="costControlParentDetailId">费控项父级明细Id</param>
|
||||
public static Model.WBS_CostControlParentDetail GetCostControlParentDetailByCostControlParentDetailId(string costControlParentDetailId)
|
||||
{
|
||||
return Funs.DB.WBS_CostControlParentDetail.FirstOrDefault(e => e.CostControlParentDetailId == costControlParentDetailId);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据ParentId判断是否存在费控项父级明细信息
|
||||
/// </summary>
|
||||
/// <param name="costControlParentId">costControlParentId</param>
|
||||
public static bool IsExitCostControlParentDetailByParentId(string parentId)
|
||||
{
|
||||
return (from x in Funs.DB.WBS_CostControlParentDetail where x.ParentId == parentId select x).Count() > 0;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据costControlParentId和年及月获取对应费控项父级明细信息
|
||||
/// </summary>
|
||||
/// <param name="costControlParentId">对应wbsId</param>
|
||||
/// <param name="toFlag">对应标志</param>
|
||||
/// <param name="years">年</param>
|
||||
/// <param name="months">月</param>
|
||||
public static Model.WBS_CostControlParentDetail GetCostControlParentDetailByParentIdAndMonths(string parentId, DateTime months)
|
||||
{
|
||||
return (from x in Funs.DB.WBS_CostControlParentDetail where x.ParentId == parentId && x.Months == months select x).FirstOrDefault();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据costControlParentId和年及月获取对应费控项父级明细视图信息
|
||||
/// </summary>
|
||||
/// <param name="costControlParentId">对应wbsId</param>
|
||||
/// <param name="toFlag">对应标志</param>
|
||||
/// <param name="years">年</param>
|
||||
/// <param name="months">月</param>
|
||||
public static Model.View_WBS_CostControlParentDetail GetCostControlParentDetailViewByParentIdAndMonths(string parentId, DateTime months)
|
||||
{
|
||||
return (from x in Funs.DB.View_WBS_CostControlParentDetail where x.ParentId == parentId && x.Months == months select x).FirstOrDefault();
|
||||
}
|
||||
|
||||
public static Model.WBS_CostControlParentDetail GetCostControlParentDetailByParentId(string parentId)
|
||||
{
|
||||
return (from x in Funs.DB.WBS_CostControlParentDetail where x.ParentId == parentId select x).FirstOrDefault();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <param name="costControlParentId"></param>
|
||||
/// <param name="toFlag"></param>
|
||||
/// <param name="months"></param>
|
||||
/// <returns></returns>
|
||||
public static bool IsExitWBS_CostControlParentDetailByParentIdOrMonth(string parentId, DateTime months)
|
||||
{
|
||||
bool result = false;
|
||||
var q = Funs.DB.WBS_CostControlParentDetail.FirstOrDefault(e => e.ParentId == parentId && e.Months == months);
|
||||
if (q != null)
|
||||
{
|
||||
result = true;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据CostControlParentId月获取所有月份的对应费控项父级明细信息集合
|
||||
/// </summary>
|
||||
/// <param name="costControlParentId">costControlParentId</param>
|
||||
public static List<Model.WBS_CostControlParentDetail> GetTotalCostControlParentDetailsByParentId(string parentId)
|
||||
{
|
||||
return (from x in Funs.DB.WBS_CostControlParentDetail where x.ParentId == parentId orderby x.Months select x).ToList();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 增加费控项父级明细
|
||||
/// </summary>
|
||||
/// <param name="user">费控项父级明细</param>
|
||||
public static void AddCostControlParentDetail(Model.WBS_CostControlParentDetail costControlParentDetail)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
Model.WBS_CostControlParentDetail newWBS_CostControlParentDetail = new Model.WBS_CostControlParentDetail();
|
||||
newWBS_CostControlParentDetail.CostControlParentDetailId = costControlParentDetail.CostControlParentDetailId;
|
||||
newWBS_CostControlParentDetail.ParentId = costControlParentDetail.ParentId;
|
||||
newWBS_CostControlParentDetail.Months = costControlParentDetail.Months;
|
||||
newWBS_CostControlParentDetail.ThisPlanValue = costControlParentDetail.ThisPlanValue;
|
||||
newWBS_CostControlParentDetail.ThisRealCost = costControlParentDetail.ThisRealCost;
|
||||
newWBS_CostControlParentDetail.ThisPlanCost = costControlParentDetail.ThisPlanCost;
|
||||
|
||||
db.WBS_CostControlParentDetail.InsertOnSubmit(newWBS_CostControlParentDetail);
|
||||
db.SubmitChanges();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 修改费控项父级明细
|
||||
/// </summary>
|
||||
/// <param name="user">费控项父级明细</param>
|
||||
public static void UpdateCostControlParentDetail(Model.WBS_CostControlParentDetail costControlParentDetail)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
Model.WBS_CostControlParentDetail newWBS_CostControlParentDetail = db.WBS_CostControlParentDetail.First(e => e.CostControlParentDetailId == costControlParentDetail.CostControlParentDetailId);
|
||||
newWBS_CostControlParentDetail.ThisPlanValue = costControlParentDetail.ThisPlanValue;
|
||||
newWBS_CostControlParentDetail.ThisRealCost = costControlParentDetail.ThisRealCost;
|
||||
newWBS_CostControlParentDetail.ThisPlanCost = costControlParentDetail.ThisPlanCost;
|
||||
|
||||
db.SubmitChanges();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据Id删除费控项父级明细信息
|
||||
/// </summary>
|
||||
/// <param name="userId"></param>
|
||||
public static void DeleteWBS_CostControlParentDetail(string costControlParentDetailId)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
Model.WBS_CostControlParentDetail ins = db.WBS_CostControlParentDetail.First(e => e.CostControlParentDetailId == costControlParentDetailId);
|
||||
db.WBS_CostControlParentDetail.DeleteOnSubmit(ins);
|
||||
db.SubmitChanges();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据costControlParentId删除费控项父级明细信息
|
||||
/// </summary>
|
||||
/// <param name="userId"></param>
|
||||
public static void DeleteWBS_CostControlParentDetailByCostControlParentId(string parentId)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
var details = from x in db.WBS_CostControlParentDetail where x.ParentId == parentId select x;
|
||||
if (details.Count() > 0)
|
||||
{
|
||||
db.WBS_CostControlParentDetail.DeleteAllOnSubmit(details);
|
||||
db.SubmitChanges();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,112 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BLL
|
||||
{
|
||||
public class CostControlService
|
||||
{
|
||||
/// <summary>
|
||||
/// 根据费控项Id获取费控项信息
|
||||
/// </summary>
|
||||
/// <param name="unitProjectId">费控项Id</param>
|
||||
/// <returns></returns>
|
||||
public static Model.WBS_CostControl GetCostControlByCostControlId(string costControlId)
|
||||
{
|
||||
return Funs.DB.WBS_CostControl.FirstOrDefault(e => e.CostControlId.ToString() == costControlId);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据费控项编号集合获取费控项信息
|
||||
/// </summary>
|
||||
/// <param name="costControlCodes">费控项编号集合</param>
|
||||
/// <returns></returns>
|
||||
public static List<Model.WBS_CostControl> GetCostControlsByCostControlCodes(List<string> costControlCodes, string wbsSetId)
|
||||
{
|
||||
return (from x in Funs.DB.WBS_CostControl where costControlCodes.Contains(x.CostControlCode) && x.WbsSetId == wbsSetId select x).ToList();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据费控项编号集合获取费控项信息
|
||||
/// </summary>
|
||||
/// <param name="costControlCodes">费控项编号集合</param>
|
||||
/// <returns></returns>
|
||||
public static List<Model.WBS_CostControl> GetCostControlsByWbsSetId(string wbsSetId)
|
||||
{
|
||||
return (from x in Funs.DB.WBS_CostControl where x.WbsSetId == wbsSetId select x).ToList();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 增加费控项
|
||||
/// </summary>
|
||||
/// <param name="user">费控项</param>
|
||||
public static void AddCostControl(Model.WBS_CostControl costControl)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
Model.WBS_CostControl newUP = new Model.WBS_CostControl();
|
||||
newUP.CostControlId = SQLHelper.GetNewID();
|
||||
newUP.ProjectId = costControl.ProjectId;
|
||||
newUP.WbsSetId = costControl.WbsSetId;
|
||||
newUP.CostControlCode = costControl.CostControlCode;
|
||||
newUP.CostControlName = costControl.CostControlName;
|
||||
newUP.Unit = costControl.Unit;
|
||||
newUP.TotalNum = costControl.TotalNum;
|
||||
newUP.RealPrice = costControl.RealPrice;
|
||||
|
||||
db.WBS_CostControl.InsertOnSubmit(newUP);
|
||||
db.SubmitChanges();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 修改费控项信息
|
||||
/// </summary>
|
||||
/// <param name="user">费控项信息</param>
|
||||
public static void UpdateCostControl(Model.WBS_CostControl costControl)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
Model.WBS_CostControl newUP = db.WBS_CostControl.First(e => e.CostControlId == costControl.CostControlId);
|
||||
|
||||
newUP.CostControlCode = costControl.CostControlCode;
|
||||
newUP.CostControlName = costControl.CostControlName;
|
||||
newUP.Unit = costControl.Unit;
|
||||
newUP.TotalNum = costControl.TotalNum;
|
||||
newUP.RealPrice = costControl.RealPrice;
|
||||
newUP.PlanPrice = costControl.PlanPrice;
|
||||
db.SubmitChanges();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据Id删除费控项信息
|
||||
/// </summary>
|
||||
/// <param name="userId"></param>
|
||||
public static void DeleteCostControl(string costControlId)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
Model.WBS_CostControl CnP = db.WBS_CostControl.First(e => e.CostControlId.ToString() == costControlId);
|
||||
db.WBS_CostControl.DeleteOnSubmit(CnP);
|
||||
db.SubmitChanges();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据Id删除费控项信息
|
||||
/// </summary>
|
||||
/// <param name="userId"></param>
|
||||
public static void DeleteCostControlByWbsSetId(string wbsSetId)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
var costControls = from x in db.WBS_CostControl where x.WbsSetId == wbsSetId select x;
|
||||
if (costControls.Count() > 0)
|
||||
{
|
||||
foreach (var costControl in costControls)
|
||||
{
|
||||
BLL.CostControlDetailHistoryService.DeleteCostControlDetailHistoryByCostControlId(costControl.CostControlId);
|
||||
BLL.CostControlDetailService.DeleteCostControlDetailByCostControlId(costControl.CostControlId);
|
||||
}
|
||||
db.WBS_CostControl.DeleteAllOnSubmit(costControls);
|
||||
db.SubmitChanges();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -37,6 +37,15 @@ namespace BLL
|
||||
return Funs.DB.Wbs_UnitProjectInit.Where(e => e.CnProfessionId == cnProfessionId).Count();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据专业Id获取单位工程集合信息
|
||||
/// </summary>
|
||||
/// <param name="unitProjectId">单位工程Id</param>
|
||||
/// <returns></returns>
|
||||
public static List<Model.Wbs_UnitProjectInit> GetUnitProjectInitsByCnProfessionId(string cnProfessionId)
|
||||
{
|
||||
return (from x in Funs.DB.Wbs_UnitProjectInit where x.CnProfessionId.ToString() == cnProfessionId orderby x.SortIndex select x).ToList();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据单位工程Id获取子单位工程集合信息
|
||||
@@ -62,6 +71,7 @@ namespace BLL
|
||||
newUP.CnProfessionId = unitProjectInit.CnProfessionId;
|
||||
newUP.IsIn = unitProjectInit.IsIn;
|
||||
newUP.Remark = unitProjectInit.Remark;
|
||||
newUP.SortIndex = unitProjectInit.SortIndex;
|
||||
|
||||
db.Wbs_UnitProjectInit.InsertOnSubmit(newUP);
|
||||
db.SubmitChanges();
|
||||
@@ -78,6 +88,7 @@ namespace BLL
|
||||
|
||||
newUP.UnitProjectName = unitProjectInit.UnitProjectName;
|
||||
newUP.Remark = unitProjectInit.Remark;
|
||||
newUP.SortIndex = unitProjectInit.SortIndex;
|
||||
db.SubmitChanges();
|
||||
}
|
||||
|
||||
|
||||
@@ -34,6 +34,41 @@ namespace BLL
|
||||
return (from x in Funs.DB.Wbs_UnitProject where x.SuperUnitProjectId == superUnitProjectId orderby x.UnitProjectCode select x).ToList();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据专业Id和分部编号获取分部Id
|
||||
/// </summary>
|
||||
/// <param name="unitProjectId">专业Id</param>
|
||||
/// <returns></returns>
|
||||
public static List<string> GetUnitProjectIdByCnProfessionIdAndUnitProjectCode(string cnProfessionId, string unitProjectCode)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
var list = (from x in db.Wbs_UnitProject where x.CnProfessionId == cnProfessionId && x.UnitProjectCode == unitProjectCode select x.UnitProjectId).ToList();
|
||||
return list;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据装置、专业Id和分部编号获取分部Id
|
||||
/// </summary>
|
||||
/// <param name="unitProjectId">专业Id</param>
|
||||
/// <returns></returns>
|
||||
public static List<string> GetUnitProjectIdByInstallationIdAndCNCodeAndUnitProjectCode(string installationId, string cnCode, string unitProjectCode)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
string inId = string.Empty;
|
||||
Model.Project_Installation ins = db.Project_Installation.FirstOrDefault(x => x.InstallationId == installationId);
|
||||
if (ins.IsEnd == true)
|
||||
{
|
||||
inId = installationId;
|
||||
}
|
||||
else
|
||||
{
|
||||
inId = Project_InstallationService.GetEndInstallationId(installationId);
|
||||
}
|
||||
var cn = (from x in db.WBS_CnProfession where x.InstallationId == inId && x.OldId.ToString() == cnCode select x).FirstOrDefault();
|
||||
var list = (from x in db.Wbs_UnitProject where x.CnProfessionId == cn.CnProfessionId && x.UnitProjectCode == unitProjectCode select x.UnitProjectId).ToList();
|
||||
return list;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据装置Id获取单位工程集合信息
|
||||
/// </summary>
|
||||
|
||||
@@ -14,6 +14,16 @@ namespace BLL
|
||||
{
|
||||
public class WbsSetInitService
|
||||
{
|
||||
/// <summary>
|
||||
/// 根据分部工程编号获取工作包集合信息
|
||||
/// </summary>
|
||||
/// <param name="unitProjectCode">分部工程编号</param>
|
||||
/// <returns></returns>
|
||||
public static List<Model.WBS_WbsSetInit> GetWbsSetInitsByUnitProjectCode(string unitProjectCode)
|
||||
{
|
||||
return (from x in Funs.DB.WBS_WbsSetInit where x.UnitProjectCode == unitProjectCode && x.SuperWbsSetCode == null orderby x.WbsSetCode select x).ToList();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 增加分部/子分部/分项/子分项
|
||||
/// </summary>
|
||||
|
||||
@@ -0,0 +1,98 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BLL
|
||||
{
|
||||
public class WbsSetMatchCostControlInitService
|
||||
{
|
||||
/// <summary>
|
||||
/// 根据费控项对应关系Id获取费控项对应关系信息
|
||||
/// </summary>
|
||||
/// <param name="unitProjectId">费控项对应关系Id</param>
|
||||
/// <returns></returns>
|
||||
public static Model.WBS_WbsSetMatchCostControlInit GetWbsSetMatchCostControlInitByWbsSetMatchCostControlInitId(string wbsSetMatchCostControlInitId)
|
||||
{
|
||||
return Funs.DB.WBS_WbsSetMatchCostControlInit.FirstOrDefault(e => e.WbsSetMatchCostControlInitId.ToString() == wbsSetMatchCostControlInitId);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据费控项对应关系Id获取费控项对应关系信息
|
||||
/// </summary>
|
||||
/// <param name="unitProjectId">费控项对应关系Id</param>
|
||||
/// <returns></returns>
|
||||
public static Model.WBS_WbsSetMatchCostControlInit GetWbsSetMatchCostControlInitByWbsSetCodeAndCostControlInitCode(string wbsSetCode, string costControlInitCode)
|
||||
{
|
||||
return Funs.DB.WBS_WbsSetMatchCostControlInit.FirstOrDefault(e => e.WbsSetCode == wbsSetCode && e.CostControlInitCode == costControlInitCode);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 增加费控项对应关系
|
||||
/// </summary>
|
||||
/// <param name="user">费控项对应关系</param>
|
||||
public static void AddWbsSetMatchCostControlInit(Model.WBS_WbsSetMatchCostControlInit wbsSetMatchCostControlInit)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
Model.WBS_WbsSetMatchCostControlInit newUP = new Model.WBS_WbsSetMatchCostControlInit();
|
||||
newUP.WbsSetMatchCostControlInitId = wbsSetMatchCostControlInit.WbsSetMatchCostControlInitId;
|
||||
newUP.WbsSetCode = wbsSetMatchCostControlInit.WbsSetCode;
|
||||
newUP.CostControlInitCode = wbsSetMatchCostControlInit.CostControlInitCode;
|
||||
|
||||
db.WBS_WbsSetMatchCostControlInit.InsertOnSubmit(newUP);
|
||||
db.SubmitChanges();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 修改费控项对应关系
|
||||
/// </summary>
|
||||
/// <param name="user">费控项对应关系</param>
|
||||
public static void UpdateWbsSetMatchCostControlInit(Model.WBS_WbsSetMatchCostControlInit wbsSetMatchCostControlInit)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
Model.WBS_WbsSetMatchCostControlInit newUP = db.WBS_WbsSetMatchCostControlInit.First(e => e.WbsSetMatchCostControlInitId == wbsSetMatchCostControlInit.WbsSetMatchCostControlInitId);
|
||||
|
||||
newUP.WbsSetCode = wbsSetMatchCostControlInit.WbsSetCode;
|
||||
newUP.CostControlInitCode = wbsSetMatchCostControlInit.CostControlInitCode;
|
||||
db.SubmitChanges();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据Id删除费控项对应关系信息
|
||||
/// </summary>
|
||||
/// <param name="userId"></param>
|
||||
public static void DeleteWbsSetMatchCostControlInit(string wbsSetMatchCostControlInitId)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
Model.WBS_WbsSetMatchCostControlInit CnP = db.WBS_WbsSetMatchCostControlInit.First(e => e.WbsSetMatchCostControlInitId.ToString() == wbsSetMatchCostControlInitId);
|
||||
db.WBS_WbsSetMatchCostControlInit.DeleteOnSubmit(CnP);
|
||||
db.SubmitChanges();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据Id删除费控项对应关系信息
|
||||
/// </summary>
|
||||
/// <param name="userId"></param>
|
||||
public static void DeleteWbsSetMatchCostControlInitByWbsSetCodeAndCostControlInitCode(string wbsSetCode,string costControlInitCode)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
Model.WBS_WbsSetMatchCostControlInit CnP = db.WBS_WbsSetMatchCostControlInit.First(e => e.WbsSetCode == wbsSetCode && e.CostControlInitCode== costControlInitCode);
|
||||
if (CnP != null)
|
||||
{
|
||||
db.WBS_WbsSetMatchCostControlInit.DeleteOnSubmit(CnP);
|
||||
db.SubmitChanges();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取费控项对应关系下拉选项
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<Model.WBS_WbsSetMatchCostControlInit> GetWbsSetMatchCostControlInits(string wbsSetCode)
|
||||
{
|
||||
var list = (from x in Funs.DB.WBS_WbsSetMatchCostControlInit where x.WbsSetCode == wbsSetCode orderby x.WbsSetMatchCostControlInitId select x).ToList();
|
||||
return list;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,113 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BLL
|
||||
{
|
||||
public class WbsSetMatchCostControlService
|
||||
{
|
||||
/// <summary>
|
||||
/// 根据费控项对应关系Id获取费控项对应关系信息
|
||||
/// </summary>
|
||||
/// <param name="unitProjectId">费控项对应关系Id</param>
|
||||
/// <returns></returns>
|
||||
public static Model.WBS_WbsSetMatchCostControl GetWbsSetMatchCostControlByWbsSetMatchCostControlId(string wbsSetMatchCostControlId)
|
||||
{
|
||||
return Funs.DB.WBS_WbsSetMatchCostControl.FirstOrDefault(e => e.WbsSetMatchCostControlId.ToString() == wbsSetMatchCostControlId);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据费控项对应关系Id获取费控项对应关系信息
|
||||
/// </summary>
|
||||
/// <param name="unitProjectId">费控项对应关系Id</param>
|
||||
/// <returns></returns>
|
||||
public static Model.WBS_WbsSetMatchCostControl GetWbsSetMatchCostControlByWbsSetIdAndCostControlCode(string wbsSetId, string costControlCode)
|
||||
{
|
||||
return Funs.DB.WBS_WbsSetMatchCostControl.FirstOrDefault(e => e.WbsSetId == wbsSetId && e.CostControlCode == costControlCode);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 增加费控项对应关系
|
||||
/// </summary>
|
||||
/// <param name="user">费控项对应关系</param>
|
||||
public static void AddWbsSetMatchCostControl(Model.WBS_WbsSetMatchCostControl wbsSetMatchCostControl)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
Model.WBS_WbsSetMatchCostControl newUP = new Model.WBS_WbsSetMatchCostControl();
|
||||
newUP.WbsSetMatchCostControlId = wbsSetMatchCostControl.WbsSetMatchCostControlId;
|
||||
newUP.WbsSetId = wbsSetMatchCostControl.WbsSetId;
|
||||
newUP.CostControlCode = wbsSetMatchCostControl.CostControlCode;
|
||||
|
||||
db.WBS_WbsSetMatchCostControl.InsertOnSubmit(newUP);
|
||||
db.SubmitChanges();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 修改费控项对应关系
|
||||
/// </summary>
|
||||
/// <param name="user">费控项对应关系</param>
|
||||
public static void UpdateWbsSetMatchCostControl(Model.WBS_WbsSetMatchCostControl wbsSetMatchCostControl)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
Model.WBS_WbsSetMatchCostControl newUP = db.WBS_WbsSetMatchCostControl.First(e => e.WbsSetMatchCostControlId == wbsSetMatchCostControl.WbsSetMatchCostControlId);
|
||||
|
||||
newUP.WbsSetId = wbsSetMatchCostControl.WbsSetId;
|
||||
newUP.CostControlCode = wbsSetMatchCostControl.CostControlCode;
|
||||
db.SubmitChanges();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据Id删除费控项对应关系信息
|
||||
/// </summary>
|
||||
/// <param name="userId"></param>
|
||||
public static void DeleteWbsSetMatchCostControl(string wbsSetMatchCostControlId)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
Model.WBS_WbsSetMatchCostControl CnP = db.WBS_WbsSetMatchCostControl.First(e => e.WbsSetMatchCostControlId.ToString() == wbsSetMatchCostControlId);
|
||||
db.WBS_WbsSetMatchCostControl.DeleteOnSubmit(CnP);
|
||||
db.SubmitChanges();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据Id删除费控项对应关系信息
|
||||
/// </summary>
|
||||
/// <param name="userId"></param>
|
||||
public static void DeleteWbsSetMatchCostControlByWbsSetIdAndCostControlCode(string wbsSetId, string costControlCode)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
Model.WBS_WbsSetMatchCostControl CnP = db.WBS_WbsSetMatchCostControl.First(e => e.WbsSetId == wbsSetId && e.CostControlCode == costControlCode);
|
||||
if (CnP != null)
|
||||
{
|
||||
db.WBS_WbsSetMatchCostControl.DeleteOnSubmit(CnP);
|
||||
db.SubmitChanges();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据Id删除费控项对应关系信息
|
||||
/// </summary>
|
||||
/// <param name="userId"></param>
|
||||
public static void DeleteWbsSetMatchCostControlByWbsSetId(string wbsSetId)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
var CnP = from x in db.WBS_WbsSetMatchCostControl where x.WbsSetId == wbsSetId select x;
|
||||
if (CnP.Count()>0)
|
||||
{
|
||||
db.WBS_WbsSetMatchCostControl.DeleteAllOnSubmit(CnP);
|
||||
db.SubmitChanges();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取费控项对应关系下拉选项
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static List<Model.WBS_WbsSetMatchCostControl> GetWbsSetMatchCostControls(string wbsSetId)
|
||||
{
|
||||
var list = (from x in Funs.DB.WBS_WbsSetMatchCostControl where x.WbsSetId == wbsSetId orderby x.WbsSetMatchCostControlId select x).ToList();
|
||||
return list;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -147,7 +147,17 @@ namespace BLL
|
||||
/// <returns></returns>
|
||||
public static List<Model.Wbs_WbsSet> GetWbsSetsBySuperWbsSetId(string superWbsSetId)
|
||||
{
|
||||
return (from x in Funs.DB.Wbs_WbsSet where x.SuperWbsSetId == superWbsSetId && x.NoShow == null orderby x.SortIndex, x.WbsSetCode select x).ToList();
|
||||
return (from x in Funs.DB.Wbs_WbsSet where x.SuperWbsSetId == superWbsSetId orderby x.WbsSetCode select x).ToList();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据上级Id获取集合
|
||||
/// </summary>
|
||||
/// <param name="superWbsSetId">上级Id</param>
|
||||
/// <returns></returns>
|
||||
public static List<Model.Wbs_WbsSet> GetApproveWbsSetsBySuperWbsSetId(string superWbsSetId)
|
||||
{
|
||||
return (from x in Funs.DB.Wbs_WbsSet where x.SuperWbsSetId == superWbsSetId && x.IsApprove == true orderby x.WbsSetCode select x).ToList();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -157,7 +167,7 @@ namespace BLL
|
||||
/// <returns></returns>
|
||||
public static List<Model.Wbs_WbsSet> GetIsChildWbsSetsBySuperWbsSetId(string superWbsSetId)
|
||||
{
|
||||
return (from x in Funs.DB.Wbs_WbsSet where x.SuperWbsSetId == superWbsSetId && x.IsChild == null orderby x.SortIndex, x.WbsSetCode select x).ToList();
|
||||
return (from x in Funs.DB.Wbs_WbsSet where x.SuperWbsSetId == superWbsSetId && x.IsChild == null orderby x.WbsSetCode select x).ToList();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -287,16 +297,6 @@ namespace BLL
|
||||
return ids;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据上级Id获取审核批准的集合
|
||||
/// </summary>
|
||||
/// <param name="superWbsSetId">上级Id</param>
|
||||
/// <returns></returns>
|
||||
public static List<Model.Wbs_WbsSet> GetApproveWbsSetsBySuperWbsSetId(string superWbsSetId)
|
||||
{
|
||||
return (from x in Funs.DB.Wbs_WbsSet where x.SuperWbsSetId == superWbsSetId && x.IsApprove == true && x.NoShow == null orderby x.SortIndex, x.WbsSetCode select x).ToList();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据分部/子分部/分项/子分项工程Id获取分部/子分部/分项/子分项工程信息
|
||||
/// </summary>
|
||||
@@ -306,5 +306,71 @@ namespace BLL
|
||||
{
|
||||
return Funs.DB.Wbs_WbsSet.FirstOrDefault(e => e.WbsSetId == wbsSetId);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据分部/子分部/分项/子分项工程Id获取分部/子分部/分项/子分项工程信息
|
||||
/// </summary>
|
||||
/// <param name="unitProjectId">分部/子分部/分项/子分项工程Id</param>
|
||||
/// <returns></returns>
|
||||
public static Model.Wbs_WbsSet GetWbsSetByWbsSetCode(string wbsSetCode, string projectId)
|
||||
{
|
||||
return Funs.DB.Wbs_WbsSet.FirstOrDefault(e => e.WbsSetCode == wbsSetCode && e.ProjectId == projectId);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据装置、专业Id和分部编号获取分部Id
|
||||
/// </summary>
|
||||
/// <param name="unitProjectId">专业Id</param>
|
||||
/// <returns></returns>
|
||||
public static List<string> GetWbsSetIdByInstallationIdAndCNCodeAndUnitProjectCodeAndWbsSetCode(string installationId, string cnCode, string unitProjectCode, string wbsSetCode)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
string inId = string.Empty;
|
||||
Model.Project_Installation ins = db.Project_Installation.FirstOrDefault(x => x.InstallationId == installationId);
|
||||
if (ins.IsEnd == true)
|
||||
{
|
||||
inId = installationId;
|
||||
}
|
||||
else
|
||||
{
|
||||
inId = Project_InstallationService.GetEndInstallationId(installationId);
|
||||
}
|
||||
var cn = (from x in db.WBS_CnProfession where x.InstallationId == inId && x.OldId.ToString() == cnCode select x).FirstOrDefault();
|
||||
var list = (from x in db.Wbs_WbsSet
|
||||
join y in db.Wbs_UnitProject
|
||||
on x.UnitProjectId equals y.UnitProjectId
|
||||
where x.CnProfessionId == cn.CnProfessionId && y.UnitProjectCode == unitProjectCode && x.WbsSetCode==wbsSetCode select x.WbsSetId).ToList();
|
||||
return list;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据专业Id和分部编号获取分部Id
|
||||
/// </summary>
|
||||
/// <param name="unitProjectId">专业Id</param>
|
||||
/// <returns></returns>
|
||||
public static List<string> GetWbsSetIdByCnProfessionIdAndUnitProjectCodeAndWbsSetCode(string cnProfessionId, string unitProjectCode, string wbsSetCode)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
var list = (from x in db.Wbs_WbsSet
|
||||
join y in db.Wbs_UnitProject
|
||||
on x.UnitProjectId equals y.UnitProjectId
|
||||
where x.CnProfessionId == cnProfessionId && y.UnitProjectCode == unitProjectCode && x.WbsSetCode == wbsSetCode
|
||||
select x.WbsSetId).ToList();
|
||||
return list;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据分部Id获取分部Id
|
||||
/// </summary>
|
||||
/// <param name="unitProjectId">专业Id</param>
|
||||
/// <returns></returns>
|
||||
public static List<string> GetWbsSetIdByUnitProjectIdAndWbsSetCode(string unitProjectId, string wbsSetCode)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
var list = (from x in db.Wbs_WbsSet
|
||||
where x.UnitProjectId == unitProjectId && x.WbsSetCode == wbsSetCode
|
||||
select x.WbsSetId).ToList();
|
||||
return list;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,850 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data;
|
||||
using System.Linq;
|
||||
|
||||
namespace BLL
|
||||
{
|
||||
public static class WorkloadStatisticsService
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取模拟树表格
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public static DataTable GetTreeDataTable(string projectId, DateTime months, string cnProfessionId, string unitProjectCode, string wbsSetCode)
|
||||
{
|
||||
List<Model.View_WBS_CostControlDetailStatistics> CostControlDetailStatisticsList = new List<Model.View_WBS_CostControlDetailStatistics>();
|
||||
DataTable table = new DataTable();
|
||||
table.Columns.Add(new DataColumn("Id", typeof(String)));
|
||||
table.Columns.Add(new DataColumn("SupId", typeof(String)));
|
||||
table.Columns.Add(new DataColumn("Name", typeof(String)));
|
||||
table.Columns.Add(new DataColumn("ProjectId", typeof(String)));
|
||||
table.Columns.Add(new DataColumn("Unit", typeof(String)));
|
||||
table.Columns.Add(new DataColumn("TotalNum", typeof(String)));
|
||||
table.Columns.Add(new DataColumn("RealPrice", typeof(String)));
|
||||
table.Columns.Add(new DataColumn("PlanNum", typeof(String)));
|
||||
table.Columns.Add(new DataColumn("ThisNum", typeof(String)));
|
||||
table.Columns.Add(new DataColumn("PlanPrice", typeof(String)));
|
||||
table.Columns.Add(new DataColumn("ThisRealCost", typeof(String)));
|
||||
table.Columns.Add(new DataColumn("ThisPlanValue", typeof(String)));
|
||||
table.Columns.Add(new DataColumn("ThisPlanCost", typeof(String)));
|
||||
table.Columns.Add(new DataColumn("TotalPlanNum", typeof(String)));
|
||||
table.Columns.Add(new DataColumn("TotalThisNum", typeof(String)));
|
||||
table.Columns.Add(new DataColumn("TotalRealCost", typeof(String)));
|
||||
table.Columns.Add(new DataColumn("TotalPlanValue", typeof(String)));
|
||||
table.Columns.Add(new DataColumn("TotalPlanCost", typeof(String)));
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
var costControls = from x in db.WBS_CostControl where x.ProjectId == projectId select x;
|
||||
var details = from x in db.View_WBS_CostControlDetail where x.ProjectId == projectId select x;
|
||||
var parentDetails = from x in db.View_WBS_CostControlParentDetail select x;
|
||||
var wbsSets = from x in db.Wbs_WbsSet where x.ProjectId == projectId select x;
|
||||
var wbsSetInits = from x in db.WBS_WbsSetInit select x;
|
||||
var unitProjects = from x in db.Wbs_UnitProject where x.ProjectId == projectId select x;
|
||||
var unitProjectInits = from x in db.Wbs_UnitProjectInit select x;
|
||||
var cnProfessions = from x in db.WBS_CnProfession where x.ProjectId == projectId select x;
|
||||
var cnProfessionInits = from x in db.WBS_CnProfessionInit select x;
|
||||
var installations = from x in db.Project_Installation where x.ProjectId == projectId select x;
|
||||
CostControlDetailStatisticsList = (from x in db.View_WBS_CostControlDetailStatistics where x.ProjectId == projectId select x).Distinct().ToList();
|
||||
DataRow row; DataRow parentRow;
|
||||
#region 全部统计
|
||||
if (cnProfessionId == BLL.Const._Null) //全部统计
|
||||
{
|
||||
foreach (Model.View_WBS_CostControlDetailStatistics item in CostControlDetailStatisticsList)
|
||||
{
|
||||
row = table.NewRow();
|
||||
row[0] = item.Id;
|
||||
row[1] = item.SupId;
|
||||
row[2] = item.Name;
|
||||
row[3] = item.ProjectId;
|
||||
Model.WBS_CostControl costControl = costControls.FirstOrDefault(x => x.CostControlId == item.Id);
|
||||
if (costControl != null)
|
||||
{
|
||||
Model.View_WBS_CostControlDetail detail = details.FirstOrDefault(x => x.CostControlId == item.Id && x.Months == months);
|
||||
if (detail != null)
|
||||
{
|
||||
row[4] = detail.Unit;//单位
|
||||
row[5] = decimal.Round(Convert.ToDecimal(detail.TotalNum), 2);//合同工作量
|
||||
row[6] = decimal.Round(Convert.ToDecimal(detail.RealPrice), 2);//成本单价
|
||||
row[7] = decimal.Round(Convert.ToDecimal(detail.PlanNum), 2);//本月计划完成量
|
||||
row[8] = decimal.Round(Convert.ToDecimal(detail.ThisNum), 2);//本月完成量
|
||||
row[9] = decimal.Round(Convert.ToDecimal(detail.PlanPrice), 2);//控制预算单价
|
||||
row[10] = decimal.Round(Convert.ToDecimal(detail.ThisRealCost), 2);//本月实际成本
|
||||
row[11] = decimal.Round(Convert.ToDecimal(detail.ThisPlanValue), 2);//本月计划完成预算
|
||||
row[12] = decimal.Round(Convert.ToDecimal(detail.ThisPlanCost), 2);//本月完成预算
|
||||
row[13] = decimal.Round(Convert.ToDecimal(detail.TotalPlanNum), 2);//累计计划完成量
|
||||
row[14] = decimal.Round(Convert.ToDecimal(detail.TotalThisNum), 2);//累计完成量
|
||||
row[15] = decimal.Round(Convert.ToDecimal(detail.TotalRealCost), 2);//累计完成成本
|
||||
row[16] = decimal.Round(Convert.ToDecimal(detail.TotalPlanValue), 2);//累计计划完成预算
|
||||
row[17] = decimal.Round(Convert.ToDecimal(detail.TotalPlanCost), 2);//累计完成预算
|
||||
}
|
||||
else
|
||||
{
|
||||
Model.View_WBS_CostControlDetail lastDetail = details.OrderByDescending(x => x.Months).FirstOrDefault(x => x.CostControlId == item.Id);
|
||||
if (lastDetail != null && lastDetail.Months <= months)
|
||||
{
|
||||
row[4] = lastDetail.Unit;//单位
|
||||
row[5] = decimal.Round(Convert.ToDecimal(lastDetail.TotalNum), 2);//合同工作量
|
||||
row[6] = decimal.Round(Convert.ToDecimal(lastDetail.RealPrice), 2);//成本单价
|
||||
row[7] = decimal.Round(Convert.ToDecimal(lastDetail.PlanNum), 2);//本月计划完成量
|
||||
row[8] = decimal.Round(Convert.ToDecimal(lastDetail.ThisNum), 2);//本月完成量
|
||||
row[9] = decimal.Round(Convert.ToDecimal(lastDetail.PlanPrice), 2);//控制预算单价
|
||||
row[13] = decimal.Round(Convert.ToDecimal(lastDetail.TotalPlanNum), 2);//累计计划完成量
|
||||
row[14] = decimal.Round(Convert.ToDecimal(lastDetail.TotalThisNum), 2);//累计完成量
|
||||
row[15] = decimal.Round(Convert.ToDecimal(lastDetail.TotalRealCost), 2);//累计完成成本
|
||||
row[16] = decimal.Round(Convert.ToDecimal(lastDetail.TotalPlanValue), 2);//累计计划完成预算
|
||||
row[17] = decimal.Round(Convert.ToDecimal(lastDetail.TotalPlanCost), 2);//累计完成预算
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
Model.View_WBS_CostControlParentDetail parentDetail = parentDetails.FirstOrDefault(x => x.ParentId == item.Id && x.Months == months);
|
||||
if (parentDetail != null)
|
||||
{
|
||||
row[10] = decimal.Round(Convert.ToDecimal(parentDetail.ThisRealCost), 2);//本月实际成本
|
||||
row[11] = decimal.Round(Convert.ToDecimal(parentDetail.ThisPlanValue), 2);//本月计划完成预算
|
||||
row[12] = decimal.Round(Convert.ToDecimal(parentDetail.ThisPlanCost), 2);//本月完成预算
|
||||
row[15] = decimal.Round(Convert.ToDecimal(parentDetail.TotalRealCost), 2);//累计完成成本
|
||||
row[16] = decimal.Round(Convert.ToDecimal(parentDetail.TotalPlanValue), 2);//累计计划完成预算
|
||||
row[17] = decimal.Round(Convert.ToDecimal(parentDetail.TotalPlanCost), 2);//累计完成预算
|
||||
}
|
||||
else
|
||||
{
|
||||
Model.View_WBS_CostControlParentDetail parentLastDetail = parentDetails.OrderByDescending(x => x.Months).FirstOrDefault(x => x.ParentId == item.Id);
|
||||
if (parentLastDetail != null && parentLastDetail.Months <= months)
|
||||
{
|
||||
row[15] = decimal.Round(Convert.ToDecimal(parentLastDetail.TotalRealCost), 2);//累计完成成本
|
||||
row[16] = decimal.Round(Convert.ToDecimal(parentLastDetail.TotalPlanValue), 2);//累计计划完成预算
|
||||
row[17] = decimal.Round(Convert.ToDecimal(parentLastDetail.TotalPlanCost), 2);//累计完成预算
|
||||
}
|
||||
}
|
||||
}
|
||||
table.Rows.Add(row);
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
else
|
||||
{
|
||||
decimal d10 = 0, d11 = 0, d12 = 0, d15 = 0, d16 = 0, d17 = 0;
|
||||
#region 按专业
|
||||
if (unitProjectCode == BLL.Const._Null)
|
||||
{
|
||||
CostControlDetailStatisticsList = (from x in CostControlDetailStatisticsList where (x.WBSType == "Installation" && x.Name != "总图") || (x.WBSType != "Installation" && x.OldCnProfessionId.ToString() == cnProfessionId) select x).ToList();
|
||||
var cn = cnProfessionInits.FirstOrDefault(x => x.CnProfessionId.ToString() == cnProfessionId);
|
||||
parentRow = table.NewRow();
|
||||
parentRow[0] = cn.CnProfessionId.ToString();
|
||||
parentRow[1] = "0";
|
||||
parentRow[2] = cn.CnProfessionName;
|
||||
parentRow[3] = projectId;
|
||||
foreach (Model.View_WBS_CostControlDetailStatistics item in CostControlDetailStatisticsList)
|
||||
{
|
||||
row = table.NewRow();
|
||||
row[0] = item.Id;
|
||||
row[2] = item.Name;
|
||||
row[3] = item.ProjectId;
|
||||
if (item.WBSType == "Installation")
|
||||
{
|
||||
if (item.SupId == "0")
|
||||
{
|
||||
row[1] = cn.CnProfessionId.ToString();
|
||||
}
|
||||
else
|
||||
{
|
||||
row[1] = item.SupId;
|
||||
}
|
||||
string cnId = BLL.CnProfessionService.GetCnProfessionIdByInstallationIdAndOldId(item.Id, cnProfessionId);
|
||||
Model.View_WBS_CostControlParentDetail parentDetail = parentDetails.FirstOrDefault(x => x.ParentId == cnId && x.Months == months);
|
||||
if (parentDetail != null)
|
||||
{
|
||||
row[10] = decimal.Round(Convert.ToDecimal(parentDetail.ThisRealCost), 2);//本月实际成本
|
||||
row[11] = decimal.Round(Convert.ToDecimal(parentDetail.ThisPlanValue), 2);//本月计划完成预算
|
||||
row[12] = decimal.Round(Convert.ToDecimal(parentDetail.ThisPlanCost), 2);//本月完成预算
|
||||
row[15] = decimal.Round(Convert.ToDecimal(parentDetail.TotalRealCost), 2);//累计完成成本
|
||||
row[16] = decimal.Round(Convert.ToDecimal(parentDetail.TotalPlanValue), 2);//累计计划完成预算
|
||||
row[17] = decimal.Round(Convert.ToDecimal(parentDetail.TotalPlanCost), 2);//累计完成预算
|
||||
}
|
||||
else
|
||||
{
|
||||
Model.View_WBS_CostControlParentDetail parentLastDetail = parentDetails.OrderByDescending(x => x.Months).FirstOrDefault(x => x.ParentId == cnId);
|
||||
if (parentLastDetail != null && parentLastDetail.Months <= months)
|
||||
{
|
||||
row[15] = decimal.Round(Convert.ToDecimal(parentLastDetail.TotalRealCost), 2);//累计完成成本
|
||||
row[16] = decimal.Round(Convert.ToDecimal(parentLastDetail.TotalPlanValue), 2);//累计计划完成预算
|
||||
row[17] = decimal.Round(Convert.ToDecimal(parentLastDetail.TotalPlanCost), 2);//累计完成预算
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (item.WBSType == "CnProfession")
|
||||
{
|
||||
row[1] = item.SupId;
|
||||
Model.View_WBS_CostControlParentDetail parentDetail = parentDetails.FirstOrDefault(x => x.ParentId == item.Id && x.Months == months);
|
||||
if (parentDetail != null)
|
||||
{
|
||||
row[10] = decimal.Round(Convert.ToDecimal(parentDetail.ThisRealCost), 2);//本月实际成本
|
||||
row[11] = decimal.Round(Convert.ToDecimal(parentDetail.ThisPlanValue), 2);//本月计划完成预算
|
||||
row[12] = decimal.Round(Convert.ToDecimal(parentDetail.ThisPlanCost), 2);//本月完成预算
|
||||
row[15] = decimal.Round(Convert.ToDecimal(parentDetail.TotalRealCost), 2);//累计完成成本
|
||||
row[16] = decimal.Round(Convert.ToDecimal(parentDetail.TotalPlanValue), 2);//累计计划完成预算
|
||||
row[17] = decimal.Round(Convert.ToDecimal(parentDetail.TotalPlanCost), 2);//累计完成预算
|
||||
d10 += decimal.Round(Convert.ToDecimal(parentDetail.ThisRealCost), 2);
|
||||
d11 += decimal.Round(Convert.ToDecimal(parentDetail.ThisPlanValue), 2);
|
||||
d12 += decimal.Round(Convert.ToDecimal(parentDetail.ThisPlanCost), 2);
|
||||
d15 += decimal.Round(Convert.ToDecimal(parentDetail.TotalRealCost), 2);
|
||||
d16 += decimal.Round(Convert.ToDecimal(parentDetail.TotalPlanValue), 2);
|
||||
d17 += decimal.Round(Convert.ToDecimal(parentDetail.TotalPlanCost), 2);
|
||||
}
|
||||
else
|
||||
{
|
||||
Model.View_WBS_CostControlParentDetail parentLastDetail = parentDetails.OrderByDescending(x => x.Months).FirstOrDefault(x => x.ParentId == item.Id);
|
||||
if (parentLastDetail != null && parentLastDetail.Months <= months)
|
||||
{
|
||||
row[15] = decimal.Round(Convert.ToDecimal(parentLastDetail.TotalRealCost), 2);//累计完成成本
|
||||
row[16] = decimal.Round(Convert.ToDecimal(parentLastDetail.TotalPlanValue), 2);//累计计划完成预算
|
||||
row[17] = decimal.Round(Convert.ToDecimal(parentLastDetail.TotalPlanCost), 2);//累计完成预算
|
||||
d15 += decimal.Round(Convert.ToDecimal(parentLastDetail.TotalRealCost), 2);
|
||||
d16 += decimal.Round(Convert.ToDecimal(parentLastDetail.TotalPlanValue), 2);
|
||||
d17 += decimal.Round(Convert.ToDecimal(parentLastDetail.TotalPlanCost), 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (item.WBSType == "UnitProject")
|
||||
{
|
||||
row[1] = item.SupId;
|
||||
Model.View_WBS_CostControlParentDetail parentDetail = parentDetails.FirstOrDefault(x => x.ParentId == item.Id && x.Months == months);
|
||||
if (parentDetail != null)
|
||||
{
|
||||
row[10] = decimal.Round(Convert.ToDecimal(parentDetail.ThisRealCost), 2);//本月实际成本
|
||||
row[11] = decimal.Round(Convert.ToDecimal(parentDetail.ThisPlanValue), 2);//本月计划完成预算
|
||||
row[12] = decimal.Round(Convert.ToDecimal(parentDetail.ThisPlanCost), 2);//本月完成预算
|
||||
row[15] = decimal.Round(Convert.ToDecimal(parentDetail.TotalRealCost), 2);//累计完成成本
|
||||
row[16] = decimal.Round(Convert.ToDecimal(parentDetail.TotalPlanValue), 2);//累计计划完成预算
|
||||
row[17] = decimal.Round(Convert.ToDecimal(parentDetail.TotalPlanCost), 2);//累计完成预算
|
||||
}
|
||||
else
|
||||
{
|
||||
Model.View_WBS_CostControlParentDetail parentLastDetail = parentDetails.OrderByDescending(x => x.Months).FirstOrDefault(x => x.ParentId == item.Id);
|
||||
if (parentLastDetail != null && parentLastDetail.Months <= months)
|
||||
{
|
||||
row[15] = decimal.Round(Convert.ToDecimal(parentLastDetail.TotalRealCost), 2);//累计完成成本
|
||||
row[16] = decimal.Round(Convert.ToDecimal(parentLastDetail.TotalPlanValue), 2);//累计计划完成预算
|
||||
row[17] = decimal.Round(Convert.ToDecimal(parentLastDetail.TotalPlanCost), 2);//累计完成预算
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (item.WBSType == "WbsSet")
|
||||
{
|
||||
row[1] = item.SupId;
|
||||
Model.View_WBS_CostControlParentDetail parentDetail = parentDetails.FirstOrDefault(x => x.ParentId == item.Id && x.Months == months);
|
||||
if (parentDetail != null)
|
||||
{
|
||||
row[10] = decimal.Round(Convert.ToDecimal(parentDetail.ThisRealCost), 2);//本月实际成本
|
||||
row[11] = decimal.Round(Convert.ToDecimal(parentDetail.ThisPlanValue), 2);//本月计划完成预算
|
||||
row[12] = decimal.Round(Convert.ToDecimal(parentDetail.ThisPlanCost), 2);//本月完成预算
|
||||
row[15] = decimal.Round(Convert.ToDecimal(parentDetail.TotalRealCost), 2);//累计完成成本
|
||||
row[16] = decimal.Round(Convert.ToDecimal(parentDetail.TotalPlanValue), 2);//累计计划完成预算
|
||||
row[17] = decimal.Round(Convert.ToDecimal(parentDetail.TotalPlanCost), 2);//累计完成预算
|
||||
}
|
||||
else
|
||||
{
|
||||
Model.View_WBS_CostControlParentDetail parentLastDetail = parentDetails.OrderByDescending(x => x.Months).FirstOrDefault(x => x.ParentId == item.Id);
|
||||
if (parentLastDetail != null && parentLastDetail.Months <= months)
|
||||
{
|
||||
row[15] = decimal.Round(Convert.ToDecimal(parentLastDetail.TotalRealCost), 2);//累计完成成本
|
||||
row[16] = decimal.Round(Convert.ToDecimal(parentLastDetail.TotalPlanValue), 2);//累计计划完成预算
|
||||
row[17] = decimal.Round(Convert.ToDecimal(parentLastDetail.TotalPlanCost), 2);//累计完成预算
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (item.WBSType == "CostControl")
|
||||
{
|
||||
row[1] = item.SupId;
|
||||
Model.View_WBS_CostControlDetail detail = details.FirstOrDefault(x => x.CostControlId == item.Id && x.Months == months);
|
||||
if (detail != null)
|
||||
{
|
||||
row[4] = detail.Unit;//单位
|
||||
row[5] = decimal.Round(Convert.ToDecimal(detail.TotalNum), 2);//合同工作量
|
||||
row[6] = decimal.Round(Convert.ToDecimal(detail.RealPrice), 2);//成本单价
|
||||
row[7] = decimal.Round(Convert.ToDecimal(detail.PlanNum), 2);//本月计划完成量
|
||||
row[8] = decimal.Round(Convert.ToDecimal(detail.ThisNum), 2);//本月完成量
|
||||
row[9] = decimal.Round(Convert.ToDecimal(detail.PlanPrice), 2);//控制预算单价
|
||||
row[10] = decimal.Round(Convert.ToDecimal(detail.ThisRealCost), 2);//本月实际成本
|
||||
row[11] = decimal.Round(Convert.ToDecimal(detail.ThisPlanValue), 2);//本月计划完成预算
|
||||
row[12] = decimal.Round(Convert.ToDecimal(detail.ThisPlanCost), 2);//本月完成预算
|
||||
row[13] = decimal.Round(Convert.ToDecimal(detail.TotalPlanNum), 2);//累计计划完成量
|
||||
row[14] = decimal.Round(Convert.ToDecimal(detail.TotalThisNum), 2);//累计完成量
|
||||
row[15] = decimal.Round(Convert.ToDecimal(detail.TotalRealCost), 2);//累计完成成本
|
||||
row[16] = decimal.Round(Convert.ToDecimal(detail.TotalPlanValue), 2);//累计计划完成预算
|
||||
row[17] = decimal.Round(Convert.ToDecimal(detail.TotalPlanCost), 2);//累计完成预算
|
||||
}
|
||||
else
|
||||
{
|
||||
Model.View_WBS_CostControlDetail lastDetail = details.OrderByDescending(x => x.Months).FirstOrDefault(x => x.CostControlId == item.Id);
|
||||
if (lastDetail != null && lastDetail.Months <= months)
|
||||
{
|
||||
row[4] = lastDetail.Unit;//单位
|
||||
row[5] = decimal.Round(Convert.ToDecimal(lastDetail.TotalNum), 2);//合同工作量
|
||||
row[6] = decimal.Round(Convert.ToDecimal(lastDetail.RealPrice), 2);//成本单价
|
||||
row[7] = decimal.Round(Convert.ToDecimal(lastDetail.PlanNum), 2);//本月计划完成量
|
||||
row[8] = decimal.Round(Convert.ToDecimal(lastDetail.ThisNum), 2);//本月完成量
|
||||
row[9] = decimal.Round(Convert.ToDecimal(lastDetail.PlanPrice), 2);//控制预算单价
|
||||
row[13] = decimal.Round(Convert.ToDecimal(lastDetail.TotalPlanNum), 2);//累计计划完成量
|
||||
row[14] = decimal.Round(Convert.ToDecimal(lastDetail.TotalThisNum), 2);//累计完成量
|
||||
row[15] = decimal.Round(Convert.ToDecimal(lastDetail.TotalRealCost), 2);//累计完成成本
|
||||
row[16] = decimal.Round(Convert.ToDecimal(lastDetail.TotalPlanValue), 2);//累计计划完成预算
|
||||
row[17] = decimal.Round(Convert.ToDecimal(lastDetail.TotalPlanCost), 2);//累计完成预算
|
||||
}
|
||||
}
|
||||
}
|
||||
table.Rows.Add(row);
|
||||
}
|
||||
if (d10 != 0)
|
||||
{
|
||||
parentRow[10] = decimal.Round(d10, 2);//本月实际成本
|
||||
parentRow[11] = decimal.Round(d11, 2);//本月计划完成预算
|
||||
parentRow[12] = decimal.Round(d12, 2);//本月完成预算
|
||||
parentRow[15] = decimal.Round(d15, 2);//累计完成成本
|
||||
parentRow[16] = decimal.Round(d16, 2);//累计计划完成预算
|
||||
parentRow[17] = decimal.Round(d17, 2);//累计完成预算
|
||||
}
|
||||
else
|
||||
{
|
||||
parentRow[15] = decimal.Round(d15, 2);//累计完成成本
|
||||
parentRow[16] = decimal.Round(d16, 2);//累计计划完成预算
|
||||
parentRow[17] = decimal.Round(d17, 2);//累计完成预算
|
||||
}
|
||||
table.Rows.Add(parentRow);
|
||||
}
|
||||
#endregion
|
||||
#region 按分部工程
|
||||
else if (wbsSetCode == BLL.Const._Null)
|
||||
{
|
||||
CostControlDetailStatisticsList = (from x in CostControlDetailStatisticsList where (x.WBSType == "Installation" && x.Name != "总图") || (x.WBSType == "CnProfession" && x.OldCnProfessionId.ToString() == cnProfessionId) || (x.WBSType != "Installation" && x.WBSType != "CnProfession" && x.OldCnProfessionId.ToString() == cnProfessionId && x.OldUnitProjectCode == unitProjectCode) select x).ToList();
|
||||
var up = unitProjectInits.FirstOrDefault(x => x.UnitProjectCode == unitProjectCode);
|
||||
parentRow = table.NewRow();
|
||||
parentRow[0] = up.UnitProjectCode;
|
||||
parentRow[1] = "0";
|
||||
parentRow[2] = up.UnitProjectName;
|
||||
parentRow[3] = projectId;
|
||||
foreach (Model.View_WBS_CostControlDetailStatistics item in CostControlDetailStatisticsList)
|
||||
{
|
||||
row = table.NewRow();
|
||||
row[0] = item.Id;
|
||||
row[2] = item.Name;
|
||||
row[3] = item.ProjectId;
|
||||
if (item.WBSType == "Installation")
|
||||
{
|
||||
decimal ind10 = 0, ind11 = 0, ind12 = 0, ind15 = 0, ind16 = 0, ind17 = 0;
|
||||
if (item.SupId == "0")
|
||||
{
|
||||
row[1] = up.UnitProjectCode;
|
||||
}
|
||||
else
|
||||
{
|
||||
row[1] = item.SupId;
|
||||
}
|
||||
List<string> unitProjectIds = BLL.UnitProjectService.GetUnitProjectIdByInstallationIdAndCNCodeAndUnitProjectCode(item.Id, cnProfessionId, unitProjectCode);
|
||||
foreach (var upId in unitProjectIds)
|
||||
{
|
||||
Model.View_WBS_CostControlParentDetail parentDetail = parentDetails.FirstOrDefault(x => x.ParentId == upId && x.Months == months);
|
||||
if (parentDetail != null)
|
||||
{
|
||||
ind10 += decimal.Round(Convert.ToDecimal(parentDetail.ThisRealCost), 2);
|
||||
ind11 += decimal.Round(Convert.ToDecimal(parentDetail.ThisPlanValue), 2);
|
||||
ind12 += decimal.Round(Convert.ToDecimal(parentDetail.ThisPlanCost), 2);
|
||||
ind15 += decimal.Round(Convert.ToDecimal(parentDetail.TotalRealCost), 2);
|
||||
ind16 += decimal.Round(Convert.ToDecimal(parentDetail.TotalPlanValue), 2);
|
||||
ind17 += decimal.Round(Convert.ToDecimal(parentDetail.TotalPlanCost), 2);
|
||||
}
|
||||
else
|
||||
{
|
||||
Model.View_WBS_CostControlParentDetail parentLastDetail = parentDetails.OrderByDescending(x => x.Months).FirstOrDefault(x => x.ParentId == upId);
|
||||
if (parentLastDetail != null && parentLastDetail.Months <= months)
|
||||
{
|
||||
ind15 += decimal.Round(Convert.ToDecimal(parentLastDetail.TotalRealCost), 2);
|
||||
ind16 += decimal.Round(Convert.ToDecimal(parentLastDetail.TotalPlanValue), 2);
|
||||
ind17 += decimal.Round(Convert.ToDecimal(parentLastDetail.TotalPlanCost), 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (ind10 != 0)
|
||||
{
|
||||
row[10] = decimal.Round(ind10, 2);//本月实际成本
|
||||
row[11] = decimal.Round(ind11, 2);//本月计划完成预算
|
||||
row[12] = decimal.Round(ind12, 2);//本月完成预算
|
||||
row[15] = decimal.Round(ind15, 2);//累计完成成本
|
||||
row[16] = decimal.Round(ind16, 2);//累计计划完成预算
|
||||
row[17] = decimal.Round(ind17, 2);//累计完成预算
|
||||
}
|
||||
else
|
||||
{
|
||||
if (ind15 > 0)
|
||||
{
|
||||
row[15] = decimal.Round(ind15, 2);//累计完成成本
|
||||
}
|
||||
if (ind16 > 0)
|
||||
{
|
||||
row[16] = decimal.Round(ind16, 2);//累计计划完成预算
|
||||
}
|
||||
if (ind17 > 0)
|
||||
{
|
||||
row[17] = decimal.Round(ind17, 2);//累计完成预算
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (item.WBSType == "CnProfession")
|
||||
{
|
||||
decimal cnd10 = 0, cnd11 = 0, cnd12 = 0, cnd15 = 0, cnd16 = 0, cnd17 = 0;
|
||||
row[1] = item.SupId;
|
||||
List<string> unitProjectIds = BLL.UnitProjectService.GetUnitProjectIdByCnProfessionIdAndUnitProjectCode(item.Id, unitProjectCode);
|
||||
foreach (var upId in unitProjectIds)
|
||||
{
|
||||
Model.View_WBS_CostControlParentDetail parentDetail = parentDetails.FirstOrDefault(x => x.ParentId == upId && x.Months == months);
|
||||
if (parentDetail != null)
|
||||
{
|
||||
cnd10 += decimal.Round(Convert.ToDecimal(parentDetail.ThisRealCost), 2);
|
||||
cnd11 += decimal.Round(Convert.ToDecimal(parentDetail.ThisPlanValue), 2);
|
||||
cnd12 += decimal.Round(Convert.ToDecimal(parentDetail.ThisPlanCost), 2);
|
||||
cnd15 += decimal.Round(Convert.ToDecimal(parentDetail.TotalRealCost), 2);
|
||||
cnd16 += decimal.Round(Convert.ToDecimal(parentDetail.TotalPlanValue), 2);
|
||||
cnd17 += decimal.Round(Convert.ToDecimal(parentDetail.TotalPlanCost), 2);
|
||||
}
|
||||
else
|
||||
{
|
||||
Model.View_WBS_CostControlParentDetail parentLastDetail = parentDetails.OrderByDescending(x => x.Months).FirstOrDefault(x => x.ParentId == upId);
|
||||
if (parentLastDetail != null && parentLastDetail.Months <= months)
|
||||
{
|
||||
cnd15 += decimal.Round(Convert.ToDecimal(parentLastDetail.TotalRealCost), 2);
|
||||
cnd16 += decimal.Round(Convert.ToDecimal(parentLastDetail.TotalPlanValue), 2);
|
||||
cnd17 += decimal.Round(Convert.ToDecimal(parentLastDetail.TotalPlanCost), 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (cnd10 != 0)
|
||||
{
|
||||
row[10] = decimal.Round(cnd10, 2);//本月实际成本
|
||||
row[11] = decimal.Round(cnd11, 2);//本月计划完成预算
|
||||
row[12] = decimal.Round(cnd12, 2);//本月完成预算
|
||||
row[15] = decimal.Round(cnd15, 2);//累计完成成本
|
||||
row[16] = decimal.Round(cnd16, 2);//累计计划完成预算
|
||||
row[17] = decimal.Round(cnd17, 2);//累计完成预算
|
||||
}
|
||||
else
|
||||
{
|
||||
if (cnd15 > 0)
|
||||
{
|
||||
row[15] = decimal.Round(cnd15, 2);//累计完成成本
|
||||
}
|
||||
if (cnd16 > 0)
|
||||
{
|
||||
row[16] = decimal.Round(cnd16, 2);//累计计划完成预算
|
||||
}
|
||||
if (cnd17 > 0)
|
||||
{
|
||||
row[17] = decimal.Round(cnd17, 2);//累计完成预算
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (item.WBSType == "UnitProject")
|
||||
{
|
||||
row[1] = item.SupId;
|
||||
Model.View_WBS_CostControlParentDetail parentDetail = parentDetails.FirstOrDefault(x => x.ParentId == item.Id && x.Months == months);
|
||||
if (parentDetail != null)
|
||||
{
|
||||
row[10] = decimal.Round(Convert.ToDecimal(parentDetail.ThisRealCost), 2);//本月实际成本
|
||||
row[11] = decimal.Round(Convert.ToDecimal(parentDetail.ThisPlanValue), 2);//本月计划完成预算
|
||||
row[12] = decimal.Round(Convert.ToDecimal(parentDetail.ThisPlanCost), 2);//本月完成预算
|
||||
row[15] = decimal.Round(Convert.ToDecimal(parentDetail.TotalRealCost), 2);//累计完成成本
|
||||
row[16] = decimal.Round(Convert.ToDecimal(parentDetail.TotalPlanValue), 2);//累计计划完成预算
|
||||
row[17] = decimal.Round(Convert.ToDecimal(parentDetail.TotalPlanCost), 2);//累计完成预算
|
||||
d10 += decimal.Round(Convert.ToDecimal(parentDetail.ThisRealCost), 2);
|
||||
d11 += decimal.Round(Convert.ToDecimal(parentDetail.ThisPlanValue), 2);
|
||||
d12 += decimal.Round(Convert.ToDecimal(parentDetail.ThisPlanCost), 2);
|
||||
d15 += decimal.Round(Convert.ToDecimal(parentDetail.TotalRealCost), 2);
|
||||
d16 += decimal.Round(Convert.ToDecimal(parentDetail.TotalPlanValue), 2);
|
||||
d17 += decimal.Round(Convert.ToDecimal(parentDetail.TotalPlanCost), 2);
|
||||
}
|
||||
else
|
||||
{
|
||||
Model.View_WBS_CostControlParentDetail parentLastDetail = parentDetails.OrderByDescending(x => x.Months).FirstOrDefault(x => x.ParentId == item.Id);
|
||||
if (parentLastDetail != null && parentLastDetail.Months <= months)
|
||||
{
|
||||
row[15] = decimal.Round(Convert.ToDecimal(parentLastDetail.TotalRealCost), 2);//累计完成成本
|
||||
row[16] = decimal.Round(Convert.ToDecimal(parentLastDetail.TotalPlanValue), 2);//累计计划完成预算
|
||||
row[17] = decimal.Round(Convert.ToDecimal(parentLastDetail.TotalPlanCost), 2);//累计完成预算
|
||||
d15 += decimal.Round(Convert.ToDecimal(parentLastDetail.TotalRealCost), 2);
|
||||
d16 += decimal.Round(Convert.ToDecimal(parentLastDetail.TotalPlanValue), 2);
|
||||
d17 += decimal.Round(Convert.ToDecimal(parentLastDetail.TotalPlanCost), 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (item.WBSType == "WbsSet")
|
||||
{
|
||||
row[1] = item.SupId;
|
||||
Model.View_WBS_CostControlParentDetail parentDetail = parentDetails.FirstOrDefault(x => x.ParentId == item.Id && x.Months == months);
|
||||
if (parentDetail != null)
|
||||
{
|
||||
row[10] = decimal.Round(Convert.ToDecimal(parentDetail.ThisRealCost), 2);//本月实际成本
|
||||
row[11] = decimal.Round(Convert.ToDecimal(parentDetail.ThisPlanValue), 2);//本月计划完成预算
|
||||
row[12] = decimal.Round(Convert.ToDecimal(parentDetail.ThisPlanCost), 2);//本月完成预算
|
||||
row[15] = decimal.Round(Convert.ToDecimal(parentDetail.TotalRealCost), 2);//累计完成成本
|
||||
row[16] = decimal.Round(Convert.ToDecimal(parentDetail.TotalPlanValue), 2);//累计计划完成预算
|
||||
row[17] = decimal.Round(Convert.ToDecimal(parentDetail.TotalPlanCost), 2);//累计完成预算
|
||||
}
|
||||
else
|
||||
{
|
||||
Model.View_WBS_CostControlParentDetail parentLastDetail = parentDetails.OrderByDescending(x => x.Months).FirstOrDefault(x => x.ParentId == item.Id);
|
||||
if (parentLastDetail != null && parentLastDetail.Months <= months)
|
||||
{
|
||||
row[15] = decimal.Round(Convert.ToDecimal(parentLastDetail.TotalRealCost), 2);//累计完成成本
|
||||
row[16] = decimal.Round(Convert.ToDecimal(parentLastDetail.TotalPlanValue), 2);//累计计划完成预算
|
||||
row[17] = decimal.Round(Convert.ToDecimal(parentLastDetail.TotalPlanCost), 2);//累计完成预算
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (item.WBSType == "CostControl")
|
||||
{
|
||||
row[1] = item.SupId;
|
||||
Model.View_WBS_CostControlDetail detail = details.FirstOrDefault(x => x.CostControlId == item.Id && x.Months == months);
|
||||
if (detail != null)
|
||||
{
|
||||
row[4] = detail.Unit;//单位
|
||||
row[5] = decimal.Round(Convert.ToDecimal(detail.TotalNum), 2);//合同工作量
|
||||
row[6] = decimal.Round(Convert.ToDecimal(detail.RealPrice), 2);//成本单价
|
||||
row[7] = decimal.Round(Convert.ToDecimal(detail.PlanNum), 2);//本月计划完成量
|
||||
row[8] = decimal.Round(Convert.ToDecimal(detail.ThisNum), 2);//本月完成量
|
||||
row[9] = decimal.Round(Convert.ToDecimal(detail.PlanPrice), 2);//控制预算单价
|
||||
row[10] = decimal.Round(Convert.ToDecimal(detail.ThisRealCost), 2);//本月实际成本
|
||||
row[11] = decimal.Round(Convert.ToDecimal(detail.ThisPlanValue), 2);//本月计划完成预算
|
||||
row[12] = decimal.Round(Convert.ToDecimal(detail.ThisPlanCost), 2);//本月完成预算
|
||||
row[13] = decimal.Round(Convert.ToDecimal(detail.TotalPlanNum), 2);//累计计划完成量
|
||||
row[14] = decimal.Round(Convert.ToDecimal(detail.TotalThisNum), 2);//累计完成量
|
||||
row[15] = decimal.Round(Convert.ToDecimal(detail.TotalRealCost), 2);//累计完成成本
|
||||
row[16] = decimal.Round(Convert.ToDecimal(detail.TotalPlanValue), 2);//累计计划完成预算
|
||||
row[17] = decimal.Round(Convert.ToDecimal(detail.TotalPlanCost), 2);//累计完成预算
|
||||
}
|
||||
else
|
||||
{
|
||||
Model.View_WBS_CostControlDetail lastDetail = details.OrderByDescending(x => x.Months).FirstOrDefault(x => x.CostControlId == item.Id);
|
||||
if (lastDetail != null && lastDetail.Months <= months)
|
||||
{
|
||||
row[4] = lastDetail.Unit;//单位
|
||||
row[5] = decimal.Round(Convert.ToDecimal(lastDetail.TotalNum), 2);//合同工作量
|
||||
row[6] = decimal.Round(Convert.ToDecimal(lastDetail.RealPrice), 2);//成本单价
|
||||
row[7] = decimal.Round(Convert.ToDecimal(lastDetail.PlanNum), 2);//本月计划完成量
|
||||
row[8] = decimal.Round(Convert.ToDecimal(lastDetail.ThisNum), 2);//本月完成量
|
||||
row[9] = decimal.Round(Convert.ToDecimal(lastDetail.PlanPrice), 2);//控制预算单价
|
||||
row[13] = decimal.Round(Convert.ToDecimal(lastDetail.TotalPlanNum), 2);//累计计划完成量
|
||||
row[14] = decimal.Round(Convert.ToDecimal(lastDetail.TotalThisNum), 2);//累计完成量
|
||||
row[15] = decimal.Round(Convert.ToDecimal(lastDetail.TotalRealCost), 2);//累计完成成本
|
||||
row[16] = decimal.Round(Convert.ToDecimal(lastDetail.TotalPlanValue), 2);//累计计划完成预算
|
||||
row[17] = decimal.Round(Convert.ToDecimal(lastDetail.TotalPlanCost), 2);//累计完成预算
|
||||
}
|
||||
}
|
||||
}
|
||||
table.Rows.Add(row);
|
||||
}
|
||||
if (d10 != 0)
|
||||
{
|
||||
parentRow[10] = decimal.Round(d10, 2);//本月实际成本
|
||||
parentRow[11] = decimal.Round(d11, 2);//本月计划完成预算
|
||||
parentRow[12] = decimal.Round(d12, 2);//本月完成预算
|
||||
parentRow[15] = decimal.Round(d15, 2);//累计完成成本
|
||||
parentRow[16] = decimal.Round(d16, 2);//累计计划完成预算
|
||||
parentRow[17] = decimal.Round(d17, 2);//累计完成预算
|
||||
}
|
||||
else
|
||||
{
|
||||
parentRow[15] = decimal.Round(d15, 2);//累计完成成本
|
||||
parentRow[16] = decimal.Round(d16, 2);//累计计划完成预算
|
||||
parentRow[17] = decimal.Round(d17, 2);//累计完成预算
|
||||
}
|
||||
table.Rows.Add(parentRow);
|
||||
}
|
||||
#endregion
|
||||
#region 按工作包
|
||||
else
|
||||
{
|
||||
CostControlDetailStatisticsList = (from x in CostControlDetailStatisticsList where (x.WBSType == "Installation" && x.Name != "总图") || (x.WBSType == "CnProfession" && x.OldCnProfessionId.ToString() == cnProfessionId) || (x.WBSType == "UnitProject" && x.OldCnProfessionId.ToString() == cnProfessionId && x.OldUnitProjectCode == unitProjectCode) || (x.WBSType != "Installation" && x.WBSType != "CnProfession" && x.WBSType != "UnitProject" && x.OldCnProfessionId.ToString() == cnProfessionId && x.OldUnitProjectCode == unitProjectCode && x.OldWbsSetCode == wbsSetCode) select x).ToList();
|
||||
var wb = wbsSetInits.FirstOrDefault(x => x.WbsSetCode == wbsSetCode);
|
||||
parentRow = table.NewRow();
|
||||
parentRow[0] = wb.WbsSetCode;
|
||||
parentRow[1] = "0";
|
||||
parentRow[2] = wb.WbsSetName;
|
||||
parentRow[3] = projectId;
|
||||
foreach (Model.View_WBS_CostControlDetailStatistics item in CostControlDetailStatisticsList)
|
||||
{
|
||||
row = table.NewRow();
|
||||
row[0] = item.Id;
|
||||
row[2] = item.Name;
|
||||
row[3] = item.ProjectId;
|
||||
if (item.WBSType == "Installation")
|
||||
{
|
||||
decimal ind10 = 0, ind11 = 0, ind12 = 0, ind15 = 0, ind16 = 0, ind17 = 0;
|
||||
if (item.SupId == "0")
|
||||
{
|
||||
row[1] = wb.WbsSetCode;
|
||||
}
|
||||
else
|
||||
{
|
||||
row[1] = item.SupId;
|
||||
}
|
||||
List<string> wbsSetIds = BLL.WbsSetService.GetWbsSetIdByInstallationIdAndCNCodeAndUnitProjectCodeAndWbsSetCode(item.Id, cnProfessionId, unitProjectCode, wbsSetCode);
|
||||
foreach (var upId in wbsSetIds)
|
||||
{
|
||||
Model.View_WBS_CostControlParentDetail parentDetail = parentDetails.FirstOrDefault(x => x.ParentId == upId && x.Months == months);
|
||||
if (parentDetail != null)
|
||||
{
|
||||
ind10 += decimal.Round(Convert.ToDecimal(parentDetail.ThisRealCost), 2);
|
||||
ind11 += decimal.Round(Convert.ToDecimal(parentDetail.ThisPlanValue), 2);
|
||||
ind12 += decimal.Round(Convert.ToDecimal(parentDetail.ThisPlanCost), 2);
|
||||
ind15 += decimal.Round(Convert.ToDecimal(parentDetail.TotalRealCost), 2);
|
||||
ind16 += decimal.Round(Convert.ToDecimal(parentDetail.TotalPlanValue), 2);
|
||||
ind17 += decimal.Round(Convert.ToDecimal(parentDetail.TotalPlanCost), 2);
|
||||
}
|
||||
else
|
||||
{
|
||||
Model.View_WBS_CostControlParentDetail parentLastDetail = parentDetails.OrderByDescending(x => x.Months).FirstOrDefault(x => x.ParentId == upId);
|
||||
if (parentLastDetail != null && parentLastDetail.Months <= months)
|
||||
{
|
||||
ind15 += decimal.Round(Convert.ToDecimal(parentLastDetail.TotalRealCost), 2);
|
||||
ind16 += decimal.Round(Convert.ToDecimal(parentLastDetail.TotalPlanValue), 2);
|
||||
ind17 += decimal.Round(Convert.ToDecimal(parentLastDetail.TotalPlanCost), 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (ind10 != 0)
|
||||
{
|
||||
row[10] = decimal.Round(ind10, 2);//本月实际成本
|
||||
row[11] = decimal.Round(ind11, 2);//本月计划完成预算
|
||||
row[12] = decimal.Round(ind12, 2);//本月完成预算
|
||||
row[15] = decimal.Round(ind15, 2);//累计完成成本
|
||||
row[16] = decimal.Round(ind16, 2);//累计计划完成预算
|
||||
row[17] = decimal.Round(ind17, 2);//累计完成预算
|
||||
}
|
||||
else
|
||||
{
|
||||
if (ind15 > 0)
|
||||
{
|
||||
row[15] = decimal.Round(ind15, 2);//累计完成成本
|
||||
}
|
||||
if (ind16 > 0)
|
||||
{
|
||||
row[16] = decimal.Round(ind16, 2);//累计计划完成预算
|
||||
}
|
||||
if (ind17 > 0)
|
||||
{
|
||||
row[17] = decimal.Round(ind17, 2);//累计完成预算
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (item.WBSType == "CnProfession")
|
||||
{
|
||||
decimal cnd10 = 0, cnd11 = 0, cnd12 = 0, cnd15 = 0, cnd16 = 0, cnd17 = 0;
|
||||
row[1] = item.SupId;
|
||||
List<string> wbsSetIds = BLL.WbsSetService.GetWbsSetIdByCnProfessionIdAndUnitProjectCodeAndWbsSetCode(item.Id, unitProjectCode, wbsSetCode);
|
||||
foreach (var upId in wbsSetIds)
|
||||
{
|
||||
Model.View_WBS_CostControlParentDetail parentDetail = parentDetails.FirstOrDefault(x => x.ParentId == upId && x.Months == months);
|
||||
if (parentDetail != null)
|
||||
{
|
||||
cnd10 += decimal.Round(Convert.ToDecimal(parentDetail.ThisRealCost), 2);
|
||||
cnd11 += decimal.Round(Convert.ToDecimal(parentDetail.ThisPlanValue), 2);
|
||||
cnd12 += decimal.Round(Convert.ToDecimal(parentDetail.ThisPlanCost), 2);
|
||||
cnd15 += decimal.Round(Convert.ToDecimal(parentDetail.TotalRealCost), 2);
|
||||
cnd16 += decimal.Round(Convert.ToDecimal(parentDetail.TotalPlanValue), 2);
|
||||
cnd17 += decimal.Round(Convert.ToDecimal(parentDetail.TotalPlanCost), 2);
|
||||
}
|
||||
else
|
||||
{
|
||||
Model.View_WBS_CostControlParentDetail parentLastDetail = parentDetails.OrderByDescending(x => x.Months).FirstOrDefault(x => x.ParentId == upId);
|
||||
if (parentLastDetail != null && parentLastDetail.Months <= months)
|
||||
{
|
||||
cnd15 += decimal.Round(Convert.ToDecimal(parentLastDetail.TotalRealCost), 2);
|
||||
cnd16 += decimal.Round(Convert.ToDecimal(parentLastDetail.TotalPlanValue), 2);
|
||||
cnd17 += decimal.Round(Convert.ToDecimal(parentLastDetail.TotalPlanCost), 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (cnd10 != 0)
|
||||
{
|
||||
row[10] = decimal.Round(cnd10, 2);//本月实际成本
|
||||
row[11] = decimal.Round(cnd11, 2);//本月计划完成预算
|
||||
row[12] = decimal.Round(cnd12, 2);//本月完成预算
|
||||
row[15] = decimal.Round(cnd15, 2);//累计完成成本
|
||||
row[16] = decimal.Round(cnd16, 2);//累计计划完成预算
|
||||
row[17] = decimal.Round(cnd17, 2);//累计完成预算
|
||||
}
|
||||
else
|
||||
{
|
||||
if (cnd15 > 0)
|
||||
{
|
||||
row[15] = decimal.Round(cnd15, 2);//累计完成成本
|
||||
}
|
||||
if (cnd16 > 0)
|
||||
{
|
||||
row[16] = decimal.Round(cnd16, 2);//累计计划完成预算
|
||||
}
|
||||
if (cnd17 > 0)
|
||||
{
|
||||
row[17] = decimal.Round(cnd17, 2);//累计完成预算
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (item.WBSType == "UnitProject")
|
||||
{
|
||||
decimal upd10 = 0, upd11 = 0, upd12 = 0, upd15 = 0, upd16 = 0, upd17 = 0;
|
||||
row[1] = item.SupId;
|
||||
List<string> wbsSetIds = BLL.WbsSetService.GetWbsSetIdByUnitProjectIdAndWbsSetCode(item.Id, wbsSetCode);
|
||||
foreach (var upId in wbsSetIds)
|
||||
{
|
||||
Model.View_WBS_CostControlParentDetail parentDetail = parentDetails.FirstOrDefault(x => x.ParentId == upId && x.Months == months);
|
||||
if (parentDetail != null)
|
||||
{
|
||||
upd10 += decimal.Round(Convert.ToDecimal(parentDetail.ThisRealCost), 2);
|
||||
upd11 += decimal.Round(Convert.ToDecimal(parentDetail.ThisPlanValue), 2);
|
||||
upd12 += decimal.Round(Convert.ToDecimal(parentDetail.ThisPlanCost), 2);
|
||||
upd15 += decimal.Round(Convert.ToDecimal(parentDetail.TotalRealCost), 2);
|
||||
upd16 += decimal.Round(Convert.ToDecimal(parentDetail.TotalPlanValue), 2);
|
||||
upd17 += decimal.Round(Convert.ToDecimal(parentDetail.TotalPlanCost), 2);
|
||||
}
|
||||
else
|
||||
{
|
||||
Model.View_WBS_CostControlParentDetail parentLastDetail = parentDetails.OrderByDescending(x => x.Months).FirstOrDefault(x => x.ParentId == upId);
|
||||
if (parentLastDetail != null && parentLastDetail.Months <= months)
|
||||
{
|
||||
upd15 += decimal.Round(Convert.ToDecimal(parentLastDetail.TotalRealCost), 2);
|
||||
upd16 += decimal.Round(Convert.ToDecimal(parentLastDetail.TotalPlanValue), 2);
|
||||
upd17 += decimal.Round(Convert.ToDecimal(parentLastDetail.TotalPlanCost), 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (upd10 != 0)
|
||||
{
|
||||
row[10] = decimal.Round(upd10, 2);//本月实际成本
|
||||
row[11] = decimal.Round(upd11, 2);//本月计划完成预算
|
||||
row[12] = decimal.Round(upd12, 2);//本月完成预算
|
||||
row[15] = decimal.Round(upd15, 2);//累计完成成本
|
||||
row[16] = decimal.Round(upd16, 2);//累计计划完成预算
|
||||
row[17] = decimal.Round(upd17, 2);//累计完成预算
|
||||
}
|
||||
else
|
||||
{
|
||||
if (upd15 > 0)
|
||||
{
|
||||
row[15] = decimal.Round(upd15, 2);//累计完成成本
|
||||
}
|
||||
if (upd16 > 0)
|
||||
{
|
||||
row[16] = decimal.Round(upd16, 2);//累计计划完成预算
|
||||
}
|
||||
if (upd17 > 0)
|
||||
{
|
||||
row[17] = decimal.Round(upd17, 2);//累计完成预算
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (item.WBSType == "WbsSet")
|
||||
{
|
||||
row[1] = item.SupId;
|
||||
var wbsSet = wbsSets.FirstOrDefault(x => x.WbsSetId == item.Id);
|
||||
Model.View_WBS_CostControlParentDetail parentDetail = parentDetails.FirstOrDefault(x => x.ParentId == item.Id && x.Months == months);
|
||||
if (parentDetail != null)
|
||||
{
|
||||
row[10] = decimal.Round(Convert.ToDecimal(parentDetail.ThisRealCost), 2);//本月实际成本
|
||||
row[11] = decimal.Round(Convert.ToDecimal(parentDetail.ThisPlanValue), 2);//本月计划完成预算
|
||||
row[12] = decimal.Round(Convert.ToDecimal(parentDetail.ThisPlanCost), 2);//本月完成预算
|
||||
row[15] = decimal.Round(Convert.ToDecimal(parentDetail.TotalRealCost), 2);//累计完成成本
|
||||
row[16] = decimal.Round(Convert.ToDecimal(parentDetail.TotalPlanValue), 2);//累计计划完成预算
|
||||
row[17] = decimal.Round(Convert.ToDecimal(parentDetail.TotalPlanCost), 2);//累计完成预算
|
||||
if (wbsSet.SuperWbsSetId == null) //工作包节点,累加数据
|
||||
{
|
||||
d10 += decimal.Round(Convert.ToDecimal(parentDetail.ThisRealCost), 2);
|
||||
d11 += decimal.Round(Convert.ToDecimal(parentDetail.ThisPlanValue), 2);
|
||||
d12 += decimal.Round(Convert.ToDecimal(parentDetail.ThisPlanCost), 2);
|
||||
d15 += decimal.Round(Convert.ToDecimal(parentDetail.TotalRealCost), 2);
|
||||
d16 += decimal.Round(Convert.ToDecimal(parentDetail.TotalPlanValue), 2);
|
||||
d17 += decimal.Round(Convert.ToDecimal(parentDetail.TotalPlanCost), 2);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
Model.View_WBS_CostControlParentDetail parentLastDetail = parentDetails.OrderByDescending(x => x.Months).FirstOrDefault(x => x.ParentId == item.Id);
|
||||
if (parentLastDetail != null && parentLastDetail.Months <= months)
|
||||
{
|
||||
row[15] = decimal.Round(Convert.ToDecimal(parentLastDetail.TotalRealCost), 2);//累计完成成本
|
||||
row[16] = decimal.Round(Convert.ToDecimal(parentLastDetail.TotalPlanValue), 2);//累计计划完成预算
|
||||
row[17] = decimal.Round(Convert.ToDecimal(parentLastDetail.TotalPlanCost), 2);//累计完成预算
|
||||
if (wbsSet.SuperWbsSetId == null) //工作包节点,累加数据
|
||||
{
|
||||
d15 += decimal.Round(Convert.ToDecimal(parentLastDetail.TotalRealCost), 2);
|
||||
d16 += decimal.Round(Convert.ToDecimal(parentLastDetail.TotalPlanValue), 2);
|
||||
d17 += decimal.Round(Convert.ToDecimal(parentLastDetail.TotalPlanCost), 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (item.WBSType == "CostControl")
|
||||
{
|
||||
row[1] = item.SupId;
|
||||
Model.View_WBS_CostControlDetail detail = details.FirstOrDefault(x => x.CostControlId == item.Id && x.Months == months);
|
||||
if (detail != null)
|
||||
{
|
||||
row[4] = detail.Unit;//单位
|
||||
row[5] = decimal.Round(Convert.ToDecimal(detail.TotalNum), 2);//合同工作量
|
||||
row[6] = decimal.Round(Convert.ToDecimal(detail.RealPrice), 2);//成本单价
|
||||
row[7] = decimal.Round(Convert.ToDecimal(detail.PlanNum), 2);//本月计划完成量
|
||||
row[8] = decimal.Round(Convert.ToDecimal(detail.ThisNum), 2);//本月完成量
|
||||
row[9] = decimal.Round(Convert.ToDecimal(detail.PlanPrice), 2);//控制预算单价
|
||||
row[10] = decimal.Round(Convert.ToDecimal(detail.ThisRealCost), 2);//本月实际成本
|
||||
row[11] = decimal.Round(Convert.ToDecimal(detail.ThisPlanValue), 2);//本月计划完成预算
|
||||
row[12] = decimal.Round(Convert.ToDecimal(detail.ThisPlanCost), 2);//本月完成预算
|
||||
row[13] = decimal.Round(Convert.ToDecimal(detail.TotalPlanNum), 2);//累计计划完成量
|
||||
row[14] = decimal.Round(Convert.ToDecimal(detail.TotalThisNum), 2);//累计完成量
|
||||
row[15] = decimal.Round(Convert.ToDecimal(detail.TotalRealCost), 2);//累计完成成本
|
||||
row[16] = decimal.Round(Convert.ToDecimal(detail.TotalPlanValue), 2);//累计计划完成预算
|
||||
row[17] = decimal.Round(Convert.ToDecimal(detail.TotalPlanCost), 2);//累计完成预算
|
||||
}
|
||||
else
|
||||
{
|
||||
Model.View_WBS_CostControlDetail lastDetail = details.OrderByDescending(x => x.Months).FirstOrDefault(x => x.CostControlId == item.Id);
|
||||
if (lastDetail != null && lastDetail.Months <= months)
|
||||
{
|
||||
row[4] = lastDetail.Unit;//单位
|
||||
row[5] = decimal.Round(Convert.ToDecimal(lastDetail.TotalNum), 2);//合同工作量
|
||||
row[6] = decimal.Round(Convert.ToDecimal(lastDetail.RealPrice), 2);//成本单价
|
||||
row[7] = decimal.Round(Convert.ToDecimal(lastDetail.PlanNum), 2);//本月计划完成量
|
||||
row[8] = decimal.Round(Convert.ToDecimal(lastDetail.ThisNum), 2);//本月完成量
|
||||
row[9] = decimal.Round(Convert.ToDecimal(lastDetail.PlanPrice), 2);//控制预算单价
|
||||
row[13] = decimal.Round(Convert.ToDecimal(lastDetail.TotalPlanNum), 2);//累计计划完成量
|
||||
row[14] = decimal.Round(Convert.ToDecimal(lastDetail.TotalThisNum), 2);//累计完成量
|
||||
row[15] = decimal.Round(Convert.ToDecimal(lastDetail.TotalRealCost), 2);//累计完成成本
|
||||
row[16] = decimal.Round(Convert.ToDecimal(lastDetail.TotalPlanValue), 2);//累计计划完成预算
|
||||
row[17] = decimal.Round(Convert.ToDecimal(lastDetail.TotalPlanCost), 2);//累计完成预算
|
||||
}
|
||||
}
|
||||
}
|
||||
table.Rows.Add(row);
|
||||
}
|
||||
if (d10 != 0)
|
||||
{
|
||||
parentRow[10] = decimal.Round(d10, 2);//本月实际成本
|
||||
parentRow[11] = decimal.Round(d11, 2);//本月计划完成预算
|
||||
parentRow[12] = decimal.Round(d12, 2);//本月完成预算
|
||||
parentRow[15] = decimal.Round(d15, 2);//累计完成成本
|
||||
parentRow[16] = decimal.Round(d16, 2);//累计计划完成预算
|
||||
parentRow[17] = decimal.Round(d17, 2);//累计完成预算
|
||||
}
|
||||
else
|
||||
{
|
||||
parentRow[15] = decimal.Round(d15, 2);//累计完成成本
|
||||
parentRow[16] = decimal.Round(d16, 2);//累计计划完成预算
|
||||
parentRow[17] = decimal.Round(d17, 2);//累计完成预算
|
||||
}
|
||||
table.Rows.Add(parentRow);
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
return table;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user