5.3.2. 経費区分マスタメンテナンス¶
経費区分マスタメンテナンスのサンプルソースです。
本サンプルソースは「intra-mart Accel Kaiden! ワークフローモジュール 2.0.2」から抜粋したソースです。
5.3.2.1. 一覧¶
src └─main ├─generated │ └─jp │ └─co │ └─slcs │ └─kaiden2 │ └─product_workflow │ └─foundation │ └─model │ ├─entity │ │ K30mExpType.java │ │ K30mExpTypeNames.java │ └─service │ K30mExpTypeCondition.java │ K30mExpTypeService.java ├─java │ └─jp │ └─co │ └─slcs │ └─kaiden2 │ └─product_workflow │ ├─feature │ │ ├─action │ │ │ └─kaiden │ │ │ └─master │ │ │ ExpTypeAction.java │ │ ├─dto │ │ │ └─kaiden │ │ │ └─master │ │ │ ExpTypeDto.java │ │ ├─form │ │ │ └─kaiden │ │ │ └─master │ │ │ ExpTypeForm.java │ │ └─logic │ │ └─kaiden │ │ └─master │ │ ExpTypeLogic.java │ └─foundation │ └─manager │ └─exptype │ │ ExpTypeManager.java │ │ ExpTypeManagerDto.java │ │ ExpTypeManagerDtoFieldName.java │ └─impl │ ExpTypeManagerImpl.java ├─resources │ └─META-INF │ └─sql │ └─jp │ └─co │ └─slcs │ └─kaiden2 │ └─product_workflow │ └─foundation │ └─model │ └─service │ └─K30mExpTypeService │ selectView.sql └─webapp └─WEB-INF ├─classes │ └─jp │ └─co │ └─slcs │ └─kaiden2 │ └─product_workflow │ └─feature │ └─action │ └─kaiden │ └─master │ ExpTypeMasterMaintenanceSettings.xml └─view └─kaiden2 └─product_workflow └─master └─expType expTypeMainte.jsp
5.3.2.2. Java¶
5.3.2.2.1. Action¶
Pathsrc/main/java/jp/co/slcs/kaiden2/product_workflow/feature/action/kaiden/master/ExpTypeAction.javapackage jp.co.slcs.kaiden2.product_workflow.feature.action.kaiden.master; import javax.annotation.Resource; import jp.co.intra_mart.foundation.authz.annotation.Authz; import jp.co.slcs.kaiden2.base.foundation.conf.ModuleEnum; import jp.co.slcs.kaiden2.base.foundation.conf.ResultType; import jp.co.slcs.kaiden2.base.foundation.exception.KaidenSystemException; import jp.co.slcs.kaiden2.base.foundation.master.AbstractMasterMaintenanceDto; import jp.co.slcs.kaiden2.base.foundation.master.AbstractMasterMaintenanceForm; import jp.co.slcs.kaiden2.base.foundation.master.AbstractMasterMaintenanceLogic; import jp.co.slcs.kaiden2.base.foundation.master.AbstractTermMasterMaintenanceAction; 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.model.annotation.Module; import jp.co.slcs.kaiden2.base.foundation.model.dto.LogicResultDto; import jp.co.slcs.kaiden2.product_workflow.feature.dto.kaiden.master.ExpTypeDto; import jp.co.slcs.kaiden2.product_workflow.feature.form.kaiden.master.ExpTypeForm; import jp.co.slcs.kaiden2.product_workflow.feature.logic.kaiden.master.ExpTypeLogic; import org.seasar.struts.annotation.ActionForm; import org.seasar.struts.annotation.Execute; /** * 経費区分マスタメンテナンス(Action). * * @author Sumitomo Life Information Systems Co.,Ltd. */ public class ExpTypeAction extends AbstractTermMasterMaintenanceAction { /** ExpTypeDto. */ @Resource public ExpTypeDto expTypeDto; /** ExpTypeForm. */ @ActionForm @Resource public ExpTypeForm expTypeForm; /** ExpTypeLogic. */ @Resource public ExpTypeLogic expTypeLogic; /** * 入力ページのパスを返却. * * @return 入力ページのパス * @throws KaidenSystemException XML読み込み例外 */ @Override @Execute(validator = false) @Authz(uri = "service://kaiden/master/expType", action = "execute") public String index() throws KaidenSystemException { // プロパティファイルから一覧画面の設定を読み込み MasterMainternanceSettingsReader reader = new MasterMainternanceSettingsReader(); expTypeDto.settings = new MasterMainternanceSettingsDto(reader.read(ExpTypeAction.class)); // 一覧画面の設定をレスポンスに設定 return super.index(); } /** * AJAXにて検索を実行. * <p> * レスポンスに、JSON化した、ロジッククラスの戻り値{@link LogicResultDto}を出力 * </p> * * @return null */ @Override @Execute(validator = false) @Authz(uri = "service://kaiden/master/expType", action = "execute") public String search() { return super.search(); } /** * AJAXにてメンテナンス対象データを返却. * * @return メンテナンス対象データ */ @Override @Execute(validator = false) @Authz(uri = "service://kaiden/master/expType", action = "execute") public String select() { return super.select(); } /** * AJAXにてデータを登録. * <p> * レスポンスに、JSON化した、ロジッククラスの戻り値{@link LogicResultDto}を出力 * </p> * * @return null */ @Override @Execute(validator = false) @Authz(uri = "service://kaiden/master/expType", action = "execute") public String entry() { return super.entry(); } /** * AJAXにて無効化. * <p> * レスポンスに、JSON化した、ロジッククラスの戻り値{@link LogicResultDto}を出力 * </p> * * @return null */ @Override @Execute(validator = false) @Authz(uri = "service://kaiden/master/expType", action = "execute") public String toDisabled() { return super.toDisabled(); } /** * AJAXにてデータ削除. * <p> * レスポンスに、JSON化した、ロジッククラスの戻り値{@link LogicResultDto}を出力 * </p> * * @return null */ @Override @Execute(validator = false) @Authz(uri = "service://kaiden/master/expType", action = "execute") public String remove() { return super.remove(); } /** * AJAXにてデータ更新. * <p> * レスポンスに、JSON化した、ロジッククラスの戻り値{@link LogicResultDto}を出力 * </p> * * @return null */ @Override @Execute(validator = false) @Authz(uri = "service://kaiden/master/expType", action = "execute") public String renew() { return super.renew(); } /** * AJAXにてメンテナンス対象データの期間データを返却. * * @return メンテナンス対象データ */ @Override @Execute(validator = false) @Authz(uri = "service://kaiden/master/expType", action = "execute") public String selectTerm() { return super.selectTerm(); } /** * AJAXにて有効化. * <p> * レスポンスに、JSON化した、ロジッククラスの戻り値{@link LogicResultDto}を出力 * </p> * * @return null */ @Override @Execute(validator = false) @Authz(uri = "service://kaiden/master/expType", action = "execute") public String toEnabled() { return super.toEnabled(); } /** * AJAXにて期間分割. * <p> * レスポンスに、JSON化した、ロジッククラスの戻り値{@link LogicResultDto}を出力 * </p> * * @return null */ @Override @Execute(validator = false) @Authz(uri = "service://kaiden/master/expType", action = "execute") public String divideTerm() { return super.divideTerm(); } /** * AJAXにて期間変更. * <p> * レスポンスに、JSON化した、ロジッククラスの戻り値{@link LogicResultDto}を出力 * </p> * * @return null */ @Override @Execute(validator = false) @Authz(uri = "service://kaiden/master/expType", action = "execute") public String moveTerm() { return super.moveTerm(); } /** * {@inheritDoc} */ @Override protected AbstractMasterMaintenanceDto getDto() { return expTypeDto; } /** * {@inheritDoc} */ @Override protected AbstractMasterMaintenanceForm getForm() { return expTypeForm; } /** * {@inheritDoc} */ @Override protected AbstractMasterMaintenanceLogic getLogic() { return expTypeLogic; } }
5.3.2.2.2. Dto¶
Pathsrc/main/java/jp/co/slcs/kaiden2/product_workflow/feature/dto/kaiden/master/ExpTypeDto.javapackage jp.co.slcs.kaiden2.product_workflow.feature.dto.kaiden.master; import jp.co.slcs.kaiden2.base.foundation.master.AbstractTermMasterMaintenanceDto; /** * 経費区分マスタメンテナンス(DTO). * * @author Sumitomo Life Information Systems Co.,Ltd. */ public class ExpTypeDto extends AbstractTermMasterMaintenanceDto { }
5.3.2.2.3. Form¶
Pathsrc/main/java/jp/co/slcs/kaiden2/product_workflow/feature/form/kaiden/master/ExpTypeForm.javapackage jp.co.slcs.kaiden2.product_workflow.feature.form.kaiden.master; import jp.co.slcs.kaiden2.base.foundation.master.AbstractTermMasterMaintenanceForm; /** * 経費区分マスタメンテナンス(Form). * * @author Sumitomo Life Information Systems Co.,Ltd. */ public class ExpTypeForm extends AbstractTermMasterMaintenanceForm { }
5.3.2.2.4. Logic¶
Pathsrc/main/java/jp/co/slcs/kaiden2/product_workflow/feature/logic/kaiden/master/ExpTypeLogic.javapackage jp.co.slcs.kaiden2.product_workflow.feature.logic.kaiden.master; import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.ACCOUNT_CD; import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.COMPANY_CD; import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.DELETE_FLAG; import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.END_DATE; import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.EXP_TYPE_CATEGORY; import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.EXP_TYPE_CD; import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.EXP_TYPE_NAME; import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.SORT_KEY; import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.START_DATE; import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.TAX_TYPE_CD; import java.sql.Timestamp; import java.util.Arrays; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Stack; import javax.annotation.Resource; import jp.co.slcs.kaiden2.base.foundation.conf.BaseProp; 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.AbstractTermMasterMaintenanceForm; 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.model.dto.LogicResultDto; import jp.co.slcs.kaiden2.base.foundation.util.ConvertForJsonSource; import jp.co.slcs.kaiden2.base.foundation.util.JsonUtil; import jp.co.slcs.kaiden2.product_workflow.feature.action.kaiden.master.ExpTypeAction; import jp.co.slcs.kaiden2.product_workflow.foundation.conf.ProductWorkflowProp; import jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManager; /** * 経費区分マスタメンテナンス(Logic). * * @author Sumitomo Life Information Systems Co.,Ltd. */ public class ExpTypeLogic extends AbstractTermMasterMaintenanceLogic { /** ExpTypeManager. */ @Resource public ExpTypeManager expTypeManager; /** * {@inheritDoc} */ @Override public LogicResultDto selectTermAjax(AbstractTermMasterMaintenanceForm form) { Convert conv = new Convert(); return super.selectTermAjax(form, conv); } /** * 経費区分メンテナンス画面へデータを渡す際の書式変換. * * @author Sumitomo Life Information Systems Co.,Ltd. */ private static class Convert extends ConvertForJsonSource { /** * {@inheritDoc} * <p> * 本サブクラスでは、以下の書式変換を行う。<br> * <table border="1"> * <tr> * <td>項目名</td> * <td>書式</td> * </tr> * <tr> * <td>開始日</td> * <td>システムの日付時刻形式</td> * </tr> * <tr> * <td>終了日</td> * <td>システムの日付時刻形式</td> * </tr> * </table> * </p> */ @Override protected Map<String, String> formatFormatedValue(Map<String, Object> map, Stack<String> fldNameStack) { // 標準書式変換 Map<String, String> result = super.formatFormatedValue(map, fldNameStack); // 開始日の書式変換 Object startDate = map.get(START_DATE); if (startDate != null) { result.put(START_DATE, dateHelper.formatDateSystemTz((Timestamp) startDate)); } // 終了日の書式変換 Object endDate = map.get(END_DATE); if (endDate != null) { result.put(END_DATE, dateHelper.formatDateSystemTz((Timestamp) endDate)); } return result; } } /** * {@inheritDoc} */ @Override protected MasterManager<?> getManager() { return expTypeManager; } /** * {@inheritDoc} */ @Override protected String[] getKeywordSearchTargetCol() { // プロパティファイルから一覧画面の設定を読み込み MasterMainternanceSettingsReader reader = new MasterMainternanceSettingsReader(); MasterMainternanceSettingsDto settings; try { settings = new MasterMainternanceSettingsDto(reader.read(ExpTypeAction.class)); } catch (KaidenSystemException e) { throw KaidenRuntimeException.makeInstance(e); } return settings.searchTargetCol.toArray(new String[settings.searchTargetCol.size()]); } /** * {@inheritDoc} */ @Override protected List<String> getI18nTargetField() { return Arrays.asList(EXP_TYPE_NAME); } /** * {@inheritDoc} */ @Override protected Map<String, Object> getInputData(AbstractMasterMaintenanceForm form) { Map<String, Object> map = JsonUtil.getMap(form.updateDataJson, Arrays.asList("inputArea")); return map; } /** * {@inheritDoc} * <p> * ■設定値一覧<br> * <table border="1"> * <tr> * <td>設定キー</td> * <td>設定値</td> * </tr> * <tr> * <td>companyCd</td> * <td>会社</td> * </tr> * <tr> * <td>expTypeCd</td> * <td>経費区分コード</td> * </tr> * <tr> * <td>startDate</td> * <td>開始日</td> * </tr> * <tr> * <td>endDate</td> * <td>終了日</td> * </tr> * <tr> * <td>expTypeName</td> * <td>経費区分名</td> * </tr> * <tr> * <td>expTypeCategory</td> * <td>経費区分カテゴリ</td> * </tr> * <tr> * <td>accountCd</td> * <td>勘定科目</td> * </tr> * <tr> * <td>taxTypeCd</td> * <td>税区分</td> * </tr> * <tr> * <td>sortKey</td> * <td>ソートキー</td> * </tr> * <tr> * <td>deleteFlag</td> * <td>ステータス</td> * </tr> * </table> * </p> */ @Override protected Map<String, String> getSurfaces() { Map<String, String> result = new HashMap<String, String>(); result.put(COMPANY_CD, propertyHelper.getSurface(BaseProp.S.COMPANY)); result.put(EXP_TYPE_CD, propertyHelper.getSurface(ProductWorkflowProp.S.EXP_TYPE_CD)); result.put(START_DATE, propertyHelper.getSurface(BaseProp.S.START_DATE)); result.put(END_DATE, propertyHelper.getSurface(BaseProp.S.END_DATE)); result.put(EXP_TYPE_NAME, propertyHelper.getSurface(ProductWorkflowProp.S.EXP_TYPE_NAME)); result.put(EXP_TYPE_CATEGORY, propertyHelper.getSurface(ProductWorkflowProp.S.ExpType.EXP_TYPE_CATEGORY)); result.put(ACCOUNT_CD, propertyHelper.getSurface(ProductWorkflowProp.S.ACCOUNT)); result.put(TAX_TYPE_CD, propertyHelper.getSurface(ProductWorkflowProp.S.TAX_TYPE)); result.put(SORT_KEY, propertyHelper.getSurface(BaseProp.S.SORT_KEY)); result.put(DELETE_FLAG, propertyHelper.getSurface(BaseProp.S.STATUS)); return result; } }
5.3.2.2.5. Manager¶
Pathsrc/main/java/jp/co/slcs/kaiden2/product_workflow/foundation/manager/exptype/ExpTypeManager.javapackage jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype; import java.util.List; import java.util.Map; import jp.co.slcs.kaiden2.base.foundation.manager.KeywordsCriteriaDto; import jp.co.slcs.kaiden2.base.foundation.master.TermMasterManagerForJob; import jp.co.slcs.kaiden2.base.foundation.model.dto.KaidenDto; import jp.co.slcs.kaiden2.base.foundation.model.dto.OrderDto; import jp.co.slcs.kaiden2.base.foundation.model.service.SqlResultFilterIF; import jp.co.slcs.kaiden2.base.foundation.util.validate.model.dto.ValidateDefsDto; /** * 経費区分マスタへの各種操作を提供するAPIのinterface.<br> * * @author Sumitomo Life Information Systems Co.,Ltd. */ public interface ExpTypeManager extends TermMasterManagerForJob<ExpTypeManagerDto> { /** 経費区分コード. */ public static final int EXP_TYPE_CD_LEN = 100; /** 経費区分名称. */ public static final int EXP_TYPE_NAME_LEN = 250; /** 経費区分カテゴリ. */ public static final int EXP_TYPE_CATEGORY_LEN = 250; /** 勘定科目コード. */ public static final int ACCOUNT_CD_LEN = 100; /** 税区分コード. */ public static final int TAX_TYPE_CD_LEN = 100; /** ソートキー. */ public static final int SORT_KEY_LEN = 15; /** * 新規登録用の検証定義リストを返却します. * * @return バリデート実行クラス用パラメタDTOリスト */ public List<ValidateDefsDto> getValidateDefsDtoList4Entry(); /** * 更新登録用の検証定義リストを返却します. * * @return バリデート実行クラス用パラメタDTOリスト */ public List<ValidateDefsDto> getValidateDefsDtoList4Renew(); /** * マスタ検索部品向け 一覧取得. * * @param criteria 検索条件 * @param order ソート順 * @param filter フィルタークラス * @return 検索結果 */ public Map<String, Object> selectList4MstSearch(KaidenDto criteria, List<OrderDto> order, KeywordsCriteriaDto keywordsCriteria, SqlResultFilterIF[] filter); }
5.3.2.2.6. Manager(実装)¶
Pathsrc/main/java/jp/co/slcs/kaiden2/product_workflow/foundation/manager/exptype/impl/ExpTypeManagerImpl.javapackage jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.impl; import static jp.co.slcs.kaiden2.base.foundation.model.conf.EntityCommonFieldLength.TERM_CD_LEN; import static jp.co.slcs.kaiden2.base.foundation.model.conf.EntityCommonFieldNames.EXTENSION_A; import static jp.co.slcs.kaiden2.base.foundation.model.conf.EntityCommonFieldNames.EXTENSION_B; import static jp.co.slcs.kaiden2.base.foundation.model.conf.EntityCommonFieldNames.EXTENSION_C; import static jp.co.slcs.kaiden2.base.foundation.model.conf.EntityCommonFieldNames.EXTENSION_D; import static jp.co.slcs.kaiden2.base.foundation.model.conf.EntityCommonFieldNames.EXTENSION_E; import static jp.co.slcs.kaiden2.base.foundation.model.conf.EntityCommonFieldNames.EXTENSION_F; import static jp.co.slcs.kaiden2.base.foundation.model.conf.EntityCommonFieldNames.EXTENSION_G; import static jp.co.slcs.kaiden2.base.foundation.model.conf.EntityCommonFieldNames.EXTENSION_H; import static jp.co.slcs.kaiden2.base.foundation.model.conf.EntityCommonFieldNames.EXTENSION_I; import static jp.co.slcs.kaiden2.base.foundation.model.conf.EntityCommonFieldNames.EXTENSION_J; import static jp.co.slcs.kaiden2.base.foundation.util.validate.conf.ConstValidationIdKaidenBase.VALID_COMPANY_EXISTS; import static jp.co.slcs.kaiden2.base.foundation.util.validate.conf.ConstValidationIdKaidenBase.VALID_DATE; import static jp.co.slcs.kaiden2.base.foundation.util.validate.conf.ConstValidationIdKaidenBase.VALID_DATE_MIN; import static jp.co.slcs.kaiden2.base.foundation.util.validate.conf.ConstValidationIdKaidenBase.VALID_FLAG; import static jp.co.slcs.kaiden2.base.foundation.util.validate.conf.ConstValidationIdKaidenBase.VALID_INTEGER; import static jp.co.slcs.kaiden2.base.foundation.util.validate.conf.ConstValidationIdKaidenBase.VALID_KAIDEN_ID; import static jp.co.slcs.kaiden2.base.foundation.util.validate.conf.ConstValidationIdKaidenBase.VALID_LOCALE; import static jp.co.slcs.kaiden2.base.foundation.util.validate.conf.ConstValidationIdKaidenBase.VALID_MAX_LENGTH; import static jp.co.slcs.kaiden2.base.foundation.util.validate.conf.ConstValidationIdKaidenBase.VALID_REQUIRED; import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.ACCOUNT_CD; import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.ACCOUNT_NAME; import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.COMPANY_CD; import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.COMPANY_NAME; import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.DELETE_FLAG; import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.END_DATE; import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.EXP_TYPE_CATEGORY; import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.EXP_TYPE_CD; import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.EXP_TYPE_NAME; import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.LOCALE_ID; import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.SORT_KEY; import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.START_DATE; import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.TAX_TYPE_CD; import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.TAX_TYPE_NAME; import static jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDtoFieldName.TERM_CD; import static jp.co.slcs.kaiden2.product_workflow.foundation.util.validate.conf.ConstValidationIdKaidenProductWorkflow.VALID_ACCOUNT_EXISTS; import static jp.co.slcs.kaiden2.product_workflow.foundation.util.validate.conf.ConstValidationIdKaidenProductWorkflow.VALID_TAX_TYPE_EXISTS; import java.util.ArrayList; import java.util.Arrays; import java.util.Date; import java.util.List; import java.util.Map; import javax.annotation.Resource; import jp.co.slcs.kaiden2.base.foundation.conf.GenericFlag; import jp.co.slcs.kaiden2.base.foundation.exception.KaidenApplicationException; import jp.co.slcs.kaiden2.base.foundation.exception.KaidenDuplicationEntryException; import jp.co.slcs.kaiden2.base.foundation.exception.KaidenHaventAuthorityToCompanyException; import jp.co.slcs.kaiden2.base.foundation.exception.KaidenIllegalParametersException; import jp.co.slcs.kaiden2.base.foundation.exception.KaidenOptimisticLockException; import jp.co.slcs.kaiden2.base.foundation.exception.KaidenSystemException; import jp.co.slcs.kaiden2.base.foundation.exception.KaidenValidateException; import jp.co.slcs.kaiden2.base.foundation.manager.AbstractTermMasterManager; import jp.co.slcs.kaiden2.base.foundation.manager.AuthorityCriteriaDto; import jp.co.slcs.kaiden2.base.foundation.manager.KeywordsCriteriaDto; import jp.co.slcs.kaiden2.base.foundation.manager.common.IterateBusinessLogicIF; import jp.co.slcs.kaiden2.base.foundation.model.dto.KaidenDto; import jp.co.slcs.kaiden2.base.foundation.model.dto.OrderDto; import jp.co.slcs.kaiden2.base.foundation.model.service.SqlResultFilterIF; import jp.co.slcs.kaiden2.base.foundation.util.CollectionUtil; import jp.co.slcs.kaiden2.base.foundation.util.StringUtil; import jp.co.slcs.kaiden2.base.foundation.util.validate.KaidenValidateResult; import jp.co.slcs.kaiden2.base.foundation.util.validate.conf.ErrorMode; import jp.co.slcs.kaiden2.base.foundation.util.validate.model.dto.ValidateDefsDto; import jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManager; import jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.ExpTypeManagerDto; import jp.co.slcs.kaiden2.product_workflow.foundation.model.service.K30mExpTypeService; import org.seasar.framework.beans.util.Beans; /** * 経費区分マスタへの各種操作を提供するAPI.<br> * <br> * <p> * 本APIは、主にデータベース操作を行いますが、より業務的な機能を付加した操作を提供します。<br> * 使用する際には、{@link ExpTypeManagerDto}クラスまたはそのリストをパラメータとして渡すと、<br> * {@link ExpTypeManagerDto}クラスまたはそのリストが戻り値として返却されます。<br> * (一部例外あり。各APIを参照。)<br> * <br> * <b>機能一覧(共通)</b> * <table border="1"> * <tr> * <th>機能概要</th> * <th>メソッド</th> * <th>カテゴリ</th> * <th>備考</th> * </tr> * <tr> * <tr> * <td>主キー検索</td> * <td>select</td> * <td>主キー検索</td> * <td> </td> * </tr> * <tr> * <td>主キー検索(認可設定無視)</td> * <td>selectIgnoreAuthCompany</td> * <td>主キー検索</td> * <td> </td> * </tr> * <tr> * <td>汎用検索</td> * <td>selectList</td> * <td>汎用検索</td> * <td> </td> * </tr> * <tr> * <td>汎用検索(認可設定無視)</td> * <td>selectListIgnoreAuthCompany</td> * <td>汎用検索</td> * <td> </td> * </tr> * <tr> * <td>ロケール検索</td> * <td>selectLocales</td> * <td>ロケール検索</td> * <td> </td> * </tr> * <tr> * <td>ロケール検索(認可設定無視)</td> * <td>selectLocalesIgnoreAuthCompany</td> * <td>ロケール検索</td> * <td> </td> * </tr> * <tr> * <td>参照検索</td> * <td>selectListWithReference</td> * <td>参照検索</td> * <td> </td> * </tr> * <tr> * <td>参照検索(認可設定無視)</td> * <td>selectListWithReferenceIgnoreAuthCompany</td> * <td>参照検索</td> * <td> </td> * </tr> * <tr> * <td>キーワード検索</td> * <td>selectListKeywordFilter</td> * <td>キーワード検索</td> * <td> </td> * </tr> * <tr> * <td>キーワード検索(認可設定無視)</td> * <td>selectListKeywordFilterIgnoreAuthCompany</td> * <td>キーワード検索</td> * <td> </td> * </tr> * <tr> * <td>有効化</td> * <td>toEnabled</td> * <td>削除フラグ更新</td> * <td> </td> * </tr> * <tr> * <td>有効化(認可設定無視)</td> * <td>toEnabledIgnoreAuthCompany</td> * <td>削除フラグ更新</td> * <td> </td> * </tr> * <tr> * <td>無効化</td> * <td>toDisabled</td> * <td>削除フラグ更新</td> * <td> </td> * </tr> * <tr> * <td>無効化(認可設定無視)</td> * <td>toDisabledIgnoreAuthCompany</td> * <td>削除フラグ更新</td> * <td> </td> * </tr> * <tr> * <td>登録</td> * <td>entry</td> * <td>登録</td> * <td> </td> * </tr> * <tr> * <td>登録(認可設定無視)</td> * <td>entryIgnoreAuthCompany</td> * <td>登録</td> * <td> </td> * </tr> * <tr> * <td>削除</td> * <td>remove</td> * <td>削除</td> * <td> </td> * </tr> * <tr> * <td>削除(認可設定無視)</td> * <td>removeIgnoreAuthCompany</td> * <td>削除</td> * <td> </td> * </tr> * <tr> * <td>更新</td> * <td>renew</td> * <td>更新</td> * <td> </td> * </tr> * <tr> * <td>更新(認可設定無視)</td> * <td>renewIgnoreAuthCompany</td> * <td>更新</td> * <td> </td> * </tr> * </table> * <br> * <b>機能一覧(期間化)</b> * <table border="1"> * <tr> * <th>機能概要</th> * <th>メソッド</th> * <th>カテゴリ</th> * <th>備考</th> * </tr> * <tr> * <td>期間検索</td> * <td>selectTerms</td> * <td>期間検索</td> * <td> </td> * </tr> * <tr> * <td>期間検索(認可設定無視)</td> * <td>selectTermsIgnoreAuthCompany</td> * <td>期間検索</td> * <td> </td> * </tr> * <tr> * <td>基準日指定検索</td> * <td>selectListIncluedsSearchDate</td> * <td>基準日指定検索</td> * <td> </td> * </tr> * <tr> * <td>基準日指定検索(認可設定無視)</td> * <td>selectListIncluedsSearchDateIgnoreAuthCompany</td> * <td>基準日指定検索</td> * <td> </td> * </tr> * <tr> * <td>期間分割</td> * <td>divideTerm</td> * <td>期間分割</td> * <td> </td> * </tr> * <tr> * <td>期間分割(認可設定無視)</td> * <td>divideTermIgnoreAuthCompany</td> * <td>期間分割</td> * <td> </td> * </tr> * <tr> * <td>期間変更</td> * <td>moveTerm</td> * <td>期間変更</td> * <td> </td> * </tr> * <tr> * <td>期間変更(認可設定無視)</td> * <td>moveTermIgnoreAuthCompany</td> * <td>期間変更</td> * <td> </td> * </tr> * </table> * <br> * <br> * 機能に対するI/Oを以下に示します。(上記一覧のカテゴリ単位)<br> * <br> * 【IN】 * <table border="1"> * <tr> * <td align="right">●</td> * <td>:必須</td> * </tr> * <tr> * <td align="right">△</td> * <td>:任意、検索時完全一致条件</td> * </tr> * <tr> * <td align="right">▲</td> * <td>:任意、検索時部分一致条件</td> * </tr> * <tr> * <td align="right">×</td> * <td>:不要(設定されていても無視します。)</td> * </tr> * <tr> * <td align="right">☆</td> * <td>:各APIの説明を参照</td> * </tr> * <tr> * <td align="right">-</td> * <td>:対象外</td> * </tr> * </table> * <br> * 【OUT】 * <table border="1"> * <tr> * <td align="right">○</td> * <td>:あり</td> * </tr> * <tr> * <td align="right">×</td> * <td>:なし</td> * </tr> * <tr> * <td align="right">-</td> * <td>:対象外</td> * </tr> * </table> * <br> * <b>DTOクラスと機能のI/Oマトリクス(共通)</b> * <table border="1"> * <tr> * <th rowspan="2">DTOフィールド論理名</th> * <th rowspan="2">DTOフィールド名</th> * <th colspan="2">主キー<br> * 検索</th> * <th colspan="2">汎用<br> * 検索</th> * <th colspan="2">ロケール<br> * 検索</th> * <th colspan="2">参照<br> * 検索</th> * <th colspan="2">キーワード<br> * 検索</th> * <th colspan="2">削除フラグ<br> * 更新</th> * <th colspan="2">登録</th> * <th colspan="2">削除</th> * <th colspan="2">更新</th> * </tr> * <tr> * <th>I</th> * <th>O</th> * <th>I</th> * <th>O</th> * <th>I</th> * <th>O</th> * <th>I</th> * <th>O</th> * <th>I</th> * <th>O</th> * <th>I</th> * <th>O</th> * <th>I</th> * <th>O</th> * <th>I</th> * <th>O</th> * <th>I</th> * <th>O</th> * </tr> * <tr> * <td><b>会社コード(*)</b></td> * <td><b>companyCd</b></td> * <td align="center">●</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">●</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">●</td> * <td align="center">-</td> * <td align="center">●</td> * <td align="center">-</td> * <td align="center">●</td> * <td align="center">-</td> * <td align="center">●</td> * <td align="center">-</td> * </tr> * <tr> * <td><b>経費区分コード(*)</b></td> * <td><b>expTypeCd</b></td> * <td align="center">●</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">●</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">●</td> * <td align="center">-</td> * <td align="center">●</td> * <td align="center">-</td> * <td align="center">●</td> * <td align="center">-</td> * <td align="center">●</td> * <td align="center">-</td> * </tr> * <tr> * <td><b>期間コード(*)</b></td> * <td><b>termCd</b></td> * <td align="center">●</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">●</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">●</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">●</td> * <td align="center">-</td> * </tr> * <tr> * <td><b>ロケールID(*)</b></td> * <td><b>localeId</b></td> * <td align="center">●</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">●</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">●</td> * <td align="center">-</td> * </tr> * <tr> * <td>経費区分名称</td> * <td>expTypeName</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">▲</td> * <td align="center">○</td> * <td align="center">▲</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">△</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">△</td> * <td align="center">-</td> * </tr> * <tr> * <td>経費区分カテゴリ</td> * <td>expTypeCategory</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">▲</td> * <td align="center">○</td> * <td align="center">▲</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">△</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">△</td> * <td align="center">-</td> * </tr> * <tr> * <td>開始日</td> * <td>startDate</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">●</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * </tr> * <tr> * <td>終了日</td> * <td>endDate</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">●</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * </tr> * <tr> * <td>勘定科目コード</td> * <td>accountCd</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">△</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">△</td> * <td align="center">-</td> * </tr> * <tr> * <td>税区分コード</td> * <td>taxTypeCd</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">△</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">△</td> * <td align="center">-</td> * </tr> * <tr> * <td>ソートキー</td> * <td>sortKey</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">△</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">△</td> * <td align="center">-</td> * </tr> * <tr> * <td>削除フラグ</td> * <td>deleteFlag</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">△</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * </tr> * <tr> * <td>予備項目A~J</td> * <td>extensionA~J</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">▲</td> * <td align="center">○</td> * <td align="center">▲</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">△</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">△</td> * <td align="center">-</td> * </tr> * <tr> * <td>登録日時</td> * <td>entryTs</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">△</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * </tr> * <tr> * <td>登録者コード</td> * <td>entryUserCd</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">△</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * </tr> * <tr> * <td>更新カウンタ</td> * <td>renewCnt</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">△</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">☆</td> * <td align="center">-</td> * </tr> * <tr> * <td>更新日時</td> * <td>renewTs</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">△</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * </tr> * <tr> * <td>更新者コード</td> * <td>renewUserCd</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">△</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * </tr> * <tr> * <td>会社名称</td> * <td>companyName</td> * <td align="center">×</td> * <td align="center">×</td> * <td align="center">×</td> * <td align="center">×</td> * <td align="center">×</td> * <td align="center">×</td> * <td align="center">▲</td> * <td align="center">○</td> * <td align="center">▲</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * </tr> * <tr> * <td>勘定科目名称</td> * <td>accountName</td> * <td align="center">×</td> * <td align="center">×</td> * <td align="center">×</td> * <td align="center">×</td> * <td align="center">×</td> * <td align="center">×</td> * <td align="center">▲</td> * <td align="center">○</td> * <td align="center">▲</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * </tr> * <tr> * <td>税区分名称</td> * <td>taxTypeName</td> * <td align="center">×</td> * <td align="center">×</td> * <td align="center">×</td> * <td align="center">×</td> * <td align="center">×</td> * <td align="center">×</td> * <td align="center">▲</td> * <td align="center">○</td> * <td align="center">▲</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * </tr> * <tr> * <td>検索基準日</td> * <td>searchCriteriaDate</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">☆</td> * <td align="center">-</td> * <td align="center">☆</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * </tr> * </table> * <br> * <b>DTOクラスと機能のI/Oマトリクス(期間化)</b> * <table border="1"> * <tr> * <th rowspan="2">DTOフィールド論理名</th> * <th rowspan="2">DTOフィールド名</th> * <th colspan="2">期間検索</th> * <th colspan="2">基準日指定<br> * 検索</th> * <th colspan="2">期間分割</th> * <th colspan="2">期間変更</th> * </tr> * <tr> * <th>I</th> * <th>O</th> * <th>I</th> * <th>O</th> * <th>I</th> * <th>O</th> * <th>I</th> * <th>O</th> * </tr> * <tr> * <td><b>会社コード(*)</b></td> * <td><b>companyCd</b></td> * <td align="center">●</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">●</td> * <td align="center">-</td> * <td align="center">●</td> * <td align="center">-</td> * </tr> * <tr> * <td><b>経費区分コード(*)</b></td> * <td><b>expTypeCd</b></td> * <td align="center">●</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">●</td> * <td align="center">-</td> * <td align="center">●</td> * <td align="center">-</td> * </tr> * <tr> * <td><b>期間コード(*)</b></td> * <td><b>termCd</b></td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">●</td> * <td align="center">-</td> * <td align="center">●</td> * <td align="center">-</td> * </tr> * <tr> * <td><b>ロケールID(*)</b></td> * <td><b>localeId</b></td> * <td align="center">●</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * </tr> * <tr> * <td>経費区分名称</td> * <td>expTypeName</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * </tr> * <tr> * <td>経費区分カテゴリ</td> * <td>expTypeCategory</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * </tr> * <tr> * <td>開始日</td> * <td>startDate</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * </tr> * <tr> * <td>終了日</td> * <td>endDate</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * </tr> * <tr> * <td>勘定科目コード</td> * <td>accountCd</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * </tr> * <tr> * <td>税区分コード</td> * <td>taxTypeCd</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * </tr> * <tr> * <td>ソートキー</td> * <td>sortKey</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * </tr> * <tr> * <td>削除フラグ</td> * <td>deleteFlag</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * </tr> * <tr> * <td>予備項目A~J</td> * <td>extensionA~J</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * </tr> * <tr> * <td>登録日時</td> * <td>entryTs</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * </tr> * <tr> * <td>登録者コード</td> * <td>entryUserCd</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * </tr> * <tr> * <td>更新カウンタ</td> * <td>renewCnt</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">☆</td> * <td align="center">-</td> * <td align="center">☆</td> * <td align="center">-</td> * </tr> * <tr> * <td>更新日時</td> * <td>renewTs</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * <tr> * <td>更新者コード</td> * <td>renewUserCd</td> * <td align="center">×</td> * <td align="center">○</td> * <td align="center">△</td> * <td align="center">○</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * </tr> * <tr> * <td>会社名称</td> * <td>companyName</td> * <td align="center">×</td> * <td align="center">×</td> * <td align="center">×</td> * <td align="center">×</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * </tr> * <tr> * <td>勘定科目名称</td> * <td>accountName</td> * <td align="center">×</td> * <td align="center">×</td> * <td align="center">×</td> * <td align="center">×</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * </tr> * <tr> * <td>税区分名称</td> * <td>taxTypeName</td> * <td align="center">×</td> * <td align="center">×</td> * <td align="center">×</td> * <td align="center">×</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * </tr> * <tr> * <td>検索基準日</td> * <td>searchCriteriaDate</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">●</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * <td align="center">×</td> * <td align="center">-</td> * </tr> * </table> * <br> * テーブルのPK項目にはフィールド名に(*)を付与しています。<br> * </p> * * @author Sumitomo Life Information Systems Co.,Ltd. */ public class ExpTypeManagerImpl extends AbstractTermMasterManager<ExpTypeManagerDto> implements ExpTypeManager { /** K30mExpTypeService. */ @Resource protected K30mExpTypeService k30mExpTypeService; /** * {@inheritDoc} */ @Override public ExpTypeManagerDto select(ExpTypeManagerDto criteria, AuthorityCriteriaDto authCriteria) { return super.select(k30mExpTypeService, criteria, authCriteria); } /** * {@inheritDoc} */ @Override public ExpTypeManagerDto selectIgnoreAuthCompany(ExpTypeManagerDto criteria) { return super.selectIgnoreAuthCompany(k30mExpTypeService, criteria); } /** * {@inheritDoc} */ @Override public List<ExpTypeManagerDto> selectList(ExpTypeManagerDto criteria, AuthorityCriteriaDto authCriteria, List<OrderDto> order) { return super.selectList(k30mExpTypeService, criteria, authCriteria, order); } /** * {@inheritDoc} */ @Override public List<ExpTypeManagerDto> selectListIgnoreAuthCompany(ExpTypeManagerDto criteria, List<OrderDto> order) { return super.selectListIgnoreAuthority(k30mExpTypeService, criteria, order); } /** * {@inheritDoc} */ @Override public List<ExpTypeManagerDto> selectLocales(ExpTypeManagerDto criteria, AuthorityCriteriaDto authCriteria) { return super.selectLocales(k30mExpTypeService, criteria, authCriteria); } /** * {@inheritDoc} */ @Override public List<ExpTypeManagerDto> selectLocalesIgnoreAuthCompany(ExpTypeManagerDto criteria) { return super.selectLocalesIgnoreAuthCompany(k30mExpTypeService, criteria); } /** * {@inheritDoc} */ @Override public List<ExpTypeManagerDto> selectListWithReference(KaidenDto criteria, List<OrderDto> order, AuthorityCriteriaDto authCriteria) { String[] likeTarget = {EXP_TYPE_NAME, EXP_TYPE_CATEGORY, EXTENSION_A, EXTENSION_B, EXTENSION_C, EXTENSION_D, EXTENSION_E, EXTENSION_F, EXTENSION_G, EXTENSION_H, EXTENSION_I, EXTENSION_J, COMPANY_NAME, ACCOUNT_NAME, TAX_TYPE_NAME}; return super.selectBySql(k30mExpTypeService, "selectView.sql", criteria, order, authCriteria, likeTarget); } /** * {@inheritDoc} */ @Override public List<ExpTypeManagerDto> selectListWithReferenceIgnoreAuthCompany(KaidenDto criteria, List<OrderDto> order) { String[] likeTarget = {EXP_TYPE_NAME, EXP_TYPE_CATEGORY, EXTENSION_A, EXTENSION_B, EXTENSION_C, EXTENSION_D, EXTENSION_E, EXTENSION_F, EXTENSION_G, EXTENSION_H, EXTENSION_I, EXTENSION_J, COMPANY_NAME, ACCOUNT_NAME, TAX_TYPE_NAME}; return super.selectBySqlIgnoreAuthority(k30mExpTypeService, "selectView.sql", criteria, order, likeTarget); } /** * {@inheritDoc} */ @Override public Map<String, Object> selectListKeywordFilter(KaidenDto criteria, List<OrderDto> order, KeywordsCriteriaDto keywordsCriteria, AuthorityCriteriaDto authCriteria) { String[] likeTarget = {EXP_TYPE_NAME, EXP_TYPE_CATEGORY, EXTENSION_A, EXTENSION_B, EXTENSION_C, EXTENSION_D, EXTENSION_E, EXTENSION_F, EXTENSION_G, EXTENSION_H, EXTENSION_I, EXTENSION_J, COMPANY_NAME, ACCOUNT_NAME, TAX_TYPE_NAME}; return super.selectListByKeywords(k30mExpTypeService, "selectView.sql", criteria, order, keywordsCriteria, authCriteria, likeTarget); } /** * {@inheritDoc} */ @Override public Map<String, Object> selectListKeywordFilterIgnoreAuthCompany(KaidenDto criteria, List<OrderDto> order, KeywordsCriteriaDto keywordsCriteria) { String[] likeTarget = {EXP_TYPE_NAME, EXP_TYPE_CATEGORY, EXTENSION_A, EXTENSION_B, EXTENSION_C, EXTENSION_D, EXTENSION_E, EXTENSION_F, EXTENSION_G, EXTENSION_H, EXTENSION_I, EXTENSION_J, COMPANY_NAME, ACCOUNT_NAME, TAX_TYPE_NAME}; return super.selectListByKeywordsIgnoreAuthority(k30mExpTypeService, "selectView.sql", criteria, order, keywordsCriteria, likeTarget); } /** * {@inheritDoc} */ @Override public void toEnabled(ExpTypeManagerDto criteria, AuthorityCriteriaDto authCriteria) throws KaidenHaventAuthorityToCompanyException, KaidenOptimisticLockException { super.toEnabled(k30mExpTypeService, criteria, authCriteria); } /** * {@inheritDoc} */ @Override public void toEnabledIgnoreAuthCompany(ExpTypeManagerDto criteria) throws KaidenOptimisticLockException { super.toEnabledIgnoreAuthCompany(k30mExpTypeService, criteria); } /** * {@inheritDoc} */ @Override public void toDisabled(ExpTypeManagerDto criteria, AuthorityCriteriaDto authCriteria) throws KaidenHaventAuthorityToCompanyException, KaidenOptimisticLockException { super.toDisabled(k30mExpTypeService, criteria, authCriteria); } /** * {@inheritDoc} */ @Override public void toDisabledIgnoreAuthCompany(ExpTypeManagerDto criteria) throws KaidenOptimisticLockException { super.toDisabledIgnoreAuthCompany(k30mExpTypeService, criteria); } /** * {@inheritDoc} */ @Override public int entry(List<ExpTypeManagerDto> dataList, AuthorityCriteriaDto authCriteria) throws KaidenHaventAuthorityToCompanyException, KaidenDuplicationEntryException { return super.entry(k30mExpTypeService, dataList, authCriteria); } /** * {@inheritDoc} */ @Override public int entryIgnoreAuthCompany(List<ExpTypeManagerDto> dataList) throws KaidenDuplicationEntryException { return super.entryIgnoreAuthCompany(k30mExpTypeService, dataList); } /** * {@inheritDoc} */ @Override public int remove(ExpTypeManagerDto criteria, AuthorityCriteriaDto authCriteria) throws KaidenHaventAuthorityToCompanyException { return super.remove(k30mExpTypeService, criteria, authCriteria); } /** * {@inheritDoc} */ @Override public int removeIgnoreAuthCompany(ExpTypeManagerDto criteria) { return super.removeIgnoreAuthCompany(k30mExpTypeService, criteria); } /** * {@inheritDoc} */ @Override public int renew(List<ExpTypeManagerDto> dataList, AuthorityCriteriaDto authCriteria) throws KaidenHaventAuthorityToCompanyException, KaidenOptimisticLockException { return super.renew(k30mExpTypeService, dataList, authCriteria); } /** * {@inheritDoc} */ @Override public int renewIgnoreAuthCompany(List<ExpTypeManagerDto> dataList) throws KaidenOptimisticLockException { return super.renewIgnoreAuthCompany(k30mExpTypeService, dataList); } /** * {@inheritDoc} */ @Override public List<ExpTypeManagerDto> selectTerms(ExpTypeManagerDto criteria, AuthorityCriteriaDto authCriteria) { return super.selectTerms(k30mExpTypeService, criteria, authCriteria); } /** * {@inheritDoc} */ @Override public List<ExpTypeManagerDto> selectTermsIgnoreAuthCompany(ExpTypeManagerDto criteria) { return super.selectTermsIgnoreAuthCompany(k30mExpTypeService, criteria); } /** * {@inheritDoc} */ @Override public List<ExpTypeManagerDto> selectListIncluedsSearchDate(ExpTypeManagerDto criteria, AuthorityCriteriaDto authCriteria, List<OrderDto> order) { return super.selectListIncluedsSearchDate(k30mExpTypeService, criteria, authCriteria, order); } /** * {@inheritDoc} */ @Override public List<ExpTypeManagerDto> selectListIncluedsSearchDateIgnoreAuthCompany(ExpTypeManagerDto criteria, List<OrderDto> order) { return super.selectListIncluedsSearchDateIgnoreAuthCompany(k30mExpTypeService, criteria, order); } /** * {@inheritDoc} */ @Override public void divideTerm(ExpTypeManagerDto criteria, Date divideDate, AuthorityCriteriaDto authCriteria) throws KaidenHaventAuthorityToCompanyException, KaidenOptimisticLockException, KaidenValidateException { super.divideTerm(k30mExpTypeService, criteria, divideDate, authCriteria); } /** * {@inheritDoc} */ @Override public void divideTerm(ExpTypeManagerDto criteria, Date divideDate, AuthorityCriteriaDto authCriteria, String deleteFlag2nd) throws KaidenHaventAuthorityToCompanyException, KaidenOptimisticLockException, KaidenValidateException { String termCd2nd = super.divideTerm(k30mExpTypeService, criteria, divideDate, authCriteria); if (StringUtil.isNotEmpty(deleteFlag2nd)) { ExpTypeManagerDto criteria2nd = Beans.createAndCopy(ExpTypeManagerDto.class, criteria).execute(); criteria2nd.termCd = termCd2nd; if (GenericFlag.isOn(deleteFlag2nd)) { this.toDisabled(criteria2nd, authCriteria); } else if (GenericFlag.isOff(deleteFlag2nd)) { this.toEnabled(criteria2nd, authCriteria); } else { throw KaidenIllegalParametersException.makeInstance(); } } } /** * {@inheritDoc} */ @Override public void divideTermIgnoreAuthCompany(ExpTypeManagerDto criteria, Date divideDate) throws KaidenOptimisticLockException, KaidenValidateException { super.divideTermIgnoreAuthCompany(k30mExpTypeService, criteria, divideDate); } /** * {@inheritDoc} */ @Override public void divideTermIgnoreAuthCompany(ExpTypeManagerDto criteria, Date divideDate, String deleteFlag2nd) throws KaidenOptimisticLockException, KaidenValidateException { String termCd2nd = super.divideTermIgnoreAuthCompany(k30mExpTypeService, criteria, divideDate); if (StringUtil.isNotEmpty(deleteFlag2nd)) { ExpTypeManagerDto criteria2nd = Beans.createAndCopy(ExpTypeManagerDto.class, criteria).execute(); criteria2nd.termCd = termCd2nd; if (GenericFlag.isOn(deleteFlag2nd)) { this.toDisabledIgnoreAuthCompany(criteria2nd); } else if (GenericFlag.isOff(deleteFlag2nd)) { this.toEnabledIgnoreAuthCompany(criteria2nd); } else { throw KaidenIllegalParametersException.makeInstance(); } } } /** * {@inheritDoc} */ @Override public void moveTerm(ExpTypeManagerDto criteria, Date newStartDate, Date newEndDate, AuthorityCriteriaDto authCriteria) throws KaidenHaventAuthorityToCompanyException, KaidenOptimisticLockException, KaidenValidateException { super.moveTerm(k30mExpTypeService, criteria, newStartDate, newEndDate, authCriteria); } /** * {@inheritDoc} */ @Override public void moveTermIgnoreAuthCompany(ExpTypeManagerDto criteria, Date newStartDate, Date newEndDate) throws KaidenOptimisticLockException, KaidenValidateException { super.moveTermIgnoreAuthCompany(k30mExpTypeService, criteria, newStartDate, newEndDate); } /** * {@inheritDoc} */ @Override public Class<? extends KaidenDto> getDtoClass() { return super.dtoClass; } /** * 重複チェック確認フィールドを返却. * <p> * 新規登録時、登録済みデータと引数の登録データの重複チェックを行うフィールドを返します。 * </p> * * @return 重複チェック確認フィールドリスト */ @Override protected List<String> getDuplicationCheckField() { return Arrays.asList(new String[] {COMPANY_CD, EXP_TYPE_CD}); } /** * {@inheritDoc} * <p> * {@link #getValidateDefsDtoList4Entry()}で取得した定義を基にバリデートを実行します。 * </p> */ @Override public List<KaidenValidateResult> validate4Entry(List<?> dtoList, Map<String, String> surfaces) { if (dtoList == null) { throw KaidenIllegalParametersException.makeInstance(); } return makeValidateExecuter(dtoList, surfaces, getValidateDefsDtoList4Entry()).executeAll( ErrorMode.ERROR_CONTINUE); } /** * {@inheritDoc} * <p> * {@link #getValidateDefsDtoList4Renew()}で取得した定義を基にバリデートを実行します。 * </p> */ @Override public List<KaidenValidateResult> validate4Renew(List<?> dtoList, Map<String, String> surfaces) { if (dtoList == null) { throw KaidenIllegalParametersException.makeInstance(); } return makeValidateExecuter(dtoList, surfaces, getValidateDefsDtoList4Renew()).executeAll( ErrorMode.ERROR_CONTINUE); } /** * {@inheritDoc} * <p> * 以下のバリデート定義のリストを返却します。 * </p> * <table border="1"> * <tr> * <th>項目名</th> * <th>検証内容</th> * </tr> * <tr> * <td>会社コード</td> * <td>必須、マスタ存在確認</td> * </tr> * <tr> * <td>経費区分コード</td> * <td>必須、100桁、皆伝コード</td> * </tr> * <tr> * <td>ロケールID</td> * <td>必須、ロケール妥当性</td> * </tr> * <tr> * <td>経費区分名称</td> * <td>必須、250桁</td> * </tr> * <tr> * <td>経費区分カテゴリ</td> * <td>250桁</td> * </tr> * <tr> * <td>開始日</td> * <td>必須、日付(システム期間内)</td> * </tr> * <tr> * <td>終了日</td> * <td>必須、日付(システム期間内)、開始日・終了日大小チェック</td> * </tr> * <tr> * <td>勘定科目コード</td> * <td>必須、100桁、皆伝コード、マスタ存在確認</td> * </tr> * <tr> * <td>税区分コード</td> * <td>必須、100桁、皆伝コード、マスタ存在確認</td> * </tr> * <tr> * <td>ソートキー</td> * <td>必須、数値</td> * </tr> * <tr> * <td>削除フラグ</td> * <td>フラグ妥当性</td> * </tr> * </table> */ @Override public List<ValidateDefsDto> getValidateDefsDtoList4Entry() { List<ValidateDefsDto> result = new ArrayList<ValidateDefsDto>(); // 会社コード result.add(new ValidateDefsDto(COMPANY_CD, VALID_REQUIRED)); result.add(new ValidateDefsDto(COMPANY_CD, VALID_COMPANY_EXISTS, COMPANY_CD, "", "true")); // 経費区分コード result.add(new ValidateDefsDto(EXP_TYPE_CD, VALID_REQUIRED)); result.add(new ValidateDefsDto(EXP_TYPE_CD, VALID_MAX_LENGTH, String.valueOf(EXP_TYPE_CD_LEN))); result.add(new ValidateDefsDto(EXP_TYPE_CD, VALID_KAIDEN_ID)); // ロケールID result.add(new ValidateDefsDto(LOCALE_ID, VALID_REQUIRED)); result.add(new ValidateDefsDto(LOCALE_ID, VALID_LOCALE)); // 経費区分名称 result.add(new ValidateDefsDto(EXP_TYPE_NAME, VALID_REQUIRED)); result.add(new ValidateDefsDto(EXP_TYPE_NAME, VALID_MAX_LENGTH, String.valueOf(EXP_TYPE_NAME_LEN))); // 経費区分カテゴリ result.add(new ValidateDefsDto(EXP_TYPE_CATEGORY, VALID_MAX_LENGTH, String.valueOf(EXP_TYPE_CATEGORY_LEN))); // 開始日 result.add(new ValidateDefsDto(START_DATE, VALID_REQUIRED)); result.add(new ValidateDefsDto(START_DATE, VALID_DATE)); // 終了日 result.add(new ValidateDefsDto(END_DATE, VALID_REQUIRED)); result.add(new ValidateDefsDto(END_DATE, VALID_DATE)); result.add(new ValidateDefsDto(END_DATE, VALID_DATE_MIN, START_DATE)); // 勘定科目コード result.add(new ValidateDefsDto(ACCOUNT_CD, VALID_REQUIRED)); result.add(new ValidateDefsDto(ACCOUNT_CD, VALID_MAX_LENGTH, String.valueOf(ACCOUNT_CD_LEN))); result.add(new ValidateDefsDto(ACCOUNT_CD, VALID_KAIDEN_ID)); result.add(new ValidateDefsDto(ACCOUNT_CD, VALID_ACCOUNT_EXISTS, ACCOUNT_CD, COMPANY_CD, "", "true")); // 税区分コード result.add(new ValidateDefsDto(TAX_TYPE_CD, VALID_REQUIRED)); result.add(new ValidateDefsDto(TAX_TYPE_CD, VALID_MAX_LENGTH, String.valueOf(TAX_TYPE_CD_LEN))); result.add(new ValidateDefsDto(TAX_TYPE_CD, VALID_KAIDEN_ID)); result.add(new ValidateDefsDto(TAX_TYPE_CD, VALID_TAX_TYPE_EXISTS, TAX_TYPE_CD, COMPANY_CD, "", "true")); // ソートキー result.add(new ValidateDefsDto(SORT_KEY, VALID_REQUIRED)); result.add(new ValidateDefsDto(SORT_KEY, VALID_INTEGER, String.valueOf(SORT_KEY_LEN))); // 削除フラグ result.add(new ValidateDefsDto(DELETE_FLAG, VALID_FLAG)); return result; } /** * {@inheritDoc} * <p> * 以下のバリデート定義のリストを返却します。 * </p> * <table border="1"> * <tr> * <th>項目名</th> * <th>検証内容</th> * </tr> * <tr> * <td>会社コード</td> * <td>必須、マスタ存在確認</td> * </tr> * <tr> * <td>経費区分コード</td> * <td>必須、100桁、皆伝コード</td> * </tr> * <tr> * <td>期間コード</td> * <td>必須、50桁、皆伝コード</td> * </tr> * <tr> * <td>ロケールID</td> * <td>必須、ロケール妥当性</td> * </tr> * <tr> * <td>経費区分名称</td> * <td>必須、250桁</td> * </tr> * <tr> * <td>経費区分カテゴリ</td> * <td>250桁</td> * </tr> * <tr> * <td>開始日</td> * <td>必須、日付(システム期間内)</td> * </tr> * <tr> * <td>終了日</td> * <td>必須、日付(システム期間内)、開始日・終了日大小チェック</td> * </tr> * <tr> * <td>勘定科目コード</td> * <td>必須、100桁、皆伝コード、マスタ存在確認</td> * </tr> * <tr> * <td>税区分コード</td> * <td>必須、100桁、皆伝コード、マスタ存在確認</td> * </tr> * <tr> * <td>ソートキー</td> * <td>必須、数値</td> * </tr> * </table> */ @Override public List<ValidateDefsDto> getValidateDefsDtoList4Renew() { List<ValidateDefsDto> result = new ArrayList<ValidateDefsDto>(); // 会社コード result.add(new ValidateDefsDto(COMPANY_CD, VALID_REQUIRED)); result.add(new ValidateDefsDto(COMPANY_CD, VALID_COMPANY_EXISTS, COMPANY_CD, "", "true")); // 経費区分コード result.add(new ValidateDefsDto(EXP_TYPE_CD, VALID_REQUIRED)); result.add(new ValidateDefsDto(EXP_TYPE_CD, VALID_MAX_LENGTH, String.valueOf(EXP_TYPE_CD_LEN))); result.add(new ValidateDefsDto(EXP_TYPE_CD, VALID_KAIDEN_ID)); // 期間コード result.add(new ValidateDefsDto(TERM_CD, VALID_REQUIRED)); result.add(new ValidateDefsDto(TERM_CD, VALID_MAX_LENGTH, String.valueOf(TERM_CD_LEN))); result.add(new ValidateDefsDto(TERM_CD, VALID_KAIDEN_ID)); // ロケールID result.add(new ValidateDefsDto(LOCALE_ID, VALID_REQUIRED)); result.add(new ValidateDefsDto(LOCALE_ID, VALID_LOCALE)); // 経費区分名称 result.add(new ValidateDefsDto(EXP_TYPE_NAME, VALID_REQUIRED)); result.add(new ValidateDefsDto(EXP_TYPE_NAME, VALID_MAX_LENGTH, String.valueOf(EXP_TYPE_NAME_LEN))); result.add(new ValidateDefsDto(EXP_TYPE_CATEGORY, VALID_MAX_LENGTH, String.valueOf(EXP_TYPE_CATEGORY_LEN))); // 開始日 result.add(new ValidateDefsDto(START_DATE, VALID_REQUIRED)); result.add(new ValidateDefsDto(START_DATE, VALID_DATE)); // 終了日 result.add(new ValidateDefsDto(END_DATE, VALID_REQUIRED)); result.add(new ValidateDefsDto(END_DATE, VALID_DATE)); result.add(new ValidateDefsDto(END_DATE, VALID_DATE_MIN, START_DATE)); // 勘定科目コード result.add(new ValidateDefsDto(ACCOUNT_CD, VALID_REQUIRED)); result.add(new ValidateDefsDto(ACCOUNT_CD, VALID_MAX_LENGTH, String.valueOf(ACCOUNT_CD_LEN))); result.add(new ValidateDefsDto(ACCOUNT_CD, VALID_KAIDEN_ID)); result.add(new ValidateDefsDto(ACCOUNT_CD, VALID_ACCOUNT_EXISTS, ACCOUNT_CD, COMPANY_CD, "", "true")); // 税区分コード result.add(new ValidateDefsDto(TAX_TYPE_CD, VALID_REQUIRED)); result.add(new ValidateDefsDto(TAX_TYPE_CD, VALID_MAX_LENGTH, String.valueOf(TAX_TYPE_CD_LEN))); result.add(new ValidateDefsDto(TAX_TYPE_CD, VALID_KAIDEN_ID)); result.add(new ValidateDefsDto(TAX_TYPE_CD, VALID_TAX_TYPE_EXISTS, TAX_TYPE_CD, COMPANY_CD, "", "true")); // ソートキー result.add(new ValidateDefsDto(SORT_KEY, VALID_REQUIRED)); result.add(new ValidateDefsDto(SORT_KEY, VALID_INTEGER, String.valueOf(SORT_KEY_LEN))); return result; } /** {@inheritDoc} */ @Override public Class<ExpTypeManagerDto> getMainManagerDtoClass() { return ExpTypeManagerDto.class; } @Override public List<ExpTypeManagerDto> selectListIgnoreAuthCompanyWithLock(ExpTypeManagerDto criteria, List<OrderDto> order) { Map<String, Object> criteriaMap = k30mExpTypeService.getCriteria(criteria); return complementEndDateForDisp(CollectionUtil.createListAndCopy(ExpTypeManagerDto.class, k30mExpTypeService.genericSelectList4Update(criteriaMap, order))); } /** {@inheritDoc} */ @Override public List<String> getPkFileds() { return k30mExpTypeService.getPkFiled(); } /** * {@inheritDoc} */ @Override public void executeIterateLogic(ExpTypeManagerDto criteria, List<OrderDto> order, IterateBusinessLogicIF<ExpTypeManagerDto> logic) throws KaidenSystemException, KaidenApplicationException { super.iterateLogic(k30mExpTypeService, criteria, order, logic); } @Override public Map<String, Object> selectList4MstSearch(KaidenDto criteria, List<OrderDto> order, KeywordsCriteriaDto keywordsCriteria, SqlResultFilterIF[] filter) { String[] likeTarget = {EXP_TYPE_NAME, EXP_TYPE_CATEGORY, EXTENSION_A, EXTENSION_B, EXTENSION_C, EXTENSION_D, EXTENSION_E, EXTENSION_F, EXTENSION_G, EXTENSION_H, EXTENSION_I, EXTENSION_J, COMPANY_NAME, ACCOUNT_NAME, TAX_TYPE_NAME}; Map<String, Object> resultMap = super.selectListByKeywordsFilter(k30mExpTypeService, "selectView.sql", criteria, order, keywordsCriteria, likeTarget, filter); @SuppressWarnings("unchecked") List<ExpTypeManagerDto> newList = (List<ExpTypeManagerDto>) resultMap.get("resultList"); resultMap.put("resultList", newList); return resultMap; } }
5.3.2.2.7. ManagerDto¶
Pathsrc/main/java/jp/co/slcs/kaiden2/product_workflow/foundation/manager/exptype/ExpTypeManagerDto.javapackage jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype; import java.math.BigDecimal; import java.sql.Timestamp; import jp.co.slcs.kaiden2.base.foundation.model.dto.KaidenMasterManagerDto; import jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.impl.ExpTypeManagerImpl; /** * 経費区分マスタDTO. * <p> * マネージャクラス({@link ExpTypeManagerImpl})へ渡すパラメータ、及びマネージャからの結果返却で当クラスを使用します。 * </p> * * @author Sumitomo Life Information Systems Co.,Ltd. */ public class ExpTypeManagerDto extends KaidenMasterManagerDto { /** 会社コード. */ public String companyCd; /** 経費区分コード. */ public String expTypeCd; /** 期間コード. */ public String termCd; /** ロケールid. */ public String localeId; /** 経費区分名称. */ public String expTypeName; /** 経費区分カテゴリ. */ public String expTypeCategory; /** 開始日. */ public Timestamp startDate; /** 終了日. */ public Timestamp endDate; /** 勘定科目コード. */ public String accountCd; /** 税区分コード. */ public String taxTypeCd; /** ソートキー. */ public Long sortKey; /** 削除フラグ. */ public String deleteFlag; /** 予備項目a. */ public String extensionA; /** 予備項目b. */ public String extensionB; /** 予備項目c. */ public String extensionC; /** 予備項目d. */ public String extensionD; /** 予備項目e. */ public String extensionE; /** 予備項目f. */ public String extensionF; /** 予備項目g. */ public String extensionG; /** 予備項目h. */ public String extensionH; /** 予備項目i. */ public String extensionI; /** 予備項目j. */ public String extensionJ; /** 登録日時. */ public Timestamp entryTs; /** 登録者コード. */ public String entryUserCd; /** 更新カウンタ. */ public Long renewCnt; /** 更新日時. */ public Timestamp renewTs; /** 更新者コード. */ public String renewUserCd; /** 会社名称(他マスタ名称). */ public String companyName; /** 勘定科目名称(他マスタ名称). */ public String accountName; /** 税区分名称(他マスタ名称). */ public String taxTypeName; /** 税率(他マスタ). */ public BigDecimal taxRate; }
Pathsrc/main/java/jp/co/slcs/kaiden2/product_workflow/foundation/manager/exptype/ExpTypeManagerDtoFieldName.javapackage jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype; import jp.co.slcs.kaiden2.base.foundation.model.conf.EntityCommonFieldNames; import jp.co.slcs.kaiden2.product_workflow.foundation.manager.exptype.impl.ExpTypeManagerImpl; /** * 経費区分マスタDTO フィールド名定義クラス. * <p> * マネージャクラス({@link ExpTypeManagerImpl})へ渡すパラメータ、及びマネージャからの結果返却で当クラスを使用します。 * </p> * * @author Sumitomo Life Information Systems Co.,Ltd. */ public final class ExpTypeManagerDtoFieldName extends EntityCommonFieldNames { /** * コンストラクタ. */ private ExpTypeManagerDtoFieldName() { } /** 会社コード. */ public static final String COMPANY_CD = EntityCommonFieldNames.COMPANY_CD; /** 経費区分コード. */ public static final String EXP_TYPE_CD = "expTypeCd"; /** 期間コード. */ public static final String TERM_CD = EntityCommonFieldNames.TERM_CD; /** ロケールid. */ public static final String LOCALE_ID = EntityCommonFieldNames.LOCALE_ID; /** 経費区分名称. */ public static final String EXP_TYPE_NAME = "expTypeName"; /** 経費区分カテゴリ. */ public static final String EXP_TYPE_CATEGORY = "expTypeCategory"; /** 開始日. */ public static final String START_DATE = EntityCommonFieldNames.START_DATE; /** 終了日. */ public static final String END_DATE = EntityCommonFieldNames.END_DATE; /** 勘定科目コード. */ public static final String ACCOUNT_CD = "accountCd"; /** 税区分コード. */ public static final String TAX_TYPE_CD = "taxTypeCd"; /** ソートキー. */ public static final String SORT_KEY = EntityCommonFieldNames.SORT_KEY; /** 削除フラグ. */ public static final String DELETE_FLAG = EntityCommonFieldNames.DELETE_FLAG; /** 会社名称(他マスタ名称). */ public static final String COMPANY_NAME = "companyName"; /** 勘定科目名称(他マスタ名称). */ public static final String ACCOUNT_NAME = "accountName"; /** 税区分名称(他マスタ名称). */ public static final String TAX_TYPE_NAME = "taxTypeName"; /** 税率(他マスタ). */ public static final String TAX_RATE = "taxRate"; }
5.3.2.3. Java(S2JDBC)¶
5.3.2.3.1. Entity¶
Pathsrc/main/generated/jp/co/slcs/kaiden2/product_workflow/foundation/model/entity/K30mExpType.javapackage jp.co.slcs.kaiden2.product_workflow.foundation.model.entity; import java.io.Serializable; import java.sql.Timestamp; import javax.annotation.Generated; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.Table; import jp.co.slcs.kaiden2.base.foundation.model.entity.GenerateEntity; /** * 経費区分マスタ. * * @author Sumitomo Life Information Systems Co.,Ltd. */ @Entity @Table(name = "k30m_exp_type") @Generated(value = {"S2JDBC-Gen 2.4.46", "org.seasar.extension.jdbc.gen.internal.model.EntityModelFactoryImpl" }) public final class K30mExpType extends GenerateEntity implements Serializable { /** シリアルバージョンUID. */ private static final long serialVersionUID = 1L; /** 会社コード. */ @Id @Column(name = "company_cd", columnDefinition = "varchar2(100)", nullable = false, unique = false) public String companyCd; /** 経費区分コード. */ @Id @Column(name = "exp_type_cd", columnDefinition = "varchar2(100)", nullable = false, unique = false) public String expTypeCd; /** 期間コード. */ @Id @Column(name = "term_cd", columnDefinition = "varchar2(50)", nullable = false, unique = false) public String termCd; /** ロケールid. */ @Id @Column(name = "locale_id", columnDefinition = "varchar2(50)", nullable = false, unique = false) public String localeId; /** 経費区分名称. */ @Column(name = "exp_type_name", columnDefinition = "varchar2(1000)", nullable = false, unique = false) public String expTypeName; /** 経費区分カテゴリ. */ @Column(name = "exp_type_category", columnDefinition = "varchar2(1000)", nullable = true, unique = false) public String expTypeCategory; /** 開始日. */ @Column(name = "start_date", columnDefinition = "timestamp(6)", nullable = false, unique = false) public Timestamp startDate; /** 終了日. */ @Column(name = "end_date", columnDefinition = "timestamp(6)", nullable = false, unique = false) public Timestamp endDate; /** 勘定科目コード. */ @Column(name = "account_cd", columnDefinition = "varchar2(100)", nullable = false, unique = false) public String accountCd; /** 税区分コード. */ @Column(name = "tax_type_cd", columnDefinition = "varchar2(100)", nullable = false, unique = false) public String taxTypeCd; /** ソートキー. */ @Column(name = "sort_key", columnDefinition = "number(15,0)", nullable = false, unique = false) public Long sortKey; /** 削除フラグ. */ @Column(name = "delete_flag", columnDefinition = "varchar2(1)", nullable = false, unique = false) public String deleteFlag; /** 予備項目a. */ @Column(name = "extension_a", columnDefinition = "varchar2(1000)", nullable = true, unique = false) public String extensionA; /** 予備項目b. */ @Column(name = "extension_b", columnDefinition = "varchar2(1000)", nullable = true, unique = false) public String extensionB; /** 予備項目c. */ @Column(name = "extension_c", columnDefinition = "varchar2(1000)", nullable = true, unique = false) public String extensionC; /** 予備項目d. */ @Column(name = "extension_d", columnDefinition = "varchar2(1000)", nullable = true, unique = false) public String extensionD; /** 予備項目e. */ @Column(name = "extension_e", columnDefinition = "varchar2(1000)", nullable = true, unique = false) public String extensionE; /** 予備項目f. */ @Column(name = "extension_f", columnDefinition = "varchar2(1000)", nullable = true, unique = false) public String extensionF; /** 予備項目g. */ @Column(name = "extension_g", columnDefinition = "varchar2(1000)", nullable = true, unique = false) public String extensionG; /** 予備項目h. */ @Column(name = "extension_h", columnDefinition = "varchar2(1000)", nullable = true, unique = false) public String extensionH; /** 予備項目i. */ @Column(name = "extension_i", columnDefinition = "varchar2(1000)", nullable = true, unique = false) public String extensionI; /** 予備項目j. */ @Column(name = "extension_j", columnDefinition = "varchar2(1000)", nullable = true, unique = false) public String extensionJ; }
5.3.2.3.2. Names¶
Pathsrc/main/generated/jp/co/slcs/kaiden2/product_workflow/foundation/model/entity/K30mExpTypeNames.javapackage jp.co.slcs.kaiden2.product_workflow.foundation.model.entity; import java.sql.Timestamp; import javax.annotation.Generated; import org.seasar.extension.jdbc.name.PropertyName; /** * {@link K30mExpType}の名称クラス. * * @author Sumitomo Life Information Systems Co.,Ltd. */ @Generated(value = {"S2JDBC-Gen 2.4.46", "org.seasar.extension.jdbc.gen.internal.model.NamesModelFactoryImpl" }) public final class K30mExpTypeNames { /** * デフォルトコンストラクタ. */ private K30mExpTypeNames() { super(); } /** * companyCdのプロパティ名を返却. * * @return companyCdのプロパティ名 */ public static PropertyName<String> companyCd() { return new PropertyName<String>("companyCd"); } /** * expTypeCdのプロパティ名を返却. * * @return expTypeCdのプロパティ名 */ public static PropertyName<String> expTypeCd() { return new PropertyName<String>("expTypeCd"); } /** * termCdのプロパティ名を返却. * * @return termCdのプロパティ名 */ public static PropertyName<String> termCd() { return new PropertyName<String>("termCd"); } /** * localeIdのプロパティ名を返却. * * @return localeIdのプロパティ名 */ public static PropertyName<String> localeId() { return new PropertyName<String>("localeId"); } /** * expTypeNameのプロパティ名を返却. * * @return expTypeNameのプロパティ名 */ public static PropertyName<String> expTypeName() { return new PropertyName<String>("expTypeName"); } /** * expTypeCategoryのプロパティ名を返却. * * @return expTypeCategoryのプロパティ名 */ public static PropertyName<String> expTypeCategory() { return new PropertyName<String>("expTypeCategory"); } /** * startDateのプロパティ名を返却. * * @return startDateのプロパティ名 */ public static PropertyName<Timestamp> startDate() { return new PropertyName<Timestamp>("startDate"); } /** * endDateのプロパティ名を返却. * * @return endDateのプロパティ名 */ public static PropertyName<Timestamp> endDate() { return new PropertyName<Timestamp>("endDate"); } /** * accountCdのプロパティ名を返却. * * @return accountCdのプロパティ名 */ public static PropertyName<String> accountCd() { return new PropertyName<String>("accountCd"); } /** * taxTypeCdのプロパティ名を返却. * * @return taxTypeCdのプロパティ名 */ public static PropertyName<String> taxTypeCd() { return new PropertyName<String>("taxTypeCd"); } /** * sortKeyのプロパティ名を返却. * * @return sortKeyのプロパティ名 */ public static PropertyName<Long> sortKey() { return new PropertyName<Long>("sortKey"); } /** * deleteFlagのプロパティ名を返却. * * @return deleteFlagのプロパティ名 */ public static PropertyName<String> deleteFlag() { return new PropertyName<String>("deleteFlag"); } /** * extensionAのプロパティ名を返却. * * @return extensionAのプロパティ名 */ public static PropertyName<String> extensionA() { return new PropertyName<String>("extensionA"); } /** * extensionBのプロパティ名を返却. * * @return extensionBのプロパティ名 */ public static PropertyName<String> extensionB() { return new PropertyName<String>("extensionB"); } /** * extensionCのプロパティ名を返却. * * @return extensionCのプロパティ名 */ public static PropertyName<String> extensionC() { return new PropertyName<String>("extensionC"); } /** * extensionDのプロパティ名を返却. * * @return extensionDのプロパティ名 */ public static PropertyName<String> extensionD() { return new PropertyName<String>("extensionD"); } /** * extensionEのプロパティ名を返却. * * @return extensionEのプロパティ名 */ public static PropertyName<String> extensionE() { return new PropertyName<String>("extensionE"); } /** * extensionFのプロパティ名を返却. * * @return extensionFのプロパティ名 */ public static PropertyName<String> extensionF() { return new PropertyName<String>("extensionF"); } /** * extensionGのプロパティ名を返却. * * @return extensionGのプロパティ名 */ public static PropertyName<String> extensionG() { return new PropertyName<String>("extensionG"); } /** * extensionHのプロパティ名を返却. * * @return extensionHのプロパティ名 */ public static PropertyName<String> extensionH() { return new PropertyName<String>("extensionH"); } /** * extensionIのプロパティ名を返却. * * @return extensionIのプロパティ名 */ public static PropertyName<String> extensionI() { return new PropertyName<String>("extensionI"); } /** * extensionJのプロパティ名を返却. * * @return extensionJのプロパティ名 */ public static PropertyName<String> extensionJ() { return new PropertyName<String>("extensionJ"); } /** * entryTsのプロパティ名を返却. * * @return entryTsのプロパティ名 */ public static PropertyName<Timestamp> entryTs() { return new PropertyName<Timestamp>("entryTs"); } /** * entryUserCdのプロパティ名を返却. * * @return entryUserCdのプロパティ名 */ public static PropertyName<String> entryUserCd() { return new PropertyName<String>("entryUserCd"); } /** * renewCntのプロパティ名を返却. * * @return renewCntのプロパティ名 */ public static PropertyName<Long> renewCnt() { return new PropertyName<Long>("renewCnt"); } /** * renewTsのプロパティ名を返却. * * @return renewTsのプロパティ名 */ public static PropertyName<Timestamp> renewTs() { return new PropertyName<Timestamp>("renewTs"); } /** * renewUserCdのプロパティ名を返却. * * @return renewUserCdのプロパティ名 */ public static PropertyName<String> renewUserCd() { return new PropertyName<String>("renewUserCd"); } /** * @author S2JDBC-Gen */ public static class _K30mExpTypeNames extends PropertyName<K30mExpType> { /** * インスタンスを構築. */ public _K30mExpTypeNames() { } /** * インスタンスを構築. * * @param name 名前 */ public _K30mExpTypeNames(final String name) { super(name); } /** * インスタンスを構築. * * @param parent 親 * @param name 名前 */ public _K30mExpTypeNames(final PropertyName<?> parent, final String name) { super(parent, name); } /** * companyCdのプロパティ名を返却. * * @return companyCdのプロパティ名 */ public PropertyName<String> companyCd() { return new PropertyName<String>(this, "companyCd"); } /** * expTypeCdのプロパティ名を返却. * * @return expTypeCdのプロパティ名 */ public PropertyName<String> expTypeCd() { return new PropertyName<String>(this, "expTypeCd"); } /** * termCdのプロパティ名を返却. * * @return termCdのプロパティ名 */ public PropertyName<String> termCd() { return new PropertyName<String>(this, "termCd"); } /** * localeIdのプロパティ名を返却. * * @return localeIdのプロパティ名 */ public PropertyName<String> localeId() { return new PropertyName<String>(this, "localeId"); } /** * expTypeNameのプロパティ名を返却. * * @return expTypeNameのプロパティ名 */ public PropertyName<String> expTypeName() { return new PropertyName<String>(this, "expTypeName"); } /** * expTypeCategoryのプロパティ名を返却. * * @return expTypeCategoryのプロパティ名 */ public PropertyName<String> expTypeCategory() { return new PropertyName<String>(this, "expTypeCategory"); } /** * startDateのプロパティ名を返却. * * @return startDateのプロパティ名 */ public PropertyName<Timestamp> startDate() { return new PropertyName<Timestamp>(this, "startDate"); } /** * endDateのプロパティ名を返却. * * @return endDateのプロパティ名 */ public PropertyName<Timestamp> endDate() { return new PropertyName<Timestamp>(this, "endDate"); } /** * accountCdのプロパティ名を返却. * * @return accountCdのプロパティ名 */ public PropertyName<String> accountCd() { return new PropertyName<String>(this, "accountCd"); } /** * taxTypeCdのプロパティ名を返却. * * @return taxTypeCdのプロパティ名 */ public PropertyName<String> taxTypeCd() { return new PropertyName<String>(this, "taxTypeCd"); } /** * sortKeyのプロパティ名を返却. * * @return sortKeyのプロパティ名 */ public PropertyName<Long> sortKey() { return new PropertyName<Long>(this, "sortKey"); } /** * deleteFlagのプロパティ名を返却. * * @return deleteFlagのプロパティ名 */ public PropertyName<String> deleteFlag() { return new PropertyName<String>(this, "deleteFlag"); } /** * extensionAのプロパティ名を返却. * * @return extensionAのプロパティ名 */ public PropertyName<String> extensionA() { return new PropertyName<String>(this, "extensionA"); } /** * extensionBのプロパティ名を返却. * * @return extensionBのプロパティ名 */ public PropertyName<String> extensionB() { return new PropertyName<String>(this, "extensionB"); } /** * extensionCのプロパティ名を返却. * * @return extensionCのプロパティ名 */ public PropertyName<String> extensionC() { return new PropertyName<String>(this, "extensionC"); } /** * extensionDのプロパティ名を返却. * * @return extensionDのプロパティ名 */ public PropertyName<String> extensionD() { return new PropertyName<String>(this, "extensionD"); } /** * extensionEのプロパティ名を返却. * * @return extensionEのプロパティ名 */ public PropertyName<String> extensionE() { return new PropertyName<String>(this, "extensionE"); } /** * extensionFのプロパティ名を返却. * * @return extensionFのプロパティ名 */ public PropertyName<String> extensionF() { return new PropertyName<String>(this, "extensionF"); } /** * extensionGのプロパティ名を返却. * * @return extensionGのプロパティ名 */ public PropertyName<String> extensionG() { return new PropertyName<String>(this, "extensionG"); } /** * extensionHのプロパティ名を返却. * * @return extensionHのプロパティ名 */ public PropertyName<String> extensionH() { return new PropertyName<String>(this, "extensionH"); } /** * extensionIのプロパティ名を返却. * * @return extensionIのプロパティ名 */ public PropertyName<String> extensionI() { return new PropertyName<String>(this, "extensionI"); } /** * extensionJのプロパティ名を返却. * * @return extensionJのプロパティ名 */ public PropertyName<String> extensionJ() { return new PropertyName<String>(this, "extensionJ"); } /** * entryTsのプロパティ名を返却. * * @return entryTsのプロパティ名 */ public PropertyName<Timestamp> entryTs() { return new PropertyName<Timestamp>(this, "entryTs"); } /** * entryUserCdのプロパティ名を返却. * * @return entryUserCdのプロパティ名 */ public PropertyName<String> entryUserCd() { return new PropertyName<String>(this, "entryUserCd"); } /** * renewCntのプロパティ名を返却. * * @return renewCntのプロパティ名 */ public PropertyName<Long> renewCnt() { return new PropertyName<Long>(this, "renewCnt"); } /** * renewTsのプロパティ名を返却. * * @return renewTsのプロパティ名 */ public PropertyName<Timestamp> renewTs() { return new PropertyName<Timestamp>(this, "renewTs"); } /** * renewUserCdのプロパティ名を返却. * * @return renewUserCdのプロパティ名 */ public PropertyName<String> renewUserCd() { return new PropertyName<String>(this, "renewUserCd"); } } }
5.3.2.3.3. Service¶
Pathsrc/main/generated/jp/co/slcs/kaiden2/product_workflow/foundation/model/service/K30mExpTypeService.javapackage jp.co.slcs.kaiden2.product_workflow.foundation.model.service; import javax.annotation.Generated; import jp.co.slcs.kaiden2.base.foundation.model.service.GenerateService; import jp.co.slcs.kaiden2.product_workflow.foundation.model.entity.K30mExpType; /** * {@link K30mExpType}のサービスクラス. * * @author Sumitomo Life Information Systems Co.,Ltd. */ @Generated(value = {"S2JDBC-Gen 2.4.46", "org.seasar.extension.jdbc.gen.internal.model.ServiceModelFactoryImpl" }) public final class K30mExpTypeService extends GenerateService<K30mExpType> { // }
5.3.2.3.4. Condition¶
Pathsrc/main/generated/jp/co/slcs/kaiden2/product_workflow/foundation/model/service/K30mExpTypeCondition.javapackage jp.co.slcs.kaiden2.product_workflow.foundation.model.service; import java.sql.Timestamp; import javax.annotation.Generated; import org.seasar.extension.jdbc.where.ComplexWhere; import org.seasar.extension.jdbc.where.condition.AbstractEntityCondition; import org.seasar.extension.jdbc.where.condition.NotNullableCondition; import org.seasar.extension.jdbc.where.condition.NotNullableStringCondition; import org.seasar.extension.jdbc.where.condition.NullableStringCondition; /** * {@link K30mExpType}の条件クラス. * * @author Sumitomo Life Information Systems Co.,Ltd. */ @Generated(value = {"S2JDBC-Gen 2.4.46", "org.seasar.extension.jdbc.gen.internal.model.ConditionModelFactoryImpl" }) public final class K30mExpTypeCondition extends AbstractEntityCondition<K30mExpTypeCondition> { /** * インスタンスを構築. */ public K30mExpTypeCondition() { } /** * インスタンスを構築. * * @param prefix プレフィックス * @param where 検索条件 */ public K30mExpTypeCondition(String prefix, ComplexWhere where) { super(prefix, where); } /** companyCdの条件. */ public NotNullableStringCondition<K30mExpTypeCondition> companyCd = new NotNullableStringCondition<K30mExpTypeCondition>("companyCd", this); /** expTypeCdの条件. */ public NotNullableStringCondition<K30mExpTypeCondition> expTypeCd = new NotNullableStringCondition<K30mExpTypeCondition>("expTypeCd", this); /** termCdの条件. */ public NotNullableStringCondition<K30mExpTypeCondition> termCd = new NotNullableStringCondition<K30mExpTypeCondition>("termCd", this); /** localeIdの条件. */ public NotNullableStringCondition<K30mExpTypeCondition> localeId = new NotNullableStringCondition<K30mExpTypeCondition>("localeId", this); /** expTypeNameの条件. */ public NotNullableStringCondition<K30mExpTypeCondition> expTypeName = new NotNullableStringCondition<K30mExpTypeCondition>("expTypeName", this); /** expTypeCategoryの条件. */ public NullableStringCondition<K30mExpTypeCondition> expTypeCategory = new NullableStringCondition<K30mExpTypeCondition>("expTypeCategory", this); /** startDateの条件. */ public NotNullableCondition<K30mExpTypeCondition, Timestamp> startDate = new NotNullableCondition<K30mExpTypeCondition, Timestamp>("startDate", this); /** endDateの条件. */ public NotNullableCondition<K30mExpTypeCondition, Timestamp> endDate = new NotNullableCondition<K30mExpTypeCondition, Timestamp>("endDate", this); /** accountCdの条件. */ public NotNullableStringCondition<K30mExpTypeCondition> accountCd = new NotNullableStringCondition<K30mExpTypeCondition>("accountCd", this); /** taxTypeCdの条件. */ public NotNullableStringCondition<K30mExpTypeCondition> taxTypeCd = new NotNullableStringCondition<K30mExpTypeCondition>("taxTypeCd", this); /** sortKeyの条件. */ public NotNullableCondition<K30mExpTypeCondition, Long> sortKey = new NotNullableCondition<K30mExpTypeCondition, Long>("sortKey", this); /** deleteFlagの条件. */ public NotNullableStringCondition<K30mExpTypeCondition> deleteFlag = new NotNullableStringCondition<K30mExpTypeCondition>("deleteFlag", this); /** extensionAの条件. */ public NullableStringCondition<K30mExpTypeCondition> extensionA = new NullableStringCondition<K30mExpTypeCondition>("extensionA", this); /** extensionBの条件. */ public NullableStringCondition<K30mExpTypeCondition> extensionB = new NullableStringCondition<K30mExpTypeCondition>("extensionB", this); /** extensionCの条件. */ public NullableStringCondition<K30mExpTypeCondition> extensionC = new NullableStringCondition<K30mExpTypeCondition>("extensionC", this); /** extensionDの条件. */ public NullableStringCondition<K30mExpTypeCondition> extensionD = new NullableStringCondition<K30mExpTypeCondition>("extensionD", this); /** extensionEの条件. */ public NullableStringCondition<K30mExpTypeCondition> extensionE = new NullableStringCondition<K30mExpTypeCondition>("extensionE", this); /** extensionFの条件. */ public NullableStringCondition<K30mExpTypeCondition> extensionF = new NullableStringCondition<K30mExpTypeCondition>("extensionF", this); /** extensionGの条件. */ public NullableStringCondition<K30mExpTypeCondition> extensionG = new NullableStringCondition<K30mExpTypeCondition>("extensionG", this); /** extensionHの条件. */ public NullableStringCondition<K30mExpTypeCondition> extensionH = new NullableStringCondition<K30mExpTypeCondition>("extensionH", this); /** extensionIの条件. */ public NullableStringCondition<K30mExpTypeCondition> extensionI = new NullableStringCondition<K30mExpTypeCondition>("extensionI", this); /** extensionJの条件. */ public NullableStringCondition<K30mExpTypeCondition> extensionJ = new NullableStringCondition<K30mExpTypeCondition>("extensionJ", this); /** entryTsの条件. */ public NotNullableCondition<K30mExpTypeCondition, Timestamp> entryTs = new NotNullableCondition<K30mExpTypeCondition, Timestamp>("entryTs", this); /** entryUserCdの条件. */ public NotNullableStringCondition<K30mExpTypeCondition> entryUserCd = new NotNullableStringCondition<K30mExpTypeCondition>("entryUserCd", this); /** renewCntの条件. */ public NotNullableCondition<K30mExpTypeCondition, Long> renewCnt = new NotNullableCondition<K30mExpTypeCondition, Long>("renewCnt", this); /** renewTsの条件. */ public NotNullableCondition<K30mExpTypeCondition, Timestamp> renewTs = new NotNullableCondition<K30mExpTypeCondition, Timestamp>("renewTs", this); /** renewUserCdの条件. */ public NotNullableStringCondition<K30mExpTypeCondition> renewUserCd = new NotNullableStringCondition<K30mExpTypeCondition>("renewUserCd", this); }
5.3.2.4. SQL¶
5.3.2.4.1. 検索¶
Pathsrc/main/resources/META-INF/sql/jp/co/slcs/kaiden2/product_workflow/foundation/model/service/K30mExpTypeService/selectView.sqlselect exp.company_cd , exp.exp_type_cd , exp.term_cd , exp.locale_id , exp.exp_type_name , exp.exp_type_category , exp.start_date , exp.end_date , exp.account_cd , exp.tax_type_cd , exp.sort_key , exp.delete_flag , exp.extension_a , exp.extension_b , exp.extension_c , exp.extension_d , exp.extension_e , exp.extension_f , exp.extension_g , exp.extension_h , exp.extension_i , exp.extension_j , exp.entry_ts , exp.entry_user_cd , exp.renew_cnt , exp.renew_ts , exp.renew_user_cd , dept.department_name as company_name , account.account_name as account_name , tax.tax_type_name as tax_type_name , tax.tax_rate as tax_rate from k30m_exp_type exp left join ( select imm_department.company_cd , imm_department.department_set_cd , imm_department.department_cd , imm_department.locale_id , imm_department.start_date , imm_department.end_date , imm_department.department_name from imm_department) dept on exp.company_cd = dept.company_cd and exp.company_cd = dept.department_set_cd and exp.company_cd = dept.department_cd and exp.locale_id = dept.locale_id /*IF searchCriteriaDate != null*/ and dept.start_date <= /*searchCriteriaDate*/'2000/01/01' and dept.end_date > /*searchCriteriaDate*/'2000/01/01' --ELSE and dept.start_date <= exp.start_date --ELSE and dept.end_date > exp.start_date /*END*/ left join k30m_account account on exp.company_cd = account.company_cd and exp.account_cd = account.account_cd and exp.locale_id = account.locale_id /*IF searchCriteriaDate != null*/ and account.start_date <= /*searchCriteriaDate*/'2000/01/01' and account.end_date > /*searchCriteriaDate*/'2000/01/01' --ELSE and account.start_date <= exp.start_date --ELSE and account.end_date > exp.start_date /*END*/ left join k30m_tax_type tax on exp.company_cd = tax.company_cd and exp.tax_type_cd = tax.tax_type_cd and exp.locale_id = tax.locale_id /*IF searchCriteriaDate != null*/ and tax.start_date <= /*searchCriteriaDate*/'2000/01/01' and tax.end_date > /*searchCriteriaDate*/'2000/01/01' --ELSE and tax.start_date <= exp.start_date --ELSE and tax.end_date > exp.start_date /*END*/ /*BEGIN*/ where /*IF companyCd != null*/ exp.company_cd in/*companyCd*/('comp') /*END*/ /*IF expTypeCd != null*/ and exp.exp_type_cd = /*expTypeCd*/'expTypeCd' /*END*/ /*IF termCd != null*/ and exp.term_cd = /*termCd*/'termCd' /*END*/ /*IF localeId != null*/ and exp.locale_id = /*localeId*/'localeId' /*END*/ /*IF expTypeName != null*/ and exp.exp_type_name like /*expTypeName*/'%' ESCAPE '$' /*END*/ /*IF expTypeCategory != null*/ and exp.exp_type_category like /*expTypeCategory*/'expTypeCategory' ESCAPE '$' /*END*/ /*IF searchCriteriaDate != null*/ and exp.start_date <= /*searchCriteriaDate*/'1900/01/01' and exp.end_date > /*searchCriteriaDate*/'2999/12/31' /*END*/ /*IF accountCd != null*/ and exp.account_cd = /*accountCd*/'accountCd' /*END*/ /*IF taxTypeCd != null*/ and exp.tax_type_cd = /*taxTypeCd*/'taxTypeCd' /*END*/ /*IF sortKey != null*/ and exp.sort_key = /*sortKey*/'0' /*END*/ /*IF deleteFlag != null*/ and exp.delete_flag = /*deleteFlag*/'0' /*END*/ /*IF extensionA != null*/ and exp.extension_a like /*extensionA*/'extensionA' ESCAPE '$' /*END*/ /*IF extensionB != null*/ and exp.extension_b like /*extensionB*/'extensionB' ESCAPE '$' /*END*/ /*IF extensionC != null*/ and exp.extension_c like /*extensionC*/'extensionC' ESCAPE '$' /*END*/ /*IF extensionD != null*/ and exp.extension_d like /*extensionD*/'extensionD' ESCAPE '$' /*END*/ /*IF extensionE != null*/ and exp.extension_e like /*extensionE*/'extensionE' ESCAPE '$' /*END*/ /*IF extensionF != null*/ and exp.extension_f like /*extensionF*/'extensionF' ESCAPE '$' /*END*/ /*IF extensionG != null*/ and exp.extension_g like /*extensionG*/'extensionG' ESCAPE '$' /*END*/ /*IF extensionH != null*/ and exp.extension_h like /*extensionH*/'extensionH' ESCAPE '$' /*END*/ /*IF extensionI != null*/ and exp.extension_i like /*extensionI*/'extensionI' ESCAPE '$' /*END*/ /*IF extensionJ != null*/ and exp.extension_j like /*extensionJ*/'extensionJ' ESCAPE '$' /*END*/ /*IF companyName != null*/ and dept.department_name like /*companyName*/'companyName' ESCAPE '$' /*END*/ /*IF accountName != null*/ and account.account_name like /*accountName*/'accountName' ESCAPE '$' /*END*/ /*IF taxTypeName != null*/ and tax.tax_type_name like /*taxTypeName*/'taxTypeName' ESCAPE '$' /*END*/ /*IF taxRate != null*/ and tax.tax_rate = /*taxRate*/'0' /*END*/ /*END*/ /*IF orderBy != null*/ ORDER BY /*$orderBy*/company_cd /*END*/
5.3.2.5. XML¶
Pathsrc/main/webapp/WEB-INF/classes/jp/co/slcs/kaiden2/product_workflow/feature/action/kaiden/master/ExpTypeMasterMaintenanceSettings.xml<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <genericMasterMaintenanceSettings xmlns="http://kaiden.slcs.co.jp/xmlschema/genericMasterMaintenanceSettings"> <!-- 画面タイトルラベルID --> <titleSurfaceKey>PWKF.master.expType.title</titleSurfaceKey> <!-- 検索画面JSPフルパス --> <searchGadgetJsp></searchGadgetJsp><!-- デフォルトを利用 --> <!-- メンテナンス画面JSPフルパス --> <maintenanceGadgetJsp>/WEB-INF/view/kaiden2/product_workflow/master/expType/expTypeMainte.jsp</maintenanceGadgetJsp> <!-- AjaxAccessUrl --> <ajaxAccessUrl>kaiden/master/expType</ajaxAccessUrl> <!-- 1ページあたりの件数(0以下はページングせずすべて表示) --> <limit>20</limit> <!-- 検索条件の検索基準日 使用/不使用 --> <useSearchCriteriaDate>true</useSearchCriteriaDate> <!-- 検索条件の検索基準日 必須/任意 --> <requiredSearchCriteriaDate>true</requiredSearchCriteriaDate> <!-- 検索条件の検索基準日 デフォルト値(システム日付) 設定/非設定(必須の場合にはこの設定にかかわらずデフォルト値が設定される) --> <defaultSearchCriteriaDate>true</defaultSearchCriteriaDate> <!-- 検索条件の会社 使用/不使用 --> <useSearchCompany>true</useSearchCompany> <!-- 検索条件のロケール 使用/不使用 --> <useSearchLocale>true</useSearchLocale> <!-- 検索条件のステータス無効データも検索。 使用/不使用 --> <useSearchWithDisabled>true</useSearchWithDisabled> <!-- 汎用一覧・検索画面の行番号ラベルID --> <rownumberSurfaceKey></rownumberSurfaceKey><!-- デフォルトを利用 --> <!-- 汎用一覧・検索画面のカラム設定 --> <listCols> <listCol> <!-- 対象マスタのフィールドキー --> <fieldKey>expTypeCd</fieldKey> <!-- キーワード検索対象とするか否か --> <keywordSearchTarget>true</keywordSearchTarget> <!-- 表示幅 --> <width>120px</width> <!-- 表示位置 --> <align></align> <!-- ヘッダラベルID --> <headerSurfaceKey>PWKF.expTypeCd</headerSurfaceKey> <!-- ソート可能か否か --> <sortable>true</sortable> </listCol> <listCol> <fieldKey>expTypeName</fieldKey> <keywordSearchTarget>true</keywordSearchTarget> <width></width> <align></align> <headerSurfaceKey>PWKF.expTypeName</headerSurfaceKey> <sortable>true</sortable> </listCol> <listCol> <fieldKey>accountCd</fieldKey> <keywordSearchTarget>true</keywordSearchTarget> <width>120px</width> <align></align> <headerSurfaceKey>PWKF.accountCd</headerSurfaceKey> <sortable>true</sortable> </listCol> <listCol> <fieldKey>accountName</fieldKey> <keywordSearchTarget>true</keywordSearchTarget> <width></width> <align></align> <headerSurfaceKey>PWKF.accountName</headerSurfaceKey> <sortable>true</sortable> </listCol> <listCol> <fieldKey>taxTypeName</fieldKey> <keywordSearchTarget>true</keywordSearchTarget> <width></width> <align></align> <headerSurfaceKey>PWKF.taxTypeName</headerSurfaceKey> <sortable>true</sortable> </listCol> <listCol> <fieldKey>sortKey</fieldKey> <keywordSearchTarget>false</keywordSearchTarget> <width>90px</width> <align>right</align> <headerSurfaceKey>BASE.sortKey</headerSurfaceKey> <sortable>true</sortable> </listCol> <listCol> <fieldKey>deleteFlag</fieldKey> <keywordSearchTarget>false</keywordSearchTarget> <width>100px</width> <align>center</align> <headerSurfaceKey>BASE.status</headerSurfaceKey> <sortable>false</sortable> </listCol> </listCols> <!-- 検索・一覧画面のソート順 (汎用マスタ一覧は、第二ソートキーまで有効)--> <orders> <order> <fieldKey>sortKey</fieldKey> <type>asc</type> </order> <order> <fieldKey>expTypeCd</fieldKey> <type>asc</type> </order> </orders> <!-- 対象マスタの主キーフィールド --> <pkFields> <pkField>companyCd</pkField> <pkField>expTypeCd</pkField> <pkField>termCd</pkField> <pkField>localeId</pkField> </pkFields> </genericMasterMaintenanceSettings>
5.3.2.6. JSP¶
Pathsrc/main/webapp/WEB-INF/view/kaiden2/product_workflow/master/expType/expTypeMainte.jsp<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %> <%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %> <%@ taglib prefix="im" uri="http://www.intra-mart.co.jp/taglib/im-tenant" %> <%@ taglib prefix="k" uri="http://kaiden.slcs.co.jp/taglib/ui" %> <%@ taglib prefix="klist_base" uri="http://kaiden.slcs.co.jp/taglib/listdata/base" %> <%@ taglib prefix="klist_workflow" uri="http://kaiden.slcs.co.jp/taglib/listdata/workflow" %> <%@ page import="jp.co.slcs.kaiden2.base.foundation.conf.BaseProp" %> <%@ page import="jp.co.slcs.kaiden2.product_workflow.foundation.conf.ProductWorkflowProp" %> <%@ taglib prefix="kmsw" uri="http://kaiden.slcs.co.jp/taglib/master_search/workflow" %> <%-- product_workflow 共通インクルード --%> <c:if test="${empty pwkfCommonIncluded}" scope="request"> <jsp:include page="/WEB-INF/view/kaiden2/product_workflow/foundation/commonInclude.jsp"></jsp:include> <c:set var="pwkfCommonIncluded" scope="request">true</c:set> </c:if> <%--汎用マスタ一覧・検索 --%> <%-- 設定 --%> <c:set var="gadgetClass">expTypeMainte</c:set> <c:set var="gadgetVariation">v01</c:set> <c:set var="gadgetInstance">${param.gadget_instance}</c:set> <c:set var="gadgetId">${gadgetClass}_${gadgetVariation}_${gadgetInstance}</c:set> <c:set var="gadgetTitle">${maintenanceDto.settings.title}</c:set> <c:set var="accessUrl">${maintenanceDto.settings.ajaxAccessUrl}</c:set> <c:set var="surfaceStartDate"><%= BaseProp.S.START_DATE %></c:set> <c:set var="surfaceConcatChar"><%= BaseProp.S.CONCAT_CHAR %></c:set> <c:set var="surfaceEndDate"><%= BaseProp.S.END_DATE %></c:set> <c:set var="surfaceCompany"><%= BaseProp.S.COMPANY %></c:set> <c:set var="surfaceExpTypeCd"><%= ProductWorkflowProp.S.EXP_TYPE_CD %></c:set> <c:set var="surfaceExpTypeName"><%= ProductWorkflowProp.S.EXP_TYPE_NAME %></c:set> <c:set var="surfaceExpTypeCategory"><%= ProductWorkflowProp.S.ExpType.EXP_TYPE_CATEGORY %></c:set> <c:set var="surfaceAccount"><%= ProductWorkflowProp.S.ACCOUNT %></c:set> <c:set var="surfaceTaxType"><%= ProductWorkflowProp.S.TAX_TYPE %></c:set> <c:set var="surfaceSortKey"><%= BaseProp.S.SORT_KEY %></c:set> <%-- バリデーション --%> <c:set var="validStartDate_def">{k_required:[''], k_date:['']}</c:set> <c:set var="validEndDate_def">{k_required:[''], k_date:[''], k_dateMin:['startDate']}</c:set> <c:set var="validCompanyCd_def">{k_required:[''], k_companyExists:['companyCd', '', 'true']}</c:set> <c:set var="validExpTypeCd_def">{k_required:[''],k_kaidenId:[''], k_maxLength:['100']}</c:set> <c:set var="validExpTypeName_def">{k_required:[''], k_maxLength:['250']}</c:set> <c:set var="validExpTypeCategory_def">{k_maxLength:['250']}</c:set> <c:set var="validAccount_def">{k_required:[''], k_accountExists:['accountCd', 'companyCd','', 'true']}</c:set> <c:set var="validTaxType_def">{k_required:[''], k_taxTypeExists:['taxTypeCd', 'companyCd','', 'true']}</c:set> <c:set var="validSortKey_def">{k_required:[''], k_numeric:[''], k_maxLength:['15']}</c:set> <%-- 期間一覧ガジェット --%> <div class="kaiden-ui-master-term-list"> <jsp:include page="/WEB-INF/view/kaiden2/base/foundation/gadget/genericMasterTermList.jsp" flush="true"> <jsp:param name="gadget_instance" value="0" /> </jsp:include> </div> <div class="kaiden-ui-master-maintenance-area"> <k:gadgetContainer gadgetClass="${gadgetClass}" gadgetVariation="${gadgetVariation}" gadgetInstance="${gadgetInstance}" gadgetTitle="${gadgetTitle}" gadgetId="${gadgetId}" hideGadgetTitle="true" class="kaiden-ui-master-maintenance-input-area"> <k:blockContainer id="inputArea"> <form id="inputForm" onsubmit="return false;"> <table class="imui-form" style="table-layout:fixed"> <colgroup> <col style="width:150px;" /> <col /> </colgroup> <tr style="height:30px;"> <th> <k:surface surfaceKey="${surfaceStartDate}" style="display:inline-block" requiredMark="true"/> <k:surface surfaceKey="${surfaceConcatChar}" style="display:inline-block" /> <k:surface surfaceKey="${surfaceEndDate}" style="display:inline-block" requiredMark="true"/> </th> <td> <k:date name="startDate" mode="0" surfaceKey="${surfaceStartDate}" validationDefault="${validStartDate_def}" /> <k:surface surfaceKey="${surfaceConcatChar}" style="display:inline-block;margin-left:1em;margin-right:1em;"/> <k:date name="endDate" mode="0" surfaceKey="${surfaceEndDate}" validationDefault="${validEndDate_def}" /> </td> </tr> <tr> <th> <k:surface surfaceKey="${surfaceCompany}" requiredMark="true"/> </th> <td> <klist_base:listDataCompany name="readParmitCompany" type="readParmitCompany" blank="false"/> <k:select name="companyCd" mode="0" validationDefault="${validCompanyCd_def}" surfaceKey="${surfaceCompany}" dataName="readParmitCompany" style="width:300px;" includeDisabled="true"/> </td> </tr> <tr> <th> <k:surface surfaceKey="${surfaceExpTypeCd}" requiredMark="true"/> </th> <td> <k:codeText name="expTypeCd" mode="0" style="width:300px;" surfaceKey="${surfaceExpTypeCd}" validationDefault="${validExpTypeCd_def}" maxlength="100" /> </td> </tr> <tr> <th> <k:surface surfaceKey="${surfaceExpTypeName}" requiredMark="true"/> </th> <td> <k:text-locales name="expTypeName" mode="0" style="width:300px;" surfaceKey="${surfaceExpTypeName}" validationDefault="${validExpTypeName_def}" imeMode="on" maxlength="250" /> </td> </tr> <tr> <th> <k:surface surfaceKey="${surfaceExpTypeCategory}" /> </th> <td> <k:text name="expTypeCategory" mode="0" style="width:300px;" surfaceKey="${surfaceExpTypeCategory}" validationDefault="${validExpTypeCategory_def}" imeMode="on" maxlength="250" /> </td> </tr> <tr> <th> <k:surface surfaceKey="${surfaceAccount}" requiredMark="true"/> </th> <td> <kmsw:account name="accountName" mode="0" resultChain="{accountCd:'accountCd'}" searchCriteriaAccountCd="accountCd" searchCriteriaCompany="companyCd" resultValue="accountName" primaryTarget="accountCd" includeDisabled="true" style="width:280px" imeMode="on" surfaceKey="${surfaceAccount}" validationDefault="${validAccount_def}" /> <k:hidden name="accountCd" mode="0" /> </td> </tr> <tr> <th> <k:surface mode="0" surfaceKey="${surfaceTaxType}" requiredMark="true"/> </th> <td> <klist_workflow:listDataTaxType name="taxTypeName" blank="false" companyCd="" /> <k:select name="taxTypeCd" mode="0" validationDefault="${validTaxType_def}" surfaceKey="${surfaceTaxType}" dataName="taxTypeName" style="width:300px;" includeDisabled="true" /> </td> </tr> <tr> <th> <k:surface mode="0" surfaceKey="${surfaceSortKey}" requiredMark="true"/> </th> <td> <k:numericText name="sortKey" mode="0" style="width:50px;" surfaceKey="${surfaceSortKey}" validationDefault="${validSortKey_def}" maxlength="15" /> </td> </tr> <k:hidden name="renewCnt" mode="0"/> <k:hidden name="termCd" mode="0"/> <k:hidden name="deleteFlag" mode="0"/> <k:hidden name="pk_json" mode="0"/> </table> </form> </k:blockContainer> </k:gadgetContainer> <script type="text/javascript"> jQuery(function($) { var eventMan = KAIDEN.getGadget("${gadgetId}").eventManager , inputAreaAccessor = KAIDEN.getGadget("${gadgetId}").blockAccessors["inputArea"]; //trunsNewEntry(新規入力画面表示)イベントリスナの登録 eventMan.registPushListener("trunsNewEntry", function(/**Object*/arg) { //入力欄を一括クリア KAIDEN.getGadget("${gadgetId}").clearInput("inputArea"); //開始日・終了日にシステム開始日・システム終了日を設定 inputAreaAccessor("startDate").setValue("${k:getSystemStartDate()}"); inputAreaAccessor("endDate").setValue("${k:getSystemEndDateDecrement()}"); //開始日・終了日、会社、経費区分コードをdisabled inputAreaAccessor("startDate").removeDisabled(); inputAreaAccessor("endDate").removeDisabled(); inputAreaAccessor("companyCd").removeDisabled(); inputAreaAccessor("expTypeCd").removeDisabled(); if (inputAreaAccessor("companyCd").elem().children().length > 0) { inputAreaAccessor("companyCd").elem().get(0).selectedIndex = 0; inputAreaAccessor("companyCd").elem().trigger("change"); } KAIDEN.MasterSearch.refreshAll(true); //会社をフォーカス inputAreaAccessor("companyCd").elem().focus(); }); //loadData(表示対象データのロード)イベントリスナの登録 eventMan.registPushListener("loadData", function(/**Object*/arg) { var ajax = KAIDEN.Ajax() , criteria = {} , stat = false; criteria.criteriaJson = arg; ajax.postSyncAuto("${accessUrl}/select", criteria , function(returnData) { //正常系 //メンテナンス画面にデータセット for (var key in returnData.mainteTarget) { inputAreaAccessor(key).setValueIgnore(returnData.mainteTarget[key]); } inputAreaAccessor("pk_json").setValue(arg); //主キーを保存 inputAreaAccessor("companyCd").elem().trigger("change4Load"); inputAreaAccessor("taxTypeCd").setValue(returnData.mainteTarget["taxTypeCd"]) KAIDEN.MasterSearch.refreshAll(true); stat = true; } , function(returnData) { stat = false; } ); return stat; }); //trunsRenewEntry(更新画面表示)イベントリスナの登録 eventMan.registPushListener("trunsRenewEntry", function(/**Object*/arg) { //開始日・終了日、会社、経費区分コードをdisabled inputAreaAccessor("startDate").disabled(); inputAreaAccessor("endDate").disabled(); inputAreaAccessor("companyCd").disabled(); inputAreaAccessor("expTypeCd").disabled(); $("div[data-kaiden-gadget-id='${gadgetId}'] input[data-kaiden-org-name^='expTypeName']").eq(0).focus(); }); //currentPrimaryInfo(現在表示中データの主キーを要求)イベントリスナの登録 eventMan.registPullListener("claimCurrentDataPk", function(/**Object*/arg) { return inputAreaAccessor("pk_json").getValue(); //主キーを返却 }); inputAreaAccessor("companyCd").elem().on("change", function() { var criteria = {}; criteria.companyCd = inputAreaAccessor("companyCd").getValue(); KAIDEN.SelectListData.refreshList("taxTypeName", criteria); KAIDEN.MasterSearch.clear(inputAreaAccessor("accountName").elem()); }); inputAreaAccessor("companyCd").elem().on("change4Load", function() { var criteria = {}; criteria.companyCd = inputAreaAccessor("companyCd").getValue(); KAIDEN.SelectListData.refreshList("taxTypeName", criteria); }); }); </script> <%-- マスタメンテナンス汎用ボタンガジェット --%> <div style="clear:both;"> <jsp:include page="/WEB-INF/view/kaiden2/base/foundation/gadget/genericMasterOperationButton.jsp" flush="true"> <jsp:param name="gadget_instance" value="0" /> <jsp:param name="maintenanceGadgetId" value="${gadgetId}" /> </jsp:include> </div> </div>