| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401 |
- using System;
- using System.Collections.Generic;
- using System.Data;
- using System.Drawing;
- using System.Windows.Forms;
- using System.Threading;
- using Core.LgMes.Client.lgClassModel;
- using System.Collections;
- using System.Reflection;
- using CoreFS.CA06;
- using Core.Mes.Client.Common;
- using Core.LgMes.Client.LgResMgt;
- using Core.LgMes.Client.LgIntegrationQuery;
- using Core.LgMes.Client.Report;
- using Core.LgMes.Client.Comm;
- using System.Net;
- namespace Core.LgMes.Client.LgJobMgt
- {
- public partial class frmCasJob : CommonClientToServer
- {
- #region " Class Member Variable"
- private string _heatProcessNo = ""; // 加热处理号
- private string _smeltingID = ""; // 熔炼号
- private string _oldSmelt = ""; // 保存上一个炉号
- private string _stationCode = ""; // 岗位编号
- private string _dealTime = ""; // 处理次数
- private string _shiftCode = ""; // 班次编码
- private DataTable _dtCraftElement = null; // 工艺化学成分信息表
- private DataTable _dtTemperature = null; // 温度
- private DataTable _dtSamplingOfCvt = null; // 转炉采样数据表
- private DataTable _dtSamplingOfCas = null; // 吹氩采样数据表
- private DataTable _dtMaterial = null; // 存储辅料信息
- private DataTable _dtCraftStdVal = null; // 炼钢工艺标准值
- private CommandClass _commClass; // 消息发送类
- private string _DEVICE_POSITION = "CAS01"; // 设备位置
- private int _DEVICE_POS = 1; // 设备号
- private Thread _getDataThread; // 取数据线程
- private Thread _setDataThread; // 刷新数据线程
- private bool _bIfGetData = true; // 控制取数据线程循环的标志
- private bool _bIfSetData = true; // 控制刷新数据线程循环的标志
- private bool _bResetDataFlag = false; // 清空所有数据标志,True表示已经清空
- private ArrayList _listHeatProcess = null; // 存储加热处理号的数组列表
- private string _devPos = ""; // 当前设备位置的全称
- private bool _bHandThrow = false; // 手投料标志
- private bool _bClearFlag = false;
- private TrackObjectInfo _tmpObjTrack; // 实时跟踪信息类 用于存放当前实时跟踪信息 起一个中间过渡的缓冲
- private TrackObjectInfo _objTrackBuffer; // 用于实时刷新实时跟踪信息的缓冲区
- private CraftElement _tmpObjCraftEle; // 存放工艺化学成分信息的类
- private CraftElement _objCraftEleBuffer; // 用于实时刷新工艺化学成分信息的缓冲区
- private CasAdditive _procAdditive; // 存放过程添加剂信息
- private CasAdditive _additiveBuffer; // 用于刷新过程添加剂信息的缓冲区
- private Hashtable _htPlanInfo; // 用于作业计划信息的表字段数据
- private Hashtable _htOptInfo; // 用于存储操作信息的表字段数据
- private delegate void SetDataThreadDelegate(); // 刷新数据线程的一个委托方法,目的是达到界面所有数据刷新同步
- #endregion
- #region " Construct Function "
- public frmCasJob()
- {
- InitializeComponent();
- // 初始化成员变量
- _commClass = new CommandClass();
- _tmpObjTrack = new TrackObjectInfo();
- _objTrackBuffer = new TrackObjectInfo();
- _tmpObjCraftEle = new CraftElement();
- _objCraftEleBuffer = new CraftElement();
- _procAdditive = new CasAdditive();
- _additiveBuffer = new CasAdditive();
- _htOptInfo = new Hashtable();
- _htPlanInfo = new Hashtable();
- ucCasDevInfo1.m_imageDefault = imageList1.Images[4];
- }
- #endregion
- #region " Init Form Element "
- private void frmCasJob_Load(object sender, EventArgs e)
- {
- ucCasPlanTime1.ob = this.ob;
- ucChemelEment1.ob = this.ob;
- InitDataSourse();
- GenerateTableFrame();
- GetDevicePosition();
- SetUserControlDelegate();
- GetMaterialData();
- StartUpThread();
- SetHopperInfo();
- }
- private void InitDataSourse()
- {
- this.ultraDataSource1.Rows.Add(new object[] { "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" });
- this.ultraDataSource2.Rows.Add(new object[] { "", "", "", "" });
- this.ultraDataSource3.Rows.Add(new object[] { "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" });
- }
- /// <summary>
- /// 生成化学成分的表架构
- /// </summary>
- private void GenerateTableFrame()
- {
- _dtTemperature = new DataTable("temperature");
- _dtTemperature.Columns.Add(new DataColumn("项目名", typeof(String)));
- _dtTemperature.Columns.Add(new DataColumn("实际值", typeof(String)));
- _dtTemperature.Columns.Add(new DataColumn("id", typeof(String)));
- _dtTemperature.Columns.Add(new DataColumn("采样时间", typeof(String)));
- _dtTemperature.Columns.Add(new DataColumn("设定范围", typeof(String)));
- this.ulgridTempInfo.DataSource = this._dtTemperature;
- this.ulgridTempInfo.DisplayLayout.Bands[0].Columns[0].Width = 70;
- this.ulgridTempInfo.DisplayLayout.Bands[0].Columns[0].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit;
- this.ulgridTempInfo.DisplayLayout.Bands[0].Columns[1].Width = 58;
- this.ulgridTempInfo.DisplayLayout.Bands[0].Columns[1].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit;
- this.ulgridTempInfo.DisplayLayout.Bands[0].Columns[2].Hidden = true;
- this.ulgridTempInfo.DisplayLayout.Bands[0].Columns[3].Width = 120;
- this.ulgridTempInfo.DisplayLayout.Bands[0].Columns[3].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit;
- this.ulgridTempInfo.DisplayLayout.Bands[0].Columns[4].Width = 75;
- this.ulgridTempInfo.DisplayLayout.Bands[0].Columns[4].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit;
- _dtTemperature.Rows.Add(new object[] { "一倒" });
- _dtTemperature.Rows.Add(new object[] { "出钢(终点)" });
- _dtTemperature.Rows.Add(new object[] { "吹氩氩前" });
- _dtTemperature.Rows.Add(new object[] { "吹氩在站" });
- _dtTemperature.Rows.Add(new object[] { "吹氩氩后" });
- }
- /// <summary>
- /// 获取物料信息
- /// </summary>
- private void GetMaterialData()
- {
- try
- {
- string strErr = "";
- string strSqlID = "";
- strSqlID = "GetMaterialData.Select";//此ID为XML文件ID
- //查询物料配置信息
- DataSet ds = this.ExecuteQueryFunctions("Core.LgMes.Server.LgJobMgt.ClassBofJob",
- "GetMaterialData", strSqlID, out strErr);
- if (strErr == "" && ds != null)
- {
- _dtMaterial = ds.Tables[0];
- }
- }
- catch { }
- }
- #endregion
- #region " Thread Handle "
- /// <summary>
- /// 启动线程主程序
- /// </summary>
- private void StartUpThread()
- {
- ThreadStart ts = new ThreadStart(GetDataThread);
- _getDataThread = new Thread(ts);
- _getDataThread.Name = "GetDataThread " + _DEVICE_POSITION;
- _getDataThread.Start();
- System.Threading.Thread.Sleep(1000);
- ThreadStart ts1 = new ThreadStart(SetDataThread);
- _setDataThread = new Thread(ts1);
- _setDataThread.Name = "SetDataThread " + _DEVICE_POSITION;
- _setDataThread.Start();
- }
- /// <summary>
- /// 取数据线程程序
- /// </summary>
- private void GetDataThread()
- {
- while (_bIfGetData)
- {
- if (!this.On_Off_Thread)
- {
- System.Threading.Thread.Sleep(500);
- continue;
- }
- try
- {
- GetDataFromServer();
- Thread.Sleep(2000);
- }
- catch { }
- }
- }
- /// <summary>
- /// 刷新数据线程程序
- /// </summary>
- private void SetDataThread()
- {
- while (_bIfSetData)
- {
- if (!this.On_Off_Thread)
- {
- System.Threading.Thread.Sleep(500);
- continue;
- }
- try
- {
- this.Invoke(new SetDataThreadDelegate(SetDataOperate));
- Thread.Sleep(1000);
- }
- catch { }
- }
- }
- private void GetDataFromServer()
- {
- GetTrackInfoData();
- GetHeatProcessList();
- JudgeHeatProcess();
- GetPlanInfo();
- GetOptInfo();
- GetDevPosInfo();
- //GetCraftEleInfo();
- ucChemelEment1.GetCraftEleInfo(_smeltingID, "D0" + _DEVICE_POS, "S","");
- if (_htPlanInfo["V_HEAT_ID"] != null)
- ucChemelEment1.GetStandardElement(_smeltingID);
- //GetSampleData();
- GetSamplingOfPost();
- JudgeSmeltID();
- GetAdditiveData();
- ucCasPlanTime1.GetPlanAndFactTime(_smeltingID);
- if (_htPlanInfo != null && _htPlanInfo.Contains("STEEL"))
- _dtCraftStdVal = CStaticMethod.GetJobStandardTemp(this.ob, _htPlanInfo["STEEL"].ToString());
- }
- private void SetDataOperate()
- {
- lock (this)
- {
- if (_heatProcessNo == "")
- {
- ResetAllData();
- return;
- }
- _bResetDataFlag = false;
- FillUserControlData();
- //FillCraftElement();
- FillTemperatureData();
- SetAdditiveData();
- HdctMaterialBind();
- }
- }
- #endregion
- #region " Delegate "
- private void ucCasDevInfo1_ClickCellButton(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e)
- {
- if (e.Cell.Value.ToString().Equals(string.Empty) || _listHeatProcess == null) return;
- switch (e.Cell.Column.Key)
- {
- case "HCW":
- {
- ClassManualOperate.ManualOperateEntrance(_heatProcessNo, _devPos, this.ob, _objTrackBuffer);
- break;
- }
- case "DDW":
- {
- ClassManualOperate.ManualOperateEntrance(_heatProcessNo, _devPos, this.ob, _objTrackBuffer);
- break;
- }
- case "CLW":
- {
- ClassManualOperate.ManualOperateEntrance(_heatProcessNo, _devPos, this.ob, _objTrackBuffer);
- break;
- }
- default:
- break;
- }
- }
- private void ucCasDevInfo1_CellListSelect(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e)
- {
- if (_heatProcessNo.Length < 11)
- return;
- string keyStr = ucCasDevInfo1.ultraGrid1.ActiveCell.Column.Key;
- this.ucCasDevInfo1.ultraGrid1.UpdateData();
- string valueStr = ucCasDevInfo1.ultraGrid1.ActiveCell.Value.ToString();
- if (keyStr == "DESLAGGFLAG") //是否顶渣
- {
- try
- {
- //更新数据
- ClassManualUpdateInfo.UpdateTableField(_heatProcessNo, "STL_CAS_OPTINFO", keyStr, "VARCHAR2",
- valueStr, ob);
- ucCasDevInfo1.ultraGrid1.ActiveCell.Value = valueStr;
- }
- catch (Exception ex)
- {
- string Msg = ex.Message;
- MessageBox.Show("数据格式错误,请改正!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
- }
- }
- }
- private void ucCasDevInfo1_KeyDown(object sender, KeyEventArgs e)
- {
- if (e.KeyCode != Keys.Enter || _heatProcessNo.Length < 11)
- return;
- if (MessageBox.Show("是否确认要修改当前值?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Asterisk) == DialogResult.No)
- return;
- this.ucCasDevInfo1.ultraGrid1.UpdateData();
- string keyStr = ucCasDevInfo1.ultraGrid1.ActiveCell.Column.Key;
- string valueStr;
- if (keyStr == "SETSTAYTIME")
- {
- try
- {
- if (ucCasDevInfo1.ultraGrid1.ActiveCell.Value.ToString() != "")
- {
- valueStr = ucCasDevInfo1.ultraGrid1.ActiveCell.Value.ToString();
- //作业数据
- ClassManualUpdateInfo.UpdateTableField(_heatProcessNo, "STL_CAS_OPTINFO", keyStr, "VARCHAR2",
- valueStr, ob);
- }
- else
- {
- MessageBox.Show("不能为空值,重新输入!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
- return;
- }
- ucCasDevInfo1.ultraGrid1.ActiveCell.Value = valueStr;
- }
- catch (Exception ex)
- {
- string Msg = ex.Message;
- MessageBox.Show("修改错误!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
- }
- }
- }
- private void ucBofPlan1_ClickCellButton(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e)
- {
- switch (e.Cell.Column.Key)
- {
- case "HEATNO": // 熔炼号
- SmeltClickCellButton(e.Cell.Value.ToString(), e.Cell);
- break;
- case "SHIFTCODE": // 班次
- break;
- default:
- break;
- }
- }
- /// <summary>
- /// 熔炼号点击事件
- /// </summary>
- /// <param name="szRLH"></param>
- /// <param name="cell"></param>
- private void SmeltClickCellButton(string szRLH, Infragistics.Win.UltraWinGrid.UltraGridCell cell)
- {
- frmJobPlanInfo frmPlan = new frmJobPlanInfo(_DEVICE_POS.ToString() + "#吹氩", _DEVICE_POSITION);
- frmPlan.Location = CStaticMethod.GetChildWindowLocation(frmPlan.Size);
- frmPlan.ShowDialog();
- if (frmPlan._currSmeltingID != string.Empty && cell.Text == string.Empty)
- {
- cell.Value = frmPlan._currSmeltingID;
- // this._commClass.setHeatID(_heatProcessNo);
- // this._commClass.setChargingCommand("MOLSTL", _DEVICE_POSITION + "_DEVICE", frmPlan._currSmeltingID);
- }
- else if (frmPlan._currSmeltingID != string.Empty && cell.Text != string.Empty)
- MessageBox.Show("本岗位有炉号信息,暂时不能加载!", "提示");
- }
- /// <summary>
- /// 等待位点击事件
- /// </summary>
- /// <param name="strPos"></param>
- /// <param name="ar"></param>
- /// <param name="initNo"></param>
- /// <param name="strCurrPos"></param>
- private void DdwCellButton(string strPos, int initNo, string strCurrPos)
- {
- frmCasOperate frm = new frmCasOperate();
- frm.Location = CStaticMethod.GetChildWindowLocation(frm.Size);
- frm.InitNo = initNo;
- frm._devPos = strPos;
- if (_htPlanInfo["CAST_ID"] != null)
- frm.CAST_ID =Convert.ToInt16(_htPlanInfo["CAST_ID"].ToString());
- frm.ShowDialog();
- if (frm.Tag == null) return;
- string str = "", strMsg = "";
- string strSme = _smeltingID;
- string strInOrOut = "LEAVETIME";
- bool blIDLE = false;
- switch (frm.Tag.ToString())
- {
- case "IN":
- RealDataTrackObjectInfor objTrack = (RealDataTrackObjectInfor)_objTrackBuffer.hList[_DEVICE_POSITION + "_DEVICE"];
- RealDataTrackObjectInfor objTrackFrt = (RealDataTrackObjectInfor)_objTrackBuffer.hList[_DEVICE_POSITION + "_FRONT"];
- if (!string.IsNullOrEmpty(objTrack.OBJECTID) && string.IsNullOrEmpty(objTrackFrt.OBJECTID))
- {
- blIDLE = true;
- str = _DEVICE_POSITION + "_FRONT";
- strMsg = "熔炼号: " + strSme + " 正常从 " + strCurrPos + " 进站去 等待位 \n 是否确认?";
- }
- else if (string.IsNullOrEmpty(objTrack.OBJECTID))
- {
- str = _DEVICE_POSITION + "_DEVICE";
- strMsg = "熔炼号: " + strSme + " 正常从 " + strCurrPos + " 进站去 处理位 \n 是否确认?";
- }
- strInOrOut = "";
- break;
- case "OUT":
- string strOut = "";
- //hengxing
- //CallingMessage par = new CallingMessage();
- //par.ServerName = "lgJobMgt";
- //par.AssemblyName = "Core.LgMes.Server.lgJobMgt";
- //par.ClassName = "Core.LgMes.Server.lgJobMgt.classTrackObjectInfo";
- //par.MethodName = "GetNextPos";
- //par.args = new object[] { _heatProcessNo };
- object obj = null;// ClientCommon._RemotingHelp.ExecuteMethod(par, out strOut);
- if (obj == null) MessageBox.Show(strOut);
- else
- {
- str = obj.ToString();
- strMsg = "熔炼号: " + strSme + " 正常从 " + strCurrPos + " 出站去 " + GetNextProcName(str) + " \n 是否确认?";
- strInOrOut = "LEAVETIME";
- }
- break;
- case "GONEXT":
- strOut = "";
- //hengxing
- //CallingMessage parr = new CallingMessage();
- //parr.ServerName = "lgJobMgt";
- //parr.AssemblyName = "Core.LgMes.Server.lgJobMgt";
- //parr.ClassName = "Core.LgMes.Server.lgJobMgt.classTrackObjectInfo";
- //parr.MethodName = "GetNextPos";
- //parr.args = new object[] { _heatProcessNo };
- object obj1 = null;// ClientCommon._RemotingHelp.ExecuteMethod(parr, out strOut);
- if (obj1 == null) MessageBox.Show(strOut);
- else
- {
- str = obj1.ToString();
- strMsg = "熔炼号: " + strSme + " 正常从 " + strCurrPos + " 去 下道工序(" + GetNextProcName(str) + ") \n 是否确认?";
- strInOrOut = "LEAVETIME";
- }
- break;
- case "GOLFS1":
- str = "LFS01_IDLE";
- strMsg = "熔炼号: " + strSme + " 异常从 " + strCurrPos + " 去 1#精炼炉缓冲位 \n 是否确认?";
- break;
- case "GOLFS2":
- str = "LFS02_IDLE";
- strMsg = "熔炼号: " + strSme + " 异常从 " + strCurrPos + " 去 2#精炼炉缓冲位 \n 是否确认?";
- break;
- case "GOCAS1":
- str = "CAS01_IDLE";
- strMsg = "熔炼号: " + strSme + " 异常从 " + strCurrPos + " 去 1#吹氩站缓冲位 \n 是否确认?";
- strInOrOut = "";
- break;
- case "GOCAS2":
- str = "CAS02_IDLE";
- strMsg = "熔炼号: " + strSme + " 异常从 " + strCurrPos + " 去 2#吹氩站缓冲位 \n 是否确认?";
- strInOrOut = "";
- break;
- case "GOCAS3":
- str = "CAS03_IDLE";
- strMsg = "熔炼号: " + strSme + " 异常从 " + strCurrPos + " 去 3#吹氩站缓冲位 \n 是否确认?";
- strInOrOut = "";
- break;
- case "GOCCM1":
- str = "CCM01_IDLE";
- strMsg = "熔炼号: " + strSme + " 异常从 " + strCurrPos + " 去 1#连铸机缓冲位 \n 是否确认?";
- break;
- case "GOCCM2":
- str = "CCM02_IDLE";
- strMsg = "熔炼号: " + strSme + " 异常从 " + strCurrPos + " 去 2#连铸机缓冲位 \n 是否确认?";
- break;
- case "GOCCM3":
- str = "CCM03_IDLE";
- strMsg = "熔炼号: " + strSme + " 异常从 " + strCurrPos + " 去 3#连铸机缓冲位 \n 是否确认?";
- break;
- case "GOCCM4":
- str = "CCM04_IDLE";
- strMsg = "熔炼号: " + strSme + " 异常从 " + strCurrPos + " 去 0#连铸机缓冲位 \n 是否确认?";
- break;
- case "GORHS1":
- str = "RHS01_IDLE";
- strMsg = "熔炼号: " + strSme + " 异常从 " + strCurrPos + " 去 1#RH炉缓冲位 \n 是否确认?";
- break;
- case "OVER":
- str = _DEVICE_POSITION+"_OVER";
- strMsg = "熔炼号: " + strSme + " 任务强制结束";
- break;
- }
- if (str != "")
- {
- if (MessageBox.Show(strMsg, "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.Yes)
- {
- //处理处理有炉号,IDLE位加载到等待位的情况
- if (blIDLE == true)
- {
- RealDataTrackObjectInfor objTrackIDLE = (RealDataTrackObjectInfor)_objTrackBuffer.hList[_DEVICE_POSITION + "_IDLE"];
- _commClass.setHeatID(objTrackIDLE.OBJECTID);
- }
- else
- _commClass.setHeatID(_heatProcessNo);
- _commClass.goNextPosCvtCmmd(strPos, str);
- if (strInOrOut != "")
- {
- RealDataCommand realDataCommand = new RealDataCommand();
- realDataCommand.COMMANDTYPE = "SCHEDULE_SET";
- realDataCommand.OBJECTTYPE = "PROCVALUE";
- realDataCommand.OBJECTPOS = _devPos;
- realDataCommand.OBJECTID = _heatProcessNo;
- realDataCommand.OBJECTLINKTABLE = "JOB_CAS_OPTINFO";
- realDataCommand.OBJECTLINKKEY1 = _smeltingID;
- realDataCommand.OBJECTLINKKEY2 = strInOrOut;
- realDataCommand.VALUETYPE = "DATE";
- realDataCommand.STR_VALUE = System.DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
- string szOut = "";
- //hengxing
- //CallingMessage par = new CallingMessage();
- //par.ServerName = "lgJobMgt";
- //par.AssemblyName = "Core.LgMes.Server.lgJobMgt";
- //par.ClassName = "Core.LgMes.Server.lgJobMgt.classSendCommand";
- //par.MethodName = "ExceptionalUpdateTableField";
- //par.args = new object[] { realDataCommand };
- //ClientCommon._RemotingHelp.ExecuteMethod(par, out szOut);
- if (szOut != "")
- MessageBox.Show("命令发送不成功!");
- }
- }
- }
- }
- private void ucCasTimeInfo1_ClickCellButton(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e)
- {
- ClassManualUpdateInfo.SetCellDateTime(e.Cell, _heatProcessNo, this.ob); //弹出时间更新窗体更新时间
- }
- private void ucCasTimeInfo1_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
- {
- if (e.KeyCode != Keys.Enter || _heatProcessNo.Length < 11)
- return;
- this.ucCasTimeInfo1.ultraGrid1.UpdateData();
- string keyStr = ucCasTimeInfo1.ultraGrid1.ActiveCell.Column.Key;
- DateTime valueStr;
- string UptValue = "";
- if (keyStr == "ARRIVETIME" || keyStr == "LEAVETIME" ||
- keyStr == "BLOWARSTARTTIME" || keyStr == "BLOWARENDTIME" ||
- keyStr == "CASSTARTTIME" || keyStr == "CASENDTIME" ||
- keyStr == "FEEDSILKBEGINTIME" || keyStr =="FEEDSILKCLOSETIME")
- {
- try
- {
- if (ucCasTimeInfo1.ultraGrid1.ActiveCell.Value.ToString() != "")
- UptValue = ((DateTime)ucCasTimeInfo1.ultraGrid1.ActiveCell.Value).ToString("yyyy-MM-dd HH:mm");
- else
- UptValue = "";
- //更新时间
- ClassManualUpdateInfo.UpdateTableField(_heatProcessNo, "STL_CAS_OPTINFO", keyStr, "DATE",
- UptValue, ob);
- ucCasTimeInfo1.ultraGrid1.ActiveCell.Value = UptValue;
- }
- catch (Exception ex)
- {
- string Msg = ex.Message;
- MessageBox.Show("日期输入格式错误,请改正!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
- }
- }
- }
-
- /// <summary>
- /// 将下道工序编码转换为中文名称
- /// </summary>
- /// <param name="str"></param>
- /// <returns></returns>
- private string GetNextProcName(string str)
- {
- if (str.Length < 5) return "";
- switch (str.Substring(0, 5))
- {
- case "CAS01":
- return "1#吹氩站";
- case "CAS02":
- return "2#吹氩站";
- case "CAS03":
- return "3#吹氩站";
- case "LFS01":
- return "1#精炼炉";
- case "LFS02":
- return "2#精炼炉";
- case "LFS03":
- return "3#精炼炉";
- case "CCM01":
- return "1#连铸机";
- case "CCM02":
- return "2#连铸机";
- case "CCM03":
- return "3#连铸机";
- case "CCM04":
- return "0#连铸机";
- default:
- return "";
- }
- }
- #endregion
- #region " Commonly Function "
- /// <summary>
- /// 获取当前设备的后台实时跟踪信息
- /// </summary>
- private void GetTrackInfoData()
- {
- string strErr = "";
- ArrayList arry = new ArrayList();
- arry.Add("ReceiveTrackObjectData.Select");//此ID为XML文件ID
- arry.Add(_DEVICE_POSITION);
- //获取指定岗位后台实时跟踪信息
- DataSet ds = this.ExecuteQueryFunctions("Core.LgMes.Server.LgJobMgt.ClassTrackObjectInfo",
- "ReceiveTrackObjectData", arry, out strErr);
- if (strErr == "" && ds != null)
- {
- DataSetToTrackObject(ref ds, ref _tmpObjTrack);
- }
- }
- /// <summary>
- /// 获得加热处理号
- /// </summary>
- private void GetHeatProcessList()
- {
- try
- {
- _listHeatProcess = new ArrayList();
- string Key = _DEVICE_POSITION + "_IDLE";
- string szIdle = "", szFront = "", szDevice = "";
- RealDataTrackObjectInfor objTrack = (RealDataTrackObjectInfor)_objTrackBuffer.hList[Key];
- szIdle = (!string.IsNullOrEmpty(objTrack.OBJECTID)) ? objTrack.OBJECTID + objTrack.DEVICESTATES : "";
- Key = _DEVICE_POSITION + "_FRONT";
- objTrack = (RealDataTrackObjectInfor)_objTrackBuffer.hList[Key];
- szFront = (!string.IsNullOrEmpty(objTrack.OBJECTID)) ? objTrack.OBJECTID + objTrack.DEVICESTATES : "";
- Key = _DEVICE_POSITION + "_DEVICE";
- objTrack = (RealDataTrackObjectInfor)_objTrackBuffer.hList[Key];
- szDevice = (!string.IsNullOrEmpty(objTrack.OBJECTID)) ? objTrack.OBJECTID + objTrack.DEVICESTATES : "";
- _listHeatProcess.Add(szIdle); //Idle (缓冲位)
- _listHeatProcess.Add(szFront); //Front (等待位)
- _listHeatProcess.Add(szDevice); //device (处理位)
- }
- catch (Exception ex)
- {
- string msg = ex.Message;
- _listHeatProcess = null;
- }
- }
- /// <summary>
- /// 对获取到的加热处理号进行判断
- /// </summary>
- private void JudgeHeatProcess()
- {
- try
- {
- if (_listHeatProcess.Count < 3)
- return;
- _heatProcessNo = "";
- _devPos = "";
- if (_listHeatProcess[0].ToString().Length > (int)OBJLEN.nHeatProcessNo)
- {
- string strHeat = _listHeatProcess[0].ToString();
- _heatProcessNo = strHeat.Substring(0, (int)OBJLEN.nHeatProcessNo);
- _devPos = GetDevIdleCodeOfCas(_DEVICE_POS);
- }
- if (_listHeatProcess[1].ToString().Length > (int)OBJLEN.nHeatProcessNo)
- {
- string strHeat = _listHeatProcess[1].ToString();
- _heatProcessNo = strHeat.Substring(0, (int)OBJLEN.nHeatProcessNo);
- _devPos = GetDevFrontCodeOfCas(_DEVICE_POS);
- }
- if (_listHeatProcess[2].ToString().Length > (int)OBJLEN.nHeatProcessNo)
- {
- string strHeat = _listHeatProcess[2].ToString();
- _heatProcessNo = strHeat.Substring(0, (int)OBJLEN.nHeatProcessNo);
- _devPos = GetDevDeviceCodeOfCas(_DEVICE_POS);
- }
- _smeltingID = (_heatProcessNo.Length > (int)OBJLEN.nHeatNo) ? CStaticMethod.getSmeltingID(_heatProcessNo) : "";
- _stationCode = (_heatProcessNo.Length > (int)OBJLEN.nHeatNo) ? _heatProcessNo.Substring(1, (int)OBJLEN.nDevCode) : "";
- _dealTime = (_heatProcessNo.Length > (int)OBJLEN.nHeatNo) ? _heatProcessNo.Substring(3, (int)OBJLEN.nDealTime) : "";
- }
- catch
- {
- return;
- }
- }
- /// <summary>
- /// 熔炼号判断
- /// </summary>
- private void JudgeSmeltID()
- {
- if (!this._oldSmelt.Equals(this._smeltingID))
- this._oldSmelt = this._smeltingID;
- }
- /// <summary>
- /// 获取转炉计划信息
- /// </summary>
- private void GetPlanInfo()
- {
- string szOut = "", szWhere = "";
- if (_smeltingID == "")
- return;
- try
- {
- #region " 炉次计划信息&钢包包号信息 "
- string strErr = "";
- ArrayList arry = new ArrayList();
- arry.Add("ReceivePlanInfo.Select");//此ID为XML文件ID
- arry.Add(_smeltingID);
- //获取指定炉号的作业计划信息
- DataSet ds = this.ExecuteQueryFunctions("Core.LgMes.Server.LgJobMgt.ClassCommonModule",
- "ReceivePlanInfo", arry, out strErr);
- if (strErr == "" && ds != null)
- {
- DataTable tb = ds.Tables[0];
- if (tb.Rows.Count > 0)
- {
- for (int i = 0; i < tb.Columns.Count; i++)
- {
- if (_htPlanInfo.Contains(tb.Columns[i].ColumnName))
- _htPlanInfo.Remove(tb.Columns[i].ColumnName);
- _htPlanInfo.Add(tb.Columns[i].ColumnName, tb.Rows[0][i].ToString());
- }
- }
- }
- //获取当前班次
- _shiftCode = CStaticMethod.GetCurrentClass(this.ob);
- if (_htPlanInfo.Contains("SHIFTCODE"))
- _htPlanInfo.Remove("SHIFTCODE");
- _htPlanInfo.Add("SHIFTCODE", _shiftCode);
- #endregion
- }
- catch { }
- }
- /// <summary>
- /// 获取吹氩操作数据
- /// </summary>
- private void GetOptInfo()
- {
- if (_heatProcessNo == "")
- return;
- #region " 取吹氩操作数据 "
- try
- {
- string strErr = "";
- ArrayList arry = new ArrayList();
- arry.Add("GetCasOptInfo.Select");//此ID为XML文件ID
- arry.Add(_smeltingID);
- arry.Add(_stationCode);
- arry.Add(_dealTime);
- //查询吹氩作业信息
- DataSet ds = this.ExecuteQueryFunctions("Core.LgMes.Server.LgJobMgt.ClassBofJob",
- "GetBofOptInfo", arry, out strErr);
- if (strErr == "" && ds != null)
- {
- DataTable tb = ds.Tables[0];
- if (tb.Rows.Count > 0)
- {
- for (int i = 0; i < tb.Columns.Count; i++)
- {
- if (_htOptInfo.Contains(tb.Columns[i].ColumnName))
- _htOptInfo.Remove(tb.Columns[i].ColumnName);
- _htOptInfo.Add(tb.Columns[i].ColumnName, tb.Rows[0][i].ToString());
- }
- }
- else
- _htOptInfo.Clear();
- }
- }
- catch { }
- #endregion
- }
- /// <summary>
- /// 获取设备位置信息
- /// </summary>
- private void GetDevPosInfo()
- {
- try
- {
- string strState = "";
- if (_listHeatProcess[2].ToString().Length > (int)OBJLEN.nHeatProcessNo)
- {
- strState = "BLOWING";
- }
- else if (_listHeatProcess[1].ToString().Length > (int)OBJLEN.nHeatProcessNo || _listHeatProcess[0].ToString().Length > (int)OBJLEN.nHeatProcessNo)
- strState = "IDLE";
- if (_htOptInfo.Contains("TP"))
- _htOptInfo.Remove("TP");
- _htOptInfo.Add("TP", SetPic(strState)); // 图片
- if (_listHeatProcess.Count >= 3)
- {
- string szID = _listHeatProcess[2].ToString();
- szID = (szID.Length > 8) ? CStaticMethod.getSmeltingID(szID.Substring(0, (int)OBJLEN.nHeatProcessNo)) : "";
- if (_htOptInfo.Contains("CLW"))
- _htOptInfo.Remove("CLW");
- _htOptInfo.Add("CLW", szID); // 处理位
- szID = _listHeatProcess[1].ToString();
- szID = (szID.Length > 8) ? CStaticMethod.getSmeltingID(szID.Substring(0, (int)OBJLEN.nHeatProcessNo)) : "";
- if (_htOptInfo.Contains("DDW"))
- _htOptInfo.Remove("DDW");
- _htOptInfo.Add("DDW", szID); // 等待位
- szID = _listHeatProcess[0].ToString();
- szID = (szID.Length > 8) ? CStaticMethod.getSmeltingID(szID.Substring(0, (int)OBJLEN.nHeatProcessNo)) : "";
- if (_htOptInfo.Contains("HCW"))
- _htOptInfo.Remove("HCW");
- _htOptInfo.Add("HCW", szID); // 缓冲位
- }
- }
- catch { }
- }
- /// <summary>
- /// 获取吹氩过程添加剂信息
- /// </summary>
- private void GetAdditiveData()
- {
- if (_heatProcessNo == "")
- return;
- try
- {
- string strErr = "";
- ArrayList arry = new ArrayList();
- arry.Add("GetCasAdditiveData.Select");//此ID为XML文件ID
- arry.Add(_smeltingID);
- arry.Add(_stationCode);
- arry.Add(_dealTime);
- //查询转炉作业采样信息
- DataSet ds = this.ExecuteQueryFunctions("Core.LgMes.Server.LgJobMgt.ClassBofJob",
- "GetBofAdditiveData", arry, out strErr);
- if (strErr == "" && ds != null)
- {
- DataSetToAdditive(ref ds, ref _procAdditive);
- }
- }
- catch { }
- }
- /// <summary>
- /// 取各岗位采样数据
- /// </summary>
- private void GetSamplingOfPost()
- {
- try
- {
- ArrayList al = null;
- string strErr = "";
- ArrayList arry = new ArrayList();
- arry.Add(_smeltingID);
- arry.Add(_DEVICE_POSITION);
- arry.Add(_dealTime);
- //查询作业采样信息
- CoreClientParam ccp = this.ExecuteQueryArrayList("Core.LgMes.Server.LgJobMgt.ClassCommonModule",
- "GetSamplingOfPost", arry, out strErr);
-
- if (strErr == "" && ccp.ReturnObject != null)
- {
- al = ccp.ReturnObject as ArrayList;
- GetDataOfPost(al);
- }
- else
- {
- _dtSamplingOfCvt.Clear();
- _dtSamplingOfCas.Clear();
- }
- }
- catch { }
- }
- /// <summary>
- /// 取各岗位数据表记录
- /// </summary>
- private void GetDataOfPost(ArrayList ar)
- {
- try
- {
- int nPos = 0;
- string szPos = "";
- if (ar != null)
- {
- ArrayList alOperate = new ArrayList();
- nPos = ar.Count - 1;
- szPos = ar[nPos].ToString();
- alOperate = ar[nPos - 1] as ArrayList;
- if (szPos != "")
- {
- for (int i = 0; i < szPos.Length; i++)
- {
- switch (szPos.Substring(i, 1))
- {
- case "C": // 转炉
- _dtSamplingOfCvt = ConvertToDataTable(ar[i] as IList); //将服务器端传回的List转换成DataTable
- break;
- case "D": // 吹氩
- _dtSamplingOfCas = ConvertToDataTable(ar[i] as IList); //将服务器端传回的List转换成DataTable
- break;
- default:
- break;
- }
- }
- }
- }
- }
- catch { }
- }
-
- /// <summary>
- /// 填充用户控件上面的数据
- /// </summary>
- private void FillUserControlData()
- {
- ucBofPlan1.SetData(_htPlanInfo);
- ucCasTimeInfo1.SetData(_htOptInfo);
- ucCasDevInfo1.SetData(_htOptInfo);
- ucChemelEment1.FillCraftElement();
- ucCasPlanTime1.SetData();
- }
- /// <summary>
- /// 填充温度信息界面数据
- /// </summary>
- private void FillTemperatureData()
- {
- try
- {
- lock (this)
- {
- int nRows = 1; // 加一条转炉出钢温度
- DataRow[] dr = null, drr = null;
- if (_dtSamplingOfCvt != null && _dtSamplingOfCvt.Rows.Count > 0)
- dr = _dtSamplingOfCvt.Select("SAMPLINGNAME='TEMPERATURE'", " SAMPLINGDATE DESC");
- if (_dtSamplingOfCas != null && _dtSamplingOfCas.Rows.Count > 0)
- drr = _dtSamplingOfCas.Select("SAMPLINGNAME='TEMPERATURE'", " SAMPLINGDATE ASC");
- if (drr != null && drr.Length > 0)
- nRows += drr.Length;
- CStaticMethod.ResetTableRows(ref _dtTemperature, nRows);
- int i = 0;
- #region " 转炉出钢温度 "
- string szVal = "";
- string szTemp = "";
- if (dr != null && dr.Length > 0)
- {
- szVal = dr[0]["SAMPLINGVALUE"].ToString();
- szTemp = dr[0]["SAMPLINGDATE"].ToString();
- }
- CStaticMethod.SetGridTemperature(ref _dtTemperature, "转炉终点温度", "", szVal,szTemp, i);
- i++;
- #endregion
- #region " 实时值 "
- if (drr != null && drr.Length > 0)
- {
- string str = "";
- for (int j = 0; j < drr.Length; j++, i++)
- {
- if (i ==1)
- str = "吹氩进站温度";
- else if (i == drr.Length)
- str = "吹氩出站温度";
- else
- str = "吹氩过程温度";
-
- CStaticMethod.SetGridTemperature(ref _dtTemperature, str, "", drr[j]["SAMPLINGVALUE"].ToString(),drr[j]["SAMPLINGDATE"].ToString(), i);
- }
- }
- #endregion
- #region " 与标准进行比对 "
- // 出钢终点温度
- if(dr!=null && dr.Length >0)
- CStaticMethod.CompareStandard(_dtCraftStdVal, ref _dtTemperature, "LG0201002", ref ulgridTempInfo, 0, "C");
- //吹氩站温度
- if (drr != null && drr.Length > 0)
- {
- CStaticMethod.CompareStandard(_dtCraftStdVal, ref _dtTemperature, "LG0301002", ref ulgridTempInfo, 1, "D");
- CStaticMethod.CompareStandard(_dtCraftStdVal, ref _dtTemperature, "LG0301002", ref ulgridTempInfo, drr.Length, "D");
- }
- #endregion
- }
- }
- catch (Exception ex)
- {
- string Msg = ex.Message;
- }
- }
- #region " Del "
- /// <summary>
- /// 设置温度数据
- /// </summary>
- //private void SetGridTemperature()
- //{
- // try
- // {
- // DataRow[] dr = null;
- // Decimal dZXZ = 0, dZDZ = 0, dVal = 0;
- // #region " 一倒 "
- // if (_dtSamplingOfCvt.Rows.Count > 0)
- // {
- // dr = _dtSamplingOfCvt.Select("SAMPLINGNAME='GSWD'", " SAMPLINGDATE ASC");
- // if (dr.Length > 0)
- // {
- // _dtTemperature.Rows[0]["实际值"] = dr[0]["SAMPLINGVALUE"].ToString();
- // dVal = Convert.ToDecimal(dr[0]["SAMPLINGVALUE"]);
- // }
- // }
- // if (_dtCraftStdVal != null && _dtCraftStdVal.Rows.Count > 0)
- // {
- // try
- // {
- // dr = _dtCraftStdVal.Select(" CRAFTITEMCODE1 = '03002'");
- // if (dr.Length > 0)
- // {
- // if (dr[0]["ITEMMAXVALUE1"].ToString() != "" && dr[0]["ITEMMINVALUE1"].ToString() != "")
- // _dtTemperature.Rows[0]["设定范围"] = dr[0]["ITEMMINVALUE1"].ToString() + "-" + dr[0]["ITEMMAXVALUE1"].ToString();
- // else if (dr[0]["ITEMMAXVALUE1"].ToString() != "" && dr[0]["ITEMMINVALUE1"].ToString() == "")
- // _dtTemperature.Rows[0]["设定范围"] = "≤ " + dr[0]["ITEMMAXVALUE1"].ToString();
- // else if (dr[0]["ITEMMAXVALUE1"].ToString() == "" && dr[0]["ITEMMINVALUE1"].ToString() != "")
- // _dtTemperature.Rows[0]["设定范围"] = "> " + dr[0]["ITEMMINVALUE1"].ToString();
- // dZXZ = Convert.ToDecimal(dr[0]["ITEMMINVALUE1"]);
- // dZDZ = Convert.ToDecimal(dr[0]["ITEMMAXVALUE1"]);
- // if ((dVal > 0) && (dVal < dZXZ || dVal > dZDZ))
- // ulgridTempInfo.DisplayLayout.Rows[0].Cells["实际值"].Appearance.ForeColor = Color.Red; // 报警显示
- // else
- // ulgridTempInfo.DisplayLayout.Rows[0].Cells["实际值"].Appearance.ForeColor = Color.Black;
- // dZXZ = dZDZ = 0;
- // }
- // }
- // catch { }
- // }
- // dVal = 0;
- // #endregion
- // #region " 出钢终点 "
- // if (_dtSamplingOfCvt.Rows.Count > 0)
- // {
- // dr = _dtSamplingOfCvt.Select("SAMPLINGNAME='GSWD'", " SAMPLINGDATE DESC");
- // if (dr.Length > 0)
- // {
- // _dtTemperature.Rows[1]["实际值"] = dr[0]["SAMPLINGVALUE"].ToString();
- // }
- // }
- // if (_dtCraftStdVal != null && this._dtCraftStdVal.Rows.Count > 0)
- // {
- // try
- // {
- // dr = _dtCraftStdVal.Select(" CRAFTITEMCODE1 = '03001'");
- // if (dr.Length > 0)
- // {
- // if (dr[0]["ITEMMAXVALUE1"].ToString() != "" && dr[0]["ITEMMINVALUE1"].ToString() != "")
- // _dtTemperature.Rows[1]["设定范围"] = dr[0]["ITEMMINVALUE1"].ToString() + "-" + dr[0]["ITEMMAXVALUE1"].ToString();
- // else if (dr[0]["ITEMMAXVALUE1"].ToString() != "" && dr[0]["ITEMMINVALUE1"].ToString() == "")
- // _dtTemperature.Rows[1]["设定范围"] = "≤ " + dr[0]["ITEMMAXVALUE1"].ToString();
- // else if (dr[0]["ITEMMAXVALUE1"].ToString() == "" && dr[0]["ITEMMINVALUE1"].ToString() != "")
- // _dtTemperature.Rows[1]["设定范围"] = "> " + dr[0]["ITEMMINVALUE1"].ToString();
- // dZXZ = Convert.ToDecimal(dr[0]["ITEMMINVALUE1"]);
- // dZDZ = Convert.ToDecimal(dr[0]["ITEMMAXVALUE1"]);
- // if ((dVal > 0) && (dVal < dZXZ || dVal > dZDZ))
- // this.ulgridTempInfo.DisplayLayout.Rows[1].Cells["实际值"].Appearance.ForeColor = Color.Red; // 报警显示
- // else
- // this.ulgridTempInfo.DisplayLayout.Rows[1].Cells["实际值"].Appearance.ForeColor = Color.Black;
- // }
- // }
- // catch { }
- // }
- // #endregion
- // #region " 吹氩氩前 "
- // if (_dtSamplingOfCas.Rows.Count > 0)
- // {
- // dr = this._dtSamplingOfCas.Select("SAMPLINGNAME='GSWD'", " SAMPLINGDATE ASC");
- // if (dr.Length > 0)
- // _dtTemperature.Rows[2]["实际值"] = dr[0]["SAMPLINGVALUE"].ToString();
- // }
- // #endregion
- // #region " 吹氩在站 "
- // if (_dtSamplingOfCas.Rows.Count > 0)
- // {
- // dr = this._dtSamplingOfCas.Select("SAMPLINGNAME='GSWD'", " SAMPLINGDATE DESC");
- // if (dr.Length > 0)
- // {
- // _dtTemperature.Rows[3]["实际值"] = dr[0]["SAMPLINGVALUE"].ToString();
- // dVal = Convert.ToDecimal(_dtTemperature.Rows[3]["实际值"]);
- // }
- // }
- // #endregion
- // #region " 吹氩氩后 "
- // if (_dtSamplingOfCas.Rows.Count > 0)
- // {
- // dr = this._dtSamplingOfCas.Select("SAMPLINGNAME='GSWD'", " SAMPLINGDATE DESC");
- // if (dr.Length > 0)
- // {
- // _dtTemperature.Rows[4]["实际值"] = dr[0]["SAMPLINGVALUE"].ToString();
- // dVal = Convert.ToDecimal(_dtTemperature.Rows[4]["实际值"]);
- // }
- // }
- // #endregion
- // }
- // catch (Exception ex)
- // {
- // string Msg = ex.Message;
- // }
- // ulgridTempInfo.Refresh();
- //}
- #endregion
- /// <summary>
- /// 添加过程添加剂数据到界面
- /// </summary>
- private void SetAdditiveData()
- {
- try
- {
- try
- {
- string szName = "", szLC = "";
- DataRow[] rows;
- bool bClear = true;
- #region " 喂丝 "
- for (int j = 0; j < this.ultraDataSource2.Band.Columns.Count; j++)
- {
- szLC = this.ultraDataSource2.Band.Columns[j].Key;
- for (int i = 0; i < _additiveBuffer.hList.Count; i++)
- {
- JOB_CAS_ADDITIVES obj = (JOB_CAS_ADDITIVES)_additiveBuffer.hList[i];
- try
- {
- if (obj.MATERIELTYPE == "WS" && obj.JMTYPE == "1" && szLC == obj.HOPPERNUMID) // 物料类型为喂丝
- {
- rows = this._dtMaterial.Select(" MATERIELCODE = '" + obj.MATERIELCODE + "' and MATERIELTYPE = 'WS'");
- szName = (rows.Length > 0) ? rows[0]["MATERIELFORSHORT"].ToString() : "";
- if (szName != "" && ulgridFeedMtr.DisplayLayout.Bands[0].Columns[szLC].Header.Caption == szName)
- {
- if (this.ultraDataSource2.Rows[0][szLC].ToString() != obj.JMWGT.ToString())
- ultraDataSource2.Rows[0][szLC] = obj.JMWGT;
- bClear = false;
- break;
- }
- else
- ultraDataSource2.Rows[0][szLC] = "";
- bClear = false;
- }
- }
- catch { }
- }
- if (bClear)
- ultraDataSource2.Rows[0][szLC] = "";
- else
- bClear = true;
- }
- #endregion
- #region " 过程添加料 "
- for (int j = 0; j < this.ultraDataSource1.Band.Columns.Count; j++)
- {
- szLC = this.ultraDataSource1.Band.Columns[j].Key;
- for (int i = 0; i < _additiveBuffer.hList.Count; i++)
- {
- JOB_CAS_ADDITIVES obj = (JOB_CAS_ADDITIVES)_additiveBuffer.hList[i];
- try
- {
- if ((obj.MATERIELTYPE == "HJ" || obj.MATERIELTYPE == "FL") && obj.JMTYPE == "1" && szLC == obj.HOPPERNUMID) // 物料类型为 合金
- {
- rows = this._dtMaterial.Select(" MATERIELCODE = '" + obj.MATERIELCODE + "' and (MATERIELTYPE = 'HJ' or MATERIELTYPE = 'FL')");
- szName = (rows.Length > 0) ? rows[0]["MATERIELFORSHORT"].ToString() : "";
- if (szName != "" && this.ulgridPrcMtr.DisplayLayout.Bands[0].Columns[szLC].Header.Caption == szName)
- {
- if (this.ultraDataSource1.Rows[0][szLC].ToString() != obj.JMWGT.ToString())
- ultraDataSource1.Rows[0][szLC] = obj.JMWGT;
- bClear = false;
- break;
- }
- else
- ultraDataSource1.Rows[0][szLC] = "";
- bClear = false;
- }
- }
- catch { }
- }
- if (bClear)
- ultraDataSource1.Rows[0][szLC] = "";
- else
- bClear = true;
- }
- #endregion
- ulgridPrcMtr.UpdateData();
- ulgridFeedMtr.UpdateData();
- }
- catch (Exception ex)
- {
- string Msg = ex.Message;
- }
- }
- catch (Exception ex)
- {
- string Msg = ex.Message;
- }
- }
- /// <summary>
- /// 手投料数据绑定
- /// </summary>
- private void HdctMaterialBind()
- {
- try
- {
- if (_bHandThrow)
- {
- if (true == _bClearFlag)
- {
- for (int i = 0; i < this.ultraDataSource3.Band.Columns.Count; i++)
- {
- this.ulgridHndMtr.DisplayLayout.Rows[0].Cells[i].Value = "";
- }
- _bClearFlag = false;
- }
- string szName = "", szLC = "";
- DataRow[] rows;
- bool bClear1 = true;
- for (int j = 0; j < this.ultraDataSource3.Band.Columns.Count; j++)
- {
- szLC = this.ultraDataSource3.Band.Columns[j].Key;
- #region " 冶炼过程手投料 "
- for (int i = 0; i < _additiveBuffer.hList.Count; i++)
- {
- JOB_CAS_ADDITIVES obj = (JOB_CAS_ADDITIVES)_additiveBuffer.hList[i];
- try
- {
- if (obj.JMTYPE == "2")
- {
- rows = _dtMaterial.Select(" MATERIELCODE = '" + obj.MATERIELCODE + "' and MATERIELTYPE = '" + obj.MATERIELTYPE + "'");
- szName = (rows.Length > 0) ? rows[0]["MATERIELFORSHORT"].ToString() : "";
- if (szName != "")
- {
- if (this.ulgridHndMtr.DisplayLayout.Bands[0].Columns[szLC].Header.Caption == szName)
- {
- ultraDataSource3.Rows[0][szLC] = obj.JMWGT;
- bClear1 = false;
- break;
- }
- }
- }
- }
- catch { }
- }
- if (bClear1)
- ultraDataSource3.Rows[0][szLC] = "";
- else
- bClear1 = true;
- #endregion
- }
- ulgridHndMtr.UpdateData();
- }
- }
- catch { }
- }
- private string GetDevDeviceCodeOfCas(int nDevNo)
- {
- string strDevID = "";
- if (nDevNo >= 10) return "";
- switch (nDevNo)
- {
- case (int)DeviceCode.CAS:
- strDevID = "CAS_DEVICE";
- break;
- case (int)DeviceCode.CAS01:
- case (int)DeviceCode.CAS02:
- case (int)DeviceCode.CAS03:
- strDevID = String.Format("CAS{0,2}_DEVICE", nDevNo);
- break;
- }
- strDevID = strDevID.Replace(" ", "0");
- return strDevID;
- }
- private string GetDevFrontCodeOfCas(int nDevNo)
- {
- string strDevID = "";
- if (nDevNo >= 10) return "";
- switch (nDevNo)
- {
- case (int)DeviceCode.CAS:
- strDevID = "CAS_FRONT";
- break;
- case (int)DeviceCode.CAS01:
- case (int)DeviceCode.CAS02:
- case (int)DeviceCode.CAS03:
- strDevID = String.Format("CAS{0,2}_FRONT", nDevNo);
- break;
- }
- strDevID = strDevID.Replace(" ", "0");
- return strDevID;
- }
- private string GetDevIdleCodeOfCas(int nDevNo)
- {
- string strDevID = "";
- if (nDevNo >= 10) return "";
- switch (nDevNo)
- {
- case (int)DeviceCode.CAS:
- strDevID = "CAS_IDLE";
- break;
- case (int)DeviceCode.CAS01:
- case (int)DeviceCode.CAS02:
- case (int)DeviceCode.CAS03:
- strDevID = String.Format("CAS{0,2}_IDLE", nDevNo);
- break;
- }
- strDevID = strDevID.Replace(" ", "0");
- return strDevID;
- }
- #region " From DataSet To Buffer "
- private void DataSetToTrackObject(ref DataSet ds, ref TrackObjectInfo obj)
- {
- try
- {
- obj.ClearElement();
- PropertyInfo[] PropertyInfos = null;
- foreach (DataRow dr in ds.Tables[0].Rows)
- {
- RealDataTrackObjectInfor detail = new RealDataTrackObjectInfor();
- if (PropertyInfos == null)
- {
- PropertyInfos = detail.GetType().GetProperties();
- }
- //给各个属性赋值
- foreach (PropertyInfo oPropertyInfo in PropertyInfos)
- {
- try
- {
- if (dr[oPropertyInfo.Name] != System.DBNull.Value)
- {
- oPropertyInfo.SetValue(detail, dr[oPropertyInfo.Name.ToString()], null);
- }
- }
- catch (Exception ex)
- {
- MessageBox.Show(ex.Message);
- }
- }
- obj.Add(ref detail);
- }//end foreach
- _objTrackBuffer.DataHarmonize(ref obj);
- }
- catch (Exception ex)
- {
- string Msg = ex.Message;
- }
- finally
- {
- }
- }
- private void DataSetToCraftElement(ref DataSet ds, ref CraftElement obj)
- {
- try
- {
- obj.ClearElement();
- PropertyInfo[] PropertyInfos = null;
- foreach (DataRow dr in ds.Tables[0].Rows)
- {
- JOB_CHEMELEMENT detail = new JOB_CHEMELEMENT();
- if (PropertyInfos == null)
- {
- PropertyInfos = detail.GetType().GetProperties();
- }
- //给各个属性赋值
- foreach (PropertyInfo oPropertyInfo in PropertyInfos)
- {
- try
- {
- if (dr[oPropertyInfo.Name] != System.DBNull.Value)
- {
- oPropertyInfo.SetValue(detail, dr[oPropertyInfo.Name.ToString()], null);
- }
- }
- catch (Exception ex)
- {
- MessageBox.Show(ex.Message);
- }
- }
- obj.Add(ref detail);
- }//end foreach
- _objCraftEleBuffer.DataHarmonize(ref obj);
- }
- catch (Exception ex)
- {
- string Msg = ex.Message;
- }
- finally
- {
- }
- }
- private void DataSetToAdditive(ref DataSet ds, ref CasAdditive obj)
- {
- try
- {
- obj.ClearElement();
- PropertyInfo[] PropertyInfos = null;
- foreach (DataRow dr in ds.Tables[0].Rows)
- {
- JOB_CAS_ADDITIVES detail = new JOB_CAS_ADDITIVES();
- if (PropertyInfos == null)
- {
- PropertyInfos = detail.GetType().GetProperties();
- }
- //给各个属性赋值
- foreach (PropertyInfo oPropertyInfo in PropertyInfos)
- {
- try
- {
- if (ds.Tables[0].Columns.Contains(oPropertyInfo.Name))
- {
- if (dr[oPropertyInfo.Name] != System.DBNull.Value)
- {
- oPropertyInfo.SetValue(detail, dr[oPropertyInfo.Name.ToString()], null);
- }
- }
- }
- catch (Exception ex)
- {
- MessageBox.Show(ex.Message);
- }
- }
- obj.Add(ref detail);
- }//end foreach
- _additiveBuffer.DataHarmonize(ref obj);
- }
- catch (Exception ex)
- {
- string Msg = ex.Message;
- }
- finally
- {
- }
- }
- #endregion
- /// <summary>
- /// 根据窗体名称获取设备位置
- /// </summary>
- private void GetDevicePosition()
- {
- if (this.Text == "") return;
- string str = this.CustomInfo.Trim();//this.Text.Substring(0, 1);
- str = str.Substring(str.Length - 1, 1);
- switch (str)
- {
- case "1":
- _DEVICE_POSITION = "CAS01";
- _DEVICE_POS = 1;
- break;
- case "2":
- _DEVICE_POSITION = "CAS02";
- _DEVICE_POS = 2;
- break;
- case "3":
- _DEVICE_POSITION = "CAS03";
- _DEVICE_POS = 3;
- break;
- default:
- break;
- }
- }
- /// <summary>
- /// 设置用户控件委托
- /// </summary>
- private void SetUserControlDelegate()
- {
- ucCasDevInfo1.ultraGrid1.ClickCellButton += new Infragistics.Win.UltraWinGrid.CellEventHandler(ucCasDevInfo1_ClickCellButton);
- ucCasDevInfo1.ultraGrid1.CellListSelect += new Infragistics.Win.UltraWinGrid.CellEventHandler(ucCasDevInfo1_CellListSelect);
- ucCasTimeInfo1.ultraGrid1.ClickCellButton += new Infragistics.Win.UltraWinGrid.CellEventHandler(ucCasTimeInfo1_ClickCellButton);
- ucBofPlan1.ultraGrid1.ClickCellButton += new Infragistics.Win.UltraWinGrid.CellEventHandler(ucBofPlan1_ClickCellButton);
- ucCasTimeInfo1.ultraGrid1.KeyDown += new KeyEventHandler(ucCasTimeInfo1_KeyDown);
- ucCasDevInfo1.ultraGrid1.KeyDown += new KeyEventHandler(ucCasDevInfo1_KeyDown);
- }
- /// <summary>
- /// 清除所有界面Grid中的实时数据
- /// </summary>
- private void ClearGridData()
- {
- try
- {
- for (int j = 0; j < this.ultraDataSource1.Band.Columns.Count; j++)
- {
- this.ultraDataSource1.Rows[0][j] = "";
- }
- }
- catch { }
- try
- {
- for (int j = 0; j < this.ultraDataSource2.Band.Columns.Count; j++)
- {
- this.ultraDataSource2.Rows[0][j] = "";
- }
- }
- catch { }
- try
- {
- for (int j = 0; j < this.ultraDataSource3.Band.Columns.Count; j++)
- {
- this.ultraDataSource3.Rows[0][j] = "";
- }
- }
- catch { }
- try
- {
- _dtCraftElement.Rows.Clear();
- }
- catch { }
- try
- {
- this._dtTemperature.Rows.Clear();
- }
- catch { }
- }
- /// <summary>
- /// 重置界面用户控件的数据
- /// </summary>
- private void ResetAllData()
- {
- if (!_bResetDataFlag) // 如果已经清空,则直接返回
- {
- ucCasDevInfo1.ResetData();
- ucBofPlan1.ResetData();
- ucCasTimeInfo1.ResetData();
- ucChemelEment1.ResetData();
- ClearGridData();
- _htPlanInfo.Clear();
- _htOptInfo.Clear();
- ucCasPlanTime1.ResetData();
- _bResetDataFlag = true;
- }
- }
- /// <summary>
- /// 根据设备状态设置图片显示
- /// </summary>
- /// <param name="strState"></param>
- /// <returns></returns>
- private Image SetPic(string strState)
- {
- int index = 0;
- switch (strState)
- {
- case "IDLE":
- index = 4;
- break;
- case "LADLEARRIVE":
- index = 1;
- break;
- case "SLAGBUILD":
- index = 1;
- break;
- case "FEEDSILK":
- index = 1;
- break;
- case "BLOWING":
- index = 3;
- break;
- case "FINISH":
- index = 3;
- break;
- case "LADLEDEPARTURE":
- index = 0;
- break;
- case "REPAIR":
- index = 2;
- break;
- case "WORK":
- break;
- default:
- break;
- }
- return this.imageList1.Images[index];
- //出
- //进
- //维修
- //工作
- //空闲
- }
- private void ultraExpandableGroupBox1_ExpandedStateChanged(object sender, EventArgs e)
- {
- try
- {
- if (_heatProcessNo != "")
- {
- _bHandThrow = ultraExpandableGroupBox1.Expanded;
- if (_bHandThrow)
- _bClearFlag = true;
- }
- if (ultraExpandableGroupBox1.Expanded)
- {
- //查询手投料物料配置
- ClassManualUpdateInfo.SetProceThrowFace(ulgridHndMtr, ultraDataSource3, _DEVICE_POSITION, ref _dtMaterial, this.ob);
- }
- }
- catch { }
- }
- /// <summary>
- /// 设置料斗信息
- /// </summary>
- private void SetHopperInfo()
- {
- try
- {
- object obj = null;// ClientCommon._RemotingHelp.ExecuteMethod(par, out outErrStr);
- string strErr = "";
- ArrayList arry = new ArrayList();
- arry.Add("GetHopperName.Select");//此ID为XML文件ID
- arry.Add(_DEVICE_POSITION);
- //查询料斗物料设置信息
- DataSet ds = this.ExecuteQueryFunctions("Core.LgMes.Server.LgJobMgt.ClassCommonModule",
- "GetHopperName", arry, out strErr);
- if (strErr == "" && ds != null)
- {
- DataTable dtHopper = ds.Tables[0];
- string BH = "";
- for (int i = 0; i < dtHopper.Rows.Count; i++)
- {
- BH = dtHopper.Rows[i]["MSNUMID"].ToString();
- if (dtHopper.Rows[i]["MATERIELTYPE"].ToString() == "WS")
- {
- this.ulgridFeedMtr.DisplayLayout.Bands[0].Columns[BH].Header.Caption = dtHopper.Rows[i]["MATERIELFORSHORT"].ToString();
- this.ulgridFeedMtr.DisplayLayout.Bands[0].Columns[BH].Tag = dtHopper.Rows[i]["MATERIELCODE"].ToString();
- }
- else
- {
- this.ulgridPrcMtr.DisplayLayout.Bands[0].Columns[BH].Header.Caption = dtHopper.Rows[i]["MATERIELFORSHORT"].ToString();
- this.ulgridPrcMtr.DisplayLayout.Bands[0].Columns[BH].Tag = dtHopper.Rows[i]["MATERIELCODE"].ToString();
- }
- }
- }
- }
- catch { }
- }
- #endregion
- #region " Control Event "
-
- /// <summary>
- /// 验证输入的是否是数字(手动投料)
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void ulgridHndMtr_CellChange(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e)
- {
- if (ulgridHndMtr.ActiveCell.Text != "")
- CStaticMethod.CheckNumValidate(ulgridHndMtr.ActiveCell.Text);
- }
- /// <summary>
- /// 手投料录入(通过弹出数字鍵盘)
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void ulgridHndMtr_ClickCellButton(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e)
- {
- //利用弹出计算器窗体增加手投料消耗
- ClassManualUpdateInfo.HndMtrFromAddMaterial(_heatProcessNo, ulgridHndMtr.ActiveCell, this._dtMaterial, this.ob);
- }
- /// <summary>
- /// 手投料录入
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void ulgridHndMtr_KeyDown(object sender, KeyEventArgs e)
- {
- if (ulgridHndMtr.ActiveCell !=null && e.KeyCode == Keys.Enter && ulgridHndMtr.ActiveRow != null && _smeltingID != ""
- && ulgridHndMtr.ActiveCell.Column.Header.Caption != "")
- {
- string szBM = "";
- if (ulgridHndMtr.ActiveCell.Column.Tag.ToString() != ulgridHndMtr.ActiveCell.Column.Key)
- szBM = ulgridHndMtr.ActiveCell.Column.Tag.ToString();
- string szMC = this.ulgridHndMtr.ActiveCell.Column.Header.Caption, szWLLX = "";
- DataRow[] rows = _dtMaterial.Select(" MATERIELCODE = '" + szBM + "'");
- if (rows.Length > 0)
- {
- szWLLX = rows[0]["MATERIELTYPE"].ToString();
- //录入手投料消耗
- ClassManualUpdateInfo.AddMaterialProc(_heatProcessNo, szBM, szWLLX, ulgridHndMtr.ActiveCell.Text,
- ulgridHndMtr.ActiveCell.Column.Key.ToString(), "2", ob);
- ulgridTempInfo.Focus();
- }
- }
- }
-
- /// <summary>
- /// 双击打开料仓配置界面(手动加料)
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void ulgridHndMtr_DoubleClickHeader(object sender, Infragistics.Win.UltraWinGrid.DoubleClickHeaderEventArgs e)
- {
- //设置手投料
- ClassManualUpdateInfo.SetHatMaterial(ulgridHndMtr.ActiveCell, ref e, _DEVICE_POSITION, this.ob);
- }
- /// <summary>
- /// 发送钢包号
- /// </summary>
- private void AfirmSteelPot()
- {
- #region " BOF01 "
- string Key = "BOF01" + "_BACK", szDevice = "", szLH1 = "", szLH2 = "", szLH3 = "";
- RealDataTrackObjectInfor objTrack = (RealDataTrackObjectInfor)_objTrackBuffer.hList[Key];
- if (objTrack != null)
- szDevice = (!string.IsNullOrEmpty(objTrack.OBJECTID)) ? objTrack.OBJECTID : "";
- if (szDevice == "")
- {
- Key = "BOF01" + "_DEVICE";
- objTrack = (RealDataTrackObjectInfor)_objTrackBuffer.hList[Key];
- if (objTrack != null)
- szDevice = (!string.IsNullOrEmpty(objTrack.OBJECTID)) ? objTrack.OBJECTID : "";
- }
- if (szDevice == "")
- {
- Key = "BOF01" + "_FRONT";
- objTrack = (RealDataTrackObjectInfor)_objTrackBuffer.hList[Key];
- if (objTrack != null)
- szDevice = (!string.IsNullOrEmpty(objTrack.OBJECTID)) ? objTrack.OBJECTID : "";
- }
- if (szDevice != "")
- szLH1 = CStaticMethod.getSmeltingID(szDevice);
- //判断是否是提钒
- if (szDevice != "" && szDevice.Substring(0, 1) == "V") szLH1 = "V" + szLH1;
- #endregion
- #region " BOF02 "
- Key = "BOF02" + "_BACK";
- objTrack = (RealDataTrackObjectInfor)_objTrackBuffer.hList[Key];
- if (objTrack != null)
- szDevice = (!string.IsNullOrEmpty(objTrack.OBJECTID)) ? objTrack.OBJECTID : "";
- if (szDevice == "")
- {
- Key = "BOF02" + "_DEVICE";
- objTrack = (RealDataTrackObjectInfor)_objTrackBuffer.hList[Key];
- if (objTrack != null)
- szDevice = (!string.IsNullOrEmpty(objTrack.OBJECTID)) ? objTrack.OBJECTID : "";
- }
- if (szDevice == "")
- {
- Key = "BOF02" + "_FRONT";
- objTrack = (RealDataTrackObjectInfor)_objTrackBuffer.hList[Key];
- if (objTrack != null)
- szDevice = (!string.IsNullOrEmpty(objTrack.OBJECTID)) ? objTrack.OBJECTID : "";
- }
- if (szDevice != "")
- szLH2 = CStaticMethod.getSmeltingID(szDevice);
- //判断是否是提钒
- if (szDevice != "" && szDevice.Substring(0, 1) == "V") szLH2 = "V" + szLH2;
- #endregion
- #region " BOF03 "
- Key = "BOF03" + "_BACK";
- objTrack = (RealDataTrackObjectInfor)_objTrackBuffer.hList[Key];
- if (objTrack != null)
- szDevice = (!string.IsNullOrEmpty(objTrack.OBJECTID)) ? objTrack.OBJECTID : "";
- if (szDevice == "")
- {
- Key = "BOF03" + "_DEVICE";
- objTrack = (RealDataTrackObjectInfor)_objTrackBuffer.hList[Key];
- if (objTrack != null)
- szDevice = (!string.IsNullOrEmpty(objTrack.OBJECTID)) ? objTrack.OBJECTID : "";
- }
- if (szDevice == "")
- {
- Key = "BOF03" + "_FRONT";
- objTrack = (RealDataTrackObjectInfor)_objTrackBuffer.hList[Key];
- if (objTrack != null)
- szDevice = (!string.IsNullOrEmpty(objTrack.OBJECTID)) ? objTrack.OBJECTID : "";
- }
- if (szDevice != "")
- szLH3 = CStaticMethod.getSmeltingID(szDevice);
- //判断是否是提钒
- if (szDevice != "" && szDevice.Substring(0, 1) == "V") szLH3 = "V" + szLH3;
- #endregion
- frmSendSteelPot frmBOF = new frmSendSteelPot(szLH1, szLH2, szLH3);
- frmBOF.ShowDialog();
- }
- /// <summary>
- /// 功能按钮控制区
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- public override void ToolBar_Click(object sender, string ToolbarKey)
- {
- switch (ToolbarKey)
- {
- case "Result":
- string szStr = _DEVICE_POS.ToString() + "#吹氩站实绩";
- foreach (Form mdiChild in this.MdiParent.MdiChildren)
- {
- if (mdiChild.Text == szStr)
- {
- mdiChild.Activate();
- return;
- }
- }
- frmCasResults frmCYSJ = new frmCasResults();
- frmCYSJ.MdiParent = this.MdiParent;
- frmCYSJ.Text = szStr;
- frmCYSJ.Tag = frmCYSJ.Text;
- frmCYSJ.Key = "Core.LgMes.Client.LgResMgt.frmCasResults";
- frmCYSJ.CustomInfo = _DEVICE_POSITION;
- frmCYSJ.Toolbar = CStaticMethod.GetFromToolInfo(frmCYSJ.Key, frmCYSJ.CustomInfo, this.ob);
- frmCYSJ.ob = this.ob;
- frmCYSJ.Show();
- break;
- case "btnPotAffirm": // 钢包确认
-
- AfirmSteelPot();
- break;
- case "MtrCsm": // 物料消耗
- string szWLXH = "物料消耗";
- foreach (Form mdiChild in this.MdiParent.MdiChildren)
- {
- if (mdiChild.Text == szWLXH)
- {
- mdiChild.Activate();
- return;
- }
- }
- frmAdditStat frmWLXH = new frmAdditStat();
- frmWLXH.MdiParent = this.MdiParent;
- frmWLXH.Text = szWLXH;
- frmWLXH.Tag = frmWLXH.Text;
- frmWLXH.Key = "Core.LgMes.Client.LgIntegrationQuery.frmAdditStat";
- frmWLXH.Toolbar = CStaticMethod.GetFromToolInfo(frmWLXH.Key, "", this.ob);
- frmWLXH.ob = this.ob;
- frmWLXH.Show();
- break;
- case "ChemicElem": // 化学成分
- string szEle = "化学成分查询";
- foreach (Form mdiChild in this.MdiParent.MdiChildren)
- {
- if (mdiChild.Text == szEle)
- {
- mdiChild.Activate();
- return;
- }
- }
- frmLgElements frmHXCF = new frmLgElements();
- frmHXCF.MdiParent = this.MdiParent;
- frmHXCF.Text = szEle;
- frmHXCF.Tag = frmHXCF.Text;
- frmHXCF._devPos = _DEVICE_POSITION;
- frmHXCF.Key = "Core.LgMes.Client.LgIntegrationQuery.frmLgElements";
- frmHXCF.Toolbar = CStaticMethod.GetFromToolInfo(frmHXCF.Key, "", this.ob);
- frmHXCF.ob = this.ob;
- frmHXCF.Show();
- break;
- case "SftRcd": // 班组记录
- string szRcd = "吹氩站操作记录";
- foreach (Form mdiChild in this.MdiParent.MdiChildren)
- {
- if (mdiChild.Text == szRcd)
- {
- mdiChild.Activate();
- return;
- }
- }
- reportCASData frmReport = new reportCASData();
- frmReport.MdiParent = this.MdiParent;
- frmReport.Text = szRcd;
- frmReport.Tag = frmReport.Text;
- frmReport.Key = "Core.LgMes.Client.Report.reportCASData";
- frmReport.Toolbar = CStaticMethod.GetFromToolInfo(frmReport.Key, "", this.ob);
- frmReport.ob = this.ob;
- frmReport.Show();
- break;
- case "btnJobStd": // 操作规程
- string szOR = "操作规程管理";
- foreach (Form mdiChild in this.MdiParent.MdiChildren)
- {
- if (mdiChild.Text == szOR)
- {
- mdiChild.Activate();
- return;
- }
- }
- //Core.LgMes.Client.LgIntegrationQuery.frmOperateRule frmOR = new Core.LgMes.Client.LgIntegrationQuery.frmOperateRule();
- //frmOR.MdiParent = this.MdiParent;
- //frmOR.Key = "Core.LgMes.Client.LgIntegrationQuery.frmOperateRule";
- //frmOR.Text = "操作规程管理";
- //frmOR.blValue = false;
- //if (_htPlanInfo != null && _htPlanInfo.Count > 0)
- //{
- // frmOR.strDeviceNo = _DEVICE_POSITION;
- // frmOR.strSteelCode = _htPlanInfo["STEEL"].ToString();
- // frmOR.strCraftCode = _htPlanInfo["STD_CODE"].ToString();
- //}
- //frmOR.Show();
- break;
- case "JobPlan": // 作业计划
- string szPlan = "作业计划查询";
- foreach (Form mdiChild in this.MdiParent.MdiChildren)
- {
- if (mdiChild.Text == szPlan)
- {
- mdiChild.Activate();
- return;
- }
- }
- frmSchedulingQuery frmZYJH = new frmSchedulingQuery();
- frmZYJH.MdiParent = this.MdiParent;
- frmZYJH.Text = szPlan;
- frmZYJH.Tag = frmZYJH.Text;
- frmZYJH.Key = "Core.LgMes.Client.LgIntegrationQuery.frmSchedulingQuery";
- frmZYJH.Toolbar = CStaticMethod.GetFromToolInfo(frmZYJH.Key, "", this.ob);
- frmZYJH.ob = this.ob;
- frmZYJH.Show();
- break;
- case "POTOK":
- /*
- * 功能描述:只有指定IP 地址电脑才可以做确认
- * 修改人:ym
- * 修改时间:20140218
- */
- if (!this.isCorrectMac())
- {
- MessageBox.Show("您没有操作权限!,只有指定电脑可以操作", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
- return;
- }
- try
- {
- Core.LgMes.Client.LgDeviceManager.FrmCasAffirm frmPAF = new Core.LgMes.Client.LgDeviceManager.FrmCasAffirm(ob);
- frmPAF.Location = CStaticMethod.GetChildWindowLocation(frmPAF.Size);
- frmPAF.StartPosition = FormStartPosition.CenterParent;
- frmPAF.ShowDialog();
- }
- catch (Exception ex)
- {
- MessageBox.Show("钢包确认界面打开失败:" + ex.Message);
- }
- break;
- case "Exit":
- this.Close();
- break;
- default:
- break;
- }
- }
- /// <summary>
- /// 双击打开料仓配置界面(自动加料)
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void ulgridPrcMtr_DoubleClickHeader(object sender, Infragistics.Win.UltraWinGrid.DoubleClickHeaderEventArgs e)
- {
- Core.LgMes.Client.LgJobMgt.frmSetHopper frmLCPZ = new Core.LgMes.Client.LgJobMgt.frmSetHopper(_DEVICE_POSITION);
- frmLCPZ.WindowState = FormWindowState.Normal;
- frmLCPZ.ob = this.ob;
- frmLCPZ.ShowDialog();
- SetHopperInfo();
- }
-
- /// <summary>
- /// 修改自动投料
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void ulgridPrcMtr_KeyDown(object sender, KeyEventArgs e)
- {
- if (ulgridPrcMtr.ActiveCell !=null && e.KeyCode == Keys.Enter && ulgridPrcMtr.ActiveRow != null && _smeltingID != ""
- && ulgridPrcMtr.ActiveCell.Column.Header.Caption != "")
- {
- string szBM = "";
- if (ulgridPrcMtr.ActiveCell.Column.Tag.ToString() != ulgridPrcMtr.ActiveCell.Column.Key)
- szBM = ulgridPrcMtr.ActiveCell.Column.Tag.ToString();
- string szMC = this.ulgridPrcMtr.ActiveCell.Column.Header.Caption, szWLLX = "";
- DataRow[] rows = _dtMaterial.Select(" MATERIELCODE = '" + szBM + "'");
- if (rows.Length > 0)
- {
- szWLLX = rows[0]["MATERIELTYPE"].ToString();
-
- ////添加辅料,合金消耗
- ClassManualUpdateInfo.AddMaterialProc(_heatProcessNo, szBM, szWLLX, ulgridPrcMtr.ActiveCell.Text,
- ulgridPrcMtr.ActiveCell.Column.Key.ToString(), "1", ob);
- ulgridTempInfo.Focus();
- }
- }
- }
- /// <summary>
- /// 验证输入的是否是数字
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void ulgridPrcMtr_CellChange(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e)
- {
- if (ulgridPrcMtr.ActiveCell.Text != "")
- CStaticMethod.CheckNumValidate(ulgridPrcMtr.ActiveCell.Text);
- }
- /// <summary>
- /// 修改自动投料喂丝
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void ulgridFeedMtr_KeyDown(object sender, KeyEventArgs e)
- {
- if (ulgridFeedMtr.ActiveCell!=null && e.KeyCode == Keys.Enter && ulgridFeedMtr.ActiveRow != null && _smeltingID != ""
- && ulgridFeedMtr.ActiveCell.Column.Header.Caption != "")
- {
- string szBM = "";
- if (ulgridFeedMtr.ActiveCell.Column.Tag.ToString() != ulgridFeedMtr.ActiveCell.Column.Key)
- szBM = ulgridFeedMtr.ActiveCell.Column.Tag.ToString();
- string szMC = this.ulgridFeedMtr.ActiveCell.Column.Header.Caption, szWLLX = "";
- DataRow[] rows = _dtMaterial.Select(" MATERIELCODE = '" + szBM + "'");
- if (rows.Length > 0)
- {
- szWLLX = rows[0]["MATERIELTYPE"].ToString();
- ////添加辅料,合金消耗
- ClassManualUpdateInfo.AddMaterialProc(_heatProcessNo, szBM, szWLLX, ulgridFeedMtr.ActiveCell.Text,
- ulgridFeedMtr.ActiveCell.Column.Key.ToString(), "1", ob);
- ulgridTempInfo.Focus();
- }
- }
- }
- /// <summary>
- /// 验证是否是数字
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void ulgridFeedMtr_CellChange(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e)
- {
- if (ulgridFeedMtr.ActiveCell.Text != "")
- CStaticMethod.CheckNumValidate(ulgridFeedMtr.ActiveCell.Text);
- }
- #endregion
- /// <summary>
- /// 异常信息处理
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void ultraGroupBox1_DoubleClick(object sender, EventArgs e)
- {
- if (!string.IsNullOrEmpty(ucBofPlan1.ultraGrid1.DisplayLayout.Rows[0].Cells["HEATNO"].Value.ToString()))
- {
- frmProcessAbnormity frmPA = new frmProcessAbnormity();
- frmPA.strSmeltingID = ucBofPlan1.ultraGrid1.DisplayLayout.Rows[0].Cells["HEATNO"].Value.ToString();
- frmPA.strCraftposID = _DEVICE_POSITION;
- frmPA.ShowDialog();
- }
- }
- private void ulgridPrcMtr_DoubleClickCell(object sender, Infragistics.Win.UltraWinGrid.DoubleClickCellEventArgs e)
- {
- frmMtrBatchChem frmmbchem = new frmMtrBatchChem(ulgridPrcMtr.DisplayLayout.Bands[0].Columns[e.Cell.Column.Key.ToString()].Tag.ToString(),
- e.Cell.Column.Key.ToString(), "CAS0" + _DEVICE_POS);
- frmmbchem.Location = CStaticMethod.GetChildWindowLocation(frmmbchem.Size);
- frmmbchem.ShowDialog();
- }
- private void ulgridFeedMtr_DoubleClickCell(object sender, Infragistics.Win.UltraWinGrid.DoubleClickCellEventArgs e)
- {
- frmMtrBatchChem frmmbchem = new frmMtrBatchChem(ulgridFeedMtr.DisplayLayout.Bands[0].Columns[e.Cell.Column.Key.ToString()].Tag.ToString(),
- e.Cell.Column.Key.ToString(), "CAS0" + _DEVICE_POS);
- frmmbchem.Location = CStaticMethod.GetChildWindowLocation(frmmbchem.Size);
- frmmbchem.ShowDialog();
- }
- /// <summary>
- /// 返回允许操作的电脑IP地址or物理地址
- /// </summary>
- /// <returns></returns>
- private List<string> getAllCorrectPriAddress()
- {
- List<string> list = new List<string>();
- try
- {
- /*DataSet ds = this.returnDataSet(returnScm_Base_InfoBySort_Code("400308"));//Core.Mes.Client.Common.lgCommon.returnScm_Base_InfoBySort_Code("400308")
- if (ds != null & ds.Tables[0].Rows.Count > 0)
- {
- foreach (DataRow dr in ds.Tables[0].Rows)
- {
- list.Add(dr["BASENAME"].ToString().Trim());
- }
- }*/
- list.Add("10.160.70.177");
- list.Add("172.16.50.213");
- list.Add("172.16.10.213");
- list.Add("172.16.0.207");
- list.Add("10.160.70.176");
- list.Add("192.168.204.32");
- list.Add("192.168.94.129");
- }
- catch(Exception ex)
- {
- MessageBox.Show("获取IP配置失败:" + ex.Message);
- return list;
- }
- return list;
- }
- /// <summary>
- /// 返回2钢基础数据sq by 分类编码
- /// </summary>
- /// <param name="sortCode"></param>
- /// <returns></returns>
- public static string returnScm_Base_InfoBySort_Code(string sortCode)
- {
- string sqlStr = SqlCollection.returnScm_Base_InfoByAllCondition(string.Format(" and sortcode = '{0}'", sortCode));
- return sqlStr;
- }
- /// <summary>
- /// 获取某一电脑iP
- /// </summary>
- /// <returns></returns>
- public List<string> returnLocalComputerIpAddress()
- {
- List<string> list = new List<string>();
- try
- {
- System.Net.IPAddress[] addressList = System.Net.Dns.GetHostEntry(Dns.GetHostName()).AddressList;
- foreach (System.Net.IPAddress iplist in addressList)
- {
- list.Add(iplist.ToString());
- }
- }
- catch (Exception e)
- {
- MessageBox.Show("IP地址获取失败:" + e.Message);
- return null;
- }
- return list;
- }
- private bool isCorrectMac()
- {
- try
- {
- List<string> ipAddress = new List<string>();
- ipAddress = this.returnLocalComputerIpAddress();
- List<string> ipList = this.getAllCorrectPriAddress()/*Core.Mes.Client.Common.lgCommon.getAllCorrectPriAddress()*/;
- foreach (string s in ipAddress)
- {
- if (ipList.Contains(s))
- return true;
- }
- return false;
- }
- catch (Exception e)
- {
- MessageBox.Show("IP地址判断失败:"+e.Message);
- return false;
- }
- }
- private DataSet returnDataSet(string sqlStr)
- {
- DataSet ds = new DataSet();
- try
- {
- CoreFS.CA06.FrmBase fr = new FrmBase();
- fr.ob = ob;
- CoreClientParam CCP_Query = new CoreClientParam();
- DataTable dt = new DataTable();
- CCP_Query.ServerName = "Core.LgMes.Server.Common.ComDBQuery";
- CCP_Query.MethodName = "doSimpleQuery";
- CCP_Query.ServerParams = new object[] { sqlStr };
- CCP_Query.SourceDataTable = dt;
- fr.ExecuteQueryToDataTable(CCP_Query, CoreInvokeType.Internal);
- ds.Tables.Add(dt);
- }
- catch
- {
- }
- return ds;
- }
- }
- }
|