1330 lines
48 KiB
Java
1330 lines
48 KiB
Java
|
|
package com.engine.kq.biz;
|
|||
|
|
|
|||
|
|
import weaver.cache.*;
|
|||
|
|
import weaver.common.StringUtil;
|
|||
|
|
import weaver.conn.RecordSet;
|
|||
|
|
import weaver.general.Util;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* @Auther: Administrator
|
|||
|
|
* @Date: 2019-03-08 16:23
|
|||
|
|
* @Description:
|
|||
|
|
*/
|
|||
|
|
public class KQLeaveRulesDetailComInfo extends CacheBase {
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 数据来源
|
|||
|
|
*/
|
|||
|
|
protected static String TABLE_NAME = "kq_leaveRulesDetail";
|
|||
|
|
/**
|
|||
|
|
* sql中的where信息,不要以where开始
|
|||
|
|
*/
|
|||
|
|
protected static String TABLE_WHERE = " (isDelete is null or isDelete !=1) ";
|
|||
|
|
/**
|
|||
|
|
* sql中的order by信息,不要以order by开始
|
|||
|
|
*/
|
|||
|
|
protected static String TABLE_ORDER = "id";
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 主键
|
|||
|
|
*/
|
|||
|
|
@PKColumn(type = CacheColumnType.NUMBER)
|
|||
|
|
protected static String PK_NAME = "id";
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 假期规则的ID
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "id")
|
|||
|
|
protected static int id;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 假期类型的ID
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "ruleId")
|
|||
|
|
protected static int ruleId;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 假期规则名称
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "ruleName")
|
|||
|
|
protected static int ruleName;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 应用范围:0-总部、1-分部
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "scopeType")
|
|||
|
|
protected static int scopeType;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 分部ID(当应用范围为分部时选择的分部ID)
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "scopeValue")
|
|||
|
|
protected static int scopeValue;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 余额发放方式:
|
|||
|
|
* 1-手动发放
|
|||
|
|
* 2-按司龄自动发放
|
|||
|
|
* 3-按工龄自动发放
|
|||
|
|
* 4-每年自动发放固定天数
|
|||
|
|
* 5-加班时长自动计入余额
|
|||
|
|
* 6-按司龄+工龄自动发放
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "distributionMode")
|
|||
|
|
protected static int distributionMode;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 每人发放小时(天)数
|
|||
|
|
* 注:当余额发放方式为"4-每年自动发放固定天数"时有效
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "annualAmount")
|
|||
|
|
protected static int annualAmount;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 法定年假的规则:(当【余额发放方式】选择【6-按司龄+工龄自动发放】才有效)
|
|||
|
|
* 0-工龄(默认)
|
|||
|
|
* 1-司龄
|
|||
|
|
* 2-司龄+工龄
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "legalKey")
|
|||
|
|
protected static int legalKey;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 福利年假的规则:(当【余额发放方式】选择【6-按司龄+工龄自动发放】才有效)
|
|||
|
|
* 0-工龄
|
|||
|
|
* 1-司龄(默认)
|
|||
|
|
* 2-司龄+工龄
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "welfareKey")
|
|||
|
|
protected static int welfareKey;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 扣减优先级:(当【余额发放方式】选择【6-按司龄+工龄自动发放】才有效)
|
|||
|
|
* 1-法定年假
|
|||
|
|
* 2-福利年假
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "priority")
|
|||
|
|
protected static int priority;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 计算方式
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "calcMethod")
|
|||
|
|
protected static int calcMethod;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* //假期基数的发放日期
|
|||
|
|
* //1--每年的1月1号
|
|||
|
|
* //2--入职日期
|
|||
|
|
* //3--参加工作日期
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "baseAmountReleaseDate")
|
|||
|
|
protected static int baseAmountReleaseDate;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* //假期基数的变动日期
|
|||
|
|
* //1--每年的1月1号
|
|||
|
|
* //2--入职日期
|
|||
|
|
* //3--参加工作日期
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "baseAmountChangeDate")
|
|||
|
|
protected static int baseAmountChangeDate;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 假期基数折算方式
|
|||
|
|
* 0--不折算
|
|||
|
|
* 1--四舍五入
|
|||
|
|
* 2--向上取整
|
|||
|
|
* 3--向下取整
|
|||
|
|
* 4--向上取0.5的倍数
|
|||
|
|
* 5--向下取0.5的倍数
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "convertMode")
|
|||
|
|
protected static int convertMode;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 折算后保留的小数点位数
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "decimalDigit")
|
|||
|
|
protected static int decimalDigit;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 有效期规则
|
|||
|
|
* 0-永久有效
|
|||
|
|
* 1-按自然年(1月1日-12月31日)
|
|||
|
|
* 2-按入职日期起12个月
|
|||
|
|
* 3-自定义次年失效日期
|
|||
|
|
* 4-按天数失效
|
|||
|
|
* 5-按季度失效
|
|||
|
|
* 6-按月数失效
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "validityRule")
|
|||
|
|
protected static int validityRule;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 失效日期-月
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "expirationMonth")
|
|||
|
|
protected static int expirationMonth;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 失效日期-日
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "expirationDay")
|
|||
|
|
protected static int expirationDay;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 有效天数
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "effectiveDays")
|
|||
|
|
protected static int effectiveDays;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 有效月数
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "effectiveMonths")
|
|||
|
|
protected static int effectiveMonths;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 是否允许延长有效期
|
|||
|
|
* 0-不允许
|
|||
|
|
* 1-允许
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "extensionEnable")
|
|||
|
|
protected static int extensionEnable;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 允许延长的有效期天数
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "extendedDays")
|
|||
|
|
protected static int extendedDays;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 释放规则
|
|||
|
|
* 0-不限制
|
|||
|
|
* 1-按天释放
|
|||
|
|
* 2-按月释放
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "releaseRule")
|
|||
|
|
protected static int releaseRule;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 假期类型
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "leaveCode")
|
|||
|
|
protected static int leaveCode;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 是否需要排除次账号
|
|||
|
|
* 0--不排除,即次账号正常享受年假
|
|||
|
|
* 1--排除,即次账号不能享受年假
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "excludeSubAccount")
|
|||
|
|
protected static int excludeSubAccount;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 转正之前是否允许发放假期余额
|
|||
|
|
* 0--不允许
|
|||
|
|
* 1--允许
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "beforeFormal")
|
|||
|
|
protected static int beforeFormal;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 多孩叠加开关
|
|||
|
|
* 0--不
|
|||
|
|
* 1--开
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "severalChildren")
|
|||
|
|
protected static int severalChildren;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 孩子多少周岁前发放。
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "yearsOld")
|
|||
|
|
protected static int yearsOld;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
*是否按照省份发放育儿假。1否,2是
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "isprovince")
|
|||
|
|
protected static int isprovince;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
*是否按照省份发放育儿假。1否,2是
|
|||
|
|
*/
|
|||
|
|
@CacheColumn(name = "carryOver")
|
|||
|
|
protected static int carryOver;
|
|||
|
|
|
|||
|
|
private static final String[] SCOPE_TYPES = {"3", "2", "1"};
|
|||
|
|
@Override
|
|||
|
|
public CacheMap initCache() throws Exception {
|
|||
|
|
CacheMap localData = super.createCacheMap();
|
|||
|
|
RecordSet rs = new RecordSet();
|
|||
|
|
String sql = "select * from kq_leaveRulesDetail where (isDelete is null or isDelete<>1) order by id";
|
|||
|
|
rs.executeQuery(sql);
|
|||
|
|
while (rs.next()) {
|
|||
|
|
String _id = rs.getString("id");
|
|||
|
|
String _ruleId = rs.getString("ruleId");//假期类型的ID
|
|||
|
|
String _ruleName = rs.getString("ruleName");//假期类型的ID
|
|||
|
|
String _scopeType = rs.getString("scopeType");//假期类型的流程可见范围
|
|||
|
|
String _scopeValue = rs.getString("scopeValue");//流程可见范围为分部时勾选的分部ID
|
|||
|
|
String _distributionMode = rs.getString("distributionMode");
|
|||
|
|
String _annualAmount = rs.getString("annualAmount");
|
|||
|
|
String _legalKey = rs.getString("legalKey");
|
|||
|
|
String _welfareKey = rs.getString("welfareKey");
|
|||
|
|
String _priority = rs.getString("priority");
|
|||
|
|
String _calcMethod = rs.getString("calcMethod");
|
|||
|
|
String _baseAmountReleaseDate = rs.getString("baseAmountReleaseDate");
|
|||
|
|
String _baseAmountChangeDate = rs.getString("baseAmountChangeDate");
|
|||
|
|
String _convertMode = rs.getString("convertMode");
|
|||
|
|
String _decimalDigit = rs.getString("decimalDigit");
|
|||
|
|
String _validityRule = rs.getString("validityRule");
|
|||
|
|
String _expirationMonth = rs.getString("expirationMonth");
|
|||
|
|
String _expirationDay = rs.getString("expirationDay");
|
|||
|
|
String _effectiveDays = rs.getString("effectiveDays");
|
|||
|
|
String _effectiveMonths = rs.getString("effectiveMonths");
|
|||
|
|
String _extensionEnable = rs.getString("extensionEnable");
|
|||
|
|
String _extendedDays = rs.getString("extendedDays");
|
|||
|
|
String _releaseRule = rs.getString("releaseRule");
|
|||
|
|
String _leaveCode = rs.getString("leaveCode");
|
|||
|
|
String _excludeSubAccount = rs.getString("excludeSubAccount");
|
|||
|
|
String _beforeFormal = rs.getString("beforeFormal");
|
|||
|
|
String _severalChildren = rs.getString("severalChildren");
|
|||
|
|
String _yearsOld = rs.getString("yearsOld");
|
|||
|
|
String _isprovince = rs.getString("isprovince");
|
|||
|
|
String _carryOver = rs.getString("carryOver");
|
|||
|
|
if (_scopeType.equals("1") || _scopeType.equals("2") || _scopeType.equals("3")) {
|
|||
|
|
String[] scopeValueArr = _scopeValue.split(",");
|
|||
|
|
for (int i = 0; i < scopeValueArr.length; i++) {
|
|||
|
|
String PK = _ruleId + "|" + _scopeType + "|" + scopeValueArr[i];
|
|||
|
|
|
|||
|
|
|
|||
|
|
CacheItem row = createCacheItem();
|
|||
|
|
row.set(PK_INDEX, PK);
|
|||
|
|
row.set(id, _id);
|
|||
|
|
row.set(ruleId, _ruleId);
|
|||
|
|
row.set(ruleName, _ruleName);
|
|||
|
|
row.set(scopeType, _scopeType);
|
|||
|
|
row.set(scopeValue, _scopeValue);
|
|||
|
|
row.set(distributionMode, _distributionMode);
|
|||
|
|
row.set(annualAmount, _annualAmount);
|
|||
|
|
row.set(legalKey, _legalKey);
|
|||
|
|
row.set(welfareKey, _welfareKey);
|
|||
|
|
row.set(priority, _priority);
|
|||
|
|
row.set(calcMethod, _calcMethod);
|
|||
|
|
row.set(baseAmountReleaseDate, _baseAmountReleaseDate);
|
|||
|
|
row.set(baseAmountChangeDate, _baseAmountChangeDate);
|
|||
|
|
row.set(convertMode, _convertMode);
|
|||
|
|
row.set(decimalDigit, _decimalDigit);
|
|||
|
|
row.set(validityRule, _validityRule);
|
|||
|
|
row.set(expirationMonth, _expirationMonth);
|
|||
|
|
row.set(expirationDay, _expirationDay);
|
|||
|
|
row.set(effectiveDays, _effectiveDays);
|
|||
|
|
row.set(effectiveMonths, _effectiveMonths);
|
|||
|
|
row.set(extensionEnable, _extensionEnable);
|
|||
|
|
row.set(extendedDays, _extendedDays);
|
|||
|
|
row.set(releaseRule, _releaseRule);
|
|||
|
|
row.set(leaveCode, _leaveCode);
|
|||
|
|
row.set(excludeSubAccount, _excludeSubAccount);
|
|||
|
|
row.set(beforeFormal, _beforeFormal);
|
|||
|
|
row.set(severalChildren, _severalChildren);
|
|||
|
|
row.set(yearsOld, _yearsOld);
|
|||
|
|
row.set(isprovince, _isprovince);
|
|||
|
|
row.set(carryOver, _carryOver);
|
|||
|
|
modifyCacheItem(PK, row);
|
|||
|
|
localData.put(PK, row);
|
|||
|
|
}
|
|||
|
|
} else {
|
|||
|
|
String PK = ruleId + "|" + scopeType;
|
|||
|
|
|
|||
|
|
CacheItem row = createCacheItem();
|
|||
|
|
row.set(PK_INDEX, PK);
|
|||
|
|
row.set(id, _id);
|
|||
|
|
row.set(ruleId, _ruleId);
|
|||
|
|
row.set(ruleName, _ruleName);
|
|||
|
|
row.set(scopeType, _scopeType);
|
|||
|
|
row.set(scopeValue, _scopeValue);
|
|||
|
|
row.set(distributionMode, _distributionMode);
|
|||
|
|
row.set(annualAmount, _annualAmount);
|
|||
|
|
row.set(legalKey, _legalKey);
|
|||
|
|
row.set(welfareKey, _welfareKey);
|
|||
|
|
row.set(priority, _priority);
|
|||
|
|
row.set(calcMethod, _calcMethod);
|
|||
|
|
row.set(baseAmountReleaseDate, _baseAmountReleaseDate);
|
|||
|
|
row.set(baseAmountChangeDate, _baseAmountChangeDate);
|
|||
|
|
row.set(convertMode, _convertMode);
|
|||
|
|
row.set(decimalDigit, _decimalDigit);
|
|||
|
|
row.set(validityRule, _validityRule);
|
|||
|
|
row.set(expirationMonth, _expirationMonth);
|
|||
|
|
row.set(expirationDay, _expirationDay);
|
|||
|
|
row.set(effectiveDays, _effectiveDays);
|
|||
|
|
row.set(effectiveMonths, _effectiveMonths);
|
|||
|
|
row.set(extensionEnable, _extensionEnable);
|
|||
|
|
row.set(extendedDays, _extendedDays);
|
|||
|
|
row.set(releaseRule, _releaseRule);
|
|||
|
|
row.set(leaveCode, _leaveCode);
|
|||
|
|
row.set(excludeSubAccount, _excludeSubAccount);
|
|||
|
|
row.set(beforeFormal, _beforeFormal);
|
|||
|
|
row.set(severalChildren, _severalChildren);
|
|||
|
|
row.set(yearsOld, _yearsOld);
|
|||
|
|
row.set(isprovince, _isprovince);
|
|||
|
|
row.set(carryOver, _carryOver);
|
|||
|
|
modifyCacheItem(PK, row);
|
|||
|
|
localData.put(PK, row);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
return localData;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
@Override
|
|||
|
|
public CacheItem initCache(String key) {
|
|||
|
|
if (key == null || "".equals(key.trim())) {
|
|||
|
|
return null;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
String ruleIdTemp = "";//假期类型的ID
|
|||
|
|
String scopeTypeTemp = "";//假期类型的流程可见范围
|
|||
|
|
String scopeValueTemp = "";//流程可见范围为分部时勾选的分部ID
|
|||
|
|
String PK = "";
|
|||
|
|
|
|||
|
|
String[] keyArr = key.split("\\|");
|
|||
|
|
String sql = "";
|
|||
|
|
RecordSet rs = new RecordSet();
|
|||
|
|
if (keyArr.length == 2) {
|
|||
|
|
ruleIdTemp = keyArr[0];
|
|||
|
|
scopeTypeTemp = keyArr[1];
|
|||
|
|
PK = ruleIdTemp + "|0";
|
|||
|
|
|
|||
|
|
sql = "select * from kq_leaveRulesDetail where (isDelete is null or isDelete<>1) and ruleId=" + ruleIdTemp + " and scopeType=" + scopeTypeTemp + " order by id";
|
|||
|
|
}
|
|||
|
|
if (keyArr.length == 3) {
|
|||
|
|
ruleIdTemp = keyArr[0];
|
|||
|
|
scopeTypeTemp = keyArr[1];
|
|||
|
|
scopeValueTemp = keyArr[2];
|
|||
|
|
PK = ruleIdTemp + "|1|" + scopeValueTemp;
|
|||
|
|
|
|||
|
|
sql = "select * from kq_leaveRulesDetail where (isDelete is null or isDelete<>1) and ruleId=" + ruleIdTemp + " and scopeType=" + scopeTypeTemp;
|
|||
|
|
if (rs.getDBType().equalsIgnoreCase("sqlserver")) {
|
|||
|
|
sql += " and ','+scopeValue+',' like '%," + scopeValueTemp + ",%'";
|
|||
|
|
} else if (rs.getDBType().equalsIgnoreCase("mysql")) {
|
|||
|
|
sql += " and concat(',',scopeValue,',') like '%," + scopeValueTemp + ",%'";
|
|||
|
|
} else {
|
|||
|
|
sql += " and ','||scopeValue||',' like '%," + scopeValueTemp + ",%'";
|
|||
|
|
}
|
|||
|
|
sql += " order by id ";
|
|||
|
|
}
|
|||
|
|
rs.executeQuery(sql);
|
|||
|
|
if (rs.next()) {
|
|||
|
|
String _id = rs.getString("id");
|
|||
|
|
String _ruleId = rs.getString("ruleId");//假期类型的ID
|
|||
|
|
String _ruleName = rs.getString("ruleName");//假期类型的ID
|
|||
|
|
String _scopeType = rs.getString("scopeType");//假期类型的流程可见范围
|
|||
|
|
String _scopeValue = rs.getString("scopeValue");//流程可见范围为分部时勾选的分部ID
|
|||
|
|
String _distributionMode = rs.getString("distributionMode");
|
|||
|
|
String _annualAmount = rs.getString("annualAmount");
|
|||
|
|
String _legalKey = rs.getString("legalKey");
|
|||
|
|
String _welfareKey = rs.getString("welfareKey");
|
|||
|
|
String _priority = rs.getString("priority");
|
|||
|
|
String _calcMethod = rs.getString("calcMethod");
|
|||
|
|
String _baseAmountReleaseDate = rs.getString("baseAmountReleaseDate");
|
|||
|
|
String _baseAmountChangeDate = rs.getString("baseAmountChangeDate");
|
|||
|
|
String _convertMode = rs.getString("convertMode");
|
|||
|
|
String _decimalDigit = rs.getString("decimalDigit");
|
|||
|
|
String _validityRule = rs.getString("validityRule");
|
|||
|
|
String _expirationMonth = rs.getString("expirationMonth");
|
|||
|
|
String _expirationDay = rs.getString("expirationDay");
|
|||
|
|
String _effectiveDays = rs.getString("effectiveDays");
|
|||
|
|
String _effectiveMonths = rs.getString("effectiveMonths");
|
|||
|
|
String _extensionEnable = rs.getString("extensionEnable");
|
|||
|
|
String _extendedDays = rs.getString("extendedDays");
|
|||
|
|
String _releaseRule = rs.getString("releaseRule");
|
|||
|
|
String _leaveCode = rs.getString("leaveCode");
|
|||
|
|
String _excludeSubAccount = rs.getString("excludeSubAccount");
|
|||
|
|
String _beforeFormal = rs.getString("beforeFormal");
|
|||
|
|
String _severalChildren = rs.getString("severalChildren");
|
|||
|
|
String _yearsOld = rs.getString("yearsOld");
|
|||
|
|
String _isprovince = rs.getString("isprovince");
|
|||
|
|
String _carryOver = rs.getString("carryOver");
|
|||
|
|
|
|||
|
|
CacheItem row = createCacheItem();
|
|||
|
|
row.set(PK_INDEX, PK);
|
|||
|
|
row.set(id, _id);
|
|||
|
|
row.set(ruleId, _ruleId);
|
|||
|
|
row.set(ruleName, _ruleName);
|
|||
|
|
row.set(scopeType, _scopeType);
|
|||
|
|
row.set(scopeValue, _scopeValue);
|
|||
|
|
row.set(distributionMode, _distributionMode);
|
|||
|
|
row.set(annualAmount, _annualAmount);
|
|||
|
|
row.set(legalKey, _legalKey);
|
|||
|
|
row.set(welfareKey, _welfareKey);
|
|||
|
|
row.set(priority, _priority);
|
|||
|
|
row.set(calcMethod, _calcMethod);
|
|||
|
|
row.set(baseAmountReleaseDate, _baseAmountReleaseDate);
|
|||
|
|
row.set(baseAmountChangeDate, _baseAmountChangeDate);
|
|||
|
|
row.set(convertMode, _convertMode);
|
|||
|
|
row.set(decimalDigit, _decimalDigit);
|
|||
|
|
row.set(validityRule, _validityRule);
|
|||
|
|
row.set(expirationMonth, _expirationMonth);
|
|||
|
|
row.set(expirationDay, _expirationDay);
|
|||
|
|
row.set(effectiveDays, _effectiveDays);
|
|||
|
|
row.set(effectiveMonths, _effectiveMonths);
|
|||
|
|
row.set(extensionEnable, _extensionEnable);
|
|||
|
|
row.set(extendedDays, _extendedDays);
|
|||
|
|
row.set(releaseRule, _releaseRule);
|
|||
|
|
row.set(leaveCode, _leaveCode);
|
|||
|
|
row.set(excludeSubAccount, _excludeSubAccount);
|
|||
|
|
row.set(beforeFormal, _beforeFormal);
|
|||
|
|
row.set(severalChildren, _severalChildren);
|
|||
|
|
row.set(yearsOld, _yearsOld);
|
|||
|
|
row.set(isprovince, _isprovince);
|
|||
|
|
row.set(carryOver, _carryOver);
|
|||
|
|
modifyCacheItem(key, row);
|
|||
|
|
return row;
|
|||
|
|
} else {
|
|||
|
|
CacheItem row = createCacheItem();
|
|||
|
|
modifyCacheItem(key, row);
|
|||
|
|
return row;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
private String getId(String key) {
|
|||
|
|
return (String) getValue(id, key);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// public String getId(String ruleId, String subcompanyId) {
|
|||
|
|
// String PK = ruleId + "|1|" + subcompanyId;
|
|||
|
|
// String id = getId(PK);
|
|||
|
|
// if (id == null || id == "") {
|
|||
|
|
// PK = ruleId + "|0";
|
|||
|
|
// id = getId(PK);
|
|||
|
|
// }
|
|||
|
|
// return id;
|
|||
|
|
// }
|
|||
|
|
|
|||
|
|
private String getRuleId(String key) {
|
|||
|
|
return (String) getValue(ruleId, key);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
private String getRuleName(String key) {
|
|||
|
|
return (String) getValue(ruleName, key);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// public String getRuleName(String ruleId, String subcompanyId) {
|
|||
|
|
// String PK = ruleId + "|1|" + subcompanyId;
|
|||
|
|
// String ruleName = getRuleName(PK);
|
|||
|
|
// if (ruleName == null || ruleName == "") {
|
|||
|
|
// PK = ruleId + "|0";
|
|||
|
|
// ruleName = getRuleName(PK);
|
|||
|
|
// }
|
|||
|
|
// return ruleName;
|
|||
|
|
// }
|
|||
|
|
|
|||
|
|
private String getScopeType(String key) {
|
|||
|
|
return (String) getValue(scopeType, key);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// public String getScopeType(String ruleId, String subcompanyId) {
|
|||
|
|
// String PK = ruleId + "|1|" + subcompanyId;
|
|||
|
|
// String scopeType = getScopeType(PK);
|
|||
|
|
// if (scopeType == null || scopeType == "") {
|
|||
|
|
// PK = ruleId + "|0";
|
|||
|
|
// scopeType = getScopeType(PK);
|
|||
|
|
// }
|
|||
|
|
// return scopeType;
|
|||
|
|
// }
|
|||
|
|
|
|||
|
|
private String getScopeValue(String key) {
|
|||
|
|
return (String) getValue(scopeValue, key);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// public String getScopeValue(String ruleId, String subcompanyId) {
|
|||
|
|
// String PK = ruleId + "|1|" + subcompanyId;
|
|||
|
|
// String scopeValue = getScopeValue(PK);
|
|||
|
|
// if (scopeValue == null || scopeValue == "") {
|
|||
|
|
// PK = ruleId + "|0";
|
|||
|
|
// scopeValue = getScopeValue(PK);
|
|||
|
|
// }
|
|||
|
|
// return scopeValue;
|
|||
|
|
// }
|
|||
|
|
|
|||
|
|
private String getDistributionMode(String key) {
|
|||
|
|
return (String) getValue(distributionMode, key);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// public String getDistributionMode(String ruleId, String subcompanyId) {
|
|||
|
|
// String PK = ruleId + "|1|" + subcompanyId;
|
|||
|
|
// String distributionMode = getDistributionMode(PK);
|
|||
|
|
// if (distributionMode == null || distributionMode == "") {
|
|||
|
|
// PK = ruleId + "|0";
|
|||
|
|
// distributionMode = getDistributionMode(PK);
|
|||
|
|
// }
|
|||
|
|
// return distributionMode;
|
|||
|
|
// }
|
|||
|
|
|
|||
|
|
private String getAnnualAmount(String key) {
|
|||
|
|
return (String) getValue(annualAmount, key);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// public String getAnnualAmount(String ruleId, String subcompanyId) {
|
|||
|
|
// String PK = ruleId + "|1|" + subcompanyId;
|
|||
|
|
// String annualAmount = getAnnualAmount(PK);
|
|||
|
|
// if (annualAmount == null || annualAmount == "") {
|
|||
|
|
// PK = ruleId + "|0";
|
|||
|
|
// annualAmount = getAnnualAmount(PK);
|
|||
|
|
// }
|
|||
|
|
// return annualAmount;
|
|||
|
|
// }
|
|||
|
|
|
|||
|
|
private String getLegalKey(String key) {
|
|||
|
|
return (String) getValue(legalKey, key);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// public String getLegalKey(String ruleId, String subcompanyId) {
|
|||
|
|
// String PK = ruleId + "|1|" + subcompanyId;
|
|||
|
|
// String legalKey = getLegalKey(PK);
|
|||
|
|
// if (legalKey == null || legalKey == "") {
|
|||
|
|
// PK = ruleId + "|0";
|
|||
|
|
// legalKey = getLegalKey(PK);
|
|||
|
|
// }
|
|||
|
|
// return legalKey;
|
|||
|
|
// }
|
|||
|
|
|
|||
|
|
private String getWelfareKey(String key) {
|
|||
|
|
return (String) getValue(welfareKey, key);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// public String getWelfareKey(String ruleId, String subcompanyId) {
|
|||
|
|
// String PK = ruleId + "|1|" + subcompanyId;
|
|||
|
|
// String welfareKey = getWelfareKey(PK);
|
|||
|
|
// if (welfareKey == null || welfareKey == "") {
|
|||
|
|
// PK = ruleId + "|0";
|
|||
|
|
// welfareKey = getWelfareKey(PK);
|
|||
|
|
// }
|
|||
|
|
// return welfareKey;
|
|||
|
|
// }
|
|||
|
|
|
|||
|
|
private String getPriority(String key) {
|
|||
|
|
return (String) getValue(priority, key);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// public String getPriority(String ruleId, String subcompanyId) {
|
|||
|
|
// String PK = ruleId + "|1|" + subcompanyId;
|
|||
|
|
// String priority = getPriority(PK);
|
|||
|
|
// if (priority == null || priority == "") {
|
|||
|
|
// PK = ruleId + "|0";
|
|||
|
|
// priority = getPriority(PK);
|
|||
|
|
// }
|
|||
|
|
// return priority;
|
|||
|
|
// }
|
|||
|
|
|
|||
|
|
private String getValidityRule(String key) {
|
|||
|
|
return (String) getValue(validityRule, key);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// public String getValidityRule(String ruleId, String subcompanyId) {
|
|||
|
|
// String PK = ruleId + "|1|" + subcompanyId;
|
|||
|
|
// String validityRule = getValidityRule(PK);
|
|||
|
|
// if (validityRule == null || validityRule == "") {
|
|||
|
|
// PK = ruleId + "|0";
|
|||
|
|
// validityRule = getValidityRule(PK);
|
|||
|
|
// }
|
|||
|
|
// return validityRule;
|
|||
|
|
// }
|
|||
|
|
|
|||
|
|
private String getExpirationMonth(String key) {
|
|||
|
|
return (String) getValue(expirationMonth, key);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// public String getExpirationMonth(String ruleId, String subcompanyId) {
|
|||
|
|
// String PK = ruleId + "|1|" + subcompanyId;
|
|||
|
|
// String expirationMonth = getExpirationMonth(PK);
|
|||
|
|
// if (expirationMonth == null || expirationMonth == "") {
|
|||
|
|
// PK = ruleId + "|0";
|
|||
|
|
// expirationMonth = getExpirationMonth(PK);
|
|||
|
|
// }
|
|||
|
|
// if (expirationMonth.length() == 1) {
|
|||
|
|
// expirationMonth = "0" + expirationMonth;
|
|||
|
|
// }
|
|||
|
|
// return expirationMonth;
|
|||
|
|
// }
|
|||
|
|
|
|||
|
|
private String getExpirationDay(String key) {
|
|||
|
|
return (String) getValue(expirationDay, key);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// public String getExpirationDay(String ruleId, String subcompanyId) {
|
|||
|
|
// String PK = ruleId + "|1|" + subcompanyId;
|
|||
|
|
// String expirationDay = getExpirationDay(PK);
|
|||
|
|
// if (expirationDay == null || expirationDay == "") {
|
|||
|
|
// PK = ruleId + "|0";
|
|||
|
|
// expirationDay = getExpirationDay(PK);
|
|||
|
|
// }
|
|||
|
|
// if (expirationDay.length() == 1) {
|
|||
|
|
// expirationDay = "0" + expirationDay;
|
|||
|
|
// }
|
|||
|
|
// return expirationDay;
|
|||
|
|
// }
|
|||
|
|
|
|||
|
|
private String getEffectiveDays(String key) {
|
|||
|
|
return (String) getValue(effectiveDays, key);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// public String getEffectiveDays(String ruleId, String subcompanyId) {
|
|||
|
|
// String PK = ruleId + "|1|" + subcompanyId;
|
|||
|
|
// String effectiveDays = getEffectiveDays(PK);
|
|||
|
|
// if (effectiveDays == null || effectiveDays == "") {
|
|||
|
|
// PK = ruleId + "|0";
|
|||
|
|
// effectiveDays = getEffectiveDays(PK);
|
|||
|
|
// }
|
|||
|
|
// if (Util.getIntValue(effectiveDays, 0) < 1) {
|
|||
|
|
// effectiveDays = "1";
|
|||
|
|
// }
|
|||
|
|
// return effectiveDays;
|
|||
|
|
// }
|
|||
|
|
|
|||
|
|
private String getEffectiveMonths(String key) {
|
|||
|
|
return (String) getValue(effectiveMonths, key);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// public String getEffectiveMonths(String ruleId, String subcompanyId) {
|
|||
|
|
// String PK = ruleId + "|1|" + subcompanyId;
|
|||
|
|
// String effectiveMonths = getEffectiveMonths(PK);
|
|||
|
|
// if (effectiveMonths == null || effectiveMonths == "") {
|
|||
|
|
// PK = ruleId + "|0";
|
|||
|
|
// effectiveMonths = getEffectiveMonths(PK);
|
|||
|
|
// }
|
|||
|
|
// if (Util.getIntValue(effectiveMonths, 0) < 1) {
|
|||
|
|
// effectiveMonths = "1";
|
|||
|
|
// }
|
|||
|
|
// return effectiveMonths;
|
|||
|
|
// }
|
|||
|
|
|
|||
|
|
private String getExtensionEnable(String key) {
|
|||
|
|
return (String) getValue(extensionEnable, key);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// public String getExtensionEnable(String ruleId, String subcompanyId) {
|
|||
|
|
// String PK = ruleId + "|1|" + subcompanyId;
|
|||
|
|
// String extensionEnable = getExtensionEnable(PK);
|
|||
|
|
// if (extensionEnable == null || extensionEnable == "") {
|
|||
|
|
// PK = ruleId + "|0";
|
|||
|
|
// extensionEnable = getExtensionEnable(PK);
|
|||
|
|
// }
|
|||
|
|
// return extensionEnable;
|
|||
|
|
// }
|
|||
|
|
|
|||
|
|
private String getExtendedDays(String key) {
|
|||
|
|
return (String) getValue(extendedDays, key);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// public String getExtendedDays(String ruleId, String subcompanyId) {
|
|||
|
|
// String PK = ruleId + "|1|" + subcompanyId;
|
|||
|
|
// String extendedDays = getExtendedDays(PK);
|
|||
|
|
// if (extendedDays == null || extendedDays == "") {
|
|||
|
|
// PK = ruleId + "|0";
|
|||
|
|
// extendedDays = getExtendedDays(PK);
|
|||
|
|
// }
|
|||
|
|
// return extendedDays;
|
|||
|
|
// }
|
|||
|
|
|
|||
|
|
private String getReleaseRule(String key) {
|
|||
|
|
return (String) getValue(releaseRule, key);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// public String getReleaseRule(String ruleId, String subcompanyId) {
|
|||
|
|
// String PK = ruleId + "|1|" + subcompanyId;
|
|||
|
|
// String releaseRule = getReleaseRule(PK);
|
|||
|
|
// if (releaseRule == null || releaseRule == "") {
|
|||
|
|
// PK = ruleId + "|0";
|
|||
|
|
// releaseRule = getReleaseRule(PK);
|
|||
|
|
// }
|
|||
|
|
// return releaseRule;
|
|||
|
|
// }
|
|||
|
|
|
|||
|
|
private String getLeaveCode(String key) {
|
|||
|
|
return (String) getValue(leaveCode, key);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// public String getLeaveCode(String ruleId, String subcompanyId) {
|
|||
|
|
// String PK = ruleId + "|1|" + subcompanyId;
|
|||
|
|
// String leaveCode = getLeaveCode(PK);
|
|||
|
|
// if (leaveCode == null || leaveCode == "") {
|
|||
|
|
// PK = ruleId + "|0";
|
|||
|
|
// leaveCode = getLeaveCode(PK);
|
|||
|
|
// }
|
|||
|
|
// return leaveCode;
|
|||
|
|
// }
|
|||
|
|
|
|||
|
|
private String getCalcMethod(String key) {
|
|||
|
|
return (String) getValue(calcMethod, key);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// public String getCalcMethod(String ruleId, String subcompanyId) {
|
|||
|
|
// String PK = ruleId + "|1|" + subcompanyId;
|
|||
|
|
// String calcMethod = getCalcMethod(PK);
|
|||
|
|
// if (calcMethod == null || calcMethod == "") {
|
|||
|
|
// PK = ruleId + "|0";
|
|||
|
|
// calcMethod = getCalcMethod(PK);
|
|||
|
|
// }
|
|||
|
|
// return calcMethod;
|
|||
|
|
// }
|
|||
|
|
|
|||
|
|
private String getBaseAmountReleaseDate(String key) {
|
|||
|
|
return (String) getValue(baseAmountReleaseDate, key);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// public String getBaseAmountReleaseDate(String ruleId, String subcompanyId){
|
|||
|
|
// String PK = ruleId + "|1|" + subcompanyId;
|
|||
|
|
// String baseAmountReleaseDate = getBaseAmountReleaseDate(PK);
|
|||
|
|
// if (baseAmountReleaseDate == null || baseAmountReleaseDate == "") {
|
|||
|
|
// PK = ruleId + "|0";
|
|||
|
|
// baseAmountReleaseDate = getBaseAmountReleaseDate(PK);
|
|||
|
|
// }
|
|||
|
|
// return baseAmountReleaseDate;
|
|||
|
|
// }
|
|||
|
|
|
|||
|
|
private String getBaseAmountChangeDate(String key) {
|
|||
|
|
return (String) getValue(baseAmountChangeDate, key);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// public String getBaseAmountChangeDate(String ruleId, String subcompanyId){
|
|||
|
|
// String PK = ruleId + "|1|" + subcompanyId;
|
|||
|
|
// String baseAmountChangeDate = getBaseAmountChangeDate(PK);
|
|||
|
|
// if (baseAmountChangeDate == null || baseAmountChangeDate == "") {
|
|||
|
|
// PK = ruleId + "|0";
|
|||
|
|
// baseAmountChangeDate = getBaseAmountChangeDate(PK);
|
|||
|
|
// }
|
|||
|
|
// return baseAmountChangeDate;
|
|||
|
|
// }
|
|||
|
|
|
|||
|
|
private String getConvertMode(String key) {
|
|||
|
|
return (String) getValue(convertMode, key);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// public String getConvertMode(String ruleId, String subcompanyId){
|
|||
|
|
// String PK = ruleId + "|1|" + subcompanyId;
|
|||
|
|
// String convertMode = getConvertMode(PK);
|
|||
|
|
// if (convertMode == null || convertMode == "") {
|
|||
|
|
// PK = ruleId + "|0";
|
|||
|
|
// convertMode = getConvertMode(PK);
|
|||
|
|
// }
|
|||
|
|
// if (convertMode == null || convertMode.equals("")) {
|
|||
|
|
// convertMode = "1";
|
|||
|
|
// }
|
|||
|
|
// return convertMode;
|
|||
|
|
// }
|
|||
|
|
|
|||
|
|
private String getDecimalDigit(String key) {
|
|||
|
|
return (String) getValue(decimalDigit, key);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// public String getDecimalDigit(String ruleId, String subcompanyId){
|
|||
|
|
// String PK = ruleId + "|1|" + subcompanyId;
|
|||
|
|
// String decimalDigit = getDecimalDigit(PK);
|
|||
|
|
// if (decimalDigit == null || decimalDigit == "") {
|
|||
|
|
// PK = ruleId + "|0";
|
|||
|
|
// decimalDigit = getDecimalDigit(PK);
|
|||
|
|
// }
|
|||
|
|
// if (decimalDigit == null || decimalDigit == "" || Util.getIntValue(decimalDigit, 0) < 2) {
|
|||
|
|
// decimalDigit = "2";
|
|||
|
|
// }
|
|||
|
|
// return decimalDigit;
|
|||
|
|
// }
|
|||
|
|
|
|||
|
|
private String getExcludeSubAccount(String key) {
|
|||
|
|
return (String) getValue(excludeSubAccount, key);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// public String getExcludeSubAccount(String ruleId, String subcompanyId){
|
|||
|
|
// String PK = ruleId + "|1|" + subcompanyId;
|
|||
|
|
// String excludeSubAccount = getExcludeSubAccount(PK);
|
|||
|
|
// if (excludeSubAccount == null || excludeSubAccount == "") {
|
|||
|
|
// PK = ruleId + "|0";
|
|||
|
|
// excludeSubAccount = getExcludeSubAccount(PK);
|
|||
|
|
// }
|
|||
|
|
// return excludeSubAccount;
|
|||
|
|
// }
|
|||
|
|
|
|||
|
|
private String getBeforeFormal(String key) {
|
|||
|
|
return (String) getValue(beforeFormal, key);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// public String getBeforeFormal(String ruleId, String subcompanyId){
|
|||
|
|
// String PK = ruleId + "|1|" + subcompanyId;
|
|||
|
|
// String beforeFormal = getBeforeFormal(PK);
|
|||
|
|
// if (beforeFormal == null || beforeFormal == "") {
|
|||
|
|
// PK = ruleId + "|0";
|
|||
|
|
// beforeFormal = getBeforeFormal(PK);
|
|||
|
|
// }
|
|||
|
|
// return beforeFormal;
|
|||
|
|
// }
|
|||
|
|
private String getSeveralChildren(String key) {
|
|||
|
|
return (String) getValue(severalChildren, key);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// public String getSeveralChildren(String ruleId, String subcompanyId){
|
|||
|
|
// String PK = ruleId + "|1|" + subcompanyId;
|
|||
|
|
// String severalChildren = getSeveralChildren(PK);
|
|||
|
|
// if (severalChildren == null || severalChildren == "") {
|
|||
|
|
// PK = ruleId + "|0";
|
|||
|
|
// severalChildren = getSeveralChildren(PK);
|
|||
|
|
// }
|
|||
|
|
// return severalChildren;
|
|||
|
|
// }
|
|||
|
|
|
|||
|
|
private String getYearsOld(String key) {
|
|||
|
|
return (String) getValue(yearsOld, key);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// public String getYearsOld(String ruleId, String subcompanyId){
|
|||
|
|
// String PK = ruleId + "|1|" + subcompanyId;
|
|||
|
|
// String yearsOld = getYearsOld(PK);
|
|||
|
|
// if (yearsOld == null || yearsOld == "") {
|
|||
|
|
// PK = ruleId + "|0";
|
|||
|
|
// yearsOld = getYearsOld(PK);
|
|||
|
|
// }
|
|||
|
|
// return yearsOld;
|
|||
|
|
// }
|
|||
|
|
private String getIsProvince(String key) {
|
|||
|
|
return (String) getValue(isprovince, key);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
private String getCarryOver(String key) {
|
|||
|
|
return (String) getValue(carryOver, key);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// public String getIsProvince(String ruleId, String subcompanyId){
|
|||
|
|
// String PK = ruleId + "|1|" + subcompanyId;
|
|||
|
|
// String isprovince = getIsProvince(PK);
|
|||
|
|
// if (isprovince == null || isprovince == "") {
|
|||
|
|
// PK = ruleId + "|0";
|
|||
|
|
// isprovince = getIsProvince(PK);
|
|||
|
|
// }
|
|||
|
|
// return isprovince;
|
|||
|
|
// }
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
public String getId(String ruleId, String subcompanyId, String departmentId, String resourceId) {
|
|||
|
|
String value = "";
|
|||
|
|
String[] scopeValue = {resourceId, departmentId, subcompanyId};
|
|||
|
|
for(int i=0; i<SCOPE_TYPES.length; i++) {
|
|||
|
|
String PK = ruleId + "|"+SCOPE_TYPES[i]+"|" + scopeValue[i];
|
|||
|
|
if(StringUtil.isNotNull(value = getId(PK))) break;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(StringUtil.isNull(value)) {
|
|||
|
|
value = getId(ruleId + "|0");
|
|||
|
|
}
|
|||
|
|
return value;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public String getRuleName(String ruleId, String subcompanyId, String departmentId, String resourceId) {
|
|||
|
|
String value = "";
|
|||
|
|
String[] scopeValue = {resourceId, departmentId, subcompanyId};
|
|||
|
|
for(int i=0; i<SCOPE_TYPES.length; i++) {
|
|||
|
|
String PK = ruleId + "|"+SCOPE_TYPES[i]+"|" + scopeValue[i];
|
|||
|
|
if(StringUtil.isNotNull(value = getRuleName(PK))) break;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(StringUtil.isNull(value)) {
|
|||
|
|
value = getRuleName(ruleId + "|0");
|
|||
|
|
}
|
|||
|
|
return value;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public String getScopeType(String ruleId, String subcompanyId, String departmentId, String resourceId) {
|
|||
|
|
String value = "";
|
|||
|
|
String[] scopeValue = {resourceId, departmentId, subcompanyId};
|
|||
|
|
for(int i=0; i<SCOPE_TYPES.length; i++) {
|
|||
|
|
String PK = ruleId + "|"+SCOPE_TYPES[i]+"|" + scopeValue[i];
|
|||
|
|
if(StringUtil.isNotNull(value = getScopeType(PK))) break;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(StringUtil.isNull(value)) {
|
|||
|
|
value = getScopeType(ruleId + "|0");
|
|||
|
|
}
|
|||
|
|
return value;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public String getScopeValue(String ruleId, String subcompanyId, String departmentId, String resourceId) {
|
|||
|
|
String value = "";
|
|||
|
|
String[] scopeValue = {resourceId, departmentId, subcompanyId};
|
|||
|
|
for(int i=0; i<SCOPE_TYPES.length; i++) {
|
|||
|
|
String PK = ruleId + "|"+SCOPE_TYPES[i]+"|" + scopeValue[i];
|
|||
|
|
if(StringUtil.isNotNull(value = getScopeValue(PK))) break;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(StringUtil.isNull(value)) {
|
|||
|
|
value = getScopeValue(ruleId + "|0");
|
|||
|
|
}
|
|||
|
|
return value;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public String getDistributionMode(String ruleId, String subcompanyId, String departmentId, String resourceId) {
|
|||
|
|
String value = "";
|
|||
|
|
String[] scopeValue = {resourceId, departmentId, subcompanyId};
|
|||
|
|
for(int i=0; i<SCOPE_TYPES.length; i++) {
|
|||
|
|
String PK = ruleId + "|"+SCOPE_TYPES[i]+"|" + scopeValue[i];
|
|||
|
|
if(StringUtil.isNotNull(value = getDistributionMode(PK))) break;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(StringUtil.isNull(value)) {
|
|||
|
|
value = getDistributionMode(ruleId + "|0");
|
|||
|
|
}
|
|||
|
|
return value;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public String getAnnualAmount(String ruleId, String subcompanyId, String departmentId, String resourceId) {
|
|||
|
|
String value = "";
|
|||
|
|
String[] scopeValue = {resourceId, departmentId, subcompanyId};
|
|||
|
|
for(int i=0; i<SCOPE_TYPES.length; i++) {
|
|||
|
|
String PK = ruleId + "|"+SCOPE_TYPES[i]+"|" + scopeValue[i];
|
|||
|
|
if(StringUtil.isNotNull(value = getAnnualAmount(PK))) break;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(StringUtil.isNull(value)) {
|
|||
|
|
value = getAnnualAmount(ruleId + "|0");
|
|||
|
|
}
|
|||
|
|
return value;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public String getLegalKey(String ruleId, String subcompanyId, String departmentId, String resourceId) {
|
|||
|
|
String value = "";
|
|||
|
|
String[] scopeValue = {resourceId, departmentId, subcompanyId};
|
|||
|
|
for(int i=0; i<SCOPE_TYPES.length; i++) {
|
|||
|
|
String PK = ruleId + "|"+SCOPE_TYPES[i]+"|" + scopeValue[i];
|
|||
|
|
if(StringUtil.isNotNull(value = getLegalKey(PK))) break;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(StringUtil.isNull(value)) {
|
|||
|
|
value = getLegalKey(ruleId + "|0");
|
|||
|
|
}
|
|||
|
|
return value;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public String getWelfareKey(String ruleId, String subcompanyId, String departmentId, String resourceId) {
|
|||
|
|
String value = "";
|
|||
|
|
String[] scopeValue = {resourceId, departmentId, subcompanyId};
|
|||
|
|
for(int i=0; i<SCOPE_TYPES.length; i++) {
|
|||
|
|
String PK = ruleId + "|"+SCOPE_TYPES[i]+"|" + scopeValue[i];
|
|||
|
|
if(StringUtil.isNotNull(value = getWelfareKey(PK))) break;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(StringUtil.isNull(value)) {
|
|||
|
|
value = getWelfareKey(ruleId + "|0");
|
|||
|
|
}
|
|||
|
|
return value;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public String getPriority(String ruleId, String subcompanyId, String departmentId, String resourceId) {
|
|||
|
|
String value = "";
|
|||
|
|
String[] scopeValue = {resourceId, departmentId, subcompanyId};
|
|||
|
|
for(int i=0; i<SCOPE_TYPES.length; i++) {
|
|||
|
|
String PK = ruleId + "|"+SCOPE_TYPES[i]+"|" + scopeValue[i];
|
|||
|
|
if(StringUtil.isNotNull(value = getPriority(PK))) break;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(StringUtil.isNull(value)) {
|
|||
|
|
value = getPriority(ruleId + "|0");
|
|||
|
|
}
|
|||
|
|
return value;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public String getValidityRule(String ruleId, String subcompanyId, String departmentId, String resourceId) {
|
|||
|
|
String value = "";
|
|||
|
|
String[] scopeValue = {resourceId, departmentId, subcompanyId};
|
|||
|
|
for(int i=0; i<SCOPE_TYPES.length; i++) {
|
|||
|
|
String PK = ruleId + "|"+SCOPE_TYPES[i]+"|" + scopeValue[i];
|
|||
|
|
if(StringUtil.isNotNull(value = getValidityRule(PK))) break;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(StringUtil.isNull(value)) {
|
|||
|
|
value = getValidityRule(ruleId + "|0");
|
|||
|
|
}
|
|||
|
|
return value;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public String getExpirationMonth(String ruleId, String subcompanyId, String departmentId, String resourceId) {
|
|||
|
|
String value = "";
|
|||
|
|
String[] scopeValue = {resourceId, departmentId, subcompanyId};
|
|||
|
|
for(int i=0; i<SCOPE_TYPES.length; i++) {
|
|||
|
|
String PK = ruleId + "|"+SCOPE_TYPES[i]+"|" + scopeValue[i];
|
|||
|
|
if(StringUtil.isNotNull(value = getExpirationMonth(PK))) break;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(StringUtil.isNull(value)) {
|
|||
|
|
value = getExpirationMonth(ruleId + "|0");
|
|||
|
|
}
|
|||
|
|
if (value.length() == 1) {
|
|||
|
|
value = "0" + value;
|
|||
|
|
}
|
|||
|
|
return value;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public String getExpirationDay(String ruleId, String subcompanyId, String departmentId, String resourceId) {
|
|||
|
|
String value = "";
|
|||
|
|
String[] scopeValue = {resourceId, departmentId, subcompanyId};
|
|||
|
|
for(int i=0; i<SCOPE_TYPES.length; i++) {
|
|||
|
|
String PK = ruleId + "|"+SCOPE_TYPES[i]+"|" + scopeValue[i];
|
|||
|
|
if(StringUtil.isNotNull(value = getExpirationDay(PK))) break;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(StringUtil.isNull(value)) {
|
|||
|
|
value = getExpirationDay(ruleId + "|0");
|
|||
|
|
}
|
|||
|
|
if (value.length() == 1) {
|
|||
|
|
value = "0" + value;
|
|||
|
|
}
|
|||
|
|
return value;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public String getEffectiveDays(String ruleId, String subcompanyId, String departmentId, String resourceId) {
|
|||
|
|
String value = "";
|
|||
|
|
String[] scopeValue = {resourceId, departmentId, subcompanyId};
|
|||
|
|
for(int i=0; i<SCOPE_TYPES.length; i++) {
|
|||
|
|
String PK = ruleId + "|"+SCOPE_TYPES[i]+"|" + scopeValue[i];
|
|||
|
|
if(StringUtil.isNotNull(value = getEffectiveDays(PK))) break;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(StringUtil.isNull(value)) {
|
|||
|
|
value = getEffectiveDays(ruleId + "|0");
|
|||
|
|
}
|
|||
|
|
if (Util.getIntValue(value, 0) < 1) {
|
|||
|
|
value = "1";
|
|||
|
|
}
|
|||
|
|
return value;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public String getEffectiveMonths(String ruleId, String subcompanyId, String departmentId, String resourceId) {
|
|||
|
|
String value = "";
|
|||
|
|
String[] scopeValue = {resourceId, departmentId, subcompanyId};
|
|||
|
|
for(int i=0; i<SCOPE_TYPES.length; i++) {
|
|||
|
|
String PK = ruleId + "|"+SCOPE_TYPES[i]+"|" + scopeValue[i];
|
|||
|
|
if(StringUtil.isNotNull(value = getEffectiveMonths(PK))) break;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(StringUtil.isNull(value)) {
|
|||
|
|
value = getEffectiveMonths(ruleId + "|0");
|
|||
|
|
}
|
|||
|
|
if (Util.getIntValue(value, 0) < 1) {
|
|||
|
|
value = "1";
|
|||
|
|
}
|
|||
|
|
return value;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public String getExtensionEnable(String ruleId, String subcompanyId, String departmentId, String resourceId) {
|
|||
|
|
String value = "";
|
|||
|
|
String[] scopeValue = {resourceId, departmentId, subcompanyId};
|
|||
|
|
for(int i=0; i<SCOPE_TYPES.length; i++) {
|
|||
|
|
String PK = ruleId + "|"+SCOPE_TYPES[i]+"|" + scopeValue[i];
|
|||
|
|
if(StringUtil.isNotNull(value = getExtensionEnable(PK))) break;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(StringUtil.isNull(value)) {
|
|||
|
|
value = getExtensionEnable(ruleId + "|0");
|
|||
|
|
}
|
|||
|
|
return value;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public String getExtendedDays(String ruleId, String subcompanyId, String departmentId, String resourceId) {
|
|||
|
|
String value = "";
|
|||
|
|
String[] scopeValue = {resourceId, departmentId, subcompanyId};
|
|||
|
|
for(int i=0; i<SCOPE_TYPES.length; i++) {
|
|||
|
|
String PK = ruleId + "|"+SCOPE_TYPES[i]+"|" + scopeValue[i];
|
|||
|
|
if(StringUtil.isNotNull(value = getExtendedDays(PK))) break;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(StringUtil.isNull(value)) {
|
|||
|
|
value = getExtendedDays(ruleId + "|0");
|
|||
|
|
}
|
|||
|
|
return value;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public String getReleaseRule(String ruleId, String subcompanyId, String departmentId, String resourceId) {
|
|||
|
|
String value = "";
|
|||
|
|
String[] scopeValue = {resourceId, departmentId, subcompanyId};
|
|||
|
|
for(int i=0; i<SCOPE_TYPES.length; i++) {
|
|||
|
|
String PK = ruleId + "|"+SCOPE_TYPES[i]+"|" + scopeValue[i];
|
|||
|
|
if(StringUtil.isNotNull(value = getReleaseRule(PK))) break;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(StringUtil.isNull(value)) {
|
|||
|
|
value = getReleaseRule(ruleId + "|0");
|
|||
|
|
}
|
|||
|
|
return value;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public String getLeaveCode(String ruleId, String subcompanyId, String departmentId, String resourceId) {
|
|||
|
|
String value = "";
|
|||
|
|
String[] scopeValue = {resourceId, departmentId, subcompanyId};
|
|||
|
|
for(int i=0; i<SCOPE_TYPES.length; i++) {
|
|||
|
|
String PK = ruleId + "|"+SCOPE_TYPES[i]+"|" + scopeValue[i];
|
|||
|
|
if(StringUtil.isNotNull(value = getLeaveCode(PK))) break;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(StringUtil.isNull(value)) {
|
|||
|
|
value = getLeaveCode(ruleId + "|0");
|
|||
|
|
}
|
|||
|
|
return value;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public String getCalcMethod(String ruleId, String subcompanyId, String departmentId, String resourceId) {
|
|||
|
|
String value = "";
|
|||
|
|
String[] scopeValue = {resourceId, departmentId, subcompanyId};
|
|||
|
|
for(int i=0; i<SCOPE_TYPES.length; i++) {
|
|||
|
|
String PK = ruleId + "|"+SCOPE_TYPES[i]+"|" + scopeValue[i];
|
|||
|
|
if(StringUtil.isNotNull(value = getCalcMethod(PK))) break;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(StringUtil.isNull(value)) {
|
|||
|
|
value = getCalcMethod(ruleId + "|0");
|
|||
|
|
}
|
|||
|
|
return value;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public String getBaseAmountReleaseDate(String ruleId, String subcompanyId, String departmentId, String resourceId){
|
|||
|
|
String value = "";
|
|||
|
|
String[] scopeValue = {resourceId, departmentId, subcompanyId};
|
|||
|
|
for(int i=0; i<SCOPE_TYPES.length; i++) {
|
|||
|
|
String PK = ruleId + "|"+SCOPE_TYPES[i]+"|" + scopeValue[i];
|
|||
|
|
if(StringUtil.isNotNull(value = getBaseAmountReleaseDate(PK))) break;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(StringUtil.isNull(value)) {
|
|||
|
|
value = getBaseAmountReleaseDate(ruleId + "|0");
|
|||
|
|
}
|
|||
|
|
return value;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public String getBaseAmountChangeDate(String ruleId, String subcompanyId, String departmentId, String resourceId){
|
|||
|
|
String value = "";
|
|||
|
|
String[] scopeValue = {resourceId, departmentId, subcompanyId};
|
|||
|
|
for(int i=0; i<SCOPE_TYPES.length; i++) {
|
|||
|
|
String PK = ruleId + "|"+SCOPE_TYPES[i]+"|" + scopeValue[i];
|
|||
|
|
if(StringUtil.isNotNull(value = getBaseAmountChangeDate(PK))) break;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(StringUtil.isNull(value)) {
|
|||
|
|
value = getBaseAmountChangeDate(ruleId + "|0");
|
|||
|
|
}
|
|||
|
|
return value;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public String getConvertMode(String ruleId, String subcompanyId, String departmentId, String resourceId){
|
|||
|
|
String value = "";
|
|||
|
|
String[] scopeValue = {resourceId, departmentId, subcompanyId};
|
|||
|
|
for(int i=0; i<SCOPE_TYPES.length; i++) {
|
|||
|
|
String PK = ruleId + "|"+SCOPE_TYPES[i]+"|" + scopeValue[i];
|
|||
|
|
if(StringUtil.isNotNull(value = getConvertMode(PK))) break;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(StringUtil.isNull(value)) {
|
|||
|
|
value = getConvertMode(ruleId + "|0");
|
|||
|
|
}
|
|||
|
|
if (value == null || value.equals("")) {
|
|||
|
|
value = "1";
|
|||
|
|
}
|
|||
|
|
return value;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public String getDecimalDigit(String ruleId, String subcompanyId, String departmentId, String resourceId){
|
|||
|
|
String value = "";
|
|||
|
|
String[] scopeValue = {resourceId, departmentId, subcompanyId};
|
|||
|
|
for(int i=0; i<SCOPE_TYPES.length; i++) {
|
|||
|
|
String PK = ruleId + "|"+SCOPE_TYPES[i]+"|" + scopeValue[i];
|
|||
|
|
if(StringUtil.isNotNull(value = getDecimalDigit(PK))) break;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(StringUtil.isNull(value)) {
|
|||
|
|
value = getDecimalDigit(ruleId + "|0");
|
|||
|
|
}
|
|||
|
|
if (value == null || value == "" || Util.getIntValue(value, 0) < 2) {
|
|||
|
|
value = "2";
|
|||
|
|
}
|
|||
|
|
return value;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public String getExcludeSubAccount(String ruleId, String subcompanyId, String departmentId, String resourceId){
|
|||
|
|
String value = "";
|
|||
|
|
String[] scopeValue = {resourceId, departmentId, subcompanyId};
|
|||
|
|
for(int i=0; i<SCOPE_TYPES.length; i++) {
|
|||
|
|
String PK = ruleId + "|"+SCOPE_TYPES[i]+"|" + scopeValue[i];
|
|||
|
|
if(StringUtil.isNotNull(value = getExcludeSubAccount(PK))) break;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(StringUtil.isNull(value)) {
|
|||
|
|
value = getExcludeSubAccount(ruleId + "|0");
|
|||
|
|
}
|
|||
|
|
return value;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public String getBeforeFormal(String ruleId, String subcompanyId, String departmentId, String resourceId){
|
|||
|
|
String value = "";
|
|||
|
|
String[] scopeValue = {resourceId, departmentId, subcompanyId};
|
|||
|
|
for(int i=0; i<SCOPE_TYPES.length; i++) {
|
|||
|
|
String PK = ruleId + "|"+SCOPE_TYPES[i]+"|" + scopeValue[i];
|
|||
|
|
if(StringUtil.isNotNull(value = getBeforeFormal(PK))) break;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(StringUtil.isNull(value)) {
|
|||
|
|
value = getBeforeFormal(ruleId + "|0");
|
|||
|
|
}
|
|||
|
|
return value;
|
|||
|
|
}
|
|||
|
|
public String getSeveralChildren(String ruleId, String subcompanyId, String departmentId, String resourceId){
|
|||
|
|
String value = "";
|
|||
|
|
String[] scopeValue = {resourceId, departmentId, subcompanyId};
|
|||
|
|
for(int i=0; i<SCOPE_TYPES.length; i++) {
|
|||
|
|
String PK = ruleId + "|"+SCOPE_TYPES[i]+"|" + scopeValue[i];
|
|||
|
|
if(StringUtil.isNotNull(value = getSeveralChildren(PK))) break;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(StringUtil.isNull(value)) {
|
|||
|
|
value = getSeveralChildren(ruleId + "|0");
|
|||
|
|
}
|
|||
|
|
return value;
|
|||
|
|
}
|
|||
|
|
public String getYearsOld(String ruleId, String subcompanyId, String departmentId, String resourceId){
|
|||
|
|
String value = "";
|
|||
|
|
String[] scopeValue = {resourceId, departmentId, subcompanyId};
|
|||
|
|
for(int i=0; i<SCOPE_TYPES.length; i++) {
|
|||
|
|
String PK = ruleId + "|"+SCOPE_TYPES[i]+"|" + scopeValue[i];
|
|||
|
|
if(StringUtil.isNotNull(value = getYearsOld(PK))) break;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(StringUtil.isNull(value)) {
|
|||
|
|
value = getYearsOld(ruleId + "|0");
|
|||
|
|
}
|
|||
|
|
return value;
|
|||
|
|
}
|
|||
|
|
public String getIsProvince(String ruleId, String subcompanyId, String departmentId, String resourceId){
|
|||
|
|
String value = "";
|
|||
|
|
String[] scopeValue = {resourceId, departmentId, subcompanyId};
|
|||
|
|
for(int i=0; i<SCOPE_TYPES.length; i++) {
|
|||
|
|
String PK = ruleId + "|"+SCOPE_TYPES[i]+"|" + scopeValue[i];
|
|||
|
|
if(StringUtil.isNotNull(value = getIsProvince(PK))) break;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(StringUtil.isNull(value)) {
|
|||
|
|
value = getIsProvince(ruleId + "|0");
|
|||
|
|
}
|
|||
|
|
return value;
|
|||
|
|
}
|
|||
|
|
public String getCarryOver(String ruleId, String subcompanyId, String departmentId, String resourceId){
|
|||
|
|
String value = "";
|
|||
|
|
String[] scopeValue = {resourceId, departmentId, subcompanyId};
|
|||
|
|
for(int i=0; i<SCOPE_TYPES.length; i++) {
|
|||
|
|
String PK = ruleId + "|"+SCOPE_TYPES[i]+"|" + scopeValue[i];
|
|||
|
|
if(StringUtil.isNotNull(value = getCarryOver(PK))) break;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(StringUtil.isNull(value)) {
|
|||
|
|
value = getCarryOver(ruleId + "|0");
|
|||
|
|
}
|
|||
|
|
return value;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|