using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using Core.Mes.Client.Comm.Control; using Core.Mes.Client.Comm.Tool; using Core.StlMes.Client.Mcp.Control.Entity; using Core.StlMes.Client.Mcp.Treatment.Entity; using CoreFS.CA06; using NPOI.HSSF.Record; namespace Core.StlMes.Client.Mcp.Treatment.Report { public partial class FrmEntrustQuery : FrmBase { protected string _plineCode = ""; private string[] plineCodes = { }; private List ShowColums = new List() { "ProjectName", "BatchNo", "PlineName", "JudgeStoveNo" }; public FrmEntrustQuery() { InitializeComponent(); IsLoadUserView = true; uceTimeType.SelectedIndex = 0; } public override void ToolBar_Click(object sender, string ToolbarKey) { switch (ToolbarKey) { case "Query": QueryApply(); break; case "Print": Print(); break; case "Export": Export(); break; case "View": View(); break; case "Close": Close(); break; case "Down": Down("1"); break; case "CancelDown": Down("0"); break; } } private void Export() { string title = ""; title += "委托单明细"; ultraGrid2.DisplayLayout.Bands[1].Hidden = true; GridHelper.ulGridToExcel(ultraGrid2, title); ultraGrid2.DisplayLayout.Bands[1].Hidden = false; } private void View() { if (ultraGrid2.ActiveRow == null) return; HttEntrustEntityPlusAll HttEntrustResultEntity; if (ultraGrid2.ActiveRow.HasParent()) { HttEntrustResultEntity = ultraGrid2.ActiveRow.ParentRow.ListObject as HttEntrustEntityPlusAll; } else { HttEntrustResultEntity = ultraGrid2.ActiveRow.ListObject as HttEntrustEntityPlusAll; } var down = new FormFileDown(ob, HttEntrustResultEntity.ReportPath); down.CtrlFileDown1.Button3.Visible = false; down.ShowDialog(); } protected override void OnLoad(EventArgs e) { base.OnLoad(e); RegEndTime.Value = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd 23:59:59")); RegStartTime.Value = DateTime.Parse(RegEndTime.Value.AddDays(1 - RegEndTime.Value.Day).ToString("yyyy-MM-dd 00:00:00")); plineCodes = HeatTreatment.comm.GetPlineCodeWithOther(ValidDataPurviewIds, ob); EntityHelper.ShowGridCaption(ultraGrid2.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(ultraGrid2.DisplayLayout.Bands[1]); EntityHelper.ShowGridCaption(ultraGrid3.DisplayLayout.Bands[0]); EntityHelper.ShowGridCaption(DataGrid.DisplayLayout.Bands[0]); HeatTreatment.comm.RefreshAndAutoSize(ultraGrid2, true); foreach (var ugc in DataGrid.DisplayLayout.Bands[0].Columns) { if (ugc.Hidden && !ShowColums.Contains(ugc.Key)) { ShowColums.Add(ugc.Key); } } } private void QueryApply() { var wf = new WaitingForm2("正在查询,请稍候...."); try { Cursor = Cursors.WaitCursor; var startTime = ""; var endTime = ""; var judgeNo = ""; var OrderNo = ""; var No = ""; var timeType = ""; var user = ""; if (chkTim.Checked) if (DateTime.Parse(RegStartTime.Value.ToString()) > DateTime.Parse(RegEndTime.Value.ToString())) { MessageUtil.ShowTips("选择时间区间错误,请重新选择!"); return; } else { startTime = RegStartTime.Value.ToString("yyyy-MM-dd HH:mm:ss"); endTime = RegEndTime.Value.ToString("yyyy-MM-dd HH:mm:ss"); timeType = uceTimeType.SelectedItem.DataValue.ToString2(); if (chkUser.Checked) user = txtUser.Text; } // else if (!chkJugeHeatNo.Checked) // if (MessageUtil.ShowYesNoAndQuestion("未加时间条件,查询时间可能比较长,请确定是否继续查询?") == DialogResult.No) return; if (chkJudgeStove.Checked) judgeNo = txtJudgeStove.Text.Trim(); if (chkOrderNo.Checked) OrderNo = txtOrderNo.Text.Trim(); if (chbTreatment.Checked) No = txtTreatment.Text.Trim(); List listSource = EntityHelper.GetData( "com.steering.mes.mcp.common.frmEntrust.doQueryApply", new object[] { startTime, endTime, No, judgeNo, OrderNo, plineCodes, uosStatus.Value.ToString2(), uosTarget.Value.ToString2(), timeType,user }, ob); List listProject = EntityHelper.GetData( "com.steering.mes.mcp.common.frmEntrust.QueryProject", new object[] { listSource.Select(p => p.SubcontractNo).ToArray() }, ob); listSource.ForEach(p => p.ProjectData = listProject.Where(q => q.SubcontractNo == p.SubcontractNo && q.SubcontractNoSeq == p.SubcontractNoSeq).OrderBy(q=>q.ProjectSeq).ThenBy(q => q.ProjectCode).ToList()); // httEntrustProjectEntityBindingSource.DataSource = listSource; httEntrustProcessEntityBindingSource.Clear(); httEntrustResultEntityBindingSource.Clear(); ultraExpandableGroupBox1.Expanded = false; httEntrustEntityAllBindingSource.DataSource = listSource; comm.RefreshAndAutoSize(ultraGrid2, new[] { "StdName"}); } catch (Exception ex) { if (ex.Message.ToString2() != "") MessageBox.Show(ex.Message); } finally { wf.Close(); Cursor = Cursors.Default; } } private void ultraGrid2_AfterRowActivate(object sender, EventArgs e) { ultraGrid2.UpdateData(); if (ultraGrid2.ActiveRow.HasParent()) return; var list = ultraGrid2.ActiveRow.ListObject as HttEntrustEntityPlusAll; List listSource = EntityHelper.GetData( "com.steering.mes.mcp.common.frmEntrust.QueryProcess", new object[] { list.SubcontractNo, list.SubcontractNoSeq }, ob); httEntrustProcessEntityBindingSource.DataSource = listSource; comm.RefreshAndAutoSize(ultraGrid3, new[] { "" }); if (list.SubcontractLog == "40" || list.SubcontractLog == "50" || list.SubcontractLog == "60") { ultraExpandableGroupBox1.Expanded = true; } else { ultraExpandableGroupBox1.Expanded = false; } for (int i = 0; i < DataGrid.DisplayLayout.Bands[0].Columns.Count; i++) { if (!ShowColums.Contains(DataGrid.DisplayLayout.Bands[0].Columns[i].Key)) DataGrid.DisplayLayout.Bands[0].Columns[i].Hidden = true; } List listResult = EntityHelper.GetData( "com.steering.mes.mcp.common.frmEntrust.doQueryResult", new object[] { list.SubcontractNo, list.SubcontractNoSeq }, ob); httEntrustResultEntityBindingSource.DataSource = listResult; comm.RefreshAndAutoSize(DataGrid, new[] { "ReportPath" }); } protected void Down(string Flag) { HttEntrustEntityPlusAll HttEntrustEntityPlusAll; if (ultraGrid2.ActiveRow.HasParent()) { HttEntrustEntityPlusAll = ultraGrid2.ActiveRow.ParentRow.ListObject as HttEntrustEntityPlusAll; } else { HttEntrustEntityPlusAll = ultraGrid2.ActiveRow.ListObject as HttEntrustEntityPlusAll; } var ccp = new CoreClientParam(); ccp.ServerName = "com.steering.mes.mcp.common.frmEntrust"; ccp.MethodName = "Down"; ccp.ServerParams = new object[] { Flag, HttEntrustEntityPlusAll.SubcontractNo, HttEntrustEntityPlusAll.SubcontractNoSeq }; ccp = ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode != -1) { if (ccp.ReturnInfo.Equals("成功!")) { QueryApply(); } else { MessageUtil.ShowTips(ccp.ReturnInfo); } } } protected void Print() { HttEntrustEntityPlusAll HttEntrustEntityPlusAll; if (ultraGrid2.ActiveRow.HasParent()) { HttEntrustEntityPlusAll = ultraGrid2.ActiveRow.ParentRow.ListObject as HttEntrustEntityPlusAll; } else { HttEntrustEntityPlusAll = ultraGrid2.ActiveRow.ListObject as HttEntrustEntityPlusAll; } if (string.CompareOrdinal(HttEntrustEntityPlusAll.SubcontractLog, "24") < 0 || HttEntrustEntityPlusAll.SubcontractLog == "25" || HttEntrustEntityPlusAll.SubcontractLog == "26" || HttEntrustEntityPlusAll.SubcontractLog == "27" ) { if (HttEntrustEntityPlusAll.SubcontractTarget == "0") { MessageBox.Show("只有管理部门审核通过的才能打印委托单"); return; } } string strurl = ""; strurl = "http://172.54.10.42:8080/webroot/decision/view/report?viewlet=RepMchNoticeOfEntrustedProcessing.cpt&__embed__=true" + "&SUBCONTRACT_NO=" + HttEntrustEntityPlusAll.SubcontractNo; FrmRepExcel fBug = new FrmRepExcel(ob, strurl); fBug.AutoSize = true; fBug.MaximumSize = new Size(Screen.PrimaryScreen.WorkingArea.Width, Screen.PrimaryScreen.WorkingArea.Height); fBug.WindowState = FormWindowState.Maximized; fBug.Text = "委托单"; fBug.Show(); } private void DataGrid_InitializeRow(object sender, Infragistics.Win.UltraWinGrid.InitializeRowEventArgs e) { for (int i = 0; i < DataGrid.DisplayLayout.Bands[0].Columns.Count; i++) { if (e.Row.Cells[i].Value.ToString2() != "" && !ShowColums.Contains(DataGrid.DisplayLayout.Bands[0].Columns[i].Key)) DataGrid.DisplayLayout.Bands[0].Columns[i].Hidden = false; } } private void utUpLoad1_EditorButtonClick(object sender, Infragistics.Win.UltraWinEditors.EditorButtonEventArgs e) { var down = new FormFileDown(ob, DataGrid.ActiveCell.Text); down.CtrlFileDown1.Button3.Visible = false; down.ShowDialog(); } private void chkTim_CheckedChanged(object sender, EventArgs e) { plDate.Visible = chkTim.Checked; chkUser.Visible = uceTimeType.SelectedIndex > 0; txtUser.Visible = chkUser.Checked && chkUser.Visible; lblChoose.Visible = chkUser.Checked && chkUser.Visible; txtTreatment.Visible = chbTreatment.Checked; txtOrderNo.Visible = chkOrderNo.Checked; txtJudgeStove.Visible = chkJudgeStove.Checked; } private void lblChoose_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { txtUser.Text = this.UserInfo.GetUserName(); } } }