using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading; using System.Threading.Tasks; using System.Windows.Forms; using WMS.Business; using WMS.Business.CK; using WMS.Business.SC; using WMS.Common; using WMS.Ctrl; using WMS.Frm.Base; using WMS.Model.Base; using WMS.Model.CK; using WMS.Model.SC; namespace WMS.FrmSC { public partial class FrmScPlan : FormBase { public FrmScPlan() { InitializeComponent(); } private void gridControlCustom4_Click(object sender, EventArgs e) { } /// /// 通知单物料明细实体集合 /// public List or_det_List = new List(); string orderId = ""; private void gridView4_RowClick(object sender, DevExpress.XtraGrid.Views.Grid.RowClickEventArgs e) { if (gridView4.RowCount == 0) { return; } orderId = gridView4.GetFocusedRowCellValue("ORDER_ID").ToString(); BindDetailData(orderId); } /// /// 审核 /// public void Audit() { string orderId = ""; string sts = ""; IBussFactory.Instance().UpdateStsScPlan(orderId, sts); } private void gridView5_RowCellClick(object sender, DevExpress.XtraGrid.Views.Grid.RowCellClickEventArgs e) { } OrdersModel or_Model = new OrdersModel(); List or_List = new List(); #region 绑定通知单 void BindPlanData() { ProcessPlanModel planModel = new ProcessPlanModel(); List planList = IBussFactory.Instance().GetScPlanList(planModel); if (planList != null) { bs_jh.DataSource = planList; if (planList.Count > 0) { string planId = planList[0].PLAN_ID; BindPlanGoods(planId); } } } /// /// 绑定通知单 /// public void BindData() { LoadForm load = new LoadForm(); DevExpress.XtraSplashScreen.SplashScreenManager.ShowForm(load, load.GetType(), false, true, false, 70); DevExpress.XtraSplashScreen.SplashScreenManager.Default.SetWaitFormDescription("数据加载中..."); BindPlanData(); new Thread(delegate () { try { or_Model.CREATE_DATE = System.DateTime.Now.AddDays(-15); or_Model.STATUS = "0"; if(CkorderId.Trim().Length>0) { or_Model.ORDER_ID = CkorderId; } or_List = IBussFactory.Instance().GetOrders(or_Model); if (or_List != null) { bs_Orders.DataSource = or_List; } } catch (Exception ex) { SystemCommon.ShowInfoMessageBox("网络连接错误!"); } this.Invoke(new MethodInvoker(delegate () { if (or_List != null) { if (or_List.Count > 0) { string orderId = or_List[0].ORDER_ID; gdvScPlan.FocusedRowHandle = 0; BindDetailData(orderId); } // } if (DevExpress.XtraSplashScreen.SplashScreenManager.ActivateParentOnSplashFormClosing) DevExpress.XtraSplashScreen.SplashScreenManager.CloseForm(); })); }).Start(); } #endregion #region 绑定通知单明细 /// /// 绑定通知单明细 /// public void BindDetailData(string orderID) { try { OrderDetailModel or_det_Model = new OrderDetailModel(); or_det_Model.ORDER_ID = orderID; or_det_List = IBussFactory.Instance().GetOrderDetail(or_det_Model); if (or_det_List != null) { bindingSource1.DataSource = or_det_List; } } catch (Exception ex) { SystemCommon.ShowInfoMessageBox("网络连接错误!"); } } #endregion public string CkorderId = ""; private void FrmScPlan_Load(object sender, EventArgs e) { BindData(); bs_Select.DataSource = listDetailModel; dateBeg.DateTime = System.DateTime.Now; dateEnd.DateTime = System.DateTime.Now.AddDays(2); } private void gridView5_RowClick(object sender, DevExpress.XtraGrid.Views.Grid.RowClickEventArgs e) { string sBool = gridView5.GetFocusedRowCellValue("IsCheck").ToString(); } List listPlan = new List(); /// ///选择单据 /// List listDetailModel = new List(); OrderDetailModel deTail = new OrderDetailModel(); private void gridView5_CellValueChanging(object sender, DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs e) { if (e.Column.FieldName == "IsCheck") { OrderDetailModel googdsID = gridView5.GetFocusedRow() as OrderDetailModel; string goodsId = googdsID.GOOD_ID; string orderID = googdsID.ORDER_ID; if (e.Value.ToString() == "True") { if (listDetailModel.Count(r => r.GOOD_ID == goodsId && r.ORDER_ID == orderID) == 0) { listDetailModel.Add(googdsID); } } else { listDetailModel.Remove(googdsID); } if (listDetailModel != null) { bs_Select.DataSource = listDetailModel; gdv_Goods.RefreshData(); } } } private void bindingSource2_CurrentChanged(object sender, EventArgs e) { } /// /// 删除选择明细 /// /// /// private void ctrlButtons5_Click(object sender, EventArgs e) { if (listDetailModel == null) { return; } if (listDetailModel.Count == 0) { return; } listDetailModel.Remove(deTail); gdv_Goods.RefreshData(); } private void gdv_Goods_RowClick(object sender, DevExpress.XtraGrid.Views.Grid.RowClickEventArgs e) { if (listDetailModel == null) { return; } if (listDetailModel.Count == 0) { return; } deTail = gdv_Goods.GetFocusedRow() as OrderDetailModel; // t_num.Text = deTail.GOODS_NUM.ToString(); } List listProess = new List(); private void ctrlButtons4_Click(object sender, EventArgs e) { if (listDetailModel == null) { return; } if (listDetailModel.Count == 0) { return; } gdv_Goods.CloseEditor(); gdv_Goods.UpdateCurrentRow(); for (int i = 0; i < listDetailModel.Count; i++) { if (listDetailModel[i].NOWNUM == 0) { SystemCommon.ShowInfoMessageBox("数量不能为0"); gdv_Goods.FocusedRowHandle = i; this.gdv_Goods.FocusedColumn = this.gdmNum;//某一列 return; } } listProess.Clear(); listProess = IBussFactory.Instance().GetScPlanData(listDetailModel); if (listProess != null) { bs_jhInfo.DataSource = listProess; } } private void ctr_goods_Button_Click(object sender, EventArgs e) { DataTable tb = ctr_goods.SelectTable; if (tb != null) { if (tb.Rows.Count > 0) { List listGoodsInfoModel = ConvertHelper.ConvertToList(ctr_goods.SelectTable); if (listGoodsInfoModel != null) { foreach (GoodsInfoModel infoModel in listGoodsInfoModel) { OrderDetailModel prderModel = new OrderDetailModel(); prderModel.GOOD_ID = infoModel.GOODS_ID; prderModel.Good_name = infoModel.GOODS_NAME; prderModel.GOODS_NUM = 0; prderModel.ORDER_ID = ""; listDetailModel.Add(prderModel); } bs_Select.DataSource = listDetailModel; } } } } private void ctrlButtons2_Click(object sender, EventArgs e) { List goodsProessList = new List(); if (listProess == null) { return; } if (listProess.Count == 0) { return; } foreach (GoodsMaterialModel goodsMode in listProess) { PlanGoodsModel planModel = new PlanGoodsModel(); planModel.GOODS_ID = goodsMode.GOODS_ID; if (planModel.GOODS_ID.Trim().Length == 0) { planModel.GOODS_ID = goodsMode.MATERIAL_ID; } planModel.NEED_NUM = goodsMode.NEED_NUM; planModel.GOODS_NUM = goodsMode.SC_NUM; planModel.MATERIAL_ID = goodsMode.MATERIAL_ID; planModel.OUT_NUM = goodsMode.OUT_NUM; planModel.NEED_NUM = goodsMode.NEED_NUM; planModel.LLSTS = goodsMode.REMARK; goodsProessList.Add(planModel); } string begDate = dateBeg.EditValue.ToString(); string endDate = dateEnd.EditValue.ToString(); string errtext = IBussFactory.Instance().AddPlanDataList(begDate, endDate, goodsProessList, userData.STORAGE_ID, userData.USER_ID, orderId); if(errtext.Trim().Length==0) { SystemCommon.ShowInfoMessageBox("任务生成成功"); orderId = ""; xtraTabControl1.SelectedTabPageIndex = 0; } } public override void Refresh() { BindPlanData(); } private void ctrlButtons3_Click(object sender, EventArgs e) { if (gdvScPlan.RowCount == 0) { return; } if (gdvScPlan.FocusedRowHandle < 0) { SystemCommon.ShowInfoMessageBox("选择要生产的订单!"); return; } string sts = gdvScPlan.GetFocusedRowCellValue("STATUS").ToString(); if (sts!="0") { SystemCommon.ShowInfoMessageBox("已经领料,不能重复生成任务"); return; } string planId = gdvScPlan.GetFocusedRowCellValue("PLAN_ID").ToString(); string err =IBussFactory.Instance().ExceOrderPlan(planId, userData.USER_ID); if(err.Trim().Length==0) { SystemCommon.ShowInfoMessageBox("领料任务成功"); BindData(); } } void BindPlanGoods(string planId) { PlanGoodsModel planGoods = new PlanGoodsModel(); planGoods.PLAN_ID = planId; List goodsPLan = IBussFactory.Instance().GetPlanGoodsList(planGoods); if (goodsPLan != null) { bindingSource2.DataSource = goodsPLan; // bindingSource2 } } void BindPlanInfoData(string orderID) { } private void gdvScPlan_RowClick(object sender, DevExpress.XtraGrid.Views.Grid.RowClickEventArgs e) { if (gdvScPlan.RowCount == 0) { return; } string planId = gdvScPlan.GetFocusedRowCellValue("PLAN_ID").ToString(); BindPlanGoods(planId); } private void ctrlButtons6_Click(object sender, EventArgs e) { if (gridView4.RowCount == 0) { return; } if (or_det_List.Count == 0) { return; } foreach (OrderDetailModel orderInfo in or_det_List) { orderInfo.NOWNUM = orderInfo.GOODS_NUM; } orderId = or_det_List[0].ORDER_ID; listDetailModel.AddRange(or_det_List); gdv_Goods.RefreshData(); xtraTabControl2.SelectedTabPageIndex = 1; } private void ctrlButtons1_Click(object sender, EventArgs e) { } private void gdvScPlan_CustomColumnDisplayText(object sender, DevExpress.XtraGrid.Views.Base.CustomColumnDisplayTextEventArgs e) { if (e.Column.FieldName == "STATUS") { if (e.Value != null) { switch (e.Value.ToString().Trim()) { case "0": e.DisplayText = "新增"; break; case "1": e.DisplayText = "领料成功"; break; case "2": e.DisplayText = "打印成功"; break; } } } } private void ctrlButtons7_Click(object sender, EventArgs e) { } } }