SGGL_SHJ/SGGL/BLL/CQMS/WBS/WorkPackageDetailService.cs

192 lines
7.9 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
namespace BLL
{
public class WorkPackageDetailService
{
/// <summary>
/// 根据Id获取一个费控项明细信息
/// </summary>
/// <param name="WorkPackageDetailId">费控项明细Id</param>
public static Model.WBS_WorkPackageDetail GetWorkPackageDetailByWorkPackageDetailId(string WorkPackageDetailId)
{
return Funs.DB.WBS_WorkPackageDetail.FirstOrDefault(e => e.WorkPackageDetailId == WorkPackageDetailId);
}
/// <summary>
/// 根据WorkPackageId判断是否存在费控项明细信息
/// </summary>
/// <param name="WorkPackageId">WorkPackageId</param>
public static bool IsExitWorkPackageDetailByWorkPackageId(string WorkPackageId)
{
return (from x in Funs.DB.WBS_WorkPackageDetail where x.WorkPackageId == WorkPackageId select x).Count() > 0;
}
/// <summary>
/// 根据WorkPackageId和年及月获取对应费控项明细信息
/// </summary>
/// <param name="WorkPackageId">对应wbsId</param>
/// <param name="toFlag">对应标志</param>
/// <param name="years">年</param>
/// <param name="months">月</param>
public static Model.WBS_WorkPackageDetail GetWorkPackageDetailByWorkPackageIdAndMonths(string WorkPackageId, DateTime months)
{
return (from x in Funs.DB.WBS_WorkPackageDetail where x.WorkPackageId == WorkPackageId && x.Months == months select x).FirstOrDefault();
}
/// <summary>
/// 根据WorkPackageId和年及月获取对应费控项明细视图信息
/// </summary>
/// <param name="WorkPackageId">对应wbsId</param>
/// <param name="toFlag">对应标志</param>
/// <param name="years">年</param>
/// <param name="months">月</param>
public static Model.View_WBS_WorkPackageDetail GetWorkPackageDetailViewByWorkPackageIdAndMonths(string WorkPackageId, DateTime months)
{
return (from x in Funs.DB.View_WBS_WorkPackageDetail where x.WorkPackageId == WorkPackageId && x.Months == months select x).FirstOrDefault();
}
/// <summary>
/// 根据WorkPackageId和年及月获取对应费控项明细信息
/// </summary>
/// <param name="WorkPackageId">对应wbsId</param>
/// <param name="toFlag">对应标志</param>
/// <param name="years">年</param>
/// <param name="months">月</param>
public static Model.View_WBS_WorkPackageDetail GetViewWorkPackageDetailByWorkPackageIdAndMonth(string WorkPackageId, DateTime months)
{
return (from x in Funs.DB.View_WBS_WorkPackageDetail where x.WorkPackageId == WorkPackageId && x.Months == months select x).FirstOrDefault();
}
public static Model.WBS_WorkPackageDetail GetWBS_WorkPackageDetailByWorkPackageId(string WorkPackageId)
{
return (from x in Funs.DB.WBS_WorkPackageDetail where x.WorkPackageId == WorkPackageId select x).FirstOrDefault();
}
/// <summary>
///
/// </summary>
/// <param name="WorkPackageId"></param>
/// <param name="toFlag"></param>
/// <param name="months"></param>
/// <returns></returns>
public static bool IsExitWeekWorkPackageDetailByWorkPackageIdAndMonth(string WorkPackageId, DateTime months)
{
bool result = false;
var q = Funs.DB.WBS_WorkPackageDetail.FirstOrDefault(e => e.WorkPackageId == WorkPackageId && 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_WorkPackageDetail> GetTotalWBS_WorkPackageDetailsByYearMonth2(string WorkPackageId, DateTime months)
{
return (from x in Funs.DB.WBS_WorkPackageDetail where x.WorkPackageId == WorkPackageId && x.Months <= months select x).ToList();
}
/// <summary>
/// 根据WorkPackageId月获取所有月份的对应费控项明细信息集合
/// </summary>
/// <param name="WorkPackageId">WorkPackageId</param>
public static List<Model.WBS_WorkPackageDetail> GetMonthWorkPackageDetailsByWorkPackageId(string WorkPackageId)
{
return (from x in Funs.DB.WBS_WorkPackageDetail where x.WorkPackageId == WorkPackageId orderby x.Months select x).ToList();
}
/// <summary>
/// 增加费控项明细
/// </summary>
/// <param name="user">费控项明细</param>
public static void AddWorkPackageDetail(Model.WBS_WorkPackageDetail WorkPackageDetail)
{
Model.SGGLDB db = Funs.DB;
Model.WBS_WorkPackageDetail newWBS_WorkPackageDetail = new Model.WBS_WorkPackageDetail();
newWBS_WorkPackageDetail.WorkPackageDetailId = WorkPackageDetail.WorkPackageDetailId;
newWBS_WorkPackageDetail.WorkPackageId = WorkPackageDetail.WorkPackageId;
newWBS_WorkPackageDetail.Months = WorkPackageDetail.Months;
if (WorkPackageDetail.PlanNum == 0)
{
newWBS_WorkPackageDetail.PlanNum = null;
}
else
{
newWBS_WorkPackageDetail.PlanNum = WorkPackageDetail.PlanNum;
}
if (WorkPackageDetail.ThisNum == 0)
{
newWBS_WorkPackageDetail.ThisNum = null;
}
else
{
newWBS_WorkPackageDetail.ThisNum = WorkPackageDetail.ThisNum;
}
db.WBS_WorkPackageDetail.InsertOnSubmit(newWBS_WorkPackageDetail);
db.SubmitChanges();
}
/// <summary>
/// 修改费控项明细
/// </summary>
/// <param name="user">费控项明细</param>
public static void UpdateWorkPackageDetail(Model.WBS_WorkPackageDetail WorkPackageDetail)
{
Model.SGGLDB db = Funs.DB;
Model.WBS_WorkPackageDetail newWBS_WorkPackageDetail = db.WBS_WorkPackageDetail.First(e => e.WorkPackageDetailId == WorkPackageDetail.WorkPackageDetailId);
if (WorkPackageDetail.PlanNum == 0)
{
newWBS_WorkPackageDetail.PlanNum = null;
}
else
{
newWBS_WorkPackageDetail.PlanNum = WorkPackageDetail.PlanNum;
}
if (WorkPackageDetail.ThisNum == 0)
{
newWBS_WorkPackageDetail.ThisNum = null;
}
else
{
newWBS_WorkPackageDetail.ThisNum = WorkPackageDetail.ThisNum;
}
db.SubmitChanges();
}
/// <summary>
/// 根据Id删除费控项明细信息
/// </summary>
/// <param name="userId"></param>
public static void DeleteWorkPackageDetail(string WorkPackageDetailId)
{
Model.SGGLDB db = Funs.DB;
Model.WBS_WorkPackageDetail ins = db.WBS_WorkPackageDetail.First(e => e.WorkPackageDetailId == WorkPackageDetailId);
db.WBS_WorkPackageDetail.DeleteOnSubmit(ins);
db.SubmitChanges();
}
/// <summary>
/// 根据WorkPackageId删除费控项明细信息
/// </summary>
/// <param name="userId"></param>
public static void DeleteWorkPackageDetailByWorkPackageId(string WorkPackageId)
{
Model.SGGLDB db = Funs.DB;
var details = from x in db.WBS_WorkPackageDetail where x.WorkPackageId == WorkPackageId select x;
if (details.Count() > 0)
{
db.WBS_WorkPackageDetail.DeleteAllOnSubmit(details);
db.SubmitChanges();
}
}
}
}