This commit is contained in:
YAS\29473
2025-04-14 11:01:09 +08:00
parent d2c8b560af
commit 2a02aeabb0
4 changed files with 39 additions and 22 deletions

View File

@@ -7,6 +7,7 @@ import com.jsowell.common.enums.ykc.ReturnCodeEnum;
import com.jsowell.common.exception.BusinessException;
import com.jsowell.common.response.RestApiResponse;
import com.jsowell.pile.dto.SplitConfigDTO;
import com.jsowell.pile.dto.SplitConfigStationDTO;
import com.jsowell.pile.service.StationSplitConfigService;
import com.jsowell.pile.vo.web.SplitConfigVO;
import org.springframework.beans.factory.annotation.Autowired;
@@ -63,22 +64,20 @@ public class StationSplitConfigController extends BaseController {
/**
* 根据汇付会员id查询配置分账的站点列表
* /station/splitconfig/queryStationList
* @param adapayMemberId
* @param splitConfigStationDTO
* @return
*/
@PostMapping("/queryStationList")
public RestApiResponse<Map<String,List<SplitConfigVO>>> queryStationList(String adapayMemberId) {
RestApiResponse<?> response = null;
Map<String,List<SplitConfigVO>> result = null;
public RestApiResponse<Map<String, List<SplitConfigVO>>> queryStationList(@RequestBody SplitConfigStationDTO splitConfigStationDTO) {
try {
result = stationSplitConfigService.queryStationList(adapayMemberId);
Map<String, List<SplitConfigVO>> result = stationSplitConfigService.queryStationList(splitConfigStationDTO);
return new RestApiResponse<>(result);
} catch (BusinessException e) {
logger.error("查询站点列表失败" , e);
response = new RestApiResponse<>(e.getCode() , e.getMessage());
logger.error("查询站点列表失败", e);
return new RestApiResponse<>(e.getCode(), e.getMessage());
} catch (Exception e) {
logger.error("查询站点列表失败" , e);
response = new RestApiResponse<>(ReturnCodeEnum.CODE_FAILED);
logger.error("查询站点列表失败", e);
return new RestApiResponse<>(ReturnCodeEnum.CODE_FAILED);
}
return new RestApiResponse<>(result);
}
}

View File

@@ -0,0 +1,16 @@
package com.jsowell.pile.dto;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@NoArgsConstructor
@AllArgsConstructor
public class SplitConfigStationDTO {
/**
* 汇付会员ID
*/
private String adapayMemberId;
}

View File

@@ -2,6 +2,7 @@ package com.jsowell.pile.service;
import com.jsowell.pile.domain.StationSplitConfig;
import com.jsowell.pile.dto.SplitConfigDTO;
import com.jsowell.pile.dto.SplitConfigStationDTO;
import com.jsowell.pile.vo.web.ShareMemberVO;
import com.jsowell.pile.vo.web.SplitConfigVO;
@@ -53,8 +54,8 @@ public interface StationSplitConfigService {
/**
* 根据站点id查询站点分账配置信息
* @param adapayMemberId
* @param splitConfigStationDTO
* @return
*/
Map<String,List<SplitConfigVO>> queryStationList(String adapayMemberId);
Map<String,List<SplitConfigVO>> queryStationList(SplitConfigStationDTO splitConfigStationDTO);
}

View File

@@ -13,6 +13,7 @@ import com.jsowell.common.util.StringUtils;
import com.jsowell.pile.domain.AdapayMemberAccount;
import com.jsowell.pile.domain.StationSplitConfig;
import com.jsowell.pile.dto.SplitConfigDTO;
import com.jsowell.pile.dto.SplitConfigStationDTO;
import com.jsowell.pile.dto.SplitUserDetailDTO;
import com.jsowell.pile.mapper.StationSplitConfigMapper;
import com.jsowell.pile.service.AdapayMemberAccountService;
@@ -26,10 +27,7 @@ import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.*;
import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
@@ -293,23 +291,26 @@ public class StationSplitConfigServiceImpl implements StationSplitConfigService{
/**
* 根据汇付会员id查询配置分账的站点列表
*
* @param adapayMemberId
* @param splitConfigStationDTO
* @return
*/
@Override
public Map<String,List<SplitConfigVO>> queryStationList(String adapayMemberId) {
public Map<String,List<SplitConfigVO>> queryStationList(SplitConfigStationDTO splitConfigStationDTO) {
String adapayMemberId = splitConfigStationDTO.getAdapayMemberId();
List<SplitConfigVO> stationList = stationSplitConfigMapper.queryStationList(adapayMemberId);
if (stationList == null || stationList.isEmpty()){
if (stationList == null || stationList.isEmpty()) {
throw new BusinessException("", "未查询到该汇付会员的分账配置信息");
}
//按照站点id进行去重,再将id按照降序排序,因为站点idString类型,所以需要先转换为int类型
// 按照站点 id 进行去重再将 id 按照降序排序因为站点 idString 类型所以需要先转换为 int 类型
stationList = stationList.stream()
.filter(Objects::nonNull)
.filter(vo -> vo.getStationId() != null && vo.getStationId().matches("^\\d+"))
.distinct()
.sorted((o1, o2) -> Integer.parseInt(o1.getStationId()) - Integer.parseInt(o2.getStationId()))
.sorted((o1, o2) -> Integer.parseInt(o2.getStationId()) - Integer.parseInt(o1.getStationId()))
.collect(Collectors.toList());
Map<String,List<SplitConfigVO>> stationMap = new HashMap<>();
Map<String, List<SplitConfigVO>> stationMap = new HashMap<>();
stationMap.put("stationList", stationList);
return stationMap;
}