/** * 「初期化」に関する処理を行ないます。 * * @throws Exception 処理例外 */ public void initialize() throws Exception { // ※画面展開時の初期設定 // ※コンボアイテムの設定 // ※準備 // コンボアイテム設定用のレコード comboItemMap を生成する。 VRMap comboItemMap = new VRHashMap(); // ※開始時刻 // コードマスタデータよりCODE_ID:23(時刻・曜日の選択 / 時刻(開始))を取得する。 // 取得した値を、comboItemMapの KEY : 3 の VALUE として設定する。 comboItemMap.setData("3", QkanCommon.getArrayFromMasterCode(23, "3")); // ※終了時刻 // コードマスタデータよりCODE_ID:23(時刻・曜日の選択 / 時刻(開始))を取得する。 // 取得した値を、comboItemMapの KEY : 4 の VALUE として設定する。 comboItemMap.setData("4", QkanCommon.getArrayFromMasterCode(23, "4")); // ※コンボアイテムの設定 // 「訪問入浴介護パターン領域(homonNyuyokuPatterns)」にcomboItemMapに設定する。 getHomonNyuyokuPatterns().setModelSource(comboItemMap); // コンボアイテムを展開する。 getHomonNyuyokuPatterns().bindModelSource(); // ※選択項目の初期設定 // 訪問車種別(homonNyuyokuClass)の「看護職員1人及び介護職員2人」を選択する。 getHomonNyuyokuClass().setSelectedIndex(1); // 入浴介護区分(homonNyuyokuPartsRadio)の「なし」を選択する。 getHomonNyuyokuPartsRadio().setSelectedIndex(1); }
/** * 「初期化」に関する処理を行ないます。 * * @throws Exception 処理例外 */ public void initialize() throws Exception { // ※画面展開時の初期設定 // ※コンボアイテムの設定 // ※準備 // コンボアイテム設定用のレコード comboItemMap を生成する。 VRMap comboItemMap = new VRHashMap(); // ※設定 // ※開始時刻 // コードマスタデータよりCODE_ID:23(時刻・曜日の選択 / 時刻(開始))を取得する。 // 取得した値を、comboItemMapの KEY : 3 の VALUE として設定する。 comboItemMap.setData("3", QkanCommon.getArrayFromMasterCode(23, "4")); // ※終了時刻 // コードマスタデータよりCODE_ID:23(時刻・曜日の選択 / 時刻(開始))を取得する。 // 取得した値を、comboItemMapの KEY : 4 の VALUE として設定する。 comboItemMap.setData("4", QkanCommon.getArrayFromMasterCode(23, "4")); // ※展開 // 自身(this)にcomboItemMapに設定する。 getThis().setModelSource(comboItemMap); // コンボアイテムを展開する。 getThis().bindModelSource(); // ※選択項目の初期設定 // ※準備 // 初期選択設定用のレコード defaultMap を生成する。 VRMap defaultMap = new VRHashMap(); // ※設定 // 画面のラジオの初期値を設定する。(selectFirstRadioItem) QkanCommon.selectFirstRadioItem(getThis()); // ※展開 // 自身(this)にdefaultMapに設定する。 getThis().setSource(defaultMap); // 初期選択項目を展開する。 getThis().bindSource(); // 画面状態制御 checkState(); }
/** * 「初期化」に関する処理を行ないます。 * * @throws Exception 処理例外 */ public void initialize() throws Exception { // ※画面展開時の初期設定 // ※コンボアイテムの設定 // ※準備 // コンボアイテム設定用のレコード comboItemMap を生成する。 VRMap comboItemMap = new VRHashMap(); // ※設定 // ※展開 // 自身(this)にcomboItemMapに設定する。 getThis().setModelSource(comboItemMap); // コンボアイテムを展開する。 getThis().bindModelSource(); // ※選択項目の初期設定 QkanCommon.selectFirstRadioItem(getThis()); // ※準備 // 初期選択設定用のレコード defaultMap を生成する。 VRMap defaultMap = new VRHashMap(); // ※設定 // ※展開 // 自身(this)にdefaultMapに設定する。 getThis().setSource(defaultMap); // 初期選択項目を展開する。 getThis().bindSource(); if (isPlanMode()) { setState_PLAN_MODE(); } else { setState_RESULT_MODE(); } }
public static void main(String[] args) { // デフォルトデバッグ起動 ACFrame.getInstance().setFrameEventProcesser(new QkanFrameEventProcesser()); QkanCommon.debugInitialize(); VRMap param = new VRHashMap(); // paramに渡りパラメタを詰めて実行することで、簡易デバッグが可能です。 ACFrame.debugStart(new ACAffairInfo(QS001_17411_201204.class.getName(), param)); }
/** * 「初期化」に関する処理を行ないます。 * * @throws Exception 処理例外 */ public void initialize() throws Exception { // ※初期化 // ※初期値設定 // 割引率テキストに初期値0を代入する。 getReduceRate().setText("0"); // ラジオの値を初期化する QkanCommon.selectFirstRadioItem(getThis()); }
/** * 「初期化」に関する処理を行ないます。 * * @throws Exception 処理例外 */ public void initialize() throws Exception { // ※画面展開時の初期設定 getShortStayDementiaRecuperationSpecificConsultationFee().clearDataModel(); // QS001199_H2104(特定診療費)よりサービス種類(SYSTEM_SERVICE_KIND_DETAIL)に応じたbindPath配列を取得し、特定診療費ボタンに設定する。 getShortStayDementiaRecuperationSpecificConsultationFee() .setBindPathes(QS001S01_201204.getTargetBindPathes(SYSTEM_SERVICE_KIND_DETAIL)); // ※コンボアイテムの設定 // ※準備 // コンボアイテム設定用のレコード comboItemMap を生成する。 VRMap comboItemMap = new VRHashMap(); // ※設定 // ※食事提供 // コードマスタデータよりCODE_ID:191(食事提供)を取得する。 // 取得した値を、comboItemMapの KEY : 1230347 の VALUE として設定する。 comboItemMap.setData("1230347", QkanCommon.getArrayFromMasterCode(191, "1230347")); // ※人員減算 // コードマスタデータよりCODE_ID:77(人員減算)を取得する。 // 取得した値を、comboItemMapの KEY : 1230346 の VALUE として設定する。 comboItemMap.setData("1230346", QkanCommon.getArrayFromMasterCode(66, "1230346")); // ※時間区分 // コードマスタデータよりCODE_ID:273(時間区分)を取得する。 // 取得した値を、comboItemMapの KEY : 1230352 の VALUE として設定する。 comboItemMap.setData("1230352", QkanCommon.getArrayFromMasterCode(273, "1230352")); // ※展開 // 自身(this)にcomboItemMapに設定する。 getThis().setModelSource(comboItemMap); // コンボアイテムを展開する。 getThis().bindModelSource(); // ※選択項目の初期設定 QkanCommon.selectFirstRadioItem(getThis()); // ※準備 // 初期選択設定用のレコード defaultMap を生成する。 VRMap defaultMap = new VRHashMap(); // ※設定 // 食事提供 VRBindPathParser.set("1230347", defaultMap, new Integer(1)); // 人員減算 VRBindPathParser.set("1230346", defaultMap, new Integer(1)); // ※展開 // 自身(this)にdefaultMapに設定する。 getThis().setSource(defaultMap); // 初期選択項目を展開する。 getThis().bindSource(); }
/** * 「初期化」に関する処理を行ないます。 * * @throws Exception 処理例外 */ public void initialize() throws Exception { // ※画面展開時の初期設定 // ※選択項目の初期設定 QkanCommon.selectFirstRadioItem(this); // 初期選択設定用のレコード defaultMap を生成する。 VRMap defaultMap = new VRHashMap(); // 自身(this)にdefaultMapに設定する。 getThis().setSource(defaultMap); // 初期選択項目を展開する。 getThis().bindSource(); }
/** * 「入力内容の不備を検査」に関する処理を行ないます。 * * @throws Exception 処理例外 */ public VRMap getValidData() throws Exception { // ※入力内容に不備がないかをチェックし、サービスデータを返す。 // ※返却用のレコード(data)を生成 VRMap data = new VRHashMap(); // 自身(this)のソースとして生成レコードを設定する。 getThis().setSource(data); // 自身(this)のapplySourceを呼び出してデータを収集する。 getThis().applySource(); // ※返却用レコードから不要なキーを除去 QkanCommon.removeDisabledBindPath(getThis(), data); // 問題なければ返却用レコード(data)を返す。 return data; }
/** * 「入力内容の不備を検査」に関する処理を行ないます。 * * @throws Exception 処理例外 */ public VRMap getValidData() throws Exception { // ※入力内容に不備がないかをチェックし、サービスデータを返す。 if (getShortStayDementiaRecuperationDinnerOffer().getSelectedIndex() > 0) { // 食事提供(shortStayDementiaRecuperationDinnerOffer)が「なし」以外を選択している場合 if (ACTextUtilities.isNullText(getShortStayDementiaRecuperationDinnerCost().getText())) { // 食事費用(shortStayDementiaRecuperationDinnerCost)が空欄の場合 // 内容詳細の不備メッセージを表示する。※ID=QS001_ERROR_OF_NO_CONTENT QkanMessageList.getInstance().QS001_ERROR_OF_NO_CONTENT(); // nullを返す。 return null; } } // 人員配置区分が有効である場合 if (getShortStayDementiaRecuperationDivision().isEnabled()) { // 現在選択中のボタンが無効であった場合 if (!getShortStayDementiaRecuperationDivision().getSelectedButton().isEnabled()) { // 内容詳細の不備メッセージを表示する。※ID=QS001_ERROR_OF_NO_CONTENT QkanMessageList.getInstance().QS001_ERROR_OF_NO_CONTENT(); // nullを返す。 return null; } } if (getTankinyusyoTimeDivision().isEnabled()) { // 時間区分(tankinyusyoTimeDivision)が有効な場合(ショートステイ) if (getTankinyusyoTimeDivision().getSelectedIndex() < 0) { // 時間区分(tankinyusyoTimeDivision)が未選択の場合 // 内容詳細の不備メッセージを表示する。※ID=QS001_ERROR_OF_NO_CONTENT QkanMessageList.getInstance().QS001_ERROR_OF_NO_CONTENT(); // nullを返す。 return null; } } // ※返却用のレコード(data)を生成 VRMap data = new VRHashMap(); // 自身(this)のソースとして生成レコードを設定する。 getThis().setSource(data); // 自身(this)のapplySourceを呼び出してデータを収集する。 getThis().applySource(); // ※返却用レコードから不要なキーを除去 QkanCommon.removeDisabledBindPath(getThis(), data); // 問題なければ返却用レコード(data)を返す。 return data; }
/** * 「入力内容の不備を検査」に関する処理を行ないます。 * * @throws Exception 処理例外 */ public VRMap getValidData() throws Exception { // ※入力内容に不備がないかをチェックし、サービスデータを返す。 if ((!getHomonNyuyokuBeginTime().isValidDate()) || (!getHomonNyuyokuEndTime().isValidDate())) { // 開始時刻コンボ(homonNyuyokuBeginTime)と終了時刻コンボ(homonNyuyokuEndTime)のいずれかが空欄か不正の場合 // 時刻の不備メッセージを表示する。※ID=QS001_ERROR_OF_NO_TIME QkanMessageList.getInstance().QS001_ERROR_OF_NO_TIME(); // nullを返す。 return null; } // ※返却用のレコード(data)を生成 VRMap data = new VRHashMap(); // 自身(this)のソースとして生成レコードを設定する。 getThis().setSource(data); // 自身(this)のapplySourceを呼び出してデータを収集する。 getThis().applySource(); // ※返却用レコードから不要なキーを除去 QkanCommon.removeDisabledBindPath(getThis(), data); // 問題なければ返却用レコード(data)を返す。 return data; }
/** * 初期化処理を行ないます。 * * @param affair 業務情報 * @throws Exception 処理例外 */ protected void initAction(ACAffairInfo affair) throws Exception { // エラーなし final int NO_ERROR = 0; // DB接続エラー final int DB_ERROR = 1; // 自事業所なし final int NO_PROVIDER = 2; // 保険者なし final int NO_INSURER = 4; // 利用者なし final int NO_PATIENT = 8; // PDFビューワなし final int NOT_FOUND_PDF_VIEWER = 16; // システムバージョン不正 final int SYSTEM_VERSION_ERROR = 32; // DBMSバージョン不正 final int DBMS_VERSION_ERROR = 64; // DBバージョン不正 final int DB_MASTER_VERSION_ERROR = 128; int errorFlag = NO_ERROR; // メインメニューキャッシュをクリア QkanSystemInformation.getInstance().setMenuTree(null); // システム日付をセット Date systemDate = QkanSystemInformation.getInstance().getSystemDate(); VRMap map = new VRHashMap(); map.setData("SYSTEM_DATE", systemDate); getCombos().setSource(map); getCombos().bindSource(); boolean properityReloaded = false; ACPropertyXML xml = ACFrame.getInstance().getPropertyXML(); if (xml != null) { // 設定ファイルを再読み込みする。 try { xml.read(); properityReloaded = true; } catch (Exception ex) { VRLogger.info(ex); } } String systemVersion = "取得失敗"; // 設定ファイル(QkanPropertyXML.xml)のプロパティ「Version/no」を取得する。 if (properityReloaded && ACFrame.getInstance().hasProperty("Version/no")) { // 取得できた場合 // システムの「システムバージョン」に、取得した値を設定する。 systemVersion = getProperty("Version/no"); setState_VALID_VERSION(); } else { // 取得できなかった場合 errorFlag |= SYSTEM_VERSION_ERROR; setState_INVALID_VERSION(); } // システムの「システムバージョン」に、「取得失敗」を設定する。 QkanSystemInformation.getInstance().setSystemVersion(systemVersion); String dbmsVersion = "unknown"; String schemeVersion = "取得失敗"; String masterDataVersion = "取得失敗"; if (errorFlag == NO_ERROR) { // DBの接続チェックを行う。 if (getDBManager().canConnect()) { // 成功した場合 // 次処理へ。 ACDBManager dbm = getDBManager(); if (dbm instanceof ACLoggerDBManager) { dbm = ((ACLoggerDBManager) dbm).getAdaptee(); } if (dbm instanceof BridgeFirebirdDBManager) { try { dbmsVersion = ((BridgeFirebirdDBManager) dbm).getDBMSVersion(); } catch (Exception ex) { } } if (("unknown".equals(dbmsVersion)) || (dbmsVersion.indexOf("Firebird 1.0") >= 0)) { errorFlag |= DBMS_VERSION_ERROR; setState_INVALID_DBMS(); } else { setState_VALID_DB(); } } else { // 失敗した場合 errorFlag |= DB_ERROR; setState_INVALID_DB_CONNECTION(); } if (errorFlag == NO_ERROR) { // モジュールの対象バージョンに合わせてデータベースを整形する。 try { new ACVersionAdjuster() .adjustment( getDBManager(), "version/update.xml", new QkanVersionAdjustmentListener(getDBManager())); systemVersion = QkanSystemInformation.getInstance().getSystemVersion(); } catch (Exception ex) { VRLogger.info(ex); } // 給付管理台帳システムバージョン情報取得用のSQL文を取得する。 // getSQL_GET_QKAN_VERSION(null); // 取得したSQL文を発行する。 VRList versionList = getDBManager().executeQuery(getSQL_GET_QKAN_VERSION(null)); // 取得件数が0件より多い場合 if (versionList.size() > 0) { // システムの「マスタデータバージョン」に、取得したマスタデータバージョンを設定する。 // setMasterDataVersion((マスターデータバージョン)); masterDataVersion = ACCastUtilities.toString( VRBindPathParser.get("MASTER_DATA_VERSION", (VRMap) versionList.getData())); // システムにマスタデータバージョンを退避する。 // setSchemeVersion((スキーマバージョン)); schemeVersion = ACCastUtilities.toString( VRBindPathParser.get("SCHEME_VERSION", (VRMap) versionList.getData())); } else { // 取得件数が0件の場合 errorFlag |= DB_MASTER_VERSION_ERROR; setState_INVALID_MASTER_VERSION(); } } } // 画面の「システムバージョン(systemVersion)」に、「取得失敗」を設定する。 getSystemVersion().setText(systemVersion); // システムの「マスタデータバージョン」に、取得したマスタデータバージョンを設定する。 // setMasterDataVersion((マスターデータバージョン)); QkanSystemInformation.getInstance().setMasterDataVersion(masterDataVersion); // システムにマスタデータバージョンを退避する。 // setSchemeVersion((スキーマバージョン)); QkanSystemInformation.getInstance().setSchemeVersion(schemeVersion); if (errorFlag == NO_ERROR) { // コードマスタ取得用のSQL文を取得する。 // getSQL_GET_MASTER_CODE(null); // 取得したSQL文を発行する。 VRList masterCodeList = getDBManager().executeQuery(getSQL_GET_MASTER_CODE(null)); // 取得件数が0件より多い場合 if (masterCodeList.size() > 0) { // システムの「コードマスタ」に設定するための形式に変換する。 // ・CODE_ID毎にArrayListに格納する。 // ・KEY : CODE_ID, VALUE : CODE_ID毎のレコード集合 // として、レコードに格納する。 // システムの「コードマスタ」に、変換したレコードを格納する。 // setCodeMaster((変換したレコード)); VRMap fullCodeM = new VRHashMap(); Integer lastKey = null; VRList codeM = null; Iterator it = masterCodeList.iterator(); while (it.hasNext()) { VRMap row = (VRMap) it.next(); Integer key = Integer.valueOf(String.valueOf(VRBindPathParser.get("CODE_ID", row))); if (key != null) { if (!key.equals(lastKey)) { codeM = new VRArrayList(); fullCodeM.setData(key, codeM); lastKey = key; } codeM.addData(row); } } // コードマスタをシステム共通に設定 QkanSystemInformation.getInstance().setMasterCode(fullCodeM); } else { // 取得件数が0件の場合 // システムの「コードマスタ」に、空のレコードを格納する。 // setCodeMaster((空のレコード)); QkanSystemInformation.getInstance().setMasterCode(null); } // 業務情報レコードを取得する。 // ウィンドウタイトルに、取得レコードのKEY : WINDOW_TITLEのVALUEを設定する。 // 業務ボタンバーのテキストに、取得レコードのKEY : AFFAIR_TITLEのVALUEを設定する。 setAffairTitle("QM001"); // 「事業所一覧(providerList)」に設定する自事業所一覧取得用のSQL文を取得する。 // getSQL_GET_MY_PROVIDER(null); // 取得したSQL文を発行する。 VRList providerList = getDBManager().executeQuery(getSQL_GET_MY_PROVIDER(null)); // レコード数が0件より多い場合 if (providerList.size() > 0) { // コンボアイテム設定用のレコード comboItemMap を生成する。 VRMap comboItemMap = new VRHashMap(); // 取得したレコード集合を、comboItemMap の KEY : PROVIDER_LISTS の // VALUE // として設定する。 comboItemMap.setData("PROVIDER_LISTS", providerList); // 「コンボ領域(combos)」のmodelとして、comboItemMapを設定する。 getContents().setModelSource(comboItemMap); // 「コンボ領域(combos)」にmodelを展開する。 getContents().bindModelSource(); // 取得したリストの一番上を選択状態にする。 getProviderList().setSelectedIndex(0); setState_VALID_PROVIDER(); } else { // レコード数が0件の場合 setState_INVALID_PROVIDER(); errorFlag |= NO_PROVIDER; } if (errorFlag == NO_ERROR) { if (QkanCommon.getInsurerInfo(getDBManager()).isEmpty()) { // 保険者がない場合 setState_INVALID_INSURER(); errorFlag |= NO_INSURER; } else { // 保険者が有る場合 setState_VALID_INSURER(); } if (QkanCommon.getPatientInfo(getDBManager()).isEmpty()) { // 利用者がない場合 setState_INVALID_PATIENT(); errorFlag |= NO_PATIENT; } else { // 利用者が有る場合 setState_VALID_PATIENT(); } if (String.valueOf(System.getProperty("os.name")).toLowerCase().indexOf("mac") < 0) { // Mac以外 if (hasProperty("Acrobat/Path") && new File(getProperty("Acrobat/Path")).exists()) { setState_VALID_PDF_VIEWER(); } else { setState_INVALID_PDF_VIEWER(); errorFlag |= NOT_FOUND_PDF_VIEWER; } } else { // Macの場合 setState_VALID_PDF_VIEWER(); } // 印刷用PDFファイル格納用フォルダが存在するかチェックする。 File pdfFile = new File("pdf"); // 存在する場合 if (pdfFile.exists()) { // 印刷用PDFファイル格納用フォルダ内の全てのPDFファイルを削除する。 String[] fileList = pdfFile.list(); for (int i = 0; i < fileList.length; i++) { File deleteFile = new File(pdfFile, fileList[i]); deleteFile.delete(); } } } // 番号管理テーブルの再採番 getDBManager().beginTransaction(); try { getDBManager().executeUpdate(getSQL_UPDATE_NO_OF_SERVICE(null)); getDBManager().executeUpdate(getSQL_UPDATE_NO_OF_PROVIDER_SERVICE(null)); getDBManager().executeUpdate(getSQL_UPDATE_NO_OF_CLAIM(null)); getDBManager().commitTransaction(); } catch (Exception ex) { getDBManager().rollbackTransaction(); VRLogger.info(ex); } } StringBuffer sb = new StringBuffer(); sb.append("OS : "); sb.append(System.getProperty("os.name", "unknown")); String patch = System.getProperty("sun.os.patch.level", ""); if (!patch.equalsIgnoreCase("unknown")) { sb.append(" "); sb.append(patch); } sb.append(ACConstants.LINE_SEPARATOR); sb.append("VM : "); sb.append(System.getProperty("java.vendor", "unknown")); sb.append(" "); sb.append(System.getProperty("java.version", "-")); sb.append(ACConstants.LINE_SEPARATOR); sb.append("Firebird : "); sb.append(dbmsVersion); sb.append(ACConstants.LINE_SEPARATOR); sb.append("システムversion : "); sb.append(systemVersion); sb.append(ACConstants.LINE_SEPARATOR); sb.append("データversion : "); sb.append(masterDataVersion); sb.append(ACConstants.LINE_SEPARATOR); sb.append("スキーマversion : "); sb.append(schemeVersion); getEnvironment().setText(sb.toString()); // 画面最大化 ACFrame.getInstance().setExtendedState(Frame.MAXIMIZED_BOTH); try { // 設定ファイル変更対応 if (!ACFrame.getInstance().hasProperty("Claim/Cleaned")) { if (ACFrame.getInstance().hasProperty("Claim/Folder")) { Object m = ACFrame.getInstance().getPropertyXML().getData("Claim"); if (m instanceof Map) { ((Map) m).remove("Folder"); } } if (ACFrame.getInstance().hasProperty("Claim/Info")) { Object m = ACFrame.getInstance().getPropertyXML().getData("Claim"); if (m instanceof Map) { ((Map) m).remove("Info"); } } ACFrame.getInstance().getPropertyXML().setForceValueAt("Claim/Cleaned", "true"); ACFrame.getInstance().getPropertyXML().write(); } } catch (Exception ex) { } if ((affair.getParameters() != null) && (affair.getParameters().get("STOP_AUTO_LOGIN") != null)) { // メインメニューの明示的なログアウトでは自動ログインを禁止 affair.getParameters().remove("STOP_AUTO_LOGIN"); } else { if ((errorFlag == NO_ERROR) && getProviderList().isSelected() && getProviderList().getItemCount() == 1) { // 自動ログイン startActionPerformed(null); } } }
public static void main(String[] args) { // デフォルトデバッグ起動 ACFrame.getInstance().setFrameEventProcesser(new QkanFrameEventProcesser()); QkanCommon.debugInitialize(); ACFrame.debugStart(new ACAffairInfo(QS001004.class.getName())); }
public ArrayList<VRMap> getServiceCode(Map<String, String> map, ACDBManager dbm) { ArrayList<VRMap> al = super.getServiceCode(map, dbm); Map<String, Integer> mp = null; // 特定入所者チェックがついてなかった場合は食費を上書きせずに返す // [ID:0000749][Shin Fujihara] 2012/10 edit begin 2012年度対応 特定入所者の履歴管理機能 // if (new Integer(1).equals(map.get("7")) || "1".equals(map.get("7"))) { // // 食費は必要ないためデータを消す // return al; // } if (ACCastUtilities.toInt(map.get("7"), 1) != 2) { // 食費は必要ないためデータを消す return al; } // [ID:0000749][Shin Fujihara] 2012/10 edit end 2012年度対応 特定入所者の履歴管理機能 // 事業所情報の取得 VRList temp = new VRArrayList(); try { temp = QkanCommon.getProviderServiceDetail( dbm, ACCastUtilities.toString(map.get("PROVIDER_ID")), ACCastUtilities.toInt(getSystemServiceKindDetail(), 0)); } catch (Exception e) { return al; } VRMap providerInfo = (VRMap) temp.get(0); for (int i = 0; i < al.size(); i++) { mp = (Map<String, Integer>) al.get(i); String val = ACCastUtilities.toString(mp.get("SYSTEM_SERVICE_CODE_ITEM"), ""); if (SERVICE_CODE_SHOKUHI.equals(val)) { // 食費のレコード if (this.shokuhi <= 0) { // 食費が0円以下の場合 // 該当レコードを削除する。 al.remove(i); // 削除したためインデックスを1つ戻す。 i--; } else { // 食費が0円以下でない場合 // 食費を業務から渡された値で上書きする。 mp.put("SERVICE_UNIT", new Integer(this.shokuhi)); } } else if (SERVICE_CODE_UNIT_ROOM.equals(val)) { // ユニット型個室のレコード // 費用単価が0以下で設定されている場合、戻り値から削除 // ユニット型個室の費用単価を取得 int unitRoom = ACCastUtilities.toInt(providerInfo.get(this.PATH_UNIT_ROOM), 0); if (unitRoom <= 0) { // 該当レコードを削除する。 al.remove(i); // 削除したためインデックスを1つ戻す。 i--; } } else if (SERVICE_CODE_UNIT_SEMI_ROOM.equals(val)) { // ユニット型準個室のレコード // 費用単価が0以下で設定されている場合、戻り値から削除 // ユニット型準個室の費用単価を取得 int unitSemiRoom = ACCastUtilities.toInt(providerInfo.get(this.PATH_UNIT_SEMI_ROOM), 0); if (unitSemiRoom <= 0) { // 該当レコードを削除する。 al.remove(i); // 削除したためインデックスを1つ戻す。 i--; } } else if (SERVICE_CODE_NORMAL_ROOM.equals(val)) { // 従来型個室のレコード // 費用単価が0以下で設定されている場合、戻り値から削除 // 従来型個室の費用単価を取得 int normalRoom = ACCastUtilities.toInt(providerInfo.get(this.PATH_NORMAL_ROOM), 0); if (normalRoom <= 0) { // 該当レコードを削除する。 al.remove(i); // 削除したためインデックスを1つ戻す。 i--; } } else if (SERVICE_CODE_TASHO_ROOM.equals(val)) { // 多床室のレコード // 費用単価が0以下で設定されている場合、戻り値から削除 // 多床室の費用単価を取得 int tashoRoom = ACCastUtilities.toInt(providerInfo.get(this.PATH_TASHO_ROOM), 0); if (tashoRoom <= 0) { // 該当レコードを削除する。 al.remove(i); // 削除したためインデックスを1つ戻す。 i--; } } } return al; }