病名エディタ
- 病名コード付きの病名は,間違ってちょっとクリックしただけで病名コードが消えてしまう(0000999になってしまう)。それをなんとかする。
order/DiagnosisTablePanel.java の以下の部分を変更する。@Override public boolean isCellEditable(int row, int col) { boolean ret = false; RegisteredDiagnosisModel model = (RegisteredDiagnosisModel) getObject(row); if (col == NAME_COL) { if (model == null) { ret = true; ////↓ HAND_CODE 以外,編集不可とする } else if (model.getDiagnosisCode().equals(HAND_CODE)) { ret = true; //// } else if (!model.getDiagnosisCode().startsWith(MODIFIER_CODE)) { ////↑ ret = true; } } else if (col == ALIAS_COL) { if (model != null && (!model.getDiagnosisCode().startsWith(MODIFIER_CODE))) { ret = true; } } return ret; }
- ついでに,デフォルトのカテゴリーをセットするようにする
public void propertyChange(PropertyChangeEvent e) { String prop = e.getPropertyName(); if (prop.equals(SELECTED_ITEM_PROP)) { // 通知された MasterItem から RegisteredDiagnosisModel // を生成し、編集テーブルへ加える。 MasterItem item = (MasterItem) e.getNewValue(); if (item != null) { RegisteredDiagnosisModel model = new RegisteredDiagnosisModel(); model.setDiagnosis(item.getName()); model.setDiagnosisCode(item.getCode()); model.setDiagnosisCodeSystem(item.getMasterTableId()); ////↓ デフォルトのカテゴリーをセット(主病名) model.setCategory(open.dolphin.infomodel.IInfoModel.DEFAULT_DIAGNOSIS_CATEGORY); model.setCategoryDesc(open.dolphin.infomodel.IInfoModel.DEFAULT_DIAGNOSIS_CATEGORY_DESC); model.setCategoryCodeSys(open.dolphin.infomodel.IInfoModel.DEFAULT_DIAGNOSIS_CATEGORY_CODESYS); ////↑ tableModel.addRow(model); reconstractDiagnosis(); // 状態マシンへイベントを送信する curState.processEvent(DiagnosisStateMgr.Event.ADDED); } } }
« 連続マスター検索 | トップページ | テーブルの文字欠け »
「OpenDolphin」カテゴリの記事
- Java 17 への移行(7) - OpenDolphin client の対応 (2023.02.04)
- Java 17 への移行(6) - Hibernate 6 でやらかす(2023.02.03)
- Java 17 への移行(5) - OpenDolphin server の対応(2023.02.02)
- Java 17 への移行(4) - OpenSearch の準備 [ubuntu 編](2023.02.01)
- Java 17 への移行(3) - OpenSearch の準備 [mac 編](2023.01.31)