Basf_TCC7/HJGL/FineUIPro.Web/WeldingProcess/TrustManage/PointForAudit.aspx.cs

352 lines
16 KiB
C#
Raw Normal View History

2024-05-08 10:02:08 +08:00
using BLL;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Reflection;
using System.Web.UI.WebControls;
namespace FineUIPro.Web.WeldingProcess.TrustManage
{
public partial class PointForAudit : PageBase
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.ddlPageSize.SelectedValue = this.Grid1.PageSize.ToString();
BLL.Base_DetectionTypeService.InitDetectionTypeDropDownList(drpNde, "", false, "");
drpNde.SelectedValue = "32617d42-24cb-4390-b115-d53c9c9e2c81"; // 默认RT
BindGrid();
}
}
private void BindGrid()
{
string strSql = @"SELECT PointBatchItemId,PointBatchId,PointBatchCode,WeldJointId,PointState,PointDate,WorkAreaCode,
WeldJointCode,JointArea,Size,WelderCode,WeldingDate,PipelineCode,PipingClassName,
(CASE WHEN IsWelderFirst=1 THEN '是' ELSE '否' END) AS IsWelderFirst,
JLAudit,GLGSAudit,QTAudit,IsPointAudit
FROM dbo.View_Batch_PointBatchItem
2024-05-23 09:35:43 +08:00
WHERE PointState IS NOT NULL AND TrustBatchItemId IS NULL";
2024-05-08 10:02:08 +08:00
List<SqlParameter> listStr = new List<SqlParameter>();
2024-05-23 09:35:43 +08:00
if (!string.IsNullOrEmpty(this.txtPipeCode.Text))
{
strSql += " AND PipelineCode LIKE @PipelineCode";
listStr.Add(new SqlParameter("@PipelineCode", "%" + this.txtPipeCode.Text.Trim() + "%"));
}
2024-05-08 10:02:08 +08:00
if (!string.IsNullOrEmpty(this.txtPointStartDate.Text))
{
strSql += " AND PointDate >= @PointStartDate";
listStr.Add(new SqlParameter("@PointStartDate", Convert.ToDateTime(this.txtPointStartDate.Text)));
}
if (!string.IsNullOrEmpty(this.txtPointEndDate.Text))
{
strSql += " AND PointDate < @PointEndDate";
listStr.Add(new SqlParameter("@PointEndDate", Convert.ToDateTime(this.txtPointEndDate.Text).AddDays(1)));
}
if (drpNoAudit.SelectedValue != "0")
{
if (drpNoAudit.SelectedValue == "1")
{
strSql += " AND JLAudit='未审核'";
}
if (drpNoAudit.SelectedValue == "2")
{
strSql += " AND GLGSAudit='未审核'";
}
if (drpNoAudit.SelectedValue == "3")
{
strSql += " AND QTAudit='未审核'";
}
}
else
{
strSql += " AND (JLAudit='未审核' OR GLGSAudit='未审核' OR QTAudit='未审核')";
}
if (drpNde.SelectedValue != null)
{
strSql += " AND DetectionTypeId=@DetectionTypeId";
listStr.Add(new SqlParameter("@DetectionTypeId", drpNde.SelectedValue));
}
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();
}
#region
/// <summary>
/// 改变索引事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
{
BindGrid();
}
/// <summary>
/// 分页下拉选择事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
{
Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
BindGrid();
}
/// <summary>
/// 排序
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_Sort(object sender, FineUIPro.GridSortEventArgs e)
{
this.BindGrid();
}
#endregion
protected void BtnAnalyse_Click(object sender, EventArgs e)
{
BindGrid();
}
protected void Window2_Close(object sender, WindowCloseEventArgs e)
{
this.BindGrid();
}
protected void btnJLAudit_Click(object sender, EventArgs e)
{
if (CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.HJGL_PointForAuditMenuId, Const.BtnJLAudit))
{
if (Grid1.SelectedRowIndexArray.Length <= 0)
{
Alert.ShowInTop("最少选中一行!", MessageBoxIcon.Warning);
return;
}
string userId = CurrUser.UserId;
foreach (string pointBatchItemId in Grid1.SelectedRowIDArray)
{
var pointBatchItem = BLL.Batch_PointBatchItemService.GetPointBatchItemByPointBatchItemId(pointBatchItemId);
pointBatchItem.JLAudit = userId;
BLL.Funs.DB.SubmitChanges();
}
Alert.ShowInTop("所选项审核完成!", MessageBoxIcon.Warning);
BindGrid();
}
else
{
ShowNotify(Resources.Lan.NoPrivilegePrompt, MessageBoxIcon.Warning);
return;
}
}
protected void btnGLGSAudit_Click(object sender, EventArgs e)
{
if (CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.HJGL_PointForAuditMenuId, Const.BtnGLGSAudit))
{
if (Grid1.SelectedRowIndexArray.Length <= 0)
{
Alert.ShowInTop("最少选中一行!", MessageBoxIcon.Warning);
return;
}
string userId = CurrUser.UserId;
foreach (string pointBatchItemId in Grid1.SelectedRowIDArray)
{
var pointBatchItem = BLL.Batch_PointBatchItemService.GetPointBatchItemByPointBatchItemId(pointBatchItemId);
pointBatchItem.GLGSAudit = userId;
BLL.Funs.DB.SubmitChanges();
}
Alert.ShowInTop("所选项审核完成!", MessageBoxIcon.Warning);
BindGrid();
}
else
{
ShowNotify(Resources.Lan.NoPrivilegePrompt, MessageBoxIcon.Warning);
return;
}
}
protected void btnOtherAudit_Click(object sender, EventArgs e)
{
if (CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.HJGL_PointForAuditMenuId, Const.BtnQTAudit))
{
if (Grid1.SelectedRowIndexArray.Length <= 0)
{
Alert.ShowInTop("最少选中一行!", MessageBoxIcon.Warning);
return;
}
string userId = CurrUser.UserId;
foreach (string pointBatchItemId in Grid1.SelectedRowIDArray)
{
var pointBatchItem = BLL.Batch_PointBatchItemService.GetPointBatchItemByPointBatchItemId(pointBatchItemId);
pointBatchItem.QTAudit = userId;
BLL.Funs.DB.SubmitChanges();
}
Alert.ShowInTop("所选项审核完成!", MessageBoxIcon.Warning);
BindGrid();
}
else
{
ShowNotify(Resources.Lan.NoPrivilegePrompt, MessageBoxIcon.Warning);
return;
}
}
2024-05-23 09:35:43 +08:00
/// <summary>
/// 手动生成委托单
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnHandGenerate_Click(object sender, EventArgs e)
{
if (CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.HJGL_PointManageMenuId, Const.BtnHandGenerate))
{
List<string> selectRow = new List<string>();
foreach (string pitem in Grid1.SelectedRowIDArray)
{
selectRow.Add(pitem);
}
if (selectRow.Count() > 0)
{
List<string> weldMot = new List<string>();
List<string> grooveType = new List<string>();
List<bool> IsFist = new List<bool>();
List<string> pointBatchIds = new List<string>();
string error = string.Empty;
foreach (string pointItemId in selectRow)
{
var pointItem = BLL.Batch_PointBatchItemService.GetPointBatchItemByPointBatchItemId(pointItemId);
var jot = BLL.Pipeline_WeldJointService.GetWeldJointByWeldJointId(pointItem.WeldJointId);
weldMot.Add(jot.WeldingMethodId);
grooveType.Add(jot.GrooveTypeId);
IsFist.Add(pointItem.IsWelderFirst == true ? true : false);
pointBatchIds.Add(pointItem.PointBatchId);
}
if (pointBatchIds.Distinct().Count() > 1)
{
error = "勾选的焊口不在一个批次中,";
}
if (weldMot.Distinct().Count() > 1)
{
error = "勾选的焊口焊接方法不一至,";
}
if (grooveType.Distinct().Count() > 1)
{
error = error + "勾选的焊口坡口类型不一至,";
}
if (IsFist.Distinct().Count() > 1)
{
error = error + "勾选的焊口是否首三不一至,";
}
if (error == string.Empty)
{
var point = BLL.Batch_PointBatchService.GetPointBatchById(pointBatchIds[0]);
var iso = BLL.Pipeline_PipelineService.GetPipelineByPipelineId(point.PipelineId);
var project = BLL.Base_ProjectService.GetProjectByProjectId(point.ProjectId);
var unit = BLL.Base_UnitService.GetUnit(point.UnitId);
var ndt = BLL.Base_DetectionTypeService.GetDetectionTypeByDetectionTypeId(point.DetectionTypeId);
var work = BLL.Project_WorkAreaService.GetProject_WorkAreaByWorkAreaId(iso.WorkAreaId);
Model.Batch_BatchTrust newBatchTrust = new Model.Batch_BatchTrust();
string perfix = string.Empty;
//perfix = unit.UnitCode + "-" + ins.InstallationCode + "-GD-" + ndt.DetectionTypeCode + "-";
perfix = ndt.DetectionTypeCode + "-" + unit.UnitCode + "-" + work.WorkAreaCode + "-PI" + "-";
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 = point.ProjectId;
newBatchTrust.UnitId = point.UnitId;
newBatchTrust.InstallationId = point.InstallationId;
newBatchTrust.WorkAreaId = iso.WorkAreaId;
newBatchTrust.WeldingMethodId = weldMot[0];
newBatchTrust.GrooveTypeId = grooveType[0];
newBatchTrust.IsWelderFirst = IsFist[0];
newBatchTrust.DetectionTypeId = point.DetectionTypeId;
newBatchTrust.PipelineId = point.PipelineId;
BLL.Batch_BatchTrustService.AddBatchTrust(newBatchTrust); // 新增委托单
// 生成委托明细,并回写点口明细信息
string toPointBatch = string.Empty;
foreach (string pointItemId in selectRow)
{
var pointItem = BLL.Batch_PointBatchItemService.GetPointBatchItemByPointBatchItemId(pointItemId);
if (BLL.Batch_PointBatchService.GetIsGenerateTrust(pointItem.PointBatchItemId)) ////生成委托单的条件判断
{
if (!toPointBatch.Contains(pointItem.PointBatchId))
{
toPointBatch = toPointBatch + pointItem.PointBatchId + ",";
}
Model.Batch_BatchTrustItem trustItem = new Model.Batch_BatchTrustItem
{
TrustBatchItemId = SQLHelper.GetNewID(typeof(Model.Batch_BatchTrustItem)),
TrustBatchId = trustBatchId,
PointBatchItemId = pointItem.PointBatchItemId,
WeldJointId = pointItem.WeldJointId,
//FilmNum = fileNum,
CreateDate = DateTime.Now
};
Batch_BatchTrustItemService.AddBatchTrustItem(trustItem);
}
//Model.Batch_PointBatchItem pointBatchItem = Funs.DB.Batch_PointBatchItem.FirstOrDefault(e => e.PointBatchItemId == item.PointBatchItemId);
pointItem.IsBuildTrust = true;
Funs.DB.SubmitChanges();
}
// 回写委托批对应点口信息
if (!string.IsNullOrEmpty(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);
}
else
{
Alert.ShowInTop(error + "不能组成一个委托单!", MessageBoxIcon.Warning);
}
}
else
{
Alert.ShowInTop("请勾选要生成委托单的焊口!", MessageBoxIcon.Warning);
}
}
else
{
ShowNotify(Resources.Lan.NoPrivilegePrompt, MessageBoxIcon.Warning);
return;
}
}
2024-05-08 10:02:08 +08:00
}
}