using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace BLL { public class CostControlParentDetailService { /// /// 根据Id获取一个费控项父级明细信息 /// /// 费控项父级明细Id public static Model.WBS_CostControlParentDetail GetCostControlParentDetailByCostControlParentDetailId(string costControlParentDetailId) { return Funs.DB.WBS_CostControlParentDetail.FirstOrDefault(e => e.CostControlParentDetailId == costControlParentDetailId); } /// /// 根据ParentId判断是否存在费控项父级明细信息 /// /// costControlParentId public static bool IsExitCostControlParentDetailByParentId(string parentId) { return (from x in Funs.DB.WBS_CostControlParentDetail where x.ParentId == parentId select x).Count() > 0; } /// /// 根据costControlParentId和年及月获取对应月费控项父级明细信息 /// /// 对应wbsId /// 对应标志 /// 年 /// 月 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 && x.StartDate == null select x).FirstOrDefault(); } /// /// 根据costControlParentId和年及月获取对应周费控项父级明细信息 /// /// 对应wbsId /// 对应标志 /// 年 /// 月 public static Model.WBS_CostControlParentDetail GetCostControlParentDetailByParentIdAndMonthsWeek(string parentId, DateTime months, DateTime startDate) { return (from x in Funs.DB.WBS_CostControlParentDetail where x.ParentId == parentId && x.Months == months && x.StartDate == startDate select x).FirstOrDefault(); } /// /// 根据costControlParentId和年及月获取对应费控项父级明细视图信息 /// /// 对应wbsId /// 对应标志 /// 年 /// 月 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(); } /// /// /// /// /// /// /// 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; } /// /// 根据CostControlParentId月获取所有月份的对应费控项父级明细信息集合 /// /// costControlParentId public static List GetTotalCostControlParentDetailsByParentId(string parentId) { return (from x in Funs.DB.WBS_CostControlParentDetail where x.ParentId == parentId orderby x.Months select x).ToList(); } /// /// 增加费控项父级明细 /// /// 费控项父级明细 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.StartDate = costControlParentDetail.StartDate; newWBS_CostControlParentDetail.EndDate = costControlParentDetail.EndDate; newWBS_CostControlParentDetail.ThisPlanValue = costControlParentDetail.ThisPlanValue; newWBS_CostControlParentDetail.ThisRealCost = costControlParentDetail.ThisRealCost; newWBS_CostControlParentDetail.ThisPlanCost = costControlParentDetail.ThisPlanCost; db.WBS_CostControlParentDetail.InsertOnSubmit(newWBS_CostControlParentDetail); db.SubmitChanges(); } /// /// 修改费控项父级明细 /// /// 费控项父级明细 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(); } /// /// 根据Id删除费控项父级明细信息 /// /// 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(); } /// /// 根据costControlParentId删除费控项父级明细信息 /// /// 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(); } } } }