331 lines
15 KiB
C#
331 lines
15 KiB
C#
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();
|
||
}
|
||
}
|
||
}
|