异常情况兜底不中断信号流程
This commit is contained in:
@@ -38,14 +38,13 @@ namespace MesWork.Pages
|
||||
dgv_Data.Columns.Add(new DataGridViewTextBoxColumn { Name = "发动机号", HeaderText = "发动机号", DataPropertyName = "发动机号", FillWeight = 100 });
|
||||
dgv_Data.Columns.Add(new DataGridViewTextBoxColumn { Name = "机型号", HeaderText = "机型号", DataPropertyName = "机型号", FillWeight = 80 });
|
||||
dgv_Data.Columns.Add(new DataGridViewTextBoxColumn { Name = "订单号", HeaderText = "订单号", DataPropertyName = "订单号", FillWeight = 80 });
|
||||
dgv_Data.Columns.Add(new DataGridViewTextBoxColumn { Name = "称重类型", HeaderText = "称重类型", DataPropertyName = "称重类型", FillWeight = 70 });
|
||||
dgv_Data.Columns.Add(new DataGridViewTextBoxColumn { Name = "托盘号", HeaderText = "托盘号", DataPropertyName = "托盘号", FillWeight = 60 });
|
||||
dgv_Data.Columns.Add(new DataGridViewTextBoxColumn { Name = "进站重量", HeaderText = "进站重量(KG)", DataPropertyName = "进站重量", FillWeight = 80 });
|
||||
dgv_Data.Columns.Add(new DataGridViewTextBoxColumn { Name = "离站重量", HeaderText = "离站重量(KG)", DataPropertyName = "离站重量", FillWeight = 80 });
|
||||
dgv_Data.Columns.Add(new DataGridViewTextBoxColumn { Name = "加油量", HeaderText = "加油量", DataPropertyName = "加油量", FillWeight = 60 });
|
||||
dgv_Data.Columns.Add(new DataGridViewTextBoxColumn { Name = "抽油量", HeaderText = "抽油量", DataPropertyName = "抽油量", FillWeight = 60 });
|
||||
dgv_Data.Columns.Add(new DataGridViewTextBoxColumn { Name = "放油量", HeaderText = "放油量", DataPropertyName = "放油量", FillWeight = 70 });
|
||||
dgv_Data.Columns.Add(new DataGridViewTextBoxColumn { Name = "残留量", HeaderText = "残留量", DataPropertyName = "残留量", FillWeight = 60 });
|
||||
dgv_Data.Columns.Add(new DataGridViewTextBoxColumn { Name = "残油量上下限", HeaderText = "残油量上下限", DataPropertyName = "残油量上下限", FillWeight = 90 });
|
||||
dgv_Data.Columns.Add(new DataGridViewTextBoxColumn { Name = "油密度", HeaderText = "油密度", DataPropertyName = "油密度", FillWeight = 60 });
|
||||
dgv_Data.Columns.Add(new DataGridViewTextBoxColumn { Name = "合格标志", HeaderText = "合格", DataPropertyName = "合格标志", FillWeight = 50 });
|
||||
dgv_Data.Columns.Add(new DataGridViewTextBoxColumn { Name = "操作员", HeaderText = "操作员", DataPropertyName = "操作员", FillWeight = 60 });
|
||||
@@ -81,7 +80,11 @@ namespace MesWork.Pages
|
||||
itemCountParam
|
||||
};
|
||||
SqlOperation.ExecuteStoredProcedure("称重记录_分页查询", parms, out DataTable dt, out string err);
|
||||
if (dt != null) dgv_Data.DataSource = dt;
|
||||
if (dt != null)
|
||||
{
|
||||
AddResidualOilLimitColumn(dt);
|
||||
dgv_Data.DataSource = dt;
|
||||
}
|
||||
_pager.UpdateState(pageCountParam, itemCountParam);
|
||||
}
|
||||
catch (Exception ex)
|
||||
@@ -90,6 +93,53 @@ namespace MesWork.Pages
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 将残油量上下限合并为报表显示列。
|
||||
/// </summary>
|
||||
private void AddResidualOilLimitColumn(DataTable dt)
|
||||
{
|
||||
if (!dt.Columns.Contains("残油量上下限"))
|
||||
{
|
||||
dt.Columns.Add("残油量上下限", typeof(string));
|
||||
}
|
||||
if (dt.Columns.Contains("残留量"))
|
||||
{
|
||||
dt.Columns["残油量上下限"].SetOrdinal(dt.Columns["残留量"].Ordinal + 1);
|
||||
}
|
||||
|
||||
foreach (DataRow row in dt.Rows)
|
||||
{
|
||||
row["残油量上下限"] = $"{FormatLimit(row, "残油量下限")}~{FormatLimit(row, "残油量上限")}";
|
||||
}
|
||||
}
|
||||
|
||||
private string FormatLimit(DataRow row, string columnName)
|
||||
{
|
||||
if (!row.Table.Columns.Contains(columnName) || row[columnName] == DBNull.Value)
|
||||
{
|
||||
return "";
|
||||
}
|
||||
|
||||
if (decimal.TryParse(row[columnName].ToString(), out decimal value))
|
||||
{
|
||||
return value.ToString("0.###");
|
||||
}
|
||||
|
||||
return row[columnName].ToString();
|
||||
}
|
||||
|
||||
private void RemoveHiddenExportColumns(DataTable dt)
|
||||
{
|
||||
string[] hiddenColumns = { "称重类型", "托盘号", "残油量上限", "残油量下限" };
|
||||
foreach (string columnName in hiddenColumns)
|
||||
{
|
||||
if (dt.Columns.Contains(columnName))
|
||||
{
|
||||
dt.Columns.Remove(columnName);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 导出 Excel(重新查询全量数据后导出)
|
||||
/// </summary>
|
||||
@@ -126,6 +176,8 @@ namespace MesWork.Pages
|
||||
|
||||
if (dt != null && dt.Rows.Count > 0)
|
||||
{
|
||||
AddResidualOilLimitColumn(dt);
|
||||
RemoveHiddenExportColumns(dt);
|
||||
bool exported = NPOITest.ExeclHelper.DataTableToExcel(dt, "称重记录", sfd.FileName);
|
||||
if (exported)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user