/** * 建造ドックの投入資源を取得します * * @param dock ドック * @return 建造ドックの投入資源 */ @CheckForNull public static ResourceDto load(String dock) { try { if (mapBean == null) { mapBean = BeanUtils.readObject(AppConstants.KDOCK_CONFIG_FILE, KdockMapBean.class); } if (mapBean != null) { KdockBean kdock = mapBean.getKdockMap().get(dock); if (kdock == null) { return null; } Map<Long, ShipDto> ships = ShipContext.get(); if (!ships.isEmpty() && ships.containsKey(kdock.getShipId())) { ResourceDto resource = new ResourceDto( kdock.getType(), kdock.getFuel(), kdock.getAmmo(), kdock.getMetal(), kdock.getBauxite(), kdock.getResearchMaterials(), ships.get(kdock.getShipId()), kdock.getHqLevel()); resource.setFreeDock(kdock.getFreeDock()); return resource; } } } catch (Exception e) { LoggerHolder.LOG.warn("建造ドックの投入資源を取得しますに失敗しました", e); } return null; }
/** * 遠征報告書を書き込む * * @param dto 遠征結果 */ public static void storeCreateMissionReport(MissionResultDto dto) { try { List<MissionResultDto> dtoList = Collections.singletonList(dto); Path report = FileUtils.getStoreFile(AppConstants.LOG_MISSION, AppConstants.LOG_MISSION_ALT); FileUtils.writeCsvStripFirstColumn( report, CreateReportLogic.getCreateMissionResultHeader(), CreateReportLogic.getMissionResultBody(dtoList), true); } catch (IOException e) { LoggerHolder.LOG.warn("報告書の保存に失敗しました", e); } }
/** * 資材ログを書き込む * * @param material 資材 */ public static void storeMaterialReport(MaterialDto material) { try { List<MaterialDto> dtoList = Collections.singletonList(material); Path report = FileUtils.getStoreFile(AppConstants.LOG_RESOURCE, AppConstants.LOG_RESOURCE_ALT); FileUtils.writeCsvStripFirstColumn( report, CreateReportLogic.getMaterialHeader(), CreateReportLogic.getMaterialStoreBody(dtoList), true); } catch (IOException e) { LoggerHolder.LOG.warn("報告書の保存に失敗しました", e); } }
/** * 開発報告書を書き込む * * @param dto 開発報告 */ public static void storeCreateItemReport(CreateItemDto dto) { try { List<CreateItemDto> dtoList = Collections.singletonList(dto); Path report = FileUtils.getStoreFile(AppConstants.LOG_CREATE_ITEM, AppConstants.LOG_CREATE_ITEM_ALT); FileUtils.writeCsvStripFirstColumn( report, CreateReportLogic.getCreateItemHeader(), CreateReportLogic.getCreateItemBody(dtoList), true); } catch (IOException e) { LoggerHolder.LOG.warn("報告書の保存に失敗しました", e); } }
/** * 海戦・ドロップ報告書を書き込む * * @param dto 海戦・ドロップ報告 */ public static void storeBattleResultReport(BattleResultDto dto) { try { List<BattleResultDto> dtoList = Collections.singletonList(dto); Path report = FileUtils.getStoreFile( AppConstants.LOG_BATTLE_RESULT, AppConstants.LOG_BATTLE_RESULT_ALT); FileUtils.writeCsvStripFirstColumn( report, CreateReportLogic.getBattleResultStoreHeader(), CreateReportLogic.getBattleResultStoreBody(dtoList), true); } catch (IOException e) { LoggerHolder.LOG.warn("報告書の保存に失敗しました", e); } }