| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148 |
- /*******************************************************************************
- * Copyright(c) 2014 DongkeSoft All rights reserved. / Confidential
- * 类的信息:
- * 1.程序名称:F_PM_0504.cs
- * 2.功能描述:新建装窑车漏扫计件
- * 编辑履历:
- * 作者 日期 版本 修改内容
- * chenxy 2019/12/10 1.00 设计窗体布局
- *******************************************************************************/
- using System;
- using System.Collections.Generic;
- using System.Data;
- 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;
- namespace Dongke.IBOSS.PRD.Client.PMModule
- {
- /// <summary>
- /// 新建装窑车计件
- /// </summary>
- public partial class F_PM_0504 : 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_0504()
- {
- InitializeComponent();
- }
- /// <summary>
- /// 构造函数
- /// </summary>
- /// <param name="procedureID">工序编号</param>
- /// <param name="fromTitle">窗体名称</param>
- public F_PM_0504(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_0504_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;
- _productionEntity.KilnID = null;
- _productionEntity.KilnCode = null;
- }
- else
- {
- _productionEntity.KilnID = Convert.ToInt32(dt.Rows[0]["KilnID"]);
- _productionEntity.KilnCode = this.txtKiln.Text.Trim();
- }
- }
- }
- 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)
- {
- ClientRequestEntity cre = new ClientRequestEntity();
- cre.NameSpace = "F_PM_0504";
- cre.Name = "CheckKilnCar";
- cre.Properties["kilncarcode"]= this.txtKiln.Text.Trim() + this.txtKilnCarCode.Text.Trim();
- cre.Properties["procedureID"] = this._procedureID;
- ServiceResultEntity sre = PMModuleProxyNew.Service.HandleRequest(cre);
- this._productionEntity.KilnCarID = null;
- this._productionEntity.KilnCarCode = null;
- if (sre == null)
- {
- MessageBox.Show("此窑车不存在",
- this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
- this.txtKilnCarCode.SelectAll();
- e.Cancel = true;
- return;
- }
- if (sre.Status == Constant.ServiceResultStatus.Other)
- {
- MessageBox.Show(sre.Message,
- this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
- this.txtKilnCarCode.SelectAll();
- e.Cancel = true;
- return;
- }
- this._productionEntity.KilnCarID = Convert.ToInt32(sre.Result);
- this._productionEntity.KilnCarCode = this.txtKiln.Text.Trim() + this.txtKilnCarCode.Text.Trim();
- //this.txtKilnCarCode.ReadOnly = true;
- //this.txtKiln.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 txtBarcode_KeyPress(object sender, KeyPressEventArgs e)
- {
- try
- {
- if (this.txtBarcode.ReadOnly)
- {
- return;
- }
- if (!this.txtFiredBatchNo.ReadOnly)
- {
- e.Handled = true;
- txtBarcode.Clear();
- // 提示信息
- MessageBox.Show("请输入窑车烧成批次号",
- this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
- this.txtFiredBatchNo.Focus();
- 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_0504_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 = null;
- 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;
- }
- string KilnCarBatchNo = string.Format("{0}#{1}#{2}#{3}",
- this._productionEntity.KilnCode,
- this._productionEntity.KilnCarCode,
- this.dtpFiredDate.Value.Value.ToString("yyyyMMdd"),
- this.txtFiredBatchNo.DataValue.Value.ToString("000"));
- ClientRequestEntity cre = new ClientRequestEntity();
- cre.NameSpace = "F_PM_0504";
- cre.Name = "SetKilnCarMissing";
- cre.Properties["KilnID"] = this._productionEntity.KilnID.Value;
- cre.Properties["KilnCarID"] = this._productionEntity.KilnCarID.Value;
- cre.Properties["FiredDate"] = this.dtpFiredDate.Value.Value;
- cre.Properties["KilnCarBatchNo"] = KilnCarBatchNo;
- cre.Properties["ProcedureID"] = this._procedureID;
- cre.Properties["ModelType"] = this._procedureDataEntity.ModelType;
- cre.Data = new DataSet();
- cre.Data.Tables.Add(DataSourceCollectTypeTable);
- ServiceResultEntity sre = (ServiceResultEntity)DoAsync(new BaseAsyncMethod(() =>
- {
- return PMModuleProxyNew.Service.HandleRequest(cre);
- }));
- if (sre == null)
- {
- // 提示信息
- MessageBox.Show("操作失败",
- this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
- return;
- }
- if (sre.Status != Constant.ServiceResultStatus.Success)
- {
- MessageBox.Show(sre.Message,
- this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
- return;
- }
- // 提示信息
- MessageBox.Show(string.Format(Messages.MSG_CMN_I001, this.Text, "保存"),
- this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
- this.txtBarcode.Clear();
- this._productionDataEntity.Clear();
- this.DataSourceTable.Rows.Clear();
- this.txtKilnCarCode.Clear();
- this.txtFiredBatchNo.Clear();
- this._productionEntity = new ProductionDataEntity();
- this.txtKilnCarCode.ReadOnly = false;
- this.txtKiln.ReadOnly = false;
- this.dtpFiredDate.Enabled = true;
- this.txtFiredBatchNo.ReadOnly = false;
- }
- }
- #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)
- {
- _productionEntity.KilnID = null;
- _productionEntity.KilnCode = null;
- // 提示信息
- MessageBox.Show("不存在此窑炉编号",
- this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
- this.txtKiln.SelectAll();
- this.txtKiln.Focus();
- return;
- }
- else
- {
- _productionEntity.KilnID = Convert.ToInt32(dt.Rows[0]["KilnID"]);
- _productionEntity.KilnCode = this.txtKiln.Text.Trim();
- }
- // 保存业务系统配置
- 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);
- }
- }
- private void btnOk_Click(object sender, EventArgs e)
- {
- try
- {
- if (string.IsNullOrWhiteSpace(this.txtKiln.Text) || this._productionEntity.KilnID == null)
- {
- MessageBox.Show("没有输入窑炉", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
- this.txtKiln.Focus();
- return;
- }
- if (string.IsNullOrWhiteSpace(this.txtKilnCarCode.Text) || this._productionEntity.KilnCarID == null)
- {
- MessageBox.Show("没有输入窑车", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
- this.txtKilnCarCode.Focus();
- return;
- }
- if (string.IsNullOrWhiteSpace(this.txtFiredBatchNo.Text))
- {
- MessageBox.Show("没有输入烧成批次", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
- this.txtFiredBatchNo.Focus();
- return;
- }
- string KilnCarBatchNo = string.Format("{0}#{1}#{2}#{3}",
- this._productionEntity.KilnCode,
- this._productionEntity.KilnCarCode,
- this.dtpFiredDate.Value.Value.ToString("yyyyMMdd"),
- this.txtFiredBatchNo.DataValue.Value.ToString("000"));
- ClientRequestEntity cre = new ClientRequestEntity();
- cre.NameSpace = "F_PM_0504";
- cre.Name = "CheckKilnCarBatchNo";
- cre.Properties["KilnID"] = this._productionEntity.KilnID.Value;
- cre.Properties["KilnCarID"] = this._productionEntity.KilnCarID.Value;
- cre.Properties["FiredDate"] = this.dtpFiredDate.Value.Value;
- cre.Properties["KilnCarBatchNo"] = KilnCarBatchNo;
- cre.Properties["ProcedureID"] = this._procedureID;
- cre.Properties["ModelType"] = this._procedureDataEntity.ModelType;
- ServiceResultEntity sre = (ServiceResultEntity)DoAsync(new BaseAsyncMethod(() =>
- {
- return PMModuleProxyNew.Service.HandleRequest(cre);
- }));
- if (sre == null)
- {
- MessageBox.Show("此窑车烧成批次不存在",
- this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
- this.txtFiredBatchNo.SelectAll();
- return;
- }
- if (sre.Status == Constant.ServiceResultStatus.Other)
- {
- MessageBox.Show(sre.Message,
- this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
- this.txtFiredBatchNo.SelectAll();
- return;
- }
- this.txtKilnCarCode.ReadOnly = true;
- this.txtKiln.ReadOnly = true;
- this.txtFiredBatchNo.ReadOnly = true;
- this.dtpFiredDate.Enabled = false;
- }
- catch (Exception ex)
- {
- // 对异常进行共通处理
- ExceptionManager.HandleEventException(this.ToString(),
- System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
- }
- }
- private void txtFiredBatchNo_Validating(object sender, System.ComponentModel.CancelEventArgs e)
- {
- if (this.txtFiredBatchNo.ReadOnly || string.IsNullOrWhiteSpace(this.txtFiredBatchNo.Text))
- {
- return;
- }
- btnOk_Click(null, null);
- }
- }
- }
|