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 static { 050 ACCRUAL_EARN_INTERVAL_MAP.put(ACCRUAL_EARN_INTERVAL_CODE.DAILY, "Daily"); 051 ACCRUAL_EARN_INTERVAL_MAP.put(ACCRUAL_EARN_INTERVAL_CODE.WEEKLY, "Weekly"); 052 ACCRUAL_EARN_INTERVAL_MAP.put(ACCRUAL_EARN_INTERVAL_CODE.SEMI_MONTHLY, "Semi-Monthly"); 053 ACCRUAL_EARN_INTERVAL_MAP.put(ACCRUAL_EARN_INTERVAL_CODE.MONTHLY, "Monthly"); 054 ACCRUAL_EARN_INTERVAL_MAP.put(ACCRUAL_EARN_INTERVAL_CODE.YEARLY, "Yearly"); 055 ACCRUAL_EARN_INTERVAL_MAP.put(ACCRUAL_EARN_INTERVAL_CODE.NO_ACCRUAL, "No Accrual"); 056 ACCRUAL_EARN_INTERVAL_MAP.put(ACCRUAL_EARN_INTERVAL_CODE.PAY_CAL, "Pay Calendar"); 057 } 058 059 060 // Action history 061 public static final class ACTION{ 062 public static final String DELETE = "D"; 063 public static final String ADD = "A"; 064 public static final String MODIFIED = "M"; 065 } 066 067 // Request status 068 public static final class REQUEST_STATUS{ 069 public static final String PLANNED="P"; 070 public static final String REQUESTED="R"; 071 public static final String APPROVED="A"; 072 public static final String DISAPPROVED = "D"; 073 public static final String DEFERRED="F"; 074 public static final String USAGE = "U"; 075 } 076 077 public static final Map<String, String> REQUEST_STATUS_STRINGS = new HashMap<String, String>(6); 078 079 static { 080 REQUEST_STATUS_STRINGS.put(REQUEST_STATUS.PLANNED, "Planned"); 081 REQUEST_STATUS_STRINGS.put(REQUEST_STATUS.REQUESTED, "Requested"); 082 REQUEST_STATUS_STRINGS.put(REQUEST_STATUS.APPROVED, "Approved"); 083 REQUEST_STATUS_STRINGS.put(REQUEST_STATUS.DISAPPROVED, "Disapproved"); 084 REQUEST_STATUS_STRINGS.put(REQUEST_STATUS.DEFERRED, "Deferred"); 085 REQUEST_STATUS_STRINGS.put(REQUEST_STATUS.USAGE, "Usage"); 086 } 087 088 public static final Map<String, String> ROUND_OPTION_MAP = new HashMap<String, String>(2); 089 static { 090 ROUND_OPTION_MAP.put("T", "Traditional"); 091 ROUND_OPTION_MAP.put("R", "Truncate"); 092 } 093 094 public static final class RECORD_METHOD { 095 public static final String TIME = "T"; 096 public static final String HOUR = "H"; 097 public static final String AMOUNT = "A"; 098 public static final String DAY = "D"; 099 } 100 101 public static final Map<String, String> RECORD_METHOD_MAP = new HashMap<String, String>(2); 102 static { 103 RECORD_METHOD_MAP.put(RECORD_METHOD.TIME, "Time"); 104 RECORD_METHOD_MAP.put(RECORD_METHOD.HOUR, "Hours"); 105 RECORD_METHOD_MAP.put(RECORD_METHOD.AMOUNT, "Amount"); 106 RECORD_METHOD_MAP.put(RECORD_METHOD.DAY, "Days"); 107 } 108 109 public static final Map<String, String> ACCRUAL_BALANCE_ACTION_MAP = new LinkedHashMap<String, String>(2); 110 static { 111 ACCRUAL_BALANCE_ACTION_MAP.put("N", "None"); 112 ACCRUAL_BALANCE_ACTION_MAP.put("U", "Usage"); 113 ACCRUAL_BALANCE_ACTION_MAP.put("A", "Adjustment"); 114 } 115 116 117 public static final String LEAVE_CALENDAR_TYPE = "leaveCalendar"; 118 119 public static final class LEAVE_BLOCK_TYPE { 120 public static final String LEAVE_CALENDAR = "LC"; 121 public static final String TIME_CALENDAR = "TC"; 122 public static final String ACCRUAL_SERVICE = "AS"; 123 public static final String BALANCE_TRANSFER = "BT"; 124 public static final String LEAVE_PAYOUT = "LP"; 125 public static final String DONATION_MAINT = "DM"; 126 public static final String LEAVE_ADJUSTMENT_MAINT = "LAM"; 127 public static final String CARRY_OVER = "CO"; 128 } 129 130 public static final Map<String, String> LEAVE_BLOCK_TYPE_MAP = new HashMap<String, String>(4); 131 static { 132 LEAVE_BLOCK_TYPE_MAP.put(LEAVE_BLOCK_TYPE.ACCRUAL_SERVICE, "Accrual Service"); 133 LEAVE_BLOCK_TYPE_MAP.put(LEAVE_BLOCK_TYPE.BALANCE_TRANSFER, "Balance Transfer"); 134 LEAVE_BLOCK_TYPE_MAP.put(LEAVE_BLOCK_TYPE.LEAVE_PAYOUT, "Leave Payout"); 135 LEAVE_BLOCK_TYPE_MAP.put(LEAVE_BLOCK_TYPE.DONATION_MAINT, "Donation"); 136 LEAVE_BLOCK_TYPE_MAP.put(LEAVE_BLOCK_TYPE.LEAVE_ADJUSTMENT_MAINT, "Leave Adjustment"); 137 LEAVE_BLOCK_TYPE_MAP.put(LEAVE_BLOCK_TYPE.CARRY_OVER, "Carry Over"); 138 } 139 140 public static final class ACTION_AT_MAX_BAL { 141 public static final String LOSE = "L"; 142 public static final String TRANSFER = "T"; 143 public static final String PAYOUT = "P"; 144 } 145 146 public static final class MAX_BAL_ACTION_FREQ { 147 //As of revision 3882, constant LEAVE_APPROVE given value LA to remove discrepancy for value 148 //being set in LM_ACCRUAL_CATEGORY_RULES_T.MAX_BAL_ACTION_FREQ. Constant was defined as "L" 149 //table value being set is "LA" 150 public static final String LEAVE_APPROVE = "LA"; 151 public static final String YEAR_END = "YE"; 152 public static final String ON_DEMAND = "OD"; 153 } 154 155 public static final String STATUS_CHANGE_EARN_CODE = "Accrual Note"; 156 157 public static final String RUN_ACCRUAL_FROM_CALENDAR = "run.accrual.from.calendar"; // controls if accrual should be ran from Leave calendar 158 159 public static final String INITIATE_LEAVE_REQUEST_ACTION = "kpme.lm.leaveCalendar.initiate.leaveRequest.action"; 160 public static final class INITIATE_LEAVE_REQUEST_ACTION_OPTIONS { 161 public static final String DELETE = "DELETE"; 162 public static final String APPROVE = "APPROVE"; 163 } 164 165 public static final class TIME_APPROVAL_TYPE { 166 public static final String TIME = "time"; 167 public static final String LEAVE = "leave"; 168 public static final String ALL = "all"; 169 } 170 171 public static int DELINQUENT_LEAVE_CALENDARS_LIMIT = 2; 172 173 public static final Map<String, String> EARN_CODE_USAGE_LIMIT_MAP = new LinkedHashMap<String, String>(2); 174 static { 175 EARN_CODE_USAGE_LIMIT_MAP.put("I", "Include"); 176 EARN_CODE_USAGE_LIMIT_MAP.put("E", "Exclude"); 177 } 178 179 public static final class BALANCE_TRANSFER_TYPE { 180 public static final String ACCRUAL_TRIGGERED = "AT"; 181 public static final String SSTO = "TO"; 182 public static final String MAINTENANCE = "MT"; 183 public static final String CARRY_OVER = "CO"; 184 } 185 186 public static final class UNUSED_TIME{ 187 public static final String NO_UNUSED = "NUTA"; 188 public static final String TRANSFER = "T"; 189 public static final String BANK = "B"; 190 } 191 192 public static final Map<String, String> UNUSED_TIME_MAP = new HashMap<String, String>(7); 193 static { 194 UNUSED_TIME_MAP.put(UNUSED_TIME.NO_UNUSED, "No Unused Time Allowed"); 195 UNUSED_TIME_MAP.put(UNUSED_TIME.TRANSFER, "Transfer"); 196 UNUSED_TIME_MAP.put(UNUSED_TIME.BANK, "Bank"); 197 } 198 }