757 lines
30 KiB
C#
757 lines
30 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.Model.SC;
|
|
using WMS.Model.SystemManage;
|
|
using WMS.Frm.Base;
|
|
using WMS.Common;
|
|
using WMS.Business.Common;
|
|
using WMS.Business;
|
|
using WMS.Business.SC;
|
|
using WMS.Business.SystemManage;
|
|
|
|
namespace WMS.FrmSC
|
|
{
|
|
public partial class FrmWorkingTask : FormBase
|
|
{
|
|
#region 全局变量声明
|
|
/// <summary>
|
|
/// 计划Model
|
|
/// </summary>
|
|
ProcessPlanModel processPlanModel = new ProcessPlanModel();
|
|
|
|
/// <summary>
|
|
/// 计划List集合
|
|
/// </summary>
|
|
List<ProcessPlanModel> planList = new List<ProcessPlanModel>();
|
|
|
|
/// <summary>
|
|
/// 计划商品Model
|
|
/// </summary>
|
|
List<PlanGoodsModel> infoList = new List<PlanGoodsModel>();
|
|
|
|
/// <summary>
|
|
/// 商品原料对应Model
|
|
/// </summary>
|
|
GoodsMaterialModel gMaterialModel = new GoodsMaterialModel();
|
|
|
|
/// <summary>
|
|
/// 商品原料对应List集合
|
|
/// </summary>
|
|
List<GoodsMaterialModel> gMaterialList = new List<GoodsMaterialModel>();
|
|
|
|
/// <summary>
|
|
/// 任务领取原料Model
|
|
/// </summary>
|
|
WorkingTaskModel wtask = new WorkingTaskModel();
|
|
|
|
/// <summary>
|
|
/// 任务领取原料List集合
|
|
/// </summary>
|
|
List<WorkingTaskModel> wtasklist = new List<WorkingTaskModel>();
|
|
|
|
#endregion
|
|
|
|
#region 构造函数
|
|
/// <summary>
|
|
/// 无参构造
|
|
/// </summary>
|
|
public FrmWorkingTask()
|
|
{
|
|
InitializeComponent();
|
|
|
|
}
|
|
#endregion
|
|
|
|
#region 窗体加载
|
|
/// <summary>
|
|
/// 窗体加载
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
private void FrmWorkingTask_Load(object sender, EventArgs e)
|
|
{
|
|
bgsWorking.DataSource = new WorkingTaskModel();
|
|
processPlanModel = new ProcessPlanModel()
|
|
{
|
|
DATESTAR = DateTime.Now,
|
|
DATEEND = DateTime.Now.AddDays(7)
|
|
};
|
|
bgsPlanTab.DataSource = processPlanModel;
|
|
LEPStoSel.LoadData();
|
|
lkpTeam.LoadData();
|
|
lkpTeamUsers.LoadData();
|
|
this.ctrlPlan.selSql = "select plan_id, plan_name, plan_userid, plan_description, plan_startdate, plan_createtime, status, storage_id from t_sc_process_plan where status ='0'";
|
|
BindPlan(processPlanModel);
|
|
|
|
//单位下拉框
|
|
lueUnit.NullText = "";
|
|
lueUnit.Columns.Add(new DevExpress.XtraEditors.Controls.LookUpColumnInfo("VC_DICTIONARY_NAME", "单位"));
|
|
lueUnit.ValueMember = "VC_CHAR_VALUE";
|
|
lueUnit.DisplayMember = "VC_DICTIONARY_NAME";
|
|
DataTable tabUnit = null;
|
|
try
|
|
{
|
|
tabUnit = 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 ex)
|
|
{
|
|
SystemCommon.ShowInfoMessageBox("加载单位列表出错了:" + ex.Message);
|
|
}
|
|
lueUnit.DataSource = tabUnit;
|
|
|
|
try
|
|
{
|
|
if (frmButtonItem.ContainsKey("Confirm")) { frmButtonItem["Confirm"].Enabled = false; }
|
|
if (frmButtonItem.ContainsKey("Refresh")) { frmButtonItem["Refresh"].Enabled = true; }
|
|
if (frmButtonItem.ContainsKey("Edit")) { frmButtonItem["Edit"].Enabled = true; }
|
|
if (frmButtonItem.ContainsKey("Search")) { frmButtonItem["Search"].Enabled = true; }
|
|
PageGet.PageEnabled = false;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
|
|
}
|
|
}
|
|
|
|
#endregion
|
|
|
|
#region 按钮事件
|
|
/// <summary>
|
|
/// 查询
|
|
/// </summary>
|
|
public override void Search()
|
|
{
|
|
if (xtraTabControl1.SelectedTabPage == PageSel)
|
|
{
|
|
PageGet.PageEnabled = false;
|
|
PageSel.PageEnabled = true;
|
|
this.labelControl1.Focus();
|
|
bgsPlanTab.EndEdit();
|
|
processPlanModel = bgsPlanTab.DataSource as ProcessPlanModel;
|
|
this.lkpTeam.LoadData();
|
|
lkpTeamUsers.LoadData();
|
|
BindPlan(processPlanModel);
|
|
}
|
|
else
|
|
{
|
|
xtraTabControl1.SelectedTabPage = PageSel;
|
|
PageGet.PageEnabled = false;
|
|
PageSel.PageEnabled = true;
|
|
}
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
/// 编辑 领取计划
|
|
/// </summary>
|
|
public override void Edit()
|
|
{
|
|
GCPlan_DoubleClick(null, null);
|
|
}
|
|
|
|
/// <summary>
|
|
/// 刷新
|
|
/// </summary>
|
|
public override void Refresh()
|
|
{
|
|
xtraTabControl1.SelectedTabPageIndex = 0;
|
|
this.ctrlPlan.TextBoxFlag = string.Empty;
|
|
this.ctrlPlan.TextBoxValue = string.Empty;
|
|
this.txtPlanNameSel.Text = string.Empty;
|
|
this.LEPStoSel.EditValue = string.Empty;
|
|
this.LEPStoSel.Text = string.Empty;
|
|
this.lkpTeam.EditValue = string.Empty;
|
|
this.lkpTeamUsers.EditValue = string.Empty; ;
|
|
this.datePlan.EditValue = DateTime.MinValue;
|
|
this.dateGet.EditValue = DateTime.MinValue;
|
|
this.txtStorage.EditValue = string.Empty; ;
|
|
this.memoEdit1.Text = string.Empty;
|
|
bgsWorkingTask.DataSource = null;
|
|
bgsWorking.DataSource = new WorkingTaskModel();
|
|
processPlanModel = new ProcessPlanModel()
|
|
{
|
|
DATESTAR = DateTime.Now,
|
|
DATEEND = DateTime.Now.AddDays(7)
|
|
};
|
|
bgsPlanTab.DataSource = processPlanModel;
|
|
this.lkpTeam.Properties.ReadOnly = false;
|
|
this.lkpTeamUsers.Properties.ReadOnly = false;
|
|
this.datePlan.Properties.ReadOnly = false;
|
|
this.dateGet.Properties.ReadOnly = false;
|
|
this.memoEdit1.Enabled = false;
|
|
|
|
// this.GVPlanGoods.OptionsBehavior.Editable = false;
|
|
this.GVWorkingTask.OptionsBehavior.Editable = true;
|
|
LEPStoSel.LoadData();
|
|
lkpTeam.LoadData();
|
|
lkpTeamUsers.LoadData();
|
|
|
|
this.ctrlPlan.selSql = "select plan_id, plan_name, plan_userid, plan_description, plan_startdate, plan_createtime, status, storage_id from t_sc_process_plan where status ='1'";
|
|
BindPlan(processPlanModel);
|
|
xtraTabControl1.SelectedTabPageIndex = 0;
|
|
PageGet.PageEnabled = false;
|
|
PageSel.PageEnabled = true;
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
/// 确认 表示生产计划已领取
|
|
/// </summary>
|
|
public void Confirm()
|
|
{
|
|
this.labelControl1.Focus();
|
|
processPlanModel.STATUS = "1";
|
|
processPlanModel.DATESTAR = new DateTime(1901, 1, 1);
|
|
processPlanModel.DATEEND = new DateTime(1901, 1, 1);
|
|
//bgsPlanGoods.EndEdit();
|
|
bgsPlanTab.EndEdit();
|
|
bgsWorking.EndEdit();
|
|
bgsWorkingTask.EndEdit();
|
|
this.GVWorkingTask.CloseEditor();
|
|
//生产小组暂时注销
|
|
//foreach (PlanGoodsModel item in infoList)
|
|
//{
|
|
// item.TEAM_ID = this.lkpTeam.EditValue.ToString();
|
|
// item.TEAM_NAME = this.lkpTeam.Text;
|
|
//}
|
|
|
|
string errText = IBussFactory<BussWorkingTask>.Instance().UpdatePlanGoodsAndInsertWorkingTask(processPlanModel, infoList, bgsWorkingTask.DataSource as List<WorkingTaskModel>);
|
|
if (!string.IsNullOrEmpty(errText))
|
|
{
|
|
SystemCommon.ShowInfoMessageBox("操作失败:" + errText);
|
|
}
|
|
else
|
|
{
|
|
SystemCommon.ShowInfoMessageBox("操作成功!");
|
|
if (frmButtonItem.ContainsKey("Confirm")) { frmButtonItem["Confirm"].Enabled = false; }
|
|
Refresh();//重新加载
|
|
//processPlanModel.STATUS = "0";
|
|
////processPlanModel = new ProcessPlanModel();
|
|
//BindPlan(processPlanModel);
|
|
//xtraTabControl1.SelectedTabPageIndex = 0;
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
|
|
|
|
|
|
|
|
#region 数据绑定 计划 计划商品
|
|
/// <summary>
|
|
/// 绑定计划
|
|
/// </summary>
|
|
/// <param name="model"></param>
|
|
private void BindPlan(ProcessPlanModel model)
|
|
{
|
|
try
|
|
{
|
|
planList = IBussFactory<BussProcessPlan>.Instance().GetScPlanList(model);
|
|
GCPlan.DataSource = planList;
|
|
GVPlan.RefreshData();
|
|
|
|
if (planList.Count > 0)
|
|
{
|
|
processPlanModel = planList[0];
|
|
BindPlanGoods(new PlanGoodsModel() { PLAN_ID = processPlanModel.PLAN_ID });
|
|
}
|
|
else
|
|
{
|
|
infoList = new List<PlanGoodsModel>(); ;
|
|
GCPlanGoods.DataSource = infoList;
|
|
GVPlanGoods.RefreshData();
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
SystemCommon.ShowInfoMessageBox("出错了:BindPlan" + ex.Message);
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// 绑定计划商品
|
|
/// </summary>
|
|
/// <param name="model"></param>
|
|
private void BindPlanGoods(PlanGoodsModel model)
|
|
{
|
|
try
|
|
{
|
|
infoList = IBussFactory<BussPlanGoods>.Instance().GetPlanGoodsList(model);
|
|
GCPlanGoods.DataSource = infoList;
|
|
GVPlanGoods.RefreshData();
|
|
}
|
|
catch (Exception)
|
|
{
|
|
SystemCommon.ShowInfoMessageBox("获取数据失败,请检查网络连接!");
|
|
}
|
|
}
|
|
|
|
#endregion
|
|
|
|
|
|
#region 计划 单击显示计划商品
|
|
/// <summary>
|
|
/// 计划单击显示明细商品数据
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
private void GVPlan_Click(object sender, EventArgs e)
|
|
{
|
|
if (frmButtonItem.ContainsKey("Confirm")) { frmButtonItem["Confirm"].Enabled = false; }
|
|
if (GVPlan.FocusedRowHandle > -1)
|
|
{
|
|
processPlanModel = GVPlan.GetFocusedRow() as ProcessPlanModel;
|
|
BindPlanGoods(new PlanGoodsModel() { PLAN_ID = processPlanModel.PLAN_ID });
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
#region 计划 双击 跳转 领任务页面
|
|
/// <summary>
|
|
/// 双击计划 跳转到领计划任务页面
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
private void GCPlan_DoubleClick(object sender, EventArgs e)
|
|
{
|
|
if (GVPlan.FocusedRowHandle < 0)
|
|
{
|
|
SystemCommon.ShowErrorMessageBox("请选择要编辑的数据!");
|
|
return;
|
|
}
|
|
|
|
if (GVPlan.FocusedRowHandle > -1)
|
|
{
|
|
PageGet.PageEnabled = true;
|
|
processPlanModel = GVPlan.GetFocusedRow() as ProcessPlanModel;
|
|
BindPlanGoods(new PlanGoodsModel() { PLAN_ID = processPlanModel.PLAN_ID });
|
|
if (!string.IsNullOrEmpty(lkpTeam.EditValue.ToString()))
|
|
{
|
|
this.lkpTeam.EditValue = infoList[0].TEAM_ID;
|
|
}
|
|
}
|
|
|
|
xtraTabControl1.SelectedTabPageIndex = 1; ;
|
|
PageGet.PageEnabled = true;
|
|
PageSel.PageEnabled = false;
|
|
this.ctrlPlan.TextBoxFlag = processPlanModel.PLAN_ID;
|
|
this.ctrlPlan.TextBoxValue = processPlanModel.PLAN_NAME;
|
|
this.ctrlPlan.Enabled = false;
|
|
bgsPlan.DataSource = processPlanModel;
|
|
string errText = string.Empty;
|
|
gMaterialList = new List<GoodsMaterialModel>();
|
|
wtasklist = new List<WorkingTaskModel>();
|
|
|
|
this.dateGet.EditValue = DateTime.Now;
|
|
foreach (PlanGoodsModel p in infoList)
|
|
{
|
|
|
|
if (processPlanModel.STATUS == "0")
|
|
{
|
|
if (frmButtonItem.ContainsKey("Confirm")) { frmButtonItem["Confirm"].Enabled = true; }
|
|
this.lkpTeam.EditValue = p.TEAM_ID;
|
|
|
|
this.lkpTeam.Properties.ReadOnly = false;
|
|
this.lkpTeamUsers.Properties.ReadOnly = false;
|
|
this.datePlan.Properties.ReadOnly = true;
|
|
this.dateGet.Properties.ReadOnly = false;
|
|
this.txtStorage.Properties.ReadOnly = true;
|
|
this.memoEdit1.Enabled = true;
|
|
this.GVWorkingTask.OptionsBehavior.Editable = true;
|
|
gMaterialModel = new GoodsMaterialModel();
|
|
gMaterialModel.GOODS_ID = p.GOODS_ID;
|
|
gMaterialList = IBussFactory<BussGoodsMaterial>.Instance().GetGoodsMaterialList(gMaterialModel);
|
|
if (gMaterialList.Count > 0)
|
|
{
|
|
foreach (GoodsMaterialModel item in gMaterialList)
|
|
{
|
|
wtask = new WorkingTaskModel();
|
|
wtask.PALAN_ID = p.PLAN_ID;
|
|
wtask.PALAN_NAME = p.PLAN_NAME;
|
|
wtask.GOODS_ID = item.GOODS_ID;
|
|
wtask.GOODS_NAME = item.GOODS_NAME;
|
|
wtask.MATERIAL_ID = item.MATERIAL_ID;
|
|
wtask.MATERIAL_NAME = item.MATERIAL_NAME;
|
|
wtask.STAND_NUM = item.STAND_NUM * p.GOODS_NUM;
|
|
wtask.MAX_NUM = item.MAX_NUM * p.GOODS_NUM;
|
|
wtask.REALITY_NUM = item.MAX_NUM * p.GOODS_NUM;
|
|
wtask.LOSS_PERCENT = item.LOSS_PERCENT;
|
|
wtask.GOODS_PLETENUM = p.GOODS_COMPLETENUM;
|
|
wtask.GOODS_NUM = p.GOODS_NUM;
|
|
//if (tlist.Count > 0)
|
|
//{ //wtask.REALITY_MAN = tlist[0].USER_ID;
|
|
//wtask.REALITY_MAN_NAME = tlist[0].USER_NAME;
|
|
//}
|
|
if (!string.IsNullOrEmpty(this.lkpTeamUsers.EditValue.ToString()))
|
|
{
|
|
wtask.REALITY_MAN = this.lkpTeamUsers.EditValue.ToString();
|
|
wtask.REALITY_MAN_NAME = this.lkpTeamUsers.Text;
|
|
}
|
|
wtask.OPERAT_MAN = userData.USER_ID;
|
|
wtask.OPERAT_MAN_NAME = userData.NAME;
|
|
wtask.OPERAT_DATE = DateTime.Now;
|
|
wtask.REMARK = item.REMARK;
|
|
wtask.UNIT = item.UNIT;
|
|
wtask.PRICE = item.PRICE;
|
|
wtask.REALITY_DATE = DateTime.Now;
|
|
wtasklist.Add(wtask);
|
|
}
|
|
}
|
|
}
|
|
|
|
else if (processPlanModel.STATUS == "1")
|
|
{
|
|
this.lkpTeam.Properties.ReadOnly = true;
|
|
this.lkpTeamUsers.Properties.ReadOnly = true;
|
|
this.datePlan.Properties.ReadOnly = true;
|
|
this.dateGet.Properties.ReadOnly = true;
|
|
this.txtStorage.Properties.ReadOnly = true;
|
|
this.memoEdit1.Enabled = false;
|
|
|
|
// this.GVPlanGoods.OptionsBehavior.Editable = false;
|
|
this.GVWorkingTask.OptionsBehavior.Editable = false;
|
|
wtask = new WorkingTaskModel();
|
|
wtask.PALAN_ID = p.PLAN_ID;
|
|
wtask.GOODS_ID = p.GOODS_ID;
|
|
|
|
// wtask.PALAN_ID = this.ctrlPlan.TextBoxFlag;
|
|
List<WorkingTaskModel> l = IBussFactory<BussWorkingTask>.Instance().GetMaterialList(wtask);
|
|
if (l.Count > 0)
|
|
{
|
|
this.lkpTeam.EditValue = l[0].TEAM_ID;
|
|
this.lkpTeamUsers.EditValue = l[0].REALITY_MAN;
|
|
wtasklist.AddRange(l);
|
|
bgsWorking.DataSource = l[0];
|
|
}
|
|
}
|
|
}
|
|
bgsWorkingTask.DataSource = wtasklist;
|
|
this.GVWorkingTask.RefreshData();
|
|
}
|
|
|
|
#endregion
|
|
|
|
|
|
//PlanGoodsModel plll = new PlanGoodsModel();
|
|
|
|
#region 单位显示
|
|
private void GVWorkingTask_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
|
|
|
|
#region 班组改变事件
|
|
private void lkpTeam_EditValueChanged(object sender, EventArgs e)
|
|
{
|
|
//this.labelControl1.Focus();
|
|
|
|
//TeamUserModel tm = new TeamUserModel();
|
|
//string errText = string.Empty;
|
|
//tm.TEAM_ID = this.lkpTeam.EditValue.ToString();
|
|
////plll = this.GVPlanGoods.GetFocusedRow() as PlanGoodsModel;
|
|
////PlanGoodsModel p = this.GVPlanGoods.GetFocusedRow() as PlanGoodsModel;
|
|
//List<TeamUserModel> tlist = new List<TeamUserModel>();
|
|
//// tm.TEAM_ID = p.TEAM_ID;
|
|
//tlist = IBussFactory<BussTeamUser>.Instance().GetList(tm);
|
|
//if (tlist.Count > 0)
|
|
//{
|
|
// this.lkpTeamUsers.Properties.DataSource = tlist;
|
|
// this.lkpTeamUsers.Properties.DropDownRows = tlist.Count;
|
|
// this.lkpTeamUsers.Properties.DisplayMember = "USER_NAME";
|
|
// this.lkpTeamUsers.Properties.ValueMember = "USER_ID";
|
|
// this.lkpTeamUsers.Properties.NullText = "请选择";
|
|
// this.lkpTeamUsers.ItemIndex = 0;
|
|
// this.labelControl5.Focus();
|
|
// foreach (WorkingTaskModel item in wtasklist)
|
|
// {
|
|
// item.REALITY_MAN = tlist[0].USER_ID; ;
|
|
// item.REALITY_MAN_NAME = tlist[0].USER_NAME;
|
|
// }
|
|
//}
|
|
}
|
|
#endregion
|
|
|
|
#region 计划领取事件(放大镜)
|
|
private void ctrlPlan_Button_Click(object sender, EventArgs e)
|
|
{
|
|
List<ProcessPlanModel> plm = ConvertHelper<ProcessPlanModel>.ConvertToList(this.ctrlPlan.SelectTable);
|
|
if (plm.Count == 0)
|
|
{
|
|
return;
|
|
}
|
|
processPlanModel = plm[0];
|
|
BindPlanGoods(new PlanGoodsModel() { PLAN_ID = processPlanModel.PLAN_ID });
|
|
if (!string.IsNullOrEmpty(lkpTeam.EditValue.ToString()))
|
|
{
|
|
this.lkpTeam.EditValue = infoList[0].TEAM_ID;
|
|
}
|
|
|
|
bgsPlan.DataSource = processPlanModel;
|
|
string errText = string.Empty;
|
|
gMaterialList = new List<GoodsMaterialModel>();
|
|
wtasklist = new List<WorkingTaskModel>();
|
|
this.dateGet.EditValue = DateTime.Now;
|
|
|
|
foreach (PlanGoodsModel p in infoList)
|
|
{
|
|
if (processPlanModel.STATUS == "0")
|
|
{
|
|
this.lkpTeam.Properties.ReadOnly = false;
|
|
this.lkpTeamUsers.Properties.ReadOnly = false;
|
|
this.datePlan.Properties.ReadOnly = true;
|
|
this.dateGet.Properties.ReadOnly = false;
|
|
this.txtStorage.Properties.ReadOnly = true;
|
|
this.memoEdit1.Enabled = false;
|
|
this.GVWorkingTask.OptionsBehavior.Editable = true;
|
|
gMaterialModel = new GoodsMaterialModel();
|
|
gMaterialModel.GOODS_ID = p.GOODS_ID;
|
|
gMaterialList = IBussFactory<BussGoodsMaterial>.Instance().GetGoodsMaterialList(gMaterialModel);
|
|
if (gMaterialList.Count > 0)
|
|
{
|
|
foreach (GoodsMaterialModel item in gMaterialList)
|
|
{
|
|
wtask = new WorkingTaskModel();
|
|
wtask.PALAN_ID = p.PLAN_ID;
|
|
wtask.PALAN_NAME = p.PLAN_NAME;
|
|
wtask.GOODS_ID = item.GOODS_ID;
|
|
wtask.GOODS_NAME = item.GOODS_NAME;
|
|
wtask.MATERIAL_ID = item.MATERIAL_ID;
|
|
wtask.MATERIAL_NAME = item.MATERIAL_NAME;
|
|
wtask.STAND_NUM = item.STAND_NUM * p.GOODS_NUM;
|
|
wtask.MAX_NUM = item.MAX_NUM * p.GOODS_NUM;
|
|
wtask.REALITY_NUM = item.MAX_NUM * p.GOODS_NUM;
|
|
wtask.LOSS_PERCENT = item.LOSS_PERCENT;
|
|
wtask.GOODS_PLETENUM = p.GOODS_COMPLETENUM;
|
|
wtask.GOODS_NUM = p.GOODS_NUM;
|
|
|
|
if (!string.IsNullOrEmpty(this.lkpTeamUsers.EditValue.ToString()))
|
|
{
|
|
wtask.REALITY_MAN = this.lkpTeamUsers.EditValue.ToString();
|
|
wtask.REALITY_MAN_NAME = this.lkpTeamUsers.Text;
|
|
}
|
|
wtask.OPERAT_MAN = userData.USER_ID;
|
|
wtask.OPERAT_MAN_NAME = userData.NAME;
|
|
wtask.OPERAT_DATE = DateTime.Now;
|
|
wtask.REMARK = item.REMARK;
|
|
wtask.UNIT = item.UNIT;
|
|
wtask.PRICE = item.PRICE;
|
|
wtask.REALITY_DATE = DateTime.Now;
|
|
wtasklist.Add(wtask);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
bgsWorkingTask.DataSource = wtasklist;
|
|
this.GVWorkingTask.RefreshData();
|
|
}
|
|
#endregion
|
|
|
|
#region 单元格 改变验证实际
|
|
private void GVWorkingTask_CellValueChanged(object sender, DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs e)
|
|
{
|
|
if (e.RowHandle < 0)
|
|
{
|
|
return;
|
|
}
|
|
this.labelControl1.Focus();
|
|
|
|
//实际领料数量
|
|
if (e.Column.Name == "colREALITY_NUM")
|
|
{
|
|
decimal REALITY_NUM = Convert.ToDecimal(this.GVWorkingTask.GetFocusedRowCellValue("REALITY_NUM"));
|
|
decimal STAND_NUM = Convert.ToDecimal(GVWorkingTask.GetFocusedRowCellValue("STAND_NUM"));
|
|
decimal MAX_NUM = Convert.ToDecimal(GVWorkingTask.GetFocusedRowCellValue("MAX_NUM"));
|
|
|
|
if (REALITY_NUM < STAND_NUM || REALITY_NUM > MAX_NUM)
|
|
{
|
|
SystemCommon.ShowInfoMessageBox("请注意:" + Environment.NewLine + "您输入的实际领料数不合法,请重新输入!");
|
|
this.GVWorkingTask.SetFocusedRowCellValue("REALITY_NUM", GVWorkingTask.GetFocusedRowCellValue("MAX_NUM"));
|
|
}
|
|
}
|
|
//this.labelControl2.Focus();
|
|
//if (e.Column.Name == "colREALITY_DATE")
|
|
//{
|
|
// DateTime dtime = Convert.ToDateTime(this.GVWorkingTask.GetFocusedRowCellValue("REALITY_DATE"));
|
|
// DateTime dNow = DateTime.Now;
|
|
// if (dtime < dNow || dtime > dNow.AddDays(3))
|
|
// {
|
|
// SystemCommon.ShowInfoMessageBox("请注意:" + Environment.NewLine + "您选择的领料时间不合法,请重新选择!");
|
|
|
|
// this.GVWorkingTask.SetFocusedRowCellValue("REALITY_DATE", DateTime.Now);
|
|
// this.GVWorkingTask.RefreshData();
|
|
// return;
|
|
// }
|
|
//}
|
|
}
|
|
#endregion
|
|
|
|
|
|
#region 已废弃 单独绑定一行数据中的下拉列
|
|
private void GVWorkingTask_CustomRowCellEditForEditing(object sender, DevExpress.XtraGrid.Views.Grid.CustomRowCellEditEventArgs e)
|
|
{
|
|
// if (e.RowHandle < 0)
|
|
// {
|
|
// return;
|
|
// }
|
|
|
|
// if (e.Column.Name == "colREALITY_MAN")
|
|
// {
|
|
// WorkingTaskModel wm = new WorkingTaskModel();
|
|
// wm = this.GVWorkingTask.GetFocusedRow() as WorkingTaskModel;
|
|
// string strResult = string.Empty;
|
|
// if (wm != null && wm.GOODS_ID != null)
|
|
// {
|
|
|
|
// try
|
|
// {
|
|
// strResult = WebLockConfig.Instance.WebTeamUser.execTeamUserGetList(Newtonsoft.Json.JsonConvert.SerializeObject(plll));
|
|
// }
|
|
// catch (Exception)
|
|
// {
|
|
// //SystemCommon.ShowInfoMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们!");
|
|
// }
|
|
// }
|
|
// if (wm.GOODS_ID == plll.GOODS_ID)
|
|
// {
|
|
// e.RepositoryItem = lkpTeamUser;//当前单元格绑定控件
|
|
// lkpTeamUser.Properties.DataSource = Newtonsoft.Json.JsonConvert.DeserializeObject<DataTable>(strResult);
|
|
// }
|
|
// }
|
|
}
|
|
#endregion
|
|
|
|
#region 状态显示
|
|
private void GVPlan_CustomColumnDisplayText(object sender, DevExpress.XtraGrid.Views.Base.CustomColumnDisplayTextEventArgs e)
|
|
{
|
|
|
|
if (e.Column.FieldName == "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;
|
|
case "3":
|
|
e.DisplayText = "作废";
|
|
break;
|
|
default:
|
|
e.DisplayText = "";
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
#region 领料人改变事件
|
|
/// <summary>
|
|
/// 领料人下拉 改变GridView中数据
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
private void lkpTeamUsers_EditValueChanged(object sender, EventArgs e)
|
|
{
|
|
if (processPlanModel.STATUS == "1")
|
|
{
|
|
return;
|
|
}
|
|
if (this.GVWorkingTask.FocusedRowHandle > -1)
|
|
{
|
|
|
|
foreach (WorkingTaskModel item in wtasklist)
|
|
{
|
|
item.REALITY_MAN = this.lkpTeamUsers.EditValue.ToString();
|
|
item.REALITY_MAN_NAME = this.lkpTeamUsers.Text;
|
|
}
|
|
}
|
|
this.GVWorkingTask.RefreshData();
|
|
}
|
|
#endregion
|
|
|
|
#region 领料时间改变事件
|
|
private void dateGet_EditValueChanged(object sender, EventArgs e)
|
|
{
|
|
if (!string.IsNullOrEmpty(dateGet.EditValue.ToString()))
|
|
{
|
|
foreach (WorkingTaskModel item in wtasklist)
|
|
{
|
|
item.REALITY_DATE = Convert.ToDateTime(this.dateGet.EditValue.ToString());
|
|
}
|
|
|
|
}
|
|
this.GVWorkingTask.RefreshData();
|
|
}
|
|
#endregion
|
|
}
|
|
}
|