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/Rk/Frm_MesItemQtrk.cs |  253 +++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 227 insertions(+), 26 deletions(-)

diff --git a/DevApp/Gs.DevApp/DevFrm/Rk/Frm_MesItemQtrk.cs b/DevApp/Gs.DevApp/DevFrm/Rk/Frm_MesItemQtrk.cs
index 42c80f1..8bfd911 100644
--- a/DevApp/Gs.DevApp/DevFrm/Rk/Frm_MesItemQtrk.cs
+++ b/DevApp/Gs.DevApp/DevFrm/Rk/Frm_MesItemQtrk.cs
@@ -9,6 +9,7 @@
 using System;
 using System.Collections.Generic;
 using System.Data;
+using System.IO;
 using System.Threading.Tasks;
 using System.Windows.Forms;
 namespace Gs.DevApp.DevFrm
@@ -40,6 +41,7 @@
             this.toolBarMenu1.btnCaiGouFchkClick += ToolBarMenu1_btnCaiGouFchkClick;
             this.toolBarMenu1.btnCaiWuChkClick += ToolBarMenu1_btnCaiWuChkClick;
             this.toolBarMenu1.btnCaiWuFchkClick += ToolBarMenu1_btnCaiWuFchkClick;
+            toolBarMenu1.btnPrintClick += ToolBarMenu1_btnPrintClick;
             this.toolBarMenu1.getXmlConfig();
             Gs.DevApp.ToolBox.UtilityHelper.SetGridViewParameterMx(gvMx1);
             Gs.DevApp.ToolBox.UtilityHelper.SetGridViewParameterMx(gvMx2);
@@ -68,34 +70,61 @@
                 txt_qt009.getSuppler(_orgId, _ucBm);
                 txt_qt018.getSuppler(_orgId, _ucGys);
                 txt_qt008.getSuppler(_orgId, _ucCk);
-                System.Text.StringBuilder sbWhere = new System.Text.StringBuilder();
-                sbWhere.Append(" and a.FSubsidiary ='" + _orgId + "'");
-                var _obj = new PageQueryModel(1, 999999, "item_no", "asc", "", sbWhere.ToString(), "");
-                var json = JsonConvert.SerializeObject(_obj);
-                try
-                {
-                    var strReturn = UtilityHelper.HttpPost("",
-                        "MesItemsManager/GetListSelect", json);
-                    var rtn = UtilityHelper.ReturnToTablePage(strReturn);
-                    var dt = rtn.rtnData.list;
-                    this.repositoryItemSearchLookUpEdit1.DataSource = dt;
-                }
-                catch (Exception ex)
-                {
-                    MsgHelper.ShowError("鎻愮ず锛�" + ex.Message);
-                }
+                _bindLookSearch(txt_qt035.Text.Trim(), "", "");
+
             };
             //閫夋嫨婧愬崟鏄庣粏
             txt_qt035.ButtonClick += (s, e) =>
             {
-                string strSrmNo = "";
-                SelectDaa frm = new SelectDaa();
+                string _orgId = txt_qt022.GetId();
+                SelectDaa frm = new SelectDaa(_orgId);
                 frm.UpdateParent += (ss, ee) =>
                 {
                     var lst = new List<dynamic>();
                     lst = ee.DynamicList;
-                    strSrmNo = lst[0].guid;
+                    string strSrmNo = lst[0].guid;
+                    string strGdlx = lst[0].gdlx;
+                    string strGdlxWlid = lst[0].gdlxWlid;
                     txt_qt035.Text = strSrmNo;
+                    _bindLookSearch(txt_qt035.Text.Trim(), strGdlx, strGdlxWlid);
+                    #region 閫夋嫨宸ュ崟鍚庡甫鍑轰笅闈㈢殑鐗╂枡 2025-09-27
+                    //try
+                    //{
+                    //    var _obj = new
+                    //    {
+                    //        strDaaNo = strSrmNo,//涓诲缓
+                    //    };
+                    //    var strReturn = UtilityHelper.HttpPost("",
+                    //        "WomdaaManager/SelectDaaMx",
+                    //        JsonConvert.SerializeObject(_obj));
+                    //    var dt = UtilityHelper.ReturnToList(strReturn);
+                    //    DataTable _newTable = dt.rtnData;
+                    //    DataTable _oldTable = (DataTable)gcMx1.DataSource;
+                    //    foreach (DataRow dddddd in _newTable.Rows)
+                    //    {
+                    //        DataRow _row = _oldTable.NewRow();
+                    //        _row["qd002"] = dddddd["itemNo"].ToString();
+                    //        _row["qd003"] = dddddd["itemName"].ToString();
+                    //        _row["qd004"] = dddddd["itemModel"].ToString();
+                    //        _row["kcDw"] = dddddd["dwName"].ToString();
+                    //        _row["itemId"] = dddddd["itemId"].ToString();
+                    //        _row["qd007"] = dddddd["sl"].ToString();
+                    //        _row["qd010"] = dddddd["bz"].ToString();
+                    //        _row["qd012"] = dddddd["bllx"].ToString();
+                    //        // _oldTable.ImportRow(_row);
+                    //        _oldTable.Rows.Add(_row);
+                    //    }
+                    //    gcMx1.BindingContext = new BindingContext();
+                    //    gcMx1.DataSource = _oldTable;
+                    //    gcMx1.ForceInitialize();
+                    //    gvMx1.BestFitColumns();
+                    //    Gs.DevApp.ToolBox.UtilityHelper.SetGridLayout(gvMx1);
+                    //}
+                    //catch (Exception ex)
+                    //{
+                    //    MessageBox.Show(ex.Message);
+                    //}
+                    #endregion
                 };
                 frm.ShowDialog();
             };
@@ -183,7 +212,153 @@
             {
                 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["kdy"].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_Qtrk";
+                this.ucBtnPrintAll1.mxList = lst;
+            };
+            #region 2025-08-27 澶嶅埗beg
+            btnCopyXls.Click += (s, e) =>
+            {
+                string kcZz = txt_qt022.GetId();
+                if (string.IsNullOrEmpty(kcZz))
+                {
+                    Gs.DevApp.ToolBox.MsgHelper.ShowError("璇峰厛閫夋嫨搴撳瓨缁勭粐鍚庢墠鑳戒娇鐢ㄥ鍒跺姛鑳斤紒");
+                    txt_qt022.Focus();
+                    return;
+                }
+                string filePath = AppContext.BaseDirectory + "xlsCopy.xls";
+                if (File.Exists(filePath))
+                {
+                    var frm = new CopyXls(kcZz, lbGuid.Text.Trim(), OrderType.鍏跺畠鍏ュ簱.ToString());
+                    frm.UpdateParent += (ss, ee) =>
+                    {
+                        try
+                        {
+                            var lst = ee.DynamicList;
+                            DataTable _Table = (DataTable)gcMx1.DataSource;
+                            foreach (dynamic dym in lst)
+                            {
+                                DataRow _row = _Table.NewRow();
+                                _row["qd002"] = dym.itemNo;
+                                _row["qd003"] = dym.itemName;
+                                _row["qd004"] = dym.itemModel;
+                                _row["kcDw"] = dym.dwName;
+                                _row["itemId"] = dym.itemId;
+                                _row["qd007"] = dym.sl;
+                                _row["qd010"] = dym.bz;
+                                _row["qd012"] = dym.bllx;
+                                _Table.Rows.Add(_row);
+                            }
+                            gcMx1.BindingContext = new BindingContext();
+                            gcMx1.DataSource = _Table;
+                            gcMx1.ForceInitialize();
+                            gvMx1.CloseEditor();
+                            gvMx1.PostEditor();
+                            gvMx1.UpdateCurrentRow();
+                            gvMx1.BestFitColumns();
+                        }
+                        catch (Exception ex)
+                        {
+                            Gs.DevApp.ToolBox.MsgHelper.ShowError(ex.Message);
+                        }
+                    };
+                    frm.ShowDialog();
+                }
+                else
+                {
+                    Gs.DevApp.ToolBox.MsgHelper.ShowError("鎵句笉鍒皒lsCopy.xls鏂囦欢锛岃鑱旂郴绠$悊鍛橈紒");
+                }
+            };
+            #endregion
+        }
+        /// <summary>
+        /// 鏉ユ簮鏄庣粏闄愬埗锛�
+        /// </summary>
+        /// <param name="strGdlx">宸ュ崟绫诲瀷锛屽鏋滄槸缁翠慨锛屾牴鎹墿鏂欐壘</param>
+        private void _bindLookSearch(string daaNo, string strGdlx, string gdlxWlid)
+        {
+            System.Text.StringBuilder sbWhere = new System.Text.StringBuilder();
+            sbWhere.Append(" and a.FSubsidiary ='" + txt_qt022.GetId() + "'");
+            if (daaNo.Trim().Length > 0)
+            {
+                if (strGdlx == "W-缁翠慨杩斿伐" || strGdlx == "C-鎷嗘満杩斿伐")
+                {
+                    sbWhere.Append("  and a.item_id in (");
+                    sbWhere.Append("  select  dab.dab003  from WOMDAA daa left join WOMDAB dab on daa.guid=dab.daaGuid   ");
+                    sbWhere.Append("   where  daa.guid=( select top 1  ddddd.guid as dddddGuid from WOMDAA ddddd where  ddddd.daa002='" + gdlxWlid + "' and  ddddd.daa025 in('F-閲忎骇','S-璇曚骇') order by ddddd.daa001 desc )");
+                    sbWhere.Append(" )");
+                }
+                else
+                {
+                    sbWhere.Append("  and a.item_id in (");
+                    sbWhere.Append("  select dab.dab003 from WOMDAB dab where dab.dab001 = '" + txt_qt035.Text.Trim() + "'");
+                    sbWhere.Append(" )");
+                }
+            }
+            var _obj = new PageQueryModel(1, 999999, "item_no", "asc", "", sbWhere.ToString(), "");
+            var json = JsonConvert.SerializeObject(_obj);
+            try
+            {
+                var strReturn = UtilityHelper.HttpPost("", "MesItemsManager/GetListSelect", json);
+                var rtn = UtilityHelper.ReturnToTablePage(strReturn);
+                DataTable dt = rtn.rtnData.list;
+                //濡傛灉娌℃湁锛屽啀璇讳竴閬�
+                if (dt == null || dt.Rows.Count <= 1)
+                {
+                    _bindLookSearch("", "", "");
+                }
+                else
+                {
+                    this.gridView2.IndicatorWidth = 60;
+                    this.gridView2.CustomDrawRowIndicator += (ss, ee) =>
+                    {
+                        if (ee.Info.IsRowIndicator && ee.RowHandle >= 0)
+                            ee.Info.DisplayText = (ee.RowHandle + 1).ToString();
+                    };
+                    this.repositoryItemSearchLookUpEdit1.DataSource = dt;
+                    // repositoryItemSearchLookUpEdit1.BestFitMode = DevExpress.XtraEditors.Controls.BestFitMode.BestFitResizePopup;
+                    //repositoryItemSearchLookUpEdit1.PopupFormSize = new System.Drawing.Size(500, 300);
+                }
+            }
+            catch (Exception ex)
+            {
+                MsgHelper.ShowError("鎻愮ず锛�" + ex.Message);
+            }
         }
 
         private void GridView1_ColumnFilterChanged(object sender, EventArgs e)
@@ -385,6 +560,7 @@
             string inHz = ucLookHuoZhu1.GetHzId();//璐т富
             string inRkyy = txt_qt010.Text.Trim();//鍏ュ簱鍘熷洜
             string kcCk = txt_qt008.GetId();//浠撳簱
+            string qtlx = txt_qtlx.Text.Trim();//鍚庢潵澧炲姞鐨勭被鍨�
             if (string.IsNullOrEmpty(kcZz))
             {
                 Gs.DevApp.ToolBox.MsgHelper.ShowError("璇烽�夋嫨搴撳瓨缁勭粐锛�");
@@ -407,10 +583,10 @@
                 txt_qt003.Focus();
                 return;
             }
-            if (txt_qt019.SelectedIndex <= 0)
+            if (txt_qtlx.SelectedIndex <= 0)
             {
-                Gs.DevApp.ToolBox.MsgHelper.ShowError("璇烽�夋嫨搴撳瓨鏂瑰悜锛�");
-                txt_qt019.Focus();
+                Gs.DevApp.ToolBox.MsgHelper.ShowError("璇烽�夋嫨鍏ュ簱绫诲瀷锛�");
+                txt_qtlx.Focus();
                 return;
             }
             if (string.IsNullOrEmpty(kcBm) && string.IsNullOrEmpty(kcGys))
@@ -438,6 +614,7 @@
                 hzlx = inHzlx,//璐т富绫诲瀷
                 inHz = inHz,//璐т富
                 inSource = txt_qt035.EditValue,//宸ュ崟鍙�
+                qtlx = qtlx,
                 list = new List<dynamic>(),
             };
             gvMx1.CloseEditor();
@@ -548,7 +725,6 @@
         /// <param name="strGuid"></param>
         private void getModel(string strGuid)
         {
-           
             gcMx1.DataSource = null;
             bool isEdit = false;
             if (toolBarMenu1.currentAction == "add") return;
@@ -649,6 +825,9 @@
             gvMx1.CloseEditor();
             gvMx1.PostEditor();
             gvMx1.UpdateCurrentRow();
+            gvMx1.BestFitColumns();
+            Gs.DevApp.ToolBox.UtilityHelper.SetGridLayout(gvMx1);
+
         }
         /// <summary>
         /// 绉诲嚭鏄庣粏
@@ -688,7 +867,7 @@
                         getModel(lbGuid.Text);
                     }
                     else
-                    MsgHelper.ShowError("鎻愮ず锛�" + _rtn.rtnMsg);
+                        MsgHelper.ShowError("鎻愮ず锛�" + _rtn.rtnMsg);
                 }
                 catch (Exception ex)
                 {
@@ -808,7 +987,7 @@
                     _webServiceName + "EditModelSubmit",
                     JsonConvert.SerializeObject(_obj));
                 var _rtn = UtilityHelper.ReturnToDynamic(strJson);
-              
+
                 if (_rtn.rtnCode > 0 && _rtn.rtnData.outSum * 1 > 0)
                 {
                     MsgHelper.ShowInformation(_rtn.rtnData.outMsg.ToString());
@@ -888,5 +1067,27 @@
                 txt_iCount_1.Text = "";
             }
         }
+
+        private void ToolBarMenu1_btnPrintClick(object sender, EventArgs e)
+        {
+            //guidKey, rptParameter
+            string rowGuid, rowName;
+            (rowGuid, rowName) = UtilityHelper.GetCurrentRow(xtraTabControl1,
+                lbGuid, txt_qtck, gridView1, "qtck");
+            if (string.IsNullOrEmpty(rowGuid))
+            {
+                MsgHelper.ShowError("璇峰厛閫夋嫨浣犺鎿嶄綔鐨勮锛�");
+                return;
+            }
+            this.toolBarMenu1.rptParameter = "rpt_QTRKSQ{"
+                                               + ""
+                                               + "," + ""
+                                               + "," + ""
+                                               + "," + ""
+                                               + "," + ""
+                                               + "}";
+            this.toolBarMenu1.guidKey = rowGuid;
+
+        }
     }
 }
\ No newline at end of file

--
Gitblit v1.9.3