/*******************************************************************************
* Copyright(c) 2014 DongkeSoft All rights reserved. / Confidential
* 类的信息:
* 1.程序名称:F_PM_1102.cs
* 2.功能描述:新建/编辑产品废弃信息窗体
* 编辑履历:
* 作者 日期 版本 修改内容
* 庄天威 2014/09/24 1.00 新建
*******************************************************************************/
using System;
using System.Collections.Generic;
using System.Data;
using System.Windows.Forms;
using Dongke.IBOSS.PRD.Basics.BaseResources;
using Dongke.IBOSS.PRD.WCF.Proxys;
using Dongke.IBOSS.PRD.WCF.Proxys.PMModuleService;
using Dongke.IBOSS.PRD.Client.CommonModule;
using Dongke.IBOSS.PRD.Basics.BaseControls;
using Dongke.IBOSS.PRD.Basics.Library;
using Dongke.IBOSS.PRD.WCF.DataModels;
namespace Dongke.IBOSS.PRD.Client.PMModule
{
///
/// 编辑产品废弃信息窗体
///
public partial class F_PM_1102 : FormBase
{
#region 成员变量
//窗体模式ID
private Constant.FormMode _formType;
//修改产品报损信息ID
private string _barCode;
//页面报损工序的数据源
private List _productionDataList = new List();
//该产品在产信息实体
private InProductionEntity _isScrapProductEntity;
//用户选择报损工序实体
private ProductionDataEntity _scrapProductResponProcedure;
//当前责任人集合
private List _scrapResponsibleList = new List();
//修改用废弃产品实体
private ScrapProductEntity _updateEntity;
//修改用废弃责任工序实体
private ResponProcedureEntity _updateProcedureEntity;
//修改用责任人集合
private List _updateScrapResponsibleList;
//有效条码标示
private bool _yxBarCode = false;
//产品分级类别ID
private int _goodsLevelTypeID = Convert.ToInt32(Constant.GoodsLevelType.Damage);
//产品分级ID
private int _goodsLevelId;
//报损信息ID
private int _editSPId;
//是否允许审批
private bool _isScrap = false;
//未干补
int SpecialRepairFlag = 0;
//完成工序
int? _CompleteProcdureID = null;
//完成工序编码
string _CompleteProcdureCode = "";
//完成工序名称
string _CompleteProcdureName = "";
// 商标ID
int? _LogoID = null;
#endregion
#region 构造函数
///
/// 窗体构造
///
public F_PM_1102(Constant.FormMode formType, string BarCode, int EditSPId, bool isScrap)
{
InitializeComponent();
this._formType = formType;
this._barCode = BarCode;
this._editSPId = EditSPId;
this._isScrap = isScrap;
if (formType == Constant.FormMode.Add)
{
this.Text = FormTitles.F_PM_1102_ADD;
}
else
{
this.Text = FormTitles.F_PM_1102_EDIT;
}
this.btnViewApprover.Text = ButtonText.BTN_VIEWAPPROVER;
this.btnSave.Text = ButtonText.BTN_SAVE;
this.btnCancel.Text = ButtonText.BTN_CLOSE;
}
#endregion
#region 事件
///
/// 窗体加载
///
///
///
private void F_PM_1102_Load(object sender, EventArgs e)
{
try
{
//获取当前产品分级ID
this._goodsLevelId = Convert.ToInt32(SystemModuleProxy.Service.GetGoodsLevelDataById(_goodsLevelTypeID, null)
.Tables[0].Rows[0]["GoodsLevelID"]);
// 损坯原因
DataSet dsRreason = (DataSet)DoAsync(new BaseAsyncMethod(() =>
{
return SystemModuleProxy.Service.GetDictionaryData(0, "TPC008");
}));
this.cmbRreason.DisplayMember = "DictionaryValue";
this.cmbRreason.ValueMember = "DictionaryID";
this.cmbRreason.DataSource = dsRreason.Tables[0];
//绑定损坯状态
DataTable dtAuditStatus = new DataTable();
dtAuditStatus.Columns.Add("AuditStatusID");
dtAuditStatus.Columns.Add("AuditStatusValue");
DataRow dr = dtAuditStatus.NewRow();
dr["AuditStatusID"] = 0;
dr["AuditStatusValue"] = "待审核";
dtAuditStatus.Rows.Add(dr);
//if (this._isScrap)
//{
//}
dr = dtAuditStatus.NewRow();
dr["AuditStatusID"] = 1;
dr["AuditStatusValue"] = "损坯通过";
dtAuditStatus.Rows.Add(dr);
dr = dtAuditStatus.NewRow();
dr["AuditStatusID"] = 2;
dr["AuditStatusValue"] = "损坯驳回";
dtAuditStatus.Rows.Add(dr);
this.cmbAuditStatus.DisplayMember = "AuditStatusValue";
this.cmbAuditStatus.ValueMember = "AuditStatusID";
this.cmbAuditStatus.DataSource = dtAuditStatus;
this.cmbAuditStatus.SelectedValue = 1;
if (this._formType == Constant.FormMode.Edit)
{
BindEntity();
}
}
catch (Exception ex)
{
// 对异常进行共通处理
ExceptionManager.HandleEventException(this.ToString(),
System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
}
}
///
/// 提交操作
///
///
///
private void btnSave_Click(object sender, EventArgs e)
{
try
{
if (this.txtBarCode.Text == string.Empty)
{
this.txtBarCode.Focus();
return;
}
if (this.cmbRreason.Text == string.Empty)
{
MessageBox.Show("损坯原因必须填写!",
this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
return;
}
this.txtRemarks.Focus();//把光标移开,由于删除工号后,值未变
if (this._formType == Constant.FormMode.Add)
{
if (this._yxBarCode != true)
{
MessageBox.Show("请先输入一个有效条码!!",
this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
this.txtBarCode.Focus();
return;
}
ScrapProductEntity addScrapProduct = null;
ResponProcedureEntity addRProcedure = null;
//获取责任人集合
List addResponsibleList = new List();
foreach (DataGridViewRow gvrFor in dgvResponsible.Rows)
{
int isSelected = Convert.ToInt32(gvrFor.Cells["UserSelected"].Value);
if (isSelected == Constant.INT_IS_ONE)
{
ScrapResponsibleEntity selectResponsible = new ScrapResponsibleEntity();
selectResponsible.BarCode = this.txtBarCode.Text;
selectResponsible.StaffID = Convert.ToInt32(gvrFor.Cells["StaffID"].Value);
selectResponsible.StaffStatus = Convert.ToInt32(gvrFor.Cells["Staffstatus"].Value);
selectResponsible.UserID = scbUser.SearchedPKMember;
selectResponsible.UserCode = scbUser.SearchedValue + "";
selectResponsible.UJobsID = Convert.ToInt32(gvrFor.Cells["UJobsId"].Value);
selectResponsible.SJobsID = Convert.ToInt32(gvrFor.Cells["JobsId"].Value);
addResponsibleList.Add(selectResponsible);
}
}
//如果选择了责任工序就一定要选择责任人
//if (cbResponProcedure.Text != string.Empty && addResponsibleList.Count == Constant.INT_IS_ZERO)
if (addResponsibleList.Count == Constant.INT_IS_ZERO)
{
MessageBox.Show("请选择责任人!",
this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
return;
}
//首先判断责任类型
int thisResponType = 0;
if (cbResponProcedure.Text == string.Empty && addResponsibleList.Count == Constant.INT_IS_ZERO)
{
thisResponType = 1;
}
else if (cbResponProcedure.Text != string.Empty && addResponsibleList.Count != Constant.INT_IS_ZERO)
{
thisResponType = 3;
}
else if (cbResponProcedure.Text == string.Empty && addResponsibleList.Count != Constant.INT_IS_ZERO)
{
thisResponType = 2;
}
if (thisResponType == Constant.INT_IS_ZERO)
{
MessageBox.Show("责任类别不正确!",
this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
return;
}
//新建报损产品实体
addScrapProduct = new ScrapProductEntity();
addScrapProduct.BarCode = this.txtBarCode.Text;
addScrapProduct.ProductionLineID = _isScrapProductEntity.ProductionLineID;
addScrapProduct.ProductionLineCode = _isScrapProductEntity.ProductionLineCode;
addScrapProduct.ProductionLineName = _isScrapProductEntity.ProductionLineName;
addScrapProduct.GoodsID = _isScrapProductEntity.GoodsID;
addScrapProduct.GoodsCode = _isScrapProductEntity.GoodsCode;
addScrapProduct.GoodsName = _isScrapProductEntity.GoodsName;
addScrapProduct.GroutingDailyID = _isScrapProductEntity.GroutingDailyID;
addScrapProduct.GroutingDailyDetailID = _isScrapProductEntity.GroutingDailyDetailID;
addScrapProduct.GroutingDate = Convert.ToDateTime(_isScrapProductEntity.GroutingDate);
addScrapProduct.GroutingLineID = _isScrapProductEntity.GroutingLineID;
addScrapProduct.GroutingLineCode = _isScrapProductEntity.GroutingLineCode;
addScrapProduct.GroutingLineName = _isScrapProductEntity.GroutingLineName;
addScrapProduct.GMouldTypeID = _isScrapProductEntity.GMouldTypeID;
addScrapProduct.GroutingLineDetailID = _isScrapProductEntity.GroutingLineDetailID;
addScrapProduct.GroutingMouldCode = _isScrapProductEntity.GroutingMouldCode;
addScrapProduct.MouldCode = _isScrapProductEntity.MouldCode;
addScrapProduct.GoodsLevelTypeID = _goodsLevelTypeID;
addScrapProduct.GoodsLevelID = _goodsLevelId;
addScrapProduct.ScrapDate = Convert.ToDateTime(this.txtScrapDate.Text);
addScrapProduct.Rreason = this.cmbRreason.Text;
addScrapProduct.ResponUserID = scbUser.SearchedPKMember;
addScrapProduct.ResponUserCode = scbUser.SearchedValue + "";
addScrapProduct.ResponUserName = scbUser.Text;
addScrapProduct.Remarks = this.txtRemarks.Text;
addScrapProduct.AuditStatus = 0;
addScrapProduct.SettlementFlag = 0;
addScrapProduct.ResponType = thisResponType;
addScrapProduct.GroutingUserID = Convert.ToInt32(_isScrapProductEntity.GroutingUserID);
addScrapProduct.GroutingUserCode = _isScrapProductEntity.GroutingUserCode;
addScrapProduct.GroutingNum = _isScrapProductEntity.GroutingNum;
addScrapProduct.IsPublicBody = Convert.ToInt32(_isScrapProductEntity.IsPublicBody);
addScrapProduct.IsReFire = Convert.ToInt32(_isScrapProductEntity.IsReFire);
addScrapProduct.AuditStatus = Convert.ToInt32(cmbAuditStatus.SelectedValue);
addScrapProduct.SpecialRepairflag = this.SpecialRepairFlag;
addScrapProduct.LogoID = this._LogoID;
addScrapProduct.DiscovererStaffCode = this.dkStaffName.Text;
if (this._CompleteProcdureID != null)
{
addScrapProduct.ProcedureID = this._CompleteProcdureID;
//addScrapProduct.ProcedureName = this.txtCompleteProcdure.Text;
addScrapProduct.ProcedureName = this._CompleteProcdureName;
addScrapProduct.ProcedureCode = this._CompleteProcdureCode;
}
if (txtScrapFine.Text != string.Empty)
{
addScrapProduct.ScrapFine = Convert.ToDecimal(this.txtScrapFine.Text);
}
//如果存在责任工序的话,也要添加责任工序
if (thisResponType == Constant.INT_IS_THREE)
{
addRProcedure = new ResponProcedureEntity();
addRProcedure.BarCode = this.txtBarCode.Text;
addRProcedure.ProductionDataID = _scrapProductResponProcedure.ProductionDataID;
addRProcedure.ProductionLineID = _isScrapProductEntity.ProductionLineID;
addRProcedure.ProductionLineCode = _isScrapProductEntity.ProductionLineCode;
addRProcedure.ProductionLineName = _isScrapProductEntity.ProductionLineName;
addRProcedure.ProcedureID = _scrapProductResponProcedure.ProcedureID;
addRProcedure.ProcedureCode = _scrapProductResponProcedure.ProcedureCode;
addRProcedure.ProcedureName = _scrapProductResponProcedure.ProcedureName;
addRProcedure.UserID = scbUser.SearchedPKMember;
addRProcedure.UserCode = scbUser.SearchedValue + "";
addRProcedure.UserName = scbUser.Text;
addRProcedure.Remarks = "";
}
int addReturn = (int)DoAsync(new BaseAsyncMethod(() =>
{
return PMModuleProxy.Service.AddScrapProduct(addScrapProduct, addRProcedure, addResponsibleList);
}));
if (addReturn > Constant.INT_IS_ZERO)
{
//成功
MessageBox.Show(string.Format(Messages.MSG_CMN_I001, "废弃产品", "保存"),
this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
this.DialogResult = DialogResult.OK;
}
else if (addReturn == Constant.RETURN_IS_DATACHANGED)
{
//成功
MessageBox.Show(string.Format(Messages.MSG_CMN_W007, "操作的数据已经发生了变化"),
this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
this.DialogResult = DialogResult.OK;
}
else
{
//失败
MessageBox.Show(string.Format(Messages.MSG_CMN_W001, "废弃产品", "保存"),
this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}
else
{
//获取修改后的责任人集合
this._updateScrapResponsibleList = new List();
foreach (DataGridViewRow gvrFor in dgvResponsible.Rows)
{
int isSelected = Convert.ToInt32(gvrFor.Cells["UserSelected"].Value);
if (isSelected == Constant.INT_IS_ONE)
{
ScrapResponsibleEntity selectResponsible = new ScrapResponsibleEntity();
selectResponsible.BarCode = this.txtBarCode.Text;
selectResponsible.StaffID = Convert.ToInt32(gvrFor.Cells["StaffID"].Value);
selectResponsible.StaffStatus = Convert.ToInt32(gvrFor.Cells["Staffstatus"].Value);
selectResponsible.UserID = scbUser.SearchedPKMember;
selectResponsible.UserCode = scbUser.SearchedValue + "";
selectResponsible.UJobsID = Convert.ToInt32(gvrFor.Cells["UJobsId"].Value);
selectResponsible.SJobsID = Convert.ToInt32(gvrFor.Cells["JobsId"].Value);
this._updateScrapResponsibleList.Add(selectResponsible);
}
}
//如果选择了责任工序就一定要选择责任人
//if (cbResponProcedure.Text != string.Empty && _updateScrapResponsibleList.Count == Constant.INT_IS_ZERO)
if (_updateScrapResponsibleList.Count == Constant.INT_IS_ZERO)
{
MessageBox.Show("请选择责任人!",
this.Text,
MessageBoxButtons.OK,
MessageBoxIcon.Warning,
MessageBoxDefaultButton.Button1);
return;
}
//根据修改信息判断新的责任类型
int thisResponType = 0;
if (cbResponProcedure.Text == string.Empty && _updateScrapResponsibleList.Count == Constant.INT_IS_ZERO)
{
thisResponType = 1;
}
else if (cbResponProcedure.Text != string.Empty && _updateScrapResponsibleList.Count != Constant.INT_IS_ZERO)
{
thisResponType = 3;
}
else if (cbResponProcedure.Text == string.Empty && _updateScrapResponsibleList.Count != Constant.INT_IS_ZERO)
{
thisResponType = 2;
}
if (thisResponType == Constant.INT_IS_ZERO)
{
MessageBox.Show("责任类别不正确!",
this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
return;
}
//为修改实体赋值(可修改的只有备注,原因,责任工序,以及责任人)
this._updateEntity.ScrapDate = Convert.ToDateTime(this.txtScrapDate.Text);
this._updateEntity.Rreason = this.cmbRreason.Text;
this._updateEntity.Remarks = this.txtRemarks.Text;
this._updateEntity.ResponType = thisResponType;
this._updateEntity.LogoID = this._LogoID;
if (txtScrapFine.Text != string.Empty)
{
this._updateEntity.ScrapFine = Convert.ToDecimal(this.txtScrapFine.Text);
}
//新添审批状态判断,如果审批状态为未通过审批,要修改为未审批
//if (this._updateEntity.AuditStatus != null)
//{
// if (this._updateEntity.AuditStatus == Constant.INT_IS_TWO)
// {
// this._updateEntity.AuditStatus = 0;
// }
//}
this._updateEntity.AuditStatus = Convert.ToInt32(cmbAuditStatus.SelectedValue);
//如果存在责任工序的话,也要添加责任工序
if (thisResponType == Constant.INT_IS_THREE)
{
if (this._updateProcedureEntity == null)
{
this._updateProcedureEntity = new ResponProcedureEntity();
}
this._updateProcedureEntity.BarCode = this.txtBarCode.Text;
this._updateProcedureEntity.ProductionDataID = _scrapProductResponProcedure.ProductionDataID;
this._updateProcedureEntity.ProductionLineID = _updateEntity.ProductionLineID;
this._updateProcedureEntity.ProductionLineCode = _updateEntity.ProductionLineCode;
this._updateProcedureEntity.ProductionLineName = _updateEntity.ProductionLineName;
this._updateProcedureEntity.ProcedureID = _scrapProductResponProcedure.ProcedureID;
this._updateProcedureEntity.ProcedureCode = _scrapProductResponProcedure.ProcedureCode;
this._updateProcedureEntity.ProcedureName = _scrapProductResponProcedure.ProcedureName;
this._updateProcedureEntity.UserID = scbUser.SearchedPKMember;
this._updateProcedureEntity.UserCode = scbUser.SearchedValue + "";
this._updateProcedureEntity.UserName = scbUser.Text;
}
else //不存在了直接把原来的删掉
{
if (this._updateProcedureEntity != null)
{
this._updateProcedureEntity.ValueFlag = 0;
}
}
int updateReturn = (int)DoAsync(new BaseAsyncMethod(() =>
{
return PMModuleProxy.Service.UpdateScrapProduct(_updateEntity, _updateProcedureEntity, _updateScrapResponsibleList, _scrapResponsibleList);
}));
if (updateReturn > Constant.INT_IS_ZERO)
{
//成功
MessageBox.Show(string.Format(Messages.MSG_CMN_I001, "废弃产品", "保存"),
this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
this.DialogResult = DialogResult.OK;
}
else
{
//失败
MessageBox.Show(string.Format(Messages.MSG_CMN_W001, "废弃产品", "保存"),
this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}
}
catch (Exception ex)
{
// 对异常进行共通处理
ExceptionManager.HandleEventException(this.ToString(),
System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
}
}
///
/// 察看审批意见
///
///
///
private void btnViewApprover_Click(object sender, EventArgs e)
{
try
{
string barCode = this.txtBarCode.Text;
F_PM_1103 frmFPM1103 = new F_PM_1103(barCode, 1, _editSPId);
DialogResult dialogresult = frmFPM1103.ShowDialog();
}
catch (Exception ex)
{
// 对异常进行共通处理
ExceptionManager.HandleEventException(this.ToString(),
System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
}
}
///
/// 选择工号改变
///
///
///
private void scbUser_TextValueChanged(object sender, WinForm.Controls.ScbSearchBox.TextChangeEventArgs e)
{
try
{
if (this.scbUser.SearchedPKMember != 0)
{
if (this.scbUser.Text != "")
{
this.dgvResponsible.AutoGenerateColumns = false;
DataSet dsUser = (DataSet)DoAsync(new BaseAsyncMethod(() =>
{
return HRModuleProxy.Service.SearchHrStaffInfo(this.scbUser.SearchedPKMember);
}));
this.dgvResponsible.DataSource = dsUser.Tables[0];
}
else
{
this.dgvResponsible.DataSource = null;
this.scbUser.ClearValue();
}
}
else
{
this.dgvResponsible.DataSource = null;
}
if (this._formType == Constant.FormMode.Edit)
{
if (this.dgvResponsible.DataSource != null)
{
if (_scrapResponsibleList.Count != 0)
{
foreach (DataGridViewRow drNow in this.dgvResponsible.Rows)
{
string sourseNow = drNow.Cells["StaffID"].Value.ToString();
foreach (ScrapResponsibleEntity srFor in _scrapResponsibleList)
{
if (srFor.StaffID.ToString() == sourseNow)
{
drNow.Cells["UserSelected"].Value = "1";
break;
}
}
}
}
}
}
}
catch (Exception ex)
{
// 对异常进行共通处理
ExceptionManager.HandleEventException(this.ToString(),
System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
}
}
///
/// 选择工号改变
///
///
///
private void dkUser_UserValueChanged(object sender, Controls.SearchTextBox.dkUserInfoSearchBox.TextChangeEventArgs e)
{
// try
// {
// if (this.scbUser.SearchedPKMember != 0)
// {
// if (this.scbUser.Text != "")
// {
// this.dgvResponsible.AutoGenerateColumns = false;
// DataSet dsUser = (DataSet)DoAsync(new BaseAsyncMethod(() =>
// {
// return HRModuleProxy.Service.SearchHrStaffInfo(this.scbUser.SearchedPKMember);
// }));
// this.dgvResponsible.DataSource = dsUser.Tables[0];
// }
// else
// {
// this.dgvResponsible.DataSource = null;
// this.scbUser.ClearValue();
//}
// }
// else
// {
// this.dgvResponsible.DataSource = null;
// }
// if (this._formType == Constant.FormMode.Edit)
// {
// if (this.dgvResponsible.DataSource != null)
// {
// if (_scrapResponsibleList.Count != 0)
// {
// foreach (DataGridViewRow drNow in this.dgvResponsible.Rows)
// {
// string sourseNow = drNow.Cells["StaffID"].Value.ToString();
// foreach (ScrapResponsibleEntity srFor in _scrapResponsibleList)
// {
// if (srFor.StaffID.ToString() == sourseNow)
// {
// drNow.Cells["UserSelected"].Value = "1";
// break;
// }
// }
// }
// }
// }
// }
// }
// catch (Exception ex)
// {
// // 对异常进行共通处理
// ExceptionManager.HandleEventException(this.ToString(),
// System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
// }
}
///
/// 窗体关闭
///
///
///
private void btnCancel_Click(object sender, EventArgs e)
{
this.Close();
}
///
/// 条码输入完毕后
///
///
///
private void txtBarCode_Validating(object sender, System.ComponentModel.CancelEventArgs e)
{
try
{
string BarCode = this.txtBarCode.Text.Trim();
if (BarCode != string.Empty)
{
string doRuselt = (string)DoAsync(new BaseAsyncMethod(() =>
{
return PMModuleProxy.Service.ScrapProductChack(BarCode);
}));
string[] doRuselts = doRuselt.Split(':');
int isHave = Convert.ToInt32(doRuselts[0]);
if (isHave == 2)
{
MessageBox.Show("不是在产产品不能报损!",
this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
this.txtBarCode.Text = "";
this.txtBarCode.Focus();
return;
}
if (isHave == 3)
{
MessageBox.Show(string.Format("当前工号没有此产品所在工序【{0}】的操作权限,不能报损!", doRuselts[1]),
this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
this.txtBarCode.Text = "";
this.txtBarCode.Focus();
return;
}
if (isHave == 4)
{
MessageBox.Show(doRuselts[1],
this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
this.txtBarCode.Text = "";
this.txtBarCode.Focus();
return;
}
if (isHave == Constant.INT_IS_ZERO)
{
MessageBox.Show("该产品已经存在报损记录!",
this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
this.txtBarCode.Text = "";
this.txtBarCode.Focus();
return;
}
DataSet dsReturn = (DataSet)DoAsync(new BaseAsyncMethod(() =>
{
return PMModuleProxy.Service.GetInProductionAndProductionData(BarCode);
}));
if (dsReturn != null)
{
if (dsReturn.Tables.Count == 4)
{
//判断在产表以及报损表中是否存在条码数据
if (dsReturn.Tables[0].Rows.Count == Constant.INT_IS_ZERO && dsReturn.Tables[2].Rows.Count== Constant.INT_IS_ZERO) //在产表中没有数据
{
//目前不在生产线上也只报损 2015/07/14 modify wangx
DataSet dsDailyDetail = (DataSet)DoAsync(new BaseAsyncMethod(() =>
{
return PMModuleProxy.Service.GetBarCodeInGroutingDailyDetail(BarCode);
}));
if (dsDailyDetail != null && dsDailyDetail.Tables[0].Rows.Count == 0)
{
MessageBox.Show("该产品条码无效,无法报损!",
this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
this.txtBarCode.Text = "";
this.txtBarCode.Focus();
return;
}
//SpecialRepairFlag = Convert.ToInt32(dsDailyDetail.Tables[0].Rows[0]["SpecialRepairFlag"]);
//this.txtProductionLineName.Text = "";
//this.txtGoodsCode.Text = dsDailyDetail.Tables[0].Rows[0]["GoodsCode"].ToString();
//this.txtGroutingLine.Text = dsDailyDetail.Tables[0].Rows[0]["GroutingLineCode"].ToString();
//this.txtMouldCode.Text = dsDailyDetail.Tables[0].Rows[0]["GroutingMouldCode"].ToString();
//this.txtGroutingUser.Text = dsDailyDetail.Tables[0].Rows[0]["GroutingUserCode"].ToString();
//this.cbResponProcedure.Enabled = false;
////this._isScrapProductEntity.ProductionLineID = 0;//放null
////this._isScrapProductEntity.ProductionLineCode = null;
////this._isScrapProductEntity.ProductionLineName = null;
//this._isScrapProductEntity = new InProductionEntity();
//this._isScrapProductEntity.GoodsID = Convert.ToInt32(dsDailyDetail.Tables[0].Rows[0]["GoodsID"]);
//this._isScrapProductEntity.GoodsCode = dsDailyDetail.Tables[0].Rows[0]["GoodsCode"].ToString();
//this._isScrapProductEntity.GoodsName = dsDailyDetail.Tables[0].Rows[0]["GoodsName"].ToString();
//this._isScrapProductEntity.GroutingDailyID = Convert.ToInt32(dsDailyDetail.Tables[0].Rows[0]["GroutingDailyID"]);
//this._isScrapProductEntity.GroutingDailyDetailID = Convert.ToInt32(dsDailyDetail.Tables[0].Rows[0]["GroutingDailyDetailID"]);
//this._isScrapProductEntity.GroutingDate = Convert.ToDateTime(dsDailyDetail.Tables[0].Rows[0]["GroutingDate"]);
//this._isScrapProductEntity.GroutingLineID = Convert.ToInt32(dsDailyDetail.Tables[0].Rows[0]["GroutingLineID"]);
//this._isScrapProductEntity.GroutingLineCode = dsDailyDetail.Tables[0].Rows[0]["GroutingLineCode"].ToString();
//this._isScrapProductEntity.GroutingLineName = dsDailyDetail.Tables[0].Rows[0]["GroutingLineName"].ToString();
//this._isScrapProductEntity.GMouldTypeID = Convert.ToInt32(dsDailyDetail.Tables[0].Rows[0]["GMouldTypeID"]);
//this._isScrapProductEntity.GroutingLineDetailID = Convert.ToInt32(dsDailyDetail.Tables[0].Rows[0]["GroutingLineDetailID"]);
//this._isScrapProductEntity.GroutingMouldCode = dsDailyDetail.Tables[0].Rows[0]["GroutingMouldCode"].ToString();
//this._isScrapProductEntity.MouldCode = dsDailyDetail.Tables[0].Rows[0]["MouldCode"].ToString();
//this._isScrapProductEntity.GroutingUserID = Convert.ToInt32(dsDailyDetail.Tables[0].Rows[0]["GroutingUserID"]);
//this._isScrapProductEntity.GroutingUserCode = dsDailyDetail.Tables[0].Rows[0]["GroutingUserCode"].ToString();
//this._isScrapProductEntity.GroutingNum = Convert.ToInt32(dsDailyDetail.Tables[0].Rows[0]["GroutingNum"]);
//this._isScrapProductEntity.IsPublicBody = 0;
//this._isScrapProductEntity.IsReFire = 0;
//this._yxBarCode = true;
//this.txtBarCode.Enabled = false;
// 2015/07/14 modify wangx end
////产品不在生产线上
MessageBox.Show("不是在产产品不能报损!",
this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
this.txtBarCode.Text = "";
this.txtBarCode.Focus();
////判断条码是否有效
return; //加这个返回代码为了如果在注浆登记中,赋完值后直接返回,为了保存时候取值
}
DataTable dtInProduction = null;
//获取产品情况以及经过工序情况
if (dsReturn.Tables[0] == null ||dsReturn.Tables[0].Rows.Count==0)
{
dtInProduction = dsReturn.Tables[2];
}
else {
//如果为第一次报损
dtInProduction = dsReturn.Tables[0];
//2015-05-26 begin modify by wangx
if (dtInProduction != null && dtInProduction.Rows.Count > 0)
{
if (dtInProduction.Rows[0]["endmode"].ToString() == "2")//代表已经产成品
{
MessageBox.Show("该产品条码已经生产完成,无法报损!",
this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
this.txtBarCode.Text = "";
this.txtBarCode.Focus();
return;
}
if (dtInProduction.Rows[0]["IsReworkFlag"].ToString() == "1")//代表已经返工
{
MessageBox.Show("该产品条码已经是返工状态,无法报损!",
this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
this.txtBarCode.Text = "";
this.txtBarCode.Focus();
return;
}
}
}
//2015-05-26 end
//获取节点类型
//如果存在该类型的字段的话,判断一下
// string a = dtInProduction.Columns[dtInProduction.Columns.Count - 1].ColumnName;
foreach (DataColumn dcFor in dtInProduction.Columns)
{
if (dcFor.ColumnName.ToLower() == "proceduremodeltypeid")
{
int modelType = Convert.ToInt32(dtInProduction.Rows[0]["ProcedureModelTypeID"]);
// 装车,入窑,出窑,窑车补件不能报损
}
}
DataTable dtProductionData = null;
//过滤查询已经报损过的工序
if (dsReturn.Tables[1].Rows.Count == 0) {
dtProductionData = dsReturn.Tables[2];
}
else {
dtProductionData = dsReturn.Tables[1];
this.cbResponProcedure.DataSource = dtProductionData;
this.cbResponProcedure.ValueMember = "ProcedureID";
this.cbResponProcedure.DisplayMember = "ProcedureName";
this.cbResponProcedure.Text = "";
}
foreach (DataRow drFor in dtInProduction.Rows)
{
SpecialRepairFlag = Convert.ToInt32(drFor["SpecialRepairFlag"]);
this.txtProductionLineName.Text = drFor["ProductionLineName"].ToString();
this.txtGoodsCode.Text = drFor["GoodsCode"].ToString();
this.txtGroutingLine.Text = drFor["GroutingLineCode"].ToString();
this.txtMouldCode.Text = drFor["GroutingMouldCode"].ToString();
this.txtGroutingUser.Text = drFor["GroutingUserCode"].ToString();
if (drFor["logoID"].ToString() != "")
{
this._LogoID = Convert.ToInt32(drFor["logoID"]);
}
}
List inProductionList = DataConvert.TableConvertToObject(dtInProduction);
if (inProductionList.Count != Constant.INT_IS_ZERO)
{
this._isScrapProductEntity = inProductionList[0];
}
else
{
if (this._updateEntity == null)
{
return;
}
if (this._updateEntity.GoodsLevelTypeID != this._goodsLevelTypeID)
{
return;
}
//失败,条码不存在数据或无法转换
MessageBox.Show(Messages.MSG_PM_W007,
this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
return;
}
this._productionDataList = DataTableToListByProductionData(dtProductionData);
if (this._productionDataList.Count != Constant.INT_IS_ZERO)
{
this._scrapProductResponProcedure = this._productionDataList[0];
}
this._yxBarCode = true;
this.txtBarCode.Enabled = false;
if (dtProductionData != null && dtProductionData.Rows.Count > 0)
{
this.cbResponProcedure.SelectedValue = dtProductionData.Rows[dtProductionData.Rows.Count - 1]["ProcedureID"];
//赋值第三个table值
dtProductionData = dsReturn.Tables[3];
//this.cbResponProcedure.Enabled = false;
// modify wangx 2015/06/06 begin
this._CompleteProcdureID = Convert.ToInt32(dtProductionData.Rows[dtProductionData.Rows.Count - 1]["ProcedureID"]);
this.txtCompleteProcdure.Text = dtProductionData.Rows[dtProductionData.Rows.Count - 1]["ProcedureName"].ToString();
_CompleteProcdureName = dtProductionData.Rows[dtProductionData.Rows.Count - 1]["ProcedureName"].ToString();
this._CompleteProcdureCode = dtProductionData.Rows[dtProductionData.Rows.Count - 1]["ProcedureCode"].ToString();
// modify wangx 2015/06/06 end
cbResponProcedure_SelectedIndexChanged(sender, e);
}
else
{
this._CompleteProcdureID = Convert.ToInt32(dtInProduction.Rows[0]["ProcedureID"]);
_CompleteProcdureName = dtInProduction.Rows[0]["ProcedureName"].ToString();
this._CompleteProcdureCode = dtInProduction.Rows[0]["ProcedureCode"].ToString();
}
if (this.cbResponProcedure.Text == "" || this.cbResponProcedure.Text == null)
{
MessageBox.Show("该产品目前无可选损坯工序!",
this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
this.txtBarCode.Focus();
return;
}
}
}
else
{
if (this._updateEntity == null)
{
return;
}
if (this._updateEntity.GoodsLevelTypeID != this._goodsLevelTypeID)
{
return;
}
//失败
MessageBox.Show(Messages.MSG_PM_W007,
this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
}
}
}
catch (Exception ex)
{
// 对异常进行共通处理
ExceptionManager.HandleEventException(this.ToString(),
System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
}
}
///
/// 将用户选择的工序实体赋值
///
///
///
private void cbResponProcedure_SelectedIndexChanged(object sender, EventArgs e)
{
try
{
if (this._productionDataList.Count != Constant.INT_IS_ZERO)
{
if (this.cbResponProcedure.ListBox.SelectedIndex > -Constant.INT_IS_ONE)
{
this._scrapProductResponProcedure = _productionDataList[this.cbResponProcedure.ListBox.SelectedIndex];
DataTable dt = this.cbResponProcedure.DataSource as DataTable;
int ProductionDataID = Convert.ToInt32(dt.Select("ProcedureID=" + this.cbResponProcedure.SelectedValue)[0]["ProductionDataID"]);
DataSet dsUserCode = (DataSet)DoAsync(new BaseAsyncMethod(() =>
{
return PMModuleProxy.Service.GetScrapProductUserCodeByProductionDataID(ProductionDataID);
}));
if (dsUserCode != null && dsUserCode.Tables.Count > Constant.INT_IS_ZERO
&& dsUserCode.Tables[0].Rows.Count > Constant.INT_IS_ZERO)
{
this.scbUser.SearchedPKMember = Convert.ToInt32(dsUserCode.Tables[0].Rows[0]["UserId"]);
scbUser.InitValue(dsUserCode.Tables[0].Rows[0]["UserName"].ToString(), dsUserCode.Tables[0].Rows[0]["UserCode"].ToString());
//this.dkUser.UserName = dsUserCode.Tables[0].Rows[0]["UserName"].ToString();
//this.dkUser.UserCode = dsUserCode.Tables[0].Rows[0]["UserCode"].ToString();
this.cbResponProcedure.DataSource = dt;
this.cbResponProcedure.Enabled = true;
//this.dkUser.ReadOnly = true;
this.scbUser.Enabled = false;
}
else
{
this.scbUser.Enabled = true;
this.scbUser.SearchedPKMember = 0;
this.scbUser.ClearValue();
}
}
else
{
this._scrapProductResponProcedure = null;
}
}
}
catch (Exception ex)
{
// 对异常进行共通处理
ExceptionManager.HandleEventException(this.ToString(),
System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
}
}
private void txtBarCode_KeyPress(object sender, KeyPressEventArgs e)
{
try
{
if ((int)e.KeyChar == 13) // 按了回车键
{
this.cbResponProcedure.Focus();
}
}
catch (Exception ex)
{
// 对异常进行共通处理
ExceptionManager.HandleEventException(this.ToString(),
System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
}
}
#endregion
#region 私有方法
///
/// 加载数据
///
private void BindEntity()
{
try
{
//条码控件不可用
this.txtBarCode.Enabled = false;
this._updateEntity = new ScrapProductEntity();
this._updateEntity.BarCode = _barCode;
this._updateEntity.ScrapProductID = _editSPId;
//绑定生产工序集合
DataSet dsReturn = (DataSet)DoAsync(new BaseAsyncMethod(() =>
{
return PMModuleProxy.Service.GetInProductionAndProductionData (_barCode);
}));
if (dsReturn != null)
{
if (dsReturn.Tables.Count == Constant.INT_IS_TWO)
{
//获取产品情况以及经过工序情况
DataTable dtInProduction = dsReturn.Tables[0];
DataTable dtProductionData = dsReturn.Tables[1];
foreach (DataRow drFor in dtInProduction.Rows)
{
this.txtProductionLineName.Text = drFor["ProductionLineName"].ToString();
this.txtGoodsCode.Text = drFor["GoodsCode"].ToString();
this.txtGroutingLine.Text = drFor["GroutingLineCode"].ToString();
this.txtMouldCode.Text = drFor["GroutingMouldCode"].ToString();
this.txtGroutingUser.Text = drFor["GroutingUserCode"].ToString();
}
this.cbResponProcedure.DataSource = dtProductionData;
this.cbResponProcedure.DisplayMember = "ProcedureName";
this.cbResponProcedure.ValueMember = "ProcedureID";
this._productionDataList = DataTableToListByProductionData(dtProductionData);
if (this._productionDataList.Count != Constant.INT_IS_ZERO)
{
this._scrapProductResponProcedure = this._productionDataList[0];
}
if (dtInProduction.Rows.Count == 0)
{
this.cbResponProcedure.Enabled = false;
}
}
}
//获取报废产品实体
DataSet dsScrap = (DataSet)DoAsync(new BaseAsyncMethod(() =>
{
return PMModuleProxy.Service.GetScrapProduct(this._updateEntity);
}));
if (dsScrap != null)
{
if (dsScrap.Tables.Count != Constant.INT_IS_ZERO)
{
DataRow drScrap = dsScrap.Tables[0].Rows[0];
this._updateEntity.BarCode = drScrap["BarCode"].ToString();
if (drScrap["ProductionLineID"].ToString() != "")
{
this._updateEntity.ProductionLineID = Convert.ToInt32(drScrap["ProductionLineID"]);
this._updateEntity.ProductionLineCode = drScrap["ProductionLineCode"].ToString();
this._updateEntity.ProductionLineName = drScrap["ProductionLineName"].ToString();
this.txtGoodsCode.Text = drScrap["GoodsCode"].ToString();
this.txtGroutingLine.Text = drScrap["GroutingLineCode"].ToString();
this.txtMouldCode.Text = drScrap["GroutingMouldCode"].ToString();
this.txtGroutingUser.Text = drScrap["GroutingUserCode"].ToString();
this._CompleteProcdureID = Convert.ToInt32(drScrap["ProcedureID"]);
this._CompleteProcdureCode = drScrap["ProcedureCode"].ToString();
this.txtCompleteProcdure.Text = drScrap["ProcedureName"].ToString();
}
else //等于空时,取模具信息
{
this.txtGoodsCode.Text = drScrap["GoodsCode"].ToString();
this.txtGroutingLine.Text = drScrap["GroutingLineCode"].ToString();
this.txtMouldCode.Text = drScrap["GroutingMouldCode"].ToString();
this.txtGroutingUser.Text = drScrap["GroutingUserCode"].ToString();
}
if (drScrap["logoid"].ToString() != "")
{
this._LogoID = Convert.ToInt32(drScrap["logoid"]);
}
this._updateEntity.GoodsID = Convert.ToInt32(drScrap["GoodsID"]);
this._updateEntity.GoodsCode = drScrap["GoodsCode"].ToString();
this._updateEntity.GoodsName = drScrap["GoodsName"].ToString();
this._updateEntity.GroutingDailyID = Convert.ToInt32(drScrap["GroutingDailyID"]);
this._updateEntity.GroutingDailyDetailID = Convert.ToInt32(drScrap["GroutingDailyDetailID"]);
this._updateEntity.GroutingDate = Convert.ToDateTime(drScrap["GroutingDate"]);
this._updateEntity.GroutingLineID = Convert.ToInt32(drScrap["GroutingLineID"]);
this._updateEntity.GroutingLineCode = drScrap["GroutingLineCode"].ToString();
this._updateEntity.GroutingLineName = drScrap["GroutingLineName"].ToString();
this._updateEntity.GMouldTypeID = Convert.ToInt32(drScrap["GMouldTypeID"]);
this._updateEntity.GroutingLineDetailID = Convert.ToInt32(drScrap["GroutingLineDetailID"]);
this._updateEntity.GroutingMouldCode = drScrap["GroutingMouldCode"].ToString();
this._updateEntity.MouldCode = drScrap["MouldCode"].ToString();
this._updateEntity.GoodsLevelTypeID = Convert.ToInt32(drScrap["GoodsLevelTypeID"]);
this._updateEntity.GoodsLevelID = Convert.ToInt32(drScrap["GoodsLevelID"]);
this._updateEntity.ScrapDate = Convert.ToDateTime(drScrap["ScrapDate"]);
this._updateEntity.Rreason = drScrap["Rreason"].ToString();
this._updateEntity.Remarks = drScrap["Remarks"].ToString();
this._updateEntity.AuditStatus = Convert.ToInt32(drScrap["AuditStatus"]);
this._updateEntity.ResponType = Convert.ToInt32(drScrap["ResponType"]);
this._updateEntity.SpecialRepairflag = Convert.ToInt32(drScrap["SpecialRepairflag"]);
this.SpecialRepairFlag = Convert.ToInt32(drScrap["SpecialRepairflag"]);
if (drScrap["Auditor"] != DBNull.Value)
{
this._updateEntity.Auditor = Convert.ToInt32(drScrap["Auditor"]);
}
if (drScrap["AuditDate"] != DBNull.Value)
{
this._updateEntity.AuditlDate = Convert.ToDateTime(drScrap["AuditDate"]);
}
this._updateEntity.SettlementFlag = Convert.ToInt32(drScrap["SettlementFlag"]);
if (drScrap["ResponProcedureID"] != DBNull.Value) //ProcedureID--改到ResponProcedureID
{
this._updateEntity.ResponProcedureID = Convert.ToInt32(drScrap["ResponProcedureID"]);
}
if (drScrap["UserID"] != DBNull.Value)
{
this._updateEntity.ResponUserID = Convert.ToInt32(drScrap["UserID"]);
}
if (drScrap["UserCode"] != DBNull.Value)
{
this._updateEntity.ResponUserCode = drScrap["UserCode"].ToString();
}
if (drScrap["UserName"] != DBNull.Value)
{
this._updateEntity.ResponUserName = drScrap["UserName"].ToString();
}
if (drScrap["ScrapFine"] != DBNull.Value)
{
this._updateEntity.ScrapFine = Convert.ToDecimal(drScrap["ScrapFine"]);
}
this.cmbAuditStatus.SelectedValue = this._updateEntity.AuditStatus;
if (this._updateEntity.GoodsLevelTypeID != this._goodsLevelTypeID ||
(this._updateEntity.AuditStatus == Constant.INT_IS_ONE || this._updateEntity.AuditStatus == Constant.INT_IS_TWO)) //除关闭窗体外所有功能不可用
{
this.txtBarCode.Enabled = false;
this.txtGoodsCode.Enabled = false;
this.txtProductionLineName.Enabled = false;
this.cbResponProcedure.Enabled = false;
// 报损日期不能修改
//this.txtScrapDate.Enabled = false;
this.cmbRreason.Enabled = false;
this.txtRemarks.Enabled = false;
this.scbUser.Enabled = false;
this.dgvResponsible.Enabled = false;
this.btnSave.Enabled = false;
this.btnViewApprover.Visible = false;
this.cmbAuditStatus.Enabled = false;
}
if (this._updateEntity.Auditor != null && this._updateEntity.GoodsLevelTypeID == this._goodsLevelTypeID)
{
this.btnViewApprover.Visible = true;
}
}
}
else
{
this.Close();
return;
}
//获取报废责任工序实体
if (Convert.ToInt32(_updateEntity.ResponType) == Constant.INT_IS_THREE)
{
DataSet dsResPro = (DataSet)DoAsync(new BaseAsyncMethod(() =>
{
return PMModuleProxy.Service.GetResponProcedureBySPId(Convert.ToInt32(_updateEntity.ScrapProductID));
}));
this._updateProcedureEntity = new ResponProcedureEntity();
if (dsResPro != null && dsResPro.Tables[0].Rows.Count > 0) //如果原来存在责任工序实体
{
DataRow drResPro = dsResPro.Tables[0].Rows[0];
this._updateProcedureEntity.ResponProcedureID = Convert.ToInt32(drResPro["ResponProcedureID"]);
this.scbUser.Enabled = false;
}
this._updateProcedureEntity.BarCode = _updateEntity.BarCode;
}
//获取报废责任人实体集合
if (Convert.ToInt32(_updateEntity.ResponType) != Constant.INT_IS_ONE)
{
this._updateScrapResponsibleList = new List();
DataSet dsResponsible = (DataSet)DoAsync(new BaseAsyncMethod(() =>
{
return PMModuleProxy.Service.GetScrapResponsibleBySPId(Convert.ToInt32(_updateEntity.ScrapProductID));
}));
DataTableToListByScrapResponsible(dsResponsible);
}
//控件赋值
this.txtBarCode.Text = _updateEntity.BarCode;
this.txtGoodsCode.Text = _updateEntity.GoodsCode;
this.txtProductionLineName.Text = _updateEntity.ProductionLineName;
this.cbResponProcedure.SelectedValue = _updateEntity.ResponProcedureID;
this.txtScrapDate.Text = _updateEntity.ScrapDate.ToString();
try
{
this.cmbRreason.Text = _updateEntity.Rreason;
}
catch
{
this.cmbRreason.Text = "";
}
this.txtRemarks.Text = _updateEntity.Remarks;
this.txtScrapFine.Text = _updateEntity.ScrapFine.ToString();
//this._updateEntity.ScrapFine
if (this._updateEntity.ResponUserID != null)
{
scbUser.SearchedPKMember = Convert.ToInt32(_updateEntity.ResponUserID);
scbUser.InitValue(_updateEntity.ResponUserName, _updateEntity.ResponUserCode);
//this.dkUser.UserID = _updateEntity.ResponUserID;
// this.dkUser.UserCode = _updateEntity.ResponUserCode;
// this.dkUser.UserName = _updateEntity.ResponUserName;
}
else if (this._scrapResponsibleList.Count != Constant.INT_IS_ZERO)
{
scbUser.SearchedPKMember = Convert.ToInt32(_scrapResponsibleList[0].UserID);
scbUser.InitValue(_scrapResponsibleList[0].UserName, _scrapResponsibleList[0].UserCode);
//this.dkUser.UserID = _scrapResponsibleList[0].UserID;
// this.dkUser.UserCode = _scrapResponsibleList[0].UserCode;
// this.dkUser.UserName = _scrapResponsibleList[0].UserName;
}
}
catch (Exception ex)
{
throw ex;
}
}
///
/// 数据表到实体转换
///
///
private void DataTableToListByScrapResponsible(DataSet dsScrapResponsible)
{
foreach (DataRow drFor in dsScrapResponsible.Tables[0].Rows)
{
ScrapResponsibleEntity srEntity = new ScrapResponsibleEntity();
srEntity.ResponsibleID = Convert.ToInt32(drFor["ResponsibleID"]);
srEntity.ScrapProductID = Convert.ToInt32(drFor["ScrapProductID"]);
srEntity.BarCode = drFor["BarCode"].ToString();
srEntity.ResponType = Convert.ToInt32(drFor["ResponType"]);
if (drFor["ResponProcedureID"] != DBNull.Value)
{
srEntity.ResponProcedureID = Convert.ToInt32(drFor["ResponProcedureID"]);
}
srEntity.StaffID = Convert.ToInt32(drFor["StaffID"]);
srEntity.UserID = Convert.ToInt32(drFor["UserID"]);
srEntity.UserCode = drFor["UserCode"].ToString();
srEntity.UJobsID = Convert.ToInt32(drFor["UJobsID"]);
srEntity.SJobsID = Convert.ToInt32(drFor["SJobsID"]);
srEntity.StaffStatus = Convert.ToInt32(drFor["StaffStatus"]);
srEntity.AccountID = Convert.ToInt32(drFor["AccountID"]);
srEntity.CreateTime = Convert.ToDateTime(drFor["CreateTime"]);
srEntity.CreateUserID = Convert.ToInt32(drFor["CreateUserID"]);
srEntity.UpdateTime = Convert.ToDateTime(drFor["UpdateTime"]);
srEntity.UpdateUserID = Convert.ToInt32(drFor["UpdateUserID"]);
srEntity.OPTimeStamp = Convert.ToDateTime(drFor["OPTimeStamp"]);
srEntity.UserName = drFor["userName"].ToString();
this._scrapResponsibleList.Add(srEntity);
}
}
///
/// 数据表到实体转换
///
///
///
private List DataTableToListByProductionData(DataTable dtProductionData)
{
List pdList = new List();
foreach (DataRow drFor in dtProductionData.Rows)
{
ProductionDataEntity pdEntity = new ProductionDataEntity();
pdEntity.ProductionDataID = Convert.ToInt32(drFor["ProductionDataID"]);
pdEntity.ProcedureID = Convert.ToInt32(drFor["ProcedureID"]);
pdEntity.ProcedureCode = drFor["ProcedureCode"].ToString();
pdEntity.ProcedureName = drFor["ProcedureName"].ToString();
pdList.Add(pdEntity);
}
return pdList;
}
#endregion
private void cbResponProcedure_Validating(object sender, System.ComponentModel.CancelEventArgs e)
{
try
{
if (this._productionDataList.Count != Constant.INT_IS_ZERO)
{
if (this.cbResponProcedure.ListBox.SelectedIndex > -Constant.INT_IS_ONE)
{
this._scrapProductResponProcedure = _productionDataList[this.cbResponProcedure.ListBox.SelectedIndex];
DataTable dt = this.cbResponProcedure.DataSource as DataTable;
int ProductionDataID = Convert.ToInt32(dt.Select("ProcedureID=" + this.cbResponProcedure.SelectedValue)[0]["ProductionDataID"]);
DataSet dsUserCode = (DataSet)DoAsync(new BaseAsyncMethod(() =>
{
return PMModuleProxy.Service.GetScrapProductUserCodeByProductionDataID(ProductionDataID);
}));
if (dsUserCode != null && dsUserCode.Tables.Count > Constant.INT_IS_ZERO
&& dsUserCode.Tables[0].Rows.Count > Constant.INT_IS_ZERO)
{
this.scbUser.SearchedPKMember = Convert.ToInt32(dsUserCode.Tables[0].Rows[0]["UserId"]);
scbUser.InitValue(dsUserCode.Tables[0].Rows[0]["UserName"].ToString(), dsUserCode.Tables[0].Rows[0]["UserCode"].ToString());
//this.dkUser.UserID = Convert.ToInt32(dsUserCode.Tables[0].Rows[0]["UserId"]);
// this.dkUser.UserName = dsUserCode.Tables[0].Rows[0]["UserName"].ToString();
// this.dkUser.UserCode = dsUserCode.Tables[0].Rows[0]["UserCode"].ToString();
this.cbResponProcedure.DataSource = dt;
this.cbResponProcedure.Enabled = true;
this.scbUser.Enabled = false; ;
}
else
{
this.scbUser.Enabled = true;
this.scbUser.SearchedPKMember = 0;
this.scbUser.ClearValue();
}
}
else
{
this._scrapProductResponProcedure = null;
this.scbUser.Enabled = true;
}
}
}
catch (Exception ex)
{
// 对异常进行共通处理
ExceptionManager.HandleEventException(this.ToString(),
System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
}
}
}
}