| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525 |
- using Core.Mes.Client.Comm.Control;
- using Core.Mes.Client.Comm.Tool;
- using Infragistics.Win.UltraWinGrid;
- using Pur.Entity;
- using Pur.Entity.configureEntity;
- using Pur.PublicTools;
- using System;
- using System.Collections;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.Windows.Forms;
- namespace Pur.balance
- {
- public partial class FrmBalanceCheck_FG : FrmPmsBase
- {
- public FrmBalanceCheck_FG()
- {
- InitializeComponent();
- }
- protected override void OnLoad(EventArgs e)
- {
- base.OnLoad(e);
- //ultraGrid1.DisplayLayout.Override.RowSelectors = Infragistics.Win.DefaultableBoolean.False;//不显示行头
- ultraGrid1.DisplayLayout.Override.AllowRowFiltering = Infragistics.Win.DefaultableBoolean.False;//不默认加载筛选条件框
- ultraGrid2.DisplayLayout.Override.AllowRowFiltering = Infragistics.Win.DefaultableBoolean.False;
- }
- private void FrmBalanceCheck_FG_Load(object sender, EventArgs e)
- {
- dateBegin.Value = dateEnd.DateTime.AddDays(-7);
- InitColumns();
- SetSumCount();
- InitBindBox();
- }
- private void InitColumns()
- {
- string[] arrColumnsDetail = new string[] { "CHK", "IN_STOCK_NO", "MATCHID", "SUPP_CODE", "SUPP_NAME", "CAR_NUM", "ITEM_CODE", "ITEM_NAME", "ATTR_CODE", "ATTR_NAME", "GROSS_QTY", "TARE_QTY", "NET_QTY", "KZ_QTY", "KZ_NET_QTY", "KJT_QTY", "KCC_QTY", "KQB_QTY", "INV_QTY", "SUTTLETIME", "REMARK", "STATUS" };//MATCHID磅单号
- string[] arrColumnsCaptionDetail = new string[] { "选择", "入库单号", "磅单号", "供应商", "供应商", "车号", "物料编码", "物料名称", "料型(规格)", "料型(规格)", "毛重", "皮重", "净重", "扣杂", "扣杂净重", "扣机铁", "扣超长", "扣轻薄", "料型净重", "净重时间", "备注", "状态" };
- PublicPur.InitColumns(arrColumnsDetail, arrColumnsCaptionDetail, dataTable1, ultraGrid1, new string[] { "MATCHID", "SUPP_CODE", "ITEM_CODE", "ATTR_NAME", "KZ_NET_QTY", "INV_QTY", "STATUS" }, false, new string[] { "CHK", "ATTR_CODE", "GROSS_QTY", "TARE_QTY", "KZ_QTY", "KJT_QTY", "KCC_QTY", "KQB_QTY" });
- PublicPur.InitColumns(arrColumnsDetail, arrColumnsCaptionDetail, dataTable2, ultraGrid2, new string[] { "MATCHID", "SUPP_CODE", "ITEM_CODE", "ATTR_CODE", "STATUS" }, false, new string[] { "CHK" });
- PublicPur.InitCellPositionRight(new UltraGrid[] { ultraGrid1, ultraGrid2 }, new string[] { "GROSS_QTY", "TARE_QTY", "NET_QTY", "KZ_QTY", "KZ_NET_QTY", "KJT_QTY", "KCC_QTY", "KQB_QTY", "INV_QTY" });
- PublicPur.InitColumnShowLength(new UltraGrid[] { ultraGrid1, ultraGrid2 }, 0, new string[] { "GROSS_QTY", "TARE_QTY", "NET_QTY", "KZ_QTY", "KZ_NET_QTY", "KJT_QTY", "KCC_QTY", "KQB_QTY", "INV_QTY" }, 4, false);
- }
- //设置统计风格
- private void SetSumCount()
- {
- PublicPur.SetupSummaryHeade(new String[] { "Count", "Sum", "Sum", "Sum", "Sum", "Sum", "Sum", "Sum", "Sum", "Sum" }, new String[] { "共{0}条", "{0}", "{0}", "{0}", "{0}", "{0}", "{0}", "{0}", "{0}", "{0}" }, new string[] { "IN_STOCK_NO", "GROSS_QTY", "TARE_QTY", "NET_QTY", "KZ_QTY", "KZ_NET_QTY", "KJT_QTY", "KCC_QTY", "KQB_QTY", "INV_QTY" }, this.ultraGrid1.DisplayLayout.Bands[0], SummaryDisplayAreas.BottomFixed);
- PublicPur.SetupSummaryHeade(new String[] { "Count", "Sum", "Sum", "Sum", "Sum", "Sum", "Sum", "Sum", "Sum", "Sum" }, new String[] { "共{0}条", "{0}", "{0}", "{0}", "{0}", "{0}", "{0}", "{0}", "{0}", "{0}" }, new string[] { "IN_STOCK_NO", "GROSS_QTY", "TARE_QTY", "NET_QTY", "KZ_QTY", "KZ_NET_QTY", "KJT_QTY", "KCC_QTY", "KQB_QTY", "INV_QTY" }, this.ultraGrid2.DisplayLayout.Bands[0], SummaryDisplayAreas.BottomFixed);
- }
- private void InitBindBox()
- {
- QuerySUPP_NAME();
- QueryATTR_CODE();
- ultraGrid1.DisplayLayout.Bands[0].Columns["ATTR_CODE"].EditorComponent = ultraATTR_CODE;
- ultraGrid1.DisplayLayout.Bands[0].Columns["ATTR_CODE"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList;
- }
- //菜单按钮事件
- public override void ToolBar_Click(object sender, string ToolbarKey)
- {
- switch (ToolbarKey)
- {
- case "Query":
- string sql = "";
- if (ultraTabControl1.SelectedTab.Index == 0)
- {
- sql = " AND T.RESULT IS NULL";
- QueryCkInBillRecord_FG(sql);
- }
- else if (ultraTabControl1.SelectedTab.Index == 1)
- {
- sql = " AND T.RESULT IS NOT NULL";
- QueryCkInBillRecord_FG(sql);
- }
- break;
- case "Confirm"://确认编制结算单
- if (ultraTabControl1.SelectedTab.Index == 0)
- {
- ConfirmBalanceInBill();
- }
- break;
- case "Cancel"://取消编制结算单
- CancelBalanceInBill();
- break;
- case "Print"://打印
- break;
- case "Export"://导出
- ExportBalanceInBill();
- break;
- case "Close":
- if (MessageUtil.ShowYesNoAndQuestion("是否确认关闭页面?") == DialogResult.Yes)
- {
- this.Close();
- }
- break;
- }
- }
- private void ExportBalanceInBill()
- {
- ArrayList alUltraGrid = new ArrayList();//需要导出的GRID
- ArrayList alSheeft = new ArrayList();//Sheeft名称
- if (ultraTabControl1.SelectedTab.Index == 0)
- {
- alUltraGrid.Add(ultraGrid1);
- alSheeft.Add("废钢入库信息");
- if (ultraGrid1.Rows.Count == 0)
- {
- return;
- }
- }
- else if (ultraTabControl1.SelectedTab.Index == 1)
- {
- alUltraGrid.Add(ultraGrid2);
- alSheeft.Add("废钢入库信息");
- if (ultraGrid2.Rows.Count == 0)
- {
- return;
- }
- }
- GridHelper.ulGridToExcel(alUltraGrid, alSheeft, dateBegin.DateTime.ToString("yyyyMM") + "废钢入库信息");//导出excel
- }
- private void QueryCkInBillRecord_FG(string strCondition)
- {
- try
- {
- dataTable1.Rows.Clear();
- ArrayList arrayList = new ArrayList();
- if (chkDate.Checked)
- {
- arrayList.Add(dateBegin.DateTime.ToShortDateString() + " 00:00:00");
- arrayList.Add(dateEnd.DateTime.ToShortDateString() + " 23:59:59");
- }
- else
- {
- arrayList.Add("0001/01/01 00:00:00");
- arrayList.Add("9999/12/31 23:59:59");
- }
- if (chkSUPP_NAME.Checked)
- {
- arrayList.Add(ultraQuerySUPP_NAME.Text.Trim());
- arrayList.Add(ultraQuerySUPP_NAME.Text.Trim());
- arrayList.Add(ultraQuerySUPP_NAME.Text.Trim());
- }
- else
- {
- arrayList.Add("");
- arrayList.Add("");
- arrayList.Add("");
- }
- DataTable dt = PublicServer.GetData("com.hnshituo.pur.balance.service.impl.FrmBalanceCheck_FG.QueryCkInBillRecord_FG",
- new Object[] { arrayList, strCondition }, ob);
- if (dt == null || dt.Rows.Count == 0)
- {
- if (ultraTabControl1.SelectedTab.Index == 0)
- {
- dataTable1.Rows.Clear();
- }
- else if (ultraTabControl1.SelectedTab.Index == 1)
- {
- dataTable2.Rows.Clear();
- }
- return;
- }
- if (ultraTabControl1.SelectedTab.Index == 0)
- {
- GridHelper.CopyDataToDatatable(dt, dataTable1, true);//把dt复制给dataTable1
- PublicPur.RefreshAndAutoSizeColumns(ultraGrid1, new string[] { "ATTR_CODE" }, false);//刷新Grid
- }
- else if (ultraTabControl1.SelectedTab.Index == 1)
- {
- GridHelper.CopyDataToDatatable(dt, dataTable2, true);//把dt复制给dataTable2
- GridHelper.RefreshAndAutoSize(ultraGrid2);
- }
- }
- catch (Exception e)
- {
- MessageUtil.ShowWarning(e.Message);
- return;
- }
- }
- //查询供应商
- private void QuerySUPP_NAME()
- {
- try
- {
- DataTable dt = PublicServer.GetData("com.hnshituo.pur.balance.service.impl.FrmBalanceBillManage.QuerySUPP_NAME",
- new Object[] { }, ob);
- if (dt == null || dt.Rows.Count == 0)
- {
- return;
- }
- DataRow dr = dt.NewRow();
- dr[0] = "";
- dt.Rows.InsertAt(dr, 0);
- ultraQuerySUPP_NAME.DataSource = dt;
- ultraQuerySUPP_NAME.DisplayMember = "SUPP_NAME";
- ultraQuerySUPP_NAME.ValueMember = "SUPP_CODE";
- }
- catch (Exception e)
- {
- MessageUtil.ShowWarning(e.Message);
- return;
- }
- }
- //查询供应商
- private void QueryATTR_CODE()
- {
- try
- {
- DataTable dt = PublicServer.GetData("com.hnshituo.pur.balance.service.impl.FrmBalanceCheck_FG.QueryATTR_CODE",
- new Object[] { }, ob);
- if (dt == null || dt.Rows.Count == 0)
- {
- return;
- }
- DataRow dr = dt.NewRow();
- dr[0] = "";
- dt.Rows.InsertAt(dr, 0);
- ultraATTR_CODE.DataSource = dt;
- ultraATTR_CODE.DisplayMember = "ATTR_NAME";
- ultraATTR_CODE.ValueMember = "ATTR_CODE";
- }
- catch (Exception e)
- {
- MessageUtil.ShowWarning(e.Message);
- return;
- }
- }
- private void ConfirmBalanceInBill()
- {
- try
- {
- if (ultraTabControl1.SelectedTab.Index != 0)
- {
- MessageUtil.ShowTips("只有选择了入库记录页才能进行验质操作!");
- return;
- }
- if (dataTable1.Rows.Count == 0)
- {
- return;
- }
- ultraGrid1.UpdateData();
- DataRow[] arr = dataTable1.Select("CHK = 'True' AND ATTR_CODE IS NOT NULL");
- if (arr.Length == 0)
- {
- MessageUtil.ShowTips("请至少勾选一条入库记录进行验质操作!");
- return;
- }
- if (MessageUtil.ShowYesNoAndQuestion("是否确认对此记录验质?") == DialogResult.Yes)
- {
- string userId = UserInfo.GetUserID();
- string user = UserInfo.GetUserName();
- string strDate = DateTime.Now.ToString();
- ArrayList all = new ArrayList();
- ArrayList alBase = new ArrayList();//盘盈盘亏记录表
- ArrayList alBaseParams = new ArrayList();
- ArrayList alCk = new ArrayList();//库存记录表
- ArrayList alCkParams = new ArrayList();
- ArrayList alCkUpdate = new ArrayList();//库存记录表
- ArrayList alCkUpdateParams = new ArrayList();
- foreach (DataRow dr in arr)
- {
- if (dr["ATTR_CODE"].ToString() != "")
- {
- alCkParams = new ArrayList();
- alCkParams.Add(dr["ATTR_CODE"].ToString());//料型
- alCkParams.Add(dr["KZ_QTY"].ToString());
- alCkParams.Add(dr["KJT_QTY"].ToString());
- alCkParams.Add(dr["KCC_QTY"].ToString());
- alCkParams.Add(dr["KQB_QTY"].ToString());
- alCkParams.Add(userId);//创建人
- alCkParams.Add(user);//创建人
- alCkParams.Add(dr["IN_STOCK_NO"].ToString());//入库单号
- alCk.Add(alCkParams);
- }
- }
- if (alCk.Count == 0)
- {
- return;
- }
- //all.Add(alBase);
- all.Add(alCk);
- //all.Add(alCkUpdate);
- PublicServer.SetData("com.hnshituo.pur.balance.service.impl.FrmBalanceCheck_FG.ConfirmBalanceInBill_FG",
- new Object[] { all }, ob);
- QueryCkInBillRecord_FG(" AND T.RESULT IS NULL");
- MessageUtil.ShowTips("验质成功!");
- }
- }
- catch (Exception e)
- {
- MessageUtil.ShowWarning(e.Message);
- return;
- }
- }
- private void QueryBalanceInBillRecord()
- {
- try
- {
- ArrayList arrayList = new ArrayList();
- if (chkDate.Checked)
- {
- arrayList.Add(dateBegin.DateTime.ToShortDateString() + " 00:00:00");
- arrayList.Add(dateEnd.DateTime.ToShortDateString() + " 23:59:59");
- }
- else
- {
- arrayList.Add("0001/01/01 00:00:00");
- arrayList.Add("9999/12/31 23:59:59");
- }
- if (chkSUPP_NAME.Checked)
- {
- arrayList.Add(ultraQuerySUPP_NAME.Text.Trim());
- arrayList.Add(ultraQuerySUPP_NAME.Text.Trim());
- arrayList.Add(ultraQuerySUPP_NAME.Text.Trim());
- }
- else
- {
- arrayList.Add("");
- arrayList.Add("");
- arrayList.Add("");
- }
- DataTable dt = PublicServer.GetData("com.hnshituo.pur.balance.service.impl.FrmBalanceBillManage.QueryBalanceInBillRecord_FG",
- new Object[] { arrayList }, ob);
- if (dt == null || dt.Rows.Count == 0)
- {
- dataTable1.Rows.Clear();
- dataTable1.Rows.Clear();
- return;
- }
- GridHelper.CopyDataToDatatable(dt, dataTable1, true);//把dt复制给dataTable1
- GridHelper.RefreshAndAutoSize(ultraGrid1);
- }
- catch (Exception e)
- {
- MessageUtil.ShowWarning(e.Message);
- return;
- }
- }
- private void CancelBalanceInBill()
- {
- try
- {
- if (ultraTabControl1.SelectedTab.Index != 1)
- {
- MessageUtil.ShowTips("只有选择了已验质页才能进行取消操作!");
- return;
- }
- if (ultraGrid2.ActiveRow == null || dataTable2.Rows.Count == 0)
- {
- return;
- }
- if (ultraGrid2.ActiveRow.Cells["STATUS"].Text.Trim() != "0")
- {
- MessageUtil.ShowTips("此记录已入库不能取消改变验质结果!");
- return;
- }
- ultraGrid2.UpdateData();
- DataRow[] arr = dataTable2.Select("CHK = 'True'");
- if (arr.Length == 0 || arr.Length > 1)
- {
- MessageUtil.ShowTips("请勾选一条验质记录进行取消操作!");
- return;
- }
- if (MessageUtil.ShowYesNoAndQuestion("是否确认对此记录取消验质?") == DialogResult.Yes)
- {
- string userId = UserInfo.GetUserID();
- string user = UserInfo.GetUserName();
- string strDate = DateTime.Now.ToString();
- ArrayList all = new ArrayList();
- ArrayList alBase = new ArrayList();//盘盈盘亏记录表
- ArrayList alBaseParams = new ArrayList();
- ArrayList alCk = new ArrayList();//库存记录表
- ArrayList alCkParams = new ArrayList();
- ArrayList alCkUpdate = new ArrayList();//库存记录表
- ArrayList alCkUpdateParams = new ArrayList();
- string strIN_STOCK_NO = ultraGrid2.ActiveRow.Cells["IN_STOCK_NO"].Text.Trim();
- foreach (DataRow dr in arr)
- {
- alCkParams = new ArrayList();
- alCkParams.Add("");//料型
- alCkParams.Add("");
- alCkParams.Add("");
- alCkParams.Add("");
- alCkParams.Add("");
- alCkParams.Add("");//创建人
- alCkParams.Add("");//创建人
- alCkParams.Add(dr["IN_STOCK_NO"].ToString());//入库单号
- alCk.Add(alCkParams);
- }
- //all.Add(alBase);
- all.Add(alCk);
- //all.Add(alCkUpdate);
- PublicServer.SetData("com.hnshituo.pur.balance.service.impl.FrmBalanceCheck_FG.CancelBalanceInBill",
- new Object[] { all, strIN_STOCK_NO }, ob);
- QueryCkInBillRecord_FG(" AND T.RESULT IS NOT NULL");
- MessageUtil.ShowTips("验质记录撤销成功!");
- }
- }
- catch (Exception e)
- {
- MessageUtil.ShowWarning(e.Message);
- return;
- }
- }
- private void ultraGrid1_AfterRowActivate(object sender, EventArgs e)
- {
- ultraGrid1.UpdateData();
- PublicPur.GridEdite(ultraGrid1.ActiveRow);
- }
- private void ultraGrid1_CellChange(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e)
- {
- ultraGrid1.UpdateData();
- if (e.Cell.Column.Key == "CHK")
- {
- PublicPur.GridEdite(ultraGrid1.ActiveRow);
- }
- else if (e.Cell.Column.Key == "ATTR_CODE")
- {
- e.Cell.Row.Cells["ATTR_NAME"].Value = e.Cell.Row.Cells["ATTR_CODE"].Text.Trim();
- }
- else if (e.Cell.Column.Key == "KZ_QTY" || e.Cell.Column.Key == "KJT_QTY" || e.Cell.Column.Key == "KCC_QTY" || e.Cell.Column.Key == "KQB_QTY")
- {
- if (e.Cell.Value.ToString() != "")
- {
- if (!StringUtil.IsDouble(e.Cell.Value.ToString()))
- {
- MessageUtil.ShowTips("请输入数字类型!");
- e.Cell.Value = "";
- return;
- }
- if (Convert.ToDouble(e.Cell.Value.ToString()) < 0)
- {
- MessageUtil.ShowTips("数字不能小于0!");
- e.Cell.Value = "";
- return;
- }
- double diffNum = Convert.ToDouble(e.Cell.Row.Cells["KZ_QTY"].Value.ToString() == "" ? "0" : e.Cell.Row.Cells["KZ_QTY"].Value.ToString()) + Convert.ToDouble(e.Cell.Row.Cells["KJT_QTY"].Value.ToString() == "" ? "0" : e.Cell.Row.Cells["KJT_QTY"].Value.ToString()) + Convert.ToDouble(e.Cell.Row.Cells["KCC_QTY"].Value.ToString() == "" ? "0" : e.Cell.Row.Cells["KCC_QTY"].Value.ToString()) + Convert.ToDouble(e.Cell.Row.Cells["KQB_QTY"].Value.ToString() == "" ? "0" : e.Cell.Row.Cells["KQB_QTY"].Value.ToString());
- double netNum = Convert.ToDouble(e.Cell.Row.Cells["NET_QTY"].Value.ToString());
- if (diffNum > netNum)
- {
- MessageUtil.ShowTips("扣除总量不能大于料型净重!");
- e.Cell.Value = "";
- return;
- }
- }
- }
- }
- private void chkSUPP_NAME_CheckedChanged(object sender, EventArgs e)
- {
- ultraQuerySUPP_NAME.Enabled = chkSUPP_NAME.Checked;
- }
- }
- }
|