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 | 85 ++++++++++++++++++++++++++++++++++++------ 1 files changed, 73 insertions(+), 12 deletions(-) diff --git a/LA24030_LuLiPackageLine_Print/LA24030_LuLiPackageLine_PrintService/WindowsFormsApplication1/Form1.cs b/LA24030_LuLiPackageLine_Print/LA24030_LuLiPackageLine_PrintService/WindowsFormsApplication1/Form1.cs index 581055e..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,12 +313,61 @@ Dictionary<string, object> data = new Dictionary<string, object>(); if (printClassifyEnum == PrintClassifyEnum.鍖呰鏉$爜) { - //data.Add("bar", item.SNCode); - //data.Add("material", item.MaterialCode ?? "" + "/" + item.MaterialName ?? ""); - //data.Add("supplier", item.SupplierName ?? ""); - //data.Add("unit", item.MaterialUnit ?? ""); - //data.Add("qty", item.Quantity); - //data.Add("date", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); + //data.Add("Info4", item.Info4 ?? "");//鍚堝悓鍗曞彿 + data.Add("Info5", item.Info5 ?? "");//鐢熶骇鍗曞彿 + data.Add("Info6", "绗�" + (item.Info6 ?? "") + "鍖�");//绗嚑鍖� + 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("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 => 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.DetailName ?? "");//閮ㄤ欢鍚嶇О + data.Add("detail_" + i + "_length", g.Key.Info16 ?? "");//閮ㄤ欢灏哄 + data.Add("detail_" + i + "_number", g.ToList().Count());//閮ㄤ欢鏁伴噺 + } + //杩欎釜鍦版柟鏄皢鍓╀笅鐨勬暟鎹� 娓呯┖ + //鏈�澶у�兼敼涓� 10 銆怑ditby shaocx,2025-03-31銆� + for (int p = (i + 1); p <= maxCount; p++) + { + data.Add("detail_" + p, "");//閮ㄤ欢鍚嶇О + data.Add("detail_" + p + "_length", "");//閮ㄤ欢灏哄 + data.Add("detail_" + p + "_number", "");//閮ㄤ欢鏁伴噺 + } } else { @@ -326,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