@Component @Scope(value="prototype") public class WorkStatusTimeAndMappingLogic extends AbstractMasterMaintenanceLogic
contextHelper, dateHelper, propertyHelper
コンストラクタと説明 |
---|
WorkStatusTimeAndMappingLogic() |
entryAjax, entryAjax, getSearchAjaxCriteria, removeAjax, removeAjax, renewAjax, renewAjax, searchAjax, searchAjax, selectAjax, selectAjax, toDisabledAjax, toDisabledAjax, toEnabledAjax, toEnabledAjax
protected static final String JSP_AREA_DEDUCTION
@Autowired public WorkStatusManager workStatusManager
@Autowired public WorkStatusAttManager workStatusAttManager
@Autowired public WsAgreementManager wsAgreementManager
@Autowired public WsAgreementAttManager wsAgreementAttManager
@Autowired public LbrDayTypeManager lbrDayTypeManager
@Autowired public WstatDeductionManager wstatDeductionManager
@Autowired public WsAgrDaytypeManager wsAgrDaytypeManager
@Autowired public WsAgreementTermManager wsAgreementTermManager
@Autowired public DeductionManager deductionManager
@Autowired public CompanySettingsHelper companySettingsHelper
@Autowired public LaborDateHelper laborDateHelper
@Autowired public RequiredValidator requiredValidator
@Autowired public TimeValidator timeValidator
@Autowired public TimeUnitValidator timeUnitValidator
@Autowired public TimeMin2Validator timeMin2Validator
@Autowired public TimeMaxValidator timeMaxValidator
@Autowired public NotEqualValidator notEqualValidator
@Autowired public WsAgreementConductor wsAgreementConductor
@Autowired public LaborLeaveTypeSettingHelper laborLeaveTypeSettingHelper
@Transactional public LogicResultDto searchAjax(WorkStatusTimeAndMappingForm form)
マネージャクラスのselectListKeywordFilterを実行します。※キーワードでの絞り込みは行いません。
form内の以下のフィールドを利用します
以下の条件で会社の認可設定を検証します
form
- 画面から送信された値MasterManager.selectListKeywordFilter(KaidenDto, List, KeywordsCriteriaDto, AuthorityCriteriaDto)
@Transactional public LogicResultDto searchSelectableWorkStatusAjax(WorkStatusTimeAndMappingForm form)
form
- 画面から送信された値 ※criteriaJson/orderJsonのみ利用@Transactional public LogicResultDto selectAjax(WorkStatusTimeAndMappingForm form)
form
- 画面から送信された値 ※criteriaJson/orderJsonのみ利用@Transactional(rollbackFor=java.lang.Exception.class) public LogicResultDto renewAjax(WorkStatusTimeAndMappingForm form, String msgId) throws KaidenHaventAuthorityToCompanyException, KaidenOptimisticLockException, KaidenDuplicationEntryException
任意の処理成功メッセージを設定できます。
form
- 画面から送信された値 ※criteriaJsonのみ利用msgId
- 処理成功後に表示するメッセージKaidenDuplicationEntryException
- データ重複KaidenOptimisticLockException
- 更新対象データが見つからない/楽観排他エラーKaidenHaventAuthorityToCompanyException
- 権限のない会社への更新protected List<KaidenValidateResult> annualLeaveTimevalidate(WorkStatusAttManagerDto wsAttData, List<WstatDeductionManagerDto> wstatDeductionList)
休憩・控除・時間年休コード
バリデーション種類 | 検証内容 |
---|---|
休憩・控除・時間年休コード | 必須 |
休憩・控除・時間年休コード | マスタ存在チェック |
休憩・控除・時間年休コード | 最大時刻(48:00) |
出勤時間(開始) | 同一設定否認(出勤時間(開始)!= 出勤時間(終了)) |
wsAttData
- 勤務状況期間化情報Dto.wstatDeductionList
- 検証対象@Transactional(rollbackFor=java.lang.Exception.class) public LogicResultDto entryWsAgrDaytypeSettingAjax(WorkStatusTimeAndMappingForm form, String msgId) throws KaidenDuplicationEntryException, KaidenHaventAuthorityToCompanyException, KaidenNotFoundTargetDataException, KaidenOptimisticLockException
任意の処理成功メッセージを設定できます。
form
- 画面から送信された値 ※updateDataJsonのみ利用msgId
- 処理成功後に表示するメッセージKaidenHaventAuthorityToCompanyException
- 権限のない会社への更新KaidenDuplicationEntryException
- データ重複KaidenNotFoundTargetDataException
- 対象データが見つからないKaidenOptimisticLockException
- 更新対象データが見つからない/楽観排他エラーprotected List<KaidenValidateResult> workStatusTimeSettingValidate(WorkStatusAttManagerDto wsAttData, List<WstatDeductionManagerDto> wstatDeductionList)
バリデーション種類 | 検証内容 |
---|---|
単項目チェック | 勤務状況コードにより、各単項目チェックを実施 |
出勤時間と休憩・時間年休の時間の整合性チェック | 休憩・時間年休の時間が出勤時間外または出勤時間(開始) > 休憩・年休時間(終了)が同じ または 出勤時間(終了) < 休憩・時間年休時間(開始)が同じ以外の場合エラー |
休憩・時間年休の設定時間重複チェック | 休憩・時間年休の設定時間が重複の場合エラー |
wsAttData
- 検証対象wstatDeductionList
- 検証対象protected List<KaidenValidateResult> startMinuteOfDayValidate(WorkStatusAttManagerDto wsAttData)
出勤時間(開始)が未入力の場合はチェックしない。
バリデーション種類 | 検証内容 |
---|---|
出勤時間(開始) | 時刻 |
出勤時間(開始) | 時刻単位 |
出勤時間(開始) | 最大時刻(48:00) |
wsAttData
- 検証対象protected List<KaidenValidateResult> endMinuteOfDayValidate(WorkStatusAttManagerDto wsAttData)
出勤時間(終了)が未入力の場合はチェックしない。
バリデーション種類 | 検証内容 |
---|---|
出勤時間(終了) | 時刻 |
出勤時間(終了) | 時刻単位 |
出勤時間(終了) | 最大時刻(48:00) |
出勤時間(終了) | 最小時刻(出勤時間(開始) < 出勤時間(終了)) |
wsAttData
- 検証対象protected List<KaidenValidateResult> prescribedWorkingHoursValidate(WorkStatusAttManagerDto wsAttData)
バリデーション種類 | 検証内容 |
---|---|
1日の所定労働時間 | 必須 |
1日の所定労働時間 | 時刻 |
1日の所定労働時間 | 勤務体系カテゴリ = 変形労働時間制 最大時刻(10:00) 勤務体系カテゴリ = 変形労働時間制以外 最大時刻(8:00) |
wsAttData
- 検証対象protected List<KaidenValidateResult> leaveHoursValidate(WorkStatusAttManagerDto wsAttData)
バリデーション種類 | 検証内容 |
---|---|
休暇時間 | 必須 |
休暇時間 | 時刻 |
休暇時間 | 最大時刻(休暇時間 <= 所定労働時間) |
wsAttData
- 検証対象protected List<KaidenValidateResult> leaveHoursHalfBeforeValidate(WorkStatusAttManagerDto wsAttData)
バリデーション種類 | 検証内容 |
---|---|
休暇時間 | 必須 |
休暇時間 | 時刻 |
休暇時間 | 最大時刻(休暇時間(午前) <= 所定労働時間) |
wsAttData
- 検証対象protected List<KaidenValidateResult> leaveHoursHalfLaterValidate(WorkStatusAttManagerDto wsAttData)
バリデーション種類 | 検証内容 |
---|---|
休暇時間 | 必須 |
休暇時間 | 時刻 |
休暇時間 | 最大時刻(休暇時間(午後) <= 所定労働時間) |
wsAttData
- 検証対象protected List<KaidenValidateResult> leaveHoursHalfTotalValidate(WorkStatusAttManagerDto wsAttData)
バリデーション種類 | 検証内容 |
---|---|
休暇時間 | 最大時刻(休暇時間(午前)+休暇時間(午後) <= 所定労働時間) |
wsAttData
- 検証対象protected List<KaidenValidateResult> wsAgrDaytypeSetting(List<WsAgrDaytypeManagerDto> wsAgrDaytypeList)
wsAgrDaytypeList
- 検証対象protected List<KaidenValidateResult> prescribedWorkingHoursRequiredCheck(WorkStatusAttManagerDto wstatAttResult, WorkStatusManagerDto wstatResult, LbrDayTypeManagerDto lbrDTResult)
wstatAttResult
- 勤務状況期間化マスタ取得結果wstatResult
- 勤務状況マスタ取得結果lbrDTResult
- 勤務日付区分マスタ取得結果protected List<KaidenValidateResult> leaveHoursBeforeRequiredCheck(WorkStatusAttManagerDto wstatAttResult, WorkStatusManagerDto wstatResult, LbrDayTypeManagerDto lbrDTResult)
wstatAttResult
- 勤務状況期間化マスタ取得結果wstatResult
- 勤務状況マスタ取得結果lbrDTResult
- 勤務日付区分マスタ取得結果protected List<KaidenValidateResult> leaveHoursLaterRequiredCheck(WorkStatusAttManagerDto wstatAttResult, WorkStatusManagerDto wstatResult, LbrDayTypeManagerDto lbrDTResult)
wstatAttResult
- 勤務状況期間化マスタ取得結果wstatResult
- 勤務状況マスタ取得結果lbrDTResult
- 勤務日付区分マスタ取得結果protected List<KaidenValidateResult> workStatusAttCheck(WorkStatusAttManagerDto wstatAttResult, WorkStatusManagerDto wstatResult, LbrDayTypeManagerDto lbrDTResult)
wstatAttResult
- 勤務状況期間化マスタ取得結果wstatResult
- 勤務状況マスタ取得結果lbrDTResult
- 勤務日付区分マスタ取得結果protected KaidenValidateResult makeValidResult(String fieldNmKey, String mainMsgKey, Object... args)
バリデーションチェックのエラー結果を格納します。
fieldNmKey
- チェック対象フィールド名mainMsgKey
- メインメッセージキーargs
- 置換文字列の配列protected MasterManager<? extends KaidenDto> getManager()
getManager
クラス内 AbstractMasterMaintenanceLogic
protected String[] getKeywordSearchTargetCol()
getKeywordSearchTargetCol
クラス内 AbstractMasterMaintenanceLogic
protected List<String> getI18nTargetField()
getI18nTargetField
クラス内 AbstractMasterMaintenanceLogic
protected Map<String,Object> getInputData(AbstractMasterMaintenanceForm form)
getInputData
クラス内 AbstractMasterMaintenanceLogic
form
- 画面から送信された値protected Map<String,String> getSurfaces()
■設定値一覧
設定キー | 設定値 |
companyCd | 会社 |
wsAgreementCd | 勤務体系コード |
workStatusCd | 勤務状況コード |
prescribedWorkingHours | 1日の所定労働時間 |
leaveHours | 休暇時間 |
deductionCd | 休憩・控除・時間年休 |
startMinuteOfDay | 控除時間(開始) |
endMinuteOfDay | 控除時間(終了) |
lbrDayTypeCd | 選択可能な勤務状況 |
getSurfaces
クラス内 AbstractMasterMaintenanceLogic
protected Map<String,String> getSurfacesWorkStatusAtt()
■設定値一覧
設定キー | 設定値 |
companyCd | 会社 |
wsAgreementCd | 勤務体系コード |
workStatusCd | 勤務状況コード |
prescribedWorkingHours | 1日の所定労働時間 |
leaveHours | 休暇時間 |
leaveHoursHalfBefore | 休暇時間(午前) |
leaveHoursHalfLater | 休暇時間(午後) |
startMinuteOfDay | 出勤時間(開始) |
endMinuteOfDay | 出勤時間(終了) |
protected AuthorityCriteriaDto getReadAuthCriteria()
protected AuthorityCriteriaDto getWriteAuthCriteria()
Copyright © 2024 Sumitomo Life Information Systems Co., Ltd. All Rights Reserved.