diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/PileRemoteService.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/PileRemoteService.java index de1218966..95b08ddd7 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/PileRemoteService.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/PileRemoteService.java @@ -35,6 +35,7 @@ import java.net.UnknownHostException; import java.util.Date; import java.util.List; import java.util.Objects; +import java.util.stream.Collectors; @Service public class PileRemoteService { @@ -289,16 +290,20 @@ public class PileRemoteService { pileBillingTemplate.setId(Long.valueOf(billingTemplateVO.getTemplateId())); pileBillingTemplate.setPublishTime(new Date()); pileBillingTemplateService.updatePileBillingTemplate(pileBillingTemplate); - - // 获取到站点下所有的桩, 下发计费模板, 电单车不支持 - if (StringUtils.equals(billingTemplateVO.getDeviceType(), Constants.ONE)) { - List pileList = pileBasicInfoService.selectPileListByStationIds(Lists.newArrayList(Long.valueOf(dto.getStationId()))); - if (CollectionUtils.isNotEmpty(pileList)) { + // 获取到站点下所有的桩 + List pileList = pileBasicInfoService.selectPileListByStationIds(Lists.newArrayList(Long.valueOf(dto.getStationId()))); + if (CollectionUtils.isNotEmpty(pileList)) { + // 删除缓存 + List collect = pileList.parallelStream() + .map(vo -> CacheConstants.BILLING_TEMPLATE_BY_PILE_SN + vo.getPileSn()) + .collect(Collectors.toList()); + redisCache.deleteObject(collect); + // 下发计费模板, 电单车不支持 + if (StringUtils.equals(billingTemplateVO.getDeviceType(), Constants.ONE)) { // 下发指令 pileList.parallelStream().forEach(pileInfoVO -> publishPileBillingTemplate(pileInfoVO.getPileSn(), billingTemplateVO)); } } - // 修改计费模板状态 pileBillingTemplateService.changeStationTemplate(dto.getStationId(), dto.getTemplateId(), billingTemplateVO.getDeviceType()); return true; diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PileBillingTemplateServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PileBillingTemplateServiceImpl.java index 888c5b0da..e39e0a588 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PileBillingTemplateServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/PileBillingTemplateServiceImpl.java @@ -26,10 +26,7 @@ import com.jsowell.pile.transaction.service.TransactionService; import com.jsowell.pile.util.UserUtils; import com.jsowell.pile.vo.uniapp.customer.BillingPriceVO; import com.jsowell.pile.vo.uniapp.customer.CurrentTimePriceDetails; -import com.jsowell.pile.vo.web.BillingDetailVO; -import com.jsowell.pile.vo.web.BillingTemplateVO; -import com.jsowell.pile.vo.web.EchoBillingTemplateVO; -import com.jsowell.pile.vo.web.MemberGroupVO; +import com.jsowell.pile.vo.web.*; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections4.CollectionUtils; import org.springframework.beans.BeanUtils; @@ -586,6 +583,8 @@ public class PileBillingTemplateServiceImpl implements PileBillingTemplateServic // 通过站点id清缓存 if (StringUtils.isNotBlank(stationId)) { redisKeyList.add(CacheConstants.QUERY_STATION_BILLING_TEMPLATE_LIST + stationId); + + // 删除充电桩缓存 } // 通过计费模板id 清缓存 if (templateId != null) {