using Gs.DevApp.Entity;
using Gs.DevApp.ToolBox;
using Gs.DevApp.UserControl;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Data;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace Gs.DevApp.DevFrm
{
public partial class Frm_WwClDj : DevExpress.XtraEditors.XtraForm
{
///
/// 超领和补料单是同一个
///
string _webServiceName = "WWBLDJManager/";
List _filterList = new List();
public Frm_WwClDj()
{
InitializeComponent();
this.toolBarMenu1.btnLoadClick += ToolBarMenu1_btnLoadClick;
this.toolBarMenu1.btnEscClick += ToolBarMenu1_btnEscClick;
this.toolBarMenu1.btnQueryClick += ToolBarMenu1_btnQueryClick;
toolBarMenu1.btnChkClick += ToolBarMenu1_btnChkClick;
toolBarMenu1.btnFChkClick += ToolBarMenu1_btnFChkClick;
Gs.DevApp.ToolBox.UtilityHelper.SetGridViewParameter(gridView1, picCheckBox, this, "statusChk", "", (value) =>
{
Gs.DevApp.ToolBox.UtilityHelper.JumpTab(xtraTabControl1, 0);
});
Gs.DevApp.ToolBox.UtilityHelper.SetTabParameter(gridView1, xtraTabControl1, pageBar1, (value) =>
{
getModel(value);
}, (value) =>
{
getPageList(this.pageBar1.CurrentPage);
});
getPageList(1);
pageBar1.PagerEvent += PageBar1_PagerEvent;
depot_id.getSuppler("");
}
private void GridView1_ColumnFilterChanged(object sender, EventArgs e)
{
_filterList = Gs.DevApp.ToolBox.UtilityHelper.GetDilter(gridView1.Columns);
Task.Delay(100);
getPageList(1);
}
///
/// 分页事件
///
///
///
private void PageBar1_PagerEvent(int curPage, int pageSize)
{
getPageList(curPage);
}
///
/// 查询事件
///
///
///
private void ToolBarMenu1_btnQueryClick(object sender, EventArgs e)
{
gridView1.ColumnFilterChanged -= GridView1_ColumnFilterChanged;
gridView1.ActiveFilter.Clear();
gridView1.ColumnFilterChanged += GridView1_ColumnFilterChanged;
var frm = new ShowFilter(gridView1.Columns, _filterList);
frm.UpdateParent += Frm_UpdateParent;
frm.ShowDialog();
}
///
/// 查询回调
///
///
///
private void Frm_UpdateParent(object sender, UpdateParentEventArgs e)
{
_filterList = e.FilterList;
getPageList(1);
}
///
/// 审核事件
///
///
///
private void ToolBarMenu1_btnChkClick(object sender, EventArgs e)
{
_toolCk(1);
}
///
/// 反审核
///
///
///
///
private void ToolBarMenu1_btnFChkClick(object sender, EventArgs e)
{
_toolCk(0);
}
///
/// 取消事件
///
///
///
private void ToolBarMenu1_btnEscClick(object sender, EventArgs e)
{
Gs.DevApp.ToolBox.UtilityHelper.JumpTab(xtraTabControl1, 1);
}
///
/// 刷新事件
///
///
///
private void ToolBarMenu1_btnLoadClick(object sender, EventArgs e)
{
if (xtraTabControl1.SelectedTabPageIndex == 1)
getModel(lbGuid.Text.Trim());
else
{
_filterList.Clear();
if (gridView1.ActiveFilter.Count > 0)
{
gridView1.ColumnFilterChanged -= GridView1_ColumnFilterChanged;
gridView1.ActiveFilter.Clear();
gridView1.ColumnFilterChanged += GridView1_ColumnFilterChanged;
}
getPageList(1);
}
}
///
///
///
/// 第几页
/// 每页几条
private void getPageList(int curPage)
{
var _sbSqlWhere = UtilityHelper.GetSearchWhere(_filterList);
PageQueryModel pgq = new PageQueryModel(curPage, this.pageBar1.RowsCount, "item_out_no", "asc", "", _sbSqlWhere.ToString());
string json = JsonConvert.SerializeObject(pgq);
try
{
string strReturn = UtilityHelper.HttpPost("", _webServiceName + "GetListPage", json);
ReturnModel dd = UtilityHelper.ReturnToTablePage(strReturn);
if (dd.rtnCode > 0)
{
DataTable dt = dd.rtnData.list;
gcMain.BindingContext = new BindingContext();
gridView1.ColumnFilterChanged -= GridView1_ColumnFilterChanged;
if (dt.Rows.Count > 0)
{
gcMain.DataSource = dt;
gcMain.ForceInitialize();
}
else
UtilityHelper.SetDefaultTable(gcMain, gridView1);
gridView1.ColumnFilterChanged += GridView1_ColumnFilterChanged;
pageBar1.TotalPages = dd.rtnData.pages;//总页
pageBar1.CurrentPage = curPage;//当前页
pageBar1.RecordCount = dd.rtnData.total;//总记录数
}
else
{
ToolBox.MsgHelper.ShowError("提示:" + dd.rtnMsg);
}
}
catch (Exception ex)
{
ToolBox.MsgHelper.Warning("提示:" + ex.Message);
}
}
private void getModel(string strGuid)
{
bool isEdit = false;
if (toolBarMenu1.currentAction == "add") return;
if (toolBarMenu1.currentAction == "edit") isEdit = true;
if (string.IsNullOrEmpty(strGuid))
{
ToolBox.MsgHelper.Warning("请先选择你要操作的行!");
return;
}
var _obj = new
{
guid = strGuid,//主建
};
try
{
string strJson = UtilityHelper.HttpPost("", _webServiceName + "GetModel", JsonConvert.SerializeObject(_obj));
ReturnModel _rtn = ToolBox.UtilityHelper.ReturnToDynamic(strJson);
if (_rtn.rtnCode > 0)
{
dynamic dy = _rtn.rtnData;
lbGuid.Text = strGuid;
List gvList = new List();
gvList.Add(gvMx1);
gvList.Add(gvMx2);
UtilityHelper.SetValueByObj(this.panel1.Controls, dy, isEdit, gvList);
JObject _job = JObject.Parse(strJson);
JArray array = new JArray();
foreach (var a in _job["rtnData"]["list"])
{
array.Add(a);
}
DataTable dt = JsonConvert.DeserializeObject(array.ToString());
if (dt.Rows.Count > 0)
{
gcMx1.BindingContext = new BindingContext();
gcMx1.DataSource = dt;
gcMx1.ForceInitialize();
}
else
{
Gs.DevApp.ToolBox.UtilityHelper.SetDefaultTable(gcMx1, gvMx1);
}
JArray array1 = new JArray();
foreach (var a in _job["rtnData"]["list2"])
{
array1.Add(a);
}
DataTable dt1 = JsonConvert.DeserializeObject(array1.ToString());
if (dt1.Rows.Count > 0)
{
gcMx2.BindingContext = new BindingContext();
gcMx2.DataSource = dt1;
gcMx2.ForceInitialize();
}
else
{
Gs.DevApp.ToolBox.UtilityHelper.SetDefaultTable(gcMx2, gvMx2);
}
}
else
ToolBox.MsgHelper.Warning("提示:" + _rtn.rtnMsg);
}
catch (Exception ex)
{
ToolBox.MsgHelper.Warning("提示:" + ex.Message);
}
}
private void repositoryItemButtonEdit1_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
{
gvMx2.CloseEditor();
gvMx2.UpdateCurrentRow();
var rowhandle = gvMx2.FocusedRowHandle;
if (rowhandle < 0)
return;
if (e.Button.Index == 0)
{
var dr = gvMx2.GetDataRow(rowhandle);
var mxGuid = dr["guid"].ToString();
if (!MsgHelper.AskQuestion("你选择了1条数据,确定删除吗?"))
return;
if (string.IsNullOrEmpty(mxGuid))
{
gvMx2.DeleteRow(rowhandle);
return;
}
var strJson = "";
var lst = new List();
lst.Add(mxGuid);
try
{
strJson = UtilityHelper.HttpPost("",
_webServiceName + "DeleteModelMx2",
JsonConvert.SerializeObject(lst));
var _rtn = UtilityHelper.ReturnToDynamic(strJson);
if (_rtn.rtnCode > 0) getModel(lbGuid.Text);
MsgHelper.Warning("提示:" + _rtn.rtnMsg);
}
catch (Exception ex)
{
MsgHelper.Warning("提示:" + ex.Message);
}
}
}
///
/// 工具条事件
///
///
private void _toolCk(int _inFieldValue)
{
string strMsg = "";
switch (_inFieldValue)
{
case 1:
strMsg = "审核";
break;
case 0:
strMsg = "反审核";
break;
};
toolBarMenu1.guidKey = "";
string rowGuid, rowName;
(rowGuid, rowName) = UtilityHelper.GetCurrentRow(xtraTabControl1, lbGuid, txt_itemOutNo, gridView1, "billNo");
if (string.IsNullOrEmpty(rowGuid))
{
MsgHelper.Warning("请先选择你要操作的行!");
return;
}
if (!MsgHelper.AskQuestion("你选择了【" + rowName + "】,确定" + strMsg + "吗?"))
return;
var _obj = new
{
guid = rowGuid,
inFieldValue = _inFieldValue,
};
try
{
var strJson = UtilityHelper.HttpPost("",
_webServiceName + "EditModelSubmit",
JsonConvert.SerializeObject(_obj));
var _rtn = UtilityHelper.ReturnToDynamic(strJson);
MsgHelper.Warning(_rtn.rtnData.outMsg.ToString());
if (_rtn.rtnCode > 0)
{
if (xtraTabControl1.SelectedTabPageIndex == 1)
getModel(lbGuid.Text.Trim());
else
getPageList(this.pageBar1.CurrentPage);
}
}
catch (Exception ex)
{
MsgHelper.Warning("提示:" + ex.Message);
}
}
}
}