From 96e443a77b1d425d3e536c288fc271fe182f1496 Mon Sep 17 00:00:00 2001
From: zyy <zyy@email.com>
Date: Fri, 18 Jul 2025 18:31:44 +0800
Subject: [PATCH] app股票列表修改
---
src/main/java/com/nq/controller/backend/AdminWithDrawController.java | 25 +++++++++++++++++++++++--
1 files changed, 23 insertions(+), 2 deletions(-)
diff --git a/src/main/java/com/nq/controller/backend/AdminWithDrawController.java b/src/main/java/com/nq/controller/backend/AdminWithDrawController.java
index ca9655c..92ef7e4 100644
--- a/src/main/java/com/nq/controller/backend/AdminWithDrawController.java
+++ b/src/main/java/com/nq/controller/backend/AdminWithDrawController.java
@@ -23,6 +23,8 @@
import java.io.IOException;
import java.util.List;
+import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
@Controller
@RequestMapping({"/admin/withdraw/"})
@@ -72,14 +74,33 @@
HttpServletRequest request, HttpServletResponse response) {
ServerResponse serverResponse = null;
try {
- serverResponse = this.iUserWithdrawService.updateState(withId, state, authMsg,request,response);
+ String requestId = withId + "_" + state;
+ // 检查是否在短时间内重复请求
+ if (isDuplicateRequest(requestId)) {
+ return ServerResponse.createByErrorMsg("重复提交,请稍后再试。");
+ }
+
+ // 更新请求时间戳
+ requestTimestamps.put(requestId, System.currentTimeMillis());
+ synchronized (withId){
+ serverResponse = this.iUserWithdrawService.updateState(withId, state, authMsg,request,response);
+ }
} catch (Exception e) {
log.error("admin修改充值订单状态出错 ,异常 = {}", e);
return ServerResponse.createByErrorMsg("操作失败");
}
return serverResponse;
}
-
+ private final Map<String, Long> requestTimestamps = new ConcurrentHashMap<>();
+ private static final long REPEAT_REQUEST_THRESHOLD = 1000; // 5秒内重复提交视为无效请求
+ private boolean isDuplicateRequest(String requestId) {
+ Long lastRequestTime = requestTimestamps.get(requestId);
+ if (lastRequestTime == null) {
+ return false; // 如果没有该请求记录,认为是首次请求
+ }
+ // 如果请求时间小于设定的时间窗口,则视为重复请求
+ return System.currentTimeMillis() - lastRequestTime < REPEAT_REQUEST_THRESHOLD;
+ }
@RequestMapping({"deleteWithdraw.do"})
@ResponseBody
--
Gitblit v1.9.3