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 CoreFS.CA06; using Core.Mes.Client.Common; using Infragistics.Win.UltraWinGrid; namespace Core.LgMes.Client.lgIntegrationQuery { public partial class FrmEntrustInfo : Core.Mes.Client.Common.frmStyleBase { public FrmEntrustInfo() { InitializeComponent(); } string role = "", username = ""; private void FrmEntrustInfo_Load(object sender, EventArgs e) { ultraDateTimeEditor1.DateTime = DateTime.Now; ultraDateTimeEditor2.DateTime = DateTime.Now; username = this.UserInfo.GetUserName(); role = this.UserInfo.GetRole(); } /// /// 菜单 /// /// /// public override void ToolBar_Click(object sender, string ToolbarKey) { switch (ToolbarKey) { case "Query": { proc_Query(); break; } case "Add": { proc_Add(); break; } case "Accept": { proc_Accept(); break; } case "Update": { proc_Update(); break; } case "Export": { try { Core.Mes.Client.Common.Globals.ulGridToExcel(ultraGrid1, Text); } catch (Exception ex) { MessageBox.Show(ex.Message); } break; } case "Close": { this.Close(); break; } } } public void proc_Query() { if (ultraDateTimeEditor2.DateTime.Date.Subtract(ultraDateTimeEditor1.DateTime.Date).Days > 180) { MessageBox.Show("查询时间不可超过6个月。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } if (ultraDateTimeEditor1.DateTime.Date > ultraDateTimeEditor2.DateTime.Date) { MessageBox.Show("查询开始日期不能大于结束日期!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } string strErr = ""; string dateBegin = this.ultraDateTimeEditor1.DateTime.ToString("yyyy-MM-dd 00:00:00"); string dateEnd = this.ultraDateTimeEditor2.DateTime.ToString("yyyy-MM-dd 23:59:59"); string sql = "SELECT HEATNO, STATIONCODE||DEVICENO STATIONCODE, STEELNAME, OPTMAN, OPTDATE, " + "ISACCEPT, ACCEPTMAN, ACCEPTTIME,SYSGUID,REMARK FROM QCM_ENTRUST_INFO WHERE " + "OPTDATE BETWEEN TO_DATE('" + dateBegin + "','YYYY-MM-DD HH24:MI:SS') AND TO_DATE('" + dateEnd + "','YYYY-MM-DD HH24:MI:SS') ORDER BY OPTDATE DESC"; try { //调用服务端方法 CoreClientParam CCP_LgEts = new CoreClientParam(); DataTable dt = new DataTable(); CCP_LgEts.ServerName = "Core.LgMes.Server.Common.ComDBExecute"; CCP_LgEts.MethodName = "doSimpleQuery"; CCP_LgEts.ServerParams = new object[] { sql }; CCP_LgEts.SourceDataTable = dt; this.ExecuteQueryToDataTable(CCP_LgEts, CoreInvokeType.Internal); if (dt != null && dt.Rows.Count > 0) { this.dataTable1.Rows.Clear(); DataRow dr; for (int iRow = 0; iRow < dt.Rows.Count; iRow++) { dr = this.dataTable1.NewRow(); for (int jCol = 0; jCol < dt.Columns.Count; jCol++) { if (this.dataTable1.Columns.Contains(dt.Columns[jCol].ColumnName)) { dr[dt.Columns[jCol].ColumnName] = dt.Rows[iRow][jCol]; } } this.dataTable1.Rows.Add(dr); } } ultraGrid1.UpdateData(); this.proc_SetUltraGridReadOnly(ultraGrid1); } catch { } } public void proc_Add() { if (string.IsNullOrEmpty(txt_heatno.Text.Trim())) { MessageBox.Show("输入炉号为空,不可下发"); return; } string v_heatno = txt_heatno.Text.Trim(), v_steel = "",v_station = "",v_device = "", strErr = ""; string remark = txt_remark.Text.Trim(); string sql = "SELECT to_number(STATIONCODE)||'#' STATIONCODE,PLANSTEEL,'连铸' V_DEVICE FROM (select * from stl_ccm_optinfo union select * from j#stl_ccm_optinfo) " + " where heatno = '{0}' and DISPOSALTIME = '01'"; sql = string.Format(sql, v_heatno.Substring(0, 9) + "A"); try { CommonClientToServer cctos = new CommonClientToServer(); cctos.ob = this.ob; // DataSet ds = DataSet ds = cctos.ExecuteQueryFunctions("Core.LgMes.Server.Common.ComDBExecute", "doSimpleQuery", sql, out strErr); if (string.IsNullOrEmpty(strErr) && ds.Tables[0].Rows.Count > 0) { for (int jCol = 0; jCol < ds.Tables[0].Columns.Count; jCol++) { if (ds.Tables[0].Columns[jCol].ColumnName == "STATIONCODE") v_station = ds.Tables[0].Rows[0][jCol].ToString(); else if (ds.Tables[0].Columns[jCol].ColumnName == "V_DEVICE") v_device = ds.Tables[0].Rows[0][jCol].ToString(); else if (ds.Tables[0].Columns[jCol].ColumnName == "PLANSTEEL") v_steel = ds.Tables[0].Rows[0][jCol].ToString(); } } else { MessageBox.Show("请输入系统中存在的炉号!"); return; } } catch(Exception e) { MessageBox.Show("下发失败!" + e.Message); return; } string strSql = "INSERT INTO QCM_ENTRUST_INFO(HEATNO, STATIONCODE, DEVICENO, STEELNAME, OPTMAN, OPTDATE, REMARK) " + " VALUES ('{0}','{1}','{2}','{3}','{4}',SYSDATE,'{5}')"; strSql = string.Format(strSql, v_heatno, v_station, v_device, v_steel, username, remark); try { //调用服务端方法 CoreClientParam CCP_LgEts = new CoreClientParam(); DataTable dt = new DataTable(); CCP_LgEts.ServerName = "Core.LgMes.Server.Common.ComDBExecute"; CCP_LgEts.MethodName = "ExcuteNoParameter"; CCP_LgEts.ServerParams = new object[] { strSql }; CCP_LgEts.SourceDataTable = dt; this.ExecuteQueryToDataTable(CCP_LgEts, CoreInvokeType.Internal); MessageBox.Show("下发成功!"); proc_Query(); } catch (Exception e) { MessageBox.Show("下发失败:" + e.Message + "!"); } } public void proc_Update() { if (string.IsNullOrEmpty(txt_remark.Text.Trim())) { MessageBox.Show("备注为空,不可更改"); return; } if (this.ultraGrid1.ActiveRow == null) { MessageBox.Show("请选中一条记录再做更改操作"); return; } string uuid = this.ultraGrid1.ActiveRow.Cells["SYSGUID"].Text.Trim(), strErr = "", remark = txt_remark.Text.Trim(); string strSql = "UPDATE QCM_ENTRUST_INFO SET REMARK = '{0}' WHERE SYSGUID = '{1}'"; strSql = string.Format(strSql, remark, uuid); try { //调用服务端方法 CoreClientParam CCP_LgEts = new CoreClientParam(); DataTable dt = new DataTable(); CCP_LgEts.ServerName = "Core.LgMes.Server.Common.ComDBExecute"; CCP_LgEts.MethodName = "ExcuteNoParameter"; CCP_LgEts.ServerParams = new object[] { strSql }; CCP_LgEts.SourceDataTable = dt; this.ExecuteQueryToDataTable(CCP_LgEts, CoreInvokeType.Internal); MessageBox.Show("备注修改成功!"); proc_Query(); } catch (Exception e) { MessageBox.Show("备注修改失败:" + e.Message + "!"); } } public void proc_Accept() { string strErr = ""; if (this.ultraGrid1.ActiveRow == null) return; string sysguid = this.ultraGrid1.ActiveRow.Cells["SYSGUID"].Text.Trim(); string sql = "UPDATE QCM_ENTRUST_INFO SET ISACCEPT = '是',ACCEPTMAN = '{0}',ACCEPTTIME = SYSDATE WHERE SYSGUID = '{1}' "; sql = string.Format(sql, username, sysguid); try { //调用服务端方法 CoreClientParam CCP_LgEts = new CoreClientParam(); DataTable dt = new DataTable(); CCP_LgEts.ServerName = "Core.LgMes.Server.Common.ComDBExecute"; CCP_LgEts.MethodName = "ExcuteNoParameter"; CCP_LgEts.ServerParams = new object[] { sql }; CCP_LgEts.SourceDataTable = dt; this.ExecuteQueryToDataTable(CCP_LgEts, CoreInvokeType.Internal); MessageBox.Show("接收成功!"); proc_Query(); } catch (Exception e) { MessageBox.Show("接收失败:" + e.Message + "!"); } } private void ultraGrid1_InitializeRow(object sender, Infragistics.Win.UltraWinGrid.InitializeRowEventArgs e) { if (e.Row.Cells["ISACCEPT"].Text.Trim() == "是") e.Row.Cells["ISACCEPT"].Appearance.BackColor = Color.Green; else e.Row.Cells["ISACCEPT"].Appearance.BackColor = Color.Red; } private void proc_SetUltraGridReadOnly(Infragistics.Win.UltraWinGrid.UltraGridBase ultGrid) { foreach (UltraGridRow row in ultGrid.Rows) { row.Activation = Activation.ActivateOnly; } } private void ultraGrid1_AfterRowActivate(object sender, EventArgs e) { txt_heatno.Text = this.ultraGrid1.ActiveRow.Cells["HEATNO"].Text.Trim(); txt_remark.Text = this.ultraGrid1.ActiveRow.Cells["REMARK"].Text.Trim(); } } }