From d47bf3e1e3bf56b60ea6a1649ddd618d5ae803f1 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期五, 26 十二月 2025 09:13:14 +0800
Subject: [PATCH] bug修改
---
cloud-server-other/src/main/java/com/dsh/other/controller/SiteController.java | 53 +++++++++++++++++++++++++++++++++++++++++++----------
1 files changed, 43 insertions(+), 10 deletions(-)
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 661414f..ef74165 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
@@ -1,9 +1,11 @@
package com.dsh.other.controller;
+import cn.hutool.core.date.DateUtil;
import cn.hutool.http.HttpRequest;
import cn.hutool.http.HttpResponse;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.dsh.other.entity.*;
@@ -41,6 +43,8 @@
import java.math.BigDecimal;
import java.nio.charset.StandardCharsets;
import java.text.SimpleDateFormat;
+import java.time.DayOfWeek;
+import java.time.LocalDate;
import java.util.*;
import java.util.stream.Collectors;
@@ -262,7 +266,8 @@
}
}
-
+ @Autowired
+ private ITSitePriceService sitePriceService;
@ResponseBody
@PostMapping("/base/site/querySiteList")
@ApiOperation(value = "获取场地列表", tags = {"用户—预约场地"})
@@ -270,6 +275,8 @@
})
public ResultUtil<List<QuerySiteListVo>> querySiteList(QuerySiteList querySiteList) {
try {
+
+
List<QuerySiteListVo> querySiteListVos = siteService.querySiteList(querySiteList);
return ResultUtil.success(querySiteListVos);
} catch (Exception e) {
@@ -363,12 +370,11 @@
})
public ResultUtil reservationSite(ReservationSite reservationSite) {
try {
-// Integer uid = tokenUtil.getUserIdFormRedis();
-// if (null == uid) {
-// return ResultUtil.tokenErr();
-// }
- Integer uid = 201;
-
+ Integer uid = tokenUtil.getUserIdFormRedis();
+ if (null == uid) {
+ return ResultUtil.tokenErr();
+ }
+// Integer uid = 201;
return siteService.reservationSite(uid, reservationSite);
} catch (Exception e) {
e.printStackTrace();
@@ -650,9 +656,12 @@
// 进场二维码新增参数codeType 1=订场 2=散客,3=门票,玩湃惠民卡codeType=4
map.put("codeType", targetAudience);
map.put("dataId", siteBooking.getId());
+// map.put("siteName", siteBooking.getNextName()==null?"":siteBooking.getNextName());
+// map.put("halfName", siteBooking.getHalfName()==null?"":siteBooking.getHalfName());
System.err.println("订场类型:"+targetAudience);
map.put("name", site.getName());
+ map.put("targetAudience", targetAudience);
List<Integer> ids = getIds(siteBooking.getSiteId());
@@ -949,18 +958,41 @@
@PostMapping("/base/site/getNewAddSiteList")
public List<SiteVo> getAppUserSiteList(@RequestBody Integer storeId) {
List<SiteVo> siteVos = new ArrayList<>();
-
+ DayOfWeek dayOfWeek = LocalDate.now().getDayOfWeek();
+ Map<Integer, List<TSitePrice>> priceMap = sitePriceService.lambdaQuery().eq(TSitePrice::getDayOfWeek, dayOfWeek.getValue())
+ .list()
+ .stream().collect(Collectors.groupingBy(TSitePrice::getSiteId));
List<Site> list = siteService.list(new QueryWrapper<Site>().eq("state", 1).eq("storeId", storeId)
.orderByDesc("insertTime"));
+ String now = DateUtil.now().substring(11, 19);
+
if (list.size() > 0) {
for (Site site : list) {
+ List<TSitePrice> tSitePrices = priceMap.get(site.getId());
+
SiteVo vo = new SiteVo();
+ vo.setIsCanBeBooked(site.getIsCanBeBooked());
vo.setSiteId(site.getId());
vo.setSiteName(site.getName());
- vo.setSiteTime(site.getAppointmentStartTime() + "-" + site.getAppointmentEndTime());
+ vo.setSiteTime("");
+ vo.setPrice(0.0);
+ if (tSitePrices!=null&& !tSitePrices.isEmpty()){
+ BigDecimal bigDecimal = BigDecimal.ZERO;
+ // 遍历 查询最小的价格
+ for (TSitePrice tSitePrice : tSitePrices) {
+ // 当前时间再范围之内
+ if (tSitePrice.getStartTime().compareTo(now) <= 0 && tSitePrice.getEndTime().compareTo(now) >= 0) {
+ if (tSitePrice.getCashPrice().compareTo(bigDecimal) > 0) {
+ bigDecimal = tSitePrice.getCashPrice();
+ }
+ }
+ }
+ vo.setPrice(bigDecimal.doubleValue());
+ vo.setSiteTime(tSitePrices.get(0).getStartTime() + "-" + tSitePrices.get(tSitePrices.size()-1).getEndTime());
+ }
SiteType byId = siteTypeService.getById(site.getSiteTypeId());
vo.setSiteType(byId.getName());
- vo.setPrice(site.getCashPrice());
+
siteVos.add(vo);
}
}
@@ -968,4 +1000,5 @@
}
+
}
--
Gitblit v1.7.1