453 lines
		
	
	
		
			17 KiB
		
	
	
	
		
			C#
		
	
	
	
		
		
			
		
	
	
			453 lines
		
	
	
		
			17 KiB
		
	
	
	
		
			C#
		
	
	
	
| 
								 | 
							
								using System;
							 | 
						|||
| 
								 | 
							
								using System.Collections.Generic;
							 | 
						|||
| 
								 | 
							
								using System.Linq;
							 | 
						|||
| 
								 | 
							
								using System.Text;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								namespace BLL
							 | 
						|||
| 
								 | 
							
								{
							 | 
						|||
| 
								 | 
							
								    /// <summary>
							 | 
						|||
| 
								 | 
							
								    /// 点口主表
							 | 
						|||
| 
								 | 
							
								    /// </summary>
							 | 
						|||
| 
								 | 
							
								    public static class Batch_PointBatchService
							 | 
						|||
| 
								 | 
							
								    {       
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 根据主键获取点口主表
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="pointBatchId"></param>
							 | 
						|||
| 
								 | 
							
								        /// <returns></returns>
							 | 
						|||
| 
								 | 
							
								        public static Model.Batch_PointBatch GetPointBatchById(string pointBatchId)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            return Funs.DB.Batch_PointBatch.FirstOrDefault(e => e.PointBatchId == pointBatchId);
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        #region 点口单维护
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 添加点口
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="pointBatch"></param>
							 | 
						|||
| 
								 | 
							
								        public static void AddPointBatch(Model.Batch_PointBatch pointBatch)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            Model.HJGLDB db = Funs.DB;
							 | 
						|||
| 
								 | 
							
								            Model.Batch_PointBatch newPointBatch = new Model.Batch_PointBatch
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                PointBatchId = pointBatch.PointBatchId,
							 | 
						|||
| 
								 | 
							
								                PointBatchCode = pointBatch.PointBatchCode,
							 | 
						|||
| 
								 | 
							
								                ProjectId = pointBatch.ProjectId,
							 | 
						|||
| 
								 | 
							
								                UnitId = pointBatch.UnitId,
							 | 
						|||
| 
								 | 
							
								                InstallationId = pointBatch.InstallationId,
							 | 
						|||
| 
								 | 
							
								                PipelineId=pointBatch.PipelineId,
							 | 
						|||
| 
								 | 
							
								                DetectionTypeId = pointBatch.DetectionTypeId,
							 | 
						|||
| 
								 | 
							
								                DetectionRateId = pointBatch.DetectionRateId,
							 | 
						|||
| 
								 | 
							
								                WelderId = pointBatch.WelderId,
							 | 
						|||
| 
								 | 
							
								                MediumId = pointBatch.MediumId,
							 | 
						|||
| 
								 | 
							
								                MaterialId = pointBatch.MaterialId,
							 | 
						|||
| 
								 | 
							
								                WeldTypeId = pointBatch.WeldTypeId,
							 | 
						|||
| 
								 | 
							
								                StartDate = pointBatch.StartDate,
							 | 
						|||
| 
								 | 
							
								                EndDate = pointBatch.EndDate,
							 | 
						|||
| 
								 | 
							
								                ClearDate = pointBatch.ClearDate,
							 | 
						|||
| 
								 | 
							
								                IsTrust = pointBatch.IsTrust,
							 | 
						|||
| 
								 | 
							
								                IsCheck = pointBatch.IsCheck
							 | 
						|||
| 
								 | 
							
								            };
							 | 
						|||
| 
								 | 
							
								            db.Batch_PointBatch.InsertOnSubmit(newPointBatch);
							 | 
						|||
| 
								 | 
							
								            db.SubmitChanges();
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 修改点口主表
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="pointBatch"></param>
							 | 
						|||
| 
								 | 
							
								        public static void UpdatePointBatch(Model.Batch_PointBatch pointBatch)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            Model.HJGLDB db = Funs.DB;
							 | 
						|||
| 
								 | 
							
								            Model.Batch_PointBatch newPointBatch = db.Batch_PointBatch.FirstOrDefault(e => e.PointBatchId == pointBatch.PointBatchId);
							 | 
						|||
| 
								 | 
							
								            if (newPointBatch != null)
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                newPointBatch.PointBatchCode = pointBatch.PointBatchCode;
							 | 
						|||
| 
								 | 
							
								                newPointBatch.ProjectId = pointBatch.ProjectId;
							 | 
						|||
| 
								 | 
							
								                newPointBatch.UnitId = pointBatch.UnitId;
							 | 
						|||
| 
								 | 
							
								                newPointBatch.InstallationId = pointBatch.InstallationId;
							 | 
						|||
| 
								 | 
							
								                newPointBatch.PipelineId = pointBatch.PipelineId;
							 | 
						|||
| 
								 | 
							
								                newPointBatch.DetectionTypeId = pointBatch.DetectionTypeId;
							 | 
						|||
| 
								 | 
							
								                newPointBatch.DetectionRateId = pointBatch.DetectionRateId;
							 | 
						|||
| 
								 | 
							
								                newPointBatch.WelderId = pointBatch.WelderId;
							 | 
						|||
| 
								 | 
							
								                newPointBatch.MediumId = pointBatch.MediumId;
							 | 
						|||
| 
								 | 
							
								                newPointBatch.MaterialId = pointBatch.MaterialId;
							 | 
						|||
| 
								 | 
							
								                newPointBatch.WeldTypeId = pointBatch.WeldTypeId;
							 | 
						|||
| 
								 | 
							
								                newPointBatch.StartDate = pointBatch.StartDate;
							 | 
						|||
| 
								 | 
							
								                newPointBatch.EndDate = pointBatch.EndDate;
							 | 
						|||
| 
								 | 
							
								                newPointBatch.ClearDate = pointBatch.ClearDate;
							 | 
						|||
| 
								 | 
							
								                newPointBatch.IsTrust = pointBatch.IsTrust;
							 | 
						|||
| 
								 | 
							
								                newPointBatch.IsCheck = pointBatch.IsCheck;
							 | 
						|||
| 
								 | 
							
								                db.SubmitChanges();
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 根据主键删除点口主表
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="pointBatchId"></param>
							 | 
						|||
| 
								 | 
							
								        public static void DeletePointBatchById(string pointBatchId)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            Model.HJGLDB db = Funs.DB;
							 | 
						|||
| 
								 | 
							
								            Model.Batch_PointBatch pointBatch = db.Batch_PointBatch.FirstOrDefault(e => e.PointBatchId == pointBatchId);
							 | 
						|||
| 
								 | 
							
								            if (pointBatch!=null)
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                db.Batch_PointBatch.DeleteOnSubmit(pointBatch);
							 | 
						|||
| 
								 | 
							
								                db.SubmitChanges();
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        #region 更新批主表信息-委托状态
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 更新批主表委托状态
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="pointBatchId"></param>
							 | 
						|||
| 
								 | 
							
								        /// <param name="isTrust"></param>
							 | 
						|||
| 
								 | 
							
								        public static void UpdatePointTrustState(string pointBatchId, bool? isTrust)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            Model.HJGLDB db = Funs.DB;
							 | 
						|||
| 
								 | 
							
								            Model.Batch_PointBatch update = db.Batch_PointBatch.FirstOrDefault(e => e.PointBatchId == pointBatchId);
							 | 
						|||
| 
								 | 
							
								            if (update != null)
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                update.IsTrust = isTrust;
							 | 
						|||
| 
								 | 
							
								                db.SubmitChanges();
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        #region 生成批号
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 生成批号
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="projectId"></param>
							 | 
						|||
| 
								 | 
							
								        /// <param name="pipeCode"></param>
							 | 
						|||
| 
								 | 
							
								        /// <param name="detectionTypeCode"></param>
							 | 
						|||
| 
								 | 
							
								        /// <param name="detectionRateCode"></param>
							 | 
						|||
| 
								 | 
							
								        /// <returns></returns>
							 | 
						|||
| 
								 | 
							
								        public static string GetNewPointBatchCode(string projectId, string pipeCode, string detectionTypeCode, string detectionRateCode)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            string prefix = null;
							 | 
						|||
| 
								 | 
							
								            if (!string.IsNullOrEmpty(pipeCode))
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                prefix = pipeCode + "-";
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            if (!string.IsNullOrEmpty(detectionTypeCode))
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                prefix = prefix + detectionTypeCode + "-";
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            if (!string.IsNullOrEmpty(detectionRateCode))
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                prefix = prefix + detectionRateCode + "-";
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								            return BLL.SQLHelper.RunProcNewId("SpGetThreeNumber", "Batch_PointBatch", "PointBatchCode", projectId, prefix);
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        #region 更新批主表信息-开\关闭
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 更新批主表信息
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="pointBatch">批主表实体</param>
							 | 
						|||
| 
								 | 
							
								        public static void UpdatePointBatch(string pointBatchId, DateTime? endDate)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            Model.HJGLDB db = Funs.DB;
							 | 
						|||
| 
								 | 
							
								            Model.Batch_PointBatch newPointBatch = db.Batch_PointBatch.FirstOrDefault(e => e.PointBatchId == pointBatchId);
							 | 
						|||
| 
								 | 
							
								            if (newPointBatch != null)
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                newPointBatch.EndDate = endDate;
							 | 
						|||
| 
								 | 
							
								                db.SubmitChanges();
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        #region 更新批主表信息-批结束日期
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 更新批主表信息-批结束日期
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="pointBatch">批主表实体</param>
							 | 
						|||
| 
								 | 
							
								        public static void UpdatePointBatchClearDate(string pointBatchId, DateTime? clearDate)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            Model.HJGLDB db = Funs.DB;
							 | 
						|||
| 
								 | 
							
								            Model.Batch_PointBatch newPointBatch = db.Batch_PointBatch.FirstOrDefault(e => e.PointBatchId == pointBatchId);
							 | 
						|||
| 
								 | 
							
								            if (newPointBatch != null)
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                newPointBatch.ClearDate = clearDate;
							 | 
						|||
| 
								 | 
							
								                db.SubmitChanges();
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        #region 是否显示返修\切除页面通过批id
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 是否显示返修\切除页面 
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <returns></returns>
							 | 
						|||
| 
								 | 
							
								        public static bool GetIsShowPointRepairByPointBatchId(string pointBatchId)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            ////判断该焊口是否点口\扩透 是显示链接
							 | 
						|||
| 
								 | 
							
								            var pointBatchItem = Funs.DB.Batch_PointBatchItem.FirstOrDefault(x => x.PointBatchId == pointBatchId
							 | 
						|||
| 
								 | 
							
								                                     && !x.CutDate.HasValue && x.PointDate.HasValue && x.IsCheckRepair.HasValue && x.IsCheckRepair.Value);
							 | 
						|||
| 
								 | 
							
								            if (pointBatchItem != null)
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                return true;
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            else
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                return false;
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        #region 是否 取消扩透
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 是否显示取消扩透
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <returns></returns>
							 | 
						|||
| 
								 | 
							
								        public static bool GetIsShowCancellation(string pointBatchItemId, string pointState)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            Model.HJGLDB db = Funs.DB;
							 | 
						|||
| 
								 | 
							
								            bool isShow = false;
							 | 
						|||
| 
								 | 
							
								            ////判断该焊口是否点口\扩透 是显示链接
							 | 
						|||
| 
								 | 
							
								            var pointBatchItem = Funs.DB.Batch_PointBatchItem.FirstOrDefault(x => x.PointBatchItemId == pointBatchItemId
							 | 
						|||
| 
								 | 
							
								                && (x.IsCheckRepair == null || x.IsCheckRepair == false) && (x.PointState == pointState || x.CutDate.HasValue));
							 | 
						|||
| 
								 | 
							
								            if (pointBatchItem != null)
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                var trust = db.Batch_BatchTrustItem.Where(p => p.PointBatchItemId == pointBatchItemId);
							 | 
						|||
| 
								 | 
							
								                if (trust.Count() == 1)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                   var checkItem = db.Batch_NDEItem.FirstOrDefault(x => x.TrustBatchItemId == trust.First().TrustBatchItemId);
							 | 
						|||
| 
								 | 
							
								                    if (checkItem == null)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        isShow = true;
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                   
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                if (trust.Count() == 0)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    isShow = true;
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								            return isShow;
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        #region 是否满足生成委托条件
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 是否满足生成委托条件
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <returns></returns>
							 | 
						|||
| 
								 | 
							
								        public static bool GetIsGenerateTrust(string pointBatchItemId)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            bool isShow = true;
							 | 
						|||
| 
								 | 
							
								            var trustBatchItem = Funs.DB.Batch_BatchTrustItem.FirstOrDefault(x => x.PointBatchItemId == pointBatchItemId);
							 | 
						|||
| 
								 | 
							
								            if (trustBatchItem != null)
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                var checkItem = Funs.DB.Batch_NDEItem.FirstOrDefault(x => x.TrustBatchItemId == trustBatchItem.TrustBatchItemId && x.CheckResult == "1");
							 | 
						|||
| 
								 | 
							
								                if (checkItem != null)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    isShow = false;
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								            return isShow;
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        #region 判断批次主键判断批是否关闭
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 判断批次主键判断批是否关闭
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="pointBatchId">批次主键</param>
							 | 
						|||
| 
								 | 
							
								        /// <returns></returns>
							 | 
						|||
| 
								 | 
							
								        public static bool IsPointBatchClose(string pointBatchId)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            bool isColse = false;
							 | 
						|||
| 
								 | 
							
								            var pointBatch = Funs.DB.Batch_PointBatch.FirstOrDefault(x => x.PointBatchId == pointBatchId);
							 | 
						|||
| 
								 | 
							
								            if (pointBatch.EndDate.HasValue)
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                isColse = true;
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            else
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                isColse = false;
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            return isColse;
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        #region 更新返修焊口号
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 返修\切除更新焊口号
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="WeldJointId"></param>
							 | 
						|||
| 
								 | 
							
								        /// <param name="value"></param>
							 | 
						|||
| 
								 | 
							
								        public static void UpdateNewRepairJointNo(string WeldJointId)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            Model.HJGLDB db = Funs.DB;
							 | 
						|||
| 
								 | 
							
								            var jointInfo = db.Pipeline_WeldJoint.FirstOrDefault(x => x.WeldJointId == WeldJointId);
							 | 
						|||
| 
								 | 
							
								            if (jointInfo != null)
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                string jointNo = jointInfo.WeldJointCode;
							 | 
						|||
| 
								 | 
							
								                string lastNo = jointNo;
							 | 
						|||
| 
								 | 
							
								                string startNo = jointNo;
							 | 
						|||
| 
								 | 
							
								                string newjointNo = string.Empty;
							 | 
						|||
| 
								 | 
							
								                ////焊口字符串长度
							 | 
						|||
| 
								 | 
							
								                int noLength = jointNo.Length;
							 | 
						|||
| 
								 | 
							
								                if (noLength > 2)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    lastNo = jointNo.Substring(noLength - 2); ////截取最后两位
							 | 
						|||
| 
								 | 
							
								                    startNo = jointNo.Substring(0, noLength - 2);
							 | 
						|||
| 
								 | 
							
								                    ////焊口包含R的索引                
							 | 
						|||
| 
								 | 
							
								                    int indexR = lastNo.LastIndexOf("R");
							 | 
						|||
| 
								 | 
							
								                    if (indexR >= 0)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        string rString = string.Empty;
							 | 
						|||
| 
								 | 
							
								                        ////截取R 前的字符串
							 | 
						|||
| 
								 | 
							
								                        rString = lastNo.Substring(0, indexR + 1);
							 | 
						|||
| 
								 | 
							
								                        ////截取R 后的字符
							 | 
						|||
| 
								 | 
							
								                        string subNo = lastNo.Substring(indexR + 1);
							 | 
						|||
| 
								 | 
							
								                        if (!string.IsNullOrEmpty(subNo))
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            subNo = (Convert.ToInt32(subNo) + 1).ToString();
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                        else
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            subNo = "1";
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                        newjointNo = startNo + rString + subNo;
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    else
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        newjointNo = jointNo + "R1";
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                else
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    newjointNo = jointNo + "R1";
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                jointInfo.WeldJointCode = newjointNo;
							 | 
						|||
| 
								 | 
							
								                db.SubmitChanges();
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        #region 撤消返修焊口号
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 撤消返修焊口号
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="WeldJointId"></param>
							 | 
						|||
| 
								 | 
							
								        /// <param name="value"></param>
							 | 
						|||
| 
								 | 
							
								        public static void CancelRepairJointNo(string WeldJointId)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            Model.HJGLDB db = Funs.DB;
							 | 
						|||
| 
								 | 
							
								            var jointInfo = db.Pipeline_WeldJoint.FirstOrDefault(x => x.WeldJointId == WeldJointId);
							 | 
						|||
| 
								 | 
							
								            if (jointInfo != null)
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                string jointNo = jointInfo.WeldJointCode;
							 | 
						|||
| 
								 | 
							
								                string lastNo = jointNo;
							 | 
						|||
| 
								 | 
							
								                string startNo = jointNo;
							 | 
						|||
| 
								 | 
							
								                string newjointNo = string.Empty;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                //焊口字符串长度
							 | 
						|||
| 
								 | 
							
								                int noLength = jointNo.Length;
							 | 
						|||
| 
								 | 
							
								                if (noLength > 2)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    lastNo = jointNo.Substring(noLength - 2); ////截取最后两位
							 | 
						|||
| 
								 | 
							
								                    startNo = jointNo.Substring(0, noLength - 2);
							 | 
						|||
| 
								 | 
							
								                    // 焊口包含R的索引                
							 | 
						|||
| 
								 | 
							
								                    int indexR = lastNo.LastIndexOf("R");
							 | 
						|||
| 
								 | 
							
								                    if (indexR >= 0)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        string rString = string.Empty;
							 | 
						|||
| 
								 | 
							
								                        // 截取R 前的字符串
							 | 
						|||
| 
								 | 
							
								                        rString = lastNo.Substring(0, indexR + 1);
							 | 
						|||
| 
								 | 
							
								                        // 截取R 后的字符
							 | 
						|||
| 
								 | 
							
								                        string subNo = lastNo.Substring(indexR + 1);
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                        if (!string.IsNullOrEmpty(subNo) && Convert.ToInt32(subNo) > 1)
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            subNo = (Convert.ToInt32(subNo) - 1).ToString();
							 | 
						|||
| 
								 | 
							
								                            newjointNo = startNo + rString + subNo;
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                        else
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            newjointNo = startNo;
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                jointInfo.WeldJointCode = newjointNo;
							 | 
						|||
| 
								 | 
							
								                db.SubmitChanges();
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        #region 更新扩透或切除焊口号
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 更新扩透或切除焊口号
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="WeldJointId"></param>
							 | 
						|||
| 
								 | 
							
								        /// <param name="value"></param>
							 | 
						|||
| 
								 | 
							
								        public static void UpdateNewKuoOrCutJointNo(string pointBatchItemId, string value)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            Model.HJGLDB db = Funs.DB;
							 | 
						|||
| 
								 | 
							
								            var pointBatchItem = db.Batch_PointBatchItem.FirstOrDefault(x => x.PointBatchItemId == pointBatchItemId);
							 | 
						|||
| 
								 | 
							
								            var jointInfo = db.Pipeline_WeldJoint.FirstOrDefault(x => x.WeldJointId == pointBatchItem.WeldJointId);
							 | 
						|||
| 
								 | 
							
								            if (jointInfo != null)
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                jointInfo.OldWeldJointCode = jointInfo.WeldJointCode;
							 | 
						|||
| 
								 | 
							
								                string jointNo = jointInfo.WeldJointCode;
							 | 
						|||
| 
								 | 
							
								                //// 焊口字符串长度
							 | 
						|||
| 
								 | 
							
								                //int noLength = jointNo.Length;
							 | 
						|||
| 
								 | 
							
								                //if (noLength > 2 && value == "C")
							 | 
						|||
| 
								 | 
							
								                //{
							 | 
						|||
| 
								 | 
							
								                //    // 焊口包含K的索引                
							 | 
						|||
| 
								 | 
							
								                //    int indexK = jointNo.LastIndexOf("K");
							 | 
						|||
| 
								 | 
							
								                //    if (indexK >= 0)
							 | 
						|||
| 
								 | 
							
								                //    {
							 | 
						|||
| 
								 | 
							
								                //        // 截取K 前的字符串
							 | 
						|||
| 
								 | 
							
								                //        jointNo = jointNo.Substring(0, indexK);
							 | 
						|||
| 
								 | 
							
								                //    }
							 | 
						|||
| 
								 | 
							
								                //    else
							 | 
						|||
| 
								 | 
							
								                //    {
							 | 
						|||
| 
								 | 
							
								                //        // 焊口包含R的索引                
							 | 
						|||
| 
								 | 
							
								                //        int indexR = jointNo.LastIndexOf("R");
							 | 
						|||
| 
								 | 
							
								                //        if (indexR >= 0)
							 | 
						|||
| 
								 | 
							
								                //        {
							 | 
						|||
| 
								 | 
							
								                //            jointNo = jointNo.Substring(0, indexR);
							 | 
						|||
| 
								 | 
							
								                //        }
							 | 
						|||
| 
								 | 
							
								                //    }
							 | 
						|||
| 
								 | 
							
								                //}
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                jointInfo.WeldJointCode = jointNo + value;
							 | 
						|||
| 
								 | 
							
								                db.SubmitChanges();
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        #region 撤销扩透或切除焊口号
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 撤销扩透或切除焊口号
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="WeldJointId"></param>
							 | 
						|||
| 
								 | 
							
								        /// <param name="value"></param>
							 | 
						|||
| 
								 | 
							
								        public static void CancellationJointNo(string WeldJointId)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            Model.HJGLDB db = Funs.DB;
							 | 
						|||
| 
								 | 
							
								            var jointInfo = db.Pipeline_WeldJoint.FirstOrDefault(x => x.WeldJointId == WeldJointId);
							 | 
						|||
| 
								 | 
							
								            if (jointInfo != null && !string.IsNullOrEmpty(jointInfo.OldWeldJointCode))
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                jointInfo.WeldJointCode = jointInfo.OldWeldJointCode;  
							 | 
						|||
| 
								 | 
							
								                jointInfo.OldWeldJointCode = null;
							 | 
						|||
| 
								 | 
							
								                db.SubmitChanges();
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        #endregion
							 | 
						|||
| 
								 | 
							
								    }
							 | 
						|||
| 
								 | 
							
								}
							 |