BaoKai_202508_Wms_Jingwang_.../WMS.FrmRK/FrmWareNotice.cs
2025-08-24 21:52:42 +08:00

1859 lines
71 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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 DevExpress.XtraGrid.Columns;
using DevExpress.XtraEditors.Repository;
using WMS.Ctrl;
using WMS.Model.Base;
using WMS.FrmBaseData;
using System.Threading;
using WMS.Business.Common;
using WMS.Business;
using WMS.Business.Base;
using WMS.Business.RK;
namespace WMS.FrmRK
{
/// <summary>
/// 窗体:入库通知单
/// </summary>
public partial class FrmWareNotice : FormBase
{
#region
public static FrmWareNotice frmWareNotice;
private WareNoticeModel wareNoticeModel = new WareNoticeModel();//当前选择的入库通知单
private List<WareNoticeModel> listWareNoticeModel = new List<WareNoticeModel>();//入库通知单集合
private List<WareNoticeTabModel> listWareNoticeTabModel = new List<WareNoticeTabModel>();//入库商品明细集合
private List<SKUTabModel> listSKU = new List<SKUTabModel>();//规格集合
//private bool isSKU = false;//默认未开启SKU
private int flag = -1;//0:增加;1:修改
private DevExpress.XtraEditors.Repository.RepositoryItemLookUpEdit lueUnits = new RepositoryItemLookUpEdit();
//全选判断
bool m_status = false;
#endregion
#region
/// <summary>
/// 无参构造
/// </summary>
public FrmWareNotice()
{
InitializeComponent();
//lueID.LoadData();//编号
//dicClosePerson.LoadData();//关闭人
//dicConfirm.LoadData();//审核人
lueProvider.LoadData();//供应商
lueState.LoadData();//状态
//dicRecipients.LoadData();//收货人
lueStorageMode.LoadData();//入库类型
//dicOperator.LoadData();//操作人
}
/// <summary>
/// 本窗体加载的时候
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
public void FrmWareNotice_Load(object sender, EventArgs e)
{
//关闭人
//dicClosePerson.Properties.DataSource = getSameDepUserList();
//dicClosePerson.Properties.KeyValue = userData.USER_ID;
//审核人
//dicConfirm.Properties.DataSource = getSameDepUserList();
//dicConfirm.TextBoxFlag = userData.USER_ID;
//dicConfirm.TextBoxValue = userData.NAME;
//供应商
lueProvider.Properties.Columns.Add(new DevExpress.XtraEditors.Controls.LookUpColumnInfo("PY_NAME", "助记码", 8));
DataTable dt = lueProvider.Properties.DataSource as DataTable;
DataRow dr = dt.NewRow();
dt.Rows.Add(dr);
lueProvider.Properties.DataSource = dt;
ctl_ck.TextBoxValue = userData.STORAGE_NAME;
ctl_ck.TextBoxFlag = userData.STORAGE_ID;
//收货人
//dicRecipients.Properties.DataSource = getSameDepUserList();
//dt = dicRecipients.Properties.DataSource as DataTable;
//dr = dt.NewRow();
//dt.Rows.Add(dr);
//dicRecipients.Properties.DataSource = dt;
//操作人
//dicOperator.Properties.DataSource = getSameDepUserList();
//dicOperator.TextBoxFlag = userData.USER_ID;
//dicOperator.TextBoxValue = userData.NAME;
//单位下拉框
lueUnit.NullText = "";
lueUnit.Columns.Add(new DevExpress.XtraEditors.Controls.LookUpColumnInfo("VC_DICTIONARY_NAME", "单位"));
lueUnit.ValueMember = "VC_CHAR_VALUE";
lueUnit.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.NullText = "";
lueUnits.Columns.Add(new DevExpress.XtraEditors.Controls.LookUpColumnInfo("UNIT_NAME", "单位"));
lueUnits.ValueMember = "UNIT";
lueUnits.DisplayMember = "UNIT_NAME";
//重量单位下拉框
lueKGUnit.NullText = "";
lueKGUnit.Columns.Add(new DevExpress.XtraEditors.Controls.LookUpColumnInfo("VC_DICTIONARY_NAME", "重量单位"));
lueKGUnit.ValueMember = "VC_CHAR_VALUE";
lueKGUnit.DisplayMember = "VC_DICTIONARY_NAME";
try
{
strResult = IBussFactory<BussCommon>.Instance().GetCustomCtrlData("t_sys_dictionary_tab", "VC_CHAR_VALUE", "VC_DICTIONARY_NAME", " VC_DICTIONARY_TYPE = 'kg_unit' and c_flag = '1'", "");
}
catch (Exception)
{
SystemCommon.ShowInfoMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们!");
}
if (strResult != null)
{
lueKGUnit.DataSource = strResult;
}
bindGrid(wareNoticeModel);//绑定数据
//bindGoodsGrid();//绑定商品列表数据
bsWareNoticeEdit.DataSource = wareNoticeModel;//绑定选中的通知单
FrmSelectModle = new WareNoticeModel();//通用查询
////检测是否开启SKU
//if (WebLockConfig.Instance.WebSysParams.GetParamValue("IsSKU") == "0")
//{
// isSKU = true;
//}
}
/// <summary>
/// 得到与登录用户同部门的所有用户
/// </summary>
public DataTable getSameDepUserList()
{
string errText = string.Empty;
DataTable strResult = new DataTable();
try
{
strResult = IBussFactory<BussSystemUser>.Instance().GetSameDepUserInfo(userData.USER_ID);
}
catch (Exception)
{
SystemCommon.ShowInfoMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们!");
}
if (errText == string.Empty)
{
return strResult;
}
else
{
SystemCommon.ShowInfoMessageBox(errText);
}
return null;
}
public static FrmWareNotice getInstance()
{
if (frmWareNotice == null || frmWareNotice.IsDisposed)
{
frmWareNotice = new FrmWareNotice();
}
return frmWareNotice;
}
#endregion
#region
/// <summary>
/// 整体绑定数据
/// </summary>
private void bindGrid(WareNoticeModel model)
{
string errText = string.Empty;
new Thread(delegate ()
{
try
{
listWareNoticeModel = IBussFactory<BussWareNotice>.Instance().GetWareNoticeList(model);
if (errText.Trim().Length > 0)
{
SystemCommon.ShowInfoMessageBox(errText);
}
}
catch (Exception)
{
SystemCommon.ShowInfoMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们!");
}
this.Invoke(new MethodInvoker(delegate ()
{
bsWareNotice.DataSource = listWareNoticeModel;
gVWareNotice.RefreshData();
if (listWareNoticeModel.Count > 0)
{
string wareId = listWareNoticeModel[0].WAREHOUSING_ID;
GetDetailDoc(wareId);
}
if (frmButtonItem.ContainsKey("Del"))
{
frmButtonItem["Del"].Enabled = false;
}
if (frmButtonItem.ContainsKey("Save"))
{
frmButtonItem["Save"].Enabled = false;
}
if (frmButtonItem.ContainsKey("Remark"))
{
frmButtonItem["Remark"].Enabled = false;
}
if (frmButtonItem.ContainsKey("ChooseGoods")) { frmButtonItem["ChooseGoods"].Enabled = false; }
}));
}).Start();
}
/// <summary>
/// 绑定采购商品明细
/// </summary>
/// <param name="WareNoticeModel"></param>
public void bindWareNoticeTab(WareNoticeTabModel WareNoticeModel)
{
string errText = string.Empty;
listWareNoticeTabModel = new List<WareNoticeTabModel>();
string strWareNoticeTabList = string.Empty;
try
{
listWareNoticeTabModel = IBussFactory<BussWareNoticeTab>.Instance().GetWareNoticeTabList(WareNoticeModel);
}
catch (Exception)
{
SystemCommon.ShowInfoMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们!");
}
if (errText == string.Empty)
{
bsWareNoticeTab.DataSource = listWareNoticeTabModel;
GVWareNoticeTab.RefreshData();
xtaEdit.Text = "入库商品明细-" + wareNoticeModel.WAREHOUSING_ID;
}
else
{
SystemCommon.ShowInfoMessageBox(errText);
}
}
/// <summary>
/// 条件查询
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
public override void Search()
{
xtcNotice.Focus();
bindGrid(wareNoticeModel);
if (!string.IsNullOrEmpty(wareNoticeModel.STATE) && decimal.Parse(wareNoticeModel.STATE) >= 4)//如果已上架、关闭、作废 变背景色、禁止修改
{
if (frmButtonItem.ContainsKey("Add"))
{
frmButtonItem["Add"].Enabled = false;
}
if (frmButtonItem.ContainsKey("EditAdd"))
{
frmButtonItem["EditAdd"].Enabled = false;
}
if (frmButtonItem.ContainsKey("Edit"))
{
frmButtonItem["Edit"].Enabled = false;
}
if (frmButtonItem.ContainsKey("Close"))
{
frmButtonItem["Close"].Enabled = false;
}
if (frmButtonItem.ContainsKey("Confirm"))
{
frmButtonItem["Confirm"].Enabled = false;
}
if (frmButtonItem.ContainsKey("Receive"))
{
frmButtonItem["Receive"].Enabled = false;
}
if (frmButtonItem.ContainsKey("CodeDisk"))
{
frmButtonItem["CodeDisk"].Enabled = false;
}
gVWareNotice.Appearance.Row.BackColor = Color.FromArgb(190, 180, 160);
gVWareNotice.Appearance.EvenRow.BackColor = Color.FromArgb(190, 180, 160);
}
else
{
if (frmButtonItem.ContainsKey("Add"))
{
frmButtonItem["Add"].Enabled = true;
}
if (frmButtonItem.ContainsKey("EditAdd"))
{
frmButtonItem["EditAdd"].Enabled = false;
}
if (frmButtonItem.ContainsKey("Edit"))
{
frmButtonItem["Edit"].Enabled = true;
}
if (frmButtonItem.ContainsKey("Close"))
{
frmButtonItem["Close"].Enabled = true;
}
if (frmButtonItem.ContainsKey("Confirm"))
{
frmButtonItem["Confirm"].Enabled = true;
}
if (frmButtonItem.ContainsKey("Receive"))
{
frmButtonItem["Receive"].Enabled = true;
}
if (frmButtonItem.ContainsKey("CodeDisk"))
{
frmButtonItem["CodeDisk"].Enabled = true;
}
gVWareNotice.Appearance.Row.BackColor = Color.White;
gVWareNotice.Appearance.EvenRow.BackColor = Color.White;
}
}
/// <summary>
/// Tab页改改通用查询Model
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void xtraTabControl1_SelectedPageChanged(object sender, DevExpress.XtraTab.TabPageChangedEventArgs e)
{
if (xtcNotice.SelectedTabPageIndex == 0)
{
FrmSelectModle = new WareNoticeModel();
if (flag == 0 || flag == 1)
{
//frmButtonItem["choose"].Enabled = true;
if (frmButtonItem.ContainsKey("Del"))
{
frmButtonItem["Del"].Enabled = false;
}
}
}
else if (xtcNotice.SelectedTabPageIndex == 1)
{
FrmSelectModle = new WareNoticeTabModel();
if (flag == 0 || flag == 1)
{
//frmButtonItem["choose"].Enabled = false;
if (frmButtonItem.ContainsKey("Del"))
{
frmButtonItem["Del"].Enabled = true;
}
}
}
else
{
if (flag == 0 || flag == 1)
{
//frmButtonItem["choose"].Enabled = true;
if (frmButtonItem.ContainsKey("Del"))
{
frmButtonItem["Del"].Enabled = false;
}
}
}
}
/// <summary>
/// 通用查询
/// </summary>
/// <param name="table"></param>
public override void LoadListData(DataTable table)
{
if (xtcNotice.SelectedTabPageIndex == 0)
{
listWareNoticeModel = ConvertHelper<WareNoticeModel>.ConvertToList(table);
bsWareNotice.DataSource = listWareNoticeModel;
gVWareNotice.RefreshData();
}
else
{
listWareNoticeTabModel = ConvertHelper<WareNoticeTabModel>.ConvertToList(table);
bsWareNoticeTab.DataSource = listWareNoticeTabModel;
GVWareNoticeTab.RefreshData();
}
}
/// <summary>
/// 供应商改变 改日期 可选商品
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void lueProvider_EditValueChanged(object sender, EventArgs e)
{
if (flag == -1)
{
return;
}
if (!string.IsNullOrEmpty(lueProvider.Text))
{
ProviderModel temp = new ProviderModel();
temp.PROVIDER_ID = lueProvider.EditValue.ToString();
//整体绑定数据
DataSet strResult = new DataSet();
try
{
strResult = IBussFactory<BussProvider>.Instance().getProviderDS(temp);
}
catch (Exception)
{
SystemCommon.ShowInfoMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们!");
}
if (strResult != null)
{
List<ProviderModel> templist = ConvertHelper<ProviderModel>.ConvertToList(strResult.Tables[0]);
if (templist.Count > 0)
{
temp.ARR_DAYS = templist[0].ARR_DAYS;
wareNoticeModel.EXPECTED_DELIVERY_DATE = System.DateTime.Now.AddDays(temp.ARR_DAYS);
deExpectDate.DateTime = System.DateTime.Now.AddDays(temp.ARR_DAYS);
}
else
{
SystemCommon.ShowInfoMessageBox("未找到供应商");
}
ctrlDicGoods.SqlStr = "where provider_id = '" + temp.PROVIDER_ID + "'";
if (frmButtonItem.ContainsKey("ChooseGoods")) { frmButtonItem["ChooseGoods"].Enabled = true; }
}
}
else
{
deExpectDate.DateTime = System.DateTime.MinValue;
deEndDate.DateTime = System.DateTime.MinValue;
// deRealDate.DateTime = System.DateTime.MinValue;
if (frmButtonItem.ContainsKey("ChooseGoods")) { frmButtonItem["ChooseGoods"].Enabled = false; }
}
}
/// <summary>
/// 预计日期改变 改终止日期、实际日期
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void deExpectDate_EditValueChanged(object sender, EventArgs e)
{
if (deExpectDate.DateTime == DateTime.MinValue)
{
return;
}
wareNoticeModel.END_DELIVERY_DATE = deExpectDate.DateTime.AddDays(7);
deEndDate.DateTime = deExpectDate.DateTime.AddDays(7);
wareNoticeModel.REAL_DELIVERY_DATE = deExpectDate.DateTime.AddDays(7);
// deRealDate.DateTime = deExpectDate.DateTime.AddDays(7);
}
#endregion
#region
#region
/// <summary>
/// 商品选择
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void ctrlDicGoods_Button_Click(object sender, EventArgs e)
{
if (ctrlDicGoods.SelectTable.Rows.Count == 0)
{
//SystemCommon.ShowInfoMessageBox("您未选择商品!");
return;
}
//商品集合
listGoodsInfoModel = ConvertHelper<GoodsInfoModel>.ConvertToList(ctrlDicGoods.SelectTable);
/*得到当前登录角色所在仓库、库区*/
string errText = string.Empty;
// List<RoleStorageModel> strResult = new List<RoleStorageModel>();
RoleStorageModel rsModel = new RoleStorageModel();
rsModel.ROLE_ID = userData.ROLE_ID;
/*将选择的商品加入入库商品明细*/
foreach (GoodsInfoModel item in listGoodsInfoModel)
{
////如果被选中
//if (item.IsCheck)
//{
WareNoticeTabModel model = new WareNoticeTabModel();
model.GOODS_ID = item.GOODS_ID;
model.GOODS_NAME = item.GOODS_NAME;
model.UNIT = item.UNIT;
model.SCALE_UNIT = item.SCALE_UNIT;
model.PRICE = item.PRICE;
model.GVOLUME = item.GVOLUME;
model.NET_WEIGH = item.NET_WEIGHT;
model.ROUGH_WEIGHT = item.GROSS_WEIGHT;
model.STORAGE_ID = ctl_ck.TextBoxFlag;// rsModel.STORAGE_ID;
model.STORAGE_NAME = ctl_ck.TextBoxValue;// rsModel.STORAGE_NAME;
model.STORAGE_AREA_ID = rsModel.STORAGE_AREA_ID;
model.GOODS_TYPE_ID = item.GOODS_TYPE_ID;
model.GOODS_TYPE_NAME = item.GOODS_TYPE_NAME;
model.STORAGE_AREA_ID = "";
if (flag == 1)
{ //修改:给通知单编号赋值
model.WAREHOUSING_ID = wareNoticeModel.WAREHOUSING_ID;
}
//判断该商品是否已经在入库商品明细中后添加
bool had = false;
foreach (WareNoticeTabModel wntModel in listWareNoticeTabModel)
{
if (wntModel.GOODS_ID == model.GOODS_ID)
{
had = true;
}
}
if (!had)
{
listWareNoticeTabModel.Add(model);
}
//}
}
if (listWareNoticeTabModel.Count > 0)
{
xtcNotice.SelectedTabPageIndex = 1;
GVWareNoticeTab.Focus();
GVWareNoticeTab.RefreshData();
//焦点置于采购数量
GVWareNoticeTab.FocusedColumn = GVWareNoticeTab.Columns[1];
GVWareNoticeTab.FocusedRowHandle = 0;
// GVWareNoticeTab.SetFocusedValue("AMOUNT");
}
else
{
SystemCommon.ShowInfoMessageBox("未选择任何商品或所选择的商品已经在采购单中,请重新选择");
}
}
#endregion
/// <summary>
/// 码盘
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
public void CodeDisk()
{
if (!string.IsNullOrEmpty(wareNoticeModel.WAREHOUSING_ID))
{
if (wareNoticeModel.STATE == "0")
{
SystemCommon.ShowInfoMessageBox("该入库通知单未被审核,不能进行码盘操作");
return;
}
if (wareNoticeModel.TRAY_STATE != "1")
{
FormBase formBase = OpenFrmTable("WMS.FrmRK", "FrmCodeDisk");//创建窗体
if (formBase != null)
{
//FrmCodeDisk frmCodeDisk = formBase as FrmCodeDisk;
//frmCodeDisk.model = wareNoticeModel;
//if (!OpenTabAddFrm("0302", "FrmCodeDisk", "收货码盘-" + wareNoticeModel.WAREHOUSING_ID))
{
// frmCodeDisk.FrmCodeDisk_Load(null, null);//如果已经被打开,执行一下窗体加载方法
}
}
}
else
{
SystemCommon.ShowInfoMessageBox("已经码盘,不能再进行码盘操作");
}
}
else
{
SystemCommon.ShowInfoMessageBox("请选择要码盘的记录");
}
}
/// <summary>
/// 收货
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
public void Receive()
{
if (!string.IsNullOrEmpty(wareNoticeModel.WAREHOUSING_ID))
{
if (wareNoticeModel.STATE != "0" && wareNoticeModel.STATE != "1" && wareNoticeModel.STATE != "2")
{
SystemCommon.ShowInfoMessageBox("该入库单已经收货,不能进行收货操作");
return;
}
FormBase formBase = OpenFrmTable("WMS.FrmRK", "FrmStorageLot");//创建窗体
if (formBase != null)
{
try
{
FrmStorageLot frmReceive = formBase as FrmStorageLot;
frmReceive.sto_id = wareNoticeModel.WAREHOUSING_ID;
if (!OpenTabAddFrm("0303", "FrmStorageLot", "收货入库-" + wareNoticeModel.WAREHOUSING_ID))
{
frmReceive.FrmStorage_Load(null, null);//如果已经被打开,执行一下窗体加载方法
}
}
catch (Exception ex)
{
}
}
}
else
{
SystemCommon.ShowInfoMessageBox("请选择要收货的记录");
}
}
/// <summary>
/// 增加按钮
/// </summary>
public override void Add()
{
labGoods.Visible = false;
ctrlGoods.Visible = false;
flag = 0;//标识增加
GVWareNoticeTab.OptionsBehavior.Editable = true;//明细可编辑
colAMOUNT.OptionsColumn.AllowEdit = true;
colUNIT.OptionsColumn.AllowEdit = true;
colPRODUCTION_DATE.OptionsColumn.AllowEdit = true;
xtaEdit.Text = "入库商品明细";
xtcNotice.SelectedTabPageIndex = 1;//先填写通知单
panelControl1.Visible = true;//信息控件可见
panelControl2.Visible = false;//关闭控件不可见
xtaEdit.PageEnabled = true;
txtID.Enabled = false;//编号不可用
lueState.Enabled = false;//状态不可用
// dicConfirm.Enabled = false;//审核人不可用
wareNoticeModel = new WareNoticeModel();//清空通知单
bsWareNoticeEdit.DataSource = wareNoticeModel;
dicClosePerson.TextBoxFlag = null;
dicClosePerson.TextBoxValue = null;
listWareNoticeTabModel.Clear();
bsWareNoticeTab.DataSource = listWareNoticeTabModel;
GVWareNoticeTab.RefreshData();
//ctrlDicGoods.Enabled = true;
if (frmButtonItem.ContainsKey("ChooseGoods")) { frmButtonItem["ChooseGoods"].Enabled = true; }
//状态默认未审核
wareNoticeModel.STATE = "0";
lueState.EditValue = "0";
//入库类型默认采购入库
wareNoticeModel.STORAGE_MODE = "0";
lueStorageMode.EditValue = "0";
//操作人默认当前用户
wareNoticeModel.RECORD_PERSON = userData.USER_ID;
dicOperator.TextBoxFlag = userData.USER_ID;
dicOperator.TextBoxValue = userData.NAME;
//时间默认当前时间
wareNoticeModel.ORDER_DATE = DateTime.Now;
deOrder.DateTime = DateTime.Now;
wareNoticeModel.END_DELIVERY_DATE = DateTime.Now;
deEndDate.DateTime = DateTime.Now.AddDays(10);
wareNoticeModel.EXPECTED_DELIVERY_DATE = DateTime.Now;
deExpectDate.DateTime = DateTime.Now;
wareNoticeModel.REAL_DELIVERY_DATE = DateTime.Now;
// deRealDate.DateTime = DateTime.Now;
if (frmButtonItem.ContainsKey("Search")) { frmButtonItem["Search"].Enabled = false; }
if (frmButtonItem.ContainsKey("Add")) { frmButtonItem["Add"].Enabled = false; }
if (frmButtonItem.ContainsKey("EditAdd")) { frmButtonItem["EditAdd"].Enabled = false; }
if (frmButtonItem.ContainsKey("Edit")) { frmButtonItem["Edit"].Enabled = false; }
if (frmButtonItem.ContainsKey("Export")) { frmButtonItem["Export"].Enabled = false; }
if (frmButtonItem.ContainsKey("Close")) { frmButtonItem["Close"].Enabled = false; }
if (frmButtonItem.ContainsKey("Confirm")) { frmButtonItem["Confirm"].Enabled = false; }
if (frmButtonItem.ContainsKey("Receive")) { frmButtonItem["Receive"].Enabled = false; }
if (frmButtonItem.ContainsKey("CodeDisk")) { frmButtonItem["CodeDisk"].Enabled = false; }
if (frmButtonItem.ContainsKey("Clear")) { frmButtonItem["Clear"].Enabled = false; }
if (frmButtonItem.ContainsKey("Save")) { frmButtonItem["Save"].Enabled = true; }
if (frmButtonItem.ContainsKey("Remark")) { frmButtonItem["Remark"].Enabled = true; }
}
/// <summary>
/// 以当前增加
/// </summary>
public void EditAdd()
{
labGoods.Visible = false;
ctrlGoods.Visible = false;
flag = 0;//标识新增
//GVWareNoticeTab.OptionsBehavior.Editable = true;//明细可编辑
colAMOUNT.OptionsColumn.AllowEdit = true;
colUNIT.OptionsColumn.AllowEdit = true;
colPRODUCTION_DATE.OptionsColumn.AllowEdit = true;
xtaEdit.Text = "入库商品明细";
panelControl1.Visible = true;//信息控件可见
panelControl2.Visible = false;//关闭控件不可见
txtID.Enabled = false;//编号不可用
lueState.Enabled = false;//状态不可用
/// dicConfirm.Enabled = false;//审核人不可用
//ctrlDicGoods.Enabled = true;
//if (frmButtonItem.ContainsKey("ChooseGoods")) { frmButtonItem["ChooseGoods"].Enabled = true; }
wareNoticeModel.WAREHOUSING_ID = null;
txtID.Text = null;
bsWareNoticeEdit.DataSource = wareNoticeModel;
foreach (WareNoticeTabModel item in listWareNoticeTabModel)
{
item.WAREHOUSING_ID = null;
}
bsWareNoticeTab.DataSource = listWareNoticeTabModel;
GVWareNoticeTab.RefreshData();
//状态默认未审核
wareNoticeModel.STATE = "0";
lueState.EditValue = "0";
if (frmButtonItem.ContainsKey("Search")) { frmButtonItem["Search"].Enabled = false; }
if (frmButtonItem.ContainsKey("Add")) { frmButtonItem["Add"].Enabled = false; }
if (frmButtonItem.ContainsKey("EditAdd")) { frmButtonItem["EditAdd"].Enabled = false; }
if (frmButtonItem.ContainsKey("Edit")) { frmButtonItem["Edit"].Enabled = false; }
if (frmButtonItem.ContainsKey("Export")) { frmButtonItem["Export"].Enabled = false; }
if (frmButtonItem.ContainsKey("Close")) { frmButtonItem["Close"].Enabled = false; }
if (frmButtonItem.ContainsKey("Confirm")) { frmButtonItem["Confirm"].Enabled = false; }
if (frmButtonItem.ContainsKey("Receive")) { frmButtonItem["Receive"].Enabled = false; }
if (frmButtonItem.ContainsKey("CodeDisk")) { frmButtonItem["CodeDisk"].Enabled = false; }
if (frmButtonItem.ContainsKey("Clear")) { frmButtonItem["Clear"].Enabled = false; }
if (frmButtonItem.ContainsKey("Save")) { frmButtonItem["Save"].Enabled = true; }
if (frmButtonItem.ContainsKey("Remark")) { frmButtonItem["Remark"].Enabled = true; }
}
/// <summary>
/// 编辑按钮
/// </summary>
public override void Edit()
{
if (!frmButtonItem.ContainsKey("Edit"))
{
return;
}
else if (frmButtonItem["Edit"].Enabled == false)
{
return;
}
#region sku
//if (isSKU)
//{
// SKUTabModel querySKUTab = new SKUTabModel();
// querySKUTab.DOCCTNUMBER = wareNoticeModel.WAREHOUSING_ID;
// string strResult = string.Empty;
// string strParameter = Newtonsoft.Json.JsonConvert.SerializeObject(querySKUTab);
// try
// {
// strResult = WebLockConfig.Instance.WebSKUTab.GetSKUTab(strParameter);
// listSKU = Newtonsoft.Json.JsonConvert.DeserializeObject<List<SKUTabModel>>(strResult);
// }
// catch (Exception)
// {
// SystemCommon.ShowInfoMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们!");
// }
//}
#endregion
xtaEdit.PageEnabled = true;
//xtcNotice.TabPages[1].PageEnabled = true;
labGoods.Visible = false;
ctrlGoods.Visible = false;
flag = 1;//标识修改
//GVWareNoticeTab.OptionsBehavior.Editable = true;//明细可编辑
colAMOUNT.OptionsColumn.AllowEdit = true;
colUNIT.OptionsColumn.AllowEdit = true;
colPRODUCTION_DATE.OptionsColumn.AllowEdit = true;
panelControl1.Visible = true;//信息控件可见
panelControl2.Visible = false;//关闭控件不可见
txtID.Enabled = false;//编号不可用
lueState.Enabled = false;//状态不可用
// dicConfirm.Enabled = false;//审核人不可用
//ctrlDicGoods.Enabled = true;
//if (frmButtonItem.ContainsKey("ChooseGoods")) { frmButtonItem["ChooseGoods"].Enabled = true; }
//GVGoodsInfo.OptionsBehavior.Editable = true;
////刷新商品列表
//foreach (GoodsInfoModel item in listGoodsInfoModel)
//{
// item.IsCheck = false;
//}
//bsGoodsInfo.DataSource = listGoodsInfoModel;
//GVGoodsInfo.RefreshData();
if (frmButtonItem.ContainsKey("Search")) { frmButtonItem["Search"].Enabled = false; }
if (frmButtonItem.ContainsKey("Add")) { frmButtonItem["Add"].Enabled = false; }
if (frmButtonItem.ContainsKey("EditAdd")) { frmButtonItem["EditAdd"].Enabled = false; }
if (frmButtonItem.ContainsKey("Edit")) { frmButtonItem["Edit"].Enabled = false; }
if (frmButtonItem.ContainsKey("Export")) { frmButtonItem["Export"].Enabled = false; }
if (frmButtonItem.ContainsKey("Close")) { frmButtonItem["Close"].Enabled = false; }
if (frmButtonItem.ContainsKey("Confirm")) { frmButtonItem["Confirm"].Enabled = false; }
if (frmButtonItem.ContainsKey("Receive")) { frmButtonItem["Receive"].Enabled = false; }
if (frmButtonItem.ContainsKey("CodeDisk")) { frmButtonItem["CodeDisk"].Enabled = false; }
if (frmButtonItem.ContainsKey("Clear")) { frmButtonItem["Clear"].Enabled = false; }
if (frmButtonItem.ContainsKey("Save")) { frmButtonItem["Save"].Enabled = true; }
if (frmButtonItem.ContainsKey("Remark")) { frmButtonItem["Remark"].Enabled = true; }
//frmButtonItem["choose"].Enabled = true;
}
/// <summary>
/// 刷新按钮
/// </summary>
public override void Refresh()
{
if (frmButtonItem.ContainsKey("Save") && frmButtonItem["Save"].Enabled == true && DialogResult.Yes != SystemCommon.ShowMessageBoxResult("确定放弃正在编辑的数据?"))
{
return;
}
flag = -1;//标识为非增加非修改
string ID = string.Empty;
ID = wareNoticeModel.WAREHOUSING_ID;
wareNoticeModel = new WareNoticeModel();
bindGrid(wareNoticeModel);//刷新数据
xtcNotice.SelectedTabPageIndex = 0;//到入库通知单页
panelControl1.Visible = true;//编辑控件可见
panelControl2.Visible = false;//关闭控件不可见
foreach (Control item in panelControl1.Controls)
{
item.Enabled = true;
}
//GVWareNoticeTab.OptionsBehavior.Editable = false;
colAMOUNT.OptionsColumn.AllowEdit = false;
colUNIT.OptionsColumn.AllowEdit = false;
colPRODUCTION_DATE.OptionsColumn.AllowEdit = false;
//GVGoodsInfo.OptionsBehavior.Editable = false;
//ctrlDicGoods.Enabled = false;
if (frmButtonItem.ContainsKey("ChooseGoods")) { frmButtonItem["ChooseGoods"].Enabled = false; }
ctrlDicGoods.TextBoxValue = null;
//bindGoodsGrid();
////刷新商品列表
//foreach (GoodsInfoModel item in listGoodsInfoModel)
//{
// item.IsCheck = false;
//}
//bsGoodsInfo.DataSource = listGoodsInfoModel;
//GVGoodsInfo.RefreshData();
if (frmButtonItem.ContainsKey("Search")) { frmButtonItem["Search"].Enabled = true; }
if (frmButtonItem.ContainsKey("Add")) { frmButtonItem["Add"].Enabled = true; }
if (frmButtonItem.ContainsKey("EditAdd")) { frmButtonItem["EditAdd"].Enabled = true; }
if (frmButtonItem.ContainsKey("Edit")) { frmButtonItem["Edit"].Enabled = true; }
if (frmButtonItem.ContainsKey("Export")) { frmButtonItem["Export"].Enabled = true; }
if (frmButtonItem.ContainsKey("Close")) { frmButtonItem["Close"].Enabled = true; frmButtonItem["Close"].Caption = "关闭"; }
if (frmButtonItem.ContainsKey("Confirm")) { frmButtonItem["Confirm"].Enabled = true; }
if (frmButtonItem.ContainsKey("Receive")) { frmButtonItem["Receive"].Enabled = true; }
if (frmButtonItem.ContainsKey("CodeDisk")) { frmButtonItem["CodeDisk"].Enabled = true; }
if (frmButtonItem.ContainsKey("Clear")) { frmButtonItem["Clear"].Enabled = true; }
gVWareNotice.Appearance.Row.BackColor = Color.White;
gVWareNotice.Appearance.EvenRow.BackColor = Color.White;
//GVWareNotice.FocusedRowHandle = 0;//选中行变为第一行一般刷新GridView后调用
gVWareNotice.FocusedRowHandle = listWareNoticeModel.FindIndex(p => p.WAREHOUSING_ID == ID);
GVWareNotice_FocusedRowChanged(null, null);
listGoodsInfoModel.Clear();
ctrlGoods.TextBoxValue = string.Empty;
labGoods.Visible = true;
ctrlGoods.Visible = true;
}
/// <summary>
/// 保存
/// </summary>
public override void Save()
{
xtcNotice.Focus();
if (flag == 2)
{
Close();
return;
}
decimal totalNetWight = 0;
decimal totalWeight = 0;
decimal totalMoney = 0;
decimal totalVolume = 0;
/*验证*/
//if (string.IsNullOrEmpty(lueProvider.Text))
//{
// SystemCommon.ShowInfoMessageBox("请选择供应商");
// xtcNotice.SelectedTabPageIndex = 0;
// lueProvider.Focus();
// return;
//}
if (string.IsNullOrEmpty(lueStorageMode.Text))
{
SystemCommon.ShowInfoMessageBox("请选择入库类型");
// xtcNotice.SelectedTabPageIndex = 0;
lueStorageMode.Focus();
return;
}
if (string.IsNullOrEmpty(lueState.Text))
{
SystemCommon.ShowInfoMessageBox("请选择状态");
// xtcNotice.SelectedTabPageIndex = 0;
lueState.Focus();
return;
}
wareNoticeModel.RECORD_PERSON = userData.USER_ID;//通知单操作人
// wareNoticeModel.RECIPIENTS = dicRecipients.TextBoxFlag;//收货人
// wareNoticeModel.CLASS_GROUP = dicTeam.TextBoxFlag;//收货人
wareNoticeModel.STORAGE_ID = userData.STORAGE_ID;
if (wareNoticeModel.TOTAL_MONEY <= 0)
{
wareNoticeModel.TOTAL_MONEY = totalMoney;
}
if (wareNoticeModel.TOTAL_NET_WEIGH <= 0)
{
wareNoticeModel.TOTAL_NET_WEIGH = totalNetWight;
}
if (wareNoticeModel.TOTAL_ROUGH_WEIGHT <= 0)
{
wareNoticeModel.TOTAL_ROUGH_WEIGHT = totalWeight;
}
if (wareNoticeModel.TOTAL_VOLUME <= 0)
{
wareNoticeModel.TOTAL_VOLUME = totalVolume;
}
//if (isSKU)
//{
// //判断是否都选了商品规格 数量是否相同
// foreach (var item in listWareNoticeTabModel)
// {
// decimal i = 0;
// List<SKUTabModel> listSKUTab = listSKU.FindAll(p => p.GOODS_ID == item.GOODS_ID);
// foreach (var ite in listSKUTab)
// {
// i += ite.SKU_NUM;
// }
// if (item.AMOUNT != i)
// {
// SystemCommon.ShowInfoMessageBox("请为" + item.GOODS_NAME + "选择规格");
// xtcNotice.SelectedTabPageIndex = 1;
// return;
// }
// }
//}
if (flag == 0)
{ //增加
//验证时间
//if (deOrder.DateTime != System.DateTime.MinValue && deOrder.DateTime < System.DateTime.Now)
//{
// SystemCommon.ShowInfoMessageBox("下单时间不能小于当前时间");
// xtraTabControl1.SelectedTabPageIndex = 0;
// deOrder.Focus();
// return;
//}
//if (deExpectDate.DateTime != System.DateTime.MinValue && deExpectDate.DateTime < System.DateTime.Now)
//{
// SystemCommon.ShowInfoMessageBox("预计到货时间不能小于当前时间");
// xtraTabControl1.SelectedTabPageIndex = 0;
// deExpectDate.Focus();
// return;
//}
if (deEndDate.DateTime != System.DateTime.MinValue && deEndDate.DateTime < deExpectDate.DateTime)
{
SystemCommon.ShowInfoMessageBox("终止到货时间不能小于预计到货时间");
// xtcNotice.SelectedTabPageIndex = 0;
deEndDate.Focus();
return;
}
wareNoticeModel.ORDER_MODE = "0";
wareNoticeModel.TRAY_STATE = "0";
wareNoticeModel.DISPATCHING_STATE = "0";
string errText = string.Empty;
string wID = string.Empty;
try
{
errText = IBussFactory<BussWareNotice>.Instance().InsertOrUpdateWareNoticeAndTab(wareNoticeModel, listWareNoticeTabModel, 0, listSKU, ref wID);
wareNoticeModel.WAREHOUSING_ID = wID;
}
catch (Exception)
{
SystemCommon.ShowInfoMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们!");
}
if (string.IsNullOrEmpty(errText))//如果增加成功
{
SystemCommon.ShowInfoMessageBox("增加成功" + errText);
//GVWareNoticeTab.OptionsBehavior.Editable = false;
colAMOUNT.OptionsColumn.AllowEdit = false;
colUNIT.OptionsColumn.AllowEdit = false;
colPRODUCTION_DATE.OptionsColumn.AllowEdit = false;
if (frmButtonItem.ContainsKey("Save")) { frmButtonItem["Save"].Enabled = false; }
Refresh();
}
else
{
SystemCommon.ShowInfoMessageBox("增加失败" + errText);
}
}
else if (flag == 1)//修改
{
/*修改*/
string errText = string.Empty;
string wID = string.Empty;
try
{
errText = IBussFactory<BussWareNotice>.Instance().InsertOrUpdateWareNoticeAndTab(wareNoticeModel, listWareNoticeTabModel, 1, listSKU, ref wID);
}
catch (Exception)
{
SystemCommon.ShowInfoMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们!");
}
if (string.IsNullOrEmpty(errText))//如果修改成功
{
SystemCommon.ShowInfoMessageBox("修改成功");
//GVWareNoticeTab.OptionsBehavior.Editable = false;
colAMOUNT.OptionsColumn.AllowEdit = false;
colUNIT.OptionsColumn.AllowEdit = false;
colPRODUCTION_DATE.OptionsColumn.AllowEdit = false;
if (frmButtonItem.ContainsKey("Save")) { frmButtonItem["Save"].Enabled = false; }
Refresh();
}
else
{
SystemCommon.ShowInfoMessageBox("修改失败" + errText);
}
}
}
/// <summary>
/// 删除按钮,删除一条入库商品明细
/// </summary>
public override void Del()
{
if (GVWareNoticeTab.SelectedRowsCount > 0)
{
if (DialogResult.OK == SystemCommon.ShowMessageBoxResult("确定删除物料"))
{
WareNoticeTabModel model = new WareNoticeTabModel();
model = GVWareNoticeTab.GetFocusedRow() as WareNoticeTabModel;
IBussFactory<BussWareNotice>.Instance().DeleteWareNoticeTab(model);
listWareNoticeTabModel.Remove(model);
GVWareNoticeTab.RefreshData();
}
}
else
{
SystemCommon.ShowInfoMessageBox("您未选择物料明细");
}
}
/// <summary>
/// 清空按钮
/// </summary>
public override void Clear()
{
wareNoticeModel = new WareNoticeModel();
bsWareNoticeEdit.DataSource = wareNoticeModel;
listGoodsInfoModel.Clear();
ctrlGoods.TextBoxValue = string.Empty;
}
/// <summary>
/// 关闭入库通知单
/// </summary>
public void Close()
{
if (panelControl2.Visible)
{
if (rgState.SelectedIndex < 0)
{
SystemCommon.ShowInfoMessageBox("请选择关闭类型");
rgState.Focus();
return;
}
if (string.IsNullOrEmpty(dicClosePerson.TextBoxValue))
{
SystemCommon.ShowInfoMessageBox("请选择关闭人");
dicClosePerson.Focus();
return;
}
wareNoticeModel.CLOSE_PERSON = dicClosePerson.TextBoxFlag;
wareNoticeModel.CLOSE_DATE = System.DateTime.Now;
string errText = string.Empty;
//关闭后放到备份表
errText = string.Empty;
try
{
errText = IBussFactory<BussWareNotice>.Instance().MoveWareNoticeAndTabIntoBack(wareNoticeModel);
}
catch (Exception)
{
SystemCommon.ShowInfoMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们!");
return;
}
if (!string.IsNullOrEmpty(errText))
{
SystemCommon.ShowInfoMessageBox("关闭失败" + errText);
return;
}
frmButtonItem["Close"].Caption = "关闭";
SystemCommon.ShowInfoMessageBox("关闭成功" + errText);
Refresh();//刷新
}
else
{
if (!string.IsNullOrEmpty(wareNoticeModel.WAREHOUSING_ID))
{
xtcNotice.SelectedTabPageIndex = 0;
panelControl2.Visible = true;//关闭控件可见
panelControl1.Visible = false;//编辑控件不可见
flag = 2;//标识关闭
if (frmButtonItem.ContainsKey("Search")) { frmButtonItem["Search"].Enabled = false; }
if (frmButtonItem.ContainsKey("Add")) { frmButtonItem["Add"].Enabled = false; }
if (frmButtonItem.ContainsKey("EditAdd")) { frmButtonItem["EditAdd"].Enabled = false; }
if (frmButtonItem.ContainsKey("Edit")) { frmButtonItem["Edit"].Enabled = false; }
if (frmButtonItem.ContainsKey("Export")) { frmButtonItem["Export"].Enabled = false; }
if (frmButtonItem.ContainsKey("Confirm")) { frmButtonItem["Confirm"].Enabled = false; }
if (frmButtonItem.ContainsKey("Receive")) { frmButtonItem["Receive"].Enabled = false; }
if (frmButtonItem.ContainsKey("CodeDisk")) { frmButtonItem["CodeDisk"].Enabled = false; }
if (frmButtonItem.ContainsKey("Clear")) { frmButtonItem["Clear"].Enabled = false; }
frmButtonItem["Close"].Caption = "关闭审核";
wareNoticeModel.STATE = "6";//已作废
rgState.EditValue = "6";
wareNoticeModel.CLOSE_PERSON = userData.USER_ID;
dicClosePerson.TextBoxFlag = userData.USER_ID;
dicClosePerson.TextBoxValue = userData.NAME;
}
else
{
SystemCommon.ShowInfoMessageBox("请选择一条记录");
}
}
}
#region
/// <summary>
/// 批量审核
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
public void Confirm()
{
xtcNotice.Focus();
List<WareNoticeModel> listWareNotice = new List<WareNoticeModel>();//将被审核的WareNotice集合
foreach (WareNoticeModel item in listWareNoticeModel)
{
//如果被选中且状态为未审核,则将其状态改为在途
if (item.IsCheck && item.STATE == "0")
{
item.STATE = "1";
// item.CONFIRM_PERSON = dicConfirm.TextBoxFlag;
item.CONFIRM_DATE = System.DateTime.Now;
listWareNotice.Add(item);
}
}
}
public void Print()
{
if (gVWareNotice.RowCount == 0)
{
return;
}
WareNoticeModel order = gVWareNotice.GetFocusedRow() as WareNoticeModel;
FrmPrint prnt = new FrmPrint(order);
prnt.ShowDialog();
}
#endregion
/// <summary>
/// 双击商品明细编辑
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void GVWareNoticeTab_DoubleClick(object sender, EventArgs e)
{
if (flag == -1)
{
Edit();
}
//else if (isSKU)//判断是否开启了SKU
//{
// WareNoticeTabModel tab = new WareNoticeTabModel();
// tab = GVWareNoticeTab.GetFocusedRow() as WareNoticeTabModel;
// FrmSKU frmSKU = new FrmSKU(tab.GOODS_ID, tab.GOODS_NAME, tab.WAREHOUSING_ID, tab.AMOUNT, listSKU.FindAll(p => p.GOODS_ID == tab.GOODS_ID));
// if (frmSKU.ShowDialog() == DialogResult.Yes)
// {
// listSKU.RemoveAll(p => p.GOODS_ID == tab.GOODS_ID);
// listSKU.AddRange(frmSKU.list_SKUTab);
// }
//}
}
/// <summary>
/// 双击入库通知单
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void GVWareNotice_DoubleClick(object sender, EventArgs e)
{
xtcNotice.SelectedTabPageIndex = 1;
}
/// <summary>
/// 选择商品
/// </summary>
public override void ChooseGoods()
{
ctrlDicGoods.t_dictonary_ButtonClick(null, null);
}
/// <summary>
/// 备注
/// </summary>
public void Remark()
{
//FrmSelectRemark frmSelectImport = new FrmSelectRemark();
//frmSelectImport.remarkType = "入库管理";
//frmSelectImport.ShowDialog();
//txtRemark.Text = frmSelectImport.baseRemarkDictionaryModel.CONTENT;
//txtRemark.ForeColor = System.Drawing.ColorTranslator.FromHtml(frmSelectImport.baseRemarkDictionaryModel.COLOR_ID);
}
#endregion
#region CheckBox全选的实现:3
private void GVWareNotice_Click(object sender, EventArgs e)
{
try
{
if (DevControlHelper.ClickGridCheckBox(this.gVWareNotice, "IsCheck", m_status))
{
m_status = !m_status;
}
string wareId = gVWareNotice.GetFocusedRowCellValue(colWAREHOUSING_ID).ToString();
GetDetailDoc(wareId);
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
#region
/// <summary>
/// 查询明细
/// </summary>
/// <param name="docId"></param>
private void GetDetailDoc(string docId)
{
try
{
List<WareNoticeTabModel> list_wn_TabModel = IBussFactory<BussWareNoticeTab>.Instance().GetWareNoticeTabByList(docId);
if (list_wn_TabModel != null)
bdsDetail.DataSource = list_wn_TabModel;
gdvDetail.RefreshData();
}
catch (Exception ex)
{
SystemCommon.ShowInfoMessageBox("网络连接错误!");
return;
}
}
#endregion
private void GVWareNotice_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;
}
}
private void GVWareNotice_DataSourceChanged(object sender, EventArgs e)
{
GridColumn column = this.gVWareNotice.Columns.ColumnByFieldName("IsCheck");
if (column != null)
{
column.Width = 20;
column.OptionsColumn.ShowCaption = m_status;
column.ColumnEdit = new RepositoryItemCheckEdit();
}
}
#endregion
#region
/// <summary>
/// 自定义列显示事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void GVWareNotice_CustomColumnDisplayText(object sender, DevExpress.XtraGrid.Views.Base.CustomColumnDisplayTextEventArgs e)
{
if (e.Column.FieldName == "ORDER_MODE")
{
switch (e.Value.ToString().Trim())
{
case "0":
e.DisplayText = "录入";
break;
case "1":
e.DisplayText = "导入";
break;
default:
e.DisplayText = "其它";
break;
}
}
if (e.Column.FieldName == "STORAGE_MODE")
{
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;
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;
case "6":
e.DisplayText = "已作废";
break;
default:
e.DisplayText = "";
break;
}
}
if (e.Column.FieldName == "TRAY_STATE")
{
switch (e.Value.ToString().Trim())
{
case "0":
e.DisplayText = "未码盘";
break;
case "1":
e.DisplayText = "已码盘";
break;
default:
e.DisplayText = "";
break;
}
}
}
#endregion
/// <summary>
/// 入库通知单改变,显示属于它的入库商品明细、编辑区域显示它的信息 根据状态,判断改行是否可选中;是否可码盘;是否可到货录入;是否可编辑
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void GVWareNotice_FocusedRowChanged(object sender, DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs e)
{
if (listWareNoticeModel.Count == 0)
{
return;
}
if (flag == -1)
{
wareNoticeModel = new WareNoticeModel();
wareNoticeModel = gVWareNotice.GetFocusedRow() as WareNoticeModel;
bsWareNoticeEdit.DataSource = wareNoticeModel;
//if (string.IsNullOrEmpty(wareNoticeModel.CONFIRM_PERSON))
//{//审核人
// wareNoticeModel.CONFIRM_PERSON = userData.USER_ID;
// //dicConfirm.TextBoxFlag = userData.USER_ID;
// //dicConfirm.TextBoxValue = userData.NAME;
//}
//else {
// //dicConfirm.TextBoxFlag = wareNoticeModel.CONFIRM_PERSON;
// //dicConfirm.TextBoxValue = wareNoticeModel.CONFIRM_PERSON_NAME;
//}
dicOperator.TextBoxFlag = wareNoticeModel.RECORD_PERSON;
dicOperator.TextBoxValue = wareNoticeModel.RECORD_PERSON_NAME;
dicClosePerson.TextBoxFlag = wareNoticeModel.CLOSE_PERSON;
dicClosePerson.TextBoxValue = wareNoticeModel.CLOSE_PERSON_NAME;
// dicRecipients.TextBoxFlag = wareNoticeModel.RECIPIENTS;
// dicRecipients.TextBoxValue = wareNoticeModel.RECIPIENTS_NAME;
//dicTeam.TextBoxFlag = wareNoticeModel.CLASS_GROUP;
//dicTeam.TextBoxValue = wareNoticeModel.CLASS_GROUP;
// bindWareNoticeTab(wareNoticeModel);
if (Convert.ToDecimal(wareNoticeModel.STATE) > 1)//已到货
{
if (frmButtonItem.ContainsKey("Receive")) { frmButtonItem["Receive"].Enabled = false; }
}
else
{
if (frmButtonItem.ContainsKey("Receive")) { frmButtonItem["Receive"].Enabled = true; }
}
if (wareNoticeModel.TRAY_STATE == "1")//已码盘
{
if (frmButtonItem.ContainsKey("CodeDisk")) { frmButtonItem["CodeDisk"].Enabled = false; }
}
else
{
if (frmButtonItem.ContainsKey("CodeDisk")) { frmButtonItem["CodeDisk"].Enabled = true; }
}
//if (wareNoticeModel.STATE == "0")//未审核
//{
// gVWareNotice.OptionsBehavior.Editable = true;//整个
// if (frmButtonItem.ContainsKey("CodeDisk")) { frmButtonItem["CodeDisk"].Enabled = false; }
// if (frmButtonItem.ContainsKey("Receive")) { frmButtonItem["Receive"].Enabled = false; }
// if (frmButtonItem.ContainsKey("Edit")) { frmButtonItem["Edit"].Enabled = true; }
//}
//else
//{
// gVWareNotice.OptionsBehavior.Editable = false;//整个
// if (frmButtonItem.ContainsKey("Edit")) { frmButtonItem["Edit"].Enabled = false; }
//}
//点到货数量,进行到货录入
if (gVWareNotice.FocusedColumn == gVWareNotice.Columns[6])
{
if (frmButtonItem.ContainsKey("Receive") && frmButtonItem["Receive"].Enabled)
{
Receive();
}
}
}
//this.gridViewAcceptanceOperate.Columns["ACCE_NUM"].OptionsColumn.AllowEdit = false;//某列
}
/// <summary>
/// 改单位下拉框数据源
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void issueBinGridView_CustomRowCellEditForEditing(object sender, DevExpress.XtraGrid.Views.Grid.CustomRowCellEditEventArgs e)
{
if (e.RowHandle < 0 || flag == -1)
{
return;
}
if (e.Column.Name == "colUNIT")
{
WareNoticeTabModel wareNoticeTab = new WareNoticeTabModel();
wareNoticeTab = GVWareNoticeTab.GetFocusedRow() as WareNoticeTabModel;
if (wareNoticeTab != null && wareNoticeTab.GOODS_ID != null)
{
DataTable strResult = new DataTable();
try
{
strResult = IBussFactory<BussGoods>.Instance().GetGoodsUnit(wareNoticeTab.GOODS_ID);
}
catch (Exception)
{
//SystemCommon.ShowInfoMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们!");
}
if (strResult != null)
lueUnits.DataSource = strResult;
//Newtonsoft.Json.JsonConvert.DeserializeObject<DataTable>();
}
e.RepositoryItem = lueUnits;//当前单元格绑定控件
}
}
//private void GVWareNoticeTab_FocusedColumnChanged(object sender, DevExpress.XtraGrid.Views.Base.FocusedColumnChangedEventArgs e)
//{
// ChangeUnit();
//}
//private void GVWareNoticeTab_FocusedRowChanged(object sender, DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs e)
//{
// ChangeUnit();
//}
//private void ChangeUnit()
//{
// string strResult = string.Empty;
// try
// {
// strResult = WebLockConfig.Instance.Common.GetCustomCtrlData("t_sys_dictionary_tab", "VC_CHAR_VALUE", "VC_DICTIONARY_NAME", " VC_DICTIONARY_TYPE = 'vc_uom' and c_flag = '1'");
// }
// catch (Exception)
// {
// SystemCommon.ShowInfoMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们!");
// }
// lueUnit.Properties.DataSource = Newtonsoft.Json.JsonConvert.DeserializeObject<DataTable>(strResult);
//}
private string unit = string.Empty;//记录原单位
/// <summary>
/// 采购商品明细 数量改变 改变总金额总体积总重量;价格改变;单位改变
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void GVWareNoticeTab_CellValueChanged(object sender, DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs e)
{
if (e.RowHandle < 0)
{
return;
}
WareNoticeTabModel model = new WareNoticeTabModel();
model = GVWareNoticeTab.GetFocusedRow() as WareNoticeTabModel;
//WareNoticeTabModel model = listWareNoticeTabModel[e.RowHandle];
if (model != null)
{
decimal amount = Convert.ToDecimal(GVWareNoticeTab.GetFocusedRowCellValue("AMOUNT"));
if (e.Column.Name == "colAMOUNT")
{
//根据数量计算总金额、体积、重量
//GoodsInfoModel gm = new GoodsInfoModel();
//string errText = string.Empty;
//// 找到该商品
//string strResult = string.Empty;
//try
//{
// strResult = WebLockConfig.Instance.Goods.GetGoodsList(model.GOODS_ID, "", "", "");
//}
//catch (Exception)
//{
// SystemCommon.ShowInfoMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们!");
//}
//List<GoodsInfoModel> listGoodsInfoModel = Newtonsoft.Json.JsonConvert.DeserializeObject<List<GoodsInfoModel>>(strResult);
//if (listGoodsInfoModel.Count > 0)
//{
//gm = listGoodsInfoModel[0];
model.TOTAL_MONEY = model.PRICE * amount;// Convert.ToDecimal(GVWareNoticeTab.GetFocusedRowCellValue("PRICE")) * amount;
model.TOTAL_NET_WEIGH = model.NET_WEIGH * amount;
model.TOTAL_ROUGH_WEIGHT = model.ROUGH_WEIGHT * amount;
model.TOTAL_VOLUME = model.GVOLUME * amount;
//}
//else
//{
// SystemCommon.ShowInfoMessageBox("未找到商品");
//}
}
//if (e.Column.Name == "colPRICE")
//{
// model.TOTAL_MONEY = Convert.ToDecimal(GVWareNoticeTab.GetFocusedRowCellValue("PRICE")) * Convert.ToDecimal(GVWareNoticeTab.GetFocusedRowCellValue("AMOUNT"));
//}
if (e.Column.Name == "colUNIT")
{
DataTable dt = lueUnits.DataSource as DataTable;
decimal oldUnit = 0;
decimal newUnit = 0;
foreach (DataRow row in dt.Rows)
{
if (row[0].ToString() == unit)
{
oldUnit = decimal.Parse(row[2].ToString());
}
if (row[0].ToString() == GVWareNoticeTab.GetFocusedRowCellValue("UNIT").ToString())
{
newUnit = decimal.Parse(row[2].ToString());
}
}
if (model.AMOUNT != 0 && oldUnit != 0)
{
model.AMOUNT = model.AMOUNT / oldUnit * newUnit;
}
if (model.ARRAMOUNT != 0 && oldUnit != 0)
{
model.ARRAMOUNT = model.ARRAMOUNT / oldUnit * newUnit;
}
#region
//if (model.PRICE != 0)
//{
// model.PRICE = model.PRICE / oldUnit * newUnit;
//}
//if (model.NET_WEIGH != 0)
//{
// model.NET_WEIGH = model.NET_WEIGH / oldUnit * newUnit;
//}
//if (model.ROUGH_WEIGHT != 0)
//{
// model.ROUGH_WEIGHT = model.ROUGH_WEIGHT / oldUnit * newUnit;
//}
#endregion
}
}
}
private void GVWareNoticeTab_CellValueChanging(object sender, DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs e)
{
if (GVWareNoticeTab.GetFocusedRowCellValue("UNIT") != null)
{
unit = GVWareNoticeTab.GetFocusedRowCellValue("UNIT").ToString();
}
}
//private void GVWareNoticeTab_RowCellClick(object sender, DevExpress.XtraGrid.Views.Grid.RowCellClickEventArgs e)
//{
// if (e.Column.Name == "colGOODS_NAME")
// {
// WareNoticeTabModel model = GVWareNoticeTab.GetFocusedRow() as WareNoticeTabModel;
// if (model != null && !string.IsNullOrEmpty(model.GOODS_ID))
// {
// FrmGoodsInfoDet.IFlag = 2;
// FrmGoodsInfoDet.StrGoodsID = model.GOODS_ID;
// LoadForm load = new LoadForm();
// DevExpress.XtraSplashScreen.SplashScreenManager.ShowForm(load, load.GetType(), false, true, false, 0);
// DevExpress.XtraSplashScreen.SplashScreenManager.Default.SetWaitFormDescription("正在读取商品信息....");
// FrmGoodsInfoDet.GetInstance().Show();
// }
// }
//}
List<GoodsInfoModel> listGoodsInfoModel = new List<GoodsInfoModel>();
private void ctrlGoods_Button_Click(object sender, EventArgs e)
{
if (ctrlGoods.SelectTable.Rows.Count == 0)
{
return;
}
//商品集合
listGoodsInfoModel = ConvertHelper<GoodsInfoModel>.ConvertToList(ctrlGoods.SelectTable);
}
private void repositoryItemHyperLinkEdit1_Click(object sender, EventArgs e)
{
WareNoticeTabModel model = GVWareNoticeTab.GetFocusedRow() as WareNoticeTabModel;
if (model != null && !string.IsNullOrEmpty(model.GOODS_ID))
{
FrmGoodsInfoDet.IFlag = 2;
FrmGoodsInfoDet.StrGoodsID = model.GOODS_ID;
LoadForm load = new LoadForm();
DevExpress.XtraSplashScreen.SplashScreenManager.ShowForm(load, load.GetType(), false, true, false, 0);
DevExpress.XtraSplashScreen.SplashScreenManager.Default.SetWaitFormDescription("正在读取商品信息....");
FrmGoodsInfoDet.GetInstance().Show();
}
}
private void lueStorageMode_EditValueChanged(object sender, EventArgs e)
{
}
private void xtcNotice_Click(object sender, EventArgs e)
{
}
private void ctl_ck_Button_Click(object sender, EventArgs e)
{
if (wareNoticeModel != null)
{
wareNoticeModel.STORAGE_ID = ctl_ck.TextBoxFlag;
wareNoticeModel.STORAGE_NAME = ctl_ck.TextBoxValue;
// wareNoticeModel.STORAGE_AREA_ID = "";
}
if (listWareNoticeTabModel.Count > 0)
{
foreach (WareNoticeTabModel ware in listWareNoticeTabModel)
{
ware.STORAGE_ID = ctl_ck.TextBoxFlag;
ware.STORAGE_NAME = ctl_ck.TextBoxValue;
ware.STORAGE_AREA_ID = "";
}
GVWareNoticeTab.RefreshData();
}
}
}
}