Commit 7d59a85e4a97ffddbb92450fdbe5f1f919dae60f
1 parent
eee77f4e
feature(*): redis锁名称修改
redis锁名称修改
Showing
9 changed files
with
64 additions
and
27 deletions
doc/2023_update.sql
1 | -- 2023年3月7日 | 1 | -- 2023年3月7日 |
2 | ALTER TABLE `fw_morax`.`eval_group_reward_ladders` | 2 | ALTER TABLE `fw_morax`.`eval_group_reward_ladders` |
3 | - ADD COLUMN `rank_order_type` tinyint(4) NULL DEFAULT 1 COMMENT '排名顺序类型 1:正 2:负' AFTER `upper`; | ||
4 | \ No newline at end of file | 3 | \ No newline at end of file |
4 | + ADD COLUMN `rank_order_type` tinyint(4) NULL DEFAULT 1 COMMENT '排名顺序类型 1:正 2:负' AFTER `upper`; | ||
5 | + | ||
6 | +CREATE TABLE `eval_group_reward_rank_log` ( | ||
7 | + `id` bigint(20) NOT NULL AUTO_INCREMENT, | ||
8 | + `pool_id` bigint(20) DEFAULT NULL COMMENT '人员id 、门店id', | ||
9 | + `scope_type` tinyint(4) NOT NULL COMMENT '考评范围; 1:门店考评 2:人员考评', | ||
10 | + `refer_id` bigint(20) DEFAULT NULL COMMENT '考评奖惩 前置条件 配置id', | ||
11 | + `target_type` tinyint(4) DEFAULT NULL COMMENT '1:参数 2:前置条件', | ||
12 | + `value` decimal(18,4) DEFAULT NULL COMMENT '原始值', | ||
13 | + `reach_value` decimal(18,4) DEFAULT NULL COMMENT '达成目标', | ||
14 | + `rank` int(10) DEFAULT NULL COMMENT '排名', | ||
15 | + `data_date` date NOT NULL COMMENT '数据日期', | ||
16 | + `group_id` bigint(20) NOT NULL COMMENT '集团', | ||
17 | + `create_time` datetime DEFAULT NULL, | ||
18 | + `update_time` datetime DEFAULT NULL, | ||
19 | + `yn` tinyint(1) DEFAULT '1', | ||
20 | + PRIMARY KEY (`id`) | ||
21 | +) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='考评指标达成目标记录'; | ||
5 | \ No newline at end of file | 22 | \ No newline at end of file |
fw-morax-server/src/main/java/cn/fw/morax/server/task/EvalGroupTask.java
@@ -50,21 +50,14 @@ import java.util.stream.Collectors; | @@ -50,21 +50,14 @@ import java.util.stream.Collectors; | ||
50 | @ConditionalOnProperty(prefix = "task", name = "switch", havingValue = "on") | 50 | @ConditionalOnProperty(prefix = "task", name = "switch", havingValue = "on") |
51 | public class EvalGroupTask { | 51 | public class EvalGroupTask { |
52 | 52 | ||
53 | - private final EvalRewardService evalRewardService; | ||
54 | private final EvalShopPoolService evalShopPoolService; | 53 | private final EvalShopPoolService evalShopPoolService; |
55 | - private final EvalGroupRewardService evalGroupRewardService; | ||
56 | - private final EvalGroupDataService evalGroupDataService; | ||
57 | - private final EvalGroupBizService evalGroupBizService; | ||
58 | private final EvalGroupService evalGroupService; | 54 | private final EvalGroupService evalGroupService; |
59 | private final EvalService evalService; | 55 | private final EvalService evalService; |
60 | private final DistributedLocker distributedLocker; | 56 | private final DistributedLocker distributedLocker; |
61 | - private final StringRedisTemplate stringRedisTemplate; | ||
62 | 57 | ||
63 | - @Value("${spring.cache.custom.global-prefix}:distr:eval-group") | 58 | + @Value("${spring.cache.custom.global-prefix}:eval:group") |
64 | @Getter | 59 | @Getter |
65 | - private String distributionKey; | ||
66 | - private final static String LOCK_KEY = "eval:group"; | ||
67 | - private final static String REWARD_LOCK_KEY = "eval:group:reward"; | 60 | + private String evalGroupDistKey; |
68 | 61 | ||
69 | /** | 62 | /** |
70 | * 每天凌晨3点 | 63 | * 每天凌晨3点 |
@@ -75,7 +68,7 @@ public class EvalGroupTask { | @@ -75,7 +68,7 @@ public class EvalGroupTask { | ||
75 | @Scheduled(cron = TimeTaskConstant.EVAL) | 68 | @Scheduled(cron = TimeTaskConstant.EVAL) |
76 | @Transactional(rollbackFor = Exception.class) | 69 | @Transactional(rollbackFor = Exception.class) |
77 | public void processCurMonthEffectEvals() { | 70 | public void processCurMonthEffectEvals() { |
78 | - Lock lock = distributedLocker.lock(LOCK_KEY); | 71 | + Lock lock = distributedLocker.lock(getEvalGroupDistKey()); |
79 | if (! ((RLock) lock).isLocked()) { | 72 | if (! ((RLock) lock).isLocked()) { |
80 | return; | 73 | return; |
81 | } | 74 | } |
fw-morax-server/src/main/java/cn/fw/morax/server/task/EvalGroupUserTask.java
@@ -11,9 +11,11 @@ import cn.fw.morax.service.data.eval.EvalGroupUserService; | @@ -11,9 +11,11 @@ import cn.fw.morax.service.data.eval.EvalGroupUserService; | ||
11 | import cn.hutool.core.date.StopWatch; | 11 | import cn.hutool.core.date.StopWatch; |
12 | import com.baomidou.mybatisplus.core.toolkit.Wrappers; | 12 | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
13 | import com.google.common.collect.Lists; | 13 | import com.google.common.collect.Lists; |
14 | +import lombok.Getter; | ||
14 | import lombok.RequiredArgsConstructor; | 15 | import lombok.RequiredArgsConstructor; |
15 | import lombok.extern.slf4j.Slf4j; | 16 | import lombok.extern.slf4j.Slf4j; |
16 | import org.redisson.api.RLock; | 17 | import org.redisson.api.RLock; |
18 | +import org.springframework.beans.factory.annotation.Value; | ||
17 | import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; | 19 | import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; |
18 | import org.springframework.scheduling.annotation.Scheduled; | 20 | import org.springframework.scheduling.annotation.Scheduled; |
19 | import org.springframework.stereotype.Component; | 21 | import org.springframework.stereotype.Component; |
@@ -41,10 +43,11 @@ public class EvalGroupUserTask { | @@ -41,10 +43,11 @@ public class EvalGroupUserTask { | ||
41 | 43 | ||
42 | private final EvalGroupUserBizService evalGroupUserBizService; | 44 | private final EvalGroupUserBizService evalGroupUserBizService; |
43 | private final EvalGroupUserService evalGroupUserService; | 45 | private final EvalGroupUserService evalGroupUserService; |
44 | - private final EvalGroupBizService evalGroupBizService; | ||
45 | private final DistributedLocker distributedLocker; | 46 | private final DistributedLocker distributedLocker; |
46 | 47 | ||
47 | - private final static String LOCK_KEY = "eval:group:user"; | 48 | + @Value("${spring.cache.custom.global-prefix}:eval:group:user") |
49 | + @Getter | ||
50 | + private String evalGroupUserDistKey; | ||
48 | 51 | ||
49 | /** | 52 | /** |
50 | * 每天凌晨30分执行(人事角色、岗位调整在5点执行) | 53 | * 每天凌晨30分执行(人事角色、岗位调整在5点执行) |
@@ -55,7 +58,7 @@ public class EvalGroupUserTask { | @@ -55,7 +58,7 @@ public class EvalGroupUserTask { | ||
55 | @Scheduled(cron = TimeTaskConstant.EVAL_GROUP_USER) | 58 | @Scheduled(cron = TimeTaskConstant.EVAL_GROUP_USER) |
56 | @Transactional(rollbackFor = Exception.class) | 59 | @Transactional(rollbackFor = Exception.class) |
57 | public void processEvalUser() { | 60 | public void processEvalUser() { |
58 | - Lock lock = distributedLocker.lock(LOCK_KEY); | 61 | + Lock lock = distributedLocker.lock(getEvalGroupUserDistKey()); |
59 | if (((RLock) lock).isLocked()) { | 62 | if (((RLock) lock).isLocked()) { |
60 | try { | 63 | try { |
61 | log.info("定时任务【考评组人员更新】开始执行"); | 64 | log.info("定时任务【考评组人员更新】开始执行"); |
fw-morax-server/src/main/java/cn/fw/morax/server/task/KpiGroupUserTask.java
@@ -14,9 +14,11 @@ import com.alibaba.fastjson.JSON; | @@ -14,9 +14,11 @@ import com.alibaba.fastjson.JSON; | ||
14 | import com.baomidou.mybatisplus.core.toolkit.Wrappers; | 14 | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
15 | import com.google.common.collect.Lists; | 15 | import com.google.common.collect.Lists; |
16 | import com.google.common.collect.Maps; | 16 | import com.google.common.collect.Maps; |
17 | +import lombok.Getter; | ||
17 | import lombok.RequiredArgsConstructor; | 18 | import lombok.RequiredArgsConstructor; |
18 | import lombok.extern.slf4j.Slf4j; | 19 | import lombok.extern.slf4j.Slf4j; |
19 | import org.redisson.api.RLock; | 20 | import org.redisson.api.RLock; |
21 | +import org.springframework.beans.factory.annotation.Value; | ||
20 | import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; | 22 | import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; |
21 | import org.springframework.scheduling.annotation.Scheduled; | 23 | import org.springframework.scheduling.annotation.Scheduled; |
22 | import org.springframework.stereotype.Component; | 24 | import org.springframework.stereotype.Component; |
@@ -45,8 +47,9 @@ public class KpiGroupUserTask { | @@ -45,8 +47,9 @@ public class KpiGroupUserTask { | ||
45 | private final KpiGroupBizService kpiGroupBizService; | 47 | private final KpiGroupBizService kpiGroupBizService; |
46 | private final DistributedLocker distributedLocker; | 48 | private final DistributedLocker distributedLocker; |
47 | 49 | ||
48 | - private final static String LOCK_KEY = "kpi:group:user"; | ||
49 | - | 50 | + @Value("${spring.cache.custom.global-prefix}:kpi:group:user") |
51 | + @Getter | ||
52 | + private String kpiGroupUserDistKey; | ||
50 | /** | 53 | /** |
51 | * 每天凌晨30分执行(人事角色、岗位调整在5点执行) | 54 | * 每天凌晨30分执行(人事角色、岗位调整在5点执行) |
52 | * 1. 将待生效数据改为生效中 | 55 | * 1. 将待生效数据改为生效中 |
@@ -56,7 +59,7 @@ public class KpiGroupUserTask { | @@ -56,7 +59,7 @@ public class KpiGroupUserTask { | ||
56 | @Scheduled(cron = TimeTaskConstant.KPI_GROUP_USER) | 59 | @Scheduled(cron = TimeTaskConstant.KPI_GROUP_USER) |
57 | @Transactional(rollbackFor = Exception.class) | 60 | @Transactional(rollbackFor = Exception.class) |
58 | public void processKpiUser() { | 61 | public void processKpiUser() { |
59 | - Lock lock = distributedLocker.lock(LOCK_KEY); | 62 | + Lock lock = distributedLocker.lock(getKpiGroupUserDistKey()); |
60 | if (((RLock) lock).isLocked()) { | 63 | if (((RLock) lock).isLocked()) { |
61 | try { | 64 | try { |
62 | log.info("定时任务【绩效组人员更新】开始执行"); | 65 | log.info("定时任务【绩效组人员更新】开始执行"); |
fw-morax-server/src/main/java/cn/fw/morax/server/task/KpiReportRatioTask.java
@@ -19,10 +19,12 @@ import cn.fw.morax.service.data.kpi.KpiPoolService; | @@ -19,10 +19,12 @@ import cn.fw.morax.service.data.kpi.KpiPoolService; | ||
19 | import cn.fw.morax.service.data.kpi.KpiRatioService; | 19 | import cn.fw.morax.service.data.kpi.KpiRatioService; |
20 | import com.baomidou.mybatisplus.core.toolkit.Wrappers; | 20 | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
21 | import com.google.common.collect.Lists; | 21 | import com.google.common.collect.Lists; |
22 | +import lombok.Getter; | ||
22 | import lombok.RequiredArgsConstructor; | 23 | import lombok.RequiredArgsConstructor; |
23 | import lombok.extern.slf4j.Slf4j; | 24 | import lombok.extern.slf4j.Slf4j; |
24 | import org.apache.commons.collections4.map.MultiKeyMap; | 25 | import org.apache.commons.collections4.map.MultiKeyMap; |
25 | import org.redisson.api.RLock; | 26 | import org.redisson.api.RLock; |
27 | +import org.springframework.beans.factory.annotation.Value; | ||
26 | import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; | 28 | import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; |
27 | import org.springframework.scheduling.annotation.Scheduled; | 29 | import org.springframework.scheduling.annotation.Scheduled; |
28 | import org.springframework.stereotype.Component; | 30 | import org.springframework.stereotype.Component; |
@@ -58,7 +60,9 @@ public class KpiReportRatioTask { | @@ -58,7 +60,9 @@ public class KpiReportRatioTask { | ||
58 | private final EhrRpcService ehrRpcService; | 60 | private final EhrRpcService ehrRpcService; |
59 | private final OopRpcService oopRpcService; | 61 | private final OopRpcService oopRpcService; |
60 | 62 | ||
61 | - private final static String LOCK_KEY = "kpi:group:report"; | 63 | + @Value("${spring.cache.custom.global-prefix}:kpi:group:report") |
64 | + @Getter | ||
65 | + private String kpiGroupReportDistKey; | ||
62 | 66 | ||
63 | /** | 67 | /** |
64 | * 绩效报表定时任务 | 68 | * 绩效报表定时任务 |
@@ -77,7 +81,7 @@ public class KpiReportRatioTask { | @@ -77,7 +81,7 @@ public class KpiReportRatioTask { | ||
77 | */ | 81 | */ |
78 | @Transactional(rollbackFor = Exception.class) | 82 | @Transactional(rollbackFor = Exception.class) |
79 | public void kpiReport(LocalDate date) { | 83 | public void kpiReport(LocalDate date) { |
80 | - Lock lock = distributedLocker.lock(LOCK_KEY); | 84 | + Lock lock = distributedLocker.lock(getKpiGroupReportDistKey()); |
81 | if (! ((RLock) lock).isLocked()) { | 85 | if (! ((RLock) lock).isLocked()) { |
82 | return; | 86 | return; |
83 | } | 87 | } |
fw-morax-server/src/main/java/cn/fw/morax/server/task/PayoffTask.java
@@ -6,9 +6,11 @@ import cn.fw.morax.rpc.oop.OopRpcService; | @@ -6,9 +6,11 @@ import cn.fw.morax.rpc.oop.OopRpcService; | ||
6 | import cn.fw.morax.rpc.oop.dto.GroupDTO; | 6 | import cn.fw.morax.rpc.oop.dto.GroupDTO; |
7 | import cn.fw.morax.service.biz.salary.PayoffBizService; | 7 | import cn.fw.morax.service.biz.salary.PayoffBizService; |
8 | import cn.fw.morax.service.biz.salary.SalaryConfirmBizService; | 8 | import cn.fw.morax.service.biz.salary.SalaryConfirmBizService; |
9 | +import lombok.Getter; | ||
9 | import lombok.extern.slf4j.Slf4j; | 10 | import lombok.extern.slf4j.Slf4j; |
10 | import org.redisson.api.RLock; | 11 | import org.redisson.api.RLock; |
11 | import org.springframework.beans.factory.annotation.Autowired; | 12 | import org.springframework.beans.factory.annotation.Autowired; |
13 | +import org.springframework.beans.factory.annotation.Value; | ||
12 | import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; | 14 | import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; |
13 | import org.springframework.scheduling.annotation.Scheduled; | 15 | import org.springframework.scheduling.annotation.Scheduled; |
14 | import org.springframework.stereotype.Component; | 16 | import org.springframework.stereotype.Component; |
@@ -31,11 +33,14 @@ import java.util.concurrent.locks.Lock; | @@ -31,11 +33,14 @@ import java.util.concurrent.locks.Lock; | ||
31 | @ConditionalOnProperty(prefix = "task", name = "switch", havingValue = "on") | 33 | @ConditionalOnProperty(prefix = "task", name = "switch", havingValue = "on") |
32 | public class PayoffTask { | 34 | public class PayoffTask { |
33 | private final PayoffBizService payoffBizService; | 35 | private final PayoffBizService payoffBizService; |
34 | - private final static String LOCK_KEY = ":createSalarySheet"; | ||
35 | private final DistributedLocker distributedLocker; | 36 | private final DistributedLocker distributedLocker; |
36 | private final OopRpcService oopRpcService; | 37 | private final OopRpcService oopRpcService; |
37 | private final SalaryConfirmBizService salaryConfirmBizService; | 38 | private final SalaryConfirmBizService salaryConfirmBizService; |
38 | 39 | ||
40 | + @Value("${spring.cache.custom.global-prefix}:createSalarySheet") | ||
41 | + @Getter | ||
42 | + private String createSalarySheetKey; | ||
43 | + | ||
39 | @Autowired | 44 | @Autowired |
40 | public PayoffTask(final PayoffBizService payoffBizService, | 45 | public PayoffTask(final PayoffBizService payoffBizService, |
41 | final DistributedLocker distributedLocker, | 46 | final DistributedLocker distributedLocker, |
@@ -71,7 +76,7 @@ public class PayoffTask { | @@ -71,7 +76,7 @@ public class PayoffTask { | ||
71 | */ | 76 | */ |
72 | @Scheduled(cron = "0 0 0/2 * * ?") | 77 | @Scheduled(cron = "0 0 0/2 * * ?") |
73 | public void createSalarySheet() { | 78 | public void createSalarySheet() { |
74 | - Lock lock = distributedLocker.lock(LOCK_KEY); | 79 | + Lock lock = distributedLocker.lock(getCreateSalarySheetKey()); |
75 | if (((RLock) lock).isLocked()) { | 80 | if (((RLock) lock).isLocked()) { |
76 | List<GroupDTO> list = oopRpcService.allGroups(); | 81 | List<GroupDTO> list = oopRpcService.allGroups(); |
77 | if (!CollectionUtils.isEmpty(list)) { | 82 | if (!CollectionUtils.isEmpty(list)) { |
fw-morax-server/src/main/java/cn/fw/morax/server/task/SalaryGroupTask.java
@@ -12,9 +12,11 @@ import cn.fw.morax.service.biz.salary.SalaryGroupUserBizService; | @@ -12,9 +12,11 @@ import cn.fw.morax.service.biz.salary.SalaryGroupUserBizService; | ||
12 | import cn.fw.morax.service.data.salary.SalaryGroupService; | 12 | import cn.fw.morax.service.data.salary.SalaryGroupService; |
13 | import cn.hutool.core.date.StopWatch; | 13 | import cn.hutool.core.date.StopWatch; |
14 | import com.baomidou.mybatisplus.core.toolkit.Wrappers; | 14 | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
15 | +import lombok.Getter; | ||
15 | import lombok.RequiredArgsConstructor; | 16 | import lombok.RequiredArgsConstructor; |
16 | import lombok.extern.slf4j.Slf4j; | 17 | import lombok.extern.slf4j.Slf4j; |
17 | import org.redisson.api.RLock; | 18 | import org.redisson.api.RLock; |
19 | +import org.springframework.beans.factory.annotation.Value; | ||
18 | import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; | 20 | import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; |
19 | import org.springframework.scheduling.annotation.Scheduled; | 21 | import org.springframework.scheduling.annotation.Scheduled; |
20 | import org.springframework.stereotype.Component; | 22 | import org.springframework.stereotype.Component; |
@@ -44,7 +46,9 @@ public class SalaryGroupTask { | @@ -44,7 +46,9 @@ public class SalaryGroupTask { | ||
44 | private final SalaryGroupService salaryGroupService; | 46 | private final SalaryGroupService salaryGroupService; |
45 | private final DistributedLocker distributedLocker; | 47 | private final DistributedLocker distributedLocker; |
46 | 48 | ||
47 | - private final static String LOCK_KEY = "salary:group"; | 49 | + @Value("${spring.cache.custom.global-prefix}:salary:group") |
50 | + @Getter | ||
51 | + private String salaryGroupKey; | ||
48 | 52 | ||
49 | /** | 53 | /** |
50 | * 每个月1号凌晨3点执行 | 54 | * 每个月1号凌晨3点执行 |
@@ -55,7 +59,7 @@ public class SalaryGroupTask { | @@ -55,7 +59,7 @@ public class SalaryGroupTask { | ||
55 | @Scheduled(cron = TimeTaskConstant.SALARY_GROUP) | 59 | @Scheduled(cron = TimeTaskConstant.SALARY_GROUP) |
56 | @Transactional(rollbackFor = Exception.class) | 60 | @Transactional(rollbackFor = Exception.class) |
57 | public void processCurMonthEffectSalaryGroup() { | 61 | public void processCurMonthEffectSalaryGroup() { |
58 | - Lock lock = distributedLocker.lock(LOCK_KEY); | 62 | + Lock lock = distributedLocker.lock(getSalaryGroupKey()); |
59 | if (((RLock) lock).isLocked()) { | 63 | if (((RLock) lock).isLocked()) { |
60 | try { | 64 | try { |
61 | log.info("定时任务【每月薪酬组配置状态改变】开始执行"); | 65 | log.info("定时任务【每月薪酬组配置状态改变】开始执行"); |
fw-morax-server/src/main/java/cn/fw/morax/server/task/SalaryPoolFundShopTask.java
@@ -11,9 +11,11 @@ import cn.fw.morax.rpc.ehr.dto.StaffShopInfoDTO; | @@ -11,9 +11,11 @@ import cn.fw.morax.rpc.ehr.dto.StaffShopInfoDTO; | ||
11 | import cn.fw.morax.service.data.salary.SalaryPoolService; | 11 | import cn.fw.morax.service.data.salary.SalaryPoolService; |
12 | import com.google.common.base.Functions; | 12 | import com.google.common.base.Functions; |
13 | import com.google.common.collect.Lists; | 13 | import com.google.common.collect.Lists; |
14 | +import lombok.Getter; | ||
14 | import lombok.RequiredArgsConstructor; | 15 | import lombok.RequiredArgsConstructor; |
15 | import lombok.extern.slf4j.Slf4j; | 16 | import lombok.extern.slf4j.Slf4j; |
16 | import org.redisson.api.RLock; | 17 | import org.redisson.api.RLock; |
18 | +import org.springframework.beans.factory.annotation.Value; | ||
17 | import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; | 19 | import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; |
18 | import org.springframework.scheduling.annotation.Scheduled; | 20 | import org.springframework.scheduling.annotation.Scheduled; |
19 | import org.springframework.stereotype.Component; | 21 | import org.springframework.stereotype.Component; |
@@ -43,7 +45,9 @@ public class SalaryPoolFundShopTask { | @@ -43,7 +45,9 @@ public class SalaryPoolFundShopTask { | ||
43 | private final SalaryPoolService salaryPoolService; | 45 | private final SalaryPoolService salaryPoolService; |
44 | private final EhrRpcService ehrRpcService; | 46 | private final EhrRpcService ehrRpcService; |
45 | 47 | ||
46 | - private final static String LOCK_KEY = "salary:pool:fund"; | 48 | + @Value("${spring.cache.custom.global-prefix}:salary:pool:fund") |
49 | + @Getter | ||
50 | + private String salaryPoolFundKey; | ||
47 | 51 | ||
48 | /** | 52 | /** |
49 | * 每月第一天凌晨执行,薪酬池写入社保公积金门店 | 53 | * 每月第一天凌晨执行,薪酬池写入社保公积金门店 |
@@ -53,7 +57,7 @@ public class SalaryPoolFundShopTask { | @@ -53,7 +57,7 @@ public class SalaryPoolFundShopTask { | ||
53 | @Scheduled(cron = TimeTaskConstant.SALARY_POOL_FUND_SHOP) | 57 | @Scheduled(cron = TimeTaskConstant.SALARY_POOL_FUND_SHOP) |
54 | @Transactional(rollbackFor = Exception.class) | 58 | @Transactional(rollbackFor = Exception.class) |
55 | public void dealSalaryPoolFundShop() { | 59 | public void dealSalaryPoolFundShop() { |
56 | - Lock lock = distributedLocker.lock(LOCK_KEY); | 60 | + Lock lock = distributedLocker.lock(getSalaryPoolFundKey()); |
57 | if (((RLock) lock).isLocked()) { | 61 | if (((RLock) lock).isLocked()) { |
58 | try { | 62 | try { |
59 | log.info("定时任务【酬池写入社保公积金门店】开始执行"); | 63 | log.info("定时任务【酬池写入社保公积金门店】开始执行"); |
fw-morax-server/src/main/java/cn/fw/morax/server/task/SalaryReportTask.java
@@ -21,10 +21,12 @@ import cn.fw.morax.service.data.salary.SalaryRewardService; | @@ -21,10 +21,12 @@ import cn.fw.morax.service.data.salary.SalaryRewardService; | ||
21 | import com.alibaba.fastjson.JSON; | 21 | import com.alibaba.fastjson.JSON; |
22 | import com.baomidou.mybatisplus.core.toolkit.Wrappers; | 22 | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
23 | import com.google.common.collect.Lists; | 23 | import com.google.common.collect.Lists; |
24 | +import lombok.Getter; | ||
24 | import lombok.RequiredArgsConstructor; | 25 | import lombok.RequiredArgsConstructor; |
25 | import lombok.extern.slf4j.Slf4j; | 26 | import lombok.extern.slf4j.Slf4j; |
26 | import org.apache.commons.collections4.map.MultiKeyMap; | 27 | import org.apache.commons.collections4.map.MultiKeyMap; |
27 | import org.redisson.api.RLock; | 28 | import org.redisson.api.RLock; |
29 | +import org.springframework.beans.factory.annotation.Value; | ||
28 | import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; | 30 | import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; |
29 | import org.springframework.scheduling.annotation.Scheduled; | 31 | import org.springframework.scheduling.annotation.Scheduled; |
30 | import org.springframework.stereotype.Component; | 32 | import org.springframework.stereotype.Component; |
@@ -60,7 +62,9 @@ public class SalaryReportTask { | @@ -60,7 +62,9 @@ public class SalaryReportTask { | ||
60 | private final OopRpcService oopRpcService; | 62 | private final OopRpcService oopRpcService; |
61 | private final DistributedLocker distributedLocker; | 63 | private final DistributedLocker distributedLocker; |
62 | 64 | ||
63 | - private final static String LOCK_KEY = "kpi:group:report"; | 65 | + @Value("${spring.cache.custom.global-prefix}:salary:group:report") |
66 | + @Getter | ||
67 | + private String salaryGroupReport; | ||
64 | 68 | ||
65 | /** | 69 | /** |
66 | * 绩效报表定时任务 | 70 | * 绩效报表定时任务 |
@@ -78,7 +82,7 @@ public class SalaryReportTask { | @@ -78,7 +82,7 @@ public class SalaryReportTask { | ||
78 | */ | 82 | */ |
79 | @Transactional(rollbackFor = Exception.class) | 83 | @Transactional(rollbackFor = Exception.class) |
80 | public void salaryReport(LocalDate date) { | 84 | public void salaryReport(LocalDate date) { |
81 | - Lock lock = distributedLocker.lock(LOCK_KEY); | 85 | + Lock lock = distributedLocker.lock(getSalaryGroupReport()); |
82 | if (!((RLock) lock).isLocked()) { | 86 | if (!((RLock) lock).isLocked()) { |
83 | return; | 87 | return; |
84 | } | 88 | } |