| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023 |
- using Core.Mes.Client.Comm.Control;
- using Core.Mes.Client.Comm.Server;
- using CoreFS.CA06;
- using Infragistics.Win;
- using Infragistics.Win.UltraWinEditors;
- using Infragistics.Win.UltraWinGrid;
- using Infragistics.Win.UltraWinTabControl;
- using System;
- using System.Collections;
- using System.Collections.Generic;
- using System.Data;
- using System.Drawing;
- using System.Windows.Forms;
- namespace Core.StlMes.Client.Qcm
- {
- /// <summary>
- /// 产品规范管理
- /// </summary>
- public partial class FrmStandardK : FrmBase
- {
- //提示信息
- private string errMessage = "";
- private Dictionary<string, UltraComboEditor> _ultCmbDic_Unit = null;
- //定位标准基础
- private string _std = "";
- //定位最终客户
- private string _cust = "";
- //判断是否勾选
- private int isSelectData = -1;
- private int distance = 0;
- private int disWidth = 0;
- ComStandPay csp = null;
- public FrmStandardK()
- {
- IsLoadUserView = true;
- InitializeComponent();
- }
- /// <summary>
- /// 重写基类方法
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="ToolbarKey"></param>
- public override void ToolBar_Click(object sender, string ToolbarKey)
- {
- switch (ToolbarKey)
- {
- case "doQuery":
- DoQuery();
- break;
- case "doSave":
- DoSave();
- break;
- case "doDelete":
- this.DoDeleteOrResume(true);
- break;
- case "doResume":
- this.DoDeleteOrResume(false);
- break;
- case "Refresh":
- InitComBoEditor();
- break;
- case "Close":
- this.Close();
- break;
- }
- }
- /// <summary>
- /// 查询
- /// </summary>
- private void DoQuery()
- {
- //查询条件
- string valid = "1";
- if (ChcValid.Checked)
- valid = "0";
- string std = "";
- if (ChcStd.Checked)
- std = TextStd.Text.Trim();
- //CoreStandard标准基础表
- DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.CoreStandard1.getComBaseStd", new Object[] { valid, std }, this.ob);
- DataRow[] rows = dt.Select("STDSTYLE<>'Alpha'");
- foreach (DataRow dr in rows)
- {
- dt.Rows.Remove(dr);
- }
- dt.Columns.AddRange(new DataColumn[] {
- new DataColumn("STD_NAME_OLD")});
- for (int i = 0; i < dt.Rows.Count; i++)
- {
- dt.Rows[i]["STD_NAME_OLD"] = dt.Rows[i]["STD_NAME"];
- }
- GridHelper.CopyDataToDatatable(ref dt, ref this.dataTable1, true);
- //定位
- UltraGridRow[] rows1 = GridHelper.GetRowsWithKey(ultraGrid1, new string[] { "STD_NAME" }, new string[] { _std });
- if (rows1.Length > 0)
- rows1[0].Activate();
- UltraGridColumn[] col = new UltraGridColumn[] { this.ultraGrid1.DisplayLayout.Bands[0].Columns["MEMO"] };
- GridHelper.RefreshAndAutoSizeExceptRows(ultraGrid1, col);
- QcmBaseCommon.SetUltraGridNoEdit(ultraGrid1);
- isSelectData = -1;
- }
- /// <summary>
- /// 保存
- /// </summary>
- private void DoSave()
- {
- ultraGrid1.UpdateData();
- ultraGrid3.UpdateData();
- if (isSelectData == -1)
- {
- MessageBox.Show("请选择记录!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
- return;
- }
- if (MessageBox.Show("是否保存选择记录?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)
- {
- return;
- }
- //标准基础
- UltraGridRow[] rows = GridHelper.GetRowsWithKey(ultraGrid1, new string[] { "CHC" }, new string[] { "True" });
- ArrayList stdAdd = new ArrayList();
- ArrayList stdUpdate = new ArrayList();
- if (rows.Length > 0)
- {
- foreach (UltraGridRow row in rows)
- {
- if (row.Cells["STD_NAME"].Value.ToString() != row.Cells["STD_NAME_OLD"].Value.ToString())
- {
- DataTable dt1 = ServerHelper.GetData("com.steering.pss.qcm.ComBaseQuery.getCount", new Object[] { row.Cells["STD_NAME_OLD"].Value.ToString() }, this.ob);
- if (dt1 != null && dt1.Rows.Count > 0)
- {
- int i = Convert.ToInt32(dt1.Rows[0][0].ToString());
- if (i > 0)
- {
- MessageBox.Show("标准 " + row.Cells["STD_NAME_OLD"].Value.ToString() + " 已被引用,无法修改", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
- return;
- }
- }
- }
- ArrayList stdList = GetStdData(row);
- if (stdList == null)
- {
- MessageBox.Show(errMessage, "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
- return;
- }
- //标准名称
- string stdName = row.Cells["STD_NAME"].Value.ToString().Trim();
- string stdType = row.Cells["STDSTYLE"].Value.ToString();
- _std = stdName;
- //标准代码
- string stdCode = row.Cells["STD_CODE"].Value.ToString().Trim();
- //如果创建人为空,则新增,否则修改
- if (row.Cells["CREATE_NAME"].Value.ToString().Equals(""))
- {
- UltraGridRow[] rows1 = GridHelper.GetRowsWithKey(ultraGrid1, new string[] { "STD_NAME" }, new string[] { stdName });
- if (rows1.Length > 1)
- {
- MessageBox.Show("标准名称:" + stdName + " 已经存在,请重新输入!", "提示",
- MessageBoxButtons.OK, MessageBoxIcon.Information);
- return;
- }
- //验证标准名称是否重复
- DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.CoreStandard1.checkStdName", new Object[] { stdName, stdType }, this.ob);
- if (dt != null && dt.Rows.Count > 0)
- {
- MessageBox.Show("标准名称:" + stdName + " 已经存在,请重新输入!", "提示",
- MessageBoxButtons.OK, MessageBoxIcon.Information);
- return;
- }
- stdAdd.Add(stdList);
- }
- else
- {
- //验证标准名称是否重复
- DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.CoreStandard1.checkStdName",
- new Object[] { stdName, stdCode, stdType }, this.ob);
- if (dt != null && dt.Rows.Count > 0)
- {
- MessageBox.Show("标准名称:" + stdName + " 已经存在,请重新输入!", "提示",
- MessageBoxButtons.OK, MessageBoxIcon.Information);
- return;
- }
- stdList.Add(stdCode);
- stdUpdate.Add(stdList);
- }
- }
- }
- //客户
- ArrayList custerAdd = new ArrayList();
- ArrayList custerUpdate = new ArrayList();
- rows = GridHelper.GetRowsWithKey(ultraGrid3, new string[] { "CHC" }, new string[] { "True" });
- if (rows.Length > 0)
- {
- foreach (UltraGridRow row in rows)
- {
- ArrayList custList = GetcustData(row);
- if (custList == null)
- {
- MessageBox.Show(errMessage, "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
- return;
- }
- string stdCode = row.Cells["STD_CODE"].Value.ToString();
- string custName = row.Cells["CUST_NAME"].Text.ToString();
- //用于定位客户
- _cust = custName;
- string custCode = row.Cells["CUST_CODE"].Value.ToString();
- if (row.Cells["CREATE_NAME"].Value.ToString().Equals(""))
- {
- UltraGridRow[] rows1 = GridHelper.GetRowsWithKey(ultraGrid3, new string[] { "CUST_CODE" }, new string[] { custCode });
- if (rows1.Length > 1)
- {
- MessageBox.Show("最终客户:" + custName + " 已经存在,请重新选择!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
- return;
- }
- //验证最终客户是否重复
- DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.CoreStandard1.checkCust", new Object[] { custCode, stdCode }, this.ob);
- if (dt != null && dt.Rows.Count > 0)
- {
- MessageBox.Show("最终客户:" + custName + " 已经存在,请重新选择!", "提示",
- MessageBoxButtons.OK, MessageBoxIcon.Information);
- return;
- }
- custerAdd.Add(custList);
- }
- else
- {
- //验证最终客户是否重复
- if (!custCode.Equals(row.Cells["OLD_CUST_CODE"].Value.ToString()))
- {
- DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.CoreStandard1.checkCust1", new Object[] { custCode, stdCode }, this.ob);
- if (dt != null && dt.Rows.Count > 0)
- {
- MessageBox.Show("最终客户:" + custName + " 已经存在,请重新选择!", "提示",
- MessageBoxButtons.OK, MessageBoxIcon.Information);
- return;
- }
- }
- custList.Add(stdCode);
- custList.Add(custCode);
- custerUpdate.Add(custList);
- }
- }
- }
- if (stdAdd.Count > 0 || custerAdd.Count > 0 || stdUpdate.Count > 0 || custerUpdate.Count > 0)
- {
- ArrayList list = new ArrayList(); //无效的参数 为了跟服务端参数一致
- ArrayList list1 = new ArrayList();
- int count = ServerHelper.SetData("com.steering.pss.qcm.CoreStandard1.saveCoreStandard1",
- new Object[] { stdAdd, stdUpdate, list, list1, custerAdd, custerUpdate }, this.ob);
- if (count > 0)
- {
- MessageBox.Show("保存成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
- DoQuery();
- }
- }
- }
- /// <summary>
- /// 作废与恢复
- /// </summary>
- /// <param name="flag"></param>
- private void DoDeleteOrResume(Boolean flag)
- {
- if (isSelectData == -1)
- {
- MessageBox.Show("请选择记录!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
- return;
- }
- if (flag)
- {
- if (MessageBox.Show("是否作废选择记录", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)
- {
- return;
- }
- }
- else
- {
- if (MessageBox.Show("是否恢复选择记录?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)
- {
- return;
- }
- }
- //标准基础
- UltraGridRow[] rows = GridHelper.GetRowsWithKey(ultraGrid1, new string[] { "CHC" }, new string[] { "True" });
- ArrayList stdList = new ArrayList();
- ArrayList pscList = new ArrayList();
- ArrayList custList = new ArrayList();
- if (rows.Length > 0)
- {
- foreach (UltraGridRow row in rows)
- {
- ArrayList std = new ArrayList();
- //如果作废标准基础,就同时此标准基础下作废产品规范和客户
- if (flag)
- {
- DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.ComBaseQuery.getCount", new Object[] { row.Cells["STD_NAME_OLD"].Value.ToString() }, this.ob);
- if (dt != null && dt.Rows.Count > 0)
- {
- int i = Convert.ToInt32(dt.Rows[0][0].ToString());
- if (i > 0)
- {
- MessageBox.Show("标准 " + row.Cells["STD_NAME_OLD"].Value.ToString() + " 已被引用,无法作废", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
- return;
- }
- }
- std.Add(UserInfo.GetUserName());
- for (int i = 0; i < ultraGrid3.Rows.Count; i++)
- {
- ArrayList cust = new ArrayList();
- cust.Add(UserInfo.GetUserName());
- cust.Add(ultraGrid3.Rows[i].Cells["STD_CODE"].Value.ToString());
- cust.Add(ultraGrid3.Rows[i].Cells["CUST_CODE"].Value.ToString());
- custList.Add(cust);
- }
- }
- else
- std.Add("");
- std.Add(row.Cells["STD_CODE"].Value.ToString());
- stdList.Add(std);
- //用于定位
- _std = row.Cells["STD_NAME"].Value.ToString();
- }
- }
- //最终客户
- rows = GridHelper.GetRowsWithKey(ultraGrid3, new string[] { "CHC" }, new string[] { "True" });
- if (rows.Length > 0)
- {
- foreach (UltraGridRow row in rows)
- {
- ArrayList cust = new ArrayList();
- if (flag)
- cust.Add(UserInfo.GetUserName());
- else
- {
- //恢复客户,如果所对应的标准名称没有恢复,且不能恢复
- string stdName = row.Cells["STD_NAME"].Value.ToString();
- UltraGridRow[] rows1 = GridHelper.GetRowsWithKey(ultraGrid1, new string[] { "STD_NAME" }, new string[] { stdName });
- if (rows1.Length > 0 && rows1[0].Cells["VALIDFLAG"].Value.Equals("无效"))
- {
- MessageBox.Show("请先恢复标准名称:" + stdName, "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
- return;
- }
- cust.Add("");
- }
- cust.Add(row.Cells["STD_CODE"].Value.ToString());
- cust.Add(row.Cells["CUST_CODE"].Value.ToString());
- custList.Add(cust);
- _cust = row.Cells["CUST_NAME"].Value.ToString();
- }
- }
- if (stdList.Count > 0 || pscList.Count > 0 || custList.Count > 0)
- {
- int count = ServerHelper.SetData("com.steering.pss.qcm.CoreStandard1.deleteOrResume",
- new Object[] { stdList, pscList, custList, flag }, this.ob);
- if (count > 0)
- {
- if (flag)
- MessageBox.Show("作废成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
- else
- MessageBox.Show("恢复成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
- DoQuery();
- }
- }
- }
- /// <summary>
- /// 初始化
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void FrmStandardK_Load(object sender, EventArgs e)
- {
- InitComBoEditor();
- CreateGrid1Combo();
- UltraGridRow ugr = ultraGrid1.ActiveRow;
- if (ugr == null)
- {
- this.ultraTabControl1.Enabled = false;
- }
- else
- {
- this.ultraTabControl1.Enabled = true;
- }
- csp = new ComStandPay("3", this.ob);
- csp.ParentUltraGrid = this.ultraGrid1;
- csp.CkbDeleteFilter = this.ChcValid;
- csp.TabChemStand = this.ultraTabPageControl1; //成分
- csp.TabMaterialStand = this.ultraTabPageControl2; //理化
- csp.TabTolerancesStand = this.ultraTabPageControl3; //公差
- csp.TabComMSCStdDetection = this.ultraTabPageControl4; //探伤
- csp.TabProductWater = this.ultraTabPageControl5; //水压
- csp.AfterRowInsert += new RowEventHandler(csp_AfterRowInsert); //新增行
- csp.Load();
- this.ultraToolbarsManager1.Toolbars[0].Tools[4].InstanceProps.Visible = DefaultableBoolean.False;
- }
- void csp_AfterRowInsert(object sender, RowEventArgs e)
- {
- UltraGridRow ugr = this.ultraGrid1.ActiveRow;
- if (e.Row.Band.Columns.Exists("STD_CODE_NK"))
- {
- e.Row.Cells["STD_CODE_NK"].Value = ugr.Cells["STD_CODE"].Value;
- DataTable dt = (DataTable)((UltraComboEditor)e.Row.Band.Columns["STD_CODE_NK"].EditorComponent).DataSource;
- DataRow[] drs = dt.Select("STD_CODE = '" + ugr.Cells["STD_CODE"].Value.ToString() + "'");
- if (drs.Length > 0)
- {
- e.Row.Cells["STD_NAME_NK"].Value = drs[0][1];
- e.Row.Cells["STDSTYLE"].Value = drs[0][2];
- }
- }
- else if (e.Row.Band.Columns.Exists("STD_CODE"))
- {
- e.Row.Cells["STD_CODE"].Value = ugr.Cells["STD_CODE"].Value;
- DataTable dt = (DataTable)((UltraComboEditor)e.Row.Band.Columns["STD_CODE"].EditorComponent).DataSource;
- DataRow[] drs = dt.Select("STD_CODE= '" + ugr.Cells["STD_CODE"].Value.ToString() + "'");
- if (drs.Length > 0)
- {
- e.Row.Cells["STD_NAME"].Value = drs[0][1];
- e.Row.Cells["STDSTYLE"].Value = drs[0][2];
- }
- }
- }
- /// <summary>
- /// 初始化下拉框
- /// </summary>
- private void InitComBoEditor()
- {
- //初始化标准类型
- ClsBaseInfo.FillStdType(ultraComboStd, this.ob, false);
- ((DataTable)ultraComboStd.DataSource).DefaultView.RowFilter = "CODE IN ('K')";
- //初始化标准协会
- QcmBaseCommon.InitDropUltraComEditor(ultraComboStyle, "com.steering.pss.qcm.CoreStandard1.bandCmbMaxStdXh", "BASENAME", this.ob, true);
- //初始化管理部门
- QcmBaseCommon.InitDropUltraComEditor(ultraComboDepart, "com.steering.comm.data.ComBaseInfo.getDepartment", "DEPARTNAME", this.ob, true);
- //品名描述
- QcmBaseCommon.InitDropUltraComEditor(ultraComboProduc, "com.steering.pss.qcm.CoreStandard1.getProducName", "PRODUCNAME", this.ob, false);
- //初始化标准类别
- QcmBaseCommon.InitDropUltraComEditor(ultraComboStyleD, "com.steering.pss.qcm.CoreStandard1.getStd_Style", "STD_STYLE_DESC", this.ob, true);
- //初始化钢级牌号
- QcmBaseCommon.InitDropUltraComEditor(ultraComboSteel, "com.steering.pss.qcm.CoreStandard1.getSteel", "STEELNAME", this.ob, true);
- //初始化最终客户
- QcmBaseCommon.InitDropUltraComEditor(ultraComboCust, "com.steering.pss.qcm.CoreStandard1.getCust", "CUSTOMER_NM", this.ob, false);
- }
- /// <summary>
- /// 动态绑定数据源 管理科室
- /// </summary>
- private void BandComboToGrid(InitializeRowEventArgs e)
- {
- string pid = e.Row.Cells["DEPARTMENT_CODE"].Value.ToString();
- if (_ultCmbDic_Unit.ContainsKey(pid))
- {
- e.Row.Cells["UNIT_DESC"].EditorComponent = _ultCmbDic_Unit[pid];
- }
- else
- {
- e.Row.Cells["UNIT_DESC"].EditorComponent = _ultCmbDic_Unit["NoValue"];
- }
- }
- /// <summary>
- /// 集合 生成Comboeditor集合 用于科室管理
- /// </summary>
- private void CreateGrid1Combo()
- {
- int cout = ultraComboDepart.Items.Count;
- _ultCmbDic_Unit = new Dictionary<string, UltraComboEditor>(cout + 1);
- _ultCmbDic_Unit.Add("NoValue", new UltraComboEditor());
- for (int i = 0; i < ultraComboDepart.Items.Count; i++)
- {
- string pid = ultraComboDepart.Items[i].DataValue.ToString().Split(',')[0];
- DataTable dt = ServerHelper.GetData("com.steering.comm.data.ComBaseInfo.getSection",
- new object[] { }, this.ob);
- dt.DefaultView.RowFilter = "PID = '" + pid + "'";
- UltraComboEditor cmb = new UltraComboEditor();
- cmb.DataSource = dt;
- cmb.DisplayMember = "DEPARTNAME";
- cmb.ValueMember = "DEPARTID";
- cmb.Visible = false;
- _ultCmbDic_Unit.Add(pid, cmb);
- this.Controls.Add(cmb);
- }
- }
- /// <summary>
- /// 查询区
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void ChcStd_CheckedChanged(object sender, EventArgs e)
- {
- if (ChcStd.Checked)
- TextStd.Enabled = true;
- else
- TextStd.Enabled = false;
- }
- /// <summary>
- /// 将ultraGrid2选择全部不勾选
- /// </summary>
- /// <param name="ug"></param>
- private void changeUltraGirdChc(UltraGrid ug)
- {
- for (int i = 0; i < ug.Rows.Count; i++)
- ug.Rows[i].Cells["CHC"].Value = false;
- }
- //--------------------------------ultraGrid1-------------------------------
- /// <summary>
- /// 标准行增加
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void ultraGrid1_AfterRowInsert(object sender, RowEventArgs e)
- {
- //增加一行,自动获取最大的标准代码,然后加1
- UltraGridRow ugr = ultraGrid1.DisplayLayout.ActiveRow;
- int stdCode = 0;
- DataRow[] rows = dataTable1.Select("", "STD_CODE DESC");
- if (rows.Length > 0)
- stdCode = Convert.ToInt32(rows[0]["STD_CODE"].ToString().Substring(3, 7));
- ugr.Cells["STD_CODE"].Value = "STD" + string.Format("{0:0000000}", (stdCode + 1));
- //增加行如果没有勾选则不可编辑
- if (!Convert.ToBoolean(ugr.Cells["CHC"].Value))
- {
- for (int i = 0; i < ugr.Cells.Count; i++)
- {
- if (!ugr.Cells[i].Column.Key.Equals("CHC"))
- ugr.Cells[i].Activation = Activation.ActivateOnly;
- }
- }
- }
- /// <summary>
- /// ultraGrid1
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void ultraGrid1_CellChange(object sender, CellEventArgs e)
- {
- ultraGrid1.UpdateData();
- UltraGridRow ugr = ultraGrid1.DisplayLayout.ActiveRow;
- if (e.Cell.Column.Key.Equals("STD_NAME")) //标准名称
- {
- for (int i = 0; i < ultraGrid3.Rows.Count; i++)
- {
- ultraGrid3.Rows[i].Cells["STD_NAME"].Value = ultraGrid1.DisplayLayout.ActiveRow.Cells["STD_NAME"].Value.ToString().Trim();
- }
- }
- if (e.Cell.Column.Key.Equals("STDSTYLE")) //标准类型
- {
- string stdstyle = ugr.Cells["STDSTYLE"].Text;
- if (stdstyle.Equals("Alpha"))
- {
- ultraGrid3.Enabled = true;
- }
- else
- {
- changeUltraGirdChc(ultraGrid3);
- ultraGrid3.Enabled = false;
- }
- }
- if (e.Cell.Column.Key.Equals("STD_STYLE_NAME")) //标准协会
- {
- ugr.Cells["STD_STYLE"].Value = ugr.Cells["STD_STYLE_NAME"].Value.ToString();
- }
- if (e.Cell.Column.Key.Equals("DEPARTMENT_DESC")) //部门管理
- {
- string departMentCode = ugr.Cells["DEPARTMENT_DESC"].Value.ToString();
- string[] str = departMentCode.Split(',');
- ugr.Cells["DEPARTMENT_CODE"].Value = str[0];
- //根据部门号查询管理科室
- ugr.Cells["UNIT_CODE"].Value = "";
- ugr.Cells["UNIT_DESC"].Value = "";
- }
- if (e.Cell.Column.Key.Equals("UNIT_DESC")) //科室管理
- {
- ugr.Cells["UNIT_CODE"].Value = ugr.Cells["UNIT_DESC"].Value.ToString();
- }
- if (e.Cell.Column.Key.Equals("CHC"))//选择
- {
- Activation activation = Activation.ActivateOnly;
- if (Convert.ToBoolean(e.Cell.Value))
- {
- activation = Activation.AllowEdit;
- isSelectData += 1;
- }
- else
- isSelectData -= 1;
- CellsCollection cells = e.Cell.Row.Cells;
- for (int i = 0; i < cells.Count; i++)
- {
- if (!cells[i].Column.Key.Equals("CHC"))
- {
- e.Cell.Row.Cells[i].Activation = activation;
- }
- }
- }
- }
- /// <summary>
- /// ultraGrid1
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void ultraGrid1_InitializeRow(object sender, InitializeRowEventArgs e)
- {
- BandComboToGrid(e);
- if (e.Row.Cells["VALIDFLAG"].Value.ToString().Equals("无效"))
- {
- e.Row.Appearance.ForeColor = Color.Red;
- }
- else
- {
- e.Row.Appearance.ForeColor = Color.Black;
- }
- }
- /// <summary>
- /// 行激活事件
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void ultraGrid1_AfterRowActivate(object sender, EventArgs e)
- {
- UltraGridRow ugr = ultraGrid1.ActiveRow;
- if (ugr == null || ugr.Cells["VALIDFLAG"].Value.ToString() != "有效")
- {
- this.ultraTabControl1.Enabled = false;
- return;
- }
- else
- {
- this.ultraTabControl1.Enabled = true;
- }
- ultraGrid3.Enabled = true;
- ultraGrid3.UpdateData();
- string stdName = ugr.Cells["STD_NAME"].Value.ToString();
- _std = stdName;
- string stdStyle = ugr.Cells["STDSTYLE"].Text.ToString();
- //Alpha 客户
- if (stdStyle.Equals("Alpha"))
- {
- DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.CoreStandard1.getComBaseStdRCust", new Object[] { stdName }, this.ob);
- GridHelper.CopyDataToDatatable(ref dt, ref this.dataTable3, true);
- //激活操作的行
- UltraGridRow[] rows1 = GridHelper.GetRowsWithKey(ultraGrid3, new string[] { "CUST_NAME" }, new string[] { _cust });
- if (rows1.Length > 0)
- rows1[0].Activate();
- _cust = "";
- GridHelper.RefreshAndAutoSizeExceptRows(ultraGrid3, null);
- }
- else
- {
- dataTable3.Rows.Clear();
- ultraGrid3.Enabled = false;
- }
- QcmBaseCommon.SetUltraGridNoEdit(ultraGrid3);
- QueryAlpha();
- }
- /// <summary>
- /// 获取标准类型数据
- /// </summary>
- /// <param name="ugr"></param>
- /// <returns></returns>
- private ArrayList GetStdData(UltraGridRow ugr)
- {
- ArrayList list = new ArrayList();
- string std_code = ugr.Cells["std_code"].Value.ToString();
- string std_name = ugr.Cells["std_name"].Value.ToString().Trim();
- if (std_name.Equals(""))
- {
- errMessage = "请输入标准名称";
- return null;
- }
- string stdstyle = ugr.Cells["stdstyle"].Text.ToString();
- if (stdstyle.Equals(""))
- {
- errMessage = "请选择标准类型";
- return null;
- }
- if (stdstyle.ToUpper().Equals("ALPHA"))
- stdstyle = "K";
- string std_note = ugr.Cells["std_note"].Value.ToString();
- string std_style = ugr.Cells["std_style"].Value.ToString();
- string std_style_name = ugr.Cells["std_style_name"].Text.ToString();
- string std_version = ugr.Cells["std_version"].Value.ToString();
- string department_code = ugr.Cells["department_code"].Value.ToString();
- string department_desc = ugr.Cells["department_desc"].Text.ToString();
- string unit_code = ugr.Cells["unit_code"].Value.ToString();
- string unit_desc = ugr.Cells["unit_desc"].Text.ToString();
- string userName = UserInfo.GetUserName();
- string validflag = ugr.Cells["validflag"].Value.ToString();
- if (validflag.Equals("无效"))
- {
- errMessage = "无效记录不能保存";
- return null;
- }
- string memo = ugr.Cells["memo"].Value.ToString();
- list.Add(std_code);
- list.Add(std_name);
- list.Add(stdstyle);
- list.Add(std_note);
- list.Add(std_style);
- list.Add(std_style_name);
- list.Add(std_version);
- list.Add(department_code);
- list.Add(department_desc);
- list.Add(unit_code);
- list.Add(unit_desc);
- list.Add(userName);
- list.Add(memo);
- return list;
- }
- /// <summary>
- /// 获取客户数据
- /// </summary>
- /// <param name="ugr"></param>
- /// <returns></returns>
- private ArrayList GetcustData(UltraGridRow ugr)
- {
- ArrayList list = new ArrayList();
- string std_code = ugr.Cells["STD_CODE"].Value.ToString();
- string std_name = ugr.Cells["STD_NAME"].Value.ToString();
- string cust_code = ugr.Cells["CUST_CODE"].Value.ToString();
- string cust_name = ugr.Cells["CUST_NAME"].Text.ToString();
- if (cust_name.Equals(""))
- {
- errMessage = "请选择最终客户";
- }
- string userName = UserInfo.GetUserName();
- string validflag = ugr.Cells["VALIDFLAG"].Value.ToString();
- if (validflag.Equals("无效"))
- {
- errMessage = "无效记录不能保存";
- return null;
- }
- string memo = "";
- list.Add(std_code);
- list.Add(std_name);
- list.Add(cust_code);
- list.Add(cust_name);
- list.Add(userName);
- list.Add(memo);
- return list;
- }
- //-----------------------------------------ultraGrid3
- private void ultraGrid3_AfterRowInsert(object sender, RowEventArgs e)
- {
- UltraGridRow ugr = ultraGrid3.DisplayLayout.ActiveRow;
- ugr.Cells["STD_NAME"].Value = ultraGrid1.DisplayLayout.ActiveRow.Cells["STD_NAME"].Value.ToString().Trim();
- ugr.Cells["STD_CODE"].Value = ultraGrid1.DisplayLayout.ActiveRow.Cells["STD_CODE"].Value.ToString().Trim();
- }
- private void ultraGrid3_CellChange(object sender, CellEventArgs e)
- {
- ultraGrid3.UpdateData();
- UltraGridRow ugr = ultraGrid3.DisplayLayout.ActiveRow;
- if (e.Cell.Column.Key.Equals("CUST_NAME")) //客户
- {
- ugr.Cells["CUST_CODE"].Value = ugr.Cells["CUST_NAME"].Value.ToString();
- }
- if (e.Cell.Column.Key.Equals("CHC"))//选择
- {
- Activation activation = Activation.ActivateOnly;
- if (Convert.ToBoolean(e.Cell.Value))
- {
- activation = Activation.AllowEdit;
- isSelectData += 1;
- }
- else
- isSelectData -= 1;
- CellsCollection cells = e.Cell.Row.Cells;
- for (int i = 0; i < cells.Count; i++)
- {
- if (!cells[i].Column.Key.Equals("CHC"))
- {
- e.Cell.Row.Cells[i].Activation = activation;
- }
- }
- }
- }
- private void ultraGrid3_InitializeRow(object sender, InitializeRowEventArgs e)
- {
- if (e.Row.Cells["VALIDFLAG"].Value.ToString().Equals("无效"))
- {
- e.Row.Appearance.ForeColor = Color.Red;
- }
- else
- {
- e.Row.Appearance.ForeColor = Color.Black;
- }
- }
- /// <summary>
- /// 伸缩
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void ultraExpandableGroupBox1_ExpandedStateChanged(object sender, EventArgs e)
- {
- if (ultraExpandableGroupBox1.Expanded)
- {
- splitContainer1.SplitterDistance = distance;
- }
- else
- {
- splitContainer1.SplitterDistance = this.Height;
- }
- }
- private void FrmStandardK_Shown(object sender, EventArgs e)
- {
- distance = splitContainer1.SplitterDistance;
- disWidth = splitContainer2.SplitterDistance; ;
- }
- private void ultraExpandableGroupBox2_ExpandedStateChanged(object sender, EventArgs e)
- {
- if (ultraExpandableGroupBox2.Expanded)
- splitContainer2.SplitterDistance = disWidth;
- else
- splitContainer2.SplitterDistance = this.Width;
- }
- private void ultraToolbarsManager1_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e)
- {
- if (e.Tool.Key == "ButtonTool1") //保存
- {
- SaveAlpha();
- }
- if (e.Tool.Key == "ButtonTool2") //作废
- {
- DeleteAlpha();
- }
- if (e.Tool.Key == "ButtonTool3") //恢复
- {
- ResumeAlpha();
- }
- if (e.Tool.Key == "ButtonTool4") //刷新
- {
- RefreshAlpha();
- }
- if (e.Tool.Key == "ButtonTool5") //分组
- {
- GroupAlpha();
- }
- }
- private void QueryAlpha()
- {
- UltraGridRow ugr = this.ultraGrid1.ActiveRow;
- if (ugr == null)
- return;
- switch (ultraTabControl1.SelectedTab.Key)
- {
- case "1": //###为了新行过滤用
- csp.QueryChemStand(ugr.Cells["STD_CODE"].Value.ToString(), "###");
- break;
- case "2":
- csp.QueryMaterialStand(ugr.Cells["STD_CODE"].Value.ToString(), "###");
- break;
- case "3":
- csp.QueryTolerancesStand(ugr.Cells["STD_CODE"].Value.ToString(), "###");
- break;
- case "4":
- csp.QueryComMSCStdDetection(ugr.Cells["STD_CODE"].Value.ToString(), "###");
- break;
- case "5":
- csp.QueryProductWater(ugr.Cells["STD_CODE"].Value.ToString(), "###");
- break;
- }
- }
- private void SaveAlpha()
- {
- UltraGridRow ugr = this.ultraGrid1.ActiveRow;
- if (ugr == null)
- return;
- switch (ultraTabControl1.SelectedTab.Key)
- {
- case "1": //成分标准界面
- csp.SaveChemStand(ugr.Cells["STD_CODE"].Value.ToString(), "");
- break;
- case "2": //理化标准界面
- csp.SaveMaterialStand(ugr.Cells["STD_CODE"].Value.ToString(), "");
- break;
- case "3": //公差标准界面
- csp.SaveTolerancesStand(ugr.Cells["STD_CODE"].Value.ToString(), "");
- break;
- case "4": //探伤标准界面
- csp.SaveComMSCStdDetection(ugr.Cells["STD_CODE"].Value.ToString(), "");
- break;
- case "5": //水压标准界面
- csp.SaveProductWater(ugr.Cells["STD_CODE"].Value.ToString(), "");
- break;
- }
- }
- private void DeleteAlpha()
- {
- UltraGridRow ugr = this.ultraGrid1.ActiveRow;
- if (ugr == null)
- return;
- switch (ultraTabControl1.SelectedTab.Key)
- {
- case "1":
- csp.DeleteChemStand(ugr.Cells["STD_CODE"].Value.ToString(), "");
- break;
- case "2":
- csp.DeleteMaterialStand(ugr.Cells["STD_CODE"].Value.ToString(), "");
- break;
- case "3":
- csp.DeleteTolerancesStand(ugr.Cells["STD_CODE"].Value.ToString(), "");
- break;
- case "4":
- csp.DeleteComMSCStdDetection(ugr.Cells["STD_CODE"].Value.ToString(), "");
- break;
- case "5":
- csp.DeleteProductWater(ugr.Cells["STD_CODE"].Value.ToString(), "");
- break;
- }
- }
- private void ResumeAlpha()
- {
- UltraGridRow ugr = this.ultraGrid1.ActiveRow;
- if (ugr == null)
- return;
- switch (ultraTabControl1.SelectedTab.Key)
- {
- case "1":
- csp.ResumeChemStand(ugr.Cells["STD_CODE"].Value.ToString(), "");
- break;
- case "2":
- csp.ResumeMaterialStand(ugr.Cells["STD_CODE"].Value.ToString(), "");
- break;
- case "3":
- csp.ResumeTolerancesStand(ugr.Cells["STD_CODE"].Value.ToString(), "");
- break;
- case "4":
- csp.ResumeComMSCStdDetection(ugr.Cells["STD_CODE"].Value.ToString(), "");
- break;
- case "5":
- csp.ResumeProductWater(ugr.Cells["STD_CODE"].Value.ToString(), "");
- break;
- }
- }
- private void RefreshAlpha()
- {
- UltraGridRow ugr = this.ultraGrid1.ActiveRow;
- if (ugr == null)
- return;
- switch (ultraTabControl1.SelectedTab.Key)
- {
- case "1":
- csp.RefreshChemStand(ugr.Cells["STD_CODE"].Value.ToString(), "");
- break;
- case "2":
- csp.RefreshMaterialStand(ugr.Cells["STD_CODE"].Value.ToString(), "");
- break;
- case "3":
- csp.RefreshTolerancesStand(ugr.Cells["STD_CODE"].Value.ToString(), "");
- break;
- case "4":
- csp.RefreshComMSCStdDetection(ugr.Cells["STD_CODE"].Value.ToString(), "");
- break;
- case "5":
- csp.RefreshProductWater(ugr.Cells["STD_CODE"].Value.ToString(), "");
- break;
- }
- }
- private void GroupAlpha()
- {
- UltraGridRow ugr = this.ultraGrid1.ActiveRow;
- if (ugr == null)
- return;
- if (ultraTabControl1.SelectedTab.Key == "2")
- csp.GroupMaterialStand(ugr.Cells["STD_CODE"].Value.ToString(), "");
- }
- private void ultraTabControl1_SelectedTabChanged(object sender, SelectedTabChangedEventArgs e)
- {
- UltraGridRow ugr = ultraGrid1.ActiveRow;
- if (ugr == null)
- {
- this.ultraTabControl1.Enabled = false;
- return;
- }
- else
- {
- this.ultraTabControl1.Enabled = true;
- }
- if (e.Tab.Key == "2")
- this.ultraToolbarsManager1.Toolbars[0].Tools[4].InstanceProps.Visible = DefaultableBoolean.True;
- else
- this.ultraToolbarsManager1.Toolbars[0].Tools[4].InstanceProps.Visible = DefaultableBoolean.False;
- QueryAlpha();
- }
- }
- }
|