|
@@ -162,7 +162,7 @@ public class WmTaskControllerV2 {
|
|
|
|
|
|
String lockKey = "task_opt:check:" + checkReq.getTaskId() + ":" + checkReq.getNodeId();
|
|
|
Boolean locked =
|
|
|
- redisTemplate.opsForValue().setIfAbsent(lockKey, lockInfo /*, 10, TimeUnit.MINUTES*/);
|
|
|
+ redisTemplate.opsForValue().setIfAbsent(lockKey, lockInfo, 60 * 60 * 24, TimeUnit.SECONDS);
|
|
|
|
|
|
if (Boolean.FALSE.equals(locked)) {
|
|
|
throw new BizException(
|
|
@@ -176,8 +176,13 @@ public class WmTaskControllerV2 {
|
|
|
// 发起审核
|
|
|
try {
|
|
|
taskManager.doSingleCheck(checkReq, user);
|
|
|
- } finally {
|
|
|
- redisTemplate.delete(lockKey);
|
|
|
+ } catch (Exception e) {
|
|
|
+ log.error(e.getMessage(), e);
|
|
|
+ if (e instanceof BizException) {
|
|
|
+ throw (BizException) e;
|
|
|
+ } else {
|
|
|
+ redisTemplate.delete(lockKey);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
return ok(Boolean.TRUE);
|
|
@@ -353,7 +358,11 @@ public class WmTaskControllerV2 {
|
|
|
taskManager.doBatchCheck(checkReq, user);
|
|
|
} catch (Exception e) {
|
|
|
log.error(e.getMessage(), e);
|
|
|
- redisTemplate.delete(lockKeys.keySet());
|
|
|
+ if (e instanceof BizException) {
|
|
|
+ throw (BizException) e;
|
|
|
+ } else {
|
|
|
+ redisTemplate.delete(lockKeys.keySet());
|
|
|
+ }
|
|
|
}
|
|
|
// finally {
|
|
|
// 不论审核结果如何都不删除锁了
|