/** * 登録処理が可能かどうかをチェックします。 * * @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; }
/** * 「終了」イベントです。 * * @param e イベント情報 * @throws Exception 処理例外 */ protected void exitActionPerformed(ActionEvent e) throws Exception { // 終了 if (ACMessageBox.showOkCancel("終了しますか?") != ACMessageBox.RESULT_OK) { return; } System.exit(0); }
/** * 閉じてよいかどうかを判定します。 * * @return boolean */ private boolean canClose() { try { if (IkenshoSnapshot.getInstance().isModified()) { int result = ACMessageBox.show( "変更内容が破棄されます。\nよろしいですか?", ACMessageBox.BUTTON_OKCANCEL, ACMessageBox.ICON_QUESTION, ACMessageBox.FOCUS_CANCEL); if (result == ACMessageBox.RESULT_OK) { return true; } else { return false; } } } catch (Exception ex) { ex.printStackTrace(); } return true; }
/** * 外部サービス・福祉用具貸与 * * @param map * @param sysSvcCdItems * @return */ public ArrayList<HashMap<String, String>> getSystemServiceCodeItemFukushiYoguTaiyo( Map<String, String> map, ArrayList<HashMap<String, String>> sysSvcCdItems) { // パラメータ抽出 // ========================================================================= // 1330105 施設区分 int _1330105 = getIntValue(map, "1330105"); // 1330107 外部サービス int _1330107 = getIntValue(map, "1330107"); // 1330118 福祉用具貸与-用具 int _1330118 = getIntValue(map, "1330118"); try { baseUnit = getIntValue(map, "1330119"); } catch (Exception ex) { // 入力制限漏れがあったモジュールで作成したデータへの例外対応 ACMessageBox.show( "特定施設入居者生活介護の外部サービス利用型(福祉用具貸与)の単位数に数字以外が入力されています。" + ACConstants.LINE_SEPARATOR + "不正な単位数のデータは計算されません。"); return sysSvcCdItems; } // 独自コード生成 // =========================================================================== StringBuilder sb = new StringBuilder(); // 施設区分 sb.append(CODE_CHAR[_1330105]); // 外部サービス sb.append(CODE_CHAR[_1330107]); // 福祉用具貸与-用具 sb.append(CODE_CHAR[_1330118]); putSystemServiceCodeItem(sysSvcCdItems, sb.toString()); return sysSvcCdItems; }
public void openPDF(String pdfPath) throws Exception { String acrobatPath = ""; if (ACFrame.getInstance().hasProperity("Acrobat/Path")) { acrobatPath = ACFrame.getInstance().getProperity("Acrobat/Path"); } String[] arg = {"", pdfPath}; String osName = System.getProperty("os.name"); if (osName.startsWith("Mac")) { arg[0] = "open"; } else { arg[0] = acrobatPath; if (!new File(acrobatPath).exists()) { // アクロバットが存在しない ACMessageBox.showExclamation( "PDFの設定が正しくありません。" + ACConstants.LINE_SEPARATOR + "[メインメニュー]-[設定(S)]-[PDF設定(P)]よりAcrobatの設定を行ってください。"); return; } } Runtime.getRuntime().exec(arg); }
protected void showMaxLengthError() { ACMessageBox.show("対処方針はトータルで45文字までしか印刷されません。"); }
/** * PDFビューワを発見できなかった場合の処理です。 * * @throws Exception 処理例外 */ protected void processErrorOnPDFViewerNotFound() throws Exception { ACMessageBox.showExclamation("PDFビューワの設定を取得できません。"); }
/** * PDFファイルの作成を拒否された場合の処理です。 * * @throws Exception 処理例外 */ protected void processErrorOnPDFFileCreate() throws Exception { ACMessageBox.showExclamation( "印刷に失敗しました。" + ACConstants.LINE_SEPARATOR + "PDFファイルを作成する権限がありません。"); }
/** * PDFファイルの生成先フォルダの作成に失敗した場合の処理です。 * * @throws Exception 処理例外 */ protected void processErrorOnPDFDirectoryCreate() throws Exception { ACMessageBox.showExclamation( "印刷に失敗しました。" + ACConstants.LINE_SEPARATOR + "PDFファイルの作成先フォルダを生成できません。"); }
/** * 「比較」イベントです。 * * @param e イベント情報 * @throws Exception 処理例外 */ protected void compareActionPerformed(ActionEvent e) throws Exception { // 比較 if (!new File(getPdf1().getText()).exists()) { ACMessageBox.showExclamation("PDF1が見つかりません。"); return; } if (!new File(getPdf2().getText()).exists()) { ACMessageBox.showExclamation("PDF2が見つかりません。"); return; } final PdfReader p1 = new PdfReader(getPdf1().getText()); final PdfReader p2 = new PdfReader(getPdf2().getText()); final int pages1 = p1.getNumberOfPages(); final int pages2 = p2.getNumberOfPages(); if (pages1 != pages2) { if (pages1 > pages2) { ACMessageBox.showExclamation("PDF1よりもPDF2のページ数が少ないです。"); return; } if (ACMessageBox.showOkCancel( "PDFのページ数が異なります。" + ACConstants.LINE_SEPARATOR + "PDF1のすべてのページがPDF2に含まれるかで比較しますか?") != ACMessageBox.RESULT_OK) { return; } } new Runnable() { private boolean firstLock; public void run() { final int stopKeyCode = KeyEvent.VK_CAPS_LOCK; firstLock = Toolkit.getDefaultToolkit().getLockingKeyState(stopKeyCode); LinkedList<Integer> pages = new LinkedList<Integer>(); for (int i = 1; i <= pages2; i++) { pages.add(new Integer(i)); } errorCount = 0; pageOfProcessed = 0; pageOfCount = pages1; StringBuilder sb = new StringBuilder(); for (int i = 1; i <= pages1; i++) { try { boolean match = false; byte[] b1 = p1.getPageContent(i); Iterator<Integer> it = pages.iterator(); while (it.hasNext()) { int page = ((Integer) it.next()).intValue(); byte[] b2 = p2.getPageContent(page); if (Arrays.equals(b1, b2)) { sb.append("○PDF1(" + i + ") = PDF2(" + page + ")" + ACConstants.LINE_SEPARATOR); match = true; it.remove(); break; } } if (!match) { sb.append("×PDF1(" + i + ") 【一致なし】" + ACConstants.LINE_SEPARATOR); errorCount++; } } catch (Exception ex) { sb.append("※PDF1(" + i + ") 【処理例外】" + ACConstants.LINE_SEPARATOR); errorCount++; } setProgress(sb); pageOfProcessed = i; if (Toolkit.getDefaultToolkit().getLockingKeyState(stopKeyCode) != firstLock) { getResult() .setText( "!比較中断(" + pageOfProcessed + " / " + pageOfCount + ") / 不一致数:" + errorCount + " 件" + ACConstants.LINE_SEPARATOR + sb.toString()); return; } } getResult() .setText( "■比較完了(" + pageOfProcessed + " / " + pageOfCount + ") / 不一致数:" + errorCount + " 件" + ACConstants.LINE_SEPARATOR + sb.toString()); } }.run(); }