From fd45fcbd496bbeaf9ee18edd8f2f858cf9cebaf3 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期五, 24 一月 2025 16:47:38 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/RefundPassServiceImpl.java |   34 +++++++++++++++++++++++++---------
 1 files changed, 25 insertions(+), 9 deletions(-)

diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/RefundPassServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/RefundPassServiceImpl.java
index a5b2e91..c91e6bd 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/RefundPassServiceImpl.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/RefundPassServiceImpl.java
@@ -31,6 +31,7 @@
 import com.ruoyi.system.api.feignClient.SysUserClient;
 import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
 
 import javax.annotation.Resource;
 import java.time.LocalDateTime;
@@ -130,18 +131,32 @@
 			shopId = sysUser.getObjectId();
 		}
 		List<Long> appUserIds = new ArrayList<>();
-		//搜索条件,用户姓名
-		if(StringUtils.isNotEmpty(refundPassListVo.getName())){
-			List<AppUser> data = appUserClient.getAppUserByName(refundPassListVo.getName()).getData();
+		//搜索条件,用户姓名和电话
+		if(StringUtils.isNotEmpty(refundPassListVo.getUserName()) || StringUtils.isNotEmpty(refundPassListVo.getPhone())){
+			List<AppUser> data = appUserClient.getAppUserByName(refundPassListVo.getUserName()).getData();
 			List<Long> collect = data.stream().map(AppUser::getId).collect(Collectors.toList());
+			if (collect.isEmpty()){
+				appUserIds.add(-1L);
+			}
 			appUserIds.addAll(collect);
+
+			List<AppUser> data2 = appUserClient.getAppUserByPhone(refundPassListVo.getPhone()).getData();
+			List<Long> collect2 = data2.stream().map(AppUser::getId).collect(Collectors.toList());
+			if (!CollectionUtils.isEmpty(data)){
+				for (AppUser datum : data) {
+					for (AppUser appUser : data2) {
+						if (!datum.getId().equals(appUser.getId())){
+							collect2.remove(appUser.getId());
+						}
+					}
+				}
+			}
+			if (collect2.isEmpty()){
+				appUserIds.add(-1L);
+			}
+			appUserIds.addAll(collect2);
 		}
-		//搜索条件,用户电话
-		if(StringUtils.isNotEmpty(refundPassListVo.getPhone())){
-			List<AppUser> data = appUserClient.getAppUserByPhone(refundPassListVo.getPhone()).getData();
-			List<Long> collect = data.stream().map(AppUser::getId).collect(Collectors.toList());
-			appUserIds.addAll(collect);
-		}
+
 		PageInfo<OrderRefundPassList> pageInfo = new PageInfo(refundPassListVo.getPageCurr(), refundPassListVo.getPageSize());
 		List<OrderRefundPassList> orderRefundPassList = this.baseMapper.getOrderRefundPassList(pageInfo, refundPassListVo.getCode(), appUserIds, shopId, refundPassListVo.getRefundMethod(), refundPassListVo.getStatus());
 		for (OrderRefundPassList refundPassList : orderRefundPassList) {
@@ -212,6 +227,7 @@
 			return R.fail("操作失败");
 		}
 		refundPass.setStatus(2);
+		refundPass.setReceiveTime(LocalDateTime.now());
 		//仅退款的售后需要将支付金额原路返回,然后再扣减支付获得的积分
 		Order order = orderService.getById(refundPass.getOrderId());
 		order.setOrderStatus(6);

--
Gitblit v1.7.1