BaoKai_202508-Wms-Jingwang..../WMS.FrmRK/FrmAcceptance.cs
2025-08-24 09:35:55 +08:00

1193 lines
41 KiB
C#

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using WMS.Frm.Base;
using WMS.Model.RK;
using WMS.Common;
using WMS.Model.SystemManage;
using DevExpress.XtraGrid.Columns;
using DevExpress.XtraEditors.Repository;
using System.Text.RegularExpressions;
using WMS.Model.Base;
using NPOI.Util.Collections;
using WMS.FrmBaseData;
using WMS.Ctrl;
using WMS.Business;
using WMS.Business.RK;
using WMS.Business.Common;
using WMS.Business.SystemManage;
namespace WMS.FrmRK
{
public partial class FrmAcceptance : FormBase
{
#region
/// <summary>
/// 验收Model
/// </summary>
public AcceptanceModel acceptancemodel = new AcceptanceModel();
#region
/// <summary>
/// 验收Model集合
/// </summary>
public List<AcceptanceModel> acceptancelist=new List<AcceptanceModel>();
/// <summary>
/// 入库批次Model
/// </summary>
public StorageLotModel lotModel=new StorageLotModel();
/// <summary>
/// 入库批次Model集合
/// </summary>
public List<StorageLotModel> lotList =new List<StorageLotModel>();
/// <summary>
/// 入库批次明细Model
/// </summary>
public StorageLotInfoModel lotInfoModel =new StorageLotInfoModel();
/// <summary>
/// 入库批次明细Model集合
/// </summary>
public List<StorageLotInfoModel> lotInfoList=new List<StorageLotInfoModel>();
/// <summary>
/// 获得入库选中项
/// </summary>
public List<StorageLotModel> lotCheck =new List<StorageLotModel>();
/// <summary>
/// 获得入库明细选中项
/// </summary>
public List<StorageLotInfoModel> lotInfoCheck=new List<StorageLotInfoModel>();
#endregion
#region
WareNoticeModel wareNoticeData = new WareNoticeModel();
List<WareNoticeTabModel> listWareNotice = new List<WareNoticeTabModel>();
#endregion
/// <summary>
/// 获得Acc选中项数据
/// </summary>
public List<AcceptanceModel> checkAccList=new List<AcceptanceModel>();
/// <summary>
/// 需要处理的
/// </summary>
List<AcceptanceModel> listAccData = new List<AcceptanceModel>();
/// <summary>
/// 全选判断
/// </summary>
bool m_status = false;
List<StorageLotModel> loList = new List<StorageLotModel>();
#endregion
#region
/// <summary>
/// 无参构造
/// </summary>
public FrmAcceptance()
{
InitializeComponent();
}
#endregion
#region
/// <summary>
/// 窗体加载
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void FrmAcceptance_Load(object sender, EventArgs e)
{
//通用查询
FrmSelectModle = new StorageLotModel();
BindResultType();
cDictionaryAccPersion.t_dictonary.EditValueChanged += new System.EventHandler(t_dictonary_EditValueChanged);
BindStorageLotData();
xtra_yds.SelectedTabPageIndex = 0;
#region
//RoleStorageModel roles = new RoleStorageModel();
//roles.ROLE_ID = userData.ROLE_ID;
//string str = Newtonsoft.Json.JsonConvert.SerializeObject(roles);
//string list = WebLockConfig.Instance.WebRoleStorage.execRoleStorageGetList(str);
//List<RoleStorageModel> lists = Newtonsoft.Json.JsonConvert.DeserializeObject<List<RoleStorageModel>>(list);
//lkpStorage.Properties.DataSource = lists;
//lkpStorage.Properties.DisplayMember = "STORAGE_NAME";
//lkpStorage.Properties.ValueMember = "STORAGE_ID";
////lkpStorage.Properties.NullText="请您选择";
//if (lists.Count != 0)
//{
// lkpStorage.EditValue = lists[0].STORAGE_ID;
//}
//所属仓库
//lkpStorage.LoadData();
#endregion
#region
cDictionaryAccID.selSql = string.Format(@" select acce_id,
operatedate,
lot_id,
decode(acc_status, '0', '未验') acc_status
from t_rk_acceptance
where acc_status = '0'
order by operatedate desc
");
#endregion
//单位下拉框
lueUnit.NullText = "";
lueUnits.NullText = "";
lueUnit.Columns.Add(new DevExpress.XtraEditors.Controls.LookUpColumnInfo("VC_DICTIONARY_NAME", "单位"));
lueUnits.Columns.Add(new DevExpress.XtraEditors.Controls.LookUpColumnInfo("VC_DICTIONARY_NAME", "单位"));
lueUnit.ValueMember = "VC_CHAR_VALUE";
lueUnit.DisplayMember = "VC_DICTIONARY_NAME";
lueUnits.ValueMember = "VC_CHAR_VALUE";
lueUnits.DisplayMember = "VC_DICTIONARY_NAME";
DataTable strResult = new DataTable();
try
{
strResult = IBussFactory<BussCommon>.Instance().GetCustomCtrlData("t_sys_dictionary_tab", "VC_CHAR_VALUE", "VC_DICTIONARY_NAME", " VC_DICTIONARY_TYPE = 'vc_uom' and c_flag = '1'", "");
}
catch (Exception)
{
SystemCommon.ShowInfoMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们!");
}
if (strResult != null)
{
lueUnit.DataSource = strResult;
lueUnits.DataSource = strResult;
}
}
#endregion
#region Check
/// <summary>
/// CustomDrawColumnHeader 事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void gridViewAcceptance_CustomDrawColumnHeader(object sender, DevExpress.XtraGrid.Views.Grid.ColumnHeaderCustomDrawEventArgs e)
{
if (e.Column != null && e.Column.FieldName == "IsCheck")
{
e.Info.InnerElements.Clear();
e.Painter.DrawObject(e.Info);
DevControlHelper.DrawCheckBox(e, m_status);
e.Handled = true;
}
}
/// <summary>
/// Click 事件 调用DevControlHelper 帮助类
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void gridViewAcceptance_Click(object sender, EventArgs e)
{
if (DevControlHelper.ClickGridCheckBox(this.gridViewAcceptance, "IsCheck", m_status))
{
m_status = !m_status;
}
}
/// <summary>
/// DataSourceChanged 事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void gridViewAcceptance_DataSourceChanged(object sender, EventArgs e)
{
GridColumn column = this.gridViewAcceptance.Columns.ColumnByFieldName("IsCheck");
if (column != null)
{
column.Width = 80;
column.OptionsColumn.ShowCaption = m_status;
column.ColumnEdit = new RepositoryItemCheckEdit();
}
}
#endregion
#region
#region
#region
/// <summary>
/// 新增按钮
/// </summary>
public void Add()
{
acceptancelist.Clear();
if (this.gridViewStorage.RowCount <= 0)
{
return;
}
xtra_yds.SelectedTabPageIndex = 1;
XtraTab2.PageEnabled = true;
frmButtonItem["Confirm"].Enabled = true;
frmButtonItem["Save"].Enabled = false;
frmButtonItem["Del"].Enabled = true;
string strID = gridViewStorage.GetFocusedRowCellValue("WAREHOUSING_ID").ToString();
// AcceptanceModel accModel = new AcceptanceModel();
// accModel.WAREHOUSING_ID = strID;
// acceptancelist = IBussFactory<BussAcceptance>.Instance().GetAcceptanceData(accModel);
if (acceptancelist .Count== 0)
{
// acceptancelist = dataList;
WareNoticeTabModel seachModel = new WareNoticeTabModel();
seachModel.WAREHOUSING_ID = strID;
noticeTab = IBussFactory<BussWareNoticeTab>.Instance().GetWareNoticeTabList(seachModel);
foreach (WareNoticeTabModel model in noticeTab)
{
acceptancemodel = new AcceptanceModel();
acceptancemodel.WAREHOUSING_ID = strID;
acceptancemodel.IsCheck = false;
acceptancemodel.ACC_STATUS = "0";
acceptancemodel.LOT_ID = "";
acceptancemodel.ACCE_ID = "";
acceptancemodel.STO_NUM = 0;
acceptancemodel.GOODS_ID = model.GOODS_ID;
acceptancemodel.GOODS_NAME = model.GOODS_NAME;
acceptancemodel.BUY_NUM = model.AMOUNT;
acceptancemodel.ARR_NUM = 0;
acceptancemodel.PRICE = model.PRICE;
acceptancemodel.UNIT = model.UNIT;
acceptancemodel.ACCE_NUM = 0;
acceptancemodel.PASS_NUM = 0;
acceptancemodel.REC_NUM = model.AMOUNT;
acceptancemodel.NO_REC_NUM = 0;
acceptancemodel.RESULTS_TYPE = "";
acceptancemodel.OPERATORID = userData.USER_ID;
acceptancemodel.OPERATORNAME = userData.USERNAME;
acceptancemodel.OPERATEDATE = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
acceptancemodel.ACCE_MAN = userData.USER_ID;
acceptancemodel.ACCE_MAN_NAME = userData.USERNAME;
acceptancemodel.ACCE_DATE = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
acceptancelist.Add(acceptancemodel);
}
}
if (acceptancelist != null)
{
bgsAcce.DataSource = acceptancelist;
}
xtra_yds.SelectedTabPageIndex = 1;
frmButtonItem["Add"].Enabled = false;
}
#endregion
#region
/// <summary>
/// 更新编辑修改按钮
/// </summary>
public void Edit()
{
if (this.gridViewAcceptance.RowCount < 1)
{
return;
}
if(acceptancelist.Count==0)
{
return;
}
frmButtonItem["Confirm"].Enabled = false;
frmButtonItem["Save"].Enabled = true;
frmButtonItem["Del"].Enabled = true;
XtraTab2.PageEnabled = true;
bgsAcce.DataSource = acceptancelist;
gridViewAcceptanceOperate.RefreshData();
gridViewAcceptanceOperate.Focus();
gridViewAcceptanceOperate.FocusedRowHandle = 0;
xtra_yds.SelectedTabPageIndex = 1;
}
#endregion
#region
/// <summary>
/// 删除按钮
/// </summary>
public void Del()
{
if (DialogResult.OK == SystemCommon.ShowMessageBoxResult("确定取消当前操作?"))
{
XtraTab2.PageEnabled = false;
xtra_yds.SelectedTabPageIndex = 0;
Refresh();
acceptancelist.Clear();
gridViewStorage.FocusedRowHandle = 0;
}
}
#endregion
#region
/// <summary>
/// 查询验单单据信息按钮
/// </summary>
public void Search()
{
xtra_yds.SelectedTabPageIndex = 1;
this.gridViewAcceptanceOperate.OptionsBehavior.Editable = false;
this.txtboxRemark.Enabled = false;
this.dataAccTime.Enabled = false;
this.cDictionaryAccPersion.Enabled = false;
}
#endregion
/// <summary>
/// 查询已验单据
/// </summary>
public void SearchExist()
{
}
#region
/// <summary>
/// 刷新按钮
/// </summary>
public void Refresh()
{
BindStorageLotData();
xtra_yds.SelectedTabPageIndex = 0;
this.cDictionaryAccID.TextBoxFlag = string.Empty;
this.cDictionaryAccID.TextBoxValue = string.Empty;
this.cDictionaryAccPersion.TextBoxFlag = string.Empty;
this.cDictionaryAccPersion.TextBoxValue = string.Empty;
this.txtboxRemark.Text = string.Empty;
// bgsAcceptance.DataSource = new List<AcceptanceModel>();
// bgsAcce.DataSource = null;
if (frmButtonItem.ContainsKey("SearchExist")) { frmButtonItem["SearchExist"].Enabled = true; }
if (frmButtonItem.ContainsKey("Search")) { frmButtonItem["Search"].Enabled = true; }
if (frmButtonItem.ContainsKey("Add")) { frmButtonItem["Add"].Enabled = true; }
if (frmButtonItem.ContainsKey("Del")) { frmButtonItem["Del"].Enabled = true; }
if (frmButtonItem.ContainsKey("Edit")) { frmButtonItem["Edit"].Enabled = true; }
if (frmButtonItem.ContainsKey("Confirm")) { frmButtonItem["Confirm"].Enabled = false; }
if (frmButtonItem.ContainsKey("Save")) { frmButtonItem["Save"].Enabled = false; }
}
#endregion
#region
/// <summary>
/// 清空按钮
/// </summary>
public void Clear()
{
this.cDictionaryAccID.TextBoxFlag = string.Empty;
this.cDictionaryAccID.TextBoxValue = string.Empty;
this.cDictionaryAccPersion.TextBoxFlag = string.Empty;
this.cDictionaryAccPersion.TextBoxValue = string.Empty;
this.txtboxRemark.Text = string.Empty;
}
#endregion
#region
/// <summary>
/// 数据导出到Excel
/// </summary>
public void Express()
{
}
#endregion
#region
/// <summary>
/// 验收入库
/// </summary>
public void Print()
{
if(acceptancelist.Count==0)
{
return;
}
if (DialogResult.OK == SystemCommon.ShowMessageBoxResult("单据质检,确定拒绝入库?"))
{
}
}
public void Audit()
{
if (acceptancelist.Count == 0)
{
return;
}
if (DialogResult.OK == SystemCommon.ShowMessageBoxResult("单据质检完成,确定入库?"))
{
}
}
#endregion
#region
/// <summary>
/// 确认
/// </summary>
public void Confirm()
{
InsertAcceptanceData();
}
#endregion
#region
/// <summary>
/// 保存
/// </summary>
public void Save()
{
if (acceptancelist.Count == 0)
{
return;
}
string errText = IBussFactory<BussAcceptance>.Instance().UpdateAcceptance(acceptancelist);
if(errText.Trim().Length==0)
{
SystemCommon.ShowInfoMessageBox("修改成功");
}
if (frmButtonItem.ContainsKey("Search")) { frmButtonItem["Search"].Enabled = true; }
if (frmButtonItem.ContainsKey("Add")) { frmButtonItem["Add"].Enabled = true; }
if (frmButtonItem.ContainsKey("Edit")) { frmButtonItem["Edit"].Enabled = true; }
if (frmButtonItem.ContainsKey("Del")) { frmButtonItem["Del"].Enabled = false; }
if (frmButtonItem.ContainsKey("Save")) { frmButtonItem["Save"].Enabled = false; }
XtraTab2.PageEnabled = false;
xtra_yds.SelectedTabPageIndex = 0;
Refresh();
}
#endregion
#region
/// <summary>
/// 通用查询
/// </summary>
/// <param name="table"></param>
public override void LoadListData(DataTable table)
{
if (xtra_yds.SelectedTabPageIndex == 0)
{
lotList = ConvertHelper<StorageLotModel>.ConvertToList(table);
bgsStorageLot.DataSource = lotList;
gridViewStorage.RefreshData();
}
if (xtra_yds.SelectedTabPageIndex == 1)
{
acceptancelist = ConvertHelper<AcceptanceModel>.ConvertToList(table);
bgsAcce.DataSource = acceptancelist;
this.gridViewAcceptanceOperate.RefreshData();
}
}
#endregion
#endregion
#region
/// <summary>
/// 非法验证
/// </summary>
/// <returns></returns>
public bool Verification()
{
int t, j;
foreach (AcceptanceModel model in checkAccList)
{
#region
if (!string.IsNullOrEmpty(model.ACCE_DATE.ToString()))
{
DateTime SystemTime = DateTime.Now; //获得系统时间
string str = model.ACCE_DATE.ToString(); //str是数据库记录的时间
DateTime DatabaseTime = DateTime.Parse(str);
TimeSpan ts = SystemTime.Subtract(DatabaseTime); //系统时间减去数据库时间
t = ts.Days;
j = ts.Hours;
if (t < 0)
{
SystemCommon.ShowInfoMessageBox("验收时间不能大于当前时间!");
return false;
}
else if (t == 0)
{
if (j < 0)
{
SystemCommon.ShowInfoMessageBox("验收时间不能大于当前时间!");
return false;
}
}
}
#endregion
if (model.ARR_NUM < model.STO_NUM)
{
SystemCommon.ShowInfoMessageBox("验收数量不能大于入库数量!");
return false;
}
if (model.ACCE_NUM < model.PASS_NUM)
{
SystemCommon.ShowInfoMessageBox("合格数量不能大于验收数量!");
return false;
}
}
return true;
}
#endregion
#endregion
#region XtraTab1所有数据
#region StorageLot绑定入库批次上半屏数据
/// <summary>
/// 获得上半屏 入库批次数据
/// </summary>
private void BindStorageLotData()
{
//lotModel = new StorageLotModel();
//loList = new List<StorageLotModel>();
List<WareNoticeModel> wareData = new List<WareNoticeModel>();
string strlist = "";
try
{
wareData = IBussFactory<BussWareNotice>.Instance().GetWareNoticeDataSts("0");
}
catch (Exception ex)
{
SystemCommon.ShowErrorMessageBox(ex + "网络连接错误,请检查当前网络环境是否可用!");
}
if (wareData.Count > 0)
{
bindingSource1.DataSource = wareData;
gridViewStorage_Click(null, null);
gridViewStorage.RefreshData();
}
}
#endregion
#region StorageLot单击上半屏数据
List<WareNoticeTabModel> noticeTab = new List<WareNoticeTabModel>();
private void gridViewStorage_Click(object sender, EventArgs e)
{
//没有数据时 点击跳出
if (this.gridViewStorage.FocusedRowHandle < 0)
{
return;
}
tb_View.SelectedPageIndex = 1;
string strID = this.gridViewStorage.GetRowCellValue(this.gridViewStorage.FocusedRowHandle, "WAREHOUSING_ID").ToString();
WareNoticeTabModel seachModel = new WareNoticeTabModel();
seachModel.WAREHOUSING_ID = strID;
noticeTab= IBussFactory<BussWareNoticeTab>.Instance().GetWareNoticeTabList(seachModel);
if(noticeTab!=null)
{
bdsDetail.DataSource = noticeTab;
}
AcceptanceModel accModel = new AcceptanceModel();
accModel.WAREHOUSING_ID = strID;
accModel.ACC_STATUS = "1";
acceptancelist = IBussFactory<BussAcceptance>.Instance().GetAcceptanceData(accModel);
if(acceptancelist != null)
{
if(acceptancelist.Count>0)
{
tb_View.SelectedPageIndex = 0;
frmButtonItem["Add"].Enabled = false;
frmButtonItem["Edit"].Enabled = true;
frmButtonItem["Print"].Enabled = true;
frmButtonItem["Audit"].Enabled = true;
}
else
{
frmButtonItem["Audit"].Enabled = false;
frmButtonItem["Print"].Enabled = false;
frmButtonItem["Add"].Enabled = true;
frmButtonItem["Edit"].Enabled = false;
}
frmButtonItem["Confirm"].Enabled = false;
frmButtonItem["Save"].Enabled = false;
bgsAcceptance.DataSource = acceptancelist;
}
}
#endregion
#region StorageLotInfo绑定入库批次下半屏明细数据
/// <summary>
/// 绑定入库批次明细数据
/// </summary>
/// <param name="strId">入库批次号</param>
/// <returns></returns>
private List<StorageLotInfoModel> BindStorageLotInfoData(string strId)
{
lotInfoList = new List<StorageLotInfoModel>();
if (!string.IsNullOrEmpty(strId))
{
string detaillotinfo = "";
try
{
lotInfoList = IBussFactory<BussStorageLot>.Instance().GetInfoList(strId);
}
catch (Exception ex)
{
SystemCommon.ShowInfoMessageBox("网络连接错误,请检查当前网络环境是否可用");
}
return lotInfoList;
}
return lotInfoList;
}
#endregion
#region StorageLot获得上半屏 Check选中项
/// <summary>
/// 获得入库批次上半屏 Check选中项
/// </summary>
#endregion
#region Acceptance新增验收单据
/// <summary>
/// 增 收货验收 写入数据库
/// </summary>
/// <param name="str"></param>
private void InsertAcceptanceData()
{
this.lblReceiveID.Focus();
try
{
string errtext = IBussFactory<BussAcceptance>.Instance().AddAcceptance(acceptancelist);
if (!string.IsNullOrEmpty(errtext))
{
SystemCommon.ShowInfoMessageBox("操作失败!" + errtext);
}
else
{
SystemCommon.ShowInfoMessageBox("操作成功!");
xtra_yds.SelectedTabPageIndex = 0;
if (frmButtonItem.ContainsKey("Confirm")) { frmButtonItem["Confirm"].Enabled = false; }
if (frmButtonItem.ContainsKey("Save")) { frmButtonItem["Save"].Enabled = false; }
Refresh();
XtraTab2.PageEnabled = false;
frmButtonItem["Add"].Enabled = true;
}
}
catch (Exception ex)
{
SystemCommon.ShowInfoMessageBox("网络连接错误,请检查当前网络环境是否可用!");
}
}
#endregion
#region StorageLot CustomColumnDisplayText事件
/// <summary>
/// 自定义显示格式事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void gridViewStorage_CustomColumnDisplayText(object sender, DevExpress.XtraGrid.Views.Base.CustomColumnDisplayTextEventArgs e)
{
if (e.Column.FieldName == "TYPE")
{
if (e.Value == null)
{
return;
}
switch (e.Value.ToString())
{
case "0":
e.DisplayText = "采购入库";
break;
case "1":
e.DisplayText = "退货入库";
break;
case "2":
e.DisplayText = "调货入库";
break;
case "3":
e.DisplayText = "盲收";
break;
default:
e.DisplayText = "其它";
break;
}
}
if (e.Column.FieldName == "STATE")
{
switch (e.Value.ToString().Trim())
{
case "0":
e.DisplayText = "在途";
break;
case "1":
e.DisplayText = "到货验收";
break;
case "2":
e.DisplayText = "收货码盘";
break;
case "3":
e.DisplayText = "已入库";
break;
case "4":
e.DisplayText = "已关闭";
break;
case "5":
e.DisplayText = "已关闭";
break;
default:
e.DisplayText = "";
break;
}
}
}
#endregion
#endregion
#region XtraTab2所有数据
#region Acceptance ()
/// <summary>
/// 绑定gridView某一列 下拉验收结果集
/// </summary>
private void BindResultType()
{
string errText = string.Empty;
List<DictionaryTabModel> ResultTypelist = IBussFactory<BussDictionaryTab>.Instance().GetDictionaryTab("acceptance_type");
if(ResultTypelist!=null)
{
repositoryItemLookUpEdit1.DataSource = ResultTypelist;
repositoryItemLookUpEdit1.DropDownRows = ResultTypelist.Count;
repositoryItemLookUpEdit1.DisplayMember = "VC_DICTIONARY_NAME";
repositoryItemLookUpEdit1.ValueMember = "VC_DICTIONARY_ID";
repositoryItemLookUpEdit1.NullText = "请选择";
}
//lkpResultType.Properties.NullText = "请选择";
//lkpResultType.ItemIndex = 0;
//lkpResultType.EditValue.ToString() = "100050";
}
#endregion
#region
#region gridViewAcceptanceOperate_CellValueChanged事件
/// <summary>
/// gridViewAcceptanceOperate_CellValueChanged 对单元格输入值进行 操作 判断
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void gridViewAcceptanceOperate_CellValueChanged(object sender, DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs e)
{
if (e.RowHandle < 0)
{
return;
}
this.XtraTab2.Focus();
//验收数量
if (e.Column.Name == "gcACCE_NUM")
{
decimal STO_NUM = Convert.ToDecimal(gridViewAcceptanceOperate.GetFocusedRowCellValue("BUY_NUM"));
decimal ACCE_NUM = Convert.ToDecimal(gridViewAcceptanceOperate.GetFocusedRowCellValue("ACCE_NUM"));
if (STO_NUM < ACCE_NUM)
{
SystemCommon.ShowInfoMessageBox("请注意:" + Environment.NewLine + "您输入的验收数量大于入库数量!");
this.gridViewAcceptanceOperate.SetFocusedRowCellValue("ACCE_NUM", 0.0);
return;
}
// decimal cgNum = decimal.Parse(gridViewAcceptanceOperate.GetFocusedRowCellValue("BUY_NUM").ToString());
// gridViewAcceptanceOperate.SetRowCellValue(e.RowHandle, "ACCE_NUM", 0);
// gridViewAcceptanceOperate.SetRowCellValue(e.RowHandle, "PASS_NUM", e.Value.ToString());
gridViewAcceptanceOperate.SetRowCellValue(e.RowHandle, "PASS_NUM", ACCE_NUM);
// decimal numRec = STO_NUM - decimal.Parse(e.Value.ToString());
gridViewAcceptanceOperate.SetRowCellValue(e.RowHandle, "NO_REC_NUM", 0);
}
//合格数量
if (e.Column.Name == "gcPASS_NUM")
{
decimal ACCE_NUM = Convert.ToDecimal(gridViewAcceptanceOperate.GetFocusedRowCellValue("ACCE_NUM"));
decimal PASS_NUM = Convert.ToDecimal(gridViewAcceptanceOperate.GetFocusedRowCellValue("PASS_NUM"));
if (ACCE_NUM < PASS_NUM)
{
SystemCommon.ShowInfoMessageBox("请注意:" + Environment.NewLine + "您输入的合格数量大于验收数量!");
this.gridViewAcceptanceOperate.SetFocusedRowCellValue("PASS_NUM", 0.0);
return;
}
// decimal numRec = ACCE_NUM - PASS_NUM;
// gridViewAcceptanceOperate.SetRowCellValue(e.RowHandle, "NO_REC_NUM", numRec);
}
//接收数量
if (e.Column.Name == "gcREC_NUM")
{
decimal REC_NUM = Convert.ToDecimal(gridViewAcceptanceOperate.GetFocusedRowCellValue("REC_NUM"));
decimal STO_NUM = Convert.ToDecimal(gridViewAcceptanceOperate.GetFocusedRowCellValue("BUY_NUM"));
if (REC_NUM > STO_NUM)
{
SystemCommon.ShowInfoMessageBox("请注意" + Environment.NewLine + "您输入的接收数量大于入库数量!");
this.gridViewAcceptanceOperate.SetFocusedRowCellValue("REC_NUM", this.gridViewAcceptanceOperate.GetRowCellValue(this.gridViewAcceptanceOperate.FocusedRowHandle, "STO_NUM"));
return;
}
decimal NO_REC_NUM = STO_NUM - REC_NUM;
gridViewAcceptanceOperate.SetRowCellValue(gridViewAcceptanceOperate.FocusedRowHandle, "NO_REC_NUM", NO_REC_NUM);
//foreach (AcceptanceModel inf in acceptancelist)
//{
// sumAdd += inf.REC_NUM;
//}
}
// sumAdd = 0;
// sumAll = sumAdd;
}
#endregion
#region t_dictonary_EditValueChanged事件
/// <summary>
/// 验收人改变Changed事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void t_dictonary_EditValueChanged(object sender, EventArgs e)
{
//无数据时 跳出
if (this.gridViewAcceptanceOperate.RowCount < 1)
{
return;
}
this.XtraTab2.Focus();
foreach (AcceptanceModel list in bgsAcce.DataSource as List<AcceptanceModel>)
{
list.ACCE_MAN = this.cDictionaryAccPersion.TextBoxFlag;
list.ACCE_MAN_NAME = this.cDictionaryAccPersion.TextBoxValue;
}
this.gridViewAcceptanceOperate.RefreshData();
}
#endregion
#region txtboxRemark_TextChanged事件
/// <summary>
/// 修改 未验收的选中验单备注
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void txtboxRemark_TextChanged(object sender, EventArgs e)
{
if (acceptancelist == null)
{
return;
}
foreach (AcceptanceModel accept in acceptancelist)
{
if (accept.ACC_STATUS == "0" && accept.IsCheck == true)
{
accept.REMARK = this.txtboxRemark.Text;
}
}
this.gridViewAcceptanceOperate.RefreshData();
}
#endregion
#region xtraTabControl1_SelectedPageChanged事件
/// <summary>
/// 选中标签改变时 加载 不同的通用查询弹窗
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void xtraTabControl1_SelectedPageChanged(object sender, DevExpress.XtraTab.TabPageChangedEventArgs e)
{
if (xtra_yds.SelectedTabPageIndex == 1)
{
FrmSelectModle = new AcceptanceModel();
}
else if (xtra_yds.SelectedTabPageIndex == 0)
{
FrmSelectModle = new StorageLotModel();
}
}
#endregion
#region dataAccTime_EditValueChanged
private void dataAccTime_EditValueChanged(object sender, EventArgs e)
{
if (acceptancelist == null)
{
return;
}
if (Convert.ToDateTime(this.dataAccTime.EditValue) > DateTime.Now || Convert.ToDateTime(this.dataAccTime.EditValue) < DateTime.Now.AddDays(-7))
{
SystemCommon.ShowInfoMessageBox("所选时间不符,请重新选取!");
this.dataAccTime.Focus();
return;
}
foreach (AcceptanceModel model in acceptancelist)
{
model.ACCE_DATE = Convert.ToDateTime(this.dataAccTime.EditValue.ToString());
}
this.gridViewAcceptanceOperate.RefreshData();
}
#endregion
#endregion
#region gridViewAcceptance_CustomColumnDisplayText
private void gridViewAcceptance_CustomColumnDisplayText(object sender, DevExpress.XtraGrid.Views.Base.CustomColumnDisplayTextEventArgs e)
{
if (e.Column.FieldName == "RESULTS_TYPE")
{
if (e.Value == null)
{
return;
}
switch (e.Value.ToString())
{
case "000050":
e.DisplayText = "待检验";
break;
case "100051":
e.DisplayText = "优质品";
break;
case "100052":
e.DisplayText = "良品";
break;
case "100053":
e.DisplayText = "部分次品";
break;
case "100054":
e.DisplayText = "次品";
break;
}
}
if (e.Column.FieldName == "ACC_STATUS")
{
if (e.Value == null)
{
return;
}
switch (e.Value.ToString())
{
case "0":
e.DisplayText = "未验";
break;
case "1":
e.DisplayText = "已验";
break;
}
}
//if (e.Column.FieldName == "UNIT")
//{
// if (e.Value == null)
// {
// return;
// }
// switch (e.Value.ToString().Trim())
// {
// case "a":
// e.DisplayText = "盒";
// break;
// case "b":
// e.DisplayText = "罐";
// break;
// case "c":
// e.DisplayText = "袋";
// break;
// case "d":
// e.DisplayText = "瓶";
// break;
// case "e":
// e.DisplayText = "个";
// break;
// case "f":
// e.DisplayText = "包";
// break;
// case "g":
// e.DisplayText = "把";
// break;
// case "h":
// e.DisplayText = "筒";
// break;
// case "i":
// e.DisplayText = "张";
// break;
// case "j":
// e.DisplayText = "套";
// break;
// case "k":
// e.DisplayText = "克";
// break;
// case "l":
// e.DisplayText = "泡";
// break;
// case "m":
// e.DisplayText = "片";
// break;
// case "z":
// e.DisplayText = "箱";
// break;
// default:
// e.DisplayText = "";
// break;
// }
//}
}
#endregion
#region gridViewAcceptanceOperate_CustomColumnDisplayText
private void gridViewAcceptanceOperate_CustomColumnDisplayText(object sender, DevExpress.XtraGrid.Views.Base.CustomColumnDisplayTextEventArgs e)
{
if (e.Column.FieldName == "UNIT")
{
if (e.Value == null)
{
return;
}
switch (e.Value.ToString().Trim())
{
case "a":
e.DisplayText = "盒";
break;
case "b":
e.DisplayText = "罐";
break;
case "c":
e.DisplayText = "袋";
break;
case "d":
e.DisplayText = "瓶";
break;
case "e":
e.DisplayText = "个";
break;
case "f":
e.DisplayText = "包";
break;
case "g":
e.DisplayText = "把";
break;
case "h":
e.DisplayText = "筒";
break;
case "i":
e.DisplayText = "张";
break;
case "j":
e.DisplayText = "套";
break;
case "k":
e.DisplayText = "克";
break;
case "l":
e.DisplayText = "泡";
break;
case "m":
e.DisplayText = "片";
break;
case "z":
e.DisplayText = "箱";
break;
default:
e.DisplayText = "";
break;
}
}
}
#endregion
#endregion
}
}