956 lines
		
	
	
		
			44 KiB
		
	
	
	
		
			C#
		
	
	
	
		
		
			
		
	
	
			956 lines
		
	
	
		
			44 KiB
		
	
	
	
		
			C#
		
	
	
	
|  | using System; | |||
|  | using System.Collections.Generic; | |||
|  | using System.Linq; | |||
|  | using System.Text; | |||
|  | using System.Threading.Tasks; | |||
|  | 
 | |||
|  | namespace BLL | |||
|  | { | |||
|  |     public static class APINDETrustService | |||
|  |     { | |||
|  |         #region 选择单位工程、探伤类型、探伤比例、点口批号获取需要进行点口的批 | |||
|  |         /// <summary> | |||
|  |         /// 选择单位工程、探伤类型、探伤比例、点口批号获取还未点口的批 | |||
|  |         /// </summary> | |||
|  |         /// <param name="unitWorkId"></param> | |||
|  |         /// <param name="detectionTypeId"></param> | |||
|  |         /// <param name="detectionRateId"></param> | |||
|  |         /// <param name="pointBatchCode"></param> | |||
|  |         /// <returns></returns> | |||
|  |         public static List<Model.NDETrustItem> getAutoPointBatchCode(string unitWorkId,string detectionTypeId,string detectionRateId, string pointBatchCode) | |||
|  |         { | |||
|  |             using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) | |||
|  |             { | |||
|  |                 var dataList = from x in db.HJGL_Batch_PointBatch | |||
|  |                                where x.UnitWorkId == unitWorkId && x.EndDate == null | |||
|  |                                select x; | |||
|  | 
 | |||
|  |                 if (!string.IsNullOrEmpty(detectionTypeId)) | |||
|  |                 { | |||
|  |                     dataList = dataList.Where(e => e.DetectionTypeId == detectionTypeId); | |||
|  |                 } | |||
|  |                 if (!string.IsNullOrEmpty(detectionRateId)) | |||
|  |                 { | |||
|  |                     dataList = dataList.Where(e => e.DetectionRateId == detectionRateId); | |||
|  |                 } | |||
|  |                 if (!string.IsNullOrEmpty(pointBatchCode)) | |||
|  |                 { | |||
|  |                     dataList = dataList.Where(e => e.PointBatchCode.Contains(pointBatchCode)); | |||
|  |                 } | |||
|  | 
 | |||
|  |                 var getDataLists = (from x in dataList | |||
|  |                                     orderby x.PointBatchCode | |||
|  |                                     select new Model.NDETrustItem | |||
|  |                                     { | |||
|  |                                         PointBatchId = x.PointBatchId, | |||
|  |                                         PointBatchCode = x.PointBatchCode, | |||
|  |                                     }).ToList(); | |||
|  |                 return getDataLists; | |||
|  |             } | |||
|  |         } | |||
|  |         #endregion | |||
|  | 
 | |||
|  |         #region 根据单位工程、点口批号、批开始时间获取需要调整的批(已点口但还未进行委托的批列表) | |||
|  |         /// <summary> | |||
|  |         /// 根据单位工程、点口批号、批开始时间获取需要调整的批(已点口但还未进行委托的批列表) | |||
|  |         /// </summary> | |||
|  |         /// <param name="unitWorkId"></param> | |||
|  |         /// <param name="pointBatchCode"></param> | |||
|  |         /// <param name="startDate"></param> | |||
|  |         /// <returns></returns> | |||
|  |         public static List<Model.NDETrustItem> getPointBatchCode(string unitWorkId, string detectionTypeId, string detectionRateId, string pointBatchCode) | |||
|  |         { | |||
|  |             using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) | |||
|  |             { | |||
|  |                 var dataList = from x in db.HJGL_Batch_PointBatch | |||
|  |                                join y in db.HJGL_Batch_PointBatchItem on x.PointBatchId equals y.PointBatchId | |||
|  |                                where x.UnitWorkId == unitWorkId && y.IsBuildTrust == null && x.EndDate.HasValue | |||
|  |                                select x; | |||
|  | 
 | |||
|  |                 if (!string.IsNullOrEmpty(detectionTypeId)) | |||
|  |                 { | |||
|  |                     dataList = dataList.Where(e => e.DetectionTypeId == detectionTypeId); | |||
|  |                 } | |||
|  |                 if (!string.IsNullOrEmpty(detectionRateId)) | |||
|  |                 { | |||
|  |                     dataList = dataList.Where(e => e.DetectionRateId == detectionRateId); | |||
|  |                 } | |||
|  |                 if (!string.IsNullOrEmpty(pointBatchCode)) | |||
|  |                 { | |||
|  |                     dataList = dataList.Where(e => e.PointBatchCode.Contains(pointBatchCode)); | |||
|  |                 } | |||
|  | 
 | |||
|  |                 var getDataLists = (from x in dataList | |||
|  |                                     orderby x.PointBatchCode | |||
|  |                                     select new Model.NDETrustItem | |||
|  |                                     { | |||
|  |                                         PointBatchId = x.PointBatchId, | |||
|  |                                         PointBatchCode = x.PointBatchCode, | |||
|  |                                     }).Distinct().ToList(); | |||
|  |                 return getDataLists; | |||
|  |             } | |||
|  |         } | |||
|  |         #endregion | |||
|  | 
 | |||
|  |         #region 根据点口批ID获取批明细(自动点口呈现) | |||
|  |         /// <summary> | |||
|  |         /// 根据点口批ID获取批明细(自动点口呈现) | |||
|  |         /// </summary> | |||
|  |         /// <param name="pointBatchCode"></param> | |||
|  |         /// <param name="startDate"></param> | |||
|  |         /// <returns></returns> | |||
|  |         public static List<Model.NDETrustItem> getPointBatchDetail(string pointBatchId) | |||
|  |         { | |||
|  |             using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) | |||
|  |             { | |||
|  |                 var getDataLists = (from x in db.HJGL_Batch_PointBatchItem | |||
|  |                                     join y in db.HJGL_WeldJoint on x.WeldJointId equals y.WeldJointId | |||
|  |                                     where x.PointBatchId == pointBatchId | |||
|  |                                     select new Model.NDETrustItem | |||
|  |                                     { | |||
|  |                                         WeldJointId = x.WeldJointId, | |||
|  |                                         WeldJointCode = y.WeldJointCode, | |||
|  |                                         PipelineCode = y.PipelineCode, | |||
|  |                                         JointArea = y.JointArea, | |||
|  |                                         AttachUrl = y.AttachUrl | |||
|  |                                     }).ToList(); | |||
|  | 
 | |||
|  |                 return getDataLists; | |||
|  |             } | |||
|  |         } | |||
|  |         #endregion | |||
|  | 
 | |||
|  |         #region 根据点口批ID获取已点口还未审批的焊口 | |||
|  |         /// <summary> | |||
|  |         /// 根据点口批ID获取已点口还未审批的焊口 | |||
|  |         /// </summary> | |||
|  |         /// <param name="pointBatchCode"></param> | |||
|  |         /// <param name="startDate"></param> | |||
|  |         /// <returns></returns> | |||
|  |         public static List<Model.NDETrustItem> getPointWeldJoint(string pointBatchId) | |||
|  |         { | |||
|  |             using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) | |||
|  |             { | |||
|  |                 var getDataLists = (from x in db.HJGL_Batch_PointBatchItem | |||
|  |                                     join y in db.HJGL_WeldJoint on x.WeldJointId equals y.WeldJointId | |||
|  |                                     where x.IsBuildTrust == null && x.PointBatchId == pointBatchId && x.PointState == "1" | |||
|  |                                     select new Model.NDETrustItem | |||
|  |                                     { | |||
|  |                                         WeldJointId = x.WeldJointId, | |||
|  |                                         WeldJointCode = y.WeldJointCode, | |||
|  |                                         PipelineCode = y.PipelineCode, | |||
|  |                                         JointArea = y.JointArea, | |||
|  |                                         AttachUrl = y.AttachUrl | |||
|  |                                     }).ToList(); | |||
|  | 
 | |||
|  |                 return getDataLists; | |||
|  |             } | |||
|  |         } | |||
|  |         #endregion | |||
|  | 
 | |||
|  |         #region 根据点口批ID和焊口ID获取待调整焊口 | |||
|  |         /// <summary> | |||
|  |         /// 根据点口批ID和焊口ID获取待调整焊口 | |||
|  |         /// </summary> | |||
|  |         /// <param name="pointBatchCode"></param> | |||
|  |         /// <param name="startDate"></param> | |||
|  |         /// <returns></returns> | |||
|  |         public static List<Model.NDETrustItem> getPointWeldJoint(string pointBatchId, string weldJointId) | |||
|  |         { | |||
|  |             using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) | |||
|  |             { | |||
|  |                 var jot = BLL.WeldJointService.GetWeldJointByWeldJointId(weldJointId); | |||
|  | 
 | |||
|  |                 var getDataLists = (from x in Funs.DB.HJGL_Batch_PointBatchItem | |||
|  |                                     join y in Funs.DB.HJGL_WeldJoint on x.WeldJointId equals y.WeldJointId | |||
|  |                                     where x.PointBatchId == pointBatchId && x.PointState == null | |||
|  |                                           && y.JointAttribute == jot.JointAttribute | |||
|  |                                     select new Model.NDETrustItem | |||
|  |                                     { | |||
|  |                                         WeldJointId = x.WeldJointId, | |||
|  |                                         WeldJointCode = y.WeldJointCode, | |||
|  |                                         PipelineCode = y.PipelineCode, | |||
|  |                                         JointArea = y.JointArea, | |||
|  |                                         AttachUrl = y.AttachUrl | |||
|  |                                     }).ToList(); | |||
|  | 
 | |||
|  |                 return getDataLists; | |||
|  |             } | |||
|  |         } | |||
|  |         #endregion | |||
|  | 
 | |||
|  |         #region 对所选批次进行自动点口 | |||
|  |         /// <summary> | |||
|  |         /// 对所选批次进行自动点口 | |||
|  |         /// </summary> | |||
|  |         /// <param name="pointBatchId"></param> | |||
|  |         public static void AutoPointSave(string pointBatchId) | |||
|  |         { | |||
|  |             BLL.PointBatchDetailService.AutoPoint(pointBatchId); | |||
|  |         } | |||
|  |         #endregion | |||
|  | 
 | |||
|  |         #region 点口调整  | |||
|  |         /// <summary> | |||
|  |         /// 点口调整 | |||
|  |         /// </summary> | |||
|  |         /// <param name="oldJointId">原来点的焊口</param> | |||
|  |         /// <param name="newJointId">调为新的焊口</param> | |||
|  |         public static void RePointSave(string oldJointId,string newJointId) | |||
|  |         { | |||
|  |             var oldPoint = BLL.PointBatchDetailService.GetBatchDetailByJotId(oldJointId); | |||
|  |             if (oldPoint != null) | |||
|  |             { | |||
|  |                 oldPoint.PointDate = null; | |||
|  |                 oldPoint.PointState = null; | |||
|  |                 oldPoint.IsAudit = null; | |||
|  |                 oldPoint.IsPipelineFirst = null; | |||
|  |                 oldPoint.IsWelderFirst = null; | |||
|  |             } | |||
|  | 
 | |||
|  |             var newPoint = BLL.PointBatchDetailService.GetBatchDetailByJotId(newJointId); | |||
|  |             if (newPoint != null) | |||
|  |             { | |||
|  |                 newPoint.PointState = "1"; | |||
|  |                 newPoint.PointDate = DateTime.Now; | |||
|  |             } | |||
|  | 
 | |||
|  |             Funs.DB.SubmitChanges(); | |||
|  |         } | |||
|  |         #endregion | |||
|  | 
 | |||
|  |         #region 根据单位工程获取所有已点的焊口列表 | |||
|  |         /// <summary> | |||
|  |         /// 根据单位工程获取所有已点的焊口列表 | |||
|  |         /// </summary> | |||
|  |         /// <param name="unitWorkId"></param> | |||
|  |         /// <returns></returns> | |||
|  |         public static List<Model.NDETrustItem> GetPointWeldJointList(string unitWorkId) | |||
|  |         { | |||
|  |             using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) | |||
|  |             { | |||
|  |                 var getDataLists = (from x in db.HJGL_Batch_PointBatchItem | |||
|  |                                     join y in db.HJGL_WeldJoint on x.WeldJointId equals y.WeldJointId | |||
|  |                                     join z in db.HJGL_Batch_PointBatch on x.PointBatchId equals z.PointBatchId | |||
|  |                                     where x.IsBuildTrust == null && z.UnitWorkId == unitWorkId | |||
|  |                                            && x.PointState == "1" | |||
|  |                                     select new Model.NDETrustItem | |||
|  |                                     { | |||
|  |                                         WeldJointId = x.WeldJointId, | |||
|  |                                         PointBatchCode = z.PointBatchCode, | |||
|  |                                         WeldJointCode = y.WeldJointCode, | |||
|  |                                         PipelineCode = y.PipelineCode, | |||
|  |                                         AttachUrl = y.AttachUrl | |||
|  |                                     }).ToList(); | |||
|  | 
 | |||
|  |                 return getDataLists; | |||
|  |             } | |||
|  |         } | |||
|  |         #endregion | |||
|  | 
 | |||
|  |         #region 根据单位工程获取所有已点的焊口生成委托单 | |||
|  |         /// <summary> | |||
|  |         /// 根据单位工程获取所有已点的焊口生成委托单 | |||
|  |         /// </summary> | |||
|  |         /// <param name="unitWorkId"></param> | |||
|  |         public static void GenerateTrust(string unitWorkId) | |||
|  |         { | |||
|  |             using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) | |||
|  |             { | |||
|  |                 var getViewGenerateTrustLists = (from x in db.View_GenerateTrust where x.UnitWorkId == unitWorkId select x).ToList(); | |||
|  | 
 | |||
|  |                 foreach (var trust in getViewGenerateTrustLists) | |||
|  |                 { | |||
|  |                     Model.HJGL_Batch_BatchTrust newBatchTrust = new Model.HJGL_Batch_BatchTrust(); | |||
|  |                     var project = BLL.ProjectService.GetProjectByProjectId(trust.ProjectId); | |||
|  |                     var unit = BLL.UnitService.GetUnitByUnitId(trust.UnitId); | |||
|  |                     var unitWork = BLL.UnitWorkService.getUnitWorkByUnitWorkId(trust.UnitWorkId); | |||
|  |                     var ndt = BLL.Base_DetectionTypeService.GetDetectionTypeByDetectionTypeId(trust.DetectionTypeId); | |||
|  |                     var rate = BLL.Base_DetectionRateService.GetDetectionRateByDetectionRateId(trust.DetectionRateId); | |||
|  | 
 | |||
|  |                     string perfix = string.Empty; | |||
|  |                     perfix = unit.UnitCode + "-" + ndt.DetectionTypeCode + "-" + rate.DetectionRateValue.ToString() + "%-"; | |||
|  |                     newBatchTrust.TrustBatchCode = BLL.SQLHelper.RunProcNewId("SpGetNewCode5ByProjectId", "dbo.HJGL_Batch_BatchTrust", "TrustBatchCode", project.ProjectId, perfix); | |||
|  | 
 | |||
|  |                     string trustBatchId = SQLHelper.GetNewID(typeof(Model.HJGL_Batch_BatchTrust)); | |||
|  |                     newBatchTrust.TrustBatchId = trustBatchId; | |||
|  | 
 | |||
|  |                     newBatchTrust.TrustDate = DateTime.Now; | |||
|  |                     newBatchTrust.ProjectId = trust.ProjectId; | |||
|  |                     newBatchTrust.UnitId = trust.UnitId; | |||
|  |                     newBatchTrust.UnitWorkId = trust.UnitWorkId; | |||
|  |                     newBatchTrust.DetectionTypeId = trust.DetectionTypeId; | |||
|  |                     newBatchTrust.NDEUuit = unitWork.NDEUnit; | |||
|  | 
 | |||
|  |                     BLL.Batch_BatchTrustService.AddBatchTrust(newBatchTrust);  // 新增委托单 | |||
|  | 
 | |||
|  |                     // 生成委托条件对比 | |||
|  |                     var generateTrustItem = from x in db.View_GenerateTrustItem | |||
|  |                                             where x.ProjectId == trust.ProjectId | |||
|  |                                             && x.UnitWorkId == trust.UnitWorkId && x.UnitId == trust.UnitId | |||
|  |                                             && x.DetectionTypeId == trust.DetectionTypeId | |||
|  |                                             && x.DetectionRateId == trust.DetectionRateId | |||
|  |                                             select x; | |||
|  | 
 | |||
|  |                     List<string> toPointBatchList = generateTrustItem.Select(x => x.PointBatchId).Distinct().ToList(); | |||
|  | 
 | |||
|  |                     // 生成委托明细,并回写点口明细信息 | |||
|  |                     foreach (var item in generateTrustItem) | |||
|  |                     { | |||
|  |                         if (BLL.Batch_BatchTrustItemService.GetIsGenerateTrust(item.PointBatchItemId)) ////生成委托单的条件判断 | |||
|  |                         { | |||
|  |                             Model.HJGL_Batch_BatchTrustItem trustItem = new Model.HJGL_Batch_BatchTrustItem | |||
|  |                             { | |||
|  |                                 TrustBatchItemId = SQLHelper.GetNewID(typeof(Model.HJGL_Batch_BatchTrustItem)), | |||
|  |                                 TrustBatchId = trustBatchId, | |||
|  |                                 PointBatchItemId = item.PointBatchItemId, | |||
|  |                                 WeldJointId = item.WeldJointId, | |||
|  |                                 CreateDate = DateTime.Now | |||
|  |                             }; | |||
|  |                             Batch_BatchTrustItemService.AddBatchTrustItem(trustItem); | |||
|  |                         } | |||
|  | 
 | |||
|  |                         Model.HJGL_Batch_PointBatchItem pointBatchItem = db.HJGL_Batch_PointBatchItem.FirstOrDefault(e => e.PointBatchItemId == item.PointBatchItemId); | |||
|  | 
 | |||
|  |                         pointBatchItem.IsBuildTrust = true; | |||
|  |                         db.SubmitChanges(); | |||
|  |                     } | |||
|  | 
 | |||
|  | 
 | |||
|  |                     // 回写委托批对应点口信息 | |||
|  |                     if (toPointBatchList.Count() > 0) | |||
|  |                     { | |||
|  |                         string toPointBatch = String.Join(",", toPointBatchList); | |||
|  | 
 | |||
|  |                         var updateTrut = BLL.Batch_BatchTrustService.GetBatchTrustById(trustBatchId); | |||
|  |                         if (updateTrut != null) | |||
|  |                         { | |||
|  |                             updateTrut.TopointBatch = toPointBatch; | |||
|  |                             BLL.Batch_BatchTrustService.UpdateBatchTrust(updateTrut); | |||
|  |                         } | |||
|  |                     } | |||
|  | 
 | |||
|  |                 } | |||
|  |             } | |||
|  |         } | |||
|  |         #endregion | |||
|  | 
 | |||
|  |         //////////////////////////////////////委托单///////////////////////////////////////////////////////////// | |||
|  | 
 | |||
|  |         #region 选择单位工程、探伤类型、探伤比例、委托单号等获取委托单 | |||
|  |         /// <summary> | |||
|  |         /// 选择单位工程、探伤类型、探伤比例、委托单号等获取委托单 | |||
|  |         /// </summary> | |||
|  |         /// <param name="unitWorkId"></param> | |||
|  |         /// <param name="detectionTypeId"></param> | |||
|  |         /// <param name="detectionRateId"></param> | |||
|  |         /// <param name="isAudit"></param> | |||
|  |         /// <param name="pointBatchCode"></param> | |||
|  |         /// <returns></returns> | |||
|  |         public static List<Model.BaseInfoItem> getBatchTrustCode(string unitWorkId, string detectionTypeId, string detectionRateId, bool? isAudit ,string trustBatchCode) | |||
|  |         { | |||
|  |             using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) | |||
|  |             { | |||
|  |                 var dataList = from x in db.HJGL_Batch_BatchTrust | |||
|  |                                where x.UnitWorkId == unitWorkId | |||
|  |                                select x; | |||
|  | 
 | |||
|  |                 if (!string.IsNullOrEmpty(detectionTypeId)) | |||
|  |                 { | |||
|  |                     dataList = dataList.Where(e => e.DetectionTypeId == detectionTypeId); | |||
|  |                 } | |||
|  |                 if (!string.IsNullOrEmpty(detectionRateId)) | |||
|  |                 { | |||
|  |                     dataList = dataList.Where(e => e.DetectionRateId == detectionRateId); | |||
|  |                 } | |||
|  | 
 | |||
|  |                 if (isAudit == true) | |||
|  |                 { | |||
|  |                     dataList = dataList.Where(e => e.IsAudit == true); | |||
|  |                 } | |||
|  |                 else | |||
|  |                 { | |||
|  |                     dataList = dataList.Where(e => e.IsAudit == null || e.IsAudit == false); | |||
|  |                 } | |||
|  | 
 | |||
|  |                 if (!string.IsNullOrEmpty(trustBatchCode)) | |||
|  |                 { | |||
|  |                     dataList = dataList.Where(e => e.TrustBatchCode.Contains(trustBatchCode)); | |||
|  |                 } | |||
|  | 
 | |||
|  |                 var getDataLists = (from x in dataList | |||
|  |                                     orderby x.TrustBatchCode | |||
|  |                                     select new Model.BaseInfoItem | |||
|  |                                     { | |||
|  |                                         BaseInfoId = x.TrustBatchId, | |||
|  |                                         BaseInfoCode = x.TrustBatchCode, | |||
|  |                                     }).ToList(); | |||
|  |                 return getDataLists; | |||
|  |             } | |||
|  |         } | |||
|  |         #endregion | |||
|  | 
 | |||
|  |         #region 选择委托单ID获取委托单明细信息 | |||
|  |         /// <summary> | |||
|  |         /// 选择委托单ID获取委托单明细信息 | |||
|  |         /// </summary> | |||
|  |         /// <param name="trustBatchId"></param> | |||
|  |         /// <returns></returns> | |||
|  |         public static List<Model.NDETrustItem> GetBatchTrustDetail(string trustBatchId) | |||
|  |         { | |||
|  |             using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) | |||
|  |             { | |||
|  |                 var getDataLists = (from x in db.HJGL_Batch_BatchTrustItem | |||
|  |                                     join y in db.HJGL_WeldJoint on x.WeldJointId equals y.WeldJointId | |||
|  |                                     where x.TrustBatchId == trustBatchId | |||
|  |                                     orderby y.WeldJointCode | |||
|  |                                     select new Model.NDETrustItem | |||
|  |                                     { | |||
|  |                                         WeldJointCode = y.WeldJointCode, | |||
|  |                                         PipelineCode = y.PipelineCode, | |||
|  |                                         JointArea = y.JointArea, | |||
|  |                                     }).ToList(); | |||
|  | 
 | |||
|  |                 return getDataLists; | |||
|  |             } | |||
|  |         } | |||
|  |         #endregion | |||
|  | 
 | |||
|  |         #region 对所选委托单进行审核 | |||
|  |         /// <summary> | |||
|  |         /// 对所选委托单进行审核 | |||
|  |         /// </summary> | |||
|  |         /// <param name="trustBatchId"></param> | |||
|  |         public static void BatchTrustAudit(string trustBatchId) | |||
|  |         { | |||
|  |             BLL.Batch_BatchTrustService.UpdateBatchTrustAudit(trustBatchId, true); | |||
|  |         } | |||
|  |         #endregion | |||
|  | 
 | |||
|  |         ///////////////////////////////////////无损检测单//////////////////////////////////////////// | |||
|  |         #region 无损检测单 | |||
|  |         /// <summary> | |||
|  |         /// 选择单位工程、探伤类型、检测单号获取检测单 | |||
|  |         /// </summary> | |||
|  |         /// <param name="unitWorkId"></param> | |||
|  |         /// <param name="detectionTypeId"></param> | |||
|  |         /// <param name="ndeCode"></param> | |||
|  |         /// <returns></returns> | |||
|  |         public static List<Model.BaseInfoItem> getBatchNdeCode(string unitWorkId, string detectionTypeId, string ndeCode) | |||
|  |         { | |||
|  |             using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) | |||
|  |             { | |||
|  |                 var dataList = from x in db.HJGL_Batch_NDE | |||
|  |                                join y in db.HJGL_Batch_BatchTrust on x.TrustBatchId equals y.TrustBatchId | |||
|  |                                where x.UnitWorkId == unitWorkId | |||
|  |                                select new Model.BaseInfoItem | |||
|  |                                { | |||
|  |                                    BaseInfoId = x.NDEID, | |||
|  |                                    BaseInfoCode = x.NDECode, | |||
|  |                                    BaseInfoName = y.DetectionTypeId | |||
|  |                                }; | |||
|  | 
 | |||
|  |                 if (!string.IsNullOrEmpty(detectionTypeId)) | |||
|  |                 { | |||
|  |                     dataList = dataList.Where(e => e.BaseInfoName == detectionTypeId); | |||
|  |                 } | |||
|  | 
 | |||
|  |                 if (!string.IsNullOrEmpty(ndeCode)) | |||
|  |                 { | |||
|  |                     dataList = dataList.Where(e => e.BaseInfoCode.Contains(ndeCode)); | |||
|  |                 } | |||
|  | 
 | |||
|  |                 var getDataLists = (from x in dataList | |||
|  |                                     orderby x.BaseInfoCode | |||
|  |                                     select new Model.BaseInfoItem | |||
|  |                                     { | |||
|  |                                         BaseInfoId = x.BaseInfoId, | |||
|  |                                         BaseInfoCode = x.BaseInfoCode, | |||
|  |                                     }).ToList(); | |||
|  |                 return getDataLists; | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// 根据检测单ID获取检测单明细 | |||
|  |         /// </summary> | |||
|  |         /// <param name="ndeId"></param> | |||
|  |         /// <returns></returns> | |||
|  |         public static List<Model.NDETrustItem> GetBatchNDEDetail(string ndeId) | |||
|  |         { | |||
|  |             using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) | |||
|  |             { | |||
|  |                 var getDataLists = (from x in db.HJGL_Batch_NDEItem | |||
|  |                                     join y in db.HJGL_Batch_BatchTrustItem on x.TrustBatchItemId equals y.TrustBatchItemId | |||
|  |                                     join z in db.HJGL_WeldJoint on y.WeldJointId equals z.WeldJointId | |||
|  |                                     where x.NDEID == ndeId | |||
|  |                                     orderby z.WeldJointCode | |||
|  |                                     select new Model.NDETrustItem | |||
|  |                                     { | |||
|  |                                         WeldJointCode = z.WeldJointCode, | |||
|  |                                         PipelineCode = z.PipelineCode, | |||
|  |                                         JointArea = z.JointArea, | |||
|  |                                         CheckResult = x.CheckResult == "1" ? "合格" : "不合格" | |||
|  |                                     }).ToList(); | |||
|  | 
 | |||
|  |                 return getDataLists; | |||
|  |             } | |||
|  |         } | |||
|  |         #endregion | |||
|  | 
 | |||
|  |         //////////////////////////////////////返修/扩透///////////////////////////////////// | |||
|  | 
 | |||
|  |         #region 返修/扩透 | |||
|  |         /// <summary> | |||
|  |         /// 获取返修单列表 | |||
|  |         /// </summary> | |||
|  |         /// <param name="unitWorkId"></param> | |||
|  |         /// <param name="isAudit"></param> | |||
|  |         /// <param name="repairRecordId"></param> | |||
|  |         /// <returns></returns> | |||
|  |         public static List<Model.BaseInfoItem> GetRepairRecord(string unitWorkId, bool isAudit, string repairRecordCode) | |||
|  |         { | |||
|  |             using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) | |||
|  |             { | |||
|  |                 var repair = (from x in db.HJGL_RepairRecord | |||
|  |                               where x.UnitWorkId == unitWorkId | |||
|  |                               orderby x.RepairRecordCode descending | |||
|  |                               select x).ToList(); | |||
|  |                 if (isAudit) | |||
|  |                 { | |||
|  |                     repair = (from x in repair where x.AuditDate.HasValue select x).ToList(); | |||
|  |                 } | |||
|  |                 else | |||
|  |                 { | |||
|  |                     repair = (from x in repair where !x.AuditDate.HasValue select x).ToList(); | |||
|  |                 } | |||
|  | 
 | |||
|  |                 if (!string.IsNullOrEmpty(repairRecordCode)) | |||
|  |                 { | |||
|  |                     repair = (from x in repair where x.RepairRecordCode.Contains(repairRecordCode) select x).ToList(); | |||
|  |                 } | |||
|  | 
 | |||
|  |                 var getDataLists = (from x in repair | |||
|  |                                     select new Model.BaseInfoItem | |||
|  |                                     { | |||
|  |                                         BaseInfoId = x.RepairRecordId, | |||
|  |                                         BaseInfoCode = x.RepairRecordCode | |||
|  |                                     }).ToList(); | |||
|  |                 return getDataLists; | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// 获取返修单信息 | |||
|  |         /// </summary> | |||
|  |         /// <param name="repairRecordId"></param> | |||
|  |         /// <returns></returns> | |||
|  |         public static Model.WeldJointItem GetRepairInfoByRepairRecordId(string repairRecordId) | |||
|  |         { | |||
|  |             using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) | |||
|  |             { | |||
|  |                 var getDataLists = (from x in db.HJGL_RepairRecord | |||
|  |                                     join y in db.HJGL_WeldJoint on x.WeldJointId equals y.WeldJointId | |||
|  |                                     join z in db.SitePerson_Person on y.BackingWelderId equals z.PersonId | |||
|  |                                     where x.RepairRecordId == repairRecordId | |||
|  |                                     select new Model.WeldJointItem | |||
|  |                                     { | |||
|  |                                         PipelineCode = y.PipelineCode, | |||
|  |                                         WeldJointCode = y.WeldJointCode, | |||
|  |                                         BackingWelderCode = z.WelderCode, | |||
|  |                                         BackingWelderId = y.BackingWelderId | |||
|  |                                     }).FirstOrDefault(); | |||
|  |                 return getDataLists; | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// 根据条件获取可选取扩透口的批明细 | |||
|  |         /// </summary> | |||
|  |         /// <param name="repairRecordId"></param> | |||
|  |         /// <param name="welder">同焊工</param> | |||
|  |         /// <param name="pipeLine">同管线</param> | |||
|  |         /// <param name="daily">同一天</param> | |||
|  |         /// <param name="repairBefore">返修前所焊</param> | |||
|  |         /// <param name="mat">同材质</param> | |||
|  |         /// <param name="spec">同规格</param> | |||
|  |         /// <returns></returns> | |||
|  |         public static List<Model.NDETrustItem> GetRepairExpDetail(string repairRecordId, bool welder, bool pipeLine, bool daily, bool repairBefore, bool mat, bool spec) | |||
|  |         { | |||
|  |             using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) | |||
|  |             { | |||
|  |                 var record = BLL.RepairRecordService.GetRepairRecordById(repairRecordId); | |||
|  |                 var jot = BLL.WeldJointService.GetViewWeldJointById(record.WeldJointId); | |||
|  |                 var day = BLL.WeldingDailyService.GetPipeline_WeldingDailyByWeldingDailyId(jot.WeldingDailyId); | |||
|  | 
 | |||
|  |                 var repairExp = from x in db.HJGL_Batch_PointBatchItem | |||
|  |                                 join z in db.HJGL_Batch_PointBatch on x.PointBatchId equals z.PointBatchId | |||
|  |                                 join y in db.HJGL_WeldJoint on x.WeldJointId equals y.WeldJointId | |||
|  |                                 join d in db.HJGL_WeldingDaily on y.WeldingDailyId equals d.WeldingDailyId | |||
|  |                                 where z.DetectionTypeId == record.DetectionTypeId | |||
|  |                                  && !x.PointDate.HasValue || (x.PointDate.HasValue && x.RepairRecordId == repairRecordId) | |||
|  |                                 select new | |||
|  |                                 { | |||
|  |                                     x.PointBatchItemId, | |||
|  |                                     x.PointState, | |||
|  |                                     y.WeldJointCode, | |||
|  |                                     y.PipelineId, | |||
|  |                                     y.PipelineCode, | |||
|  |                                     y.JointArea, | |||
|  |                                     y.BackingWelderId, | |||
|  |                                     y.Material1Id, | |||
|  |                                     y.Specification, | |||
|  |                                     d.WeldingDate | |||
|  |                                 }; | |||
|  | 
 | |||
|  |                 if (welder) | |||
|  |                 { | |||
|  |                     repairExp = repairExp.Where(x => x.BackingWelderId == jot.BackingWelderId); | |||
|  |                 } | |||
|  |                 if (pipeLine) | |||
|  |                 { | |||
|  |                     repairExp = repairExp.Where(x => x.PipelineId == jot.PipelineId); | |||
|  |                 } | |||
|  |                 if (daily) | |||
|  |                 { | |||
|  |                     repairExp = repairExp.Where(x => x.WeldingDate == day.WeldingDate); | |||
|  |                 } | |||
|  |                 if (repairBefore) | |||
|  |                 { | |||
|  |                     repairExp = repairExp.Where(x => x.WeldingDate <= day.WeldingDate); | |||
|  |                 } | |||
|  |                 if (mat) | |||
|  |                 { | |||
|  |                     repairExp = repairExp.Where(x => x.Material1Id == jot.Material1Id); | |||
|  |                 } | |||
|  |                 if (spec) | |||
|  |                 { | |||
|  |                     repairExp = repairExp.Where(x => x.Specification == jot.Specification); | |||
|  |                 } | |||
|  | 
 | |||
|  |                 var getDataLists = (from x in repairExp | |||
|  |                                     select new Model.NDETrustItem | |||
|  |                                     { | |||
|  |                                         PointBatchItemId = x.PointBatchItemId, | |||
|  |                                         PointState=x.PointState, | |||
|  |                                         WeldJointCode = x.WeldJointCode, | |||
|  |                                         PipelineCode = x.PipelineCode, | |||
|  |                                         JointArea = x.JointArea | |||
|  |                                     }).ToList(); | |||
|  |                 return getDataLists; | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// 保存返修/扩透口信息 | |||
|  |         /// </summary> | |||
|  |         /// <param name="repairRecordId">返修ID</param> | |||
|  |         /// <param name="expandId">扩透口ID(多个用“,”号隔开)</param> | |||
|  |         /// <param name="repairWelder">返修焊工</param> | |||
|  |         /// <param name="repairDate">返修日期</param> | |||
|  |         /// <param name="isCut">是否切除</param> | |||
|  |         public static void GetRepairExpSaveInfo(string repairRecordId, string expandId, string repairWelder, string repairDate, bool isCut) | |||
|  |         { | |||
|  |             using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) | |||
|  |             { | |||
|  |                 Model.HJGL_RepairRecord repairRecord = BLL.RepairRecordService.GetRepairRecordById(repairRecordId); | |||
|  |                 // 更新返修记录 | |||
|  |                 var repair = db.HJGL_RepairRecord.FirstOrDefault(x => x.RepairRecordId == repairRecordId); | |||
|  |                 if (repair != null) | |||
|  |                 { | |||
|  |                     repair.RepairWelder = repairWelder; | |||
|  |                     repair.RepairDate = Convert.ToDateTime(repairDate); | |||
|  |                     if (isCut) | |||
|  |                     { | |||
|  |                         repair.IsCut = true; | |||
|  |                     } | |||
|  |                 } | |||
|  | 
 | |||
|  |                 // 更新返修口 | |||
|  |                 var batchItem = db.HJGL_Batch_PointBatchItem.FirstOrDefault(x => x.WeldJointId == repairRecord.WeldJointId); | |||
|  |                 if (batchItem != null) | |||
|  |                 { | |||
|  |                     batchItem.RepairDate = Convert.ToDateTime(repairDate); | |||
|  |                     if (isCut) | |||
|  |                     { | |||
|  |                         batchItem.CutDate = DateTime.Now.Date; | |||
|  |                     } | |||
|  |                 } | |||
|  |                 db.SubmitChanges(); | |||
|  | 
 | |||
|  |                 var exp = BLL.RepairRecordService.GetExportItem(repairRecordId); | |||
|  |                 if (exp != null) | |||
|  |                 { | |||
|  |                     foreach (Model.HJGL_Batch_PointBatchItem item in exp) | |||
|  |                     { | |||
|  |                         Model.HJGL_Batch_PointBatchItem newPointBatchItem = db.HJGL_Batch_PointBatchItem.FirstOrDefault(x => x.PointBatchItemId == item.PointBatchItemId); | |||
|  |                         newPointBatchItem.PointState = null; | |||
|  |                         newPointBatchItem.PointDate = null; | |||
|  |                         newPointBatchItem.RepairRecordId = null; | |||
|  |                         db.SubmitChanges(); | |||
|  |                     } | |||
|  |                 } | |||
|  |                 // 更新扩透口 | |||
|  |                 string[] checkedRow = expandId.Split(','); | |||
|  |                 if (checkedRow.Count() > 0) | |||
|  |                 { | |||
|  |                     foreach (string item in checkedRow) | |||
|  |                     { | |||
|  |                         Model.HJGL_Batch_PointBatchItem newPointBatchItem = db.HJGL_Batch_PointBatchItem.FirstOrDefault(x => x.PointBatchItemId == item); | |||
|  |                         if (newPointBatchItem != null) | |||
|  |                         { | |||
|  |                             newPointBatchItem.PointState = "2"; | |||
|  |                             newPointBatchItem.PointDate = DateTime.Now; | |||
|  |                             newPointBatchItem.RepairRecordId = repairRecordId; | |||
|  |                             db.SubmitChanges(); | |||
|  |                         } | |||
|  |                     } | |||
|  |                 } | |||
|  |             } | |||
|  |         } | |||
|  |         #endregion | |||
|  | 
 | |||
|  |         #region 返修单审核 | |||
|  |         /// <summary> | |||
|  |         /// 返修单审核 | |||
|  |         /// </summary> | |||
|  |         /// <param name="repairRecordId"></param> | |||
|  |         public static void RepairAudit(string repairRecordId) | |||
|  |         { | |||
|  |             using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) | |||
|  |             { | |||
|  |                 // 更新返修记录 | |||
|  |                 var repair = db.HJGL_RepairRecord.FirstOrDefault(x => x.RepairRecordId == repairRecordId); | |||
|  |                 if (!repair.AuditDate.HasValue) | |||
|  |                 { | |||
|  |                     repair.AuditDate = DateTime.Now; | |||
|  |                     db.SubmitChanges(); | |||
|  |                 } | |||
|  |             } | |||
|  |         } | |||
|  |         #endregion | |||
|  | 
 | |||
|  |         #region 生成返修委托单 | |||
|  |         /// <summary> | |||
|  |         /// 生成返修委托单 | |||
|  |         /// </summary> | |||
|  |         /// <param name="repairRecordId"></param> | |||
|  |         /// <returns></returns> | |||
|  |         public static string GenerateRepairTrust(string repairRecordId) | |||
|  |         { | |||
|  |             using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) | |||
|  |             { | |||
|  |                 string submitStr = string.Empty; | |||
|  |                 Model.HJGL_RepairRecord repairRecord = BLL.RepairRecordService.GetRepairRecordById(repairRecordId); | |||
|  |                 var trustItem = from x in Funs.DB.HJGL_Batch_BatchTrustItem where x.RepairRecordId == repairRecordId select x; | |||
|  |                 if (trustItem.Count() == 0) | |||
|  |                 { | |||
|  |                     if (!string.IsNullOrEmpty(repairRecordId) && repairRecord.AuditDate.HasValue) | |||
|  |                     { | |||
|  |                         // 返修委托 | |||
|  |                         Model.HJGL_Batch_BatchTrust newRepairTrust = new Model.HJGL_Batch_BatchTrust(); | |||
|  |                         string trustBatchId = SQLHelper.GetNewID(typeof(Model.HJGL_Batch_BatchTrust)); | |||
|  |                         newRepairTrust.TrustBatchId = trustBatchId; | |||
|  |                         newRepairTrust.TrustBatchCode = repairRecord.RepairRecordCode; | |||
|  |                         newRepairTrust.TrustDate = DateTime.Now; | |||
|  |                         newRepairTrust.ProjectId = repairRecord.ProjectId; | |||
|  |                         newRepairTrust.UnitId = repairRecord.UnitId; | |||
|  |                         newRepairTrust.UnitWorkId = repairRecord.UnitWorkId; | |||
|  |                         newRepairTrust.DetectionTypeId = repairRecord.DetectionTypeId; | |||
|  | 
 | |||
|  |                         BLL.Batch_BatchTrustService.AddBatchTrust(newRepairTrust);  // 新增返修委托单 | |||
|  | 
 | |||
|  |                         Model.HJGL_Batch_BatchTrustItem newRepairTrustItem = new Model.HJGL_Batch_BatchTrustItem(); | |||
|  |                         newRepairTrustItem.TrustBatchItemId = SQLHelper.GetNewID(typeof(Model.HJGL_Batch_BatchTrustItem)); | |||
|  |                         newRepairTrustItem.TrustBatchId = trustBatchId; | |||
|  |                         newRepairTrustItem.RepairRecordId = repairRecordId; | |||
|  |                         newRepairTrustItem.WeldJointId = repairRecord.WeldJointId; | |||
|  |                         newRepairTrustItem.CreateDate = DateTime.Now; | |||
|  |                         Batch_BatchTrustItemService.AddBatchTrustItem(newRepairTrustItem); | |||
|  | 
 | |||
|  |                         // 扩透委托 | |||
|  |                         var exp = BLL.RepairRecordService.GetExportItem(repairRecordId); | |||
|  |                         if (exp != null) | |||
|  |                         { | |||
|  |                             foreach (var q in exp) | |||
|  |                             { | |||
|  |                                 Model.HJGL_Batch_BatchTrustItem newExportTrustItem = new Model.HJGL_Batch_BatchTrustItem(); | |||
|  |                                 newExportTrustItem.TrustBatchItemId = SQLHelper.GetNewID(typeof(Model.HJGL_Batch_BatchTrustItem)); | |||
|  |                                 newExportTrustItem.TrustBatchId = trustBatchId; | |||
|  |                                 newExportTrustItem.PointBatchItemId = q.PointBatchItemId; | |||
|  |                                 newExportTrustItem.WeldJointId = q.WeldJointId; | |||
|  |                                 newExportTrustItem.CreateDate = DateTime.Now; | |||
|  |                                 Batch_BatchTrustItemService.AddBatchTrustItem(newExportTrustItem); | |||
|  | 
 | |||
|  |                                 Model.HJGL_Batch_PointBatchItem pointBatchItem = db.HJGL_Batch_PointBatchItem.FirstOrDefault(x => x.PointBatchItemId == q.PointBatchItemId); | |||
|  |                                 pointBatchItem.IsBuildTrust = true; | |||
|  |                                 db.SubmitChanges(); | |||
|  |                             } | |||
|  |                         } | |||
|  | 
 | |||
|  |                         submitStr = "成功生成委托单!"; | |||
|  |                     } | |||
|  |                     else | |||
|  |                     { | |||
|  |                         submitStr = "选中返修单并确认已审核!"; | |||
|  |                     } | |||
|  |                 } | |||
|  |                 else | |||
|  |                 { | |||
|  |                     submitStr = "已生成委托单!"; | |||
|  |                 } | |||
|  | 
 | |||
|  |                 return submitStr; | |||
|  |             } | |||
|  |         } | |||
|  |         #endregion | |||
|  | 
 | |||
|  |         #region 获取扩透口的随机数 | |||
|  |         /// <summary> | |||
|  |         /// 获取扩透口的随机数 | |||
|  |         /// </summary> | |||
|  |         /// <param name="num"></param> | |||
|  |         /// <returns></returns> | |||
|  |         public static string RandomExport(int num) | |||
|  |         { | |||
|  |             string strNum = string.Empty; | |||
|  |             if (num > 0 && num <= 2) | |||
|  |             { | |||
|  |                 if (num == 1) | |||
|  |                 { | |||
|  |                     strNum = "0"; | |||
|  |                 } | |||
|  |                 else | |||
|  |                 { | |||
|  |                     strNum = "0,1"; | |||
|  |                 } | |||
|  |             } | |||
|  |             else | |||
|  |             { | |||
|  |                 int[] r = Funs.GetRandomNum(2, 0, num - 1); | |||
|  |                 strNum = r[0].ToString() + "," + r[1].ToString(); | |||
|  |             } | |||
|  | 
 | |||
|  |             return strNum; | |||
|  | 
 | |||
|  |         } | |||
|  |         #endregion | |||
|  | 
 | |||
|  |         //////////////////////////////////////////// NDE预警////////////////////////////////////// | |||
|  |          | |||
|  |         #region NDE预警 | |||
|  |         /// <summary> | |||
|  |         /// 无损检测不合格焊口信息 | |||
|  |         /// </summary> | |||
|  |         /// <param name="projectId"></param> | |||
|  |         /// <returns></returns> | |||
|  |         public static List<Model.BaseInfoItem> GetNdeCheckNoPassWarn(string projectId) | |||
|  |         { | |||
|  |             using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) | |||
|  |             { | |||
|  |                 var onecheckNoPass = (from x in db.HJGL_Batch_NDEItem | |||
|  |                                       join y in db.HJGL_Batch_BatchTrustItem on x.TrustBatchItemId equals y.TrustBatchItemId | |||
|  |                                       join w in db.HJGL_WeldJoint on y.WeldJointId equals w.WeldJointId | |||
|  |                                       join z in db.HJGL_Batch_NDE on x.NDEID equals z.NDEID | |||
|  |                                       where y.RepairRecordId == null && x.CheckResult == "2" | |||
|  |                                       select new Model.BaseInfoItem | |||
|  |                                       { | |||
|  |                                           BaseInfoId = y.WeldJointId, | |||
|  |                                           BaseInfoCode = "检测单:" + z.NDECode, | |||
|  |                                           BaseInfoName = "不合格焊口:" + w.WeldJointCode | |||
|  |                                       }).ToList(); | |||
|  | 
 | |||
|  |                 var repairPass = (from x in db.HJGL_Batch_NDEItem | |||
|  |                                   join y in db.HJGL_Batch_BatchTrustItem on x.TrustBatchItemId equals y.TrustBatchItemId | |||
|  |                                   join w in db.HJGL_WeldJoint on y.WeldJointId equals w.WeldJointId | |||
|  |                                   join z in db.HJGL_Batch_NDE on x.NDEID equals z.NDEID | |||
|  |                                   where y.RepairRecordId != null && x.CheckResult == "1" | |||
|  |                                   select new Model.BaseInfoItem | |||
|  |                                   { | |||
|  |                                       BaseInfoId = y.WeldJointId, | |||
|  |                                       BaseInfoCode = "检测单:" + z.NDECode, | |||
|  |                                       BaseInfoName = "不合格焊口:" + w.WeldJointCode | |||
|  |                                   }).ToList(); | |||
|  | 
 | |||
|  |                 List<Model.BaseInfoItem> getDataLists = new List<Model.BaseInfoItem>(); | |||
|  |                 foreach (var q in onecheckNoPass) | |||
|  |                 { | |||
|  |                     if (!repairPass.Contains(q)) | |||
|  |                     { | |||
|  |                         getDataLists.Add(q); | |||
|  |                     } | |||
|  |                 } | |||
|  | 
 | |||
|  |                 return getDataLists; | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// 未委托焊口预警 | |||
|  |         /// </summary> | |||
|  |         /// <param name="projectId"></param> | |||
|  |         /// <returns></returns> | |||
|  |         public static List<Model.BaseInfoItem> GetNoTrustJointWarn(string projectId) | |||
|  |         { | |||
|  |             using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) | |||
|  |             { | |||
|  |                 var point = (from x in db.HJGL_Batch_PointBatchItem | |||
|  |                              join y in db.HJGL_Batch_PointBatch on x.PointBatchId equals y.PointBatchId | |||
|  |                              join z in db.HJGL_WeldJoint on x.WeldJointId equals z.WeldJointId | |||
|  |                              join t in db.HJGL_Batch_BatchTrustItem on x.PointBatchItemId equals t.PointBatchItemId | |||
|  |                              where y.ProjectId == projectId && t.TrustBatchItemId == null | |||
|  |                              orderby y.PointBatchCode, z.WeldJointCode | |||
|  |                              select new Model.BaseInfoItem | |||
|  |                              { | |||
|  |                                  BaseInfoId = x.WeldJointId, | |||
|  |                                  BaseInfoCode ="批号:" + y.PointBatchCode, | |||
|  |                                  BaseInfoName =  "未委托焊口:" + z.WeldJointCode, | |||
|  |                              }).ToList(); | |||
|  | 
 | |||
|  |                 var repair = (from x in db.HJGL_RepairRecord | |||
|  |                               join z in db.HJGL_WeldJoint on x.WeldJointId equals z.WeldJointId | |||
|  |                               join t in db.HJGL_Batch_BatchTrustItem on x.RepairRecordId equals t.RepairRecordId | |||
|  |                               where x.ProjectId == projectId && t.TrustBatchItemId == null | |||
|  |                               orderby x.RepairRecordCode, z.WeldJointCode | |||
|  |                               select new Model.BaseInfoItem | |||
|  |                               { | |||
|  |                                   BaseInfoId = x.WeldJointId, | |||
|  |                                   BaseInfoCode = "返修单号:" + x.RepairRecordCode, | |||
|  |                                   BaseInfoName = "未委托焊口:" + z.WeldJointCode, | |||
|  |                               }).ToList(); | |||
|  | 
 | |||
|  |                 return point.Concat(repair).ToList<Model.BaseInfoItem>(); | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// 未检测焊口预警 | |||
|  |         /// </summary> | |||
|  |         /// <param name="projectId"></param> | |||
|  |         /// <returns></returns> | |||
|  |         public static List<Model.BaseInfoItem> GetNoCheckJointWarn(string projectId) | |||
|  |         { | |||
|  |             using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString)) | |||
|  |             { | |||
|  |                 var getDataLists = (from x in db.HJGL_Batch_BatchTrustItem | |||
|  |                                     join y in db.HJGL_Batch_BatchTrust on x.TrustBatchId equals y.TrustBatchId | |||
|  |                                     join z in db.HJGL_WeldJoint on x.WeldJointId equals z.WeldJointId | |||
|  |                                     join n in db.HJGL_Batch_NDEItem on x.TrustBatchItemId equals n.TrustBatchItemId | |||
|  |                                     where y.ProjectId == projectId && n.NDEItemID == null | |||
|  |                                     orderby y.TrustBatchCode, z.WeldJointCode | |||
|  |                                     select new Model.BaseInfoItem | |||
|  |                                     { | |||
|  |                                         BaseInfoId = x.WeldJointId, | |||
|  |                                         BaseInfoCode ="委托单号:" + y.TrustBatchCode, | |||
|  |                                         BaseInfoName = "焊口:" + z.WeldJointCode, | |||
|  |                                     }).ToList(); | |||
|  | 
 | |||
|  |                 return getDataLists; | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  |         #endregion | |||
|  | 
 | |||
|  |     } | |||
|  | } |