From 0756bf12d10cf1b7f78c571de0a9ad69cbaeb7ca Mon Sep 17 00:00:00 2001
From: curtis <curtis@i-mps.com>
Date: 星期一, 30 三月 2026 14:24:17 +0800
Subject: [PATCH] fix: 更新內部引用方法參照

---
 reassemble/bloc/caseManager.pas |   60 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 60 insertions(+), 0 deletions(-)

diff --git a/reassemble/bloc/caseManager.pas b/reassemble/bloc/caseManager.pas
new file mode 100644
index 0000000..f7d6d2e
--- /dev/null
+++ b/reassemble/bloc/caseManager.pas
@@ -0,0 +1,60 @@
+{ ==============================================================================
+  方法名稱:SetUseCase
+  引用相依:
+  方法描述:管理案件間的文件引用紀錄。此方法使用 Tinifile 操作案件目錄下的 UseCas
+            e.ini 檔案。當 Mode 為 'A' (Add) 時,會在指定的 DocDir 區段下紀錄來源
+            案件 (FROM_CASEID) 與目標案件 (TO_CASEID) 的引用關係;當 Mode 為 'D' 
+            (Delete) 時,則會移除該目錄對應的引用資訊。這用於追蹤不同案件間影像資
+            源的重複利用情況。
+============================================================================== }
+Procedure TCB_IMGPSScanX.SetUseCase(Mode:Char;Path,DocDir,FormCaseID,ToCaseID:String);   //記錄引用其他案件 A:加入 D:刪掉
+var
+  ini : Tinifile;
+begin
+  ini := Tinifile.Create(Path+'UseCase.ini');
+  try
+    case Mode of
+      'A':begin
+            ini.WriteString(DocDir,'FROM_CASEID',FormCaseID);
+            ini.WriteString(DocDir,'TO_CASEID',ToCaseID);
+          end;
+      'D':begin
+            ini.EraseSection(DocDir);
+          end;
+    end;
+
+  finally
+  ini.Free;
+  end;
+end;
+
+
+{ ==============================================================================
+  方法名稱:GetUseCase
+  引用相依:
+  方法描述:取得指定目錄的文件引用資訊。方法讀取 UseCase.ini 設定檔,根據 Mode 參
+            數返回對應的案件 ID:模式 'F' 返回被引用的來源案件 ID (FROM_CASEID),
+            模式 'T' 返回執行引用的目標案件 ID (TO_CASEID)。若查無紀錄則返回空字
+            串。
+============================================================================== }
+Function TCB_IMGPSScanX.GetUseCase(Mode:Char;Path,DocDir:String):String;  //F:取被引用 To:引用
+var
+  ini : Tinifile;
+begin
+  ini := Tinifile.Create(Path+'UseCase.ini');
+  try
+    case Mode of
+      'F':begin
+            Result := ini.ReadString(DocDir,'FROM_CASEID','');
+          end;
+      'T':begin
+            Result := ini.ReadString(DocDir,'TO_CASEID','');
+          end;
+    end;
+  finally
+  ini.Free;
+  end;
+
+end;
+
+

--
Gitblit v1.8.0