4.2.2.7.1. アクセス権フィルタ¶
intra-mart Accel Kaiden! 勤務管理モジュール では、アクセスできる相手を制御するためのフィルタークラスを提供しています。
4.2.2.7.1.1. アクセス可能なユーザを判定し、ユーザリストを生成するフィルタ¶
- 管理者向けアクセス可能ユーザフィルタ
jp.co.slcs.kaiden.v2.product_labormgr.foundation.manager.access_data_filter.LaborSupAuthorizedAccessUserFilter管理組織に設定されていて且つ管理組織が属する会社に認可(参照権 or 編集権、パラメータで指定)があるかを判定し、その組織に所属するユーザのリストを生成します。フィルタを生成するサンプルコードを以下に記載します。// 認可条件 AuthorityCriteriaDto authCriteria = new AuthorityCriteriaDto(); authCriteria.action = CompanyAuthzActionType.READER; authCriteria.locale = contextHelper.getLoginUserLocale(); authCriteria.searchCriteriaDate = dateHelper.getNowTimestamp(); authCriteria.userCd = contextHelper.getLoginUserCd(); // 会社コード(省略可) String companyCd = "xxx"; // 管理組織に所属するユーザを検索する基準日 Timestamp a2CriteriaDate = dateHelper.getNowTimestamp(); // 権限コード String authorityCd = "xxx"; // ログインユーザ除外フラグ(true:除外する) boolean isExcludePerson = false; // フィルタ生成 LaborSupAuthorizedAccessUserFilter filter = new LaborSupAuthorizedAccessUserFilter(authCriteria, companyCd, a2CriteriaDate, authorityCd, isExcludePerson);
- 本人向けアクセス可能ユーザフィルタ
jp.co.slcs.kaiden.v2.product_labormgr.foundation.manager.access_data_filter.LaborEmpAuthorizedAccessUserFilter本人が所属する会社に認可(参照権 or 編集権、パラメータで指定)があるかを判定し、認可ありの場合は本人のユーザコードをリストにセットします。フィルタを生成するサンプルコードを以下に記載します。// 認可条件 AuthorityCriteriaDto authCriteria = new AuthorityCriteriaDto(); authCriteria.action = CompanyAuthzActionType.READER; authCriteria.locale = contextHelper.getLoginUserLocale(); authCriteria.searchCriteriaDate = dateHelper.getNowTimestamp(); authCriteria.userCd = contextHelper.getLoginUserCd(); // フィルタ生成 LaborEmpAuthorizedAccessUserFilter filter = new LaborEmpAuthorizedAccessUserFilter(authCriteria);コラム
上記は intra-mart Accel Kaiden! 勤務管理モジュール で提供しているフィルタクラスですが、intra-mart Accel Kaiden! 基盤モジュール でもアクセス権フィルタクラスを提供しています。
- ユーザフィルタ
jp.co.slcs.kaiden.v2.base.foundation.manager.access_data_filter.StandardAuthorizedAccessUserFilter認可がある会社に所属しているユーザを取得し、ユーザコードリストを生成します。