128 lines
		
	
	
		
			5.4 KiB
		
	
	
	
		
			C#
		
	
	
	
		
		
			
		
	
	
			128 lines
		
	
	
		
			5.4 KiB
		
	
	
	
		
			C#
		
	
	
	
| 
								 | 
							
								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();
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								    }
							 | 
						|||
| 
								 | 
							
								}
							 |