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

331 lines
15 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.PIPClassId = pipeline.PIPClassId;
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.DetectionRateId = pipeline.DetectionRateId;
newPipeline.QueClass = pipeline.QueClass;
newPipeline.ExecStandard = pipeline.ExecStandard;
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.PIPClassId = pipeline.PIPClassId;
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.DetectionRateId = pipeline.DetectionRateId;
newPipeline.QueClass = pipeline.QueClass;
newPipeline.ExecStandard = pipeline.ExecStandard;
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>
/// 修改部分管线信息
/// </summary>
/// <param name="pipeline"></param>
public static void UpdateDepartPipeline(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.PIPClassId = pipeline.PIPClassId;
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.DetectionRateId = pipeline.DetectionRateId;
newPipeline.QueClass = pipeline.QueClass;
newPipeline.ExecStandard = pipeline.ExecStandard;
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>
/// 更新管线产生的RT随机数
/// </summary>
/// <param name="pipeline"></param>
public static void UpdatePipelineRTRandom(string pipelineId, string randomNum)
{
Model.HJGLDB db = Funs.DB;
Model.Pipeline_Pipeline newPipeline = db.Pipeline_Pipeline.FirstOrDefault(e => e.PipelineId == pipelineId);
if (newPipeline != null)
{
newPipeline.RandomNum = randomNum;
db.SubmitChanges();
}
}
/// <summary>
/// 更新管线产生的PT随机数
/// </summary>
/// <param name="pipeline"></param>
public static void UpdatePipelinePTRandom(string pipelineId, string randomNum)
{
Model.HJGLDB db = Funs.DB;
Model.Pipeline_Pipeline newPipeline = db.Pipeline_Pipeline.FirstOrDefault(e => e.PipelineId == pipelineId);
if (newPipeline != null)
{
newPipeline.PTRandomNum = randomNum;
db.SubmitChanges();
}
}
/// <summary>
/// 更新管线产生的固定口随机数
/// </summary>
/// <param name="pipeline"></param>
public static void UpdatePipelineGDRandom(string pipelineId, string randomNum)
{
Model.HJGLDB db = Funs.DB;
Model.Pipeline_Pipeline newPipeline = db.Pipeline_Pipeline.FirstOrDefault(e => e.PipelineId == pipelineId);
if (newPipeline != null)
{
newPipeline.GDRandomNum = randomNum;
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();
}
}
/// <summary>
/// 根据工区获取管线信息
/// </summary>
/// <param name="workAreaId"></param>
/// <returns></returns>
public static List<Model.Pipeline_Pipeline> GetPipelineList(string workAreaId)
{
var list = (from x in Funs.DB.Pipeline_Pipeline
where x.WorkAreaId == workAreaId
orderby x.PipelineCode
select x).ToList();
return list;
}
/// <summary>
/// 根据工区获取管线下拉列表
/// </summary>
/// <param name="dropName"></param>
/// <param name="workAreaId"></param>
public static void InitPipelineDropDownList(FineUIPro.DropDownList dropName,string workAreaId)
{
dropName.DataValueField = "PipelineId";
dropName.DataTextField = "PipelineCode";
dropName.DataSource = GetPipelineList(workAreaId);
dropName.DataBind();
}
}
}