From 14d70ea884654e744987f90313f50068adbc12e3 Mon Sep 17 00:00:00 2001
From: nickchange <126672920+nickchange@users.noreply.github.com>
Date: 星期五, 20 十月 2023 13:45:32 +0800
Subject: [PATCH] 10.20.1
---
cloud-server-other/src/main/java/com/dsh/other/service/impl/SiteServiceImpl.java | 50 ----------------
cloud-server-other/src/main/java/com/dsh/other/util/RedisUtil.java | 52 +++++++++++++++++
cloud-server-other/src/main/java/com/dsh/other/controller/SiteController.java | 37 ++++++++++++
cloud-server-account/src/main/java/com/dsh/account/util/PayMoneyUtil.java | 2
cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java | 4
5 files changed, 91 insertions(+), 54 deletions(-)
diff --git a/cloud-server-account/src/main/java/com/dsh/account/util/PayMoneyUtil.java b/cloud-server-account/src/main/java/com/dsh/account/util/PayMoneyUtil.java
index 81bd0d1..f15dc36 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/util/PayMoneyUtil.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/util/PayMoneyUtil.java
@@ -160,7 +160,7 @@
//分账
-// Integer coursePackagePayments = coursePackageClient.queryByCode(outTradeNo);
+ Integer coursePackagePayments = coursePackageClient.queryByCode(outTradeNo);
// Integer paymentCompetitions = competitionsClient.queryByCode(outTradeNo);
// Integer siteBookings = siteClient.queryByCode(outTradeNo);
// List<Integer> stores = new ArrayList<>();
diff --git a/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java b/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java
index c837017..eeea57d 100644
--- a/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java
+++ b/cloud-server-course/src/main/java/com/dsh/course/service/impl/TCoursePackageServiceImpl.java
@@ -1053,8 +1053,8 @@
OpenApiRoyaltyDetailInfoPojo op = new OpenApiRoyaltyDetailInfoPojo();
op.setTransOutType("loginName");
op.setTransOut("happysports@weparklife.com");
- op.setTransInType("loginName");
- op.setTransIn("19522115070");
+ op.setTransInType("userId");
+ op.setTransIn("2088022313710050");
op.setAmountPercentage(100L);
List<OpenApiRoyaltyDetailInfoPojo> ops = new ArrayList<>();
diff --git a/cloud-server-other/src/main/java/com/dsh/other/controller/SiteController.java b/cloud-server-other/src/main/java/com/dsh/other/controller/SiteController.java
index 8ea716e..f5d791c 100644
--- a/cloud-server-other/src/main/java/com/dsh/other/controller/SiteController.java
+++ b/cloud-server-other/src/main/java/com/dsh/other/controller/SiteController.java
@@ -19,6 +19,7 @@
import com.dsh.other.model.vo.siteVo.SiteSearchVO;
import com.dsh.other.service.*;
import com.dsh.other.util.PayMoneyUtil;
+import com.dsh.other.util.RedisUtil;
import com.dsh.other.util.ResultUtil;
import com.dsh.other.util.TokenUtil;
import io.swagger.annotations.ApiImplicitParam;
@@ -27,6 +28,7 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.web.bind.annotation.*;
+import redis.clients.jedis.Jedis;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
@@ -197,7 +199,8 @@
}
}
-
+ @Autowired
+ private RedisUtil redisUtil;
@ResponseBody
@PostMapping("/base/site/querySiteTimes")
@@ -217,6 +220,22 @@
return ResultUtil.runErr();
}
}
+
+// public ResultUtil<List<QuerySiteTimes>> querySiteTimes(Integer id, String day, String halfName, String siteName) throws Exception {
+//
+// if (redisUtil.acquireLock(day,day)) {
+// try {
+// List<QuerySiteTimes> list = siteService.querySiteTimes(id, day,halfName,siteName);
+// return ResultUtil.success(list);
+// } finally {
+// redisUtil.releaseLock(day);
+// }
+// } else {
+// return ResultUtil.error("系统繁忙,请稍后再试!");
+// }
+//
+// }
+
/**
@@ -256,6 +275,22 @@
}
}
+// public ResultUtil<List<QuerySiteTimes>> querySiteTimes(Integer id, String day, String halfName, String siteName) throws Exception {
+//
+// if (redisUtil.acquireLock(day,day)) {
+// try {
+// List<QuerySiteTimes> list = siteService.querySiteTimes(id, day,halfName,siteName);
+// return ResultUtil.success(list);
+// } finally {
+// redisUtil.releaseLock(day);
+// }
+// } else {
+// return ResultUtil.error("系统繁忙,请稍后再试!");
+// }
+//
+// }
+
+
/**
* 购买课程微信支付回调
* @param request
diff --git a/cloud-server-other/src/main/java/com/dsh/other/service/impl/SiteServiceImpl.java b/cloud-server-other/src/main/java/com/dsh/other/service/impl/SiteServiceImpl.java
index 3a8bbfe..3efad9a 100644
--- a/cloud-server-other/src/main/java/com/dsh/other/service/impl/SiteServiceImpl.java
+++ b/cloud-server-other/src/main/java/com/dsh/other/service/impl/SiteServiceImpl.java
@@ -170,56 +170,6 @@
*/
@Override
public List<QuerySiteTimes> querySiteTimes(Integer id, String day,String halfName,String siteName) throws Exception {
-// Site site = this.getById(id);
-// SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
-// Calendar s = Calendar.getInstance();
-// s.setTime(sdf.parse(day + " " + site.getAppointmentStartTime()));
-// Calendar e = Calendar.getInstance();
-// e.setTime(sdf.parse(day + " " + site.getAppointmentEndTime()));
-//
-// int hour = e.get(Calendar.HOUR_OF_DAY);
-//
-// int minute = e.get(Calendar.MINUTE);
-//
-// List<QuerySiteTimes> list = new ArrayList<>();
-//
-// SimpleDateFormat sdfs = new SimpleDateFormat("HH:mm");
-//
-// while (true){
-//
-// String start = sdfs.format(s.getTime());
-//
-// s.set(Calendar.MINUTE, s.get(Calendar.MINUTE) + 30);
-//
-// int e_hour = s.get(Calendar.HOUR_OF_DAY);
-//
-// int e_minute = s.get(Calendar.MINUTE);
-//
-// String end = sdfs.format(s.getTime());
-//
-// QuerySiteTimes querySiteTimes = new QuerySiteTimes();
-//
-// querySiteTimes.setTime(start + "-" + end);
-//
-// querySiteTimes.setSelectable(1);
-//
-// SiteBooking siteBooking = siteBookingService.getOne(new QueryWrapper<SiteBooking>().eq("siteId", id).eq("state", 1)
-// .in("status", Arrays.asList(3, 4, 5)).last(" and DATE_FORMAT(startTime, '%Y-%m-%d %H:%i') <= '" + day + " " + start + "' and DATE_FORMAT(endTime, '%Y-%m-%d %H:%i') >= '" + day + " " + end + "'"));
-// if(null != siteBooking){
-// querySiteTimes.setSelectable(0);
-// }
-// int count = siteLockService.count(new QueryWrapper<SiteLock>().eq("siteId", id).last(" and DATE_FORMAT(startTime, '%Y-%m-%d %H:%i') <= '" + day + " " + start + "' and DATE_FORMAT(endTime, '%Y-%m-%d %H:%i') >= '" + day + " " + end + "'"));
-// if(count > 0){
-// querySiteTimes.setSelectable(0);
-// }
-//
-// list.add(querySiteTimes);
-//
-// if(e_hour == hour && minute == e_minute){
-// break;
-// }
-// }
-// return list;
System.out.println("=======date======"+day);
diff --git a/cloud-server-other/src/main/java/com/dsh/other/util/RedisUtil.java b/cloud-server-other/src/main/java/com/dsh/other/util/RedisUtil.java
index f84642d..88be661 100644
--- a/cloud-server-other/src/main/java/com/dsh/other/util/RedisUtil.java
+++ b/cloud-server-other/src/main/java/com/dsh/other/util/RedisUtil.java
@@ -21,6 +21,8 @@
@Autowired
private JedisPool jedisPool;
+ private static final int TIMEOUT = 10 * 1000; // 10秒超时时间
+ private static final int SLEEP_TIME = 1000; // 1秒休眠时间
/**
* 向redis中存储字符串没有过期时间
@@ -124,4 +126,54 @@
jedis.close();
}
}
+
+
+ public boolean acquireLock(String key,String value) {
+ Jedis jedis = null;
+ try {
+ jedis = jedisPool.getResource();
+ long start = System.currentTimeMillis();
+ String[] split = key.split(";");
+ for (String s : split) {
+
+ while (true) {
+ // 尝试获取锁
+ String result = jedis.set(s, value, "NX", "PX", TIMEOUT);
+ if ("OK".equals(result)) {
+ return true;
+ }
+ // 超时则返回失败
+ if (System.currentTimeMillis() - start > TIMEOUT) {
+ return false;
+ }
+ // 休眠一段时间后重试
+ Thread.sleep(SLEEP_TIME);
+ }
+ }
+
+ } catch (Exception e) {
+ e.printStackTrace();
+ } finally {
+ if (jedis != null) {
+ jedis.close();
+ }
+ }
+ return false;
+ }
+
+ public void releaseLock(String key) {
+ Jedis jedis = null;
+ try {
+ jedis = jedisPool.getResource();
+ jedis.del(key);
+ } catch (Exception e) {
+ e.printStackTrace();
+ } finally {
+ if (jedis != null) {
+ jedis.close();
+ }
+ }
+ }
+
+
}
--
Gitblit v1.7.1