|
@@ -29,10 +29,7 @@ import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
import java.math.BigDecimal;
|
|
|
-import java.util.Collections;
|
|
|
|
|
-import java.util.List;
|
|
|
|
|
-import java.util.Objects;
|
|
|
|
|
-import java.util.Set;
|
|
|
|
|
|
|
+import java.util.*;
|
|
|
import java.util.stream.Collectors;
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -85,11 +82,43 @@ public class ParkingChangeStrategyService {
|
|
|
* 构建查询条件并执行分页查询
|
|
* 构建查询条件并执行分页查询
|
|
|
*/
|
|
*/
|
|
|
private LambdaQueryWrapper<KwtParkingChargeStrategy> buildAndExecuteQuery(ParkingChangeStrategyQueryParam param) {
|
|
private LambdaQueryWrapper<KwtParkingChargeStrategy> buildAndExecuteQuery(ParkingChangeStrategyQueryParam param) {
|
|
|
- return Wrappers.<KwtParkingChargeStrategy>lambdaQuery()
|
|
|
|
|
|
|
+ LambdaQueryWrapper<KwtParkingChargeStrategy> wrapper = Wrappers.<KwtParkingChargeStrategy>lambdaQuery()
|
|
|
.eq(param.getType() != null, KwtParkingChargeStrategy::getType, param.getType())
|
|
.eq(param.getType() != null, KwtParkingChargeStrategy::getType, param.getType())
|
|
|
.like(StringUtils.isNotBlank(param.getStrategyName()), KwtParkingChargeStrategy::getStrategyName, param.getStrategyName())
|
|
.like(StringUtils.isNotBlank(param.getStrategyName()), KwtParkingChargeStrategy::getStrategyName, param.getStrategyName())
|
|
|
.eq(KwtParkingChargeStrategy::getDelFlag, 0)
|
|
.eq(KwtParkingChargeStrategy::getDelFlag, 0)
|
|
|
.orderByDesc(KwtParkingChargeStrategy::getCreateTime);
|
|
.orderByDesc(KwtParkingChargeStrategy::getCreateTime);
|
|
|
|
|
+
|
|
|
|
|
+ handleSearchKeyword(param, wrapper);
|
|
|
|
|
+
|
|
|
|
|
+ return wrapper;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 关键词模糊查询
|
|
|
|
|
+ */
|
|
|
|
|
+ private void handleSearchKeyword(ParkingChangeStrategyQueryParam param, LambdaQueryWrapper<KwtParkingChargeStrategy> wrapper) {
|
|
|
|
|
+ if (StringUtils.isBlank(param.getEntName())) {
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+ Set<Long> strategyIds = addMatchedIds(param.getEntName());
|
|
|
|
|
+ if (CollectionUtils.isNotEmpty(strategyIds)) {
|
|
|
|
|
+ wrapper.in(KwtParkingChargeStrategy::getId, strategyIds);
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 从企业名称模糊查询收费策略
|
|
|
|
|
+ * @param entName
|
|
|
|
|
+ */
|
|
|
|
|
+ private Set<Long> addMatchedIds(String entName) {
|
|
|
|
|
+ List<EntCacheResDto> entCacheResDtoList = remoteSystemService.queryEntCacheByName(entName);
|
|
|
|
|
+ if (CollectionUtils.isEmpty(entCacheResDtoList)) {
|
|
|
|
|
+ return new HashSet<>();
|
|
|
|
|
+ }
|
|
|
|
|
+ Set<Long> entIds = entCacheResDtoList.stream().map(EntCacheResDto::getId).collect(Collectors.toSet());
|
|
|
|
|
+ List<KwtParkingChargeStrategyUnit> strategyUnits = parkingChangeStrategyUnitRepository.queryByEntIds(entIds);
|
|
|
|
|
+ return strategyUnits.stream().map(KwtParkingChargeStrategyUnit::getStrategyId).collect(Collectors.toSet());
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
/**
|