| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089 |
- /*******************************************************************************
- * Copyright(c) 2014 DongkeSoft All rights reserved. / Confidential
- * 类的信息:
- * 1.程序名称:F_PM_0502.cs
- * 2.功能描述:新建装窑车计件
- * 编辑履历:
- * 作者 日期 版本 修改内容
- * 陈冰 2014/09/25 1.00 设计窗体布局
- *******************************************************************************/
- using System;
- using System.Collections.Generic;
- using System.Data;
- using System.IO;
- using System.Windows.Forms;
- using Dongke.IBOSS.PRD.Basics.BaseControls;
- using Dongke.IBOSS.PRD.Basics.BaseResources;
- using Dongke.IBOSS.PRD.Basics.Library;
- using Dongke.IBOSS.PRD.Client.CommonModule;
- using Dongke.IBOSS.PRD.Client.Controls.FormCommon;
- using Dongke.IBOSS.PRD.WCF.DataModels;
- using Dongke.IBOSS.PRD.WCF.Proxys;
- using Dongke.IBOSS.PRD.WCF.Proxys.PMModuleService;
- using Dongke.IBOSS.PRD.WCF.Proxys.SystemModuleService;
- namespace Dongke.IBOSS.PRD.Client.PMModule
- {
- /// <summary>
- /// 新建装窑车计件
- /// </summary>
- public partial class F_PM_0502 : FormBase
- {
- #region 成员变量
- // 工序ID
- private int _procedureID;
- //窗体名称
- private string _fromTitle;
- // 工序实体类
- ProcedureEntity _procedureDataEntity;
- // 生产数据实体类
- List<ProductionDataEntity> _productionDataEntity = new List<ProductionDataEntity>();
- // 数据源Table
- private DataTable _dataSourceTable = null;
- // 添加行数据源
- private DataTable _collectType = null;
- // 当前操作实体
- ProductionDataEntity _productionEntity = new ProductionDataEntity();
- // 配置文件的全路径
- private string _iniFilePath = LocalPath.RootPath + Constant.INI_FILE_NAME;
- //窑车最大装载数
- private int MaxGoodsNum = 0;
- // 是否有商标
- private int? _isLogo = null;
- // 是否有商标编码
- private string _isLogoCode = "";
- // 是否有商标名称
- private string _isLogoName = "";
- #endregion
- #region 构造函数
- /// <summary>
- /// 构造函数
- /// </summary>
- public F_PM_0502()
- {
- InitializeComponent();
- }
- /// <summary>
- /// 构造函数
- /// </summary>
- /// <param name="procedureID">工序编号</param>
- /// <param name="fromTitle">窗体名称</param>
- public F_PM_0502(int procedureID, string fromTitle)
- {
- InitializeComponent();
- this._procedureID = procedureID;
- this._fromTitle = fromTitle;
- this.SetFromTitleInfo();
- }
- #endregion
- #region 属性
- /// <summary>
- /// 绑定GridView数据源
- /// </summary>
- public DataTable DataSourceTable
- {
- set
- {
- _dataSourceTable = value;
- }
- get
- {
- if (_dataSourceTable == null)
- {
- _dataSourceTable = new DataTable("Table1");
- _dataSourceTable.Columns.Add("BarCode");
- _dataSourceTable.Columns.Add("GoodsID");
- _dataSourceTable.Columns.Add("GoodsCode");
- _dataSourceTable.Columns.Add("GoodsName");
- _dataSourceTable.Columns.Add("UserID");
- _dataSourceTable.Columns.Add("UserCode");
- _dataSourceTable.Columns.Add("UserName");
- _dataSourceTable.Columns.Add("KilnID");
- _dataSourceTable.Columns.Add("KilnCode");
- _dataSourceTable.Columns.Add("KilnName");
- _dataSourceTable.Columns.Add("KilnCarID");
- _dataSourceTable.Columns.Add("KilnCarCode");
- _dataSourceTable.Columns.Add("KilnCarName");
- _dataSourceTable.Columns.Add("KilnCarPosition", typeof(decimal));
- _dataSourceTable.Columns.Add("IsSave");//是否保存,为了的在此车上有此产品时显示出来(1不保存,只是查看)
- _dataSourceTable.Columns.Add("Status");//登车状态,只是查看
- _dataSourceTable.Columns.Add("IsPublicBody");
- _dataSourceTable.Columns.Add("MouldCode");
- _dataSourceTable.Columns.Add("GroutingUserCode");
- _dataSourceTable.Columns.Add("GroutingNum");
- _dataSourceTable.Columns.Add("GroutingDate", typeof(DateTime));
- _dataSourceTable.Columns.Add("LogoID");
- _dataSourceTable.Columns.Add("LogoCodeName");
- return _dataSourceTable;
- }
- else
- {
- return _dataSourceTable;
- }
- }
- }
- /// <summary>
- /// 添加行数据源
- /// </summary>
- public DataTable DataSourceCollectTypeTable
- {
- set
- {
- _collectType = value;
- }
- get
- {
- if (_collectType == null)
- {
- _collectType = new DataTable("Table2");
- _collectType.Columns.Add("BarCode");
- _collectType.Columns.Add("GoodsID");
- _collectType.Columns.Add("GoodsCode");
- _collectType.Columns.Add("GoodsName");
- _collectType.Columns.Add("UserID");
- _collectType.Columns.Add("UserCode");
- _collectType.Columns.Add("UserName");
- _collectType.Columns.Add("KilnID");
- _collectType.Columns.Add("KilnCode");
- _collectType.Columns.Add("KilnName");
- _collectType.Columns.Add("KilnCarID");
- _collectType.Columns.Add("KilnCarCode");
- _collectType.Columns.Add("KilnCarName");
- _collectType.Columns.Add("KilnCarPosition", typeof(decimal));
- return _collectType;
- }
- else
- {
- return _collectType;
- }
- }
- }
- #endregion
- #region 事件
- /// <summary>
- /// 窗体加载事件
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void F_PM_0502_Load(object sender, EventArgs e)
- {
- try
- {
- //string getKiln = Utility.ReadIniFile(Constant.INI_SECTION_SETTINGS,
- // Constant.INI_KEY_KILN_CODE, this._iniFilePath);
- string getKiln = Utility.ReadIniFile(Constant.INI_SECTION_SETTINGS,
- Constant.INI_KEY_KILN_CODE, LocalPath.LocalINIFilePath);
- if (getKiln != string.Empty)
- {
- this.txtKiln.Text = getKiln;
- if (this.txtKiln.Text.Trim() != "")
- {
- DataSet dsResultAccount = (DataSet)DoAsync(new BaseAsyncMethod(() =>
- {
- return SystemModuleProxy.Service.GetAllKilntInfo();
- }));
- if (dsResultAccount != null && dsResultAccount.Tables[0].Rows.Count > 0)
- {
- DataView dv = dsResultAccount.Tables[0].DefaultView;
- dv.RowFilter = "ValueFlag=1 and KilnCode='" + this.txtKiln.Text.Trim() + "'";
- DataTable dt = dv.ToTable();
- if (dt.Rows.Count == 0)
- {
- // 提示信息
- //MessageBox.Show("不存在此窑炉编号",
- // this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
- this.txtKiln.SelectAll();
- this.txtKiln.Focus();
- //return;
- }
- }
- }
- this.txtKilnCarCode.Focus();
- }
- else
- {
- this.txtKiln.Focus();
- }
- // 加载权限
- FormPermissionManager.FormPermissionControl(this.Name, this,
- Dongke.IBOSS.PRD.Client.DataModels.LogInUserInfo.CurrentUser.CurrentUserEntity.UserRightData,
- Dongke.IBOSS.PRD.Client.DataModels.LogInUserInfo.CurrentUser.CurrentUserEntity.FunctionData);
- DataTable tKilnCarInfo = GetMSTKilnCarPositionInfo();
- this.cmbKilnCarPosition.DataSource = tKilnCarInfo;
- this.cmbKilnCarPosition.DisplayMember = "DictionaryValue";
- this.cmbKilnCarPosition.ValueMember = "DictionaryID";
- this._productionEntity.UserID = Constant.INT_IS_NEGATIE_ONE;
- this._productionEntity.KilnCarID = Constant.INT_IS_NEGATIE_ONE;
- this.dgvProduction.DataSource = DataSourceTable;
- this.KilnCarPosition.DisplayMember = "DictionaryValue";
- this.KilnCarPosition.ValueMember = "DictionaryID";
- this.KilnCarPosition.DataSource = tKilnCarInfo.Copy();
- this.dgvProduction.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.CellSelect;
- // 获取工序明细数据
- ProcedureEntity procedureDataEntity = (ProcedureEntity)DoAsync(new BaseAsyncMethod(() =>
- {
- return PMModuleProxy.Service.GetProcedureDataEntityByID(this._procedureID);
- }));
- this._procedureDataEntity = procedureDataEntity;
- // 设置控件禁用或启用
- SetControlEnable();
- //this.txtUserCode.Focus();
- }
- catch (Exception ex)
- {
- // 对异常进行共通处理
- ExceptionManager.HandleEventException(this.ToString(),
- System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
- }
- }
- /// <summary>
- /// 窗体关闭事件
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void btnCancel_Click(object sender, EventArgs e)
- {
- this.Close();
- }
- /// <summary>
- /// 窗体关闭事件
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void tsbtnClose_Click(object sender, EventArgs e)
- {
- this.Close();
- }
- /// <summary>
- /// 自动适应列宽
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void tsbtnAdaptive_Click(object sender, EventArgs e)
- {
- this.dgvProduction.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells);
- }
- /// <summary>
- /// 控件数据校验时发生
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void txtUserCode_Validating(object sender, System.ComponentModel.CancelEventArgs e)
- {
- try
- {
- if (txtUserCode.Text.Trim() == string.Empty) // 如果未添加数据,则此项获取焦点
- {
- this.txtUserCode.IsMustInput = true;
- this.txtUserCode.SelectAll();
- e.Cancel = true;
- return;
- }
- else if (!this.txtUserCode.ReadOnly)
- {
- SUserEntity userEntity = new SUserEntity();
- userEntity.UserCode = this.txtUserCode.Text.Trim();
- // 是否存在此用户编码的生产工号
- CheckProcedureUserResult MsgCheckProcedureUser = (CheckProcedureUserResult)DoAsync(new BaseAsyncMethod(() =>
- {
- return PMModuleProxy.Service.CheckProcedureUser(this._procedureID, this.txtUserCode.Text.Trim());
- }));
- if (MsgCheckProcedureUser != null)
- {
- if (!string.IsNullOrEmpty(MsgCheckProcedureUser.ErrMsg))
- {
- MessageBox.Show(MsgCheckProcedureUser.ErrMsg,
- this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
- this.txtUserCode.SelectAll();
- e.Cancel = true;
- return;
- }
- // 有此生产工号
- if (this._productionEntity.UserID != -Constant.INT_IS_ONE)
- {
- if (MsgCheckProcedureUser.UserID != this._productionEntity.UserID)
- {
- this.SaveDataInfo();
- }
- }
- this._productionEntity.UserID = MsgCheckProcedureUser.UserID;
- this._productionEntity.UserCode = MsgCheckProcedureUser.UserCode;
- this._productionEntity.UserName = MsgCheckProcedureUser.UserName;
- this.txtUserCode.ReadOnly = true;
- }
- }
- }
- catch (Exception ex)
- {
- // 对异常进行共通处理
- ExceptionManager.HandleEventException(this.ToString(),
- System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
- }
- }
- /// <summary>
- /// 控件数据校验时发生
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void txtKilnCarCode_Validating(object sender, System.ComponentModel.CancelEventArgs e)
- {
- try
- {
- if (this.txtKilnCarCode.Text.Trim() == string.Empty) // 如果未添加数据,则此项获取焦点
- {
- //this.txtKilnCarCode.IsMustInput = true;
- //this.txtKilnCarCode.SelectAll();
- //e.Cancel = true;
- //return;
- }
- else if (!this.txtKilnCarCode.ReadOnly)
- {
- // 是否存在此用户编码的生产工号
- CheckKilnCarResultEntity kilnCarEntity = (CheckKilnCarResultEntity)DoAsync(new BaseAsyncMethod(() =>
- {
- return PMModuleProxy.Service.CheckKilnCar(this._procedureID, this.txtKiln.Text.Trim() + this.txtKilnCarCode.Text.Trim(), this._procedureDataEntity.ModelType);
- }));
- if (!string.IsNullOrEmpty(kilnCarEntity.ErrMsg))
- {
- MessageBox.Show(kilnCarEntity.ErrMsg,
- this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
- this.txtKilnCarCode.SelectAll();
- e.Cancel = true;
- return;
- }
- if (this._productionEntity.KilnID != -Constant.INT_IS_ONE)
- {
- if (kilnCarEntity.KilnCarInfos[Constant.INT_IS_ZERO].KilnID != this._productionEntity.KilnID)
- {
- this.SaveDataInfo();
- }
- }
- this._productionEntity.KilnID = kilnCarEntity.KilnCarInfos[Constant.INT_IS_ZERO].KilnID;
- this._productionEntity.KilnCode = kilnCarEntity.KilnCarInfos[Constant.INT_IS_ZERO].KilnCode;
- this._productionEntity.KilnName = kilnCarEntity.KilnCarInfos[Constant.INT_IS_ZERO].KilnName;
- this._productionEntity.KilnCarID = kilnCarEntity.KilnCarInfos[Constant.INT_IS_ZERO].KilnCarID;
- //this._productionEntity.KilnCarCode = this.txtKiln.Text.Trim() + this.txtKilnCarCode.Text.Trim();
- this._productionEntity.KilnCarCode = kilnCarEntity.KilnCarInfos[Constant.INT_IS_ZERO].KilnCarCode;
- this._productionEntity.KilnCarName = kilnCarEntity.KilnCarInfos[Constant.INT_IS_ZERO].KilnCarName;
- this.MaxGoodsNum = kilnCarEntity.KilnCarInfos[Constant.INT_IS_ZERO].MaxGoodsNum;
- this.txtKilnCarCode.ReadOnly = true;
- this.txtKiln.ReadOnly = true;
- //获取此窑车上是否有产品,并显示
- DataSet dsGoods = (DataSet)DoAsync(new BaseAsyncMethod(() =>
- {
- return PMModuleProxy.Service.GetKilnCarGoodsByKilnCarID(Convert.ToInt32(this._productionEntity.KilnCarID == null ? 0 : this._productionEntity.KilnCarID));
- }));
- if (dsGoods != null && dsGoods.Tables[0].Rows.Count > 0)
- {
- for (int i = 0; i < dsGoods.Tables[0].Rows.Count; i++)
- {
- DataRow[] drRows = this.DataSourceTable.Select("BarCode='" + dsGoods.Tables[0].Rows[i]["BarCode"].ToString() + "'");
- if (drRows.Length > Constant.INT_IS_ZERO)
- {
- this.txtBarcode.Text = "";
- continue;
- }
- DataRow dr = this.DataSourceTable.NewRow();
- dr["BarCode"] = dsGoods.Tables[0].Rows[i]["BarCode"].ToString();
- dr["GoodsID"] = dsGoods.Tables[0].Rows[i]["GoodsID"].ToString();
- dr["GoodsCode"] = dsGoods.Tables[0].Rows[i]["GoodsCode"].ToString();
- dr["GoodsName"] = dsGoods.Tables[0].Rows[i]["GoodsName"].ToString();
- dr["UserID"] = dsGoods.Tables[0].Rows[i]["UserID"].ToString();
- dr["UserCode"] = dsGoods.Tables[0].Rows[i]["UserCode"].ToString();
- dr["UserName"] = dsGoods.Tables[0].Rows[i]["UserName"].ToString();
- dr["KilnID"] = dsGoods.Tables[0].Rows[i]["KilnID"].ToString();
- dr["KilnCode"] = dsGoods.Tables[0].Rows[i]["KilnCode"].ToString();
- dr["KilnName"] = dsGoods.Tables[0].Rows[i]["KilnName"].ToString();
- dr["KilnCarID"] = dsGoods.Tables[0].Rows[i]["KilnCarID"].ToString();
- dr["KilnCarCode"] = dsGoods.Tables[0].Rows[i]["Kilncarcode"].ToString();
- dr["KilnCarName"] = dsGoods.Tables[0].Rows[i]["Kilncarname"].ToString();
- dr["KilnCarPosition"] = dsGoods.Tables[0].Rows[i]["KilnCarPosition"].ToString();
- dr["IsSave"] = 1;
- dr["Status"] = "己登车";
- dr["MouldCode"] = dsGoods.Tables[0].Rows[i]["MouldCode"];
- dr["GroutingUserCode"] = dsGoods.Tables[0].Rows[i]["GroutingUserCode"];
- dr["GroutingNum"] = dsGoods.Tables[0].Rows[i]["GroutingNum"];
- dr["IsPublicBody"] = dsGoods.Tables[0].Rows[i]["IsPublicBody"].ToString() != "1" ? 0 : 1;
- dr["GroutingDate"] = Convert.ToDateTime(dsGoods.Tables[0].Rows[i]["GroutingDate"]);
- dr["LogoCodeName"] = dsGoods.Tables[0].Rows[i]["logoname"] + "[" + dsGoods.Tables[0].Rows[i]["logocode"] + "]";
- this.DataSourceTable.Rows.Add(dr);
- //this.dgvProduction.CurrentCell = null;
- //this.dgvProduction.Rows[dgvProduction.RowCount - 1].Selected = true;
- //this.dgvProduction.CurrentCell = this.dgvProduction.Rows[dgvProduction.RowCount - 1].Cells[0];
- }
- }
- }
- }
- catch (Exception ex)
- {
- // 对异常进行共通处理
- ExceptionManager.HandleEventException(this.ToString(),
- System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
- }
- }
- /// <summary>
- /// 条形码按键事件
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void txtBarcode_KeyPress(object sender, KeyPressEventArgs e)
- {
- try
- {
- if (this.txtBarcode.ReadOnly)
- {
- return;
- }
- if (this._productionEntity.KilnID == null || this._productionEntity.KilnID <= 0)
- {
- // 提示信息
- MessageBox.Show("请输入窑炉车号",
- this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
- return;
- }
- if ((int)e.KeyChar == Constant.SYSTEM_KEYBOARD_ENTER_VALUE) // 按了回车键
- {
- if (this.txtUserCode.Text.Trim() == string.Empty)
- {
- this.txtUserCode.Focus();
- this.txtBarcode.Text = string.Empty;
- return;
- }
- if (this.txtKilnCarCode.Text.Trim() == string.Empty)
- {
- this.txtKilnCarCode.Focus();
- this.txtBarcode.Text = string.Empty;
- return;
- }
- if (this.txtBarcode.Text.Trim() == string.Empty)
- {
- this.txtBarcode.SelectAll();
- this.txtBarcode.Focus();
- return;
- }
- DataRow[] drRows = this.DataSourceTable.Select("BarCode='" + this.txtBarcode.Text.Trim() + "'");
- if (drRows.Length == Constant.INT_IS_ZERO)
- {
- // 校验条码 获取校验条码信
- DataSet dsCheckBarcode = (DataSet)DoAsync(new BaseAsyncMethod(() =>
- {
- return PMModuleProxy.Service.CheckBarcode(this._procedureID, this.txtBarcode.Text.Trim());
- }));
- if (dsCheckBarcode != null && dsCheckBarcode.Tables[Constant.INT_IS_ZERO].Rows.Count > Constant.INT_IS_ZERO)
- {
- if (dsCheckBarcode.Tables[Constant.INT_IS_ZERO].Rows[Constant.INT_IS_ZERO]
- [Constant.BarCodeResultTableColumns.out_errMsg.ToString()].ToString() != string.Empty)
- {
- // 表示有错误
- //MessageBox.Show(string.Format(dsCheckBarcode.Tables[Constant.INT_IS_ZERO].Rows[Constant.INT_IS_ZERO]
- // [Constant.BarCodeResultTableColumns.out_errMsg.ToString()].ToString(),
- // this.txtBarcode.Text.Trim(), "产品条码"),
- // this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
- //this.txtBarcode.SelectAll();
- //this.txtBarcode.Focus();
- //return;
- if (dsCheckBarcode.Tables[0].Rows[0][Constant.BarCodeResultTableColumns.out_missFlag.ToString()].ToString() == "0")
- {
- // 表示有错误
- MessageBox.Show(string.Format(dsCheckBarcode.Tables[0].Rows[0][Constant.BarCodeResultTableColumns.out_errMsg.ToString()].ToString(), this.txtBarcode.Text.Trim(), "产品条码"),
- this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
- }
- else
- {
- S_CMN_020 frmscmn020 = new S_CMN_020(Convert.ToInt32(dsCheckBarcode.Tables[0].Rows[0][Constant.BarCodeResultTableColumns.out_missFlag.ToString()])
- , dsCheckBarcode.Tables[0].Rows[0][Constant.BarCodeResultTableColumns.out_errMsg.ToString()].ToString());
- frmscmn020.ShowDialog();
- }
- this.txtBarcode.Focus();
- this.txtBarcode.SelectAll();
- return;
- }
- else
- {
- this.DataSourceTable.AcceptChanges();
- if (this.DataSourceTable.Rows.Count > Constant.INT_IS_ZERO)
- {
- if (this.MaxGoodsNum > 0 && this.DataSourceTable.Rows.Count >= this.MaxGoodsNum)
- {
- // 提示信息
- MessageBox.Show("超出登车产品最大装载数量" + this.MaxGoodsNum.ToString(),
- this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
- return;
- }
- }
- if (dsCheckBarcode.Tables[0].Rows[0][Constant.BarCodeResultTableColumns.out_logoID.ToString()].ToString() != "")
- {
- this._isLogo = Convert.ToInt32(dsCheckBarcode.Tables[0].Rows[0][Constant.BarCodeResultTableColumns.out_logoID.ToString()]);
- this._isLogoCode = dsCheckBarcode.Tables[0].Rows[0][Constant.BarCodeResultTableColumns.out_logoCode.ToString()].ToString();
- this._isLogoName = dsCheckBarcode.Tables[0].Rows[0][Constant.BarCodeResultTableColumns.out_logoName.ToString()].ToString();
- }
- // 生产数据实体
- ProductionDataEntity procedureDataEntity = new ProductionDataEntity();
- procedureDataEntity.Barcode = this.txtBarcode.Text.Trim(); // 产品条码
- procedureDataEntity.GoodsID = Convert.ToInt32(dsCheckBarcode.Tables[Constant.INT_IS_ZERO].Rows[Constant.INT_IS_ZERO]
- [Constant.BarCodeResultTableColumns.out_goodsID.ToString()]);
- procedureDataEntity.GoodsCode = dsCheckBarcode.Tables[Constant.INT_IS_ZERO].Rows[Constant.INT_IS_ZERO]
- [Constant.BarCodeResultTableColumns.out_goodsCode.ToString()].ToString();
- procedureDataEntity.GoodsName = dsCheckBarcode.Tables[Constant.INT_IS_ZERO].Rows[Constant.INT_IS_ZERO]
- [Constant.BarCodeResultTableColumns.out_goodsName.ToString()].ToString();
- procedureDataEntity.UserID = this._productionEntity.UserID;
- procedureDataEntity.UserCode = this._productionEntity.UserCode;
- procedureDataEntity.UserName = this._productionEntity.UserName;
- procedureDataEntity.KilnID = this._productionEntity.KilnID;
- procedureDataEntity.KilnCode = this._productionEntity.KilnCode;
- procedureDataEntity.KilnName = this._productionEntity.KilnName;
- procedureDataEntity.KilnCarID = this._productionEntity.KilnCarID;
- procedureDataEntity.KilnCarCode = this._productionEntity.KilnCarCode;
- procedureDataEntity.KilnCarName = this._productionEntity.KilnCarName;
- procedureDataEntity.KilnCarPosition = Convert.ToInt32(this.cmbKilnCarPosition.SelectedValue);
- procedureDataEntity.ValueFlag = Constant.ValueFlag.Effective.GetHashCode();
- procedureDataEntity.LogoID = this._isLogo;
- //if (this._procedureDataEntity.CollectType == (int)Constant.ProcedureCollectType.Point) // 单点采集 直接保存
- //{
- // this.CollectTypeTwo(procedureDataEntity);
- //}
- //else
- //{
- this.CollectTypeOne(procedureDataEntity,dsCheckBarcode); // 集中采集
- //}
- this.txtBarcode.Text = string.Empty;
- this.txtBarcode.Focus();
- }
- }
- }
- else
- {
- this.txtBarcode.Text = "";
- }
- }
- }
- catch (Exception ex)
- {
- // 对异常进行共通处理
- ExceptionManager.HandleEventException(this.ToString(),
- System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
- }
- }
- /// <summary>
- /// 删除按钮事件
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void tsbtnDelete_Click(object sender, EventArgs e)
- {
- if (this.dgvProduction.CurrentCell != null)
- {
- if (this.dgvProduction.Rows[this.dgvProduction.CurrentCell.RowIndex].Cells["Status"].Value.ToString() != "己登车")
- {
- this.DataSourceTable.Rows[this.dgvProduction.CurrentCell.RowIndex].Delete();
- }
- }
- }
- /// <summary>
- /// 保存按钮事件
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void btnSave_Click(object sender, EventArgs e)
- {
- try
- {
- this.SaveDataInfo();
- }
- catch (Exception ex)
- {
- // 对异常进行共通处理
- ExceptionManager.HandleEventException(this.ToString(),
- System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
- }
- }
- /// <summary>
- /// 窗体关闭时事件
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void F_PM_0502_FormClosing(object sender, FormClosingEventArgs e)
- {
- if (this.btnSave.Visible)
- {
- try
- {
- this.DataSourceTable.AcceptChanges();
- this.DataSourceCollectTypeTable.Clear();
- if (this.DataSourceTable.Rows.Count > Constant.INT_IS_ZERO)
- {
- if (DataSourceTable.Select("IsSave<>1").Length > 0)
- {
- DialogResult result = MessageBox.Show(Messages.MSG_CMN_Q001, this.Text,
- MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question);
- if (result == DialogResult.Yes)
- {
- // 保存数据
- btnSave_Click(sender, e);
- }
- else if (result == DialogResult.Cancel)
- {
- e.Cancel = true;
- }
- }
- }
- }
- catch (Exception ex)
- {
- // 对异常进行共通处理
- ExceptionManager.HandleEventException(this.ToString(),
- System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
- }
- }
- }
- /// <summary>
- /// 鼠标单击事件
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void txtUserCode_MouseClick(object sender, MouseEventArgs e)
- {
- if (this.txtUserCode.Text.Trim() != string.Empty)
- {
- this.txtUserCode.SelectAll();
- }
- }
- /// <summary>
- /// 生产工号回车事件
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void txtUserCode_KeyPress(object sender, KeyPressEventArgs e)
- {
- if ((int)e.KeyChar == 13) // 按了回车键
- {
- this.txtKilnCarCode.Focus();
- }
- }
- #endregion
- #region 私有方法
- /// <summary>
- /// 设置窗体按钮的文本信息
- /// </summary>
- private void SetFromTitleInfo()
- {
- this.Text = this._fromTitle;
- this.tsbtnDelete.Text = ButtonText.TSBTN_DELETE;
- //自动适应列宽
- this.tsbtnAdaptive.Text = ButtonText.TSBTN_ADAPTIVE;
- //关闭
- this.tsbtnClose.Text = ButtonText.TSBTN_CLOSE;
- this.btnSave.Text = ButtonText.BTN_SAVE;
- this.btnCancel.Text = ButtonText.BTN_CLOSE;
- }
- /// <summary>
- /// 设置控件禁用或启用
- /// </summary>
- private void SetControlEnable()
- {
- if (this._procedureDataEntity != null)
- {
- if (this._procedureDataEntity.CollectType == (int)Constant.ProcedureCollectType.Togather)
- {
- this.txtUserCode.Enabled = true;
- this.tsbtnDelete.Visible = true;
- this.tsbtnDelete.Enabled = true;
- this.btnSave.Visible = true;
- }
- else
- {
- this.tsbtnDelete.Visible = true;
- this.tsbtnDelete.Enabled = true;
- this.txtUserCode.Enabled = true;
- this.txtUserCode.ReadOnly = true;
- this._productionEntity.UserID = Dongke.IBOSS.PRD.Client.DataModels.LogInUserInfo.CurrentUser.CurrentUserEntity.UserID;
- this._productionEntity.UserCode = Dongke.IBOSS.PRD.Client.DataModels.LogInUserInfo.CurrentUser.CurrentUserEntity.UserCode;
- this._productionEntity.UserName = Dongke.IBOSS.PRD.Client.DataModels.LogInUserInfo.CurrentUser.CurrentUserEntity.UserName;
- this.txtUserCode.Text = this._productionEntity.UserCode;
- this.btnSave.Visible = true;
- // 此工号是否能生产工序
- CheckProcedureUserResult checkProcedureUser = (CheckProcedureUserResult)DoAsync(new BaseAsyncMethod(() =>
- {
- return PMModuleProxy.Service.CheckProcedureUser(this._procedureID,
- Dongke.IBOSS.PRD.Client.DataModels.LogInUserInfo.CurrentUser.CurrentUserEntity.UserCode);
- }));
- if (checkProcedureUser != null)
- {
- if (!string.IsNullOrEmpty(checkProcedureUser.ErrMsg))
- {
- // 此工号不允许生产工序
- MessageBox.Show(checkProcedureUser.ErrMsg,
- this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
- this.Close();
- return;
- }
- }
- }
- }
- }
- /// <summary>
- /// 获取窑车位置字典表数据
- /// </summary>
- /// <returns></returns>
- public DataTable GetMSTKilnCarPositionInfo()
- {
- DataTable dtDicInfo = (DataTable)DoAsync(new BaseAsyncMethod(() =>
- {
- return CommonModuleProxy.Service.GetDataDictionaryByType(Constant.TPC_TPC003);
- }));
- return dtDicInfo;
- }
- /// <summary>
- /// 单点采集模式
- /// </summary>
- /// <param name="procedureDataEntity"></param>
- private void CollectTypeTwo(ProductionDataEntity procedureDataEntity)
- {
- try
- {
- #region 单点采集
- // 添加行就可以 并保存
- // 保存到数据库
- DataSourceCollectTypeTable.Rows.Clear();
- DataRow drCollectType = DataSourceCollectTypeTable.NewRow();
- drCollectType["BarCode"] = procedureDataEntity.Barcode;
- drCollectType["GoodsID"] = procedureDataEntity.GoodsID;
- drCollectType["GoodsCode"] = procedureDataEntity.GoodsCode;
- drCollectType["GoodsName"] = procedureDataEntity.GoodsName;
- drCollectType["UserID"] = procedureDataEntity.UserID;
- drCollectType["UserCode"] = procedureDataEntity.UserCode;
- drCollectType["UserName"] = procedureDataEntity.UserName;
- drCollectType["KilnID"] = procedureDataEntity.KilnID;
- drCollectType["KilnCode"] = procedureDataEntity.KilnCode;
- drCollectType["KilnName"] = procedureDataEntity.KilnName;
- drCollectType["KilnCarID"] = procedureDataEntity.KilnCarID;
- drCollectType["KilnCarCode"] = procedureDataEntity.KilnCarCode;
- drCollectType["KilnCarName"] = procedureDataEntity.KilnCarName;
- drCollectType["KilnCarPosition"] = procedureDataEntity.KilnCarPosition;
- DataSourceCollectTypeTable.Rows.Add(drCollectType);
- DataTable returnString = (DataTable)DoAsync(new BaseAsyncMethod(() =>
- {
- return PMModuleProxy.Service.AddWorkPiece(this._procedureID, DataSourceCollectTypeTable);
- }
- ));
- DataRow dr = this.DataSourceTable.NewRow();
- dr["BarCode"] = procedureDataEntity.Barcode;
- dr["GoodsID"] = procedureDataEntity.GoodsID;
- dr["GoodsCode"] = procedureDataEntity.GoodsCode;
- dr["GoodsName"] = procedureDataEntity.GoodsName;
- dr["UserID"] = procedureDataEntity.UserID;
- dr["UserCode"] = procedureDataEntity.UserCode;
- dr["UserName"] = procedureDataEntity.UserName;
- dr["KilnID"] = procedureDataEntity.KilnID;
- dr["KilnCode"] = procedureDataEntity.KilnCode;
- dr["KilnName"] = procedureDataEntity.KilnName;
- dr["KilnCarID"] = procedureDataEntity.KilnCarID;
- dr["KilnCarCode"] = procedureDataEntity.KilnCarCode;
- dr["KilnCarName"] = procedureDataEntity.KilnCarName;
- dr["KilnCarPosition"] = procedureDataEntity.KilnCarPosition;
- this.DataSourceTable.Rows.Add(dr);
- this.dgvProduction.CurrentCell = null;
- this.dgvProduction.Rows[dgvProduction.RowCount - 1].Selected = true;
- this.dgvProduction.CurrentCell = this.dgvProduction.Rows[dgvProduction.RowCount - 1].Cells[0];
- #endregion
- }
- catch (Exception ex)
- {
- throw ex;
- }
- }
- /// <summary>
- ///集中采集模式
- /// </summary>
- /// <param name="procedureDataEntity"></param>
- private void CollectTypeOne(ProductionDataEntity procedureDataEntity,DataSet dsGroutingProduct)
- {
- try
- {
- #region 集中采集
- DataRow[] drRows = this.DataSourceTable.Select("BarCode='" + procedureDataEntity.Barcode + "'");
- if (drRows.Length > Constant.INT_IS_ZERO)
- {
- this.txtBarcode.Text = "";
- return;
- }
- // 由产品条码获取注浆信息
- //DataSet dsGroutingProduct = (DataSet)DoAsync(new BaseAsyncMethod(() =>
- //{
- // return PMModuleProxy.Service.GetGroutingProducttByBarCode(procedureDataEntity.Barcode);
- //}));
- DataRow dr = this.DataSourceTable.NewRow();
- dr["BarCode"] = procedureDataEntity.Barcode;
- dr["GoodsID"] = procedureDataEntity.GoodsID;
- dr["GoodsCode"] = procedureDataEntity.GoodsCode;
- dr["GoodsName"] = procedureDataEntity.GoodsName;
- dr["UserID"] = procedureDataEntity.UserID;
- dr["UserCode"] = procedureDataEntity.UserCode;
- dr["UserName"] = procedureDataEntity.UserName;
- dr["KilnID"] = procedureDataEntity.KilnID;
- dr["KilnCode"] = procedureDataEntity.KilnCode;
- dr["KilnName"] = procedureDataEntity.KilnName;
- dr["KilnCarID"] = procedureDataEntity.KilnCarID;
- dr["KilnCarCode"] = procedureDataEntity.KilnCarCode;
- dr["KilnCarName"] = procedureDataEntity.KilnCarName;
- dr["KilnCarPosition"] = procedureDataEntity.KilnCarPosition;
- dr["MouldCode"] = dsGroutingProduct.Tables[0].Rows[0][Constant.BarCodeResultTableColumns.out_mouldCode.ToString()];
- dr["GroutingUserCode"] = dsGroutingProduct.Tables[0].Rows[0][Constant.BarCodeResultTableColumns.out_groutingUserCode.ToString()];
- dr["GroutingNum"] = dsGroutingProduct.Tables[0].Rows[0][Constant.BarCodeResultTableColumns.out_groutingNum.ToString()];
- dr["GroutingDate"] = Convert.ToDateTime(dsGroutingProduct.Tables[0].Rows[0][Constant.BarCodeResultTableColumns.out_groutingdate.ToString()]);
- dr["IsPublicBody"] = dsGroutingProduct.Tables[0].Rows[0][Constant.BarCodeResultTableColumns.out_ispublicbody.ToString()].ToString() != "1" ? 0 : 1;
- dr["LogoID"] = procedureDataEntity.LogoID;
- dr["LogoCodeName"] = this._isLogoName + "[" + this._isLogoCode + "]";
- this.DataSourceTable.Rows.Add(dr);
- this.dgvProduction.CurrentCell = null;
- this.dgvProduction.Rows[dgvProduction.RowCount - 1].Selected = true;
- this.dgvProduction.CurrentCell = this.dgvProduction.Rows[dgvProduction.RowCount - 1].Cells[0];
- #endregion
- }
- catch (Exception ex)
- {
- throw ex;
- }
- }
- /// <summary>
- /// 保存数据到数据库
- /// </summary>
- private void SaveDataInfo()
- {
- this.DataSourceTable.AcceptChanges();
- this.DataSourceCollectTypeTable.Clear();
- if (this.DataSourceTable.Rows.Count > Constant.INT_IS_ZERO)
- {
- //if (this.MaxGoodsNum > 0 && this.DataSourceTable.Rows.Count > this.MaxGoodsNum)
- //{
- // // 提示信息
- // MessageBox.Show("超出登车产品最大装载数量" + this.MaxGoodsNum.ToString(),
- // this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
- // return;
- //}
- foreach (DataRow drproductionData in this.DataSourceTable.Rows)
- {
- if (drproductionData["IsSave"].ToString() != "1")
- {
- DataRow drCollectType = DataSourceCollectTypeTable.NewRow();
- drCollectType["BarCode"] = drproductionData["BarCode"];
- drCollectType["GoodsID"] = drproductionData["GoodsID"];
- drCollectType["GoodsCode"] = drproductionData["GoodsCode"];
- drCollectType["GoodsName"] = drproductionData["GoodsName"];
- drCollectType["UserID"] = drproductionData["UserID"];
- drCollectType["UserCode"] = drproductionData["UserCode"];
- drCollectType["UserName"] = drproductionData["UserName"];
- drCollectType["KilnID"] = drproductionData["KilnID"];
- drCollectType["KilnCode"] = drproductionData["KilnCode"];
- drCollectType["KilnName"] = drproductionData["KilnName"];
- drCollectType["KilnCarID"] = drproductionData["KilnCarID"];
- drCollectType["KilnCarCode"] = drproductionData["KilnCarCode"];
- drCollectType["KilnCarName"] = drproductionData["KilnCarName"];
- drCollectType["KilnCarPosition"] = drproductionData["KilnCarPosition"];
- DataSourceCollectTypeTable.Rows.Add(drCollectType);
- }
- }
- if (DataSourceCollectTypeTable.Rows.Count == 0)
- {
- // 提示信息
- MessageBox.Show("以上产品已经登车",
- this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
- return;
- }
- DataTable returnRow = (DataTable)DoAsync(new BaseAsyncMethod(() =>
- {
- return PMModuleProxy.Service.AddWorkPiece(this._procedureID, DataSourceCollectTypeTable);
- }));
- if (returnRow.Rows.Count <= Constant.INT_IS_ZERO)
- {
- // 提示信息
- MessageBox.Show(Messages.MSG_PM_W012,
- this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
- }
- else
- {
- if (string.IsNullOrEmpty(returnRow.Rows[0][Constant.BarCodeResultTableColumns.out_errMsg.ToString()].ToString()))//成功
- {
- // 提示信息
- MessageBox.Show(string.Format(Messages.MSG_CMN_I001, "新增" + this.Text, "保存"),
- this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
- }
- else
- {
- // 提示信息
- MessageBox.Show(string.Format(returnRow.Rows[0][Constant.BarCodeResultTableColumns.out_errMsg.ToString()].ToString()),
- this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
- return;
- }
- }
- this.txtBarcode.Text = "";
- this._productionDataEntity.Clear();
- this.DataSourceTable.Rows.Clear();
- this.txtKilnCarCode.Text = "";
- //this.txtKiln.Text = "";
- if (this._procedureDataEntity.CollectType == (int)Constant.ProcedureCollectType.Togather)
- {
- this.txtUserCode.Text = "";
- this.txtUserCode.Focus();
- this.txtUserCode.ReadOnly = false;
- this.txtKilnCarCode.ReadOnly = false;
- this.txtKiln.ReadOnly = false;
- this.txtKilnCarCode.Enabled = true;
- this.txtKiln.Enabled = true;
- }
- else
- {
- this.txtBarcode.Focus();
- this.txtKilnCarCode.ReadOnly = false;
- this.txtKiln.ReadOnly = false;
- this.txtKilnCarCode.Enabled = true;
- this.txtKiln.Enabled = true;
- }
- }
- }
- #endregion
- private void txtKiln_Validating(object sender, System.ComponentModel.CancelEventArgs e)
- {
- try
- {
- if (this.txtKiln.Text.Trim() == string.Empty)
- {
- return;
- }
- if (this.txtKiln.Text.Trim() != "")
- {
- if (!this.txtKiln.ReadOnly)
- {
- DataSet dsResultAccount = (DataSet)DoAsync(new BaseAsyncMethod(() =>
- {
- return SystemModuleProxy.Service.GetAllKilntInfo();
- }));
- if (dsResultAccount != null && dsResultAccount.Tables[0].Rows.Count > 0)
- {
- DataView dv = dsResultAccount.Tables[0].DefaultView;
- dv.RowFilter = "ValueFlag=1 and KilnCode='" + this.txtKiln.Text.Trim() + "'";
- DataTable dt = dv.ToTable();
- if (dt.Rows.Count == 0)
- {
- // 提示信息
- MessageBox.Show("不存在此窑炉编号",
- this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
- this.txtKiln.SelectAll();
- this.txtKiln.Focus();
- return;
- }
- // 保存业务系统配置
- Utility.WriteIniFile(Constant.INI_SECTION_SETTINGS, Constant.INI_KEY_KILN_CODE,
- this.txtKiln.Text.Trim(), this._iniFilePath);
- }
- }
- }
- }
- catch (Exception ex)
- {
- // 对异常进行共通处理
- ExceptionManager.HandleEventException(this.ToString(),
- System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
- }
- }
- private void txtKiln_KeyPress(object sender, KeyPressEventArgs e)
- {
- try
- {
- if ((int)e.KeyChar == Constant.SYSTEM_KEYBOARD_ENTER_VALUE) // 按了回车键
- {
- if (this.txtKiln.Text.Trim() == string.Empty)
- {
- return;
- }
- if (this.txtKiln.Text.Trim() != "")
- {
- DataSet dsResultAccount = (DataSet)DoAsync(new BaseAsyncMethod(() =>
- {
- return SystemModuleProxy.Service.GetAllKilntInfo();
- }));
- if (dsResultAccount != null && dsResultAccount.Tables[0].Rows.Count > 0)
- {
- DataView dv = dsResultAccount.Tables[0].DefaultView;
- dv.RowFilter = "ValueFlag=1 and KilnCode='" + this.txtKiln.Text.Trim() + "'";
- DataTable dt = dv.ToTable();
- if (dt.Rows.Count == 0)
- {
- // 提示信息
- MessageBox.Show("不存在此窑炉编号",
- this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
- this.txtKiln.SelectAll();
- this.txtKiln.Focus();
- return;
- }
- else
- {
- // 保存业务系统配置
- Utility.WriteIniFile(Constant.INI_SECTION_SETTINGS, Constant.INI_KEY_KILN_CODE,
- this.txtKiln.Text.Trim(), this._iniFilePath);
- this.txtKilnCarCode.Focus();
- }
- }
- }
- }
- }
- catch (Exception ex)
- {
- // 对异常进行共通处理
- ExceptionManager.HandleEventException(this.ToString(),
- System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
- }
- }
- }
- }
|