| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573 |
-
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Text;
- using System.Windows.Forms;
- using CoreFS.CA06;
- //using Core.Mes.IBaseInterface;
- using System.Collections;
- using Core.StlMes.Client.LgCommon;
- namespace Core.StlMes.Client.LgResMgt
- {
- public partial class frmJJBMgt : frmStyleBase
- {
- public string strBC = "";
- public DataSet ccmXX = new DataSet();
- public string v_GWBM = "";
- public string strNumId = "";
- private ArrayList arryItemCode = new ArrayList();
- private ArrayList arryItemType = new ArrayList();
- private ArrayList arryItemValue = new ArrayList();
- public frmJJBMgt()
- {
- InitializeComponent();
- }
- private void frmJJBMgt_Load(object sender, EventArgs e)
- {
- ultraDataSource1.Rows.Add(new object[] { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 });
- ultraDataSource2.Rows.Add(new object[] { "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" });
- v_GWBM = "BOF02";
- //初始化页面,绑定设备运行项目和耗材消耗项目
- BindingData();
- //交接班人员
- txtName.Text = this.UserInfo.GetUserName();
- ulcmeState.SelectedIndex = 1;
- //自动获取当前班次信息
- BandingShift();
- GetJJBInfo();
- }
- // 写日志信息到日志文件
- /// <summary>
- /// 写日志信息到日志文件
- /// </summary>
- /// <param name="str"></param>
- private void WriteLog(string str)
- {
- string strDate = System.DateTime.Now.Year.ToString() + System.DateTime.Now.Month.ToString() + System.DateTime.Now.Day.ToString();
- System.IO.TextWriter tw = new System.IO.StreamWriter(System.Environment.CurrentDirectory + "\\log\\log_" + strDate + ".log", true);
- tw.WriteLine(str);
- tw.Close();
- }
- // 判断是否交接班
- /// <summary>
- /// 判断是否交接班
- /// </summary>
- private bool JudgeESState(DateTime currTime)
- {
- try
- {
- string str_Shift = ulcmeShift1.Value.ToString() + ulcmeShift2.Value.ToString();
- string strErr = "";
- ArrayList arry = new ArrayList();
- arry.Add("frmJJBJudgeESState.select");//此ID为XML文件ID
- arry.Add(v_GWBM);
- arry.Add(str_Shift);
- arry.Add(currTime.ToString("yyyy-MM-dd"));
- CommonClientToServer cctos = new CommonClientToServer();
- cctos.ob = this.ob;
- DataSet ds = cctos.ExecuteQueryFunctions("Core.LgMes.Server.Common.ComDBQuery",
- "doSimpleQuery", arry, out strErr);
- if (strErr == "" && ds != null && ds.Tables.Count > 0)
- {
- DataTable dt = ds.Tables[0];
- if (dt.Rows.Count > 0 && dt.Rows[0]["AFFIRMFLAG"].ToString() == "1")
- {
- strNumId = dt.Rows[0]["NUMID"].ToString();
- return true;
- }
- else
- {
- strNumId = "";
- return false;
- }
- }
- else
- {
- strNumId = "";
- return false;
- }
- }
- catch { return false; }
- }
- // 判断交接班项目信息是否存在
- /// <summary>
- /// 判断交接班项目信息是否存在
- /// </summary>
- /// <param name="strNumID">交接班序号</param>
- /// <param name="strItemCode">项目编码</param>
- /// <param name="strItemDataType">数据类型</param>
- /// <returns>返回True信息存在,否则不存在</returns>
- private bool GetDetailInfo(string strNumID, string strItemCode, string strItemType)
- {
- string strErr = "";
- ArrayList arry = new ArrayList();
- arry.Add("frmJJBDetailInfo.select");//此ID为XML文件ID
- arry.Add(strNumID);
- arry.Add(strItemCode);
- arry.Add(strItemType);
- CommonClientToServer cctos = new CommonClientToServer();
- cctos.ob = this.ob;
- DataSet ds = cctos.ExecuteQueryFunctions("Core.LgMes.Server.Common.ComDBQuery",
- "doSimpleQuery", arry, out strErr);
- if (strErr == "" && ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
- {
- if (ds.Tables[0].Rows[0][0].ToString() == "0")
- {
- return false;
- }
- else
- {
- return true;
- }
- }
- else
- return true;
- }
- // 自动获取当前班次信息
- /// <summary>
- /// 自动获取当前班次信息
- /// </summary>
- private void BandingShift()
- {
- try
- {
- string strErr = "";
- ArrayList arry = new ArrayList();
- arry.Add("GetCurrDuty.Select");//此ID为XML文件ID
- CommonClientToServer cctos = new CommonClientToServer();
- cctos.ob = this.ob;
- DataSet ds = cctos.ExecuteQueryFunctions("Core.LgMes.Server.Common.ComDBQuery",
- "doSimpleQuery", arry, out strErr);
- if (strErr == "" && ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
- {
- strBC = ds.Tables[0].Rows[0][0].ToString();
- }
- if (strBC.Trim().Length == 2)
- {
- ulcmeShift1.Value = strBC.Substring(0, 1);
- ulcmeShift2.Value = strBC.Substring(1, 1);
- }
- }
- catch (System.Exception exp)
- {
- MessageBox.Show(exp.Message);
- }
- }
- // 绑定设备运行项目和耗材项目
- /// <summary>
- /// 绑定设备运行项目和耗材项目
- /// </summary>
- private void BindingData()
- {
- GetEsItemData("0", v_GWBM); //获取设备运行状态项目数据
- GetEsItemData("1", v_GWBM); //获取耗材消耗项目数据
- //绑定设备运行状态项目数据
- if (ccmXX.Tables["YXZT"] != null && ccmXX.Tables["YXZT"].Rows.Count > 0)
- {
- for (int i = 0; i < ccmXX.Tables["YXZT"].Rows.Count; i++)
- {
- this.ulgridEquipment.DisplayLayout.Bands[0].Columns[i].Header.Caption = ccmXX.Tables["YXZT"].Rows[i]["ITEMNAME"].ToString();
- this.ulgridEquipment.DisplayLayout.Bands[0].Columns[i].Tag = ccmXX.Tables["YXZT"].Rows[i]["ITEMCODE"].ToString();
- this.ulgridEquipment.DisplayLayout.Rows[0].Cells[i].Value = true;
- }
- }
- if (ccmXX.Tables["HCXH"] != null && ccmXX.Tables["HCXH"].Rows.Count > 0)
- {
- //绑定耗材消耗项目数据
- for (int i = 0; i < ccmXX.Tables["HCXH"].Rows.Count; i++)
- {
- this.ulgridConsume.DisplayLayout.Bands[0].Columns[i].Header.Caption = ccmXX.Tables["HCXH"].Rows[i]["ITEMNAME"].ToString();
- this.ulgridConsume.DisplayLayout.Bands[0].Columns[i].Tag = ccmXX.Tables["HCXH"].Rows[i]["ITEMCODE"].ToString();
- }
- }
- }
- // 获取项目数据 0.设备运行状态 1.耗材消耗
- /// <summary>
- /// 获取项目数据 0.设备运行状态 1.耗材消耗
- /// </summary>
- /// <param name="strXMType">项目类型</param>
- /// <param name="strGWCode">岗位编码</param>
- /// <returns></returns>
- private void GetEsItemData(string strXMType, string strGWCode)
- {
- try
- {
- string strErr = "";
- ArrayList arry = new ArrayList();
- arry.Add("frmJJBMgt.Query");//此ID为XML文件ID
- arry.Add(strXMType);
- arry.Add(strGWCode);
- CommonClientToServer cctos = new CommonClientToServer();
- cctos.ob = this.ob;
- DataSet ds = cctos.ExecuteQueryFunctions("Core.LgMes.Server.Common.ComDBQuery",
- "doSimpleQuery", arry, out strErr);
- if (strErr == "" && ds != null)
- {
- DataTable dt = ds.Tables[0];
- if (strXMType == "0") //设备运行状态
- {
- dt.TableName = "YXZT";
- if (ccmXX.Tables.Contains("YXZT"))
- {
- ccmXX.Tables["YXZT"].Clear();
- }
- }
- else
- {
- dt.TableName = "HCXH";
- if (ccmXX.Tables.Contains("HCXH"))
- {
- ccmXX.Tables["HCXH"].Clear();
- }
- }
- ccmXX.Merge(dt);
- }
- }
- catch (System.Exception exp)
- {
- MessageBox.Show(exp.Message);
- }
- }
- // 获取交接班信息
- /// <summary>
- /// 获取交接班信息
- /// </summary>
- private void GetJJBInfo()
- {
- try
- {
- string date = DateTime.Now.ToString("yyyy-MM-dd"); //当前时间
- string strErr = "";
- ArrayList arry = new ArrayList();
- arry.Add("frmGetJJBInfo.Query");//此ID为XML文件ID
- arry.Add(v_GWBM); //岗位编码
- arry.Add(date); //当前时间
- arry.Add(strBC); //班次
- CommonClientToServer cctos = new CommonClientToServer();
- cctos.ob = this.ob;
- DataSet ds = cctos.ExecuteQueryFunctions("Core.LgMes.Server.Common.ComDBQuery",
- "doSimpleQuery", arry, out strErr);
- if (strErr == "" && ds != null)
- {
- foreach (DataRow dr in ds.Tables[0].Rows)
- {
- if (dr["itemdatatype"].ToString() == "0") //设备运行数据
- {
- for (int i = 0; i < ulgridEquipment.DisplayLayout.Bands[0].Columns.Count; i++)
- {
- if (ulgridEquipment.DisplayLayout.Bands[0].Columns[i].Tag != null && ulgridEquipment.DisplayLayout.Bands[0].Columns[i].Tag.ToString() == dr["itemcode"].ToString())
- {
- ulgridEquipment.DisplayLayout.Rows[0].Cells[i].Value = Convert.ToBoolean(Convert.ToInt16(dr["itemvalue"]));
- break;
- }
- }
- }
- else if (dr["itemdatatype"].ToString() == "1") //耗材消耗
- {
- for (int i = 0; i < ulgridConsume.DisplayLayout.Bands[0].Columns.Count; i++)
- {
- if (ulgridConsume.DisplayLayout.Bands[0].Columns[i].Tag != null && ulgridConsume.DisplayLayout.Bands[0].Columns[i].Tag.ToString() == dr["itemcode"].ToString())
- {
- ulgridConsume.DisplayLayout.Rows[0].Cells[i].Value = dr["itemvalue"].ToString();
- break;
- }
- }
- }
- strNumId = dr["numid"].ToString();
- ulcmeState.SelectedIndex = Convert.ToInt16(dr["affirmflag"]);
- txtName.Text = dr["esname"].ToString();
- txtMemo.Text = dr["esmemo"].ToString();
- dtpkDate.Value = Convert.ToDateTime(dr["esdate"]);
- if (!string.IsNullOrEmpty(dr["shiftcode"].ToString()))
- {
- ulcmeShift1.Value = dr["shiftcode"].ToString().Substring(0, 1);
- ulcmeShift2.Value = dr["shiftcode"].ToString().Substring(1, 1);
- }
- }
- }
- }
- catch { }
- }
- private void btnOk_Click(object sender, EventArgs e)
- {
- try
- {
- if (ulcmeShift1.Text.Length == 0 || ulcmeShift2.Text.Length == 0)
- {
- MessageBox.Show("请选择班别班次!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
- return;
- }
- if (ulcmeState.Text == "否")
- {
- MessageBox.Show("必须确认交接班状态!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
- return;
- }
- //判断耗材消耗是否全部录入
- for (int i = 0; i < ulgridConsume.DisplayLayout.Rows[0].Cells.Count; i++)
- {
- if (ulgridConsume.DisplayLayout.Bands[0].Columns[i].Tag != null)
- {
- if (ulgridConsume.DisplayLayout.Rows[0].Cells[i].Value.ToString() == "")
- {
- MessageBox.Show("耗材消耗输入不完全,请重新输入!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
- return;
- }
- }
- }
- string strErr = "";
- ArrayList arry = new ArrayList();
- arry.Add("frmSysdate.select");//此ID为XML文件ID
- CommonClientToServer cctos = new CommonClientToServer();
- cctos.ob = this.ob;
- DataSet ds = cctos.ExecuteQueryFunctions("Core.LgMes.Server.Common.ComDBQuery",
- "doSimpleQuery", arry, out strErr);
- DateTime currTime = DateTime.Now;
- if (strErr == "" && ds != null)
- {
- currTime = Convert.ToDateTime(ds.Tables[0].Rows[0]["VDATE"]);
- dtpkDate.Value = currTime;
- }
- //判断是否交接班
- if (!CheckIsChangeClass(currTime))
- {
- MessageBox.Show("现在暂时不能交班,请等到交班时间再进行交接班!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
- return;
- }
- //判断是否已经完成交接班
- bool ESFlag = JudgeESState(currTime);
- string strOut = "";
- if (!ESFlag)
- {
- strOut = "您确认要交接班吗?";
- }
- else
- {
- strOut = "当前班次已完成交接班,你确认修改信息吗?";
- }
- try
- {
- DialogResult result = MessageBox.Show(this, strOut, "提示", MessageBoxButtons.YesNo,
- MessageBoxIcon.Question, MessageBoxDefaultButton.Button1);
- if (result == DialogResult.No) return;
-
- //新增交接班详表数据
- arryItemCode.Clear();
- arryItemType.Clear();
- arryItemValue.Clear();
- //设备运行
- for (int i = 0; i < ulgridEquipment.DisplayLayout.Rows[0].Cells.Count; i++)
- {
- if (ulgridEquipment.DisplayLayout.Bands[0].Columns[i].Tag != null)
- {
- arryItemCode.Add(ulgridEquipment.DisplayLayout.Bands[0].Columns[i].Tag.ToString());
- arryItemType.Add("1");
- arryItemValue.Add(ulgridEquipment.DisplayLayout.Rows[0].Cells[i].Value.ToString());
- }
- }
- //耗材消耗
- for (int i = 0; i < ulgridConsume.DisplayLayout.Rows[0].Cells.Count; i++)
- {
- if (ulgridConsume.DisplayLayout.Bands[0].Columns[i].Tag != null)
- {
- arryItemCode.Add(ulgridConsume.DisplayLayout.Bands[0].Columns[i].Tag.ToString());
- arryItemType.Add("1");
- arryItemValue.Add(ulgridConsume.DisplayLayout.Rows[0].Cells[i].Value.ToString());
- }
- }
- string str_BC = ulcmeShift1.Value.ToString() + ulcmeShift2.Value.ToString();
- strErr = "";
- string strSqlID = "frmJJBDetailInfo.add";
- object[] Args = new object[11];
- Args[0] = strNumId; //交接班序号
- Args[1] = v_GWBM; //岗位编码
- Args[2] = str_BC; //班次班组
- Args[3] = dtpkDate.Value.ToString("yyyy-MM-dd HH:mm:ss"); //交接班日期
- Args[4] = txtName.Text.Trim(); //交接班人员
- Args[5] = ulcmeState.Value; //交接班确认标志
- Args[6] = txtMemo.Text.Trim(); //交接班备注
- Args[7] = "0"; //手动/自动标志
- Args[8] = arryItemCode; //配置项目编码
- Args[9] = arryItemType; //项目数据类型
- Args[10] = arryItemValue; //项目数值
- CommonClientToServer ccts = new CommonClientToServer();
- ccts.ob = ob;
- string Code = ccts.ExecuteProcedureFunctions("Core.LgMes.Server.Common.ComDBProcedure",
- "ExecProcWithCollParam", strSqlID, Args, out strErr);
- if (strErr != "")
- {
- MessageBox.Show("修改失败!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
- }
- else
- {
- MessageBox.Show("保存成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
- }
- GetJJBInfo();
-
- }
- catch (System.Exception exp)
- {
- MessageBox.Show(exp.Message);
- }
- }
- catch { }
- }
- // 系统功能
- /// <summary>
- /// 系统功能
- /// </summary>
- public override void ToolBar_Click(object sender, string ToolbarKey)
- {
- switch (ToolbarKey)
- {
- case "Query":
- BindingData();
- GetJJBInfo();
- break;
- //case "QueryStl":
- // getStlLGMRestlt();
- // break;
- //case "Save":
- // saveLGMRestlt();
- // break;
- //case "CancelSave":
- // deleteLGMRestlt();
- // break;
- case "Exit":
- this.Close();
- break;
- default:
- break;
- }
- }
- public void GridKeyDown(int RowId, Infragistics.Win.UltraWinGrid.UltraGrid GRID)
- {
- switch (RowId)
- {
- case 38:
- GRID.PerformAction(Infragistics.Win.UltraWinGrid.UltraGridAction.ExitEditMode);
- GRID.PerformAction(Infragistics.Win.UltraWinGrid.UltraGridAction.AboveCell);
- GRID.PerformAction(Infragistics.Win.UltraWinGrid.UltraGridAction.EnterEditMode);
- break;
- case 37:
- GRID.PerformAction(Infragistics.Win.UltraWinGrid.UltraGridAction.ExitEditMode);
- GRID.PerformAction(Infragistics.Win.UltraWinGrid.UltraGridAction.PrevCellByTab);
- GRID.PerformAction(Infragistics.Win.UltraWinGrid.UltraGridAction.EnterEditMode);
- break;
- case 39:
- GRID.PerformAction(Infragistics.Win.UltraWinGrid.UltraGridAction.ExitEditMode);
- GRID.PerformAction(Infragistics.Win.UltraWinGrid.UltraGridAction.NextCellByTab);
- GRID.PerformAction(Infragistics.Win.UltraWinGrid.UltraGridAction.EnterEditMode);
- break;
- case 40:
- GRID.PerformAction(Infragistics.Win.UltraWinGrid.UltraGridAction.ExitEditMode);
- GRID.PerformAction(Infragistics.Win.UltraWinGrid.UltraGridAction.BelowCell);
- GRID.PerformAction(Infragistics.Win.UltraWinGrid.UltraGridAction.EnterEditMode);
- break;
- case 13://回车
- GRID.PerformAction(Infragistics.Win.UltraWinGrid.UltraGridAction.ExitEditMode);
- GRID.PerformAction(Infragistics.Win.UltraWinGrid.UltraGridAction.NextCellByTab);
- GRID.PerformAction(Infragistics.Win.UltraWinGrid.UltraGridAction.EnterEditMode);
- break;
- }
- }
- public bool CheckIsChangeClass(DateTime currTime)
- {
- string datetime = currTime.ToString("HH:mm:ss");
- string Z1 = "11:15:00", Z2 = "12:15:00", Z3 = "15:25:00", Z4 = "16:15:00", Z5 = "23:45:00", Z6 = "00:15:00", Z7 = "00:00:00", Z8 = "23:59:59";
- if ((string.Compare(datetime, Z1) >= 0 && string.Compare(datetime, Z2) < 0)
- || (string.Compare(datetime, Z3) >= 0 && string.Compare(datetime, Z4) < 0)
- || ((string.Compare(datetime, Z5) >= 0 && string.Compare(datetime, Z8) < 0)
- || (string.Compare(datetime, Z7) >= 0 && string.Compare(datetime, Z6) < 0)))
- {
- return true;
- }
- return false;
- }
-
- private void ulgridEquipment_KeyDown(object sender, KeyEventArgs e)
- {
- GridKeyDown(e.KeyValue, ulgridEquipment);
- }
- private void ulgridConsume_KeyDown(object sender, KeyEventArgs e)
- {
- GridKeyDown(e.KeyValue, ulgridConsume);
- }
- public static void CheckNumValidate(string szVal)
- {
- try
- {
- Convert.ToDecimal(szVal);
- }
- catch (Exception ex)
- {
- MessageBox.Show(ex.Message, "提示");
- }
- }
- private void ultraGroupBox2_KeyPress(object sender, KeyPressEventArgs e)
- {
- if (e.KeyChar == (char)13)
- {
- Control c = GetNextControl(this.ActiveControl, true);
- bool ok = SelectNextControl(this.ActiveControl, true, true, true, true);
- if (ok && c != null)
- {
- if (c is System.Windows.Forms.TextBox)
- {
- ((System.Windows.Forms.TextBox)c).SelectAll();
- }
- }
- }
- }
- private void ulgridEquipment_InitializeLayout(object sender, Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs e)
- {
- }
- private void ulgridConsume_CellChange(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e)
- {
- if (ulgridConsume.ActiveCell.Text != "")
- CheckNumValidate(ulgridConsume.ActiveCell.Text);
- }
- }
- }
|