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
{
///
/// 窗体:入库通知单
///
public partial class FrmWareNotice : FormBase
{
#region 变量
public static FrmWareNotice frmWareNotice;
private WareNoticeModel wareNoticeModel = new WareNoticeModel();//当前选择的入库通知单
private List listWareNoticeModel = new List();//入库通知单集合
private List listWareNoticeTabModel = new List();//入库商品明细集合
private List listSKU = new List();//规格集合
//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 初始化
///
/// 无参构造
///
public FrmWareNotice()
{
InitializeComponent();
//lueID.LoadData();//编号
//dicClosePerson.LoadData();//关闭人
//dicConfirm.LoadData();//审核人
lueProvider.LoadData();//供应商
lueState.LoadData();//状态
//dicRecipients.LoadData();//收货人
lueStorageMode.LoadData();//入库类型
//dicOperator.LoadData();//操作人
}
///
/// 本窗体加载的时候
///
///
///
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.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.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;
//}
}
///
/// 得到与登录用户同部门的所有用户
///
public DataTable getSameDepUserList()
{
string errText = string.Empty;
DataTable strResult = new DataTable();
try
{
strResult = IBussFactory.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 绑定数据
///
/// 整体绑定数据
///
private void bindGrid(WareNoticeModel model)
{
string errText = string.Empty;
new Thread(delegate ()
{
try
{
listWareNoticeModel = IBussFactory.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();
}
///
/// 绑定采购商品明细
///
///
public void bindWareNoticeTab(WareNoticeTabModel WareNoticeModel)
{
string errText = string.Empty;
listWareNoticeTabModel = new List();
string strWareNoticeTabList = string.Empty;
try
{
listWareNoticeTabModel = IBussFactory.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);
}
}
///
/// 条件查询
///
///
///
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;
}
}
///
/// Tab页改,改通用查询Model
///
///
///
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;
}
}
}
}
///
/// 通用查询
///
///
public override void LoadListData(DataTable table)
{
if (xtcNotice.SelectedTabPageIndex == 0)
{
listWareNoticeModel = ConvertHelper.ConvertToList(table);
bsWareNotice.DataSource = listWareNoticeModel;
gVWareNotice.RefreshData();
}
else
{
listWareNoticeTabModel = ConvertHelper.ConvertToList(table);
bsWareNoticeTab.DataSource = listWareNoticeTabModel;
GVWareNoticeTab.RefreshData();
}
}
///
/// 供应商改变 改日期 可选商品
///
///
///
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.Instance().getProviderDS(temp);
}
catch (Exception)
{
SystemCommon.ShowInfoMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们!");
}
if (strResult != null)
{
List templist = ConvertHelper.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; }
}
}
///
/// 预计日期改变 改终止日期、实际日期
///
///
///
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 商品选择
///
/// 商品选择
///
///
///
private void ctrlDicGoods_Button_Click(object sender, EventArgs e)
{
if (ctrlDicGoods.SelectTable.Rows.Count == 0)
{
//SystemCommon.ShowInfoMessageBox("您未选择商品!");
return;
}
//商品集合
listGoodsInfoModel = ConvertHelper.ConvertToList(ctrlDicGoods.SelectTable);
/*得到当前登录角色所在仓库、库区*/
string errText = string.Empty;
// List strResult = new List();
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
///
/// 码盘
///
///
///
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("请选择要码盘的记录");
}
}
///
/// 收货
///
///
///
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("请选择要收货的记录");
}
}
///
/// 增加按钮
///
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; }
}
///
/// 以当前增加
///
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; }
}
///
/// 编辑按钮
///
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>(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;
}
///
/// 刷新按钮
///
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;
}
///
/// 保存
///
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 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.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.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);
}
}
}
///
/// 删除按钮,删除一条入库商品明细
///
public override void Del()
{
if (GVWareNoticeTab.SelectedRowsCount > 0)
{
if (DialogResult.OK == SystemCommon.ShowMessageBoxResult("确定删除物料"))
{
WareNoticeTabModel model = new WareNoticeTabModel();
model = GVWareNoticeTab.GetFocusedRow() as WareNoticeTabModel;
IBussFactory.Instance().DeleteWareNoticeTab(model);
listWareNoticeTabModel.Remove(model);
GVWareNoticeTab.RefreshData();
}
}
else
{
SystemCommon.ShowInfoMessageBox("您未选择物料明细");
}
}
///
/// 清空按钮
///
public override void Clear()
{
wareNoticeModel = new WareNoticeModel();
bsWareNoticeEdit.DataSource = wareNoticeModel;
listGoodsInfoModel.Clear();
ctrlGoods.TextBoxValue = string.Empty;
}
///
/// 关闭入库通知单
///
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.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 批量审核 取消审核
///
/// 批量审核
///
///
///
public void Confirm()
{
xtcNotice.Focus();
List listWareNotice = new List();//将被审核的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
///
/// 双击商品明细编辑
///
///
///
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);
// }
//}
}
///
/// 双击入库通知单
///
///
///
private void GVWareNotice_DoubleClick(object sender, EventArgs e)
{
xtcNotice.SelectedTabPageIndex = 1;
}
///
/// 选择商品
///
public override void ChooseGoods()
{
ctrlDicGoods.t_dictonary_ButtonClick(null, null);
}
///
/// 备注
///
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 查询明细
///
/// 查询明细
///
///
private void GetDetailDoc(string docId)
{
try
{
List list_wn_TabModel = IBussFactory.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 自定义列显示事件
///
/// 自定义列显示事件
///
///
///
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
///
/// 入库通知单改变,显示属于它的入库商品明细、编辑区域显示它的信息 根据状态,判断改行是否可选中;是否可码盘;是否可到货录入;是否可编辑
///
///
///
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;//某列
}
///
/// 改单位下拉框数据源
///
///
///
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.Instance().GetGoodsUnit(wareNoticeTab.GOODS_ID);
}
catch (Exception)
{
//SystemCommon.ShowInfoMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们!");
}
if (strResult != null)
lueUnits.DataSource = strResult;
//Newtonsoft.Json.JsonConvert.DeserializeObject();
}
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(strResult);
//}
private string unit = string.Empty;//记录原单位
///
/// 采购商品明细 数量改变 改变总金额总体积总重量;价格改变;单位改变
///
///
///
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 listGoodsInfoModel = Newtonsoft.Json.JsonConvert.DeserializeObject>(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 listGoodsInfoModel = new List();
private void ctrlGoods_Button_Click(object sender, EventArgs e)
{
if (ctrlGoods.SelectTable.Rows.Count == 0)
{
return;
}
//商品集合
listGoodsInfoModel = ConvertHelper.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();
}
}
}
}