001 /** 002 * Copyright 2004-2013 The Kuali Foundation 003 * 004 * Licensed under the Educational Community License, Version 2.0 (the "License"); 005 * you may not use this file except in compliance with the License. 006 * You may obtain a copy of the License at 007 * 008 * http://www.opensource.org/licenses/ecl2.php 009 * 010 * Unless required by applicable law or agreed to in writing, software 011 * distributed under the License is distributed on an "AS IS" BASIS, 012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 013 * See the License for the specific language governing permissions and 014 * limitations under the License. 015 */ 016 package org.kuali.hr.lm; 017 018 import java.util.HashMap; 019 import java.util.LinkedHashMap; 020 import java.util.Map; 021 022 023 public class LMConstants { 024 public static final String SERVICE_TIME_YEAR = "year"; 025 public static final String SERVICE_TIME_MONTHS = "month"; 026 027 public static final class ACCRUAL_EARN_INTERVAL_CODE{ 028 public static final String DAILY = "D"; 029 public static final String WEEKLY = "W"; 030 public static final String SEMI_MONTHLY = "S"; 031 public static final String MONTHLY = "M"; 032 public static final String YEARLY = "Y"; 033 public static final String NO_ACCRUAL = "N"; 034 public static final String PAY_CAL = "P"; 035 } 036 037 public static final class ACCRUAL_EARN_INTERVAL{ 038 public static final String DAILY = "daily"; 039 public static final String WEEKLY = "weekly"; 040 public static final String SEMI_MONTHLY = "semimonthly"; 041 public static final String MONTHLY = "monthly"; 042 public static final String YEARLY = "yearly"; 043 public static final String NO_ACCRUAL = "noaccrual"; 044 public static final String PAY_CAL = "paycalendar"; 045 } 046 047 // KPME-1347 Kagata 048 public static final Map<String, String> ACCRUAL_EARN_INTERVAL_MAP = new HashMap<String, String>(7); 049 public static final String MAX_CARRY_OVER_ADJUSTMENT = "Max carry over adjustment"; 050 static { 051 ACCRUAL_EARN_INTERVAL_MAP.put(ACCRUAL_EARN_INTERVAL_CODE.DAILY, "Daily"); 052 ACCRUAL_EARN_INTERVAL_MAP.put(ACCRUAL_EARN_INTERVAL_CODE.WEEKLY, "Weekly"); 053 ACCRUAL_EARN_INTERVAL_MAP.put(ACCRUAL_EARN_INTERVAL_CODE.SEMI_MONTHLY, "Semi-Monthly"); 054 ACCRUAL_EARN_INTERVAL_MAP.put(ACCRUAL_EARN_INTERVAL_CODE.MONTHLY, "Monthly"); 055 ACCRUAL_EARN_INTERVAL_MAP.put(ACCRUAL_EARN_INTERVAL_CODE.YEARLY, "Yearly"); 056 ACCRUAL_EARN_INTERVAL_MAP.put(ACCRUAL_EARN_INTERVAL_CODE.NO_ACCRUAL, "No Accrual"); 057 ACCRUAL_EARN_INTERVAL_MAP.put(ACCRUAL_EARN_INTERVAL_CODE.PAY_CAL, "Pay Calendar"); 058 } 059 060 061 // Action history 062 public static final class ACTION{ 063 public static final String DELETE = "D"; 064 public static final String ADD = "A"; 065 public static final String MODIFIED = "M"; 066 } 067 068 // Request status 069 public static final class REQUEST_STATUS{ 070 public static final String PLANNED="P"; 071 public static final String REQUESTED="R"; 072 public static final String APPROVED="A"; 073 public static final String DISAPPROVED = "D"; 074 public static final String DEFERRED="F"; 075 public static final String USAGE = "U"; 076 } 077 078 public static final Map<String, String> REQUEST_STATUS_STRINGS = new HashMap<String, String>(6); 079 080 static { 081 REQUEST_STATUS_STRINGS.put(REQUEST_STATUS.PLANNED, "Planned"); 082 REQUEST_STATUS_STRINGS.put(REQUEST_STATUS.REQUESTED, "Requested"); 083 REQUEST_STATUS_STRINGS.put(REQUEST_STATUS.APPROVED, "Approved"); 084 REQUEST_STATUS_STRINGS.put(REQUEST_STATUS.DISAPPROVED, "Disapproved"); 085 REQUEST_STATUS_STRINGS.put(REQUEST_STATUS.DEFERRED, "Deferred"); 086 REQUEST_STATUS_STRINGS.put(REQUEST_STATUS.USAGE, "Usage"); 087 } 088 089 public static final Map<String, String> ROUND_OPTION_MAP = new HashMap<String, String>(2); 090 static { 091 ROUND_OPTION_MAP.put("T", "Traditional"); 092 ROUND_OPTION_MAP.put("R", "Truncate"); 093 } 094 095 public static final class RECORD_METHOD { 096 public static final String TIME = "T"; 097 public static final String HOUR = "H"; 098 public static final String AMOUNT = "A"; 099 public static final String DAY = "D"; 100 } 101 102 public static final Map<String, String> RECORD_METHOD_MAP = new HashMap<String, String>(2); 103 static { 104 RECORD_METHOD_MAP.put(RECORD_METHOD.TIME, "Time"); 105 RECORD_METHOD_MAP.put(RECORD_METHOD.HOUR, "Hours"); 106 RECORD_METHOD_MAP.put(RECORD_METHOD.AMOUNT, "Amount"); 107 RECORD_METHOD_MAP.put(RECORD_METHOD.DAY, "Days"); 108 } 109 110 public static final Map<String, String> ACCRUAL_BALANCE_ACTION_MAP = new LinkedHashMap<String, String>(2); 111 static { 112 ACCRUAL_BALANCE_ACTION_MAP.put(ACCRUAL_BALANCE_ACTION.NONE, "None"); 113 ACCRUAL_BALANCE_ACTION_MAP.put(ACCRUAL_BALANCE_ACTION.USAGE, "Usage"); 114 ACCRUAL_BALANCE_ACTION_MAP.put(ACCRUAL_BALANCE_ACTION.ADJUSTMENT, "Adjustment"); 115 } 116 117 public static final class ACCRUAL_BALANCE_ACTION { 118 public static final String NONE = "N"; 119 public static final String USAGE = "U"; 120 public static final String ADJUSTMENT = "A"; 121 } 122 123 124 public static final String LEAVE_CALENDAR_TYPE = "leaveCalendar"; 125 126 public static final class LEAVE_BLOCK_TYPE { 127 public static final String LEAVE_CALENDAR = "LC"; 128 public static final String TIME_CALENDAR = "TC"; 129 public static final String ACCRUAL_SERVICE = "AS"; 130 public static final String BALANCE_TRANSFER = "BT"; 131 public static final String LEAVE_PAYOUT = "LP"; 132 public static final String DONATION_MAINT = "DM"; 133 public static final String LEAVE_ADJUSTMENT_MAINT = "LAM"; 134 public static final String CARRY_OVER = "CO"; 135 public static final String CARRY_OVER_ADJUSTMENT = "COA"; 136 } 137 138 public static final Map<String, String> LEAVE_BLOCK_TYPE_MAP = new HashMap<String, String>(8); 139 static { 140 LEAVE_BLOCK_TYPE_MAP.put(LEAVE_BLOCK_TYPE.LEAVE_CALENDAR, "Leave Calendar"); 141 LEAVE_BLOCK_TYPE_MAP.put(LEAVE_BLOCK_TYPE.TIME_CALENDAR, "Time Calendar"); 142 LEAVE_BLOCK_TYPE_MAP.put(LEAVE_BLOCK_TYPE.ACCRUAL_SERVICE, "Accrual Service"); 143 LEAVE_BLOCK_TYPE_MAP.put(LEAVE_BLOCK_TYPE.BALANCE_TRANSFER, "Balance Transfer"); 144 LEAVE_BLOCK_TYPE_MAP.put(LEAVE_BLOCK_TYPE.LEAVE_PAYOUT, "Leave Payout"); 145 LEAVE_BLOCK_TYPE_MAP.put(LEAVE_BLOCK_TYPE.DONATION_MAINT, "Donation"); 146 LEAVE_BLOCK_TYPE_MAP.put(LEAVE_BLOCK_TYPE.LEAVE_ADJUSTMENT_MAINT, "Leave Adjustment"); 147 LEAVE_BLOCK_TYPE_MAP.put(LEAVE_BLOCK_TYPE.CARRY_OVER, "Carry Over"); 148 LEAVE_BLOCK_TYPE_MAP.put(LEAVE_BLOCK_TYPE.CARRY_OVER_ADJUSTMENT, "Carry Over Adjustment"); 149 } 150 151 public static final class ACTION_AT_MAX_BAL { 152 public static final String LOSE = "L"; 153 public static final String TRANSFER = "T"; 154 public static final String PAYOUT = "P"; 155 } 156 157 public static final class MAX_BAL_ACTION_FREQ { 158 //As of revision 3882, constant LEAVE_APPROVE given value LA to remove discrepancy for value 159 //being set in LM_ACCRUAL_CATEGORY_RULES_T.MAX_BAL_ACTION_FREQ. Constant was defined as "L" 160 //table value being set is "LA" 161 public static final String LEAVE_APPROVE = "LA"; 162 public static final String YEAR_END = "YE"; 163 public static final String ON_DEMAND = "OD"; 164 } 165 166 public static final String STATUS_CHANGE_EARN_CODE = "Accrual Note"; 167 168 public static final String RUN_ACCRUAL_FROM_CALENDAR = "run.accrual.from.calendar"; // controls if accrual should be ran from Leave calendar 169 170 public static final String INITIATE_LEAVE_REQUEST_ACTION = "kpme.lm.leaveCalendar.initiate.leaveRequest.action"; 171 public static final class INITIATE_LEAVE_REQUEST_ACTION_OPTIONS { 172 public static final String DELETE = "DELETE"; 173 public static final String APPROVE = "APPROVE"; 174 } 175 176 public static final class TIME_APPROVAL_TYPE { 177 public static final String TIME = "time"; 178 public static final String LEAVE = "leave"; 179 public static final String ALL = "all"; 180 } 181 182 public static final int DELINQUENT_LEAVE_CALENDARS_LIMIT = 2; 183 184 public static final Map<String, String> EARN_CODE_USAGE_LIMIT_MAP = new LinkedHashMap<String, String>(2); 185 static { 186 EARN_CODE_USAGE_LIMIT_MAP.put("I", "Include"); 187 EARN_CODE_USAGE_LIMIT_MAP.put("E", "Exclude"); 188 } 189 190 public static final class BALANCE_TRANSFER_TYPE { 191 public static final String ACCRUAL_TRIGGERED = "AT"; 192 public static final String SSTO = "TO"; 193 public static final String MAINTENANCE = "MT"; 194 public static final String CARRY_OVER = "CO"; 195 } 196 197 public static final class UNUSED_TIME{ 198 public static final String NO_UNUSED = "NUTA"; 199 public static final String TRANSFER = "T"; 200 public static final String BANK = "B"; 201 } 202 203 public static final Map<String, String> UNUSED_TIME_MAP = new HashMap<String, String>(7); 204 static { 205 UNUSED_TIME_MAP.put(UNUSED_TIME.NO_UNUSED, "No Unused Time Allowed"); 206 UNUSED_TIME_MAP.put(UNUSED_TIME.TRANSFER, "Transfer"); 207 UNUSED_TIME_MAP.put(UNUSED_TIME.BANK, "Bank"); 208 } 209 }