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 { } } } }