From 92b9a9452201e3ed77dcebdce918a2597cccb730 Mon Sep 17 00:00:00 2001
From: zj <1772600164@qq.com>
Date: Tue, 23 Sep 2025 19:42:20 +0800
Subject: [PATCH] 1
---
src/main/java/com/nq/service/impl/UserWithdrawServiceImpl.java | 44 ++++++++++++++++++++++++++++++++++----------
1 files changed, 34 insertions(+), 10 deletions(-)
diff --git a/src/main/java/com/nq/service/impl/UserWithdrawServiceImpl.java b/src/main/java/com/nq/service/impl/UserWithdrawServiceImpl.java
index 408c9e0..08867e1 100644
--- a/src/main/java/com/nq/service/impl/UserWithdrawServiceImpl.java
+++ b/src/main/java/com/nq/service/impl/UserWithdrawServiceImpl.java
@@ -6,6 +6,7 @@
import com.fasterxml.jackson.databind.ObjectMapper;
import com.google.gson.Gson;
import com.nq.dao.*;
+import com.nq.enums.EConfigKey;
import com.nq.enums.EUserAssets;
import com.nq.pojo.*;
import com.nq.service.*;
@@ -24,6 +25,7 @@
import java.time.LocalDate;
import java.time.LocalDateTime;
+import java.time.LocalTime;
import java.time.format.DateTimeFormatter;
import java.util.*;
@@ -129,9 +131,9 @@
return ServerResponse.createByErrorMsg("模拟用户无法提取资金",request);
}
SiteSetting siteSetting = this.iSiteSettingService.getSiteSetting();
- if ((new BigDecimal(amt)).compareTo(new BigDecimal(siteSetting.getWithMinAmt().intValue())) == -1) {
- return ServerResponse.createByErrorMsg("最小提现金额:" + siteSetting.getWithMinAmt(),request);
- }
+// if ((new BigDecimal(amt)).compareTo(new BigDecimal(siteSetting.getWithMinAmt().intValue())) == -1) {
+// return ServerResponse.createByErrorMsg("最小提现金额:" + siteSetting.getWithMinAmt(),request);
+// }
boolean b = getServerResponse();
if (!b) {
@@ -172,14 +174,36 @@
}
private boolean getServerResponse() {
- StockTimeSetting stockTimeSetting = stockTimeSettingMapper.selectOne(new QueryWrapper<StockTimeSetting>().eq("accets_type", "US"));
- if (stockTimeSetting == null) {
- return false;
+ StockConfig stockConfig = iStockConfigServices.queryByKey(EConfigKey.WITHDRAW_TIME_SETTING.getCode());
+ return isInTimeRange(stockConfig.getCValue());
+ }
+
+
+ /**
+ * 判断当前时间是否在指定的时间区间内
+ * @param timeRange 时间区间字符串,格式如:"9:00-18:00"
+ * @return 如果在区间内返回true,否则返回false
+ */
+ public static boolean isInTimeRange(String timeRange) {
+ try {
+ // 分割开始时间和结束时间
+ String[] times = timeRange.split("-");
+ if (times.length != 2) {
+ throw new IllegalArgumentException("时间格式不正确,应为:HH:mm-HH:mm");
+ }
+
+ // 解析时间
+ DateTimeFormatter formatter = DateTimeFormatter.ofPattern("H:mm");
+ LocalTime startTime = LocalTime.parse(times[0].trim(), formatter);
+ LocalTime endTime = LocalTime.parse(times[1].trim(), formatter);
+ LocalTime currentTime = LocalTime.now();
+
+ // 判断是否在时间区间内
+ return !currentTime.isBefore(startTime) && !currentTime.isAfter(endTime);
+
+ } catch (Exception e) {
+ throw new IllegalArgumentException("时间解析错误,请检查格式是否正确", e);
}
- if (!stockTimeSetting.getWeekDay().contains(String.valueOf(LocalDate.now().getDayOfWeek().getValue()))) {
- return false;
- }
- return TimeUtil.isTradingHour(stockTimeSetting.getAmStartTime(), stockTimeSetting.getAmEndTime(), stockTimeSetting.getPmStartTime(), stockTimeSetting.getPmEndTime());
}
public ServerResponse<PageInfo> findUserWithList(String withStatus, HttpServletRequest request, int pageNum, int pageSize) {
--
Gitblit v1.9.3