ZHJA_HJGL/HJGL_ZH/BLL/HJGL/WeldingManage/HJGL_MatchedProcedureMateri...

152 lines
8.6 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace BLL
{
/// <summary>
/// 焊接工艺评定材质匹配表
/// </summary>
public static class HJGL_MatchedProcedureMaterialService
{
/// <summary>
/// 根据主键获取焊接工艺评定材质匹配表
/// </summary>
/// <param name="matchedProcedureMaterialId"></param>
/// <returns></returns>
public static Model.HJGL_WeldingProcedure_MatchedProcedureMaterial GetMatchedProcedureMaterialById(string matchedProcedureMaterialId)
{
return Funs.DB.HJGL_WeldingProcedure_MatchedProcedureMaterial.FirstOrDefault(e => e.MatchedProcedureMaterialId == matchedProcedureMaterialId);
}
/// <summary>
/// 根据主键获取焊接工艺评定材质匹配视图表
/// </summary>
/// <param name="matchedProcedureMaterialId"></param>
/// <returns></returns>
public static Model.HJGL_View_MatchedProcedureMaterial GetMatchedProcedureMaterialViewById(string matchedProcedureMaterialId)
{
return Funs.DB.HJGL_View_MatchedProcedureMaterial.FirstOrDefault(e => e.MatchedProcedureMaterialId == matchedProcedureMaterialId);
}
/// <summary>
/// 添加焊接工艺评定材质匹配表
/// </summary>
/// <param name="matchedProcedureMaterial"></param>
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();
}
/// <summary>
/// 修改焊接工艺评定材质匹配表
/// </summary>
/// <param name="matchedProcedureMaterial"></param>
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();
}
}
/// <summary>
/// 根据主键删除焊接工艺评定材质匹配表
/// </summary>
/// <param name="matchedProcedureMaterialId"></param>
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();
}
}
/// <summary>
/// 焊口材质规格匹配工艺评定
/// </summary>
/// <param name="newJointInfo"></param>
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);
}
}
/// <summary>
/// 根据匹配节点 找到一条满足条件的焊口信息
/// </summary>
/// <param name="matchedProcedureMaterialId"></param>
/// <returns></returns>
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;
}
}
}