/** * 起動時に取得したデータの中から、insurerNmからinsurerNoを取得します。 * * @param nm insurerNm * @return insurerNo */ private String findInsurerNo(String nm) { for (int i = 0; i < insurerData.getDataSize(); i++) { VRMap hash = (VRMap) insurerData.getData(i); String nmTmp = String.valueOf(hash.getData("INSURER_NM")); if (nm.equals(nmTmp)) { return String.valueOf(hash.getData("INSURER_NO")); } } return ""; }
/** * 登録処理が可能かどうかをチェックします。 * * @return true:OK, false:NG */ private boolean canSubmit() { // 保険者番号・未選択チェック if (insurerNm.getSelectedIndex() < 0) { insurerNm.requestFocus(); ACMessageBox.show("保険者を選択してください。", ACMessageBox.BUTTON_OK, ACMessageBox.ICON_EXCLAMATION); return false; } // 事業所番号・未入力チェック if (IkenshoCommon.isNullText(jigyoushoNoField.getText())) { jigyoushoNoField.requestFocus(); ACMessageBox.show("事業所番号を入力してください。", ACMessageBox.BUTTON_OK, ACMessageBox.ICON_EXCLAMATION); return false; } // 保険者重複チェック boolean checkFlg = true; if (isUpdate) { if (insurerNoOld.equals(insurerNoField.getText())) { // 更新であり、保険者に変更が無い場合はチェックしない checkFlg = false; } } if (checkFlg) { String insurerNoNew = insurerNoField.getText(); VRArrayList data = (VRArrayList) affair.getData("DATA"); for (int i = 0; i < data.getDataSize(); i++) { VRMap tmp = (VRMap) data.getData(i); String dataInsurerNo = tmp.getData("INSURER_NO").toString(); if (dataInsurerNo.equals(insurerNoNew)) { insurerNm.requestFocus(); ACMessageBox.show( "同一の保険者が既に登録されています。", ACMessageBox.BUTTON_OK, ACMessageBox.ICON_EXCLAMATION); return false; } } } // 事業所番号・桁数チェック if (jigyoushoNoField.getText().length() < 10) { jigyoushoNoField.requestFocus(); int result = ACMessageBox.show( "事業所番号が数字10桁入力されていません。\nよろしいですか?", ACMessageBox.BUTTON_OKCANCEL, ACMessageBox.ICON_QUESTION, ACMessageBox.FOCUS_CANCEL); if (result == ACMessageBox.RESULT_CANCEL) { return false; } } return true; }
private void initComponent(VRMap affair) throws Exception { // ウィンドウのサイズ setSize(new Dimension(470, 110)); // ウィンドウを中央に配置 Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); Dimension frameSize = this.getSize(); if (frameSize.height > screenSize.height) { frameSize.height = screenSize.height; } if (frameSize.width > screenSize.width) { frameSize.width = screenSize.width; } this.setLocation( (screenSize.width - frameSize.width) / 2, (screenSize.height - frameSize.height) / 2); // 保険者一覧をDBから取得・コンボに設定する IkenshoFirebirdDBManager dbm = new IkenshoFirebirdDBManager(); StringBuffer sb = new StringBuffer(); sb.append(" SELECT"); sb.append(" INSURER_NO"); sb.append(" ,INSURER_NM"); sb.append(" FROM"); sb.append(" INSURER"); insurerData = (VRArrayList) dbm.executeQuery(sb.toString()); IkenshoCommon.applyComboModel( insurerNm, new VRHashMapArrayToConstKeyArrayAdapter(insurerData, "INSURER_NM")); // 渡りデータを取得し、各コンポーネントに設定する this.affair = affair; String actParam = String.valueOf(affair.getData("ACT")); if (actParam.equals("update")) { isUpdate = true; } else { isUpdate = false; } if (isUpdate) { submit.setText("更新(S)"); enteredData = (VRArrayList) affair.getData("DATA"); int selRow = Integer.parseInt(String.valueOf(affair.getData("SEL_ROW"))); VRMap row = (VRMap) enteredData.getData(selRow); // 保険者名 String insurerNmParam = String.valueOf(row.getData("INSURER_NM")); for (int i = 0; i < insurerNm.getItemCount(); i++) { if (insurerNm.getItemAt(i).toString().equals(insurerNmParam)) { insurerNm.setSelectedIndex(i); break; } } // 保険者番号 insurerNoOld = String.valueOf(row.getData("INSURER_NO")); insurerNoField.setText(insurerNoOld); // 事業所番号 jigyoushoNoField.setText(String.valueOf(row.getData("JIGYOUSHA_NO"))); } else { submit.setText("登録(S)"); } // スナップショット撮影 IkenshoSnapshot.getInstance().snapshot(); }