BaoKai_202508_Wms_Jingwang_.../WMS.FrmStock/FrmProviderREP.cs
2025-08-24 21:52:42 +08:00

1663 lines
62 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.Stock;
using WMS.Common;
using WMS.Model.Base;
using DevExpress.XtraEditors.Repository;
using DevExpress.XtraReports.UI;
using WMS.FrmBaseData;
using WMS.Ctrl;
using System.Threading;
using WMS.Model.SystemManage;
using WMS.Model.RK;
using WMS.Business;
using WMS.Business.Common;
using WMS.Business.Base;
using WMS.Business.Strategy;
using WMS.Business.SystemManage;
using WMS.Business.Stock;
namespace WMS.FrmStock
{
public partial class FrmProviderREP : FormBase
{
#region
public ProvideRepModel proModel;
private List<SKUTabModel> listSKU = new List<SKUTabModel>();//规格集合
private bool isSKU = false;//默认未开启SKU
/// <summary>
/// 供应商明细补货Model
/// </summary>
public ProvideRepInfoModel infoInsertModel;
/// <summary>
/// 库存表集合
/// </summary>
public List<MIStockModel> stockList;
/// <summary>
/// 库存表Model
/// </summary>
public MIStockModel stockModel;
/// <summary>
/// 绑定供应商补货上半屏主表数据
/// </summary>
List<ProvideRepModel> bindList;
/// <summary>
/// 供应商补货Model
/// </summary>
ProvideRepModel pmodel;
/// <summary>
/// 绑定供应商补货下半屏明细数据
/// </summary>
List<ProvideRepInfoModel> bindInfoList;
/// <summary>
/// 数据源Copy
/// </summary>
List<ProvideRepInfoModel> CopyList = new List<ProvideRepInfoModel>();
/// <summary>
/// 明细增加
/// </summary>
List<ProvideRepInfoModel> AddList = new List<ProvideRepInfoModel>();
/// <summary>
/// 明细修改
/// </summary>
List<ProvideRepInfoModel> UpList = new List<ProvideRepInfoModel>();
/// <summary>
/// 明细删除
/// </summary>
List<ProvideRepInfoModel> DelList = new List<ProvideRepInfoModel>();
/// <summary>
/// 供应商补货明细Model
/// </summary>
ProvideRepInfoModel pinfomodel;
/// <summary>
/// 同时删除主表 明细表集合
/// </summary>
List<string> strlist = new List<string>();
/// <summary>
/// 全局计量
/// </summary>
int i = 0;
/// <summary>
/// 全局库存量
/// </summary>
decimal sumTotalCount = 0;
/// <summary>
/// 单个累加
/// </summary>
decimal sumCountAdd = 0;
/// <summary>
/// 获得自动生成的验收单号流水号
/// </summary>
string pro_ID = "";
int flag = 3;
bool imp = true;
/// <summary>
/// 下拉单位选择
/// </summary>
private DevExpress.XtraEditors.Repository.RepositoryItemLookUpEdit lueUnits = new RepositoryItemLookUpEdit();
#endregion
#region
/// <summary>
/// 无参构造
/// </summary>
public FrmProviderREP()
{
InitializeComponent();
}
#endregion
#region
/// <summary>
/// 窗体加载
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
public void FrmProviderREP_Load(object sender, EventArgs e)
{
imp = true;
//检测是否开启SKU
//通用查询
FrmSelectModle = new ProvideRepModel();
xtraTabControl1.SelectedTabPageIndex = 0;
//xtraTab2.PageEnabled = false;
#region
BindProvideRepData();
if (bindList.Count > 0)
{
bgsProvideTab.DataSource = BindProvideRepInfoData(bindList[0].PROREP_ID);
}
#endregion
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'", "");
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";
lkpUnit.NullText = "";
lkpUnit.Columns.Add(new DevExpress.XtraEditors.Controls.LookUpColumnInfo("VC_DICTIONARY_NAME", "单位"));
lkpUnit.ValueMember = "VC_CHAR_VALUE";
lkpUnit.DisplayMember = "VC_DICTIONARY_NAME";
lkpUnit.DataSource = strResult;
}
}
catch (Exception)
{
SystemCommon.ShowInfoMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们!");
}
//供应商
lkpProvider.LoadData();
this.dicCreate.TextBoxFlag = userData.USER_ID;
this.dicCreate.TextBoxValue = userData.NAME;
this.dicConfirm.TextBoxFlag = userData.USER_ID;
this.dicConfirm.TextBoxValue = userData.NAME;
//this.dicReview.TextBoxFlag = userData.USER_ID;
//this.dicReview.TextBoxValue = userData.NAME;
//补货原因
this.lkpResion.LoadData();
#region
RoleStorageModel roles = new RoleStorageModel();
roles.ROLE_ID = userData.ROLE_ID;
List<RoleStorageModel> lists = IBussFactory<BussRoleStorage>.Instance().GetList(roles);
if(lists!=null)
{
lkpStorage.Properties.DataSource = lists;
lkpStorage.Properties.DisplayMember = "STORAGE_NAME";
lkpStorage.Properties.ValueMember = "STORAGE_ID";
if (lists.Count != 0)
{
lkpStorage.EditValue = lists[0].STORAGE_ID;
}
}
//所属仓库
//lkpStorage.LoadData();
#endregion
//只加载 库存表中有的商品数据
this.ctrGoods.selSql = @"select INVENTORY_ITEM_ID, goods_name from T_BASE_GOODS t where t.INVENTORY_ITEM_ID in (select INVENTORY_ITEM_ID from T_MI_STOCK)";
}
#endregion
#region
#region
/// <summary>
/// 增加按钮
/// </summary>
public void Add()
{
flag = 0;
// xtraTab2.PageEnabled = true;
//新增修改页面
xtraTabControl1.SelectedTabPageIndex = 1;
this.ctrGoods.Enabled = true;
this.dicCreate.Enabled = true;
this.daCreateDate.Enabled = true;
this.lkpProvider.Enabled = true;
this.lkpStorage.Enabled = true;
this.lkpResion.Enabled = true;
this.dicConfirm.Enabled = false;
this.daConfirmDate.Enabled = false;
// this.dicReview.Enabled = false;
//this.daReviewDate.Enabled = false;
bgsProvide.DataSource = new ProvideRepModel();
bgsProvideInfo.DataSource = null;
pro_ID = IBussFactory<BussProRepStrategy>.Instance().GetNextValNum();
proModel = new ProvideRepModel();
this.txtID.Text = pro_ID;
proModel.PROREP_STATUS = "0";
proModel.PROREP_ID = this.txtID.Text.Trim();
this.dicCreate.TextBoxFlag = userData.USER_ID;
this.dicCreate.TextBoxValue = userData.NAME;
proModel.CREATE_MAN = this.dicCreate.TextBoxFlag;
proModel.CREATE_MAN_NAME = this.dicCreate.TextBoxValue;
proModel.CREATE_DATE = DateTime.Now;
proModel.CONFIRM_DATE = DateTime.Now;
proModel.STORAGE_ID = userData.STORAGE_ID;
// proModel.REVIEW_DATE = DateTime.Now;
proModel.EXPECT_DATE = DateTime.Now.AddDays(7);
bgsProvide.DataSource = proModel;
this.label1.Focus();
if (frmButtonItem.ContainsKey("Save")) { frmButtonItem["Save"].Enabled = true; }
if (frmButtonItem.ContainsKey("Edit")) { frmButtonItem["Edit"].Enabled = false; }
if (frmButtonItem.ContainsKey("Del")) { frmButtonItem["Del"].Enabled = false; }
this.gridViewProvideInfo.OptionsBehavior.Editable = true;
listSKU = new List<SKUTabModel>();
}
#endregion
/// <summary>
/// 确认人确认单据状态按钮
/// </summary>
public void EnSure()
{
}
/// <summary>
/// 审核人审核单据状态按钮
/// </summary>
public void Review()
{
if (proModel.PROREP_STATUS == null)
{
return;
}
if (proModel.PROREP_STATUS != "1")
{
SystemCommon.ShowInfoMessageBox("该单据不需要审核!");
return;
}
proModel.PROREP_STATUS = "2";
bgsProvide.DataSource = proModel;
UpdateProvideRep();
splitContainerControl1.Panel1.Enabled = false;
this.gridViewProvideInfo.OptionsBehavior.Editable = false;
}
/// <summary>
/// 提交
/// </summary>
public void Commit()
{
if (proModel.PROREP_STATUS == null)
{
return;
}
if (proModel.PROREP_STATUS != "2")
{
SystemCommon.ShowInfoMessageBox("该单据不需要提交!");
return;
}
proModel.PROREP_STATUS = "3";
bgsProvide.DataSource = proModel;
}
#region
/// <summary>
/// 编辑按钮
/// </summary>
public void Edit()
{
gridViewProvideMain_DoubleClick(null, null);
}
#endregion
#region
/// <summary>
/// 删除按钮
/// </summary>
public void Del()
{
#region
if (this.gridViewProvideInfo.RowCount > 0 && frmButtonItem["Confirm"].Enabled == true)
{
bindInfoList.RemoveAt(this.gridViewProvideInfo.FocusedRowHandle);
return;
}
#endregion
this.xtraTab1.Focus();
if (DialogResult.OK == SystemCommon.ShowMessageBoxResult("删除选中单据将同时删除改单据下的所有明细数据,是否要删除?"))
{
DeleteProvideRep();
}
}
#endregion
#region
/// <summary>
/// 查询按钮
/// </summary>
public void Search()
{
LoadForm load = new LoadForm();
DevExpress.XtraSplashScreen.SplashScreenManager.ShowForm(load, load.GetType(), false, true, false, 30);
DevExpress.XtraSplashScreen.SplashScreenManager.Default.SetWaitFormDescription("数据查询中,请等待...");
BindProvideRepData();
DevExpress.XtraSplashScreen.SplashScreenManager.CloseForm();
}
#endregion
#region
/// <summary>
/// 重置按钮
/// </summary>
public void Refresh()
{
imp = true;
BindProvideRepData();
if (bindList.Count != 0)
{
bgsProvideTab.DataSource = BindProvideRepInfoData(bindList[0].PROREP_ID);
}
if (frmButtonItem.ContainsKey("Confirm")) { frmButtonItem["Confirm"].Enabled = false; }
if (frmButtonItem.ContainsKey("Save")) { frmButtonItem["Save"].Enabled = false; }
if (frmButtonItem.ContainsKey("EnSure")) { frmButtonItem["EnSure"].Enabled = false; }
if (frmButtonItem.ContainsKey("Review")) { frmButtonItem["Review"].Enabled = false; }
if (frmButtonItem.ContainsKey("Commit")) { frmButtonItem["Commit"].Enabled = false; }
if (frmButtonItem.ContainsKey("Add")) { frmButtonItem["Add"].Enabled = true; }
if (frmButtonItem.ContainsKey("Search")) { frmButtonItem["Search"].Enabled = true; }
if (frmButtonItem.ContainsKey("Refresh")) { frmButtonItem["Refresh"].Enabled = true; }
if (frmButtonItem.ContainsKey("Edit")) { frmButtonItem["Edit"].Enabled = true; }
if (frmButtonItem.ContainsKey("Del")) { frmButtonItem["Del"].Enabled = true; }
bgsProvide.DataSource = new ProvideRepModel();
this.ctrGoods.TextBoxFlag = string.Empty;
this.ctrGoods.TextBoxValue = string.Empty;
this.dicCreate.TextBoxFlag = string.Empty;
this.dicCreate.TextBoxValue = string.Empty;
this.dicConfirm.TextBoxFlag = string.Empty;
this.dicConfirm.TextBoxValue = string.Empty;
//this.dicReview.TextBoxFlag = string.Empty;
//this.dicReview.TextBoxValue = string.Empty;
bgsProvideInfo.DataSource = null;
xtraTabControl1.SelectedTabPageIndex = 0;
}
#endregion
#region
/// <summary>
/// 清空按钮
/// </summary>
//public void Clear()
//{
//this.ctrGoods.TextBoxValue = string.Empty;
//this.ctrGoods.TextBoxFlag = string.Empty;
//this.lkpProvider.EditValue = string.Empty;
//this.txtID.Text = string.Empty;
//this.txtRemark.Text = string.Empty;
//this.dicCreate.TextBoxFlag = string.Empty;
//this.dicCreate.TextBoxValue = string.Empty;
//this.dicConfirm.TextBoxFlag = string.Empty;
//this.dicConfirm.TextBoxValue = string.Empty;
//this.dicReview.TextBoxFlag = string.Empty;
//this.dicReview.TextBoxValue = string.Empty;
//this.lkpResion.EditValue = string.Empty;
//this.daCreateDate.EditValue = null;
//this.daConfirmDate.EditValue = null;
//this.daReviewDate.EditValue = null;
//this.daArriveDate.EditValue = null;
//}
#endregion
#region
/// <summary>
/// 导出按钮
/// </summary>
public void Export()
{
}
#endregion
#region
/// <summary>
/// 打印按钮
/// </summary>
public void Print()
{
if (proModel.PROREP_STATUS == "0")
{
SystemCommon.ShowInfoMessageBox("该单据未确认,不能打印!请选择确认单据!");
return;
}
if (proModel.PRINT_COUNT > 0)
{
if (DialogResult.No == SystemCommon.ShowMessageBoxResult("供应商补货单 - " + proModel.PROREP_ID + Environment.NewLine + " 已打印" + Convert.ToInt32(proModel.PRINT_COUNT) + "次,是否开始打印"))
{
return;
}
}
//打印时给单位名称赋值
string errText = string.Empty;
string strDataSet = string.Empty;
List<DictionaryTabModel> listDictionaryTab = new List<DictionaryTabModel>();
try
{
listDictionaryTab = IBussFactory<BussDictionaryTab>.Instance().GetDictionaryTab("vc_uom");//调用Web服务读取字典明细信息
}
catch (Exception)
{
SystemCommon.ShowInfoMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们!");
}
foreach (ProvideRepInfoModel item in bindInfoList)
{
if (item.UNIT != null)
{
item.UNIT_NAME = listDictionaryTab.Find(p => p.VC_CHAR_VALUE == item.UNIT).VC_DICTIONARY_NAME;
}
}
proModel.DOCUMENT_PERSON_ID = userData.USER_ID;
proModel.DOCUMENT_PERSON = userData.NAME;
proModel.DOCUMENT_TIME = DateTime.Now;
string strModel = Newtonsoft.Json.JsonConvert.SerializeObject(proModel);
//string errText = string.Empty;
try
{
// errText = WebLockConfig.Instance.WebProvideRep.PrintOK(strModel);
}
catch (Exception)
{
SystemCommon.ShowInfoMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们!");
}
if (string.IsNullOrEmpty(errText))//如果成功
{
SystemCommon.ShowInfoMessageBox("打印成功");
BindReviewOthers();
}
else
{
SystemCommon.ShowInfoMessageBox("修改打印记录失败,请重新打印。" + errText);
}
//}
//else
//{
// SystemCommon.ShowInfoMessageBox("打印失败");
//}
}
#endregion
#region
/// <summary>
/// 生成单据按钮(生成的单据为未确认状态)
/// </summary>
public void Confirm()
{
if (proModel.PROREP_STATUS == null)
{
return;
}
if (proModel.PROREP_STATUS != "0")
{
SystemCommon.ShowInfoMessageBox("该单据不需要审核!");
return;
}
proModel.CONFIRM_DATE = DateTime.Now;
this.dicConfirm.TextBoxFlag = userData.USER_ID;
this.dicConfirm.TextBoxValue = userData.NAME;
proModel.CONFIRM_MAN = this.dicConfirm.TextBoxFlag;
proModel.CONFIRM_MAN_NAME = this.dicConfirm.TextBoxValue;
proModel.PROREP_STATUS = "1";
bgsProvide.DataSource = proModel;
UpdateProvideRep();
splitContainerControl1.Panel1.Enabled = false;
splitContainerControl1.Panel2.Enabled = false;
}
#endregion
#region
/// <summary>
/// 保存按钮
/// </summary>
public void Save()
{
if (isSKU)
{
//判断是否都选了商品规格 数量是否相同
gridViewProvideInfo.CloseEditor();
bindInfoList = bgsProvideInfo.DataSource as List<ProvideRepInfoModel>;
foreach (var item in bindInfoList)
{
decimal i = 0;
//List<SKUTabModel> listSKUTab = listSKU.FindAll(p => p.INVENTORY_ITEM_ID == item.INVENTORY_ITEM_ID);
//foreach (var ite in listSKUTab)
//{
// i += ite.SKU_NUM;
//}
//if (item.GOODS_COUNT != i)
//{
// SystemCommon.ShowInfoMessageBox("请为" + item.GOODS_NAME + "选择规格");
// xtraTabControl1.SelectedTabPageIndex = 1;
// return;
//}
}
}
if (flag == 0)
{
proModel.TOTAL_NUM = sumTotalCount;
proModel.OPERATEDATE = DateTime.Now;
proModel.OPERATORID = userData.USER_ID;
bgsProvide.DataSource = proModel;
if (this.gridViewProvideInfo.RowCount < 1)
{
SystemCommon.ShowInfoMessageBox("没有商品可以进行补货,请先选择至少一种商品!");
return;
}
InsertProvideRep();
}
else if (flag == 1)
{
bgsProvide.EndEdit();
this.xtraTab1.Focus();
if (string.IsNullOrEmpty(this.lkpProvider.EditValue.ToString()))
{
SystemCommon.ShowInfoMessageBox("请选择要补货的供应商!");
return;
}
UpdateProvideRep();
flag = 3;
}
}
#endregion
#region
/// <summary>
/// 通用查询
/// </summary>
/// <param name="table"></param>
public override void LoadListData(DataTable table)
{
bindList = ConvertHelper<ProvideRepModel>.ConvertToList(table);
bgsProvideMain.DataSource = bindList;
this.gridViewProvideMain.RefreshData();
}
#endregion
#region
/// <summary>
/// 明细增加
/// </summary>
public void Rebreak()
{
this.ctrGoods.Enabled = true;
if (proModel.PROREP_STATUS == "2")
{
return;
}
CopyList.AddRange(bindInfoList);
UpList.AddRange(CopyList);
this.gridViewProvideInfo.OptionsBehavior.Editable = true;
}
#endregion
#region
/// <summary>
/// 明细删除
/// </summary>
public void Clear()
{
if (this.gridViewProvideInfo.FocusedRowHandle < 0)
{
return;
}
if (proModel.PROREP_STATUS == "2")
{
return;
}
if (CopyList.Count == 0)
{
CopyList.AddRange(bindInfoList);
UpList.AddRange(CopyList);
}
ProvideRepInfoModel mod = CopyList[gridViewProvideInfo.FocusedRowHandle];
CopyList.Remove(mod);
if (AddList.Contains(mod))
{
AddList.Remove(mod);
}
//if (!string.IsNullOrEmpty(mod.INVENTORY_ITEM_ID))
//{
// if (UpList.Contains(mod))
// {
// DelList.Add(mod);
// }
//}
if (UpList.Contains(mod))
{
UpList.Remove(mod);
}
this.gridControlCustomProInfo.DataSource = CopyList;
this.gridViewProvideInfo.RefreshData();
}
#endregion
/// <summary>
/// 明细保存
/// </summary>
public void Audit()
{
//if (UpList.Count > 0 || AddList.Count > 0 || DelList.Count > 0)
//{
// string UpListModel = Newtonsoft.Json.JsonConvert.SerializeObject(UpList);
// string AddListModel = Newtonsoft.Json.JsonConvert.SerializeObject(AddList);
// string DelListModel = Newtonsoft.Json.JsonConvert.SerializeObject(DelList);
// foreach (ProvideRepInfoModel m in AddList)
// {
// if (m.GOODS_COUNT == 0)
// {
// SystemCommon.ShowInfoMessageBox("新增明细商品中含有未填写补货数量的数据,请填写完毕!");
// return;
// }
// }
// //string err = WebLockConfig.Instance.WebProvideRep.NewProvideRepInfoFuc(UpListModel, AddListModel, DelListModel);
// string err = WebLockConfig.Instance.WebProvideRep.NewProvideRepInfoFuc(UpListModel, AddListModel, DelListModel);
// if (!string.IsNullOrEmpty(err))
// {
// SystemCommon.ShowErrorMessageBox(err);
// }
// else
// {
// SystemCommon.ShowInfoMessageBox("明细修改成功!");
// CopyList = new List<ProvideRepInfoModel>();
// UpList = new List<ProvideRepInfoModel>();
// DelList = new List<ProvideRepInfoModel>();
// AddList = new List<ProvideRepInfoModel>();
// BindReviewOthers();
// xtraTabControl1.SelectedTabPageIndex = 0;
// }
//}
}
#endregion
#region ctrGoods_Button_Click事件
/// <summary>
/// ctrGoods_Button_Click 选商品获得需要补货的商品信息
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void ctrGoods_Button_Click(object sender, EventArgs e)
{
if (this.ctrGoods.SelectTable.Rows.Count == 0)
{
//SystemCommon.ShowErrorMessageBox("请选择商品!");
return;
}
//商品放大镜集合
List<JWGoodsInfoModel> goods = ConvertHelper<JWGoodsInfoModel>.ConvertToList(ctrGoods.SelectTable);
////商品表集合
//List<JWGoodsInfoModel> goodslist = new List<JWGoodsInfoModel>();
//库存集合(多个商品数据集)
stockList = new List<MIStockModel>();
//库存集合(单个商品数据集)
List<MIStockModel> milist = new List<MIStockModel>();
//补货明细集合
bindInfoList = new List<ProvideRepInfoModel>();
foreach (JWGoodsInfoModel info in goods)
{
stockModel = new MIStockModel();
//stockModel.INVENTORY_ITEM_ID = info.INVENTORY_ITEM_ID;
string errtext = "";
milist = IBussFactory<BussMIStock>.Instance().GetMIStockList(stockModel);
stockList.AddRange(milist);
milist = new List<MIStockModel>();
}
//var ll = stockList.GroupBy(s => new { s.INVENTORY_ITEM_ID, s.GOODS_NAME, }).Select(g => new { g.Key.INVENTORY_ITEM_ID, g.Key.GOODS_NAME, SHELVES_NUM = g.Sum(f => f.SHELVES_NUM) });
//bgsMiStock.DataSource = ll.ToList();
//foreach (var ii in ll)
//{
// infoInsertModel = new ProvideRepInfoModel();
// infoInsertModel.INVENTORY_ITEM_ID = ii.INVENTORY_ITEM_ID;
// infoInsertModel.GOODS_NAME = ii.GOODS_NAME;
// infoInsertModel.SHEVL_NUM = ii.SHELVES_NUM;
// List<JWGoodsInfoModel> lg = IBussFactory<BussGoods>.Instance().GetGoodsList(infoInsertModel.INVENTORY_ITEM_ID, "", "", "");
// if(lg!=null)
// {
// if (lg.Count != 0)
// {
// //infoInsertModel.PRICE = lg[0].PRICE;
// //infoInsertModel.UNIT = lg[0].UNIT;
// }
// bindInfoList.Add(infoInsertModel);
// }
//}
gridControlCustomProInfo.DataSource = bindInfoList;
bgsProvideInfo.DataSource = gridControlCustomProInfo.DataSource;
gridViewProvideInfo.RefreshData();
if (CopyList.Count > 0)
{
List<ProvideRepInfoModel> add = new List<ProvideRepInfoModel>();
foreach (ProvideRepInfoModel mo in bindInfoList)
{
//if (CopyList.Find(r => r.INVENTORY_ITEM_ID == mo.INVENTORY_ITEM_ID) != null)
//{
// continue;
//}
mo.PROREP_ID = proModel.PROREP_ID;
add.Add(mo);
}
AddList.AddRange(add);
CopyList.AddRange(add);
gridControlCustomProInfo.DataSource = CopyList;
bgsProvideInfo.DataSource = gridControlCustomProInfo.DataSource;
gridViewProvideInfo.RefreshData();
}
#region
if (flag == 0 || frmButtonItem["Rebreak"].Enabled == true)
{
this.gridViewProvideInfo.OptionsBehavior.Editable = true;
}
else
{
this.gridViewProvideInfo.OptionsBehavior.Editable = false;
}
#endregion
}
#endregion
#region Xtab1
#region
/// <summary>
/// 生成供应商补货单据
/// </summary>
private void InsertProvideRep()
{
this.label1.Focus();
//将输入改变值挂起
bgsProvide.EndEdit();
string errtext = "";
try
{
//明细表
foreach (ProvideRepInfoModel pinfo in bindInfoList)
{
if (!string.IsNullOrEmpty(this.txtID.Text))
{
pinfo.PROREP_ID = proModel.PROREP_ID;
}
if (pinfo.GOODS_COUNT == 0)
{
SystemCommon.ShowInfoMessageBox("含有未填写补货量的商品,请填写完毕!");
return;
}
}
string strSKUList = Newtonsoft.Json.JsonConvert.SerializeObject(listSKU);//List转字符串
ProvideRepModel modele =(ProvideRepModel) bgsProvide.DataSource;
//errtext = WebLockConfig.Instance.WebProvideRep.InsertProvideRepData(mode, modelinfo);
errtext = IBussFactory<BussProvideRep>.Instance().InsertProvideRepData(modele , bindInfoList );
if (!string.IsNullOrEmpty(errtext))
{
SystemCommon.ShowInfoMessageBox("操作失败!" + errtext);
}
else
{
SystemCommon.ShowInfoMessageBox("操作成功!");
}
}
catch (Exception ex)
{
SystemCommon.ShowInfoMessageBox("网络连接错误,请检查当前网络环境是否可用!");
}
this.ctrGoods.TextBoxFlag = string.Empty;
this.ctrGoods.TextBoxValue = string.Empty;
BindReviewOthers();
xtraTabControl1.SelectedTabPageIndex = 0;
}
#endregion
#endregion
#region Xtab2
#region
/// <summary>
/// 获得供应商补货数据 上半屏
/// </summary>
private void BindProvideRepData()
{
LoadForm load = new LoadForm();
DevExpress.XtraSplashScreen.SplashScreenManager.ShowForm(load, load.GetType(), false, true, false, 70);
DevExpress.XtraSplashScreen.SplashScreenManager.Default.SetWaitFormDescription("数据加载中...");
bindList = new List<ProvideRepModel>();
proModel = new ProvideRepModel();
new Thread(delegate()
{
proModel.TIMESTART = DateTime.Now.AddDays(-30);
proModel.TIMEEND = DateTime.Now.AddDays(1);
string strlist = "";
try
{
this.Invoke(new MethodInvoker(delegate()
{
bindList = IBussFactory<BussProvideRep>.Instance().GetProvideRepData(proModel);
if (bindList != null)
{
if (bindList.Count > 0)
{
List<ProvideRepModel> lp = bindList.FindAll(r => r.PROREP_STATUS != "3");
bgsProvideMain.DataSource = lp;
if (lp.Count > 0)
{
proModel = lp[0];
bgsProvideTab.DataSource = BindProvideRepInfoData(lp[0].PROREP_ID);
}
}
//没数据时 2表清空
else if (bindList.Count == 0)
{
bgsProvideMain.DataSource = null;
bgsProvideTab.DataSource = null;
}
else
{
SystemCommon.ShowInfoMessageBox("没有查询到符合条件的数据!");
}
}
DevExpress.XtraSplashScreen.SplashScreenManager.CloseForm();
}));
}
catch (Exception ex)
{
SystemCommon.ShowErrorMessageBox("网络连接错误,请检查当前网络环境是否可用!");
}
}).Start();
}
#endregion
#region Click事件
/// <summary>
/// Click 显示供应商补货明细表数据
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void gridControlCustomProvide_Click(object sender, EventArgs e)
{
if (frmButtonItem.ContainsKey("Add")) { frmButtonItem["Add"].Enabled = true; }
if (frmButtonItem.ContainsKey("Edit")) { frmButtonItem["Edit"].Enabled = true; }
if (frmButtonItem.ContainsKey("Del")) { frmButtonItem["Del"].Enabled = true; }
if (frmButtonItem.ContainsKey("Confirm")) { frmButtonItem["Confirm"].Enabled = false; }
if (frmButtonItem.ContainsKey("EnSure")) { frmButtonItem["EnSure"].Enabled = false; }
if (frmButtonItem.ContainsKey("Review")) { frmButtonItem["Review"].Enabled = false; }
if (frmButtonItem.ContainsKey("Save")) { frmButtonItem["Save"].Enabled = false; }
//明细增加
if (frmButtonItem.ContainsKey("Rebreak")) { frmButtonItem["Rebreak"].Enabled = false; }
//明细删除
if (frmButtonItem.ContainsKey("Clear")) { frmButtonItem["Clear"].Enabled = false; }
pinfomodel = new ProvideRepInfoModel();
if (this.gridViewProvideMain.RowCount < 1)
{
return;
}
//没有数据时 点击跳出
if (this.gridViewProvideMain.FocusedRowHandle < 0)
{
return;
}
bindInfoList = new List<ProvideRepInfoModel>();
proModel = this.gridViewProvideMain.GetRow(this.gridViewProvideMain.FocusedRowHandle) as ProvideRepModel;
string strID = this.gridViewProvideMain.GetRowCellValue(this.gridViewProvideMain.FocusedRowHandle, "PROREP_ID").ToString();
if (!string.IsNullOrEmpty(strID))
{
bgsProvideTab.DataSource = BindProvideRepInfoData(strID);
bindInfoList = bgsProvideTab.DataSource as List<ProvideRepInfoModel>;
if (bindInfoList.Count > 0)
{
bgsProvideTab.DataSource = bindInfoList;
}
}
this.gridViewProvideTab.RefreshData();
}
#endregion
#region DoubleClick事件
/// <summary>
/// DoubleClick 进行修改
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void gridViewProvideMain_DoubleClick(object sender, EventArgs e)
{
flag = 1;
if (frmButtonItem.ContainsKey("Save")) { frmButtonItem["Save"].Enabled = true; }
if (frmButtonItem.ContainsKey("Rebreak")) { frmButtonItem["Rebreak"].Enabled = true; }
if (frmButtonItem.ContainsKey("Clear")) { frmButtonItem["Clear"].Enabled = true; }
if (frmButtonItem.ContainsKey("Del")) { frmButtonItem["Del"].Enabled = false; }
if (frmButtonItem.ContainsKey("Add")) { frmButtonItem["Add"].Enabled = false; }
// if (frmButtonItem.ContainsKey("Search")) { frmButtonItem["Search"].Enabled = false; }
if (this.gridViewProvideMain.RowCount < 1)
{
return;
}
if (this.gridViewProvideMain.FocusedRowHandle < 0)
{
return;
}
proModel = this.gridViewProvideMain.GetRow(this.gridViewProvideMain.FocusedRowHandle) as ProvideRepModel;
#region
//确认人确认单据
if (proModel.PROREP_STATUS == "0")
{
if (frmButtonItem.ContainsKey("Confirm")) { frmButtonItem["Confirm"].Enabled = true; }
this.dicConfirm.Enabled = true;
this.daConfirmDate.Enabled = true;
this.dicCreate.TextBoxFlag = proModel.CREATE_MAN;
this.dicCreate.TextBoxValue = proModel.CREATE_MAN_NAME;
this.dicConfirm.TextBoxFlag = userData.USER_ID;
this.dicConfirm.TextBoxValue = userData.NAME;
proModel.CONFIRM_DATE = DateTime.Now;
}
//审核人审核单据
//else if (proModel.PROREP_STATUS == "1")
//{
// frmButtonItem["Review"].Enabled = true;
// if (frmButtonItem.ContainsKey("Rebreak")) { frmButtonItem["Rebreak"].Enabled = false; }
// if (frmButtonItem.ContainsKey("Clear")) { frmButtonItem["Clear"].Enabled = false; }
// if (frmButtonItem.ContainsKey("Save")) { frmButtonItem["Save"].Enabled = false; }
// this.dicCreate.Enabled = false;
// this.daCreateDate.Enabled = false;
// this.dicConfirm.Enabled = false;
// this.daConfirmDate.Enabled = false;
// this.lkpProvider.Enabled = false;
// this.lkpStorage.Enabled = false;
// this.lkpResion.Enabled = false;
// this.dicReview.Enabled = true;
// this.daReviewDate.Enabled = true;
// this.dicCreate.TextBoxFlag = proModel.CREATE_MAN;
// this.dicCreate.TextBoxValue = proModel.CREATE_MAN_NAME;
// this.dicConfirm.TextBoxFlag = proModel.CONFIRM_MAN;
// this.dicConfirm.TextBoxValue = proModel.CONFIRM_MAN_NAME;
// this.dicReview.TextBoxFlag = userData.USER_ID;
// this.dicReview.TextBoxValue = userData.NAME;
// //proModel.REVIEW_DATE = DateTime.Now;
//}
//审核过的数据
else
{
//frmButtonItem["Review"].Enabled = false;
if (frmButtonItem.ContainsKey("Save")) { frmButtonItem["Save"].Enabled = false; }
if (frmButtonItem.ContainsKey("Confirm")) { frmButtonItem["Confirm"].Enabled = false; }
if (frmButtonItem.ContainsKey("Rebreak")) { frmButtonItem["Rebreak"].Enabled = false; }
if (frmButtonItem.ContainsKey("Clear")) { frmButtonItem["Clear"].Enabled = false; }
if (frmButtonItem.ContainsKey("Del")) { frmButtonItem["Del"].Enabled = true; }
if (frmButtonItem.ContainsKey("Add")) { frmButtonItem["Add"].Enabled = true; }
// if (frmButtonItem.ContainsKey("Search")) { frmButtonItem["Search"].Enabled = false; }
bgsProvideInfo.DataSource = null;
bgsProvide.DataSource = new ProvideRepModel();
this.dicCreate.TextBoxFlag = string.Empty;
this.dicCreate.TextBoxValue = string.Empty;
this.dicConfirm.TextBoxFlag = string.Empty;
this.dicConfirm.TextBoxValue = string.Empty;
this.daCreateDate.EditValue = DateTime.Now;
this.daConfirmDate.EditValue = DateTime.Now;
return;
}
#endregion
string strID = this.gridViewProvideMain.GetRowCellValue(this.gridViewProvideMain.FocusedRowHandle, "PROREP_ID").ToString();
proModel.OPERATEDATE = DateTime.Now;
proModel.OPERATORID = userData.USER_ID;
bgsProvide.EndEdit();
bgsProvide.DataSource = proModel;
gridControlCustomProInfo.DataSource = BindProvideRepInfoData(strID);
bgsProvideInfo.DataSource = gridControlCustomProInfo.DataSource;
gridViewProvideInfo.RefreshData();
xtraTabControl1.SelectedTabPageIndex = 1;
if (frmButtonItem.ContainsKey("Save")) { frmButtonItem["Save"].Enabled = true; }
#region
this.gridViewProvideInfo.OptionsBehavior.Editable = true;
this.ctrGoods.Enabled = false;
#endregion
}
#endregion
#region
/// <summary>
/// 绑定供应商补货 明细数据方法
/// </summary>
/// <param name="strId">供应商补货编号</param>
/// <returns></returns>
private List<ProvideRepInfoModel> BindProvideRepInfoData(string strId)
{
bindInfoList = new List<ProvideRepInfoModel>();
if (!string.IsNullOrEmpty(strId))
{
string detailinfo = "";
try
{
bindInfoList = IBussFactory<BussProvideRep>.Instance().GetProvideRepInfoData(strId);
}
catch (Exception ex)
{
SystemCommon.ShowInfoMessageBox("网络连接错误,请检查当前网络环境是否可用");
}
return bindInfoList;
}
return bindInfoList;
}
#endregion
#region
/// <summary>
/// 删查询后的数据(主表、明细表)
/// </summary>
public void DeleteProvideRep()
{
string errtext = "";
GetCheckData();
List<ProvideRepModel> pro = new List<ProvideRepModel>();
if (i > 0)
{
try
{
errtext = IBussFactory<BussProvideRep>.Instance().DeleteProvideRepByID(strlist);
if (!string.IsNullOrEmpty(errtext))
{
SystemCommon.ShowInfoMessageBox("操作失败!");
}
else
{
SystemCommon.ShowInfoMessageBox("操作成功!");
}
}
catch (Exception ex)
{
SystemCommon.ShowInfoMessageBox("网络连接错误,请检查当前网络环境是否可用!");
}
}
BindReviewOthers();
}
#endregion
#region
/// <summary>
/// 获得查询数据主表check 选中项
/// </summary>
private void GetCheckData()
{
strlist = new List<string>();
string str = "";
//赋值为初始值 是为了再次操作时 重新计量
i = 0;
this.xtraTab2.Focus();
foreach (ProvideRepModel model in bindList)
{
str = string.Empty;
if (model.SELECTID == "1")
{
str = model.PROREP_ID;
strlist.Add(str);
i++;
}
}
}
#endregion
#region
/// <summary>
/// 新增 修改 删除 数据重新绑定
/// </summary>
private void BindReviewOthers()
{
//重绑主表数据
BindProvideRepData();
List<ProvideRepModel> lp = bindList.FindAll(r => r.PROREP_STATUS != "3");
bgsProvideMain.DataSource = lp;
if (lp.Count != 0)
{
this.gridViewProvideMain.FocusedRowHandle = 0;
gridControlCustomProvide_Click(null, null);
}
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 = true; }
if (frmButtonItem.ContainsKey("Confirm")) { frmButtonItem["Confirm"].Enabled = false; }
if (frmButtonItem.ContainsKey("EnSure")) { frmButtonItem["EnSure"].Enabled = false; }
if (frmButtonItem.ContainsKey("Review")) { frmButtonItem["Review"].Enabled = false; }
if (frmButtonItem.ContainsKey("Save")) { frmButtonItem["Save"].Enabled = false; }
if (frmButtonItem.ContainsKey("Rebreak")) { frmButtonItem["Rebreak"].Enabled = false; }
//if (frmButtonItem.ContainsKey("Audit")) { frmButtonItem["Audit"].Enabled = false; }
if (frmButtonItem.ContainsKey("Clear")) { frmButtonItem["Clear"].Enabled = false; }
splitContainerControl1.Panel1.Enabled = true;
splitContainerControl1.Panel2.Enabled = true;
this.gridViewProvideMain.RefreshData();
//操作主表文本框清空
bgsProvide.DataSource = new ProvideRepModel();
this.dicCreate.TextBoxFlag = string.Empty;
this.dicCreate.TextBoxValue = string.Empty;
this.dicConfirm.TextBoxFlag = string.Empty;
this.dicConfirm.TextBoxValue = string.Empty;
//this.dicReview.TextBoxFlag = string.Empty;
//this.dicReview.TextBoxValue = string.Empty;
this.daCreateDate.EditValue = DateTime.Now;
this.daConfirmDate.EditValue = DateTime.Now;
//this.daReviewDate.EditValue = DateTime.Now;
//明细表清空
bgsProvideInfo.DataSource = null;
this.gridViewProvideMain.RefreshData();
this.gridViewProvideTab.RefreshData();
}
#endregion
#region
/// <summary>
/// 改 供应商补货数据方法
/// </summary>
public void UpdateProvideRep()
{
string wid = string.Empty;
string errtext = string.Empty;
this.label1.Focus();
try
{
#region ()
if (UpList.Count > 0 || AddList.Count > 0 || DelList.Count > 0)
{
foreach (ProvideRepInfoModel m in AddList)
{
if (m.GOODS_COUNT == 0)
{
SystemCommon.ShowInfoMessageBox("新增明细商品中含有未填写补货数量的数据,请填写完毕!");
return;
}
}
ProvideRepModel strmodel = (ProvideRepModel)bgsProvide.DataSource;
// errtext = WebLockConfig.Instance.WebProvideRep.NewProvideRepInfoFuc(strmodel, UpListModel, AddListModel, DelListModel);
errtext = IBussFactory<BussProvideRep>.Instance().NewProvideRepInfoFuc(strmodel, UpList, AddList, DelList );
CopyList = new List<ProvideRepInfoModel>();
UpList = new List<ProvideRepInfoModel>();
DelList = new List<ProvideRepInfoModel>();
AddList = new List<ProvideRepInfoModel>();
}
#endregion
#region ()
else
{
ProvideRepModel strmodel = (ProvideRepModel)bgsProvide.DataSource;
List<ProvideRepInfoModel> strmodelinfo = (List<ProvideRepInfoModel>) bgsProvideInfo.DataSource ;
//errtext = WebLockConfig.Instance.WebProvideRep.UpdateProvideRepData(strmodel, strmodelinfo);
errtext = IBussFactory<BussProvideRep>.Instance().UpdateProvideRepData(strmodel, strmodelinfo);
}
#endregion
if (!string.IsNullOrEmpty(errtext))
{
SystemCommon.ShowInfoMessageBox("操作失败!" + errtext);
}
else
{
SystemCommon.ShowInfoMessageBox("操作成功!");
}
}
catch (Exception ex)
{
SystemCommon.ShowInfoMessageBox("网络连接错误,请检查当前网络环境是否可用!");
}
BindReviewOthers();
xtraTabControl1.SelectedTabPageIndex = 0;
this.ctrGoods.Enabled = true;
this.dicCreate.Enabled = false;
this.daCreateDate.Enabled = false;
this.dicConfirm.Enabled = false;
this.daConfirmDate.Enabled = false;
//this.dicReview.Enabled = false;
//this.daReviewDate.Enabled = false;
//this.daReviewDate.Enabled = false;
}
#endregion
#region CustomColumnDisplayText
/// <summary>
/// gridViewProvideMain_CustomColumnDisplayText 显示状态名称
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void gridViewProvideMain_CustomColumnDisplayText(object sender, DevExpress.XtraGrid.Views.Base.CustomColumnDisplayTextEventArgs e)
{
if (e.Column.FieldName == "PROREP_STATUS")
{
if (e.Value == null)
{
return;
}
switch (e.Value.ToString().Trim())
{
case "0":
e.DisplayText = "未确认";
break;
case "1":
e.DisplayText = "已确认";
break;
case "2":
e.DisplayText = "已审核";
break;
default:
e.DisplayText = "已提交";
break;
}
}
}
private void gridViewProvideInfo_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;
// }
}
}
private void gridViewProvideTab_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
#region
/// <summary>
/// 对单元格 自定义的编辑列进行 编辑
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void gridViewProvideInfo_CustomRowCellEditForEditing(object sender, DevExpress.XtraGrid.Views.Grid.CustomRowCellEditEventArgs e)
{
if (e.RowHandle < 0)
{
return;
}
if (e.Column.Name == "colUnit")
{
ProvideRepInfoModel proRepinfo = new ProvideRepInfoModel();
proRepinfo = this.gridViewProvideInfo.GetFocusedRow() as ProvideRepInfoModel;
//if (proRepinfo != null && proRepinfo.INVENTORY_ITEM_ID != null)
//{
// string strResult = string.Empty;
// try
// {
// lueUnits.DataSource = IBussFactory<BussGoods>.Instance().GetGoodsUnit(proRepinfo.INVENTORY_ITEM_ID);
// }
// catch (Exception)
// {
// //SystemCommon.ShowInfoMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们!");
// }
//}
e.RepositoryItem = lueUnits;//当前单元格绑定控件
}
}
private string unit = string.Empty;//记录原单位
/// <summary>
/// 焦点单元格ValueChanged 事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void gridViewProvideInfo_CellValueChanged(object sender, DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs e)
{
this.xtraTab1.Focus();
if (e.RowHandle < 0)
{
return;
}
this.gridViewProvideInfo.RefreshData();
ProvideRepInfoModel model = new ProvideRepInfoModel();
model = this.gridViewProvideInfo.GetFocusedRow() as ProvideRepInfoModel;
if (model != null)
{
//补货量
if (e.Column.Name == "colGOODS_COUNT")
{
decimal GOODS_COUNT = Convert.ToDecimal(this.gridViewProvideInfo.GetFocusedRowCellValue("GOODS_COUNT"));
decimal PRICE = Convert.ToDecimal(gridViewProvideInfo.GetFocusedRowCellValue("PRICE"));
if (999999 < GOODS_COUNT)
{
SystemCommon.ShowInfoMessageBox("请注意:" + Environment.NewLine + "您输入补货量值过大,不符合实际,请重新输入!");
this.gridViewProvideInfo.SetFocusedRowCellValue("GOODS_COUNT", 0.0);
}
decimal SUMPRICE = PRICE * GOODS_COUNT;
gridViewProvideInfo.SetRowCellValue(gridViewProvideInfo.FocusedRowHandle, colSUMPRICE1, SUMPRICE);
foreach (ProvideRepInfoModel inf in bindInfoList)
{
sumCountAdd += inf.GOODS_COUNT;
}
sumTotalCount = sumCountAdd;
sumCountAdd = 0;
this.txtTotalNum.Text = sumTotalCount.ToString();
proModel.TOTAL_NUM = sumTotalCount;
bgsProvide.DataSource = proModel;
}
//单位
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() == this.gridViewProvideInfo.GetFocusedRowCellValue("UNIT").ToString())
{
newUnit = decimal.Parse(row[2].ToString());
}
}
if (oldUnit == 0)
{
return;
}
if (model.GOODS_COUNT != 0)
{
model.GOODS_COUNT = Math.Ceiling(model.GOODS_COUNT / oldUnit * newUnit);
}
}
}
}
#endregion
private void gridViewProvideInfo_CellValueChanging(object sender, DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs e)
{
if (this.gridViewProvideInfo.GetFocusedRowCellValue("UNIT") != null)
{
unit = this.gridViewProvideInfo.GetFocusedRowCellValue("UNIT").ToString();
}
}
private void linkGoodsName_Click(object sender, EventArgs e)
{
ProvideRepInfoModel model = gridViewProvideTab.GetFocusedRow() as ProvideRepInfoModel;
//if (model != null && !string.IsNullOrEmpty(model.INVENTORY_ITEM_ID))
//{
// FrmGoodsInfoDet.IFlag = 2;
// FrmGoodsInfoDet.StrGoodsID = model.INVENTORY_ITEM_ID;
// LoadForm load = new LoadForm();
// DevExpress.XtraSplashScreen.SplashScreenManager.ShowForm(load, load.GetType(), false, true, false, 0);
// DevExpress.XtraSplashScreen.SplashScreenManager.Default.SetWaitFormDescription("正在读取商品信息....");
// FrmGoodsInfoDet.GetInstance().Show();
// DevExpress.XtraSplashScreen.SplashScreenManager.CloseForm();
//}
}
private void HyperLinkgoodName_Click(object sender, EventArgs e)
{
ProvideRepInfoModel model = gridViewProvideTab.GetFocusedRow() as ProvideRepInfoModel;
//if (model != null && !string.IsNullOrEmpty(model.INVENTORY_ITEM_ID))
//{
// FrmGoodsInfoDet.IFlag = 2;
// //FrmGoodsInfoDet.StrGoodsID = model.INVENTORY_ITEM_ID;
// LoadForm load = new LoadForm();
// DevExpress.XtraSplashScreen.SplashScreenManager.ShowForm(load, load.GetType(), false, true, false, 0);
// DevExpress.XtraSplashScreen.SplashScreenManager.Default.SetWaitFormDescription("正在读取商品信息....");
// FrmGoodsInfoDet.GetInstance().Show();
// DevExpress.XtraSplashScreen.SplashScreenManager.CloseForm();
//}
}
/// <summary>
/// 先选择供应商后 在选择商品则 商品为该供应商能提供的商品
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void lkpProvider_EditValueChanged(object sender, EventArgs e)
{
if (!string.IsNullOrEmpty(this.lkpProvider.EditValue.ToString().Trim()))
{
this.ctrGoods.selSql = @"select INVENTORY_ITEM_ID, goods_name from T_BASE_GOODS t where t.INVENTORY_ITEM_ID in (select INVENTORY_ITEM_ID from T_MI_STOCK) and t.provider_id='" + this.lkpProvider.EditValue + "'";
}
else
{
this.ctrGoods.selSql = @"select INVENTORY_ITEM_ID, goods_name from T_BASE_GOODS t where t.INVENTORY_ITEM_ID in (select INVENTORY_ITEM_ID from T_MI_STOCK) ";
}
}
}
}