| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572 |
- using Core.Mes.Client.Comm.Control;
- using Core.Mes.Client.Comm.Server;
- using Core.Mes.Client.Comm.Tool;
- using Core.StlMes.Client.ZGMil.Result;
- using CoreFS.CA06;
- using Infragistics.Win;
- using Infragistics.Win.UltraWinGrid;
- using System;
- using System.Collections;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.Windows.Forms;
- namespace Core.StlMes.Client.ZGMil.NodeResultQuery
- {
- public partial class FrmScrap : FrmBase
- {
- private ArrayList list = null;
- private string plineCode = "";
- public FrmScrap(ArrayList arr,string pline_Code,OpeBase ob)
- {
- InitializeComponent();
- list = arr;
- this.ob = ob;
- plineCode = pline_Code;
-
- }
- /// <summary>
- /// 查询所有合格管序号
- /// </summary>
- private void QuerySeq(ArrayList list)
- {
- DataTable ds = ServerHelper.GetData("com.steering.mes.zgmil.coup.EddyCurrentTestingResult.doQuerySeq", new object[] { list }, ob);
- GridHelper.CopyDataToDatatable(ref ds, ref dataTable4, true);
- }
- public string alamNum = "";
- public string scrapNum = "";
- public string testOfflineNum = "";
- private void ultraToolbarsManager1_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e)
- {
- switch (e.Tool.Key)
- {
- case "Save":
- Save();
- break;
- case "Close":
- CloseFrm();
- break;
- }
- }
- int alarmTotalNum = 0;//报警总支数
- int scarpTotalNum = 0;//废品总支数
- int offlineTotalNum = 0;//下线总支数
- private void CloseFrm()
- {
- alamNum = alarmTotalNum.ToString();
- scrapNum = scarpTotalNum.ToString();
- testOfflineNum = offlineTotalNum.ToString();
- this.DialogResult = System.Windows.Forms.DialogResult.OK;
- this.Close();
- }
- /// <summary>
- /// 保存可疑、剔除品
- /// </summary>
- private void Save()
- {
- this.ultraGridDetailDes1.UpdateData();
- this.ultraGridDetailDes2.UpdateData();
- this.ultraGridDetailDes3.UpdateData();
- string strInbound = "800707";//入库类型
- string strInMemo = "";
- alarmTotalNum = 0;
- scarpTotalNum = 0;
- offlineTotalNum = 0;
- IQueryable<UltraGridRow> checkAlarmRows = this.ultraGridDetailDes1.Rows.AsQueryable().Where(" CHK = 'True'");
- IQueryable<UltraGridRow> checkScrapRows = this.ultraGridDetailDes2.Rows.AsQueryable().Where(" CHK = 'True'");
- IQueryable<UltraGridRow> checkOffineRow = this.ultraGridDetailDes3.Rows.AsQueryable().Where(" CHK = 'True'");
- ArrayList alarmlist = new ArrayList();
- ArrayList scraplist = new ArrayList();
- ArrayList offlinelist = new ArrayList();
- foreach (UltraGridRow uRow in checkAlarmRows)
- {
- ArrayList list1 = new ArrayList();
- if (uRow.Cells["REASON"].Value.ToString() == "")
- {
- MessageUtil.ShowTips("报警品原因不能为空,请选择!");
- return;
- }
- if (uRow.Cells["ACT_COUNT"].Value.ToString() == "" || uRow.Cells["ACT_COUNT"].Value.ToString() == "0")
- {
- MessageUtil.ShowTips("报警支数不能为空或者为零支,请输入!");
- return;
- }
- if (!uRow.Cells["ACT_COUNT"].Value.ToString().TryParseInt())
- {
- MessageUtil.ShowTips("报警支数请输入整数!");
- return;
- }
- alarmTotalNum = alarmTotalNum + int.Parse(uRow.Cells["ACT_COUNT"].Value.ToString3());
- list1.Add(uRow.Cells["REASON"].Text.Trim());
- list1.Add(uRow.Cells["ACT_COUNT"].Value.ToString3());
- list1.Add(alarmTotalNum.ToString());
- alarmlist.Add(list1);
- }
- int n = 0;
- foreach (UltraGridRow ugr in checkScrapRows)
- {
- string alarmReason = ugr.Cells["REASON1"].Text.Trim();
- int num = 0;
- foreach (UltraGridRow ugr1 in checkAlarmRows)
- {
- if (ugr1.Cells["REASON"].Text.Trim().Equals(alarmReason))
- {
- num = num + int.Parse(ugr1.Cells["ACT_COUNT"].Value.ToString3());
- }
- }
- if (num < int.Parse(ugr.Cells["ACT_COUNT"].Value.ToString3()))
- {
- n = n + 1;
- }
- }
- if (n > 0)
- {
- MessageUtil.ShowTips("废品支数不能超出对应的报警原因下的支数!");
- return;
- }
- foreach (UltraGridRow row in checkScrapRows)
- {
- ArrayList list2 = new ArrayList();
- if (row.Cells["REASON1"].Value.ToString2() == "")
- {
- MessageUtil.ShowTips("报警原因不能为空,请选择!");
- return;
- }
- if (row.Cells["REASON"].Value.ToString() == "")
- {
- MessageUtil.ShowTips("废品原因不能为空,请选择!");
- return;
- }
- if (row.Cells["ACT_COUNT"].Value.ToString() == "" || row.Cells["ACT_COUNT"].Value.ToString() == "0")
- {
- MessageUtil.ShowTips("废品支数不能为空或者为零支,请输入!");
- return;
- }
- if (!row.Cells["ACT_COUNT"].Value.ToString().TryParseInt())
- {
- MessageUtil.ShowTips("废品支数请输入整数!");
- return;
- }
- scarpTotalNum = scarpTotalNum + int.Parse(row.Cells["ACT_COUNT"].Value.ToString3());
- list2.Add(row.Cells["REASON"].Text.Trim());
- list2.Add(row.Cells["ACT_COUNT"].Value.ToString3());
- list2.Add(scarpTotalNum.ToString());
- list2.Add(row.Cells["REASON1"].Text.Trim());
- scraplist.Add(list2);
- }
- foreach (UltraGridRow offlineRow in checkOffineRow)
- {
- ArrayList list3 = new ArrayList();
- if (offlineRow.Cells["REASON"].Value.ToString() == "")
- {
- MessageUtil.ShowTips("下线品原因不能为空,请选择!");
- return;
- }
- if (offlineRow.Cells["ACT_COUNT"].Value.ToString() == "" || offlineRow.Cells["ACT_COUNT"].Value.ToString() == "0")
- {
- MessageUtil.ShowTips("下线支数不能为空或者为零支,请输入!");
- return;
- }
- if (!offlineRow.Cells["ACT_COUNT"].Value.ToString().TryParseInt())
- {
- MessageUtil.ShowTips("下线支数请输入整数!");
- return;
- }
- offlineTotalNum = offlineTotalNum + int.Parse(offlineRow.Cells["ACT_COUNT"].Value.ToString3());
- list3.Add(offlineRow.Cells["REASON"].Text.Trim());
- list3.Add(offlineRow.Cells["ACT_COUNT"].Value.ToString3());
- list3.Add(offlineTotalNum.ToString());
- offlinelist.Add(list3);
- }
- DataTable dtMemo = PipeManageClass.getComTypeInfo(strInbound, ob);
- if (dtMemo.Rows.Count >= 1)
- {
- strInMemo = dtMemo.Rows[0]["MEMO"].ToString();
- }
- if (scarpTotalNum + offlineTotalNum - alarmTotalNum > 0)
- {
- MessageUtil.ShowTips("废品和已探伤下线都是在报警品之下,废品支数加已探伤下线支数不能大于报警支数!");
- return;
- }
- DataTable ds1 = ServerHelper.GetData("com.steering.mes.zgmil.coup.SurfaceInspectionResult.doQueryPort", new object[] { list[0].ToString(), plineCode }, ob);
- DataTable dtxx = ServerHelper.GetData("com.steering.mes.zgmil.coup.FrmOffLine.doQueryXxOfflinNum", new object[] { list[2].ToString(), plineCode, list[6].ToString(), list[7].ToString() }, ob);
- if (dtxx.Rows.Count > 0)
- {
- int xxOfflineNum = int.Parse(dtxx.Rows[0]["OFFLINE_NUM"].ToString3());
- if (scarpTotalNum + offlineTotalNum + xxOfflineNum > int.Parse(ds1.Rows[0]["QUALIFIED_NUM"].ToString3()))
- {
- MessageBox.Show("交库点已交库和离线了" + xxOfflineNum + "支,请确认数据再做离线!", "提示:", MessageBoxButtons.OK, MessageBoxIcon.Warning);
- return;
- }
- }
- ArrayList parm = new ArrayList();
- DataTable ds = getStoreNo(plineCode);
- if (ds == null)
- {
- MessageUtil.ShowTips("无轧管在线库基础信息,请维护!");
- return;
- }
- parm.Add(ds.Rows[0]["STORAGE_NO"].ToString());
- parm.Add(ds.Rows[0]["STORAGE_NO"].ToString() + "10101");
- parm.Add(ds.Rows[0]["STORAGE_TYPE_NO"].ToString());
- parm.Add(ds.Rows[0]["STORAGE_TYPE_NAME"].ToString());
- parm.Add(this.UserInfo.GetUserName());
- parm.Add(this.UserInfo.GetDeptid());
- parm.Add(this.UserInfo.GetDepartment());
- parm.Add(PipeManageClass.GetDepartIdBySectionId(this.UserInfo.GetDeptid(), this.ob));
- parm.Add(PipeManageClass.GetDepartBySectionId(this.UserInfo.GetDeptid(), this.ob));
- parm.Add(UserInfo.GetUserOrder());
- parm.Add(UserInfo.GetUserGroup());
- CoreClientParam ccp = new CoreClientParam();
- ccp.ServerName = "com.steering.mes.zgmil.coup.EddyCurrentTestingResult";
- ccp.MethodName = "saveScrapData";
- ccp.ServerParams = new object[] { alarmlist, scraplist, offlinelist, list, strInbound, strInMemo, plineCode, parm };
- ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
- if (ccp.ReturnCode != -1)
- {
- if (ccp.ReturnInfo.Equals("保存成功!"))
- {
- alamNum = alarmTotalNum.ToString();
- scrapNum = scarpTotalNum.ToString();
- testOfflineNum = offlineTotalNum.ToString();
- this.DialogResult = System.Windows.Forms.DialogResult.OK;
- }
- else
- {
- MessageUtil.ShowTips(ccp.ReturnInfo);
- }
- }
- }
- /// <summary>
- /// 查询仓库信息
- /// </summary>
- /// <param name="plineCode"></param>
- /// <returns></returns>
- private DataTable getStoreNo(string plineCode)
- {
- DataTable ds = ServerHelper.GetData("com.steering.mes.signature.FrmInOnlineStore.doQueryStoreNo", new object[] { plineCode }, ob);
- if (ds.Rows.Count > 0)
- {
- return ds;
- }
- else
- {
- return null;
- }
- }
- private void FrmScrap_Load(object sender, EventArgs e)
- {
- Init(plineCode);
- doQuery();
- //QuerySeq(list);
- }
- public void Init(string plineCode)
- {
- ValueList va1 = new ValueList();
- ValueList va2 = new ValueList();
- ValueList va3 = new ValueList();
- ValueList va4 = new ValueList();
-
- if (plineCode != null)
- {
- if (plineCode.Equals("C009") || plineCode.Equals("C017") || plineCode.Equals("C008") || plineCode.Equals("C072"))
- {
- va1.ValueListItems.Add("");
- va1.ValueListItems.Add("LOD");
- va1.ValueListItems.Add("LID");
- va1.ValueListItems.Add("TOD");
- va1.ValueListItems.Add("TID");
- va4.ValueListItems.Add("");
- va4.ValueListItems.Add("LOD");
- va4.ValueListItems.Add("LID");
- va4.ValueListItems.Add("TOD");
- va4.ValueListItems.Add("TID");
- va2.ValueListItems.Add("");
- va2.ValueListItems.Add("内折");
- va2.ValueListItems.Add("内结疤");
- va2.ValueListItems.Add("内划伤");
- va2.ValueListItems.Add("拉凹");
- va2.ValueListItems.Add("内棱");
- va2.ValueListItems.Add("取样废");
- va2.ValueListItems.Add("内壁伤");
- va2.ValueListItems.Add("内鼓包");
- va2.ValueListItems.Add("外折");
- va2.ValueListItems.Add("外结疤");
- va2.ValueListItems.Add("外划伤");
- va2.ValueListItems.Add("裂纹");
- va2.ValueListItems.Add("靑线");
- va2.ValueListItems.Add("轧折");
- va2.ValueListItems.Add("碰伤");
- va2.ValueListItems.Add("孔洞");
- va2.ValueListItems.Add("其他");
- va3.ValueListItems.Add("");
- va3.ValueListItems.Add("内折");
- va3.ValueListItems.Add("内结疤");
- va3.ValueListItems.Add("内划伤");
- va3.ValueListItems.Add("拉凹");
- va3.ValueListItems.Add("内棱");
- va3.ValueListItems.Add("取样废");
- va3.ValueListItems.Add("内壁伤");
- va3.ValueListItems.Add("内鼓包");
- va3.ValueListItems.Add("外折");
- va3.ValueListItems.Add("外结疤");
- va3.ValueListItems.Add("外划伤");
- va3.ValueListItems.Add("裂纹");
- va3.ValueListItems.Add("靑线");
- va3.ValueListItems.Add("轧折");
- va3.ValueListItems.Add("碰伤");
- va3.ValueListItems.Add("孔洞");
- va3.ValueListItems.Add("其他");
-
- }
- else if (plineCode.Equals("C010"))
- {
- va1.ValueListItems.Add("");
- va1.ValueListItems.Add("孔洞");
- va1.ValueListItems.Add("外折");
- va1.ValueListItems.Add("划伤");
- va1.ValueListItems.Add("内伤");
- va1.ValueListItems.Add("误报");
- va2.ValueListItems.Add("");
- va2.ValueListItems.Add("孔洞");
- va2.ValueListItems.Add("外折");
- va2.ValueListItems.Add("内伤");
- va3.ValueListItems.Add("");
- va3.ValueListItems.Add("孔洞");
- va3.ValueListItems.Add("外折");
- va3.ValueListItems.Add("内伤");
- va4.ValueListItems.Add("");
- va4.ValueListItems.Add("孔洞");
- va4.ValueListItems.Add("外折");
- va4.ValueListItems.Add("划伤");
- va4.ValueListItems.Add("内伤");
- va4.ValueListItems.Add("误报");
- //this.ultraGridDetailDes2.DisplayLayout.Bands[0].Columns["REASON1"].Hidden = true;
-
- }
- }
- this.ultraGridDetailDes1.DisplayLayout.Bands[0].Columns["REASON"].ValueList = va1;
- this.ultraGridDetailDes2.DisplayLayout.Bands[0].Columns["REASON"].ValueList = va2;
- this.ultraGridDetailDes3.DisplayLayout.Bands[0].Columns["REASON"].ValueList = va3;
- this.ultraGridDetailDes2.DisplayLayout.Bands[0].Columns["REASON1"].ValueList = va4;
-
- }
- /// <summary>
- /// 查询可疑品、剔除品
- /// </summary>
- public void doQuery()
- {
- dataTable1.Clear();
- dataTable2.Clear();
- dataTable3.Clear();
- DataTable dt = ServerHelper.GetData("com.steering.mes.zgmil.coup.EddyCurrentTestingResult.doQueryAlarmNum", new object[] { list }, ob);
- GridHelper.CopyDataToDatatable(ref dt,ref dataTable1,true);
- DataTable ds = ServerHelper.GetData("com.steering.mes.zgmil.coup.EddyCurrentTestingResult.doQueryScrapNum", new object[] { list }, ob);
- GridHelper.CopyDataToDatatable(ref ds, ref dataTable2, true);
- DataTable dd = ServerHelper.GetData("com.steering.mes.zgmil.coup.EddyCurrentTestingResult.doQueryOffineNum", new object[] { list }, ob);
- GridHelper.CopyDataToDatatable(ref dd, ref dataTable3, true);
- }
- private void ultraGridDetailDes1_CellChange(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e)
- {
- UltraGrid ug = (UltraGrid)sender;
- this.ultraGridDetailDes1.UpdateData();
- if (e.Cell.Column.Key == "REASON")
- {
- if (e.Cell.Value == "")
- {
- MessageBox.Show("您未选择任何选项,请重新选择", "提示:", MessageBoxButtons.OK, MessageBoxIcon.Warning);
- return;
- }
- int temp = 0;
- for (int i = 0; i < ug.Rows.Count(); i++)
- {
- UltraGridRow ugr = ug.Rows[i];
- if (e.Cell.Value.ToString().Equals(ugr.Cells["REASON"].Value.ToString()))
- {
- temp = temp + 1;
- }
- }
- if (temp > 1)
- {
- MessageBox.Show(e.Cell.Value.ToString() + "选项已被选取,请重新选择", "提示:", MessageBoxButtons.OK, MessageBoxIcon.Warning);
- e.Cell.Row.Cells["REASON"].Value = "";
- }
- }
- //if(e.Cell.Column.Key == "ACT_COUNT")
- //{
- // int total = 0;
- // foreach(UltraGridRow row in this.ultraGridDetailDes1.Rows)
- // {
- // if (Convert.ToBoolean(row.Cells["CHK"].Text) == true)
- // {
- // total = total + int.Parse(row.Cells["ACT_COUNT"].Value.ToString3());
-
- // }
- // }
- // ultraGrid1.BeginUpdate();
- // foreach (UltraGridRow uRow in this.ultraGrid1.Rows)
- // {
- // if (total >= uRow.Index + 1)
- // {
- // uRow.Cells["CHK1"].Value = true;
- // }
- // else
- // {
- // uRow.Cells["CHK1"].Value = false;
- // }
- // }
- // ultraGrid1.EndUpdate();
- //}
- }
- private void ultraGridDetailDes2_CellChange(object sender, CellEventArgs e)
- {
- UltraGrid ug = (UltraGrid)sender;
- this.ultraGridDetailDes2.UpdateData();
- if (e.Cell.Column.Key == "REASON")
- {
- if (e.Cell.Value == "")
- {
- MessageBox.Show("您未选择任何选项,请重新选择", "提示:", MessageBoxButtons.OK, MessageBoxIcon.Warning);
- return;
- }
- int temp = 0;
- for (int i = 0; i < ug.Rows.Count(); i++)
- {
- UltraGridRow ugr = ug.Rows[i];
- if (e.Cell.Value.ToString().Equals(ugr.Cells["REASON"].Value.ToString()) && e.Cell.Row.Cells["REASON1"].Value.ToString2().Equals(ugr.Cells["REASON1"].Value.ToString2()))
- {
- temp = temp + 1;
- }
- }
- if (temp > 1)
- {
- MessageBox.Show(e.Cell.Value.ToString() + "选项已被选取,请重新选择", "提示:", MessageBoxButtons.OK, MessageBoxIcon.Warning);
- e.Cell.Row.Cells["REASON"].Value = "";
- }
- }
- if (e.Cell.Column.Key == "REASON1")
- {
- if (e.Cell.Value == "")
- {
- MessageBox.Show("您未选择任何选项,请重新选择", "提示:", MessageBoxButtons.OK, MessageBoxIcon.Warning);
- return;
- }
- int temp1 = 0;
- for (int i = 0; i < ug.Rows.Count(); i++)
- {
- UltraGridRow ugr = ug.Rows[i];
- if (e.Cell.Value.ToString().Equals(ugr.Cells["REASON1"].Value.ToString()) && e.Cell.Row.Cells["REASON"].Value.ToString2().Equals(ugr.Cells["REASON"].Value.ToString2()))
- {
- temp1 = temp1 + 1;
- }
- }
- if (temp1 > 1)
- {
- MessageBox.Show(e.Cell.Value.ToString() + "选项已被选取,请重新选择", "提示:", MessageBoxButtons.OK, MessageBoxIcon.Warning);
- e.Cell.Row.Cells["REASON"].Value = "";
- }
- }
- //if (e.Cell.Column.Key == "ACT_COUNT")
- //{
- // int total = 0;
- // foreach (UltraGridRow row in this.ultraGridDetailDes2.Rows)
- // {
- // if (Convert.ToBoolean(row.Cells["CHK"].Text) == true)
- // {
- // total = total + int.Parse(row.Cells["ACT_COUNT"].Value.ToString3());
- // }
- // }
- // ultraGrid1.BeginUpdate();
- // IQueryable<UltraGridRow> checkAlarmRows = this.ultraGrid1.Rows.AsQueryable().Where(" CHK1 = 'True' and CHK3 = 'False' ORDER BY TO_NUMBER(SEQ) ASC");
- // if (checkAlarmRows.Count() < total)
- // {
- // MessageUtil.ShowTips("废品总支数不能大于报警总支数");
- // return;
- // }
- // else
- // {
- // int i = 1;
-
- // foreach (UltraGridRow uRow in checkAlarmRows)
- // {
- // uRow.Cells["CHK2"].Value = false;
- // if (i <= total)
- // {
- // uRow.Cells["CHK2"].Value = true;
- // }
- // i++;
- // }
-
- // }
- // ultraGrid1.EndUpdate();
- //}
- }
- private void ultraGridDetailDes3_CellChange(object sender, CellEventArgs e)
- {
- UltraGrid ug = (UltraGrid)sender;
- this.ultraGridDetailDes3.UpdateData();
- if (e.Cell.Column.Key == "REASON")
- {
- if (e.Cell.Value == "")
- {
- MessageBox.Show("您未选择任何选项,请重新选择", "提示:", MessageBoxButtons.OK, MessageBoxIcon.Warning);
- return;
- }
- int temp = 0;
- for (int i = 0; i < ug.Rows.Count(); i++)
- {
- UltraGridRow ugr = ug.Rows[i];
- if (e.Cell.Value.ToString().Equals(ugr.Cells["REASON"].Value.ToString()))
- {
- temp = temp + 1;
- }
- }
- if (temp > 1)
- {
- MessageBox.Show(e.Cell.Value.ToString() + "选项已被选取,请重新选择", "提示:", MessageBoxButtons.OK, MessageBoxIcon.Warning);
- e.Cell.Row.Cells["REASON"].Value = "";
- }
- }
- }
- private void FrmScrap_Leave(object sender, EventArgs e)
- {
- FrmTestingResult frmTestingResult = new FrmTestingResult();
- frmTestingResult.ETResultSave();
- }
- }
-
- }
|