259 lines
		
	
	
		
			13 KiB
		
	
	
	
		
			C#
		
	
	
	
		
		
			
		
	
	
			259 lines
		
	
	
		
			13 KiB
		
	
	
	
		
			C#
		
	
	
	
|  | using Model; | |||
|  | using System; | |||
|  | using System.Collections.Generic; | |||
|  | using System.Linq; | |||
|  | using System.Text; | |||
|  | using System.Threading.Tasks; | |||
|  | 
 | |||
|  | namespace BLL | |||
|  | { | |||
|  |     public class SubPackLaborTeamService | |||
|  |     { | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// 分包商名称 下拉框绑定 | |||
|  |         /// </summary> | |||
|  |         public static void DropSelectUnitWork(FineUIPro.DropDownList dropName, string projectid, bool isShowPlease) | |||
|  |         { | |||
|  |             Model.SGGLDB db = Funs.DB; | |||
|  |             var unitWorkList = (from x in db.Base_Unit | |||
|  |                                 join y in db.Project_ProjectUnit on x.UnitId equals y.UnitId | |||
|  |                                 where y.UnitType == "2" && y.ProjectId == projectid | |||
|  |                                 select new | |||
|  |                                 { | |||
|  |                                     UnitName = x.UnitName, | |||
|  |                                     UnitId = x.UnitId, | |||
|  |                                 }).ToList(); | |||
|  |             dropName.DataValueField = "UnitId"; | |||
|  |             dropName.DataTextField = "UnitName"; | |||
|  |             dropName.DataSource = unitWorkList; | |||
|  |             dropName.DataBind(); | |||
|  |             if (isShowPlease) | |||
|  |                 BLL.Funs.FineUIPleaseSelect(dropName); | |||
|  |         } | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// 分包队伍 下拉框绑定 | |||
|  |         /// </summary> | |||
|  |         public static void DropSelectLaborTeam(FineUIPro.DropDownList dropName, string unitId, string BranchTeamListId, string projectId, bool isShowPlease) | |||
|  |         { | |||
|  |             Model.SGGLDB db = Funs.DB; | |||
|  |             var unitWorkList = (from x in db.SubPack_LaborTeam | |||
|  |                                 where x.ProjectId == projectId && (x.BranchTeamListId == BranchTeamListId || BranchTeamListId == null) && (x.UnitId == unitId || unitId == null) && (x.State == null || x.State == "" || x.State == "0") | |||
|  |                                 select new | |||
|  |                                 { | |||
|  |                                     LaborTeamName = x.LaborTeamName, | |||
|  |                                     LaborTeamId = x.LaborTeamId, | |||
|  |                                 }).ToList(); | |||
|  |             dropName.DataValueField = "LaborTeamId"; | |||
|  |             dropName.DataTextField = "LaborTeamName"; | |||
|  |             dropName.DataSource = unitWorkList; | |||
|  |             dropName.DataBind(); | |||
|  |             if (isShowPlease) | |||
|  |                 BLL.Funs.FineUIPleaseSelect(dropName); | |||
|  |         } | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// 分包公司 下拉框绑定 | |||
|  |         /// </summary> | |||
|  |         public static void DropSelectLaborTeamUpdate(FineUIPro.DropDownList dropName, string unitId, string BranchTeamListId, string projectId, bool isShowPlease) | |||
|  |         { | |||
|  |             Model.SGGLDB db = Funs.DB; | |||
|  |             var unitWorkList = (from x in db.SubPack_LaborTeam | |||
|  |                                 where x.ProjectId == projectId && (x.UnitId == unitId || unitId == null) && (x.BranchTeamListId == BranchTeamListId || BranchTeamListId == null) | |||
|  |                                 select new | |||
|  |                                 { | |||
|  |                                     LaborTeamName = x.LaborTeamName, | |||
|  |                                     LaborTeamId = x.LaborTeamId, | |||
|  |                                 }).ToList(); | |||
|  |             dropName.DataValueField = "LaborTeamId"; | |||
|  |             dropName.DataTextField = "LaborTeamName"; | |||
|  |             dropName.DataSource = unitWorkList; | |||
|  |             dropName.DataBind(); | |||
|  |             if (isShowPlease) | |||
|  |                 BLL.Funs.FineUIPleaseSelect(dropName); | |||
|  |         } | |||
|  | 
 | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// 新增 | |||
|  |         /// </summary> | |||
|  |         /// <param name="subPackLaborTeam">劳务队伍信息</param> | |||
|  |         public static void AddSubPackLaborTeam(Model.SubPack_LaborTeam subPackLaborTeam) | |||
|  |         { | |||
|  |             Model.SGGLDB db = Funs.DB; | |||
|  |             db.SubPack_LaborTeam.InsertOnSubmit(subPackLaborTeam); | |||
|  |             var v_subPackTeamList = db.View_SubPack_TeamList.FirstOrDefault(p => p.SubPackTeamListDetailID == subPackLaborTeam.BranchTeamListId); | |||
|  |             if (v_subPackTeamList != null) | |||
|  |             { | |||
|  |                 var branchTeamList = db.Base_BranchTeamList.FirstOrDefault(p => p.CorporateIDCard == v_subPackTeamList.CorporateIDCard); | |||
|  |                 if (branchTeamList != null) | |||
|  |                 { | |||
|  |                     var baseLaborTeam = db.Base_LaborTeam.FirstOrDefault(p => p.CaptainIDCard == subPackLaborTeam.CaptainIDCard); | |||
|  |                     if (baseLaborTeam == null) | |||
|  |                     { | |||
|  |                         Model.Base_LaborTeam newBase_LaborTeam = new Model.Base_LaborTeam(); | |||
|  |                         newBase_LaborTeam.LaborTeamId = SQLHelper.GetNewID(typeof(Model.SubPack_LaborTeam)); | |||
|  |                         newBase_LaborTeam.UnitId = subPackLaborTeam.UnitId; | |||
|  |                         newBase_LaborTeam.BranchTeamListId = branchTeamList.BranchTeamListId; | |||
|  |                         newBase_LaborTeam.LaborTeamName = subPackLaborTeam.LaborTeamName; | |||
|  |                         newBase_LaborTeam.Remark = subPackLaborTeam.Remark; | |||
|  |                         newBase_LaborTeam.SortIndex = subPackLaborTeam.SortIndex; | |||
|  |                         newBase_LaborTeam.CaptainName = subPackLaborTeam.CaptainName; | |||
|  |                         newBase_LaborTeam.CaptainIDCard = subPackLaborTeam.CaptainIDCard; | |||
|  |                         db.Base_LaborTeam.InsertOnSubmit(newBase_LaborTeam); | |||
|  |                     } | |||
|  |                     //else | |||
|  |                     //{ | |||
|  |                     //baseLaborTeam.BranchTeamListId = branchTeamList.BranchTeamListId; | |||
|  |                     //baseLaborTeam.UnitId = subPackLaborTeam.UnitId; | |||
|  |                     //baseLaborTeam.CaptainIDCard = subPackLaborTeam.CaptainIDCard; | |||
|  |                     //baseLaborTeam.CaptainName = subPackLaborTeam.CaptainName; | |||
|  |                     //baseLaborTeam.LaborTeamName = subPackLaborTeam.LaborTeamName; | |||
|  |                     //baseLaborTeam.Remark = subPackLaborTeam.Remark; | |||
|  |                     //} | |||
|  |                 } | |||
|  |             } | |||
|  | 
 | |||
|  |             db.SubmitChanges(); | |||
|  |         } | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// 批量新增 | |||
|  |         /// </summary> | |||
|  |         /// <param name="subPackLaborTeams">劳务队伍信息列表</param> | |||
|  |         public static void AddSubPackLaborTeam(List<Model.SubPack_LaborTeam> subPackLaborTeams) | |||
|  |         { | |||
|  |             Model.SGGLDB db = Funs.DB; | |||
|  |             db.SubPack_LaborTeam.InsertAllOnSubmit(subPackLaborTeams); | |||
|  |             foreach (var subPackLaborTeam in subPackLaborTeams) | |||
|  |             { | |||
|  |                 var v_subPackTeamList = db.View_SubPack_TeamList.FirstOrDefault(p => p.SubPackTeamListDetailID == subPackLaborTeam.BranchTeamListId); | |||
|  |                 if (v_subPackTeamList != null) | |||
|  |                 { | |||
|  |                     var branchTeamList = db.Base_BranchTeamList.FirstOrDefault(p => p.CorporateIDCard == v_subPackTeamList.CorporateIDCard); | |||
|  |                     if (branchTeamList != null) | |||
|  |                     { | |||
|  |                         var baseLaborTeam = db.Base_LaborTeam.FirstOrDefault(p => p.CaptainIDCard == subPackLaborTeam.CaptainIDCard); | |||
|  |                         if (baseLaborTeam == null) | |||
|  |                         { | |||
|  |                             Model.Base_LaborTeam newBase_LaborTeam = new Model.Base_LaborTeam(); | |||
|  |                             newBase_LaborTeam.LaborTeamId = SQLHelper.GetNewID(typeof(Model.SubPack_LaborTeam)); | |||
|  |                             newBase_LaborTeam.UnitId = subPackLaborTeam.UnitId; | |||
|  |                             newBase_LaborTeam.BranchTeamListId = branchTeamList.BranchTeamListId; | |||
|  |                             newBase_LaborTeam.LaborTeamName = subPackLaborTeam.LaborTeamName; | |||
|  |                             newBase_LaborTeam.Remark = subPackLaborTeam.Remark; | |||
|  |                             newBase_LaborTeam.SortIndex = subPackLaborTeam.SortIndex; | |||
|  |                             newBase_LaborTeam.CaptainName = subPackLaborTeam.CaptainName; | |||
|  |                             newBase_LaborTeam.CaptainIDCard = subPackLaborTeam.CaptainIDCard; | |||
|  |                             db.Base_LaborTeam.InsertOnSubmit(newBase_LaborTeam); | |||
|  |                              | |||
|  |                         } | |||
|  |                         //else | |||
|  |                         //{ | |||
|  |                         //    baseLaborTeam.BranchTeamListId = branchTeamList.BranchTeamListId; | |||
|  |                         //    baseLaborTeam.UnitId = subPackLaborTeam.UnitId; | |||
|  |                         //    baseLaborTeam.CaptainIDCard = subPackLaborTeam.CaptainIDCard; | |||
|  |                         //    baseLaborTeam.CaptainName = subPackLaborTeam.CaptainName; | |||
|  |                         //    baseLaborTeam.LaborTeamName = subPackLaborTeam.LaborTeamName; | |||
|  |                         //    baseLaborTeam.Remark = subPackLaborTeam.Remark; | |||
|  |                         //} | |||
|  |                     } | |||
|  |                 } | |||
|  |             } | |||
|  |             db.SubmitChanges(); | |||
|  |         } | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// 修改 | |||
|  |         /// </summary> | |||
|  |         /// <param name="subPackLaborTeam">劳务队伍信息</param> | |||
|  |         public static void UpdateSubPackLaborTeam(Model.SubPack_LaborTeam subPackLaborTeam) | |||
|  |         { | |||
|  |             Model.SGGLDB db = Funs.DB; | |||
|  |             var updateItem = db.SubPack_LaborTeam.FirstOrDefault(p => p.LaborTeamId == subPackLaborTeam.LaborTeamId); | |||
|  |             if (updateItem != null) | |||
|  |             { | |||
|  |                 updateItem.ProjectId = subPackLaborTeam.ProjectId; | |||
|  |                 updateItem.UnitId = subPackLaborTeam.UnitId; | |||
|  |                 updateItem.BranchTeamListId = subPackLaborTeam.BranchTeamListId; | |||
|  |                 updateItem.LaborTeamName = subPackLaborTeam.LaborTeamName; | |||
|  |                 updateItem.Remark = subPackLaborTeam.Remark; | |||
|  |                 updateItem.SortIndex = subPackLaborTeam.SortIndex; | |||
|  |                 updateItem.CaptainName = subPackLaborTeam.CaptainName; | |||
|  |                 updateItem.CaptainIDCard = subPackLaborTeam.CaptainIDCard; | |||
|  | 
 | |||
|  |                 var v_subPackTeamList = db.View_SubPack_TeamList.FirstOrDefault(p => p.SubPackTeamListDetailID == subPackLaborTeam.BranchTeamListId); | |||
|  |                 if (v_subPackTeamList != null) | |||
|  |                 { | |||
|  |                     var branchTeamList = db.Base_BranchTeamList.FirstOrDefault(p => p.CorporateIDCard == v_subPackTeamList.CorporateIDCard); | |||
|  |                     if (branchTeamList != null) | |||
|  |                     { | |||
|  |                         var baseLaborTeam = db.Base_LaborTeam.FirstOrDefault(p => p.CaptainIDCard == subPackLaborTeam.CaptainIDCard); | |||
|  |                         if (baseLaborTeam == null) | |||
|  |                         { | |||
|  |                             Model.Base_LaborTeam newBase_LaborTeam = new Model.Base_LaborTeam(); | |||
|  |                             newBase_LaborTeam.LaborTeamId = SQLHelper.GetNewID(typeof(Model.SubPack_LaborTeam)); | |||
|  |                             newBase_LaborTeam.UnitId = subPackLaborTeam.UnitId; | |||
|  |                             newBase_LaborTeam.BranchTeamListId = branchTeamList.BranchTeamListId; | |||
|  |                             newBase_LaborTeam.LaborTeamName = subPackLaborTeam.LaborTeamName; | |||
|  |                             newBase_LaborTeam.Remark = subPackLaborTeam.Remark; | |||
|  |                             newBase_LaborTeam.SortIndex = subPackLaborTeam.SortIndex; | |||
|  |                             newBase_LaborTeam.CaptainName = subPackLaborTeam.CaptainName; | |||
|  |                             newBase_LaborTeam.CaptainIDCard = subPackLaborTeam.CaptainIDCard; | |||
|  |                             db.Base_LaborTeam.InsertOnSubmit(newBase_LaborTeam); | |||
|  |                              | |||
|  |                         } | |||
|  |                         //else | |||
|  |                         //{ | |||
|  |                         //    baseLaborTeam.BranchTeamListId = branchTeamList.BranchTeamListId; | |||
|  |                         //    baseLaborTeam.UnitId = subPackLaborTeam.UnitId; | |||
|  |                         //    baseLaborTeam.CaptainIDCard = subPackLaborTeam.CaptainIDCard; | |||
|  |                         //    baseLaborTeam.CaptainName = subPackLaborTeam.CaptainName; | |||
|  |                         //    baseLaborTeam.LaborTeamName = subPackLaborTeam.LaborTeamName; | |||
|  |                         //    baseLaborTeam.Remark = subPackLaborTeam.Remark; | |||
|  |                         //} | |||
|  |                     } | |||
|  |                 } | |||
|  | 
 | |||
|  |                 db.SubmitChanges(); | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// 删除 | |||
|  |         /// </summary> | |||
|  |         /// <param name="laborTeamId">主表主键</param> | |||
|  |         public static void DeleteSubPackLaborTeam(string laborTeamId) | |||
|  |         { | |||
|  |             Model.SGGLDB db = Funs.DB; | |||
|  |             var deleteItem = db.SubPack_LaborTeam.FirstOrDefault(p => p.LaborTeamId == laborTeamId); | |||
|  |             if (deleteItem != null) | |||
|  |             { | |||
|  |                 string captainIDCard = deleteItem.CaptainIDCard; | |||
|  |                 //删除主表 | |||
|  |                 db.SubPack_LaborTeam.DeleteOnSubmit(deleteItem); | |||
|  |                 db.SubmitChanges(); | |||
|  | 
 | |||
|  |                 //删除黑名单 | |||
|  |                 var backItems = db.SubPack_Blacklist.Where(p => p.BlackForeignKey == laborTeamId && p.BlackType == Const.SubPackBlackLaborTeam && p.IDCard == captainIDCard); | |||
|  |                 if (backItems.Count() > 0) | |||
|  |                 { | |||
|  |                     db.SubPack_Blacklist.DeleteAllOnSubmit(backItems); | |||
|  |                     db.SubmitChanges(); | |||
|  |                 } | |||
|  | 
 | |||
|  | 
 | |||
|  |                 //这个队伍再所有项目删除了,那么将删除公司级的队伍 | |||
|  |                 if (db.SubPack_LaborTeam.Where(p => p.CaptainIDCard == captainIDCard).Count() <= 0) { | |||
|  |                     var deleteBaseItem = db.Base_LaborTeam.Where(p => p.CaptainIDCard == captainIDCard); | |||
|  |                     if (deleteBaseItem.Count() > 0) { | |||
|  |                         db.Base_LaborTeam.DeleteAllOnSubmit(deleteBaseItem); | |||
|  |                         db.SubmitChanges(); | |||
|  |                     } | |||
|  |                 } | |||
|  |             } | |||
|  |         } | |||
|  |     } | |||
|  | } |