| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409 |
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.Windows.Forms;
- using Core.Mes.Client.Comm.Control;
- using Core.Mes.Client.Comm.Server;
- using CoreFS.CA06;
- using Infragistics.Win.UltraWinGrid;
- using System.Collections;
- namespace Core.StlMes.Client.SaleOrder
- {
- public partial class FrmOrderSpec : FrmBase
- {
- public delegate void GetOrderSpec(string specName, UltraGridRow retunSpecRow);
- public event GetOrderSpec GetOrderSpecs;
- private string titleName = "";
- /// <summary>
- /// 规格描述
- /// </summary>
- public string TitleName
- {
- get { return titleName; }
- set { titleName = value; }
- }
- private string specCode = "";
- public string SpecCode
- {
- get { return specCode; }
- set { specCode = value; }
- }
- private string pscType = "";
- /// <summary>
- /// 品名类型 A B C D
- /// </summary>
- public string PscType
- {
- get { return pscType; }
- set { pscType = value; }
- }
- int iSelectRow = -1; //判定全程途径是否单选
- OpeBase ob = new OpeBase();
- string codID = "";
- string codName = "";
- string indexWt = "";
-
- public FrmOrderSpec()
- {
- InitializeComponent();
- }
- protected override void OnLoad(EventArgs e)
- {
- try
- {
- base.OnLoad(e);
- ultraGrid2.DisplayLayout.Override.FilterUIType = Infragistics.Win.UltraWinGrid.FilterUIType.FilterRow;
- ultraGrid2.DisplayLayout.Override.FilterOperatorDefaultValue = Infragistics.Win.UltraWinGrid.FilterOperatorDefaultValue.Contains;
- //ultraGrid2.DisplayLayout.Override.CellClickAction = Infragistics.Win.UltraWinGrid.CellClickAction.RowSelect;
- }
- catch (System.Exception ex)
- { }
- }
- public FrmOrderSpec(OpeBase db)
- {
- this.ob = db;
- InitializeComponent();
- }
- private void ultraToolbarsManagerSpec_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e)
- {
- iSelectRow = -1;
- switch (e.Tool.Key.ToString())
- {
- case "Query":
- titleName = "";
- doQuery();
- break;
- case "ButtonCom":
- //if (CheckData() == true)
- //{
- // doSave();
- //}
- break;
- case "ButtonTrueCom":
- //判断是否有勾选项,没有则提示,chkbool大于0执行新增规则描述函数。
- //int chkbool = sochkRows();
- //if (chkbool > 0)
- //{
- // if (rowsAsk() == true)
- // {
- // if (CheckData() == true)
- // {
- // doSave();
- // }
- // }
- //}
- //Boolean insertOut = false;
- //for (int i = 0; i < ultraGrid1.Rows.Count; i++)
- //{
- // Infragistics.Win.UltraWinGrid.UltraGridRow row = ultraGrid1.Rows[i];
- // if (row.Cells["ORDER_SPEC_DESC"].Value.ToString() == indexWt
- // || row.Cells["SPCHK"].Value.ToString().ToLower().Equals("true"))
- // {
-
- // insertOut = true;
- // string descName = row.Cells["ORDER_SPEC_DESC"].Value.ToString();
- // GetOrderSpecs(descName, row);
- // this.Close();
- // }
- //}
- //if (!insertOut)
- //{
- // MessageBox.Show("请选择数据后再进行操作!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
- //}
- if (ultraGrid2.ActiveRow != null)
- {
- Infragistics.Win.UltraWinGrid.UltraGridRow row = ultraGrid2.ActiveRow;
- string descName = row.Cells["ORDER_SPEC_DESC"].Value.ToString();
- GetOrderSpecs(descName, row);
- this.Close();
- }
- break;
- case "ButtonEsc":
- this.Close();
- break;
- }
- }
- /// <summary>
- /// 查询方法,比较通用的查询方法
- /// </summary>
- private void doQuery()
- {
-
- this.dataTableSpec.Clear();
- //this.dataTableSpecs.Clear();
- try
- {
- //DataTable dt = ServerHelper.GetData("com.steering.pss.sale.order.CoreOrderLine.getBindSpecOrder", new Object[] { validFlag, titleName, pscType }, this.ob);
- DataTable dt = ServerHelper.GetData("com.steering.pss.sale.order.CoreOrderLine.getBindOrderSpec", new object[] {SpecCode,TitleName }, this.ob);
- GridHelper.CopyDataToDatatable(ref dt, ref this.dataTableSpec, true);
- dataTableSpec.AcceptChanges();
- }
- catch
- {
- return;
- }
- //GridHelper.RefreshAndAutoSize(ultraGrid2);
- }
- private bool IsExistOrderSpec(string orderSpec, string orderSpecCode)
- {
- ArrayList list = new ArrayList();
- list.Add(orderSpec);
- list.Add(orderSpecCode);
- DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.CoreSpecBasicsNew.isExistOrderSpec",
- new object[] { list }, ob);
- if (dt == null)
- {
- return true;
- }
- else if (dt != null && dt.Rows[0][0].ToString() == "0")
- {
- return false;
- }
- return true;
- }
- //private bool CheckData()
- //{
- // ultraGrid1.UpdateData();
- // DataRow[] drs2 = this.dataTableSpecs.Select("SPCHK = 'True'");
- // List<string> insertOrder_SpecNames = new List<string>();
-
- // foreach (DataRow dr in drs2)
- // {
- // if (dr["ORDER_SPEC_DESC"].ToString() == "")
- // {
- // MessageBox.Show("您所要保存的数据中,订货规格描述不能为空!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
- // return false;
- // }
- // else if (IsExistOrderSpec(dr["ORDER_SPEC_DESC"].ToString(), dr["ORDER_SPEC_CODE"].ToString())
- // == true)
- // {
- // MessageBox.Show("已存在订货规格描述-" + dr["ORDER_SPEC_DESC"].ToString() + "!",
- // "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
- // return false;
- // }
- // if (insertOrder_SpecNames.Contains(dr["ORDER_SPEC_DESC"].ToString()))
- // {
- // MessageBox.Show("您所要保存的数据中,出现重复的订货规格描述-[" + dr["ORDER_SPEC_DESC"].ToString() + "]!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
- // return false;
- // }
- // insertOrder_SpecNames.Add(dr["ORDER_SPEC_DESC"].ToString());
- // }
- // return true;
- //}
- //private void doSave()
- //{
- // ultraGrid1.UpdateData();
- // //判断是否有勾选项,没有则提示。
- // int chkbool = sochkRows();
- // if (chkbool <= 0)
- // {
- // MessageBox.Show("请选择数据后再进行操作!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
- // return;
- // }
- // //确定保存吗?
- // if (MessageBox.Show("是否确认保存?", "提示", MessageBoxButtons.YesNo,
- // MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.No)
- // {
- // return;
- // }
- // //从表新增组ArrayList
- // ArrayList spbSupplementAddParams = new ArrayList();
- // //从表修改组ArrayList
- // ArrayList spbSupplementUpdateParams = new ArrayList();
- // //直接遍历从表所有行,判定是否有选中项。
- // for (int j = 0; j < this.dataTableSpecs.Rows.Count; j++)
- // {
- // DataRow minrow = dataTableSpecs.Rows[j];
- // if (minrow["SPCHK"].ToString() == "True")
- // {
- // if (minrow.RowState == DataRowState.Added)
- // {
- // spbSupplementAddParams.Add(codID);
- // spbSupplementAddParams.Add(codID);
- // spbSupplementAddParams.Add(minrow["ORDER_SPEC_DESC"].ToString());
- // //name是冗余字段,不需要。
- // spbSupplementAddParams.Add(codID);
- // spbSupplementAddParams.Add(codName);
- // spbSupplementAddParams.Add(this.UserInfo.GetUserName());
- // spbSupplementAddParams.Add(minrow["MEMO"].ToString());
- // }
- // else if (minrow.RowState == DataRowState.Modified)
- // {
- // spbSupplementUpdateParams.Add(minrow["ORDER_SPEC_DESC"].ToString());
- // spbSupplementUpdateParams.Add(this.UserInfo.GetUserName());
- // spbSupplementUpdateParams.Add(minrow["MEMO"].ToString());
- // spbSupplementUpdateParams.Add(minrow["ORDER_SPEC_CODE"].ToString());
- // }
- // }
- // }
- // //执行数据库相关操作
- // CoreClientParam ccp = new CoreClientParam();
- // if (spbSupplementAddParams.Count > 0)
- // {
- // //服务端的包名+类名
- // ccp.ServerName = "com.steering.pss.sale.order.CoreCtrlOrderLine";
- // //类里的方法名
- // ccp.MethodName = "BindCmbSpecADD";
- // ccp.ServerParams = new object[] { spbSupplementAddParams };
- // }
- // if (spbSupplementUpdateParams.Count > 0)
- // {
- // //服务端的包名+类名
- // ccp.ServerName = "com.steering.pss.sale.order.CoreCtrlOrderLine";
- // //类里的方法名
- // ccp.MethodName = "BindCmbSpecUpdata";
- // ccp.ServerParams = new object[] { spbSupplementUpdateParams };
- // }
- // try
- // {
- // ccp = ob.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
- // }
- // catch (Exception ex)
- // {
- // MessageBox.Show("错误提示:" + ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
- // return;
- // }
- // if (ccp.ReturnCode == -1)
- // {
- // return;
- // }
- // else
- // {
- // MessageBox.Show("保存成功!", "提示",
- // MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
- // DataTable mindt = ServerHelper.GetData("com.steering.pss.sale.order.CoreCtrlOrderLine.BindCmbSpecSPECQUERY", new Object[] { codID, codName }, this.ob);
- // GridHelper.CopyDataToDatatable(ref mindt, ref this.dataTableSpecs, true);
- // dataTableSpecs.AcceptChanges();
- // }
- //}
- //private int sochkRows()
- //{
- // int chkbool = 0;
- // foreach (UltraGridRow row in ultraGrid1.Rows)
- // {
- // if (row.Cells["SPCHK"].Value.ToString().ToUpper() == "TRUE")
- // {
- // chkbool += 1;
- // }
- // }
- // return chkbool;
- //}
- /// <summary>
- /// 判定是否新增
- /// </summary>
- /// <returns></returns>
- //private bool rowsAsk()
- //{
- // for (int j = 0; j < this.dataTableSpecs.Rows.Count; j++)
- // {
- // DataRow minrow = dataTableSpecs.Rows[j];
- // if (minrow.RowState == DataRowState.Added)
- // {
- // indexWt = minrow["ORDER_SPEC_DESC"].ToString();
- // return true;
- // }
- // }
- // return false;
- //}
-
- //private void ultraGrid2_Click(object sender, EventArgs e)
- //{
- // Infragistics.Win.UltraWinGrid.UltraGridRow row = ultraGrid2.ActiveRow;
- // if (row != null)
- // {
- // //从表的记录也要查询出来。
- // codID = row.Cells["SPEC_CODE"].Value.ToString();
- // codName = row.Cells["SPEC_NAME"].Value.ToString();
- // DataTable mindt = ServerHelper.GetData("com.steering.pss.sale.order.CoreCtrlOrderLine.BindCmbSpecSPECQUERY", new Object[] { row.Cells["SPEC_CODE"].Value.ToString(), row.Cells["SPEC_NAME"].Value.ToString() }, this.ob);
- // GridHelper.CopyDataToDatatable(ref mindt, ref this.dataTableSpecs, true);
- // dataTableSpecs.AcceptChanges();
- // }
- //}
-
- //private void ultraGrid1_CellChange(object sender, CellEventArgs e)
- //{
- // this.ultraGrid1.UpdateData();
- // if (e.Cell.Column.Key.Equals("SPCHK") && Convert.ToBoolean(e.Cell.Value))
- // {
- // if (iSelectRow != -1)
- // ultraGrid1.Rows[iSelectRow].Cells["SPCHK"].Value = false;
- // iSelectRow = e.Cell.Row.Index;
- // }
- // else
- // {
- // iSelectRow = -1;
- // }
- //}
- private void FrmOrderSpec_Load(object sender, EventArgs e)
- {
- doQuery();
- }
- private void ultraGrid2_DoubleClickRow(object sender, DoubleClickRowEventArgs e)
- {
- if (e.Row.Index == -1)
- {
- return;
- }
- if (ultraGrid2.ActiveRow != null)
- {
- Infragistics.Win.UltraWinGrid.UltraGridRow row = ultraGrid2.ActiveRow;
- string descName = row.Cells["ORDER_SPEC_DESC"].Value.ToString();
- GetOrderSpecs(descName, row);
- this.Close();
- }
- }
- }
- }
|