From a97a624c1fb269a059f97629076433c46b4e8b4c Mon Sep 17 00:00:00 2001 From: schangxiang@126.com <schangxiang@126.com> Date: 周三, 13 8月 2025 14:42:08 +0800 Subject: [PATCH] //如果是连续打印,则不调用打印服务,解决重复打印的问题 【Editby shaocx,2025-08-13】 --- LA24030_LuLiPackageLine_Print/LA24030_LuLiPackageLine_PrintService/WindowsFormsApplication1/Form1.cs | 65 +++++++++++++++++++++++++------- 1 files changed, 51 insertions(+), 14 deletions(-) diff --git a/LA24030_LuLiPackageLine_Print/LA24030_LuLiPackageLine_PrintService/WindowsFormsApplication1/Form1.cs b/LA24030_LuLiPackageLine_Print/LA24030_LuLiPackageLine_PrintService/WindowsFormsApplication1/Form1.cs index 90a1fcb..65ff232 100644 --- a/LA24030_LuLiPackageLine_Print/LA24030_LuLiPackageLine_PrintService/WindowsFormsApplication1/Form1.cs +++ b/LA24030_LuLiPackageLine_Print/LA24030_LuLiPackageLine_PrintService/WindowsFormsApplication1/Form1.cs @@ -7,6 +7,7 @@ using iWareSql; using iWareSql.DataAccess; using iWareSql.MyDbContext; +using iWareSql.WmsDBModel; using System; using System.Collections.Generic; using System.Data; @@ -23,6 +24,7 @@ { public partial class Form1 : Form { + public static string prePrintSuccessPackage = "";//涓婁竴涓墦鍗版垚鍔熺殑鍖呭彿 //鑷姩鎵撳嵃绾跨▼ Thread AutoPrint, Colors; @@ -251,7 +253,7 @@ this.tb_Msg.Text = "鍑虹幇寮傚父:" + ex.Message; Log4NetHelper.WriteErrorLog(LogType.Print, "Print 鍑虹幇寮傚父锛�" + ex.Message, ex); } - Thread.Sleep(2 * 1000);//浼戠湢2绉� + Thread.Sleep(10 * 1000);//浼戠湢10绉� 锛�2绉掓敼涓�10绉� 銆怑ditby shaocx,2025-08-05銆� } } @@ -311,31 +313,56 @@ Dictionary<string, object> data = new Dictionary<string, object>(); if (printClassifyEnum == PrintClassifyEnum.鍖呰鏉$爜) { - data.Add("Info4", item.Info4);//鍚堝悓鍗曞彿 + //data.Add("Info4", item.Info4 ?? "");//鍚堝悓鍗曞彿 data.Add("Info5", item.Info5 ?? "");//鐢熶骇鍗曞彿 data.Add("Info6", "绗�" + (item.Info6 ?? "") + "鍖�");//绗嚑鍖� - data.Add("bar", item.PackageCode);//浜岀淮鐮侊紙鍖呭彿锛� + data.Add("bar", item.PackageCode ?? "");//浜岀淮鐮侊紙鍖呭彿锛� data.Add("Info7", item.Info7 ?? "");//缁忛攢搴� data.Add("Info8", item.Info8 ?? "");//浜у搧 data.Add("Info9", item.PackageCode ?? "");//鍖呰缂栫爜 data.Add("Info10", item.Info10 ?? "");//瀹㈡埛鍚嶇О data.Add("Info11", item.Info11 ?? "");//鑷彁or鍙戣揣 - data.Add("Info12", "鍖呰鏄庣粏 閮ㄤ欢鎬绘暟" + item.Info12 ?? "");//閮ㄤ欢鏄庣粏 - data.Add("Info13", item.Info13 ?? "");//褰撳墠鍖呴潰绉� + data.Add("Info12", "鍖呰鏄庣粏 [鏉夸欢鎬绘暟" + (item.Info12 ?? "") + "]");//閮ㄤ欢鏄庣粏 + //data.Add("Info13", item.Info13 ?? "");//褰撳墠鍖呴潰绉� data.Add("printTime", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); + + //var finsiList = mycontext.mes_package_gather.Where(x => x.Info5 == item.Info5 && x.UpiStatus >= (int)UpiStatusEnum.宸插悎鍖�).ToList(); + //double leijisaomiaomj = 0; + //foreach (var aa in finsiList) + //{ + // if (!string.IsNullOrEmpty(aa.Info13)) + // { + // leijisaomiaomj += Convert.ToDouble(aa.Info13); + // } + //} + //涓嶈绠楁湰娆$殑 + //if (!string.IsNullOrEmpty(item.Info13)) + //{ + // leijisaomiaomj += Convert.ToDouble(item.Info13); + //} + //data.Add("leijisaomiaomj", leijisaomiaomj);//绱鎵弿闈㈢Н //鏌ヨ涓� 鍖呮暟鎹� var mylist = mycontext.mes_batchOrderUPI_new.Where(x => x.PackageCode == item.PackageCode).ToList(); - var gg = mylist.GroupBy(x => x.DetailName); + var gg = mylist.GroupBy(x => new { x.DetailName, x.Info16 }); int i = 0; + int maxCount = 10; + if (gg.Count() > 10) + { + errMsg = $"鎵撳嵃閿欒 鎵撳嵃鏈哄悕绉皗_PrinterName},閿欒淇℃伅锛氭墦鍗拌秴鍑轰簡闄愬埗鏉℃暟锛屾渶澶т笉鑳借秴杩噞maxCount}鏉★紝瀹為檯{gg.Count()}鏉�"; + Log4NetHelper.WriteErrorLog(LogType.Print, errMsg, null); + return; + } foreach (var g in gg) { i++; - data.Add("detail_" + i, g.Key ?? "");//閮ㄤ欢鍚嶇О - data.Add("detail_" + i + "_length", g.ToList().First().Info16 ?? "");//閮ㄤ欢灏哄 + data.Add("detail_" + i, g.Key.DetailName ?? "");//閮ㄤ欢鍚嶇О + data.Add("detail_" + i + "_length", g.Key.Info16 ?? "");//閮ㄤ欢灏哄 data.Add("detail_" + i + "_number", g.ToList().Count());//閮ㄤ欢鏁伴噺 } - for (int p = (i + 1); p <= 6; p++) + //杩欎釜鍦版柟鏄皢鍓╀笅鐨勬暟鎹� 娓呯┖ + //鏈�澶у�兼敼涓� 10 銆怑ditby shaocx,2025-03-31銆� + for (int p = (i + 1); p <= maxCount; p++) { data.Add("detail_" + p, "");//閮ㄤ欢鍚嶇О data.Add("detail_" + p + "_length", "");//閮ㄤ欢灏哄 @@ -350,14 +377,24 @@ //璋冪敤鎵撳嵃鎺ュ彛 bool isSuccess = false; - using (iWarePrintService.PrintBaseService.PrintWcfServiceClient client = new iWarePrintService.PrintBaseService.PrintWcfServiceClient()) - { - //isSuccess = client.Print3(data, 1, @"D:\鎵撳嵃绋嬪簭\璺熻釜鐮佹墦鍗版ā鏉縗璺熻釜鐮佹墦鍗版ā鏉縚涓�缁寸爜.btw", "ZDesigner ZD888-203dpi ZPL", out errMsg); - //isSuccess = client.Print3(data, 1, @"D:\鎵撳嵃绋嬪簭\璺熻釜鐮佹墦鍗版ā鏉縗璺熻釜鐮佹墦鍗版ā鏉縚浜岀淮鐮�.btw", "ZDesigner ZD888-203dpi ZPL", out errMsg); - isSuccess = client.Print3(data, item.PrintSheetNum, printConfig.PrintTemplateAddr, _PrinterName, out errMsg); + if (prePrintSuccessPackage == item.PackageCode) + {//濡傛灉鏄繛缁墦鍗帮紝鍒欎笉璋冪敤鎵撳嵃鏈嶅姟锛岃В鍐抽噸澶嶆墦鍗扮殑闂 銆怑ditby shaocx,2025-08-13銆� + isSuccess = true;//寮哄埗璁や负鎵撳嵃鎴愬姛锛� } + else + { + using (iWarePrintService.PrintBaseService.PrintWcfServiceClient client = new iWarePrintService.PrintBaseService.PrintWcfServiceClient()) + { + //isSuccess = client.Print3(data, 1, @"D:\鎵撳嵃绋嬪簭\璺熻釜鐮佹墦鍗版ā鏉縗璺熻釜鐮佹墦鍗版ā鏉縚涓�缁寸爜.btw", "ZDesigner ZD888-203dpi ZPL", out errMsg); + //isSuccess = client.Print3(data, 1, @"D:\鎵撳嵃绋嬪簭\璺熻釜鐮佹墦鍗版ā鏉縗璺熻釜鐮佹墦鍗版ā鏉縚浜岀淮鐮�.btw", "ZDesigner ZD888-203dpi ZPL", out errMsg); + isSuccess = client.Print3(data, item.PrintSheetNum, printConfig.PrintTemplateAddr, _PrinterName, out errMsg); + } + } + if (isSuccess) { + prePrintSuccessPackage = item.PackageCode; + item.PrintStatus = 1;//鎵撳嵃鐘舵��(0锛氭湭鎵撳嵃 1锛氬凡鎵撳嵃) item.PrintNum = (item.PrintNum) + 1; -- Gitblit v1.9.3