From 4dc2dbda4150c7c74a26435a75308789dc359b99 Mon Sep 17 00:00:00 2001
From: cdk <2441919651@qq.com>
Date: 星期六, 01 十一月 2025 17:06:41 +0800
Subject: [PATCH] 增加批量打印功能,增加组织分开维护

---
 DevApp/Gs.DevApp/DevFrm/Warehouse/Frm_ArrivalBarcode.cs |  290 +++++++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 195 insertions(+), 95 deletions(-)

diff --git a/DevApp/Gs.DevApp/DevFrm/Warehouse/Frm_ArrivalBarcode.cs b/DevApp/Gs.DevApp/DevFrm/Warehouse/Frm_ArrivalBarcode.cs
index ef89e66..09e97ed 100644
--- a/DevApp/Gs.DevApp/DevFrm/Warehouse/Frm_ArrivalBarcode.cs
+++ b/DevApp/Gs.DevApp/DevFrm/Warehouse/Frm_ArrivalBarcode.cs
@@ -1,3 +1,4 @@
+using Gs.DevApp.DevFrm.Rpt;
 using Gs.DevApp.Entity;
 using Gs.DevApp.ToolBox;
 using Gs.DevApp.UserControl;
@@ -20,66 +21,171 @@
             InitializeComponent();
             this.toolBarMenu1.btnLoadClick += ToolBarMenu1_btnLoadClick;
             this.toolBarMenu1.btnQueryClick += ToolBarMenu1_btnQueryClick;
-            List<DevExpress.XtraGrid.Views.Grid.GridView> gvList = new List<DevExpress.XtraGrid.Views.Grid.GridView>();
-            gvList.Add(gridView1);
-            Gs.DevApp.ToolBox.UtilityHelper.getGridViewConfig(this.GetType().FullName, gvList);
+            this.toolBarMenu1.getXmlConfig();
             Gs.DevApp.ToolBox.UtilityHelper.SetGridViewParameterMx(gvMx1);
             Gs.DevApp.ToolBox.UtilityHelper.SetGridViewParameterMx(gvMx2);
             Gs.DevApp.ToolBox.UtilityHelper.SetGridViewParameter(gridView1, null, null, "", "", (value) =>
             {
                 Gs.DevApp.ToolBox.UtilityHelper.JumpTab(xtraTabControl1, 0);
-            });
+            }, tips);
             Gs.DevApp.ToolBox.UtilityHelper.SetTabParameter(gridView1, xtraTabControl1, pageBar1, (value) =>
             {
                 getModel(value);
             }, (value) =>
             {
                 getPageList(this.pageBar1.CurrentPage);
+            }, lbGuid, toolBarMenu1
+            , () =>
+            {
+                ucRptCgdhdPrint1.Initialize();
             });
             getPageList(1);
             pageBar1.PagerEvent += PageBar1_PagerEvent;
-            this.ucBtnPrint1.btnDesignClick += (s, e) =>
+
+            #region 鎵撳嵃鐩稿叧
+            //棰勮鎵撳嵃浜嬩欢
+            this.ucBtnPrint1.btnPrintClick += (s, e) =>
             {
-                ucBtnPrint1.rptParameter = "rpt_Arrival{}";
+                _print(0);
             };
-            this.ucBtnPrint1.btnReportClick += (s, e) =>
+            //鎵撳嵃鎵归噺鎿嶄綔浜嬩欢
+            this.ucBtnPrint1.btnAllClick += (s, e) =>
             {
                 string rowGuid = lbMxGuid.Text.Trim();
-                ucBtnPrint1.guidKey = rowGuid;
-                if (string.IsNullOrEmpty(txt_iCount_1.Text.Trim()))
+                SelectDeleteBar frm = new SelectDeleteBar(rowGuid, "閲囪喘鍏ュ簱");
+                string strCodeList = "";
+                string strAction = "";
+                frm.UpdateParent += (ss, ee) =>
                 {
-                    Gs.DevApp.ToolBox.MsgHelper.ShowError("璇烽�夋嫨鎵撳嵃鏉$爜寮犳暟锛�");
-                    txt_iCount_1.Focus();
-                    this.ucBtnPrint1.rptParameter = "return false";
+                    strCodeList = ee.StringSingle;
+                    strAction = ee.Data;
+                };
+                frm.ShowDialog();
+                if (string.IsNullOrEmpty(strCodeList))
                     return;
-                }
-                if (string.IsNullOrEmpty(txt_psnQty_1.Text.Trim()))
+                if (strAction == "print")
                 {
-                    Gs.DevApp.ToolBox.MsgHelper.ShowError("璇烽�夋嫨鎵撳嵃鏉$爜鏁伴噺锛�");
-                    txt_psnQty_1.Focus();
-                    this.ucBtnPrint1.rptParameter = "return false";
-                    return;
+                    try
+                    {
+                        string rptParameter = "rpt_Arrival{"
+                        + "100"//閲嶆墦閮芥槸浼�100锛�
+                        + "," + ""
+                        + "," + ""
+                        + "," + ""
+                        + "," + ""
+                        + "," + strCodeList
+                        + "}";
+                        using (Form rpt = new RptPreview(rowGuid, rptParameter))
+                        {
+                            rpt.ShowDialog();
+                        }
+                        frm.Close();
+                    }
+                    catch (Exception ex)
+                    {
+                        MsgHelper.ShowError(ex.Message);
+                    }
                 }
-                if (lbMxGuid.Text.Trim().Length < 10)
-                {
-                    Gs.DevApp.ToolBox.MsgHelper.ShowError("璇烽�夋嫨鎵撳嵃鐨勮锛�");
-                    this.ucBtnPrint1.rptParameter = "return false";
-                    return;
-                }
-                this.ucBtnPrint1.rptParameter = "rpt_Arrival{" + lbMxGuid.Text.Trim()
-                       + "," + ""
-                       + "," + ""
-                       + "," + txt_iCount_1.Text.Trim()
-                       + "," + txt_psnQty_1.Text.Trim()
-                       + "}";
-                txt_iCount_1.Text = "";
-                txt_psnQty_1.Text = "";
+            };
+            //鐩存帴鎵撳嵃浜嬩欢
+            this.ucBtnPrint1.btnZhiJieClick += (s, e) =>
+            {
+                _print(1);
             };
             gvMx1.FocusedRowChanged += GvMx1_FocusedRowChanged;
+            //鎵撳嵃鑷姩璁$畻
+            txt_psnQty_1.TextChanged += (s, e) =>
+            {
+                Gs.DevApp.ToolBox.UtilityHelper.PrintJiSuan(txt_psnQty_1, txt_iCount_1, txt_kQty.Text.Trim(), radOut, txt_yuliang_1);
+            };
+            radOut.SelectedIndexChanged += (s, e) =>
+            {
+                Gs.DevApp.ToolBox.UtilityHelper.PrintAuto(txt_psnQty_1, txt_iCount_1, radOut, txt_yuliang_1);
+            };
+
+            //鍏ㄩ儴鎵撳嵃
+            ucBtnPrintAll1.btnPrintClick += (s, e) =>
+            {
+                this.ucBtnPrintAll1.rptType = "";
+                this.ucBtnPrintAll1.mxList = null;
+                if (string.IsNullOrEmpty(lbGuid.Text.Trim()))
+                {
+                    MsgHelper.ShowError("鎻愮ず锛氭墦鍗板墠璇峰厛淇濆瓨鍗曟嵁锛�");
+                    return;
+                }
+                getModel(lbGuid.Text.Trim());
+                List<dynamic> lst = new List<dynamic>();
+                DataTable dt = (DataTable)gcMx1.DataSource;
+                foreach (DataRow row in dt.Rows)
+                {
+                    string guid = row["guid"].ToString();
+                    string psnQty = row["kQty"].ToString();
+                    if (string.IsNullOrEmpty(psnQty))
+                    {
+                        continue;
+                    }
+                    if (psnQty == "0")
+                    {
+                        continue;
+                    }
+                    lst.Add(new
+                    {
+                        guid = guid,
+                        kdy = psnQty,
+                    });
+                }
+                if (lst.Count <= 0)
+                {
+                    MsgHelper.ShowError("鎻愮ず锛氭殏鏃犲彲鎵撳嵃鐨勭墿鏂欙紒");
+                    return;
+                }
+                this.ucBtnPrintAll1.rptType = "rpt_Arrival";
+                this.ucBtnPrintAll1.mxList = lst;
+            };
+            #endregion
+
+        }
+        /// <summary>
+        /// 鎵撳嵃
+        /// </summary>
+        /// <param name="type">0琛ㄧず棰勮鎵撳嵃锛�1琛ㄧず鐩存帴鎵撳嵃</param>
+        private void _print(int type)
+        {
+            string rowGuid = lbMxGuid.Text.Trim();
+            ucBtnPrint1.guidKey = rowGuid;
+            if (!Gs.DevApp.ToolBox.UtilityHelper.IsNumeric3(txt_iCount_1.Text.Trim(), txt_yuliang_1.Text.Trim()))
+            {
+                Gs.DevApp.ToolBox.MsgHelper.ShowError("璇疯緭鍏ユ纭殑鏉$爜鏁伴噺锛�");
+                txt_iCount_1.Focus();
+                this.ucBtnPrint1.rptParameter = "return false";
+                return;
+            }
+            if (!Gs.DevApp.ToolBox.UtilityHelper.IsNumeric3(txt_psnQty_1.Text.Trim()))
+            {
+                Gs.DevApp.ToolBox.MsgHelper.ShowError("璇烽�夋嫨鎵撳嵃鏉$爜鏁伴噺锛�");
+                txt_psnQty_1.Focus();
+                this.ucBtnPrint1.rptParameter = "return false";
+                return;
+            }
+            if (lbMxGuid.Text.Trim().Length < 10)
+            {
+                Gs.DevApp.ToolBox.MsgHelper.ShowError("璇烽�夋嫨鎵撳嵃鐨勮锛�");
+                this.ucBtnPrint1.rptParameter = "return false";
+                return;
+            }
+            this.ucBtnPrint1.rptParameter = "rpt_Arrival{"
+                   + lbMxGuid.Text.Trim()//鍏宠仈涓婚敭
+                   + "," + ""
+                   + "," + Gs.DevApp.ToolBox.UtilityHelper.ToDecimal(txt_yuliang_1.Text.Trim())//浣欐暟
+                   + "," + txt_iCount_1.Text.Trim()//寮犳暟
+                   + "," + txt_psnQty_1.Text.Trim()//姣忓紶鏉$爜鏁伴噺
+                   + "}";
+            txt_iCount_1.Text = "";
+            txt_psnQty_1.Text = "";
         }
         private void GridView1_ColumnFilterChanged(object sender, EventArgs e)
         {
-            Gs.DevApp.ToolBox.UtilityHelper.GetDilter(gridView1.Columns, gridView1);
+            _filterList = Gs.DevApp.ToolBox.UtilityHelper.GetDilter(gridView1.Columns, gridView1);
             Task.Delay(100);
             getPageList(1);
         }
@@ -93,8 +199,22 @@
                 txtWlgg.Text = row["itemModel"].ToString();
                 txtWlmc.Text = row["itemName"].ToString();
                 txtQuantity.Text = row["quantity"].ToString();//鏈鏀惰揣鎬婚噺
-                txtYdy.Text = row["yQty"].ToString();//宸叉墦鍗版�婚噺
-                txtKdy.Text = row["kQty"].ToString(); //鍙墦鍗版�婚噺
+                txt_yQty.Text = row["yQty"].ToString();//宸叉墦鍗版�婚噺
+                txt_kQty.Text = row["kQty"].ToString(); //鍙墦鍗版�婚噺
+                txt_psnQty_1.Text = row["mrtmsl"].ToString(); //榛樿姣忓紶鏉$爜鏁伴噺
+            }
+            else
+            {
+                lbMxGuid.Text = "";
+                ucBtnPrint1.guidKey = "";
+                txtWlid.Text = "";
+                txtWlgg.Text = "";
+                txtWlmc.Text = "";
+                txtQuantity.Text = "";
+                txt_yQty.Text = "";
+                txt_kQty.Text = "";
+                txt_psnQty_1.Text = "";
+                txt_iCount_1.Text = "";
             }
         }
         /// <summary>
@@ -113,12 +233,17 @@
         /// <param name="e"></param>
         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();
+            if (xtraTabControl1.SelectedTabPageIndex == 0)
+            {
+                gridView1.ColumnFilterChanged -= GridView1_ColumnFilterChanged;
+                gridView1.ActiveFilter.Clear();
+                gridView1.ColumnFilterChanged += GridView1_ColumnFilterChanged;
+                var frm = new ShowFilter(gridView1.Columns, _filterList, this.GetType().FullName);
+                frm.UpdateParent += Frm_UpdateParent;
+                frm.ShowDialog();
+                return;
+            }
+            ucRptCgdhdPrint1.ToolBarMenu1_btnQueryClick(sender, e);
         }
         /// <summary>
         /// 鏌ヨ鍥炶皟
@@ -138,20 +263,23 @@
         /// <param name="e"></param>
         private void ToolBarMenu1_btnLoadClick(object sender, EventArgs e)
         {
-            if (xtraTabControl1.SelectedTabPageIndex == 1)
-                getModel(lbGuid.Text.Trim());
-            else
+            if (xtraTabControl1.SelectedTabPageIndex == 0)
             {
-                //_filterList.Clear();
-                //if (gridView1.ActiveFilter.Count > 0)
-                //{
-                //    gridView1.ColumnFilterChanged -= GridView1_ColumnFilterChanged;
-                //    gridView1.ActiveFilter.Clear();
-                //    gridView1.ColumnFilterChanged += GridView1_ColumnFilterChanged;
-                //}
-                //getPageList(1);
                 getPageList(this.pageBar1.CurrentPage);
+                return;
             }
+            if (xtraTabControl1.SelectedTabPageIndex == 1)
+            {
+                getModel(lbGuid.Text.Trim());
+                return;
+            }
+            if (xtraTabControl1.SelectedTabPageIndex == 2)
+            {
+                ucRptCgdhdPrint1.ToolBarMenu1_btnLoadClick(sender, e);
+                return;
+            }
+
+
         }
         /// <summary>
         /// 
@@ -160,7 +288,11 @@
         /// <param name="pageSize">姣忛〉鍑犳潯</param>
         private void getPageList(int curPage)
         {
-            var _sbSqlWhere = UtilityHelper.GetSearchWhere(_filterList);
+            gcMain1.DataSource = null;
+            System.Text.StringBuilder _sbSqlWhere = new System.Text.StringBuilder();
+            _sbSqlWhere.Append(" and a.ReceiveOrgId in");
+            _sbSqlWhere.Append(ToolBox.UtilityHelper.GetOrgWhere());
+            _sbSqlWhere.Append(UtilityHelper.GetSearchWhere(_filterList));
             var pgq = new PageQueryModel(curPage, this.pageBar1.RowsCount, "create_date",
                 "asc", "", _sbSqlWhere.ToString());
             var json = JsonConvert.SerializeObject(pgq);
@@ -172,16 +304,16 @@
                 if (dd.rtnCode > 0)
                 {
                     DataTable dt = dd.rtnData.list;
-                    gcMain.BindingContext = new BindingContext();
+                    gcMain1.BindingContext = new BindingContext();
                     gridView1.ColumnFilterChanged -= GridView1_ColumnFilterChanged;
                     if (dt.Rows.Count > 0)
                     {
-                        gcMain.DataSource = dt;
-                        gcMain.ForceInitialize();
+                        gcMain1.DataSource = dt;
+                        gcMain1.ForceInitialize();
                         gridView1.BestFitColumns(); Gs.DevApp.ToolBox.UtilityHelper.SetGridLayout(gridView1);
                     }
                     else
-                        UtilityHelper.SetDefaultTable(gcMain, gridView1);
+                        UtilityHelper.SetDefaultTable(gcMain1, gridView1);
                     gridView1.ColumnFilterChanged += GridView1_ColumnFilterChanged;
                     pageBar1.TotalPages = dd.rtnData.pages;//鎬婚〉
                     pageBar1.CurrentPage = curPage;//褰撳墠椤�
@@ -223,13 +355,12 @@
                     List<DevExpress.XtraGrid.Views.Grid.GridView> gvList = new List<DevExpress.XtraGrid.Views.Grid.GridView>();
                     gvList.Add(gvMx1);
                     gvList.Add(gvMx2);
-                    UtilityHelper.SetValueByObj(this.panel1.Controls, dy, isEdit, gvList);
+                    UtilityHelper.SetValueByObj(this.layoutMx1.Controls, dy, isEdit, gvList);
                     JArray array1 = new JArray();
                     foreach (var a in dy["list1"])
                     {
                         array1.Add(a);
                     }
-
                     DataTable dt1 = JsonConvert.DeserializeObject<DataTable>(array1.ToString());
                     if (dt1.Rows.Count > 0)
                     {
@@ -237,6 +368,7 @@
                         gcMx1.DataSource = dt1;
                         gcMx1.ForceInitialize();
                         gvMx1.BestFitColumns();
+                        Gs.DevApp.ToolBox.UtilityHelper.SetGridLayout(gvMx1);
                     }
                     else
                     {
@@ -254,6 +386,7 @@
                         gcMx2.DataSource = dt2;
                         gcMx2.ForceInitialize();
                         gvMx2.BestFitColumns();
+                        Gs.DevApp.ToolBox.UtilityHelper.SetGridLayout(gvMx2);
                     }
                     else
                     {
@@ -261,47 +394,14 @@
                     }
                 }
                 else
-                    ToolBox.MsgHelper.Warning("鎻愮ず锛�" + _rtn.rtnMsg);
+                    ToolBox.MsgHelper.ShowError("鎻愮ず锛�" + _rtn.rtnMsg);
             }
             catch (Exception ex)
             {
-                ToolBox.MsgHelper.Warning("鎻愮ず锛�" + ex.Message);
+                ToolBox.MsgHelper.ShowError("鎻愮ず锛�" + ex.Message);
             }
         }
 
-        private void repositoryItemButtonEdit1_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
-        {
-            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;
-                var _obj = new
-                {
-                    mxGuid = mxGuid,
-                    inType = "dhtm"
-                };
-                try
-                {
-                    var strJson = UtilityHelper.HttpPost("",
-                        _webServiceName + "DeleteBarcode",
-                        JsonConvert.SerializeObject(_obj));
-                    var _rtn = UtilityHelper.ReturnToDynamic(strJson);
-                    if (_rtn.rtnCode > 0)
-                    {
-                        if (_rtn.rtnCode > 0) getModel(lbGuid.Text);
-                    }
-                    MsgHelper.Warning("鎻愮ず锛�" + _rtn.rtnMsg);
-                }
-                catch (Exception ex)
-                {
-                    MsgHelper.Warning("鎻愮ず锛�" + ex.Message);
-                }
-            }
-        }
+     
     }
 }
\ No newline at end of file

--
Gitblit v1.9.3