Veronique hai 1 ano
pai
achega
85adec01d5
Modificáronse 2 ficheiros con 26 adicións e 2 borrados
  1. 11 0
      PDFMonitor_SVG/Entities.cs
  2. 15 2
      PDFMonitor_SVG/FormMain.cs

+ 11 - 0
PDFMonitor_SVG/Entities.cs

@@ -54,6 +54,7 @@ namespace PDFMonitor_SVG {
             private string height;
             private string svgPath;
             private string svgFileName;
+            private long idDesignOrder;
 
             public SVGTaskInfo() {
             }
@@ -62,6 +63,16 @@ namespace PDFMonitor_SVG {
             public string Height { get => height; set => height = value; }
             public string Width { get => width; set => width = value; }
             public string SvgFileName { get => svgFileName; set => svgFileName = value; }
+            public long IdDesignOrder { get => idDesignOrder; set => idDesignOrder = value; }
+        }
+
+        public class PDFCallbackInfo {
+            private long idDesignOrder;
+
+            private string pdfFileName;
+
+            public long IdDesignOrder { get => idDesignOrder; set => idDesignOrder = value; }
+            public string PdfFileName { get => pdfFileName; set => pdfFileName = value; }
         }
     }
 }

+ 15 - 2
PDFMonitor_SVG/FormMain.cs

@@ -11,6 +11,7 @@ namespace PDFMonitor_SVG {
         private string? redisServerUrl;
         private string? redisServerPwd;
         private string? redisTaskKey;
+        private string? redisCallbackKey;
         //生成的PDF文件目录
         private string? completedPDFPath;
 
@@ -50,6 +51,7 @@ namespace PDFMonitor_SVG {
             redisServerUrl = ini.Read("redis", "redisServerUrl", "127.0.0.1:6379");
             redisServerPwd = ini.Read("redis", "redisServerPwd", "Admin@dounengyin@123");
             redisTaskKey = ini.Read("redis", "redisTaskKey", "sdtool:mall:designer:svg:task:list:1000");
+            redisCallbackKey = ini.Read("redis", "redisCallbackKey", "sdtool:mall:designer:pdf:callback:list:1000");
 
             completedPDFPath = ini.Read("path", "completedPDFPath", "D:\\testPdfOut\\");
             if (!Directory.Exists(completedPDFPath)) {
@@ -75,7 +77,10 @@ namespace PDFMonitor_SVG {
 
         private void doConvertTask(object state) {
             SVGTaskInfo svgTaskInfo = (SVGTaskInfo)state;
-            context.Post(_ => { memoLog.Items.Add("任务[" + svgTaskInfo.SvgFileName + "]开始"); }, null);
+            context.Post(_ => {
+                memoLog.Items.Add(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") +
+                " 任务[" + svgTaskInfo.SvgFileName + "]开始");
+            }, null);
             //传过来的是px,转成mm
             int fileWidth = px2mm(double.Parse(svgTaskInfo.Width));
             int fileHeight = px2mm(double.Parse(svgTaskInfo.Height));
@@ -102,7 +107,15 @@ namespace PDFMonitor_SVG {
             doc.Clear();
             doc.Dispose();
 
-            context.Post(_ => { memoLog.Items.Add("任务[" + svgTaskInfo.SvgFileName + "]完成"); }, null);
+            PDFCallbackInfo pdfCallbackInfo = new PDFCallbackInfo();
+            pdfCallbackInfo.IdDesignOrder = svgTaskInfo.IdDesignOrder;
+            pdfCallbackInfo.PdfFileName = convertedFileName;
+            redisClient.GetDatabase().ListRightPush(redisCallbackKey, JsonConvert.SerializeObject(pdfCallbackInfo));
+
+            context.Post(_ => {
+                memoLog.Items.Add(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") +
+                " 任务[" + svgTaskInfo.SvgFileName + "]完成");
+            }, null);
         }
 
         private void btnStartService_Click(object sender, EventArgs e) {