using DevExpress.XtraEditors; using Gs.DevApp.Entity; using Gs.DevApp.ToolBox; using Newtonsoft.Json; using System; using System.Collections.Generic; using System.Data; using System.Windows.Forms; namespace Gs.DevApp.UserControl { public partial class SelectCgMx : XtraForm { private readonly string _webServiceName = "MesInvItemArnManager/"; private string suppId = ""; private string receiveOrgId = ""; /// /// /// /// 供应商 /// 收料组织 /// 是否委外 public SelectCgMx(string _suppId, string _receiveOrgId) { InitializeComponent(); this.gridView1.CustomDrawColumnHeader += (s, e) => { Gs.DevApp.ToolBox.UtilityHelper.CustomDrawColumnHeader(s, e); }; this.gridView1.MouseUp += (s, e) => { Gs.DevApp.ToolBox.UtilityHelper.CustomMouseUp(s, e, gcMain, gridView1); }; this.colChkInt.OptionsColumn.AllowSort = DevExpress.Utils.DefaultBoolean.False; this.colChkInt.OptionsFilter.AllowAutoFilter = false; this.colChkInt.OptionsFilter.AllowFilter = false; this.colChkInt.OptionsFilter.AllowInHeaderSearch = DevExpress.Utils.DefaultBoolean.False; radioGroup1.SelectedIndex = 0; this.suppId = _suppId; this.receiveOrgId = _receiveOrgId; Gs.DevApp.ToolBox.UtilityHelper.SetGridViewParameter(gridView1, null, null, null, "", null, null, false); getPageList(1); btnIn.Click += (s, e) => { gridView1.PostEditor(); gridView1.UpdateCurrentRow(); var list = new List(); DataTable dt = this.gcMain.DataSource as DataTable; { foreach (DataRow dr in dt.Rows) { string checkBox = dr["chkInt"].ToString(); string _guid = dr["guid"].ToString(); if (Gs.DevApp.ToolBox.UtilityHelper.ToCheck(checkBox)) { list.Add(_guid); } } } UpdateParent?.Invoke(this, new UpdateParentEventArgs { StringList = list }); Close(); }; radioGroup1.SelectedIndexChanged += (s, e) => { getPageList(1); getPageListSrm(1); }; ///////// Gs.DevApp.ToolBox.UtilityHelper.SetGridViewParameter(gridView2, null, null, null, "", null, null, false); getPageListSrm(1); } /// /// 选择后的回调事件 /// public event EventHandler UpdateParent; /// /// /// 第几页 /// 每页几条 private void getPageList(int curPage) { var _obj = new { currentPage = curPage, everyPageSize = 999999, sortName = "", keyWhere = "", inBusType = (radioGroup1.SelectedIndex + 1),//1是采购,2是委外 inSupId = this.suppId,//供应商 inReceiveOrgId = this.receiveOrgId,//组织 }; var json = JsonConvert.SerializeObject(_obj); try { var strReturn = UtilityHelper.HttpPost("", _webServiceName + "SelectForm", json); var dd = UtilityHelper.ReturnToTablePage(strReturn); var dt = dd.rtnData.list; gcMain.BindingContext = new BindingContext(); gcMain.DataSource = dt; gcMain.ForceInitialize(); gridView1.BestFitColumns(); Gs.DevApp.ToolBox.UtilityHelper.SetGridLayout(gridView1); } catch (Exception ex) { MsgHelper.Warning("提示:" + ex.Message); } } #region SRM的列表和选择事件 /// /// /// 第几页 /// 每页几条 private void getPageListSrm(int curPage) { var _obj = new { currentPage = curPage, everyPageSize = 999999, sortName = "", keyWhere = "", inBusType = (radioGroup1.SelectedIndex + 1),//1是采购,2是委外 inSupId = this.suppId,//供应商 inReceiveOrgId = this.receiveOrgId,//组织 }; var json = JsonConvert.SerializeObject(_obj); try { var strReturn = UtilityHelper.HttpPost("", "MesInvItemArnManager/SelectSrm", json); var dd = UtilityHelper.ReturnToTablePage(strReturn); if (dd.rtnCode > 0) { DataTable dt = dd.rtnData.list; gridControl2.BindingContext = new BindingContext(); if (dt.Rows.Count > 0) { gridControl2.DataSource = dt; gridControl2.ForceInitialize(); gridView2.BestFitColumns(); Gs.DevApp.ToolBox.UtilityHelper.SetGridLayout(gridView2); } else UtilityHelper.SetDefaultTable(gridControl2, gridView2); } else { ToolBox.MsgHelper.ShowError("提示:" + dd.rtnMsg); } } catch (Exception ex) { MsgHelper.Warning("提示:" + ex.Message); } } private void rptSrm_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e) { var rowhandle = gridView2.FocusedRowHandle; if (rowhandle < 0) return; if (e.Button.Index == 0) { var dr = gridView2.GetDataRow(rowhandle); var mxGuid = dr["deliveryNo"].ToString(); if (string.IsNullOrEmpty(mxGuid)) { return; } var list = new List(); list.Add(new { guid = mxGuid, receiveOrgId = dr["receiveOrgId"].ToString(), suppId = dr["suppId"].ToString(), suppName = dr["suppName"].ToString(), }); UpdateParent?.Invoke(this, new UpdateParentEventArgs { DynamicList = list }); Close(); } } #endregion } }