From 1f1d4e2defd90f16a4229b9bf98114f42c91405d Mon Sep 17 00:00:00 2001
From: 疯狂的狮子li <15040126243@163.com>
Date: 星期二, 12 十月 2021 11:47:54 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/satoken' into satoken
---
ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/RepeatSubmitAspect.java | 17 ++++++++---------
1 files changed, 8 insertions(+), 9 deletions(-)
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/RepeatSubmitAspect.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/RepeatSubmitAspect.java
index 3814a2c..bb8b0f1 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/RepeatSubmitAspect.java
+++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/aspectj/RepeatSubmitAspect.java
@@ -1,5 +1,6 @@
package com.ruoyi.framework.aspectj;
+import cn.dev33.satoken.SaManager;
import cn.hutool.core.util.StrUtil;
import cn.hutool.crypto.SecureUtil;
import com.baomidou.lock.LockInfo;
@@ -7,7 +8,6 @@
import com.ruoyi.common.annotation.RepeatSubmit;
import com.ruoyi.common.constant.Constants;
import com.ruoyi.common.exception.ServiceException;
-import com.ruoyi.common.properties.TokenProperties;
import com.ruoyi.common.utils.ServletUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.framework.config.properties.RepeatSubmitProperties;
@@ -32,18 +32,17 @@
@Component
public class RepeatSubmitAspect {
- private final TokenProperties tokenProperties;
private final RepeatSubmitProperties repeatSubmitProperties;
private final LockTemplate lockTemplate;
@Before("@annotation(repeatSubmit)")
public void doBefore(JoinPoint point, RepeatSubmit repeatSubmit) throws Throwable {
// 濡傛灉娉ㄨВ涓嶄负0 鍒欎娇鐢ㄦ敞瑙f暟鍊�
- long intervalTime = repeatSubmitProperties.getIntervalTime();
- if (repeatSubmit.intervalTime() > 0) {
- intervalTime = repeatSubmit.timeUnit().toMillis(repeatSubmit.intervalTime());
+ long interval = repeatSubmitProperties.getInterval();
+ if (repeatSubmit.interval() > 0) {
+ interval = repeatSubmit.timeUnit().toMillis(repeatSubmit.interval());
}
- if (intervalTime < 1000) {
+ if (interval < 1000) {
throw new ServiceException("閲嶅鎻愪氦闂撮殧鏃堕棿涓嶈兘灏忎簬'1'绉�");
}
HttpServletRequest request = ServletUtils.getRequest();
@@ -53,16 +52,16 @@
String url = request.getRequestURI();
// 鍞竴鍊硷紙娌℃湁娑堟伅澶村垯浣跨敤璇锋眰鍦板潃锛�
- String submitKey = request.getHeader(tokenProperties.getHeader());
+ String submitKey = request.getHeader(SaManager.getConfig().getTokenName());
if (StringUtils.isEmpty(submitKey)) {
submitKey = url;
}
submitKey = SecureUtil.md5(submitKey + ":" + nowParams);
// 鍞竴鏍囪瘑锛堟寚瀹歬ey + 娑堟伅澶达級
String cacheRepeatKey = Constants.REPEAT_SUBMIT_KEY + submitKey;
- LockInfo lock = lockTemplate.lock(cacheRepeatKey, intervalTime, intervalTime / 2);
+ LockInfo lock = lockTemplate.lock(cacheRepeatKey, interval, interval / 2);
if (lock == null) {
- throw new ServiceException("涓嶅厑璁搁噸澶嶆彁浜わ紝璇风◢鍚庡啀璇�!");
+ throw new ServiceException(repeatSubmit.message());
}
}
--
Gitblit v1.9.3