mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-04-21 03:25:12 +08:00
update 订单相关修改
This commit is contained in:
@@ -105,6 +105,14 @@ public interface PileBillingTemplateMapper {
|
||||
List<BillingTemplateVO> queryStationBillingTemplateList(@Param("stationId") String stationId,
|
||||
@Param("stationDeptIds") List<String> stationDeptIds);
|
||||
|
||||
/**
|
||||
* 根据站点id查询站点计费模板列表
|
||||
* 根据发布时间倒序,最新一条就是目前正在使用的计费模板
|
||||
* @param stationId 站点id
|
||||
* @return
|
||||
*/
|
||||
List<BillingTemplateVO> queryStationBillingTemplateListForUniApp(@Param("stationId") String stationId);
|
||||
|
||||
/**
|
||||
* 通过桩sn号查询计费模板
|
||||
*
|
||||
|
||||
@@ -89,6 +89,14 @@ public interface IPileBillingTemplateService {
|
||||
*/
|
||||
List<BillingTemplateVO> queryStationBillingTemplateList(String stationId);
|
||||
|
||||
/**
|
||||
* 查询站点计费模板
|
||||
*
|
||||
* @param stationId 站点id
|
||||
* @return
|
||||
*/
|
||||
List<BillingTemplateVO> queryStationBillingTemplateListForUniApp(String stationId);
|
||||
|
||||
/**
|
||||
* 查询正在使用中的计费模板
|
||||
* @param stationId 站点id
|
||||
|
||||
@@ -314,7 +314,7 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService {
|
||||
continue;
|
||||
}
|
||||
// 获取订单的实时检测数据,有实时数据说明充电了,没有实时数据说明桩确实没有充电
|
||||
List<RealTimeMonitorData> chargingRealTimeData = getChargingRealTimeData(orderCode);
|
||||
List<RealTimeMonitorData> chargingRealTimeData = getChargingRealTimeData(orderBasicInfo.getTransactionCode());
|
||||
if (CollectionUtils.isEmpty(chargingRealTimeData)) {
|
||||
// 充电桩在线,并且没有0x13实时数据,则执行结算退款操作
|
||||
chargingPileFailedToStart(orderCode, "充电桩启动失败,执行退款处理");
|
||||
@@ -690,17 +690,18 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService {
|
||||
* 根据订单编号获取充电实时数据 时间倒序
|
||||
* 订单只有在充电中,才会把实时数据保存到redis
|
||||
*
|
||||
* @param orderCode 订单编号
|
||||
* @param transactionCode 订单编号
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<RealTimeMonitorData> getChargingRealTimeData(String orderCode) {
|
||||
public List<RealTimeMonitorData> getChargingRealTimeData(String transactionCode) {
|
||||
List<RealTimeMonitorData> resultList = Lists.newArrayList();
|
||||
if (StringUtils.isBlank(orderCode)) {
|
||||
if (StringUtils.isBlank(transactionCode)) {
|
||||
return resultList;
|
||||
}
|
||||
String pileConnectorCode = orderCode.substring(0, 16);
|
||||
String redisKey = CacheConstants.PILE_REAL_TIME_MONITOR_DATA + pileConnectorCode + "_" + orderCode;
|
||||
logger.info("transactionCode:{}", transactionCode);
|
||||
String pileConnectorCode = transactionCode.substring(0, 16);
|
||||
String redisKey = CacheConstants.PILE_REAL_TIME_MONITOR_DATA + pileConnectorCode + "_" + transactionCode;
|
||||
// 拿到所有数据
|
||||
Map<Object, Object> map = redisCache.hmget(redisKey);
|
||||
if (map != null && !map.isEmpty()) {
|
||||
|
||||
@@ -457,7 +457,7 @@ public class PileBasicInfoServiceImpl implements IPileBasicInfoService {
|
||||
@Override
|
||||
public void saveRealTimeMonitorData2Redis(RealTimeMonitorData realTimeMonitorData) {
|
||||
// 保存到redis
|
||||
String redisKey = CacheConstants.PILE_REAL_TIME_MONITOR_DATA + realTimeMonitorData.getPileConnectorCode() + "_" + realTimeMonitorData.getConnectorCode();
|
||||
String redisKey = CacheConstants.PILE_REAL_TIME_MONITOR_DATA + realTimeMonitorData.getPileConnectorCode() + "_" + realTimeMonitorData.getTransactionCode();
|
||||
|
||||
// 设置接收到实时数据的时间
|
||||
Date now = new Date();
|
||||
|
||||
@@ -359,6 +359,11 @@ public class PileBillingTemplateServiceImpl implements IPileBillingTemplateServi
|
||||
return pileBillingTemplateMapper.queryStationBillingTemplateList(stationId, authorizedMap.getStationDeptIds());
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<BillingTemplateVO> queryStationBillingTemplateListForUniApp(String stationId) {
|
||||
return pileBillingTemplateMapper.queryStationBillingTemplateListForUniApp(stationId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询正在使用中的计费模板
|
||||
* 1 发布时间不为null
|
||||
@@ -368,7 +373,7 @@ public class PileBillingTemplateServiceImpl implements IPileBillingTemplateServi
|
||||
*/
|
||||
@Override
|
||||
public BillingTemplateVO queryUsedBillingTemplate(String stationId) {
|
||||
List<BillingTemplateVO> list = queryStationBillingTemplateList(stationId);
|
||||
List<BillingTemplateVO> list = queryStationBillingTemplateListForUniApp(stationId);
|
||||
Optional<BillingTemplateVO> max = list.stream()
|
||||
.filter(x -> StringUtils.isNotBlank(x.getPublishTime()))
|
||||
.max(Comparator.comparing(BillingTemplateVO::getPublishTime));
|
||||
|
||||
@@ -412,8 +412,10 @@ public class PileConnectorInfoServiceImpl implements IPileConnectorInfoService {
|
||||
// 获取枪口的日志记录
|
||||
for (PileConnectorInfoVO pileConnectorInfoVO : pileConnectorInfoList) {
|
||||
// 从redis中获取实时数据信息
|
||||
if (StringUtils.isNotBlank(pileConnectorInfoVO.getOrderCode())) {
|
||||
List<RealTimeMonitorData> chargingRealTimeDataList = orderBasicInfoService.getChargingRealTimeData(pileConnectorInfoVO.getOrderCode());
|
||||
String orderCode = pileConnectorInfoVO.getOrderCode();
|
||||
if (StringUtils.isNotBlank(orderCode)) {
|
||||
OrderBasicInfo orderBasicInfo = orderBasicInfoService.getOrderInfoByOrderCode(orderCode);
|
||||
List<RealTimeMonitorData> chargingRealTimeDataList = orderBasicInfoService.getChargingRealTimeData(orderBasicInfo.getTransactionCode());
|
||||
RealTimeMonitorData realTimeMonitorData = chargingRealTimeDataList.get(0);
|
||||
BigDecimal outputVoltage = new BigDecimal(realTimeMonitorData.getOutputVoltage());
|
||||
pileConnectorInfoVO.setVoltage(outputVoltage);
|
||||
|
||||
Reference in New Issue
Block a user