From 7af550a7afc750dd20f4ceb2bf034f7ad5ecc54b Mon Sep 17 00:00:00 2001 From: Guoqs <123@jsowell.com> Date: Mon, 2 Dec 2024 14:25:44 +0800 Subject: [PATCH] =?UTF-8?q?=E6=A0=B9=E6=8D=AE=E7=AB=99=E7=82=B9id=20?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E5=88=86=E8=B4=A6=E9=85=8D=E7=BD=AE=E5=8A=A0?= =?UTF-8?q?=E7=BC=93=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../test/java/SpringBootTestController.java | 13 ++++++++--- .../common/constant/CacheConstants.java | 5 +++++ .../impl/StationSplitConfigServiceImpl.java | 22 ++++++++++++++++++- 3 files changed, 36 insertions(+), 4 deletions(-) diff --git a/jsowell-admin/src/test/java/SpringBootTestController.java b/jsowell-admin/src/test/java/SpringBootTestController.java index 385e634a7..1e8dc93f5 100644 --- a/jsowell-admin/src/test/java/SpringBootTestController.java +++ b/jsowell-admin/src/test/java/SpringBootTestController.java @@ -136,6 +136,9 @@ public class SpringBootTestController { @Autowired private PileMsgRecordService pileMsgRecordService; + @Autowired + private StationSplitConfigService stationSplitConfigService; + @Autowired private PileStationInfoService pileStationInfoService; @@ -157,9 +160,6 @@ public class SpringBootTestController { @Autowired private MemberService memberService; - @Autowired - private StationSplitConfigService stationSplitConfigService; - @Autowired private OrderService orderService; @@ -3951,4 +3951,11 @@ public class SpringBootTestController { List divMemberList = orderBasicInfoService.calculationOfSplitAmount(stationSplitConfigList, afterSettleOrderDTO, null); System.out.println(JSON.toJSONString(divMemberList)); } + + @Test + public void queryByStationIdTest() { + String stationId = "2"; + List stationSplitConfigs = stationSplitConfigService.queryByStationId(stationId); + System.out.println(JSON.toJSONString(stationSplitConfigs)); + } } diff --git a/jsowell-common/src/main/java/com/jsowell/common/constant/CacheConstants.java b/jsowell-common/src/main/java/com/jsowell/common/constant/CacheConstants.java index 39657f815..12ef113b2 100644 --- a/jsowell-common/src/main/java/com/jsowell/common/constant/CacheConstants.java +++ b/jsowell-common/src/main/java/com/jsowell/common/constant/CacheConstants.java @@ -354,4 +354,9 @@ public class CacheConstants { * 根据桩号查询计费模板 */ public static final String BILLING_TEMPLATE_BY_PILE_SN = "billing_template_by_pile_sn:"; + + /** + * 根据站点id查询分账配置 + */ + public static final String QUERY_STATION_SPLIT_CONFIG = "query_station_split_config:"; } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/StationSplitConfigServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/StationSplitConfigServiceImpl.java index 9859c57ed..994f87b29 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/StationSplitConfigServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/StationSplitConfigServiceImpl.java @@ -1,7 +1,10 @@ package com.jsowell.pile.service.impl; +import com.google.common.collect.ImmutableMap; import com.google.common.collect.Lists; +import com.jsowell.common.constant.CacheConstants; import com.jsowell.common.constant.Constants; +import com.jsowell.common.core.redis.RedisCache; import com.jsowell.common.enums.DelFlagEnum; import com.jsowell.common.exception.BusinessException; import com.jsowell.common.util.DateUtils; @@ -23,6 +26,7 @@ import javax.annotation.Resource; import java.math.BigDecimal; import java.util.Date; import java.util.List; +import java.util.concurrent.TimeUnit; @Service public class StationSplitConfigServiceImpl implements StationSplitConfigService{ @@ -33,9 +37,25 @@ public class StationSplitConfigServiceImpl implements StationSplitConfigService{ @Autowired private AdapayMemberAccountService adapayMemberAccountService; + @Autowired + private RedisCache redisCache; + + /** + * 根据站点ID查询站点分账配置, 加缓存 + * @param stationId + * @return + */ @Override public List queryByStationId(String stationId) { - return stationSplitConfigMapper.queryByStationId(stationId); + String redisKey = CacheConstants.QUERY_STATION_SPLIT_CONFIG + stationId; + List stationSplitConfigs = redisCache.getCacheList(redisKey); + if (CollectionUtils.isEmpty(stationSplitConfigs)) { + stationSplitConfigs = stationSplitConfigMapper.queryByStationId(stationId); + if (CollectionUtils.isNotEmpty(stationSplitConfigs)) { + redisCache.batchSetCacheList(ImmutableMap.of(redisKey, stationSplitConfigs), 30, TimeUnit.MINUTES); + } + } + return stationSplitConfigs; } @Override