From bea6407b376a4e426f0b120bae569fba6ab867db Mon Sep 17 00:00:00 2001
From: chenluhua1980 <Chenluhua@qq.com>
Date: 星期六, 08 十一月 2025 17:55:47 +0800
Subject: [PATCH] 1.CMaster.cpp 第 1644/1667/1691 行在记录 SV 曲线时通过 getGlassFromSlot(0) 取玻璃,而各设备的 initSlots() 都是从 1 开始编号(例如 CBonder.cpp (line 408)、CVacuumBake.cpp (line 415) 等)。槽位 0 永远不存在,所以 pGlass 始终是 nullptr,pGlass->addSVData(...) 的分支从未执行。结果 SERVO::CGlass::m_svDatas 里没有任何曲线数据,GlassJson::ToPrettyString 生成的 pretty 字符串也就没有 sv_datas,导出 CSV 时自然读不到曲线。 同一段代码还有一个潜在 Bug:虽然判断了 channel - 1 < bonderTypes.size(),但真正索引却用的是 bonderTypes[channel]。索引偏移会导致数据类型错位,最后一个通道甚至可能越界。即使修正了槽位,这里也需要同步改成 bonderTypes[channel - 1](另外两处 vacuumbakeTypes、coolingTypes 也一样)。

---
 SourceCode/Bond/SGMeasurement/Logger.h |   30 +++++++++++++++---------------
 1 files changed, 15 insertions(+), 15 deletions(-)

diff --git a/SourceCode/Bond/SGMeasurement/Logger.h b/SourceCode/Bond/SGMeasurement/Logger.h
index aec95af..2b9f84d 100644
--- a/SourceCode/Bond/SGMeasurement/Logger.h
+++ b/SourceCode/Bond/SGMeasurement/Logger.h
@@ -1,28 +1,28 @@
-#pragma once
+锘�#pragma once
 #include <afx.h>
 
 class CLogger
 {
 public:
-    static CLogger& Instance();  // 获取单例
-    void WriteLine(CString str); // 写一行日志
-    void CloseLogFile();         // 关闭日志文件
+	static CLogger& Instance();  // 鑾峰彇鍗曚緥
+	void WriteLine(CString str); // 鍐欎竴琛屾棩蹇�
+	void CloseLogFile();         // 鍏抽棴鏃ュ織鏂囦欢
 
 private:
-    CLogger();
-    ~CLogger();
-    void OpenLogFile();          // 内部打开文件
+	CLogger();
+	~CLogger();
+	void OpenLogFile();          // 鍐呴儴鎵撳紑鏂囦欢
 
-    CCriticalSection m_csLogLock;
-    CString m_strCurrentLogPath;
-    CStdioFile m_logFile;
+	CCriticalSection m_csLogLock;
+	CString m_strCurrentLogPath;
+	CStdioFile m_logFile;
 };
 
 #define LOG_LINE(x) CLogger::Instance().WriteLine(x)
 
 #define LOG_LINEF(fmt, ...)                     \
-    do {                                        \
-        CString __log__;                        \
-        __log__.Format(fmt, __VA_ARGS__);       \
-        CLogger::Instance().WriteLine(__log__); \
-    } while (0)
\ No newline at end of file
+	do {                                        \
+		CString __log__;                        \
+		__log__.Format(fmt, __VA_ARGS__);       \
+		CLogger::Instance().WriteLine(__log__); \
+	} while (0)
\ No newline at end of file

--
Gitblit v1.9.3