mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-04-20 19:15:35 +08:00
新增 浙江省平台 查询站点状态接口
This commit is contained in:
@@ -44,7 +44,20 @@ public class ConnectorStatusInfo {
|
||||
private String LockStatus;
|
||||
|
||||
/**
|
||||
* 平台的
|
||||
* 平台
|
||||
*/
|
||||
@JSONField(name = "OperatorID")
|
||||
private String operatorId;
|
||||
|
||||
/**
|
||||
* 设备归属方运营商id
|
||||
*/
|
||||
@JSONField(name = "EquipmentOwnerID")
|
||||
private String equipmentOwnerId;
|
||||
|
||||
@JSONField(name = "StationID")
|
||||
private String stationId;
|
||||
|
||||
@JSONField(name = "EquipmentID")
|
||||
private String equipmentId;
|
||||
}
|
||||
|
||||
@@ -23,6 +23,29 @@ public class StationStatusInfo {
|
||||
@JsonProperty(value = "StationID")
|
||||
private String stationId;
|
||||
|
||||
/**
|
||||
* 平台运营商id
|
||||
*/
|
||||
@JsonProperty(value = "OperatorID")
|
||||
private String operatorId;
|
||||
|
||||
/**
|
||||
* 设备归属方id
|
||||
*/
|
||||
@JsonProperty(value = "EquipmentOwnerID")
|
||||
private String equipmentOwnerId;
|
||||
|
||||
/**
|
||||
* 站点状态
|
||||
* 0:未知
|
||||
* 1:建设中
|
||||
* 5:关闭下线
|
||||
* 6:维护中
|
||||
* 50:正常使用
|
||||
*/
|
||||
@JsonProperty(value = "StationStatus")
|
||||
private Integer stationStatus;
|
||||
|
||||
/**
|
||||
* 充电设备接口状态列表 Y
|
||||
* 所有充电设备接口的状态
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -7,6 +7,7 @@ import com.github.pagehelper.PageInfo;
|
||||
import com.google.common.collect.Lists;
|
||||
import com.google.common.collect.Maps;
|
||||
import com.jsowell.common.constant.Constants;
|
||||
import com.jsowell.common.core.domain.ykc.RealTimeMonitorData;
|
||||
import com.jsowell.common.enums.lianlian.StationPaymentEnum;
|
||||
import com.jsowell.common.enums.thirdparty.BusinessInformationExchangeEnum;
|
||||
import com.jsowell.common.enums.thirdparty.ThirdPartyOperatorIdEnum;
|
||||
@@ -29,6 +30,7 @@ import com.jsowell.pile.thirdparty.CommonParamsDTO;
|
||||
import com.jsowell.pile.thirdparty.EquipmentInfo;
|
||||
import com.jsowell.pile.util.MerchantUtils;
|
||||
import com.jsowell.pile.vo.ThirdPartySecretInfoVO;
|
||||
import com.jsowell.pile.vo.base.ConnectorInfoVO;
|
||||
import com.jsowell.pile.vo.base.MerchantInfoVO;
|
||||
import com.jsowell.pile.vo.base.ThirdPartyStationInfoVO;
|
||||
import com.jsowell.pile.vo.base.ThirdPartyStationRelationVO;
|
||||
@@ -38,6 +40,9 @@ import com.jsowell.pile.vo.web.PileConnectorInfoVO;
|
||||
import com.jsowell.pile.vo.web.PileMerchantInfoVO;
|
||||
import com.jsowell.pile.vo.web.PileStationVO;
|
||||
import com.jsowell.pile.vo.zdl.EquipBusinessPolicyVO;
|
||||
import com.jsowell.thirdparty.lianlian.domain.ConnectorChargeStatusInfo;
|
||||
import com.jsowell.thirdparty.lianlian.domain.ConnectorStatusInfo;
|
||||
import com.jsowell.thirdparty.lianlian.domain.StationStatusInfo;
|
||||
import com.jsowell.thirdparty.lianlian.vo.AccessTokenVO;
|
||||
import com.jsowell.thirdparty.lianlian.vo.QueryChargingStatusVO;
|
||||
import com.jsowell.thirdparty.platform.domain.*;
|
||||
@@ -58,6 +63,7 @@ import java.math.BigDecimal;
|
||||
import java.math.RoundingMode;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 浙江省平台
|
||||
@@ -468,6 +474,66 @@ public class ZheJiangPlatformServiceImpl implements ThirdPartyPlatformService {
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询站点状态
|
||||
* @param dto 查询站点信息dto
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public Map<String, String> queryStationStatus(QueryStationInfoDTO dto) {
|
||||
List<String> stationIds = dto.getStationIds();
|
||||
List<StationStatusInfo> StationStatusInfos = new ArrayList<>();
|
||||
List<Object> connectorStatusInfos = new ArrayList<>();
|
||||
ThirdPartySecretInfoVO thirdPartySecretInfoVO = thirdpartySecretInfoService.queryByThirdPlatformType(thirdPlatformType);
|
||||
if (thirdPartySecretInfoVO == null) {
|
||||
return null;
|
||||
}
|
||||
ConnectorStatusInfo connectorStatusInfo;
|
||||
for (String stationId : stationIds) {
|
||||
PileMerchantInfoVO pileMerchantInfoVO = pileMerchantInfoService.queryMerchantInfoByStationId(stationId);
|
||||
StationStatusInfo stationStatusInfo = new StationStatusInfo();
|
||||
stationStatusInfo.setStationId(stationId);
|
||||
stationStatusInfo.setOperatorId(Constants.OPERATORID_JIANG_SU);
|
||||
stationStatusInfo.setStationStatus(50);
|
||||
String equipmentOwnerID = ThirdPartyPlatformUtils.extractEquipmentOwnerID(pileMerchantInfoVO.getOrganizationCode());
|
||||
stationStatusInfo.setEquipmentOwnerId(equipmentOwnerID);
|
||||
// 根据站点id查询
|
||||
List<ConnectorInfoVO> list = pileConnectorInfoService.getConnectorListForLianLian(Long.parseLong(stationId));
|
||||
for (ConnectorInfoVO connectorInfoVO : list) {
|
||||
connectorStatusInfo = new ConnectorStatusInfo();
|
||||
String connectorStatus = connectorInfoVO.getConnectorStatus();
|
||||
|
||||
connectorStatusInfo.setStationId(stationId);
|
||||
connectorStatusInfo.setConnectorID(connectorInfoVO.getPileConnectorCode());
|
||||
connectorStatusInfo.setEquipmentOwnerId(equipmentOwnerID);
|
||||
connectorStatusInfo.setOperatorId(Constants.OPERATORID_JIANG_SU);
|
||||
connectorStatusInfo.setEquipmentId(connectorInfoVO.getPileSn());
|
||||
connectorStatusInfo.setStatus(Integer.parseInt(connectorStatus));
|
||||
|
||||
connectorStatusInfos.add(connectorStatusInfo);
|
||||
}
|
||||
stationStatusInfo.setConnectorStatusInfos(connectorStatusInfos);
|
||||
StationStatusInfos.add(stationStatusInfo);
|
||||
}
|
||||
// 将 StationStatusInfos 分页
|
||||
int pageNum = 1;
|
||||
int pageSize = 10;
|
||||
List<StationStatusInfo> collect = StationStatusInfos.stream()
|
||||
.skip((pageNum - 1) * pageSize)
|
||||
.limit(pageSize)
|
||||
.collect(Collectors.toList());
|
||||
|
||||
// int total = StationStatusInfos.size();
|
||||
// int pages = PageUtil.totalPage(total, pageSize);
|
||||
|
||||
Map<String, Object> map = new LinkedHashMap<>();
|
||||
// map.put("Total", total);
|
||||
map.put("StationStatusInfos", collect);
|
||||
|
||||
Map<String, String> resultMap = ThirdPartyPlatformUtils.generateResultMap(map, thirdPartySecretInfoVO);
|
||||
return resultMap;
|
||||
}
|
||||
|
||||
/**
|
||||
* 推送充电状态 notification_equip_charge_status
|
||||
* 推送充电状态信息 supervise_notification_equip_charge_status
|
||||
|
||||
@@ -2,6 +2,8 @@ package com.jsowell.thirdparty.platform.util;
|
||||
|
||||
import com.alibaba.fastjson2.JSON;
|
||||
import com.google.common.collect.Maps;
|
||||
import com.jsowell.common.constant.Constants;
|
||||
import com.jsowell.common.util.StringUtils;
|
||||
import com.jsowell.pile.domain.ThirdPartyPlatformConfig;
|
||||
import com.jsowell.pile.vo.ThirdPartySecretInfoVO;
|
||||
import org.springframework.stereotype.Component;
|
||||
@@ -68,4 +70,18 @@ public class ThirdPartyPlatformUtils {
|
||||
return null; // 没有找到匹配项
|
||||
}
|
||||
|
||||
/**
|
||||
* 从给定的组织机构代码中提取设备归属方ID
|
||||
* @param organizationCode
|
||||
* @return
|
||||
*/
|
||||
public static String extractEquipmentOwnerID(String organizationCode) {
|
||||
if (StringUtils.isNotBlank(organizationCode) && organizationCode.length() == 18) {
|
||||
String equipmentOwnerId = StringUtils.substring(organizationCode, organizationCode.length() - 10, organizationCode.length() - 1);
|
||||
return equipmentOwnerId;
|
||||
}else {
|
||||
return Constants.OPERATORID_JIANG_SU;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user