From 85384328c12fcc689e1f66f4deca77168859882d Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期五, 10 一月 2025 19:12:39 +0800
Subject: [PATCH] 修改bug

---
 ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/OrderActivityInfoController.java |   34 +++++++++++++++++++++++++++-------
 1 files changed, 27 insertions(+), 7 deletions(-)

diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/OrderActivityInfoController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/OrderActivityInfoController.java
index d155ebc..3779fe3 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/OrderActivityInfoController.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/OrderActivityInfoController.java
@@ -7,6 +7,7 @@
 import com.ruoyi.common.core.utils.StringUtils;
 import com.ruoyi.other.api.domain.OrderActivityInfo;
 import com.ruoyi.other.service.OrderActivityInfoService;
+import com.ruoyi.other.service.VipSettingService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
@@ -34,6 +35,8 @@
 
 	@Resource
 	private OrderActivityInfoService orderActivityInfoService;
+	@Resource
+	private VipSettingService vipSettingService;
 	
 	
 	/**
@@ -43,9 +46,9 @@
 	 */
 	@ResponseBody
 	@PostMapping("/getNowOrderActivityInfo")
-	public R<OrderActivityInfo> getNowOrderActivityInfo(@RequestParam("vip") Integer vip){
-		OrderActivityInfo one = orderActivityInfoService.getOne(new LambdaQueryWrapper<OrderActivityInfo>().eq(OrderActivityInfo::getDelFlag, 0)
-				.last(" and now() between start_time and end_time and FIND_IN_SET(" + vip + ", vip_ids) limit 0, 1"));
+	public R<List<OrderActivityInfo>> getNowOrderActivityInfo(@RequestParam("vip") Integer vip){
+		List<OrderActivityInfo> one = orderActivityInfoService.list(new LambdaQueryWrapper<OrderActivityInfo>().eq(OrderActivityInfo::getDelFlag, 0)
+				.eq(OrderActivityInfo::getIsShelf, 1).last(" and now() between start_time and end_time and FIND_IN_SET(" + vip + ", vip_ids)"));
 		return R.ok(one);
 	}
 
@@ -74,7 +77,7 @@
 	 * 修改活动
 	 */
 	@PostMapping("/update")
-	@ApiOperation(value = "修改活动", tags = {"管理后台-活动管理-订单优惠活动"})
+	@ApiOperation(value = "修改活动", tags = {"管理后台-活动管理"})
 	public R<Void> updateActivityConfig(@RequestBody OrderActivityInfo orderActivityInfo){
 		orderActivityInfo.setId(Long.valueOf(orderActivityInfo.getIdStr()));
 		orderActivityInfoService.updateById(orderActivityInfo);
@@ -93,9 +96,10 @@
 		Page<OrderActivityInfo> page = orderActivityInfoService.page(Page.of(pageNum, pageSize), new LambdaQueryWrapper<OrderActivityInfo>()
 				.eq(orderActivityInfo.getId() != null, OrderActivityInfo::getId, orderActivityInfo.getId())
 				.eq(StringUtils.isNotEmpty(orderActivityInfo.getActivityName()), OrderActivityInfo::getActivityName, orderActivityInfo.getActivityName())
-				.lt(orderActivityInfo.getStatus() != null && orderActivityInfo.getStatus() == 0, OrderActivityInfo::getStartTime, orderActivityInfo.getStartTime())
-				.ge(orderActivityInfo.getStatus() != null && orderActivityInfo.getStatus() == 1, OrderActivityInfo::getEndTime, orderActivityInfo.getStartTime())
-				.eq(orderActivityInfo.getIsShelf() != null, OrderActivityInfo::getIsShelf, orderActivityInfo.getIsShelf()));
+				.gt(orderActivityInfo.getStatus() != null && orderActivityInfo.getStatus() == 0, OrderActivityInfo::getStartTime, LocalDateTime.now())
+				.ge(orderActivityInfo.getStatus() != null && orderActivityInfo.getStatus() == 1, OrderActivityInfo::getEndTime, LocalDateTime.now())
+				.lt(orderActivityInfo.getStatus() != null && orderActivityInfo.getStatus() == 1, OrderActivityInfo::getStartTime, LocalDateTime.now())
+				.eq(orderActivityInfo.getIsShelf() != null, OrderActivityInfo::getIsShelf, orderActivityInfo.getIsShelf()).orderByDesc(OrderActivityInfo::getCreateTime));
 		page.getRecords().forEach(item -> {
 			LocalDateTime startTime = item.getStartTime();
 			LocalDateTime now = LocalDateTime.now();
@@ -107,6 +111,22 @@
 			}else {
 				item.setStatus(0); // 未开始
 			}
+
+			String vipIds = item.getVipIds();
+			if (StringUtils.isNotEmpty(vipIds)){
+				String[] vipIdArr = vipIds.split(",");
+				if (vipIdArr.length == 7){
+					item.setVipName("全部");
+				}else {
+					List<String> vipNameList = new ArrayList<>();
+					for (String vipId : vipIdArr) {
+						String vipName = vipSettingService.getById(Long.parseLong(vipId)).getVipName();
+						vipNameList.add(vipName);
+					}
+					item.setVipName(String.join(",", vipNameList));
+				}
+
+			}
 		});
 		return R.ok(page);
 	}

--
Gitblit v1.7.1