@@ -27,6 +27,9 @@ public class DataIO {
2727
2828 /** グループ全体を保存(各テーブルへの分割保存) */
2929 public static boolean saveGroupData (GroupData g , long clientVersion ) {
30+
31+ Bukkit .getLogger ().info ("[DEBUG] 保存対象 groupUUID: " + g .groupUUID );
32+ Bukkit .getLogger ().info ("[DEBUG] 保存対象 groupName: " + g .groupName );
3033 try (Connection conn = db .getConnection ()) {
3134 // 最新version取得
3235 String selectSql = "SELECT version FROM group_table WHERE group_uuid = ?" ;
@@ -40,6 +43,7 @@ public static boolean saveGroupData(GroupData g, long clientVersion) {
4043
4144 // バージョン不一致なら競合
4245 if (dbVersion != clientVersion ) {
46+ Bukkit .getLogger ().info ("V不一致" );
4347 return false ;
4448 }
4549
@@ -69,6 +73,7 @@ public static boolean saveGroupData(GroupData g, long clientVersion) {
6973
7074 // 成功したので差分ログを保存
7175 DiffLogManager .saveDiffLogs (BetterStorage .BSPlugin .getDatabaseManager (), g );
76+ Bukkit .getLogger ().info ("保存成功らしい" );
7277 return true ;
7378 } catch (SQLException e ) {
7479 Bukkit .getLogger ().warning ("GroupDataの保存に失敗: " + e .getMessage ());
@@ -171,15 +176,23 @@ private static void saveStorageData(Connection conn, GroupData g) throws SQLExce
171176 }
172177 }
173178
174- public static boolean saveInventoryOnly (GroupData g , String pageId ) {
179+ public static boolean saveInventoryOnly (GroupData g , StorageData storageData , String pageId ) {
175180 try (Connection conn = db .getConnection ()) {
176- InventoryData inv = g .storageData .storageInventory .get (pageId );
177- if (inv == null ) return false ;
181+ InventoryData inv = storageData .storageInventory .get (pageId );
182+ storageData .groupUUID = g .groupUUID ;
183+ g .storageData = storageData ;
184+ if (inv == null ) {
185+ return false ;
186+ }
178187
179- if (!inv .isFullyLoaded ()) return false ;
188+ if (!inv .isFullyLoaded ()) {
189+ g .storageData .loadPage (conn , g .ownerPlugin , pageId );
190+ }
180191
181192 long dbVersion = getGroupVersion (conn , g .groupUUID );
182- if (dbVersion != g .version ) return false ;
193+ if (dbVersion != g .version ) {
194+ return false ;
195+ }
183196 g .version = dbVersion + 1 ;
184197
185198 saveSinglePage (conn , g , pageId , inv );
@@ -345,22 +358,37 @@ private static StorageData loadStorageMetaOnly(Connection conn, UUID groupUUID)
345358 try (PreparedStatement ps = conn .prepareStatement (
346359 "SELECT plugin_name, bank_money, require_bank_permission FROM storage_table WHERE group_uuid = ?" )) {
347360 ps .setString (1 , groupUUID .toString ());
361+
362+ Bukkit .getLogger ().info ("[Debug] Executing query for group_uuid = " + groupUUID );
363+
348364 try (ResultSet rs = ps .executeQuery ()) {
349- if (!rs .next ()) return null ;
365+ if (!rs .next ()){
366+ Bukkit .getLogger ().warning ("[Debug] No result found for group_uuid = " + groupUUID );
367+ return null ;
368+ }
350369 pluginName = rs .getString ("plugin_name" );
351370 bankMoney = rs .getDouble ("bank_money" );
371+ String requireBankPermRaw = rs .getString ("require_bank_permission" );
352372 requireBankPerm = gson .fromJson (rs .getString ("require_bank_permission" ), new TypeToken <Set <String >>() {}.getType ());
373+
374+ Bukkit .getLogger ().info ("[Debug] Loaded: plugin=" + pluginName + ", bank=" + bankMoney + ", perms=" + requireBankPermRaw );
353375 }
354376 }
355377
356378 Map <String , InventoryData > invMap = loadInventoryMetaOnly (conn , groupUUID , pluginName );
379+ if (invMap == null ) {
380+ Bukkit .getLogger ().warning ("[Debug] Inventory meta load failed for groupUUID = " + groupUUID );
381+ return null ;
382+ }
357383 StorageData storageData = new StorageData (requireBankPerm , invMap , bankMoney );
384+ storageData .groupData = GroupManager .getGroupByUUID (groupUUID );
358385 storageData .setFullyLoaded (false );
359386 return storageData ;
360387 }
361388 //外部呼出し用
362389 public static StorageData loadStorageMetaOnly (UUID groupUUID ) {
363390 try (Connection conn = db .getConnection ()) {
391+ Bukkit .getLogger ().info ("[Debug] loadStorageMetaOnly: groupUUID = " + groupUUID );
364392 return loadStorageMetaOnly (conn , groupUUID );
365393 } catch (SQLException e ) {
366394 Bukkit .getLogger ().warning ("StorageMetaの読み込みに失敗: " + e .getMessage ());
@@ -403,10 +431,11 @@ private static Map<String, InventoryData> loadInventoryMetaOnly(Connection conn,
403431 //外部呼出し用
404432 public static Map <String , InventoryData > loadInventoryMetaOnly (UUID groupUUID , String pluginName ) {
405433 try (Connection conn = db .getConnection ()) {
406- return loadInventoryMetaOnly (conn , groupUUID , pluginName );
434+ Map <String , InventoryData > result = loadInventoryMetaOnly (conn , groupUUID , pluginName );
435+ return result .isEmpty () ? null : result ;
407436 } catch (SQLException e ) {
408437 Bukkit .getLogger ().warning ("InventoryMetaの読み込みに失敗: " + e .getMessage ());
409- return Collections . emptyMap () ;
438+ return null ;
410439 }
411440 }
412441
0 commit comments