From 104a2b573e3ec92ad217df8b8ca1d2b53fe1970c Mon Sep 17 00:00:00 2001 From: chen-xin-zhi <3588068430@qq.com> Date: Sun, 20 Jul 2025 08:57:30 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=BA=86=E4=B8=80=E7=B3=BB?= =?UTF-8?q?=E5=88=97bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../greenorange/promotion/config/CorsConfig.java | 16 ++++++++++++++-- .../UserPerformanceSummaryController.java | 8 +++++++- 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/greenorange/promotion/config/CorsConfig.java b/src/main/java/com/greenorange/promotion/config/CorsConfig.java index fe5489e..e684505 100644 --- a/src/main/java/com/greenorange/promotion/config/CorsConfig.java +++ b/src/main/java/com/greenorange/promotion/config/CorsConfig.java @@ -16,15 +16,27 @@ public class CorsConfig { @Bean public FilterRegistrationBean corsFilter() { + // 1. 准备一个“规则源”,用于给不同路径配置 CORS 规则 UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource(); + // 2. 创建一个“跨域配置”对象,往里填各种允许/不允许的选项 CorsConfiguration config = new CorsConfiguration(); - // 携带cookie + // 【允许携带 Cookie 这类 “凭证”】 config.setAllowCredentials(true); - // 放行哪些域名(必须用 patterns,否则 * 会和 allowCredentials 冲突) + // 【允许的来源域名】 + // 用通配符 "*",表示不管从哪个域来的,都允许。 + // 这里用的是 addAllowedOriginPattern,而不是 addAllowedOrigin, + // 是为了和 allowCredentials(true) 一起使用时不报错。 config.addAllowedOriginPattern("*"); + // 【允许的请求头】 + // 客户端可以带哪些自定义的 HTTP 头,比如 Content-Type、X-Token… config.addAllowedHeader("*"); + // 【允许的请求方法】 + // GET、POST、PUT、DELETE、OPTIONS……所有都放行 config.addAllowedMethod("*"); + // 把上面这套“跨域规则”注册到所有接口路径(/**) source.registerCorsConfiguration("/**", config); + // 3.用这套规则,创建一个 CorsFilter 过滤器, + // 4.并把它交给 Spring 管理,优先级设为最高 FilterRegistrationBean bean = new FilterRegistrationBean<>(new CorsFilter(source)); bean.setOrder(Ordered.HIGHEST_PRECEDENCE); return bean; diff --git a/src/main/java/com/greenorange/promotion/controller/userInfo/UserPerformanceSummaryController.java b/src/main/java/com/greenorange/promotion/controller/userInfo/UserPerformanceSummaryController.java index 0ecf299..e6c13cb 100644 --- a/src/main/java/com/greenorange/promotion/controller/userInfo/UserPerformanceSummaryController.java +++ b/src/main/java/com/greenorange/promotion/controller/userInfo/UserPerformanceSummaryController.java @@ -373,6 +373,8 @@ public class UserPerformanceSummaryController { public BaseResponse> listStaffUserPerformanceSummaryRankingsByPage(@Valid @RequestBody UserPerformanceSummaryRankQueryRequest userPerformanceSummaryRankQueryRequest) { String startTimeStr = userPerformanceSummaryRankQueryRequest.getStartDate(); String endTimeStr = userPerformanceSummaryRankQueryRequest.getEndDate(); + String nickName = userPerformanceSummaryRankQueryRequest.getNickName(); + String phoneNumber = userPerformanceSummaryRankQueryRequest.getPhoneNumber(); DateTime startDate = null; DateTime endDate = null; boolean isAddDate = true; @@ -429,7 +431,11 @@ public class UserPerformanceSummaryController { } staffNetSalesAmountMap.merge(secondUserId, totalAmount, BigDecimal::add); } - List userInfoList = commonService.findByFieldEqTargetField(UserInfo::getUserRole, UserConstant.STAFF_ROLE, userInfoService); + LambdaQueryWrapper userInfoQueryWrapper = new LambdaQueryWrapper<>(); + userInfoQueryWrapper.eq(StringUtils.isNotBlank(nickName), UserInfo::getNickName, nickName) + .eq(StringUtils.isNotBlank(phoneNumber), UserInfo::getPhoneNumber, phoneNumber) + .eq(UserInfo::getUserRole, UserConstant.STAFF_ROLE); + List userInfoList = userInfoService.list(userInfoQueryWrapper); List userPerformanceSummaryList = commonService.findByFieldInTargetField(userInfoList, userPerformanceSummaryService, UserInfo::getId, UserPerformanceSummary::getUserId); // 封装Map集合(键:主管id, 用户信息)