using Microsoft.Office.Interop.Word;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace BLL
{
public static class PMI_MaterialTemplateService
{
///
/// 根据管线ID获取管线信息
///
///
///
public static Model.PMI_MaterialTemplate GetPMI_MaterialTemplateId(string MaterialId)
{
return Funs.DB.PMI_MaterialTemplate.FirstOrDefault(e => e.MaterialId == MaterialId);
}
///
/// 根据管线ID获取管线信息
///
///
///
public static Model.PMI_MaterialTemplate GetPMI_MaterialTemplateId(string LoginProjectId, string UnitId, string AreaId, string Pipeline)
{
return Funs.DB.PMI_MaterialTemplate.FirstOrDefault(e => e.UnitId == UnitId && e.AreaId == AreaId && e.Pipeline == Pipeline);
}
///
/// 添加作业管线
///
///
public static void AddPMI_MaterialTemplate(Model.PMI_MaterialTemplate pMI_MaterialTemplate)
{
Model.SGGLDB db = Funs.DB;
Model.PMI_MaterialTemplate newpMI_MaterialTemplate = new Model.PMI_MaterialTemplate();
newpMI_MaterialTemplate.MaterialId = pMI_MaterialTemplate.MaterialId;
newpMI_MaterialTemplate.Discpline = pMI_MaterialTemplate.Discpline;
newpMI_MaterialTemplate.UnitId = pMI_MaterialTemplate.UnitId;
newpMI_MaterialTemplate.UnitIdName = pMI_MaterialTemplate.UnitIdName;
newpMI_MaterialTemplate.AreaId = pMI_MaterialTemplate.AreaId;
newpMI_MaterialTemplate.AreaIdName = pMI_MaterialTemplate.AreaIdName;
newpMI_MaterialTemplate.Pipeline = pMI_MaterialTemplate.Pipeline;
newpMI_MaterialTemplate.ItemRule = pMI_MaterialTemplate.ItemRule;
newpMI_MaterialTemplate.CommoidyCode = pMI_MaterialTemplate.CommoidyCode;
newpMI_MaterialTemplate.Size1 = pMI_MaterialTemplate.Size1;
newpMI_MaterialTemplate.Size2 = pMI_MaterialTemplate.Size2;
newpMI_MaterialTemplate.IdentCode = pMI_MaterialTemplate.IdentCode;
newpMI_MaterialTemplate.TagNumber = pMI_MaterialTemplate.TagNumber;
newpMI_MaterialTemplate.IdentName = pMI_MaterialTemplate.IdentName;
newpMI_MaterialTemplate.ShortDescription = pMI_MaterialTemplate.ShortDescription;
newpMI_MaterialTemplate.Quantity = pMI_MaterialTemplate.Quantity;
newpMI_MaterialTemplate.UnitNum = pMI_MaterialTemplate.UnitNum;
newpMI_MaterialTemplate.PipeRun = pMI_MaterialTemplate.PipeRun;
newpMI_MaterialTemplate.Category = pMI_MaterialTemplate.Category;
newpMI_MaterialTemplate.Material = pMI_MaterialTemplate.Material;
newpMI_MaterialTemplate.Spec = pMI_MaterialTemplate.Spec;
newpMI_MaterialTemplate.NominalDiameter = pMI_MaterialTemplate.NominalDiameter;
newpMI_MaterialTemplate.THK = pMI_MaterialTemplate.THK;
newpMI_MaterialTemplate.Painting = pMI_MaterialTemplate.Painting;
newpMI_MaterialTemplate.WeightNum = pMI_MaterialTemplate.WeightNum;
newpMI_MaterialTemplate.WeightUnit = pMI_MaterialTemplate.WeightUnit;
newpMI_MaterialTemplate.Remark = pMI_MaterialTemplate.Remark;
newpMI_MaterialTemplate.ProjectId = pMI_MaterialTemplate.ProjectId;
newpMI_MaterialTemplate.CreateTime = pMI_MaterialTemplate.CreateTime;
//总量--QuantitySum
newpMI_MaterialTemplate.QuantitySum = pMI_MaterialTemplate.QuantitySum;
//热处理状态--HotState
newpMI_MaterialTemplate.HotState = pMI_MaterialTemplate.HotState;
//质量文书编号--QuantityFileNum
newpMI_MaterialTemplate.QuantityFileNum = pMI_MaterialTemplate.QuantityFileNum;
//验收标准--AcceptanceCriteria
newpMI_MaterialTemplate.AcceptanceCriteria = pMI_MaterialTemplate.AcceptanceCriteria; ;
//炉批号--BatchNumber
newpMI_MaterialTemplate.BatchNumber = pMI_MaterialTemplate.BatchNumber;
db.PMI_MaterialTemplate.InsertOnSubmit(newpMI_MaterialTemplate);
db.SubmitChanges();
}
///
/// 修改作业管线
///
///
public static void UpdatePMI_MaterialTemplate(Model.PMI_MaterialTemplate pMI_MaterialTemplate)
{
Model.SGGLDB db = Funs.DB;
Model.PMI_MaterialTemplate newPipeline = db.PMI_MaterialTemplate.FirstOrDefault(e => e.MaterialId == pMI_MaterialTemplate.MaterialId);
if (newPipeline != null)
{
newPipeline.MaterialId = pMI_MaterialTemplate.MaterialId;
newPipeline.Discpline = pMI_MaterialTemplate.Discpline;
newPipeline.UnitId = pMI_MaterialTemplate.UnitId;
newPipeline.UnitIdName = pMI_MaterialTemplate.UnitIdName;
newPipeline.AreaId = pMI_MaterialTemplate.AreaId;
newPipeline.AreaIdName = pMI_MaterialTemplate.AreaIdName;
newPipeline.Pipeline = pMI_MaterialTemplate.Pipeline;
newPipeline.ItemRule = pMI_MaterialTemplate.ItemRule;
newPipeline.CommoidyCode = pMI_MaterialTemplate.CommoidyCode;
newPipeline.Size1 = pMI_MaterialTemplate.Size1;
newPipeline.Size2 = pMI_MaterialTemplate.Size2;
newPipeline.IdentCode = pMI_MaterialTemplate.IdentCode;
newPipeline.TagNumber = pMI_MaterialTemplate.TagNumber;
newPipeline.IdentName = pMI_MaterialTemplate.IdentName;
newPipeline.ShortDescription = pMI_MaterialTemplate.ShortDescription;
newPipeline.Quantity = pMI_MaterialTemplate.Quantity;
newPipeline.UnitNum = pMI_MaterialTemplate.UnitNum;
newPipeline.PipeRun = pMI_MaterialTemplate.PipeRun;
newPipeline.Category = pMI_MaterialTemplate.Category;
newPipeline.Material = pMI_MaterialTemplate.Material;
newPipeline.Spec = pMI_MaterialTemplate.Spec;
newPipeline.NominalDiameter = pMI_MaterialTemplate.NominalDiameter;
newPipeline.THK = pMI_MaterialTemplate.THK;
newPipeline.Painting = pMI_MaterialTemplate.Painting;
newPipeline.WeightNum = pMI_MaterialTemplate.WeightNum;
newPipeline.WeightUnit = pMI_MaterialTemplate.WeightUnit;
newPipeline.Remark = pMI_MaterialTemplate.Remark;
newPipeline.ProjectId = pMI_MaterialTemplate.ProjectId;
//newPipeline.CreateTime = pMI_MaterialTemplate.CreateTime;
//总量--QuantitySum
newPipeline.QuantitySum = pMI_MaterialTemplate.QuantitySum;
//热处理状态--HotState
newPipeline.HotState = pMI_MaterialTemplate.HotState;
//质量文书编号--QuantityFileNum
newPipeline.QuantityFileNum = pMI_MaterialTemplate.QuantityFileNum;
//验收标准--AcceptanceCriteria
newPipeline.AcceptanceCriteria = pMI_MaterialTemplate.AcceptanceCriteria; ;
//炉批号--BatchNumber
newPipeline.BatchNumber = pMI_MaterialTemplate.BatchNumber;
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();
}
}
}
///
/// 根据作业管线Id删除一个作业管线信息
///
///
public static void DeletePMI_MaterialTemplate(string MaterialId)
{
Model.SGGLDB db = Funs.DB;
Model.PMI_MaterialTemplate pipeline = db.PMI_MaterialTemplate.FirstOrDefault(e => e.MaterialId == MaterialId);
var jot = db.PMI_MaterialTemplate.Where(e => e.MaterialId == MaterialId);
if (pipeline != null)
{
db.PMI_MaterialTemplate.DeleteOnSubmit(pipeline);
db.SubmitChanges();
}
}
public static List GetPMI_MaterialTemplateAddItem(string hdItemsString)
{
List returnViewMatch = new List(); //= getWeldReportItem;
if (!string.IsNullOrEmpty(hdItemsString))
{
List jotIds = Funs.GetStrListByStr(hdItemsString, '|');
returnViewMatch = (from x in Funs.DB.PMI_MaterialTemplate
where jotIds.Contains(x.MaterialId)
select x).ToList();
}
return returnViewMatch;
}
}
}