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

128 lines
5.4 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace BLL
{
public class WorkPackageProjectService
{
/// <summary>
///// 添加分部工程
/// </summary>
/// <param name="UnitWork"></param>
public static void AddWorkPackageProject(Model.WBS_WorkPackageProject workPack)
{
Model.SGGLDB db = Funs.DB;
Model.WBS_WorkPackageProject newPack = new Model.WBS_WorkPackageProject();
newPack.WorkPackageCode = workPack.WorkPackageCode;
newPack.ProjectId = workPack.ProjectId;
newPack.SuperWorkPack = workPack.SuperWorkPack;
newPack.PackageCode = workPack.PackageCode;
newPack.PackageContent = workPack.PackageContent;
newPack.IsChild = workPack.IsChild;
newPack.ProjectType = workPack.ProjectType;
db.WBS_WorkPackageProject.InsertOnSubmit(newPack);
db.SubmitChanges();
}
/// <summary>
/// 修改子分部工程
/// </summary>
/// <param name="UnitWork"></param>
public static void UpdateWorkPackageProject(Model.WBS_WorkPackageProject workPack)
{
Model.SGGLDB db = Funs.DB;
Model.WBS_WorkPackageProject newPack = db.WBS_WorkPackageProject.First(e => e.WorkPackageCode == workPack.WorkPackageCode);
newPack.WorkPackageCode = workPack.WorkPackageCode;
newPack.IsChild = workPack.IsChild;
newPack.PackageContent = workPack.PackageContent;
db.SubmitChanges();
}
/// <summary>
/// 根据分部分项编号和项目id获取项目分部分项内容
/// </summary>
/// <param name="workPackageCode"></param>
/// <param name="projectId"></param>
/// <returns></returns>
public static Model.WBS_WorkPackageProject GetWorkPackageProjectByWorkPackageCode(string workPackageCode, string projectId)
{
return Funs.DB.WBS_WorkPackageProject.FirstOrDefault(x => x.WorkPackageCode == workPackageCode && x.ProjectId == projectId);
}
/// <summary>
/// 根据项目id判断是否存在项目分部分项内容
/// </summary>
/// <param name="workPackageCode"></param>
/// <param name="projectId"></param>
/// <returns></returns>
public static bool IsExitWorkPackageProject(string projectId)
{
return Funs.DB.WBS_WorkPackageProject.FirstOrDefault(x => x.ProjectId == projectId) != null;
}
/// <summary>
/// 根据分部分项编号获取子级项目分部分项信息集合
/// </summary>
/// <param name="workPackageCode"></param>
/// <returns></returns>
public static List<Model.WBS_WorkPackageProject> GetWorkPackageProjectsBySuperWorkPack(string workPackageCode, string projectId)
{
return (from x in Funs.DB.WBS_WorkPackageProject where x.SuperWorkPack == workPackageCode && x.ProjectId == projectId select x).ToList();
}
/// <summary>
/// 根据分部工程编号删除一个项目分部工程信息
/// </summary>
/// <param name="UnitWorkId"></param>
public static void DeleteWorkPackageProject(string workPackageCode, string projectId)
{
Model.SGGLDB db = Funs.DB;
Model.WBS_WorkPackageProject delWorkPack = db.WBS_WorkPackageProject.First(e => e.WorkPackageCode == workPackageCode && e.ProjectId == projectId);
db.WBS_WorkPackageProject.DeleteOnSubmit(delWorkPack);
db.SubmitChanges();
}
/// <summary>
/// 是否存在分部分项工程
/// </summary>
/// <param name="postName"></param>
/// <returns>true-存在false-不存在</returns>
public static bool IsExistWorkPackageProjectName(string supWorkPack, string packageContent, string workPackageCode, string projectId)
{
var q = from x in Funs.DB.WBS_WorkPackageProject where x.SuperWorkPack == supWorkPack && x.PackageContent == packageContent && x.WorkPackageCode != workPackageCode && x.ProjectId == projectId select x;
if (q.Count() > 0)
{
return true;
}
else
{
return false;
}
}
/// <summary>
/// 根据项目编号和工程类型获取第一级分部
/// </summary>
/// <param name="projectId"></param>
/// <returns></returns>
public static List<Model.WBS_WorkPackageProject> GetWorkPackageProjects1ByProjectIdAndProjectType(string projectId, string projectType)
{
return (from x in Funs.DB.WBS_WorkPackageProject where x.ProjectId == projectId && x.ProjectType == projectType && x.SuperWorkPack == null select x).ToList();
}
/// <summary>
/// 根据项目编号和工程类型获取第二、三级分部
/// </summary>
/// <param name="projectId"></param>
/// <returns></returns>
public static List<Model.WBS_WorkPackageProject> GetWorkPackageProjects2ByWorkPackageCode(string workPackageCode, string projectId)
{
return (from x in Funs.DB.WBS_WorkPackageProject where x.ProjectId == projectId && x.SuperWorkPack == workPackageCode select x).ToList();
}
}
}