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();
}
}
}