392 lines
		
	
	
		
			19 KiB
		
	
	
	
		
			C#
		
	
	
	
		
		
			
		
	
	
			392 lines
		
	
	
		
			19 KiB
		
	
	
	
		
			C#
		
	
	
	
| 
								 | 
							
								using System;
							 | 
						|||
| 
								 | 
							
								using System.Collections.Generic;
							 | 
						|||
| 
								 | 
							
								using System.Data;
							 | 
						|||
| 
								 | 
							
								using System.Data.SqlClient;
							 | 
						|||
| 
								 | 
							
								using System.Linq;
							 | 
						|||
| 
								 | 
							
								using BLL;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								namespace FineUIPro.Web.WeldingProcess.TrustManage
							 | 
						|||
| 
								 | 
							
								{
							 | 
						|||
| 
								 | 
							
								    public partial class PointAudit : PageBase
							 | 
						|||
| 
								 | 
							
								    {
							 | 
						|||
| 
								 | 
							
								        #region 加载页面
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 加载页面
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="sender"></param>
							 | 
						|||
| 
								 | 
							
								        /// <param name="e"></param>
							 | 
						|||
| 
								 | 
							
								        protected void Page_Load(object sender, EventArgs e)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            if (!IsPostBack)
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                this.BindGrid();
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        #region 数据绑定
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 数据绑定
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        private void BindGrid()
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            string strSql = @"SELECT PointBatchItem.PointBatchItemId,PointBatch.PointBatchCode, jot.WeldJointCode,
							 | 
						|||
| 
								 | 
							
								                                     ins.InstallationCode, WorkArea.WorkAreaCode,unit.UnitCode, Pipeline.PipelineCode,
							 | 
						|||
| 
								 | 
							
								                                    (CASE PointBatchItem.IsAudit WHEN 1 THEN '是' ELSE '否' END) AS PointIsAudit,
							 | 
						|||
| 
								 | 
							
								                                     jot.JointArea,WeldingDaily.WeldingDate,PipingClass.PipingClassName,
							 | 
						|||
| 
								 | 
							
								                                     trustItem.TrustBatchItemId,
							 | 
						|||
| 
								 | 
							
																	 (CASE WHEN jot.BackingWelderId!=jot.CoverWelderId THEN backingWelder.WelderCode+'/'+coverWelder.WelderCode ELSE backingWelder.WelderCode END) AS WelderCode--焊工号
							 | 
						|||
| 
								 | 
							
								                               FROM Batch_PointBatchItem AS PointBatchItem
							 | 
						|||
| 
								 | 
							
								                               LEFT JOIN Batch_PointBatch AS PointBatch ON PointBatch.PointBatchId=PointBatchItem.PointBatchId
							 | 
						|||
| 
								 | 
							
								                               LEFT JOIN Pipeline_WeldJoint AS jot ON jot.WeldJointId=PointBatchItem.WeldJointId
							 | 
						|||
| 
								 | 
							
								                               LEFT JOIN Pipeline_Pipeline AS Pipeline ON Pipeline.PipelineId=jot.PipelineId
							 | 
						|||
| 
								 | 
							
								                                LEFT JOIN dbo.Welder_Welder backingWelder ON backingWelder.WelderId = jot.BackingWelderId
							 | 
						|||
| 
								 | 
							
								                               LEFT JOIN dbo.Welder_Welder coverWelder ON coverWelder.WelderId = jot.CoverWelderId
							 | 
						|||
| 
								 | 
							
															   LEFT JOIN Project_WorkArea AS WorkArea ON WorkArea.WorkAreaId=Pipeline.WorkAreaId
							 | 
						|||
| 
								 | 
							
								                               LEFT JOIN Pipeline_WeldingDaily AS WeldingDaily ON WeldingDaily.WeldingDailyId=jot.WeldingDailyId
							 | 
						|||
| 
								 | 
							
								                               LEFT JOIN Base_PipingClass AS PipingClass ON PipingClass.PipingClassId=Pipeline.PipingClassId
							 | 
						|||
| 
								 | 
							
								                               LEFT JOIN dbo.Project_Installation ins ON ins.InstallationId = PointBatch.InstallationId
							 | 
						|||
| 
								 | 
							
								                               LEFT JOIN dbo.Base_Unit unit ON unit.UnitId = PointBatch.UnitId
							 | 
						|||
| 
								 | 
							
								                               LEFT JOIN dbo.Batch_BatchTrustItem trustItem ON trustItem.PointBatchItemId = PointBatchItem.PointBatchItemId
							 | 
						|||
| 
								 | 
							
								                               WHERE PointBatchItem.PointState IS NOT NULL AND trustItem.TrustBatchItemId IS NULL
							 | 
						|||
| 
								 | 
							
								                                     AND PointBatch.ProjectId=@ProjectId";
							 | 
						|||
| 
								 | 
							
								            List<SqlParameter> listStr = new List<SqlParameter>();
							 | 
						|||
| 
								 | 
							
								            listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
							 | 
						|||
| 
								 | 
							
								            if (!string.IsNullOrEmpty(this.txtPipelineCode.Text.Trim()))
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                strSql += " AND Pipeline.PipelineCode LIKE @PipelineCode";
							 | 
						|||
| 
								 | 
							
								                listStr.Add(new SqlParameter("@PipelineCode", "%" + this.txtPipelineCode.Text.Trim() + "%"));
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            SqlParameter[] parameter = listStr.ToArray();
							 | 
						|||
| 
								 | 
							
								            DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								            Grid1.RecordCount = tb.Rows.Count;
							 | 
						|||
| 
								 | 
							
								            // tb = GetFilteredTable(Grid1.FilteredData, tb);
							 | 
						|||
| 
								 | 
							
								            var table = this.GetPagedDataTable(Grid1, tb);
							 | 
						|||
| 
								 | 
							
								            Grid1.DataSource = table;
							 | 
						|||
| 
								 | 
							
								            Grid1.DataBind();
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        protected void btnQuery_Click(object sender, EventArgs e)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            this.BindGrid();
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        #region 排序
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 排序
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="sender"></param>
							 | 
						|||
| 
								 | 
							
								        /// <param name="e"></param>
							 | 
						|||
| 
								 | 
							
								        protected void Grid1_Sort(object sender, GridSortEventArgs e)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            this.BindGrid();
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        #region 确定按钮
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 确定按钮
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="sender"></param>
							 | 
						|||
| 
								 | 
							
								        /// <param name="e"></param>
							 | 
						|||
| 
								 | 
							
								        protected void btnAccept_Click(object sender, EventArgs e)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            string[] selectRowId = Grid1.SelectedRowIDArray;
							 | 
						|||
| 
								 | 
							
								            if (selectRowId.Count() > 0)
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                foreach (var item in selectRowId)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    BLL.Batch_PointBatchItemService.PointAudit(item, true);
							 | 
						|||
| 
								 | 
							
								                    BLL.Sys_LogService.AddLog(BLL.Const.System_3, this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.HJGL_PointManageMenuId, Const.BtnJLAudit, item);
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                this.BindGrid();
							 | 
						|||
| 
								 | 
							
								                Alert.ShowInTop("勾选的焊口已审核!");
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            else
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                Alert.ShowInTop("请勾选要审核的焊口!", MessageBoxIcon.Warning);
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        protected void btnCancelAccept_Click(object sender, EventArgs e)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            string[] selectRowId = Grid1.SelectedRowIDArray;
							 | 
						|||
| 
								 | 
							
								            if (selectRowId.Count() > 0)
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                foreach (var item in selectRowId)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    BLL.Batch_PointBatchItemService.PointAudit(item, false);
							 | 
						|||
| 
								 | 
							
								                    BLL.Sys_LogService.AddLog(BLL.Const.System_3, this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.HJGL_PointManageMenuId, Const.BtnJLAudit, item);
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                this.BindGrid();
							 | 
						|||
| 
								 | 
							
								                Alert.ShowInTop("勾选的焊口已取消审核!");
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            else
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                Alert.ShowInTop("请勾选要取消审核的焊口!", MessageBoxIcon.Warning);
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        #region 生成委托单
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 生成委托单
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="sender"></param>
							 | 
						|||
| 
								 | 
							
								        /// <param name="e"></param>
							 | 
						|||
| 
								 | 
							
								        protected void btnGenerate_Click(object sender, EventArgs e)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            if (CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.HJGL_PointManageMenuId, Const.BtnGenerate))
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                var project = BLL.Base_ProjectService.GetProjectByProjectId(this.CurrUser.LoginProjectId);
							 | 
						|||
| 
								 | 
							
								                if (project.ProjectArea == "1" || project.ProjectArea == "2")
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    var getViewGenerateTrustLists = (from x in Funs.DB.View_GenerateTrust where x.ProjectId == this.CurrUser.LoginProjectId select x).ToList();
							 | 
						|||
| 
								 | 
							
								                    if (getViewGenerateTrustLists.Count() > 0)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        var getUnit = BLL.Base_UnitService.GetUnit(this.CurrUser.UnitId);
							 | 
						|||
| 
								 | 
							
								                        if (getUnit == null || getUnit.UnitTypeId == "1" || getUnit.UnitTypeId == "2" || getUnit.UnitTypeId == "3")
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            GenerateTrust(getViewGenerateTrustLists);
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                        else
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            var getUnitViewGenerateTrustLists = getViewGenerateTrustLists.Where(x => x.UnitId == this.CurrUser.UnitId);
							 | 
						|||
| 
								 | 
							
								                            if (getUnitViewGenerateTrustLists.Count() > 0)
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                // 当前单位未委托批
							 | 
						|||
| 
								 | 
							
								                                GenerateTrust(getUnitViewGenerateTrustLists.ToList());
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								                            else
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                Alert.ShowInTop("所属单位审核的点口已全部生成委托单!", MessageBoxIcon.Warning);
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                        BLL.Sys_LogService.AddLog(BLL.Const.System_3, this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.HJGL_PointManageMenuId, Const.BtnGenerate, null);
							 | 
						|||
| 
								 | 
							
								                        this.BindGrid();
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    else
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        Alert.ShowInTop("已全部生成委托单!", MessageBoxIcon.Warning);
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                else
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    var getViewGenerateTrustLists = (from x in Funs.DB.View_GenerateTrust_FJ where x.ProjectId == this.CurrUser.LoginProjectId select x).ToList();
							 | 
						|||
| 
								 | 
							
								                    if (getViewGenerateTrustLists.Count() > 0)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        var getUnit = BLL.Base_UnitService.GetUnit(this.CurrUser.UnitId);
							 | 
						|||
| 
								 | 
							
								                        if (getUnit == null || getUnit.UnitTypeId == "1" || getUnit.UnitTypeId == "2" || getUnit.UnitTypeId == "3")
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            GenerateTrust_FJ(getViewGenerateTrustLists);
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                        else
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            var getUnitViewGenerateTrustLists = getViewGenerateTrustLists.Where(x => x.UnitId == this.CurrUser.UnitId);
							 | 
						|||
| 
								 | 
							
								                            if (getUnitViewGenerateTrustLists.Count() > 0)
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                // 当前单位未委托批
							 | 
						|||
| 
								 | 
							
								                                GenerateTrust_FJ(getUnitViewGenerateTrustLists.ToList());
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								                            else
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                Alert.ShowInTop("所属单位审核的点口已全部生成委托单!", MessageBoxIcon.Warning);
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                        BLL.Sys_LogService.AddLog(BLL.Const.System_3, this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.HJGL_PointManageMenuId, Const.BtnGenerate, null);
							 | 
						|||
| 
								 | 
							
								                        this.BindGrid();
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    else
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        Alert.ShowInTop("已全部生成委托单!", MessageBoxIcon.Warning);
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            else
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                ShowNotify(Resources.Lan.NoPrivilegePrompt, MessageBoxIcon.Warning);
							 | 
						|||
| 
								 | 
							
								                return;
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 生成委托单-宁波
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="unitId"></param>
							 | 
						|||
| 
								 | 
							
								        private void GenerateTrust(List<Model.View_GenerateTrust> GenerateTrustLists)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            Model.HJGLDB db = Funs.DB;
							 | 
						|||
| 
								 | 
							
								            foreach (var trust in GenerateTrustLists)
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                Model.Batch_BatchTrust newBatchTrust = new Model.Batch_BatchTrust();
							 | 
						|||
| 
								 | 
							
								                var project = BLL.Base_ProjectService.GetProjectByProjectId(trust.ProjectId);
							 | 
						|||
| 
								 | 
							
								                var unit = BLL.Base_UnitService.GetUnit(trust.UnitId);
							 | 
						|||
| 
								 | 
							
								                var ndt = BLL.Base_DetectionTypeService.GetDetectionTypeByDetectionTypeId(trust.DetectionTypeId);
							 | 
						|||
| 
								 | 
							
								                var area = BLL.Project_WorkAreaService.GetProject_WorkAreaByWorkAreaId(trust.WorkAreaId);
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                string perfix = string.Empty;
							 | 
						|||
| 
								 | 
							
								                perfix = project.ProjectCode + "-" + unit.UnitCode + "-" + ndt.DetectionTypeCode + "-" + area.WorkAreaCode + "-";
							 | 
						|||
| 
								 | 
							
								                newBatchTrust.TrustBatchCode = BLL.SQLHelper.RunProcNewId("SpGetNewCode", "dbo.Batch_BatchTrust", "TrustBatchCode", project.ProjectId, perfix);
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                string trustBatchId = SQLHelper.GetNewID(typeof(Model.Batch_BatchTrust));
							 | 
						|||
| 
								 | 
							
								                newBatchTrust.TrustBatchId = trustBatchId;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                newBatchTrust.TrustDate = DateTime.Now;
							 | 
						|||
| 
								 | 
							
								                newBatchTrust.ProjectId = trust.ProjectId;
							 | 
						|||
| 
								 | 
							
								                newBatchTrust.UnitId = trust.UnitId;
							 | 
						|||
| 
								 | 
							
								                newBatchTrust.InstallationId = trust.InstallationId;
							 | 
						|||
| 
								 | 
							
								                newBatchTrust.WorkAreaId = trust.WorkAreaId;
							 | 
						|||
| 
								 | 
							
								                newBatchTrust.DetectionTypeId = trust.DetectionTypeId;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                BLL.Batch_BatchTrustService.AddBatchTrust(newBatchTrust);  // 新增委托单
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                // 生成委托条件对比
							 | 
						|||
| 
								 | 
							
								                var generateTrustItem = from x in db.View_GenerateTrustItem
							 | 
						|||
| 
								 | 
							
								                                        where x.ProjectId == trust.ProjectId && x.InstallationId == trust.InstallationId
							 | 
						|||
| 
								 | 
							
								                                        && x.WorkAreaId == trust.WorkAreaId && x.UnitId == trust.UnitId
							 | 
						|||
| 
								 | 
							
								                                        && x.DetectionTypeId == trust.DetectionTypeId
							 | 
						|||
| 
								 | 
							
								                                        select x;
							 | 
						|||
| 
								 | 
							
								                string toPointBatch = string.Empty;
							 | 
						|||
| 
								 | 
							
								                // 生成委托明细,并回写点口明细信息
							 | 
						|||
| 
								 | 
							
								                foreach (var item in generateTrustItem)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    if (BLL.Batch_PointBatchService.GetIsGenerateTrust(item.PointBatchItemId)) ////生成委托单的条件判断
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        toPointBatch = toPointBatch + item.PointBatchId + ",";
							 | 
						|||
| 
								 | 
							
								                        Model.Batch_BatchTrustItem trustItem = new Model.Batch_BatchTrustItem
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            TrustBatchItemId = SQLHelper.GetNewID(typeof(Model.Batch_BatchTrustItem)),
							 | 
						|||
| 
								 | 
							
								                            TrustBatchId = trustBatchId,
							 | 
						|||
| 
								 | 
							
								                            PointBatchItemId = item.PointBatchItemId,
							 | 
						|||
| 
								 | 
							
								                            WeldJointId = item.WeldJointId,
							 | 
						|||
| 
								 | 
							
								                            CreateDate = DateTime.Now
							 | 
						|||
| 
								 | 
							
								                        };
							 | 
						|||
| 
								 | 
							
								                        Batch_BatchTrustItemService.AddBatchTrustItem(trustItem);
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    Model.Batch_PointBatchItem pointBatchItem = db.Batch_PointBatchItem.FirstOrDefault(e => e.PointBatchItemId == item.PointBatchItemId);
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    pointBatchItem.IsBuildTrust = true;
							 | 
						|||
| 
								 | 
							
								                    db.SubmitChanges();
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                // 回写委托批对应点口信息
							 | 
						|||
| 
								 | 
							
								                if (!string.IsNullOrEmpty(toPointBatch))
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    List<string> pointBatchList = Funs.GetStrListByStr(toPointBatch, ',');
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    toPointBatch = toPointBatch.Substring(0, toPointBatch.Length - 1);
							 | 
						|||
| 
								 | 
							
								                    var updateTrut = BLL.Batch_BatchTrustService.GetBatchTrustById(trustBatchId);
							 | 
						|||
| 
								 | 
							
								                    if (updateTrut != null)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        updateTrut.TopointBatch = toPointBatch;
							 | 
						|||
| 
								 | 
							
								                        BLL.Batch_BatchTrustService.UpdateBatchTrust(updateTrut);
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								            Alert.ShowInTop("已成功生成委托单!", MessageBoxIcon.Success);
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 生成委托单-福建
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="unitId"></param>
							 | 
						|||
| 
								 | 
							
								        private void GenerateTrust_FJ(List<Model.View_GenerateTrust_FJ> GenerateTrustLists)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            Model.HJGLDB db = Funs.DB;
							 | 
						|||
| 
								 | 
							
								            foreach (var trust in GenerateTrustLists)
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                Model.Batch_BatchTrust newBatchTrust = new Model.Batch_BatchTrust();
							 | 
						|||
| 
								 | 
							
								                var project = BLL.Base_ProjectService.GetProjectByProjectId(trust.ProjectId);
							 | 
						|||
| 
								 | 
							
								                var unit = BLL.Base_UnitService.GetUnit(trust.UnitId);
							 | 
						|||
| 
								 | 
							
								                var ndt = BLL.Base_DetectionTypeService.GetDetectionTypeByDetectionTypeId(trust.DetectionTypeId);
							 | 
						|||
| 
								 | 
							
								                var ins = BLL.Project_InstallationService.GetProject_InstallationByInstallationId(trust.InstallationId);
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                string perfix = string.Empty;
							 | 
						|||
| 
								 | 
							
								                perfix = unit.UnitCode + "-" + ins.InstallationCode + "-GD-" + ndt.DetectionTypeCode + "-";
							 | 
						|||
| 
								 | 
							
								                newBatchTrust.TrustBatchCode = BLL.SQLHelper.RunProcNewId("SpGetNewCode", "dbo.Batch_BatchTrust", "TrustBatchCode", project.ProjectId, perfix);
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                string trustBatchId = SQLHelper.GetNewID(typeof(Model.Batch_BatchTrust));
							 | 
						|||
| 
								 | 
							
								                newBatchTrust.TrustBatchId = trustBatchId;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                newBatchTrust.TrustDate = DateTime.Now;
							 | 
						|||
| 
								 | 
							
								                newBatchTrust.ProjectId = trust.ProjectId;
							 | 
						|||
| 
								 | 
							
								                newBatchTrust.UnitId = trust.UnitId;
							 | 
						|||
| 
								 | 
							
								                newBatchTrust.InstallationId = trust.InstallationId;
							 | 
						|||
| 
								 | 
							
								                newBatchTrust.WorkAreaId = trust.WorkAreaId;
							 | 
						|||
| 
								 | 
							
								                newBatchTrust.DetectionTypeId = trust.DetectionTypeId;
							 | 
						|||
| 
								 | 
							
								                newBatchTrust.PipelineId = trust.PipelineId;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                BLL.Batch_BatchTrustService.AddBatchTrust(newBatchTrust);  // 新增委托单
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                // 生成委托条件对比
							 | 
						|||
| 
								 | 
							
								                var generateTrustItem = from x in db.View_GenerateTrustItem_FJ
							 | 
						|||
| 
								 | 
							
								                                        where x.ProjectId == trust.ProjectId && x.InstallationId == trust.InstallationId
							 | 
						|||
| 
								 | 
							
								                                        && x.WorkAreaId == trust.WorkAreaId && x.UnitId == trust.UnitId
							 | 
						|||
| 
								 | 
							
								                                        && x.DetectionTypeId == trust.DetectionTypeId && x.PipelineId == trust.PipelineId
							 | 
						|||
| 
								 | 
							
								                                        select x;
							 | 
						|||
| 
								 | 
							
								                string toPointBatch = string.Empty;
							 | 
						|||
| 
								 | 
							
								                // 生成委托明细,并回写点口明细信息
							 | 
						|||
| 
								 | 
							
								                foreach (var item in generateTrustItem)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    if (BLL.Batch_PointBatchService.GetIsGenerateTrust(item.PointBatchItemId)) ////生成委托单的条件判断
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        toPointBatch = toPointBatch + item.PointBatchId + ",";
							 | 
						|||
| 
								 | 
							
								                        int? fileNum = null;
							 | 
						|||
| 
								 | 
							
								                        if (item.Dia >= 500)
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            fileNum = Batch_BatchTrustItemService.GetFilmNumByRateAndDia(item.DetectionRateValue, item.Dia);
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                        Model.Batch_BatchTrustItem trustItem = new Model.Batch_BatchTrustItem
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            TrustBatchItemId = SQLHelper.GetNewID(typeof(Model.Batch_BatchTrustItem)),
							 | 
						|||
| 
								 | 
							
								                            TrustBatchId = trustBatchId,
							 | 
						|||
| 
								 | 
							
								                            PointBatchItemId = item.PointBatchItemId,
							 | 
						|||
| 
								 | 
							
								                            WeldJointId = item.WeldJointId,
							 | 
						|||
| 
								 | 
							
								                            FilmNum = fileNum,
							 | 
						|||
| 
								 | 
							
								                            CreateDate = DateTime.Now
							 | 
						|||
| 
								 | 
							
								                        };
							 | 
						|||
| 
								 | 
							
								                        Batch_BatchTrustItemService.AddBatchTrustItem(trustItem);
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    Model.Batch_PointBatchItem pointBatchItem = db.Batch_PointBatchItem.FirstOrDefault(e => e.PointBatchItemId == item.PointBatchItemId);
							 | 
						|||
| 
								 | 
							
								                    pointBatchItem.IsBuildTrust = true;
							 | 
						|||
| 
								 | 
							
								                    db.SubmitChanges();
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                // 回写批变为已委托状态
							 | 
						|||
| 
								 | 
							
								                if (generateTrustItem.Count() > 0)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    var batch = BLL.Batch_PointBatchService.GetPointBatchById(generateTrustItem.First().PointBatchId);
							 | 
						|||
| 
								 | 
							
								                    batch.IsTrust = true;
							 | 
						|||
| 
								 | 
							
								                    Funs.DB.SubmitChanges();
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                
							 | 
						|||
| 
								 | 
							
								                // 回写委托批对应点口信息
							 | 
						|||
| 
								 | 
							
								                if (!string.IsNullOrEmpty(toPointBatch))
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    List<string> pointBatchList = Funs.GetStrListByStr(toPointBatch, ',');
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    toPointBatch = toPointBatch.Substring(0, toPointBatch.Length - 1);
							 | 
						|||
| 
								 | 
							
								                    var updateTrut = BLL.Batch_BatchTrustService.GetBatchTrustById(trustBatchId);
							 | 
						|||
| 
								 | 
							
								                    if (updateTrut != null)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        updateTrut.TopointBatch = toPointBatch;
							 | 
						|||
| 
								 | 
							
								                        BLL.Batch_BatchTrustService.UpdateBatchTrust(updateTrut);
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								            Alert.ShowInTop("已成功生成委托单!", MessageBoxIcon.Success);
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        #endregion
							 | 
						|||
| 
								 | 
							
								    }
							 | 
						|||
| 
								 | 
							
								}
							 |