using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace BLL { /// /// 焊接工艺评定材质匹配表 /// public static class HJGL_MatchedProcedureMaterialService { /// /// 根据主键获取焊接工艺评定材质匹配表 /// /// /// public static Model.HJGL_WeldingProcedure_MatchedProcedureMaterial GetMatchedProcedureMaterialById(string matchedProcedureMaterialId) { return Funs.DB.HJGL_WeldingProcedure_MatchedProcedureMaterial.FirstOrDefault(e => e.MatchedProcedureMaterialId == matchedProcedureMaterialId); } /// /// 根据主键获取焊接工艺评定材质匹配视图表 /// /// /// public static Model.HJGL_View_MatchedProcedureMaterial GetMatchedProcedureMaterialViewById(string matchedProcedureMaterialId) { return Funs.DB.HJGL_View_MatchedProcedureMaterial.FirstOrDefault(e => e.MatchedProcedureMaterialId == matchedProcedureMaterialId); } /// /// 添加焊接工艺评定材质匹配表 /// /// public static void AddMatchedProcedureMaterial(Model.HJGL_WeldingProcedure_MatchedProcedureMaterial matchedProcedureMaterial) { Model.SGGLDB db = Funs.DB; Model.HJGL_WeldingProcedure_MatchedProcedureMaterial newMatchedProcedureMaterial = new Model.HJGL_WeldingProcedure_MatchedProcedureMaterial(); newMatchedProcedureMaterial.MatchedProcedureMaterialId = matchedProcedureMaterial.MatchedProcedureMaterialId; newMatchedProcedureMaterial.ProjectId = matchedProcedureMaterial.ProjectId; newMatchedProcedureMaterial.STE_ID1 = matchedProcedureMaterial.STE_ID1; newMatchedProcedureMaterial.STE_ID2 = matchedProcedureMaterial.STE_ID2; newMatchedProcedureMaterial.Specifications = matchedProcedureMaterial.Specifications; newMatchedProcedureMaterial.WeldingProcedureId = matchedProcedureMaterial.WeldingProcedureId; newMatchedProcedureMaterial.Remark = matchedProcedureMaterial.Remark; newMatchedProcedureMaterial.WeldingMethodId = matchedProcedureMaterial.WeldingMethodId; newMatchedProcedureMaterial.Thickness = matchedProcedureMaterial.Thickness; newMatchedProcedureMaterial.Dia = matchedProcedureMaterial.Dia; newMatchedProcedureMaterial.IsHotTreatment = matchedProcedureMaterial.IsHotTreatment; newMatchedProcedureMaterial.WeldingPosition = matchedProcedureMaterial.WeldingPosition; newMatchedProcedureMaterial.WeldingProcessCardId = matchedProcedureMaterial.WeldingProcessCardId; newMatchedProcedureMaterial.Flag = matchedProcedureMaterial.Flag; db.HJGL_WeldingProcedure_MatchedProcedureMaterial.InsertOnSubmit(newMatchedProcedureMaterial); db.SubmitChanges(); } /// /// 修改焊接工艺评定材质匹配表 /// /// public static void UpdateMatchedProcedureMaterial(Model.HJGL_WeldingProcedure_MatchedProcedureMaterial matchedProcedureMaterial) { Model.SGGLDB db = Funs.DB; Model.HJGL_WeldingProcedure_MatchedProcedureMaterial newMatchedProcedureMaterial = db.HJGL_WeldingProcedure_MatchedProcedureMaterial.FirstOrDefault(e => e.MatchedProcedureMaterialId == matchedProcedureMaterial.MatchedProcedureMaterialId); if (newMatchedProcedureMaterial != null) { newMatchedProcedureMaterial.ProjectId = matchedProcedureMaterial.ProjectId; newMatchedProcedureMaterial.STE_ID1 = matchedProcedureMaterial.STE_ID1; newMatchedProcedureMaterial.STE_ID2 = matchedProcedureMaterial.STE_ID2; newMatchedProcedureMaterial.Specifications = matchedProcedureMaterial.Specifications; newMatchedProcedureMaterial.WeldingProcedureId = matchedProcedureMaterial.WeldingProcedureId; newMatchedProcedureMaterial.Remark = matchedProcedureMaterial.Remark; newMatchedProcedureMaterial.WeldingMethodId = matchedProcedureMaterial.WeldingMethodId; newMatchedProcedureMaterial.Thickness = matchedProcedureMaterial.Thickness; newMatchedProcedureMaterial.Dia = matchedProcedureMaterial.Dia; newMatchedProcedureMaterial.IsHotTreatment = matchedProcedureMaterial.IsHotTreatment; newMatchedProcedureMaterial.WeldingPosition = matchedProcedureMaterial.WeldingPosition; newMatchedProcedureMaterial.WeldingProcessCardId = matchedProcedureMaterial.WeldingProcessCardId; db.SubmitChanges(); } } /// /// 根据主键删除焊接工艺评定材质匹配表 /// /// public static void DeleteMatchedProcedureMaterialById(string matchedProcedureMaterialId) { Model.SGGLDB db = Funs.DB; Model.HJGL_WeldingProcedure_MatchedProcedureMaterial matchedProcedureMaterial = db.HJGL_WeldingProcedure_MatchedProcedureMaterial.FirstOrDefault(e => e.MatchedProcedureMaterialId == matchedProcedureMaterialId); if (matchedProcedureMaterial != null) { db.HJGL_WeldingProcedure_MatchedProcedureMaterial.DeleteOnSubmit(matchedProcedureMaterial); db.SubmitChanges(); } } /// /// 焊口材质规格匹配工艺评定 /// /// public static void InsertMatchedProcedureMaterial(Model.HJGL_PW_JointInfo newJointInfo) { Model.HJGL_WeldingProcedure_MatchedProcedureMaterial jotMatched = new Model.HJGL_WeldingProcedure_MatchedProcedureMaterial(); jotMatched.ProjectId = newJointInfo.ProjectId; jotMatched.STE_ID1 = newJointInfo.STE_ID; jotMatched.STE_ID2 = newJointInfo.STE_ID2; jotMatched.Specifications = newJointInfo.JOT_JointDesc; jotMatched.WeldingMethodId = newJointInfo.WME_ID; jotMatched.Thickness = Funs.GetNewDecimal(newJointInfo.JOT_Sch); jotMatched.Dia = newJointInfo.JOT_Dia; jotMatched.WeldingPosition = newJointInfo.JOT_Location;//newJointInfo.WeldingPosition;焊口表中没有焊接位置字段 if (newJointInfo.IS_Proess == "1") { jotMatched.IsHotTreatment = true; } else { jotMatched.IsHotTreatment = false; } var matchedProcedureMaterial = Funs.DB.HJGL_WeldingProcedure_MatchedProcedureMaterial.FirstOrDefault(x => x.ProjectId == jotMatched.ProjectId && x.STE_ID1 == jotMatched.STE_ID1 && Equals(x.STE_ID2, jotMatched.STE_ID2) && Equals(x.Specifications, jotMatched.Specifications) && Equals(x.WeldingMethodId, jotMatched.WeldingMethodId) && Equals(x.Thickness, jotMatched.Thickness) && Equals(x.Dia, jotMatched.Dia) && (x.IsHotTreatment == jotMatched.IsHotTreatment)); if (matchedProcedureMaterial == null) { jotMatched.MatchedProcedureMaterialId = SQLHelper.GetNewID(typeof(Model.HJGL_WeldingProcedure_MatchedProcedureMaterial)); AddMatchedProcedureMaterial(jotMatched); } } /// /// 根据匹配节点 找到一条满足条件的焊口信息 /// /// /// public static Model.HJGL_PW_JointInfo GetJointInfoByMatchedProcedureMaterialId(string matchedProcedureMaterialId) { Model.HJGL_PW_JointInfo returnInfo = new Model.HJGL_PW_JointInfo(); var matched = HJGL_MatchedProcedureMaterialService.GetMatchedProcedureMaterialById(matchedProcedureMaterialId); if (matched != null) { returnInfo = Funs.DB.HJGL_PW_JointInfo.FirstOrDefault(x => x.ProjectId == matched.ProjectId && x.STE_ID == matched.STE_ID1 && x.WME_ID == matched.WeldingMethodId && x.JOT_JointDesc == matched.Specifications && x.JOT_WeldMat != null); } return returnInfo; } } }