using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
using Core.Mes.Client.Comm.Control;
using Core.Mes.Client.Comm.Tool;
using Core.StlMes.Client.Mcp.Control.Entity;
using CoreFS.CA06;
using Infragistics.Win;
using Infragistics.Win.UltraWinGrid;
namespace Core.StlMes.Client.Mcp.Mch.Report
{
public partial class FrmUnLoadReport : FrmBase
{
private string[] _plineCodes = {};
public FrmUnLoadReport()
{
InitializeComponent();
IsLoadUserView = true;
}
///
/// 合同信息
///
protected List ViewList = new List
{
"JudgeStoveNo",
"BatchNo",
"PlineName",
"Producname",
"Steelname",
"Gradename",
"Outdiameter",
"Wallthick",
"ModelDesc",
"OrderNoSeq",
"PlanIndoubleNum",
"PlanIndoubleWt",
"ProCount",
"ProWeight",
"ActCount",
"ActWeight"
};
public override void ToolBar_Click(object sender, string ToolbarKey)
{
switch (ToolbarKey)
{
case "DoQuery":
Query();
break;
case "Export":
Export();
break;
case "DoClose":
Close();
break;
}
}
///
/// 导出
///
protected virtual void Export()
{
GridHelper.ulGridToExcel(CrackDetectGrid, Text);
}
///
/// 查询
///
private void Query()
{
var Message = "";
var wf = new WaitingForm2("正在查询,请稍候....");
try
{
Cursor = Cursors.WaitCursor;
DataBindingSource.DataSource = EntityHelper.GetData(
"com.steering.mes.mcp.Mch.FrmJgxReport.doQueryUnLoadReport",
GetQueryCondition(),
ob);
GridHelper.RefreshAndAutoSizeExceptColumns(CrackDetectGrid, "ReportPath");
}
catch (Exception ex)
{
if (ex.Message.ToString2() != "")
MessageBox.Show(ex.Message);
}
finally
{
wf.Close();
Cursor = Cursors.Default;
}
}
///
/// 按照区域重新排序
///
private void Resort()
{
SortBand(ViewList, CrackDetectGrid.DisplayLayout.Bands[0]);
}
///
/// Band重新排序
///
///
///
private void SortBand(List ColumnSeq, UltraGridBand band)
{
foreach (var Columns in band.Columns)
ResetColumns(Columns);
var ColumnX = 0;
for (var i = 0; i < ColumnSeq.Count; i++)
{
var Key = ColumnSeq[i];
if (band.Columns.Exists(Key))
{
band.Columns[Key].Hidden = false;
band.Columns[Key].RowLayoutColumnInfo.OriginX = 2 * ColumnX++;
band.Columns[Key].RowLayoutColumnInfo.OriginY = 0;
}
}
}
///
/// 重置字段属性,或绑定
///
///
protected virtual void ResetColumns(UltraGridColumn Columns)
{
Columns.Hidden = true;
Columns.CellActivation = Activation.ActivateOnly;
}
///
/// 获取查询区域参数
///
///
protected object[] GetQueryCondition()
{
var OrderNo = "";
var JudgeStoveNo = "";
var BatchNo = "";
if (chkOrderNo.Checked)
OrderNo = txtOrderNo.Text;
if (chkJudgeStove.Checked)
JudgeStoveNo = txtJudgeStove.Text;
if (chkBatchNo.Checked)
BatchNo = txtBatchNo.Text;
return new object[]
{
chkPlineCode.Checked && (cboPline.CheckedItems.Count > 0)
? cboPline.CheckedItems.Select(p => p.DataValue.ToString()).ToArray()
: _plineCodes,OrderNo, JudgeStoveNo, BatchNo,chkExitsC.Checked?"1":"0",chkExitsL.Checked?"1":"0"
};
}
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
EntityHelper.ShowGridCaption(CrackDetectGrid.DisplayLayout.Bands[0]);
Resort();
SetStaticsInfoSum( ref CrackDetectGrid, new List()
{
"PlanIndoubleNum",
"PlanIndoubleWt",
"ProCount",
"ProWeight",
"ActCount",
"ActWeight"
}, true, true);
if (ob == null) return;
_plineCodes = comm.InitDropPlineCodePower("G", cboPline, ValidDataPurviewIds, ob);
Query();
}
private void chkStarts_CheckedChanged(object sender, EventArgs e)
{
txtOrderNo.Enabled = chkOrderNo.Checked;
txtJudgeStove.Enabled = chkJudgeStove.Checked;
txtBatchNo.Enabled = chkBatchNo.Checked;
txtOrderNo.Visible = chkOrderNo.Checked;
txtJudgeStove.Visible = chkJudgeStove.Checked;
txtBatchNo.Visible = chkBatchNo.Checked;
cboPline.Visible = chkPlineCode.Checked;
}
///
/// 汇总方法
///
///
///
///
protected void SetStaticsInfoSum(ref UltraGrid myGrid1, List alistColumns, bool clearExists,bool ShowCount)
{
try
{
var band = myGrid1.DisplayLayout.Bands[0];
if (clearExists)
band.Summaries.Clear();
band.Override.SummaryFooterCaptionVisible = DefaultableBoolean.False;
for (var i = 0; i < alistColumns.Count; i++)
{
try
{
if (!band.Columns.Exists(alistColumns[i])) continue;
var summary = band.Summaries.Add(SummaryType.Sum, band.Columns[alistColumns[i]]);
summary.SummaryDisplayArea = SummaryDisplayAreas.BottomFixed;
summary.SummaryPosition = SummaryPosition.UseSummaryPositionColumn;
summary.DisplayFormat = "{0}";
summary.Appearance.TextHAlign = HAlign.Right;
summary.Appearance.TextVAlign = VAlign.Middle;
summary.Appearance.FontData.Bold = DefaultableBoolean.True;
}
catch
{
// ignored
}
}
if (ShowCount )
{
var summary = band.Summaries.Add(SummaryType.Count, band.Columns[0]);
summary.SummaryDisplayArea = SummaryDisplayAreas.BottomFixed;
summary.SummaryPosition = SummaryPosition.UseSummaryPositionColumn;
summary.DisplayFormat = "共{0}条记录";
summary.Appearance.TextHAlign = HAlign.Left;
summary.Appearance.TextVAlign = VAlign.Middle;
summary.Appearance.FontData.Bold = DefaultableBoolean.True;
}
}
catch
{
}
}
}
}