844184169@qq.com 5 月之前
父節點
當前提交
05b1f3fea1
共有 2 個文件被更改,包括 44 次插入14 次删除
  1. 42 12
      TeamAAS-VM/Core/Management.cs
  2. 2 2
      TeamAAS-VM/Services/MesService.cs

+ 42 - 12
TeamAAS-VM/Core/Management.cs

@@ -78,6 +78,15 @@ namespace TeamAAS_VP.Core
         /// </summary>
         private int _pressureMaxDurationSeconds = 30; //超时自动停止秒数
         DateTime[] StartCtqTime = new DateTime[3];//开始采集Ctq数据的时间
+
+        /// <summary>
+        /// 上次执行上传csv的日期
+        /// </summary>
+        private DateTime _lastCompressDate = DateTime.MinValue;
+        /// <summary>
+        /// 当天是否上传过csv
+        /// </summary>
+        private bool _hasCompressedToday = false;
         #endregion
 
         #region 属性
@@ -2649,11 +2658,11 @@ namespace TeamAAS_VP.Core
                                                     ppid[i] = ppidItem.Replace("ppid=", "").Trim();
                                                     SendTaskMessage($"ppid:{ppid[i]}", MessageLevel.Info);
                                                 }
-                                                string revisionItem = item.FirstOrDefault(f => f.Contains("revision="));
+                                                string revisionItem = item.FirstOrDefault(f => f.Contains("stage="));
                                                 if (revisionItem != null)
                                                 {
-                                                    revision[i] = revisionItem.Replace("revision=", "").Trim();
-                                                    SendTaskMessage($"revision:{revision[i]}", MessageLevel.Info);
+                                                    revision[i] = revisionItem.Replace("stage=", "").Trim();
+                                                    SendTaskMessage($"stage:{revision[i]}", MessageLevel.Info);
                                                 }
 
                                                 //切换产品
@@ -2754,11 +2763,11 @@ namespace TeamAAS_VP.Core
                                                 ppid[i] = ppidItem.Replace("ppid=", "").Trim();
                                                 SendTaskMessage($"ppid:{ppid[i]}", MessageLevel.Info);
                                             }
-                                            string revisionItem = item.FirstOrDefault(f => f.Contains("revision="));
+                                            string revisionItem = item.FirstOrDefault(f => f.Contains("stage="));
                                             if (revisionItem != null)
                                             {
-                                                revision[i] = revisionItem.Replace("revision=", "").Trim();
-                                                SendTaskMessage($"revision:{revision[i]}", MessageLevel.Info);
+                                                revision[i] = revisionItem.Replace("stage=", "").Trim();
+                                                SendTaskMessage($"stage:{revision[i]}", MessageLevel.Info);
                                             }
 
                                             LogHelper.WriteLogMes($"询问mes成功");
@@ -2930,7 +2939,7 @@ namespace TeamAAS_VP.Core
                                         else assyPresRes = false;
                                         DFC.Clear();
 
-                                        string upLimitValue = "", downLimitValue = "", midValue = "", saveppid = "";
+                                        string upLimitValue = "NA", downLimitValue = "NA", midValue = "NA", saveppid = "NA";
                                         if (stationConfig.SaveCsvPPID) saveppid = ppid[i];
                                         foreach (var item in gapDict)
                                         {
@@ -2969,7 +2978,7 @@ namespace TeamAAS_VP.Core
                                                 PROCESS_END_TIME = serverTimeResult.Now.ToString("yyyy-MM-ddTHH:mm:ss.fffffff") + "+08:00",
                                                 SUPPLIER_NAME = stationConfig.DataInfo.SUPPLIER_NAME,
                                                 COMMODITY_TYPE = stationConfig.DataInfo.COMMODITY_TYPE,
-                                                REVISION = stationConfig.DataInfo.REVISION,
+                                                REVISION = stationConfig.DataInfo.REVISION+"_"+ revision[i],
                                                 WO = wo[i],
                                                 MFG_LOT = stationConfig.DataInfo.MFG_LOT,
                                                 MFG_ASSY_LINE = stationConfig.DataInfo.MFG_ASSY_LINE,
@@ -2998,7 +3007,7 @@ namespace TeamAAS_VP.Core
                                             PROCESS_END_TIME = serverTimeResult.Now.ToString("yyyy-MM-ddTHH:mm:ss.fffffff") + "+08:00",
                                             SUPPLIER_NAME = stationConfig.DataInfo.SUPPLIER_NAME,
                                             COMMODITY_TYPE = stationConfig.DataInfo.COMMODITY_TYPE,
-                                            REVISION = stationConfig.DataInfo.REVISION,
+                                            REVISION = stationConfig.DataInfo.REVISION + "_" + revision[i],
                                             WO = wo[i],
                                             MFG_LOT = stationConfig.DataInfo.MFG_LOT,
                                             MFG_ASSY_LINE = stationConfig.DataInfo.MFG_ASSY_LINE,
@@ -3045,7 +3054,7 @@ namespace TeamAAS_VP.Core
                                         }
                                         else presRes = false;
                                         DFC.Clear();
-                                        string midValue = "", saveppid = "";
+                                        string midValue = "NA", saveppid = "NA";
                                         midValue = ((currentProduct.GlobalParamEx.DownPressure.PressureDownLimit + currentProduct.GlobalParamEx.DownPressure.PressureUpLimit) / 2).ToString("F3");
                                         if (stationConfig.SaveCsvPPID) saveppid = ppid[i];
                                         DFC.Add(new DataFormCtq
@@ -3060,7 +3069,7 @@ namespace TeamAAS_VP.Core
                                             PROCESS_END_TIME = serverTimeResult.Now.ToString("yyyy-MM-ddTHH:mm:ss.fffffff") + "+08:00",
                                             SUPPLIER_NAME = stationConfig.DataInfo.SUPPLIER_NAME,
                                             COMMODITY_TYPE = stationConfig.DataInfo.COMMODITY_TYPE,
-                                            REVISION = stationConfig.DataInfo.REVISION,
+                                            REVISION = stationConfig.DataInfo.REVISION + "_" + revision[i],
                                             WO = wo[i],
                                             MFG_LOT = stationConfig.DataInfo.MFG_LOT,
                                             MFG_ASSY_LINE = stationConfig.DataInfo.MFG_ASSY_LINE,
@@ -3087,7 +3096,7 @@ namespace TeamAAS_VP.Core
                                             PROCESS_END_TIME = serverTimeResult.Now.ToString("yyyy-MM-ddTHH:mm:ss.fffffff") + "+08:00",
                                             SUPPLIER_NAME = stationConfig.DataInfo.SUPPLIER_NAME,
                                             COMMODITY_TYPE = stationConfig.DataInfo.COMMODITY_TYPE,
-                                            REVISION = stationConfig.DataInfo.REVISION,
+                                            REVISION = stationConfig.DataInfo.REVISION + "_" + revision[i],
                                             WO = stationConfig.DataInfo.WO,
                                             MFG_LOT = stationConfig.DataInfo.MFG_LOT,
                                             MFG_ASSY_LINE = stationConfig.DataInfo.MFG_ASSY_LINE,
@@ -3135,6 +3144,7 @@ namespace TeamAAS_VP.Core
                                                     {
                                                         DateTime dt = DateTime.Now;
                                                         string filename = $"{ProductMainSN[i]}_{dt.ToString("yyyyMMddHHmmss")}";
+                                                        string csvfilename = $"{i}_{stationConfig.DeviceName}_{dt.ToString("yyyy-MM-dd")}";
                                                         var device = _configService.GetDeviceInfo();
                                                         (bool isSuc, string resp) = await _mesService.SendFtpFileAsync(ProductMainSN[i], filename);
                                                         if (isSuc)
@@ -3151,6 +3161,26 @@ namespace TeamAAS_VP.Core
                                                             string target_log = Path.Combine(filePath, Path.GetFileName(source_log));
                                                             File.Copy(source_log, target_log, true);
                                                             CompressionImage(filePath, filename, device.Station, device.FixtureId);
+
+                                                            //上传csv
+                                                            bool isAfter20 = dt.Hour >= 20;
+                                                            //判断是否是新的一天
+                                                            bool isNewDay = dt.Date != _lastCompressDate.Date;
+                                                            //当天还没执行过压缩
+                                                            if (isAfter20 && isNewDay && !_hasCompressedToday)
+                                                            {
+                                                                // 执行压缩
+                                                                CompressionImage(source_csv, csvfilename, device.Station, device.FixtureId);
+                                                                _lastCompressDate = dt;
+                                                                _hasCompressedToday = true;
+                                                                LogHelper.WriteLogMes("csv上传数据成功");
+                                                                SendTaskMessage($"csv上传数据成功", MessageLevel.Debug);
+                                                            }
+                                                            // 跨天后重置当天执行标记
+                                                            if (!isNewDay && _hasCompressedToday)
+                                                            {
+                                                                _hasCompressedToday = false;
+                                                            }
                                                         }
                                                         else
                                                         {

+ 2 - 2
TeamAAS-VM/Services/MesService.cs

@@ -101,11 +101,11 @@ namespace TeamAAS_VP.Services
             string url = "";
             if (device.F == "PTL")
             {
-                url = $"{device.MesUrl}?c=QUERY_RECORD&line={device.Line}&station={device.Station}&fixtureid={device.FixtureId}&sn={sn}&comp={device.comp}:{comp}&p=message,sn,wo,model_num,color,ppid,revision";
+                url = $"{device.MesUrl}?c=QUERY_RECORD&line={device.Line}&station={device.Station}&fixtureid={device.FixtureId}&sn={sn}&comp={device.comp}:{comp}&p=message,sn,wo,model_num,color,ppid,stage";
             }
             else
             {
-                url = $"{device.MesUrl}?c=QUERY_RECORD&line={device.Line}&station={device.Station}&fixtureid={device.FixtureId}&sn={sn}&p=message,sn,wo,model_num,color,ppid,revision";
+                url = $"{device.MesUrl}?c=QUERY_RECORD&line={device.Line}&station={device.Station}&fixtureid={device.FixtureId}&sn={sn}&p=message,sn,wo,model_num,color,ppid,stage";
             }
 
             LogHelper.WriteLogMes($"¡¾Ñ¯ÎÊURL¡¿{url}");