using Model; using Model.HJGL; using System; using System.Collections.Generic; using System.Linq; using System.Runtime.InteropServices.WindowsRuntime; using System.Web.UI.WebControls; namespace BLL { /// /// 焊工管理 /// public static class APIWelderEntranceService { public static List GetWelderList(string projectId, string name, int pageIndex) { List res = new List(); using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) { var q = from x in db.BS_Welder where x.ProjectId == projectId select x; if (!string.IsNullOrEmpty(name)) { q = q.Where(x => x.WED_Name.Contains(name)); } var list = q.Skip(Funs.PageSize * (pageIndex - 1)).Take(Funs.PageSize).ToList(); var weldMethods = from x in db.Base_WeldingMethod orderby x.WeldingMethodCode select x; var steels = BLL.DropListService.HJGL_GetSteTypeList(); foreach (var item in list) { WelderEntrance welderEntrance = new WelderEntrance(); welderEntrance.WED_ID = item.WED_ID; welderEntrance.WED_Name = item.WED_Name; welderEntrance.WED_Code = item.WED_Code; welderEntrance.IdentityCard = item.IdentityCard; welderEntrance.WED_Unit = item.WED_Unit; if (!string.IsNullOrEmpty(item.WED_Unit)) { var unit = db.Base_Unit.FirstOrDefault(x => x.UnitId == item.WED_Unit); if (unit != null) { welderEntrance.WED_UnitName = unit.UnitName; } } welderEntrance.WED_WorkCode = item.WED_WorkCode; //welderEntrance.SE_Equipment = item.SE_Equipment; //welderEntrance.Exam_Res = item.Exam_Res; //welderEntrance.SE_Equipment_Apply = item.SE_Equipment_Apply; //welderEntrance.Status = item.Status; welderEntrance.ProjectId = item.ProjectId; //welderEntrance.Auditor = item.Auditor; //welderEntrance.Limit_Date = item.Limit_Date.HasValue ? item.Limit_Date.Value.ToString("yyyy-MM-dd") : ""; //welderEntrance.SE_Equipment_Apply = item.SE_Equipment_Apply; var WME_IDs = from x in db.BS_WeldMethodItem where x.WED_ID == item.WED_ID select x.WME_ID; string weldMethodCode = string.Empty; foreach (var WME_ID in WME_IDs) { var weldMethod = weldMethods.FirstOrDefault(x => x.WeldingMethodId == WME_ID); if (weldMethod != null) { weldMethodCode += weldMethod.WeldingMethodCode + ","; } } if (!string.IsNullOrEmpty(weldMethodCode)) { weldMethodCode = weldMethodCode.Substring(0, weldMethodCode.Length - 1); } welderEntrance.WeldMethodCode = weldMethodCode; welderEntrance.JOT_Sch = item.JOT_Sch; string SteType = string.Empty; //string[] steelIds = welder.Steels.Split(','); //foreach (var steelId in steelIds) //{ // var steel = steels.FirstOrDefault(x => x.Value == steelId); // if (steel != null) // { // SteType += steel.Text + ","; // } //} if (!string.IsNullOrEmpty(SteType)) { SteType = SteType.Substring(0, SteType.Length - 1); } welderEntrance.SteType = SteType; res.Add(welderEntrance); } } return res; } /// /// 根据主键获取焊工信息 /// /// /// public static WelderEntrance GetWelderById(string welderId) { using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) { var item = db.BS_Welder_Entrance.FirstOrDefault(e => e.WED_ID == welderId); WelderEntrance welderEntrance = new WelderEntrance(); welderEntrance.Auditor = item.Auditor; if (!string.IsNullOrEmpty(item.Auditor)) { var unit = db.Sys_User.FirstOrDefault(x => x.UserId == item.Auditor); if (unit != null) { welderEntrance.AuditorName = unit.UserName; } } welderEntrance.WED_ID = item.WED_ID; welderEntrance.WED_Name = item.WED_Name; welderEntrance.WED_Code = item.WED_Code; welderEntrance.IdentityCard = item.IdentityCard; welderEntrance.WED_Unit = item.WED_Unit; if (!string.IsNullOrEmpty(item.WED_Unit)) { var unit = db.Base_Unit.FirstOrDefault(x => x.UnitId == item.WED_Unit); if (unit != null) { welderEntrance.WED_UnitName = unit.UnitName; } } welderEntrance.WED_WorkCode = item.WED_WorkCode; welderEntrance.SE_Equipment = item.SE_Equipment; welderEntrance.Exam_Res = item.Exam_Res; welderEntrance.SE_Equipment_Apply = item.SE_Equipment_Apply; welderEntrance.Status = item.Status; welderEntrance.ProjectId = item.ProjectId; welderEntrance.Auditor = item.Auditor; welderEntrance.Limit_Date = item.Limit_Date.HasValue ? item.Limit_Date.Value.ToString("yyyy-MM-dd") : ""; welderEntrance.SE_Equipment_Apply = item.SE_Equipment_Apply; return welderEntrance; } } /// /// 增加焊工 /// /// public static void AddBSWelder(WelderEntrance welder) { using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) { Model.BS_Welder_Entrance newWelder = new Model.BS_Welder_Entrance(); newWelder.WED_ID = welder.WED_ID; newWelder.WED_Code = welder.WED_Code; newWelder.WED_Name = welder.WED_Name; newWelder.WED_WorkCode = welder.WED_WorkCode; newWelder.IdentityCard = welder.IdentityCard; if (!string.IsNullOrEmpty(welder.Limit_Date)) { newWelder.Limit_Date = DateTime.Parse(welder.Limit_Date); } newWelder.Status = welder.Status; newWelder.WED_Unit = welder.WED_Unit; newWelder.SE_Equipment = welder.SE_Equipment; newWelder.SE_Equipment_Apply = welder.SE_Equipment_Apply; newWelder.ProjectId = welder.ProjectId; newWelder.Exam_Res = welder.Exam_Res; db.BS_Welder_Entrance.InsertOnSubmit(newWelder); db.SubmitChanges(); } } /// /// 修改人员信息 /// /// public static void UpdateBSWelder(WelderEntrance welder) { using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) { Model.BS_Welder_Entrance newWelder = db.BS_Welder_Entrance.FirstOrDefault(e => e.WED_ID == welder.WED_ID); if (newWelder != null) { newWelder.SE_Equipment_Apply = welder.SE_Equipment_Apply; newWelder.WED_ID = welder.WED_ID; newWelder.WED_Code = welder.WED_Code; newWelder.WED_Name = welder.WED_Name; newWelder.WED_WorkCode = welder.WED_WorkCode; newWelder.IdentityCard = welder.IdentityCard; if (!string.IsNullOrEmpty(welder.Limit_Date)) { newWelder.Limit_Date = DateTime.Parse(welder.Limit_Date); } newWelder.Status = welder.Status; newWelder.WED_Unit = welder.WED_Unit; newWelder.SE_Equipment = welder.SE_Equipment; newWelder.ProjectId = welder.ProjectId; newWelder.Exam_Res = welder.Exam_Res; var bswelder = db.BS_Welder.FirstOrDefault(x => x.ProjectId == welder.ProjectId && x.WED_WorkCode == welder.WED_Code); if (bswelder == null) { bswelder = new Model.BS_Welder(); bswelder.IdentityCard = welder.IdentityCard; bswelder.WED_Unit = welder.WED_Unit; bswelder.ProjectId = welder.ProjectId; bswelder.WED_Name = welder.WED_Name; bswelder.WED_ID = Guid.NewGuid().ToString(); bswelder.WED_Code = welder.WED_Code; bswelder.WED_WorkCode = welder.WED_WorkCode; bswelder.LimitDate = newWelder.Limit_Date; db.BS_Welder.InsertOnSubmit(bswelder); // WelderService.AddBSWelder(bswelder); } else { bswelder.IdentityCard = welder.IdentityCard; bswelder.WED_Unit = welder.WED_Unit; bswelder.ProjectId = welder.ProjectId; bswelder.WED_Name = welder.WED_Name; // bswelder.WED_ID = Guid.NewGuid().ToString(); bswelder.WED_Code = welder.WED_Code; bswelder.WED_WorkCode = welder.WED_WorkCode; bswelder.LimitDate = newWelder.Limit_Date; // WelderService.UpdateBSWelder(bswelder); } db.SubmitChanges(); } } } /// /// 是否存在人员编号 /// /// /// true-存在,false-不存在 public static bool IsExistWEDName(string WED_Name, string projectId) { using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) { var q = from x in db.BS_Welder_Entrance where x.WED_Name == WED_Name && x.ProjectId == projectId select x; if (q.Count() > 0) { return true; } else { return false; } } } /// /// 是否存在人员编号 /// /// /// true-存在,false-不存在 public static bool IsExistWEDCode(string WED_Code, string projectId) { using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) { var q = from x in db.BS_Welder_Entrance where x.WED_Code == WED_Code && x.ProjectId == projectId select x; if (q.Count() > 0) { return true; } else { return false; } } } /// /// 删除人员信息 /// /// public static void DeleteBSWelder(string WED_ID) { using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) { Model.BS_Welder_Entrance welder = db.BS_Welder_Entrance.FirstOrDefault(e => e.WED_ID == WED_ID); if (welder != null) { Funs.DB.BS_Welder_Entrance.DeleteOnSubmit(welder); Funs.DB.SubmitChanges(); } } } } }