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();
 | |
|                     }
 | |
|                 }
 | |
|             }
 | |
|         }
 | |
|     }
 | |
| }
 |