CNCEC_SUBQHSE_WUHUAN/SGGL/BLL/CQMS/WBS/WorkPackageService.cs

201 lines
9.0 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace BLL
{
public class WorkPackageService
{
/// <summary>
/// 添加分部分项工程
/// </summary>
/// <param name="WorkPackage"></param>
public static void AddWorkPackage(Model.WBS_WorkPackage WorkPackage)
{
Model.SGGLDB db = Funs.DB;
Model.WBS_WorkPackage newWorkPackage = new Model.WBS_WorkPackage();
newWorkPackage.WorkPackageId = WorkPackage.WorkPackageId;
newWorkPackage.WorkPackageCode = WorkPackage.WorkPackageCode;
newWorkPackage.UnitWorkId = WorkPackage.UnitWorkId;
newWorkPackage.SuperWorkPack = WorkPackage.SuperWorkPack;
newWorkPackage.PackageCode = WorkPackage.PackageCode;
newWorkPackage.SuperWorkPackageId = WorkPackage.SuperWorkPackageId;
newWorkPackage.PackageContent = WorkPackage.PackageContent;
newWorkPackage.ProjectId = WorkPackage.ProjectId;
newWorkPackage.IsChild = WorkPackage.IsChild;
newWorkPackage.SortIndex = WorkPackage.SortIndex;
newWorkPackage.InitWorkPackageCode = WorkPackage.InitWorkPackageCode;
newWorkPackage.Weights = WorkPackage.Weights;
newWorkPackage.ProjectType = WorkPackage.ProjectType;
newWorkPackage.IsApprove = WorkPackage.IsApprove;
newWorkPackage.Costs = WorkPackage.Costs;
db.WBS_WorkPackage.InsertOnSubmit(newWorkPackage);
db.SubmitChanges();
}
/// <summary>
/// 修改分部分项工程
/// </summary>
/// <param name="WorkPackage"></param>
public static void UpdateWorkPackage(Model.WBS_WorkPackage WorkPackage)
{
Model.SGGLDB db = Funs.DB;
Model.WBS_WorkPackage newWorkPackage = db.WBS_WorkPackage.First(e => e.WorkPackageId == WorkPackage.WorkPackageId);
newWorkPackage.WorkPackageCode = WorkPackage.WorkPackageCode;
newWorkPackage.UnitWorkId = WorkPackage.UnitWorkId;
newWorkPackage.PackageCode = WorkPackage.PackageCode;
newWorkPackage.PackageContent = WorkPackage.PackageContent;
newWorkPackage.ProjectId = WorkPackage.ProjectId;
newWorkPackage.IsChild = WorkPackage.IsChild;
newWorkPackage.SortIndex = WorkPackage.SortIndex;
newWorkPackage.Weights = WorkPackage.Weights;
newWorkPackage.IsApprove = WorkPackage.IsApprove;
newWorkPackage.Costs = WorkPackage.Costs;
db.SubmitChanges();
}
/// <summary>
/// 根据单位工程id获取一个第一级分部信息
/// </summary>
/// <param name="unitWorkId"></param>
/// <returns></returns>
public static Model.WBS_WorkPackage GetWorkPackages1ByUnitWorkId(string unitWorkId)
{
return Funs.DB.WBS_WorkPackage.FirstOrDefault(x => x.SuperWorkPackageId == null && x.IsApprove == true && x.UnitWorkId == unitWorkId);
}
/// <summary>
/// 根据单位工程Id获取第一级所有分部信息
/// </summary>
/// <param name="unitWorkId"></param>
/// <returns></returns>
public static List<Model.WBS_WorkPackage> GetWorkPackages1sByUnitWorkId(string unitWorkId)
{
return (from x in Funs.DB.WBS_WorkPackage where x.SuperWorkPackageId == null && x.UnitWorkId.ToString() == unitWorkId orderby x.WorkPackageCode select x).ToList();
}
/// <summary>
/// 根据单位工程Id获取第一级审批所有分部信息
/// </summary>
/// <param name="unitWorkId"></param>
/// <returns></returns>
public static List<Model.WBS_WorkPackage> GetApproveWorkPackages1sByUnitWorkId(string unitWorkId)
{
return (from x in Funs.DB.WBS_WorkPackage where x.SuperWorkPackageId == null && x.UnitWorkId.ToString() == unitWorkId && x.IsApprove == true orderby x.WorkPackageCode select x).ToList();
}
/// <summary>
/// 根据单位工程Id获取所有分部信息
/// </summary>
/// <param name="unitWorkId"></param>
/// <returns></returns>
public static List<Model.WBS_WorkPackage> GetAllWorkPackagesByUnitWorkId(string unitWorkId)
{
return (from x in Funs.DB.WBS_WorkPackage where x.UnitWorkId.ToString() == unitWorkId orderby x.WorkPackageCode select x).ToList();
}
/// <summary>
/// 根据项目Id获取所有分部信息
/// </summary>
/// <param name="unitWorkId"></param>
/// <returns></returns>
public static List<Model.WBS_WorkPackage> GetAllWorkPackagesByProjectId(string projectId)
{
return (from x in Funs.DB.WBS_WorkPackage where x.ProjectId == projectId orderby x.WorkPackageCode select x).ToList();
}
/// <summary>
/// 根据分部分项Id获取分部分项信息
/// </summary>
/// <param name="workPackageId"></param>
/// <returns></returns>
public static Model.WBS_WorkPackage GetWorkPackageByWorkPackageId(string workPackageId)
{
return Funs.DB.WBS_WorkPackage.FirstOrDefault(x => x.WorkPackageId == workPackageId);
}
/// <summary>
/// 根据父级Id获取所有分部分项信息
/// </summary>
/// <param name="workPackageId"></param>
/// <returns></returns>
public static List<Model.WBS_WorkPackage> GetAllWorkPackagesBySuperWorkPackageId(string workPackageId)
{
return (from x in Funs.DB.WBS_WorkPackage where x.SuperWorkPackageId == workPackageId orderby x.WorkPackageCode select x).ToList();
}
/// <summary>
/// 根据父级Id获取所有审批分部分项信息
/// </summary>
/// <param name="workPackageId"></param>
/// <returns></returns>
public static List<Model.WBS_WorkPackage> GetAllApproveWorkPackagesBySuperWorkPackageId(string workPackageId)
{
return (from x in Funs.DB.WBS_WorkPackage where x.SuperWorkPackageId == workPackageId && x.IsApprove == true orderby x.WorkPackageCode select x).ToList();
}
/// <summary>
/// 根据子分部工程Id删除一个子分部工程信息
/// </summary>
/// <param name="WorkPackageId"></param>
public static void DeleteWorkPackage(string WorkPackageId)
{
Model.SGGLDB db = Funs.DB;
Model.WBS_WorkPackage WorkPackage = db.WBS_WorkPackage.First(e => e.WorkPackageId == WorkPackageId);
db.WBS_WorkPackage.DeleteOnSubmit(WorkPackage);
db.SubmitChanges();
}
/// <summary>
/// 根据分部分项Id删除所有明细信息
/// </summary>
/// <param name="ControlItemAndCycleId"></param>
public static void DeleteAllWorkPackageByUnitWorkId(string unitWorkId)
{
Model.SGGLDB db = Funs.DB;
List<Model.WBS_WorkPackage> q = (from x in db.WBS_WorkPackage where x.UnitWorkId == unitWorkId orderby x.WorkPackageCode select x).ToList();
db.WBS_WorkPackage.DeleteAllOnSubmit(q);
db.SubmitChanges();
}
/// <summary>
/// 根据初始工作包编码和单位工程获取工作包集合
/// </summary>
/// <param name="initWorkPackageCode"></param>
/// <param name="unitWorkId"></param>
/// <returns></returns>
public static List<Model.WBS_WorkPackage> GetWorkPackagesByInitWorkPackageCodeAndUnitWorkId(string initWorkPackageCode, string unitWorkId)
{
return (from x in Funs.DB.WBS_WorkPackage where x.InitWorkPackageCode == initWorkPackageCode && x.UnitWorkId.ToString() == unitWorkId orderby x.WorkPackageCode descending select x).ToList();
}
/// <summary>
/// 根据单位工程Id获取所有分部信息
/// </summary>
/// <param name="unitWorkId"></param>
/// <returns></returns>
public static List<Model.WBS_WorkPackage> GetAllWorkPackagesByUnitWorkIds(string[] unitWorkIds)
{
return (from x in Funs.DB.WBS_WorkPackage where unitWorkIds.Contains(x.UnitWorkId) orderby x.WorkPackageCode select x).ToList();
}
/// <summary>
/// 获取单位工程分部分项下拉列表
/// </summary>
/// <param name="dropName"></param>
/// <param name="projectId"></param>
/// <param name="isShowPlease"></param>
public static void InitWorkPackagesDropDownListByUnitWorkId(FineUIPro.DropDownList dropName, string unitWorkId, bool isShowPlease)
{
dropName.DataValueField = "WorkPackageId";
dropName.DataTextField = "PackageContent";
dropName.DataSource = GetAllWorkPackagesByUnitWorkId(unitWorkId);
dropName.DataBind();
if (isShowPlease)
{
Funs.FineUIPleaseSelect(dropName);
}
}
}
}