using Model; using Org.BouncyCastle.Crypto; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using static NPOI.HSSF.Util.HSSFColor; namespace BLL { public class SubPackBlacklistService { /// /// 拉黑劳务人员 /// public static void AddBackPersonnel(Model.SubPack_Blacklist subPackBlacklist) { Model.SGGLDB db = Funs.DB; db.SubPack_Blacklist.InsertOnSubmit(subPackBlacklist); var basePersonnel = db.SubPack_SubPackPersonnel.FirstOrDefault(p => p.SubPackPersonnelID == subPackBlacklist.BlackForeignKey && (p.State == null || p.State == string.Empty || p.State == "0")); if (basePersonnel != null) { basePersonnel.State = "1"; } db.SubmitChanges(); } /// /// 拉黑劳务人员 /// public static void AddBackPersonnel(List subPackBlacklists, List ids) { Model.SGGLDB db = Funs.DB; db.SubPack_Blacklist.InsertAllOnSubmit(subPackBlacklists); var basePersonnels = db.SubPack_SubPackPersonnel.Where(p => ids.Contains(p.SubPackPersonnelID) && (p.State == null || p.State == string.Empty || p.State == "0")).ToList(); foreach (var personnel in basePersonnels) { personnel.State = "1"; } db.SubmitChanges(); } /// /// 拉黑劳务班组 /// public static void AddBackTeam(Model.SubPack_Blacklist subPackBlacklist) { Model.SGGLDB db = Funs.DB; db.SubPack_Blacklist.InsertOnSubmit(subPackBlacklist); var baseTeam = db.SubPack_BranchTeamListTeam.FirstOrDefault(p => p.BranchTeamListTeamId == subPackBlacklist.BlackForeignKey); if (baseTeam != null) { baseTeam.State = "1"; } db.SubmitChanges(); } /// /// 拉黑劳务班组 /// public static void AddBackTeam(List subPackBlacklists, List ids) { Model.SGGLDB db = Funs.DB; db.SubPack_Blacklist.InsertAllOnSubmit(subPackBlacklists); var baseTeams = db.SubPack_BranchTeamListTeam.Where(p => ids.Contains(p.BranchTeamListTeamId)).ToList(); foreach (var baseTeam in baseTeams) { baseTeam.State = "1"; } db.SubmitChanges(); } /// /// 拉黑劳务公司 /// public static void AddBackTeamList(Model.SubPack_Blacklist subPackBlacklist) { Model.SGGLDB db = Funs.DB; db.SubPack_Blacklist.InsertOnSubmit(subPackBlacklist); //劳务公司名单明细表 var teamListDetail = db.SubPack_TeamListDetail.FirstOrDefault(p => p.SubPackTeamListDetailID == subPackBlacklist.BlackForeignKey); if (teamListDetail != null) { teamListDetail.BackState = "1"; } //劳务公司变更明细表 var changeRequestDetail = db.SubPack_ChangeRequestDetail.FirstOrDefault(p => p.SubPackChangeRequestDetailID == subPackBlacklist.BlackForeignKey); if (changeRequestDetail != null) { changeRequestDetail.BackState = "1"; } db.SubmitChanges(); } /// /// 拉黑劳务公司 /// public static void AddBackTeamList(List subPackBlacklists, List ids) { Model.SGGLDB db = Funs.DB; db.SubPack_Blacklist.InsertAllOnSubmit(subPackBlacklists); var baseTeamLists = db.SubPack_TeamListDetail.Where(p => ids.Contains(p.SubPackTeamListDetailID)); foreach (var baseTeamList in baseTeamLists) { baseTeamList.BackState = "1"; } var baseTeamLists1 = db.SubPack_ChangeRequestDetail.Where(p => ids.Contains(p.SubPackChangeRequestDetailID)); foreach (var baseTeamList in baseTeamLists1) { baseTeamList.BackState = "1"; } db.SubmitChanges(); } /// /// 解除劳务公司黑名单 /// /// public static void DeleteBackTeamList(string id) { Model.SGGLDB db = Funs.DB; //劳务公司名单明细表 var teamListDetail = db.SubPack_TeamListDetail.FirstOrDefault(p => p.SubPackTeamListDetailID == id); if (teamListDetail != null) { teamListDetail.BackState = "0"; } //劳务公司变更明细表 var changeRequestDetail = db.SubPack_ChangeRequestDetail.FirstOrDefault(p => p.SubPackChangeRequestDetailID == id); if (changeRequestDetail != null) { changeRequestDetail.BackState = "0"; } var deleteBackTeamList = db.SubPack_Blacklist.Where(p => p.BlackType == Const.SubPackBlackListTeamList && p.BlackForeignKey == id); db.SubPack_Blacklist.DeleteAllOnSubmit(deleteBackTeamList); db.SubmitChanges(); } /// /// 解除劳务队伍黑名单 /// /// public static void DeleteBackLaborTeam(string laborTeamId) { Model.SGGLDB db = Funs.DB; var oneModelTeamListTeam = db.SubPack_LaborTeam.FirstOrDefault(p => p.LaborTeamId == laborTeamId); if (oneModelTeamListTeam != null) { oneModelTeamListTeam.State = "0"; } var deleteBackTeamList = db.SubPack_Blacklist.Where(p => p.BlackType == Const.SubPackBlackLaborTeam && p.BlackForeignKey == laborTeamId); db.SubPack_Blacklist.DeleteAllOnSubmit(deleteBackTeamList); db.SubmitChanges(); } /// /// 解除劳务班组黑名单 /// /// public static void DeleteBackTeam(string branchTeamListTeamId) { Model.SGGLDB db = Funs.DB; var oneModelTeamListTeam = db.SubPack_BranchTeamListTeam.FirstOrDefault(p => p.BranchTeamListTeamId == branchTeamListTeamId); if (oneModelTeamListTeam != null) { oneModelTeamListTeam.State = "0"; } var deleteBackTeamList = db.SubPack_Blacklist.Where(p => p.BlackType == Const.SubPackBlackListTeam && p.BlackForeignKey == branchTeamListTeamId); db.SubPack_Blacklist.DeleteAllOnSubmit(deleteBackTeamList); db.SubmitChanges(); } /// /// 解除劳务人员黑名单 /// /// public static void DeleteBackPersonnel(string subPackPersonnelID) { Model.SGGLDB db = Funs.DB; var oneModelPersonnel = db.SubPack_SubPackPersonnel.FirstOrDefault(p => p.SubPackPersonnelID == subPackPersonnelID); if (oneModelPersonnel != null) { oneModelPersonnel.State = "0"; } var deleteBackTeamList = db.SubPack_Blacklist.Where(p => p.BlackType == Const.SubPackBlackListPersonnel && p.BlackForeignKey == subPackPersonnelID); db.SubPack_Blacklist.DeleteAllOnSubmit(deleteBackTeamList); db.SubmitChanges(); } public static string GetMessAlert(string IdentityCard, string BlackType) { string retStr = string.Empty; var backModels = (from x in Funs.DB.SubPack_Blacklist join p in Funs.DB.Base_Project on x.ProjectID equals p.ProjectId where x.BlackType == BlackType && x.IDCard == IdentityCard select new { x.IDCard, p.ProjectName,x.Remark }).ToList(); if (backModels.Count > 0) { if (BlackType == Const.SubPackBlackListTeamList) { retStr = $"劳务公司法人代表身份证为【{IdentityCard}】在"; } else if (BlackType == Const.SubPackBlackLaborTeam) { retStr = $"劳务队伍队长身份证为【{IdentityCard}】在"; } else if (BlackType == Const.SubPackBlackListTeam) { retStr = $"劳务班组班长身份证为【{IdentityCard}】在"; } else if (BlackType == Const.SubPackBlackListPersonnel) { retStr = $"劳务人员身份证为【{IdentityCard}】在"; } foreach (var item in backModels) { retStr += $"【{item.ProjectName}】由于【{item.Remark}】加入黑名单;"; } } return retStr; } } }