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; } } }