YZ_BSF/HJGL/BLL/WeldingProcess/WeldingManage/Pipeline_PipelineService.cs

185 lines
8.5 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Collections;
using System.Web.UI.WebControls;
namespace BLL
{
public static class Pipeline_PipelineService
{
/// <summary>
/// 根据管线ID获取管线信息
/// </summary>
/// <param name="pipelineName"></param>
/// <returns></returns>
public static Model.Pipeline_Pipeline GetPipelineByPipelineId(string pipelineId)
{
return Funs.DB.Pipeline_Pipeline.FirstOrDefault(e => e.PipelineId == pipelineId);
}
/// <summary>
/// 根据管线ID获取管线信息
/// </summary>
/// <param name="pipelineName"></param>
/// <returns></returns>
public static Model.View_Pipeline_Pipeline GetViewPipelineByPipelineId(string pipelineId)
{
return Funs.DB.View_Pipeline_Pipeline.FirstOrDefault(e => e.PipelineId == pipelineId);
}
/// <summary>
/// 根据管线Code获取管线信息
/// </summary>
/// <param name="isoNo"></param>
/// <returns></returns>
public static bool IsExistPipelineCode(string pipelineCode, string workAreaId, string PipelineId)
{
Model.HJGLDB db = Funs.DB;
Model.Pipeline_Pipeline q = null;
if (!string.IsNullOrEmpty(PipelineId))
{
q = Funs.DB.Pipeline_Pipeline.FirstOrDefault(x => x.PipelineCode == pipelineCode && x.WorkAreaId == workAreaId && x.PipelineId != PipelineId);
}
else
{
q = Funs.DB.Pipeline_Pipeline.FirstOrDefault(x => x.PipelineCode == pipelineCode && x.WorkAreaId == workAreaId);
}
if (q != null)
{
return true;
}
else
{
return false;
}
}
/// <summary>
/// 添加作业管线
/// </summary>
/// <param name="pipeline"></param>
public static void AddPipeline(Model.Pipeline_Pipeline pipeline)
{
Model.HJGLDB db = Funs.DB;
Model.Pipeline_Pipeline newPipeline = new Model.Pipeline_Pipeline();
newPipeline.PipelineId = pipeline.PipelineId;
newPipeline.ProjectId = pipeline.ProjectId;
newPipeline.InstallationId = pipeline.InstallationId;
newPipeline.UnitId = pipeline.UnitId;
newPipeline.WorkAreaId = pipeline.WorkAreaId;
newPipeline.PipelineCode = pipeline.PipelineCode;
newPipeline.SingleNumber = pipeline.SingleNumber;
newPipeline.PipingClassId = pipeline.PipingClassId;
newPipeline.MainMaterialId = pipeline.MainMaterialId;
newPipeline.MediumId = pipeline.MediumId;
newPipeline.Specification = pipeline.Specification;
newPipeline.SystemNumber = pipeline.SystemNumber;
newPipeline.WorkPackageCode = pipeline.WorkPackageCode;
newPipeline.SubSystemNumber = pipeline.SubSystemNumber;
newPipeline.TestPackageCode = pipeline.TestPackageCode;
newPipeline.PipelineLength = pipeline.PipelineLength;
newPipeline.Sheet = pipeline.Sheet;
newPipeline.PipeSegment = pipeline.PipeSegment;
newPipeline.DrawingsNum = pipeline.DrawingsNum;
newPipeline.PaintingCategory = pipeline.PaintingCategory;
newPipeline.AdiabaticCategory = pipeline.AdiabaticCategory;
newPipeline.DesignPressure = pipeline.DesignPressure;
newPipeline.DesignTemperature = pipeline.DesignTemperature;
newPipeline.TestPressure = pipeline.TestPressure;
newPipeline.TestTemperature = pipeline.TestTemperature;
newPipeline.ModifierId = pipeline.ModifierId;
newPipeline.ModifyDate = pipeline.ModifyDate;
newPipeline.CreatorId = pipeline.CreatorId;
newPipeline.CreateDate = pipeline.CreateDate;
newPipeline.PenetrationRatio = pipeline.PenetrationRatio;
newPipeline.PenetrationClass = pipeline.PenetrationClass;
newPipeline.IfPickling = pipeline.IfPickling;
newPipeline.IfChasing = pipeline.IfChasing;
newPipeline.Remark = pipeline.Remark;
db.Pipeline_Pipeline.InsertOnSubmit(newPipeline);
db.SubmitChanges();
}
/// <summary>
/// 修改作业管线
/// </summary>
/// <param name="pipeline"></param>
public static void UpdatePipeline(Model.Pipeline_Pipeline pipeline)
{
Model.HJGLDB db = Funs.DB;
Model.Pipeline_Pipeline newPipeline = db.Pipeline_Pipeline.FirstOrDefault(e => e.PipelineId == pipeline.PipelineId);
if (newPipeline != null)
{
newPipeline.InstallationId = pipeline.InstallationId;
newPipeline.UnitId = pipeline.UnitId;
newPipeline.WorkAreaId = pipeline.WorkAreaId;
newPipeline.PipelineCode = pipeline.PipelineCode;
newPipeline.SingleNumber = pipeline.SingleNumber;
newPipeline.PipingClassId = pipeline.PipingClassId;
newPipeline.MainMaterialId = pipeline.MainMaterialId;
newPipeline.MediumId = pipeline.MediumId;
newPipeline.Specification = pipeline.Specification;
newPipeline.SystemNumber = pipeline.SystemNumber;
newPipeline.WorkPackageCode = pipeline.WorkPackageCode;
newPipeline.SubSystemNumber = pipeline.SubSystemNumber;
newPipeline.TestPackageCode = pipeline.TestPackageCode;
newPipeline.PipelineLength = pipeline.PipelineLength;
newPipeline.Sheet = pipeline.Sheet;
newPipeline.PipeSegment = pipeline.PipeSegment;
newPipeline.DrawingsNum = pipeline.DrawingsNum;
newPipeline.PaintingCategory = pipeline.PaintingCategory;
newPipeline.AdiabaticCategory = pipeline.AdiabaticCategory;
newPipeline.DesignPressure = pipeline.DesignPressure;
newPipeline.DesignTemperature = pipeline.DesignTemperature;
newPipeline.TestPressure = pipeline.TestPressure;
newPipeline.TestTemperature = pipeline.TestTemperature;
newPipeline.ModifierId = pipeline.ModifierId;
newPipeline.ModifyDate = pipeline.ModifyDate;
newPipeline.CreatorId = pipeline.CreatorId;
newPipeline.CreateDate = pipeline.CreateDate;
newPipeline.PenetrationRatio = pipeline.PenetrationRatio;
newPipeline.PenetrationClass = pipeline.PenetrationClass;
newPipeline.IfPickling = pipeline.IfPickling;
newPipeline.IfChasing = pipeline.IfChasing;
newPipeline.Remark = pipeline.Remark;
try
{
db.SubmitChanges(System.Data.Linq.ConflictMode.ContinueOnConflict);
}
catch (System.Data.Linq.ChangeConflictException ex)
{
foreach (System.Data.Linq.ObjectChangeConflict occ in db.ChangeConflicts)
{
// 使用Linq缓存中实体对象的值覆盖当前数据库中的值
occ.Resolve(System.Data.Linq.RefreshMode.KeepCurrentValues);
}
// 这个地方要注意Catch方法中我们前面只是指明了怎样来解决冲突这个地方还需要再次提交更新这样的话值 //才会提交到数据库。
db.SubmitChanges();
}
}
}
/// <summary>
/// 根据作业管线Id删除一个作业管线信息
/// </summary>
/// <param name="pipelineId"></param>
public static void DeletePipeline(string pipelineId)
{
Model.HJGLDB db = Funs.DB;
Model.Pipeline_Pipeline pipeline = db.Pipeline_Pipeline.FirstOrDefault(e => e.PipelineId == pipelineId);
var jot = db.Pipeline_WeldJoint.Where(e => e.PipelineId == pipelineId);
if (pipeline != null)
{
db.Pipeline_WeldJoint.DeleteAllOnSubmit(jot);
Pipeline_PipelineDetectionTypeService.DeletePipelineDetectionTypeByPipelineId(pipelineId);
db.Pipeline_Pipeline.DeleteOnSubmit(pipeline);
db.SubmitChanges();
}
}
}
}