Преглед изворни кода

修复复检数据存储问题与csv数据格式

KWD пре 5 месеци
родитељ
комит
a4a68a9a51
1 измењених фајлова са 73 додато и 66 уклоњено
  1. 73 66
      TeamAAS-VM/Core/Management.cs

+ 73 - 66
TeamAAS-VM/Core/Management.cs

@@ -1913,7 +1913,14 @@ namespace TeamAAS_VP.Core
                                 }
                                 else
                                 {
-                                    mes_cc.Add(visionResult.distance.Split(',')[0], visionResult.distance.Split(',')[1]);
+                                    if (mes_cc.ContainsKey(cameraIndex.ToString()))
+                                    {
+                                        mes_cc[cameraIndex.ToString()] = "0";
+                                    }
+                                    else
+                                    {
+                                        mes_cc.Add(cameraIndex.ToString(), "0");
+                                    }
                                 }
                                 await plc.WriteNodeAsync(addressConfig.Out_UPCameracheckStatus.Address, (Int16)2);
                                 SendTaskMessage($"点位{cameraIndex}检测NG", MessageLevel.Error);
@@ -2593,72 +2600,72 @@ namespace TeamAAS_VP.Core
                                             bool assyPress = resultIndex == 1 ? true : false;
                                             DFC.Clear();
 
-                                            foreach (var item in mes_cc)
-                                            {
-                                                DFC.Add(new DataFormCtq
-                                                {
-                                                    PPID = ProductMainSN[i],
-                                                    PROCESS_NAME = stationConfig.DataInfo.PROCESS_NAME,
-                                                    PROCESS_START_TIME = _LastMesCheckTime[i].ToString("yyyy-MM-ddTHH:mm:ss.fffffff") + "+08:00",
-                                                    CTQ_NAME = $"CC{item.Key}",
-                                                    CTQ_VALUE = item.Value,
-                                                    CTQ_LSL = "",
-                                                    CTQ_USL = "",
-                                                    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,
-                                                    WO = wo[i],
-                                                    MFG_LOT = stationConfig.DataInfo.MFG_LOT,
-                                                    MFG_ASSY_LINE = stationConfig.DataInfo.MFG_ASSY_LINE,
-                                                    PROCESS_OUTCOME = "Pass",
-                                                    PROCESS_MACHINE_ID = stationConfig.DataInfo.PROCESS_MACHINE_ID,
-                                                    CTQ_UNIT_OF_MEASURE = "mm",
-                                                    ERROR_MESSAGE = assyPress ? "" : "CC OOS",
-                                                });
-                                            }
-                                            //DFC.Add(new DataFormCtq
-                                            //{
-                                            //    PPID = ProductMainSN[i],
-                                            //    PROCESS_NAME = stationConfig.DataInfo.PROCESS_NAME,
-                                            //    PROCESS_START_TIME = _LastMesCheckTime[i].ToString(),
-                                            //    CTQ_NAME = "CC1",
-                                            //    CTQ_VALUE = mes_cc["1"],
-                                            //    CTQ_LSL = currentProduct.GlobalParamEx.CC1DownLimit.ToString("F3"),
-                                            //    CTQ_USL = currentProduct.GlobalParamEx.CC1UpLimit.ToString("F3"),
-                                            //    PROCESS_END_TIME = serverTimeResult.Now.ToString(),
-                                            //    SUPPLIER_NAME = stationConfig.DataInfo.SUPPLIER_NAME,
-                                            //    COMMODITY_TYPE = stationConfig.DataInfo.COMMODITY_TYPE,
-                                            //    REVISION = stationConfig.DataInfo.REVISION,
-                                            //    WO = wo[i],
-                                            //    MFG_LOT = stationConfig.DataInfo.MFG_LOT,
-                                            //    MFG_ASSY_LINE = stationConfig.DataInfo.MFG_ASSY_LINE,
-                                            //    PROCESS_OUTCOME = assyPress ? "Pass" : "Fail",
-                                            //    PROCESS_MACHINE_ID = stationConfig.DataInfo.PROCESS_MACHINE_ID,
-                                            //    CTQ_UNIT_OF_MEASURE = "mm",
-                                            //    ERROR_MESSAGE = assyPress ? "" : "CC OOS",
-                                            //});
-                                            //DFC.Add(new DataFormCtq
+                                            //foreach (var item in mes_cc)
                                             //{
-                                            //    PPID = ProductMainSN[i],
-                                            //    PROCESS_NAME = stationConfig.DataInfo.PROCESS_NAME,
-                                            //    PROCESS_START_TIME = _LastMesCheckTime[i].ToString(),
-                                            //    CTQ_NAME = "CC2",
-                                            //    CTQ_VALUE = mes_cc["2"],
-                                            //    CTQ_LSL = currentProduct.GlobalParamEx.CC2DownLimit.ToString("F3"),
-                                            //    CTQ_USL = currentProduct.GlobalParamEx.CC2UpLimit.ToString("F3"),
-                                            //    PROCESS_END_TIME = serverTimeResult.Now.ToString(),
-                                            //    SUPPLIER_NAME = stationConfig.DataInfo.SUPPLIER_NAME,
-                                            //    COMMODITY_TYPE = stationConfig.DataInfo.COMMODITY_TYPE,
-                                            //    REVISION = stationConfig.DataInfo.REVISION,
-                                            //    WO = wo[i],
-                                            //    MFG_LOT = stationConfig.DataInfo.MFG_LOT,
-                                            //    MFG_ASSY_LINE = stationConfig.DataInfo.MFG_ASSY_LINE,
-                                            //    PROCESS_OUTCOME = assyPress ? "Pass" : "Fail",
-                                            //    PROCESS_MACHINE_ID = stationConfig.DataInfo.PROCESS_MACHINE_ID,
-                                            //    CTQ_UNIT_OF_MEASURE = "mm",
-                                            //    ERROR_MESSAGE = assyPress ? "" : "CC OOS",
-                                            //});
+                                            //    DFC.Add(new DataFormCtq
+                                            //    {
+                                            //        PPID = ProductMainSN[i],
+                                            //        PROCESS_NAME = stationConfig.DataInfo.PROCESS_NAME,
+                                            //        PROCESS_START_TIME = _LastMesCheckTime[i].ToString("yyyy-MM-ddTHH:mm:ss.fffffff") + "+08:00",
+                                            //        CTQ_NAME = $"CC{item.Key}",
+                                            //        CTQ_VALUE = item.Value,
+                                            //        CTQ_LSL = "",
+                                            //        CTQ_USL = "",
+                                            //        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,
+                                            //        WO = wo[i],
+                                            //        MFG_LOT = stationConfig.DataInfo.MFG_LOT,
+                                            //        MFG_ASSY_LINE = stationConfig.DataInfo.MFG_ASSY_LINE,
+                                            //        PROCESS_OUTCOME = "Pass",
+                                            //        PROCESS_MACHINE_ID = stationConfig.DataInfo.PROCESS_MACHINE_ID,
+                                            //        CTQ_UNIT_OF_MEASURE = "mm",
+                                            //        ERROR_MESSAGE = assyPress ? "" : "CC OOS",
+                                            //    });
+                                            //}
+                                            DFC.Add(new DataFormCtq
+                                            {
+                                                PPID = ProductMainSN[i],
+                                                PROCESS_NAME = stationConfig.DataInfo.PROCESS_NAME,
+                                                PROCESS_START_TIME = _LastMesCheckTime[i].ToString("yyyy-MM-ddTHH:mm:ss.fffffff") + "+08:00",
+                                                CTQ_NAME = "CC1",
+                                                CTQ_VALUE = mes_cc["1"],
+                                                CTQ_LSL = currentProduct.GlobalParamEx.CC1DownLimit.ToString("F3"),
+                                                CTQ_USL = currentProduct.GlobalParamEx.CC1UpLimit.ToString("F3"),
+                                                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,
+                                                WO = wo[i],
+                                                MFG_LOT = stationConfig.DataInfo.MFG_LOT,
+                                                MFG_ASSY_LINE = stationConfig.DataInfo.MFG_ASSY_LINE,
+                                                PROCESS_OUTCOME = assyPress ? "Pass" : "Fail",
+                                                PROCESS_MACHINE_ID = stationConfig.DataInfo.PROCESS_MACHINE_ID,
+                                                CTQ_UNIT_OF_MEASURE = "mm",
+                                                ERROR_MESSAGE = assyPress ? "" : "CC OOS",
+                                            });
+                                            DFC.Add(new DataFormCtq
+                                            {
+                                                PPID = ProductMainSN[i],
+                                                PROCESS_NAME = stationConfig.DataInfo.PROCESS_NAME,
+                                                PROCESS_START_TIME = _LastMesCheckTime[i].ToString("yyyy-MM-ddTHH:mm:ss.fffffff") + "+08:00",
+                                                CTQ_NAME = "CC2",
+                                                CTQ_VALUE = mes_cc["2"],
+                                                CTQ_LSL = currentProduct.GlobalParamEx.CC2DownLimit.ToString("F3"),
+                                                CTQ_USL = currentProduct.GlobalParamEx.CC2UpLimit.ToString("F3"),
+                                                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,
+                                                WO = wo[i],
+                                                MFG_LOT = stationConfig.DataInfo.MFG_LOT,
+                                                MFG_ASSY_LINE = stationConfig.DataInfo.MFG_ASSY_LINE,
+                                                PROCESS_OUTCOME = assyPress ? "Pass" : "Fail",
+                                                PROCESS_MACHINE_ID = stationConfig.DataInfo.PROCESS_MACHINE_ID,
+                                                CTQ_UNIT_OF_MEASURE = "mm",
+                                                ERROR_MESSAGE = assyPress ? "" : "CC OOS",
+                                            });
                                             DFC.Add(new DataFormCtq
                                             {
                                                 PPID = code,