Logicクラスの作成¶
jp.co.slcs.kaiden2.base.foundation.master.AbstractTermMasterMaintenanceLogic を継承してMasterTutorialLogicクラスを作成します。package jp.co.slcs.kaiden2.tutorial.feature.logic.kaiden.master; import java.util.Arrays; import java.util.HashMap; import java.util.List; import java.util.Map; import javax.annotation.Resource; import jp.co.slcs.kaiden2.base.foundation.exception.KaidenRuntimeException; import jp.co.slcs.kaiden2.base.foundation.exception.KaidenSystemException; import jp.co.slcs.kaiden2.base.foundation.master.AbstractMasterMaintenanceForm; import jp.co.slcs.kaiden2.base.foundation.master.AbstractTermMasterMaintenanceLogic; import jp.co.slcs.kaiden2.base.foundation.master.MasterMainternanceSettingsDto; import jp.co.slcs.kaiden2.base.foundation.master.MasterMainternanceSettingsReader; import jp.co.slcs.kaiden2.base.foundation.master.MasterManager; import jp.co.slcs.kaiden2.base.foundation.util.JsonUtil; import jp.co.slcs.kaiden2.tutorial.feature.action.kaiden.master.MasterTutorialAction; import jp.co.slcs.kaiden2.tutorial.foundation.conf.TutorialProp; import jp.co.slcs.kaiden2.tutorial.foundation.manager.tutorial.MasterTutorialManager; public class MasterTutorialLogic extends AbstractTermMasterMaintenanceLogic { /** Manager. */ @Resource public MasterTutorialManager masterTutorialManager; // 業務固有のManagerをDIします /** Managerを取得. */ @Override protected MasterManager<?> getManager() { // 業務固有のManagerを取得します。基底クラスより呼ばれます。 return masterTutorialManager; } /** キーワード検索対象カラムを返却. */ @Override protected String[] getKeywordSearchTargetCol() { // プロパティファイルからマスタメンテナンス機能の設定を読み込み MasterMainternanceSettingsReader reader = new MasterMainternanceSettingsReader(); MasterMainternanceSettingsDto settings; try { settings = new MasterMainternanceSettingsDto(reader.read(MasterTutorialAction.class)); } catch (KaidenSystemException e) { throw KaidenRuntimeException.makeInstance(e); } // キーワード検索対象カラムをサブクラスより返却します return settings.searchTargetCol.toArray(new String[] {}); } /** 国際化対応するフィールドを返却. */ @Override protected List<String> getI18nTargetField() { // 国際化対応するフィールドをサブクラスより返却します return Arrays.asList("tutorialName"); } /** 登録・更新用の入力データをサブクラスより返却. */ @Override protected Map<String, Object> getInputData(AbstractMasterMaintenanceForm form) { // 登録・更新用の入力データをサブクラスより返却します return JsonUtil.getMap(form.updateDataJson, Arrays.asList("inputArea")); } /** サーフェス定義マップを返却. */ @Override protected Map<String, String> getSurfaces() { // サーフェス定義 // 入力チェックエラー発生時のエラーメッセージラベルに使用します。 Map<String, String> result = new HashMap<String, String>(); result.put("companyCd", propertyHelper.getSurface(TutorialProp.S.COMPANY)); result.put("tutorialCd", propertyHelper.getSurface(TutorialProp.S.TUTORIAL_CD)); result.put("startDate", propertyHelper.getSurface(TutorialProp.S.START_DATE)); result.put("endDate", propertyHelper.getSurface(TutorialProp.S.END_DATE)); result.put("tutorialName", propertyHelper.getSurface(TutorialProp.S.TUTORIAL_NAME)); return result; } }ノート
マスタメンテナンスのLogicクラスの詳細は「マスタメンテナンスLogicクラスプログラミング」を参照下さい。