161 lines
7.6 KiB
C#
161 lines
7.6 KiB
C#
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 && x.StartDate == null 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.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();
|
|
}
|
|
|
|
/// <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.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();
|
|
}
|
|
|
|
/// <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();
|
|
}
|
|
}
|
|
}
|
|
}
|