新增 青海平台查询业务策略信息结果 接口

This commit is contained in:
Lemon
2024-04-17 09:19:12 +08:00
parent 5eccd5ead8
commit d3ceb73a01

View File

@@ -19,15 +19,18 @@ import com.jsowell.common.util.StringUtils;
import com.jsowell.pile.domain.*;
import com.jsowell.pile.dto.QueryConnectorListDTO;
import com.jsowell.pile.dto.QueryEquipChargeStatusDTO;
import com.jsowell.pile.dto.QueryStartChargeDTO;
import com.jsowell.pile.dto.QueryStationInfoDTO;
import com.jsowell.pile.service.*;
import com.jsowell.pile.thirdparty.ZDLEquipmentInfo;
import com.jsowell.pile.thirdparty.ZDLStationInfo;
import com.jsowell.pile.vo.base.ThirdPartyStationInfoVO;
import com.jsowell.pile.vo.base.ThirdPartyStationRelationVO;
import com.jsowell.pile.vo.uniapp.BillingPriceVO;
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.ConnectorStatusInfo;
import com.jsowell.thirdparty.lianlian.vo.QueryChargingStatusVO;
import com.jsowell.thirdparty.platform.ThirdPartyPlatformService;
@@ -77,6 +80,9 @@ public class QingHaiPlatformServiceImpl implements ThirdPartyPlatformService {
@Autowired
private PileConnectorInfoService pileConnectorInfoService;
@Autowired
private PileBillingTemplateService pileBillingTemplateService;
@Autowired
private PileMerchantInfoService pileMerchantInfoService;
@@ -320,6 +326,7 @@ public class QingHaiPlatformServiceImpl implements ThirdPartyPlatformService {
.ConnectorPowerInfo connectorPowerInfo = null;
for (String stationId : stationIds) {
BigDecimal stationPower = BigDecimal.ZERO;
supStationPowerInfo = new SupStationPowerInfo();
supStationPowerInfo.setOperatorID(Constants.OPERATORID_JIANG_SU);
supStationPowerInfo.setStationId(stationId);
@@ -408,6 +415,67 @@ public class QingHaiPlatformServiceImpl implements ThirdPartyPlatformService {
}
/**
* 查询业务策略信息结果 query_equip_business_policy
* @param dto 请求启动充电DTO
* @return
*/
@Override
public Map<String, String> queryEquipBusinessPolicy(QueryStartChargeDTO dto) {
List<EquipBusinessPolicyVO.PolicyInfo> policyInfoList = new ArrayList<>();
String pileConnectorCode = dto.getConnectorID();
ThirdPartyPlatformConfig configInfo = thirdPartyPlatformConfigService.getInfoByOperatorId(dto.getOperatorId());
if (configInfo == null) {
return null;
}
// 截取桩号
String pileSn = StringUtils.substring(pileConnectorCode, 0, 14);
// 查询该桩的站点id
PileBasicInfo pileBasicInfo = pileBasicInfoService.selectPileBasicInfoBySN(pileSn);
// 根据桩号查询正在使用的计费模板
List<BillingPriceVO> billingPriceVOList = pileBillingTemplateService.queryBillingPrice(String.valueOf(pileBasicInfo.getStationId()));
if (CollectionUtils.isEmpty(billingPriceVOList)) {
return null;
}
EquipBusinessPolicyVO.PolicyInfo policyInfo = null;
for (BillingPriceVO billingPriceVO : billingPriceVOList) {
// 将时段开始时间、电费、服务费信息进行封装
policyInfo = new EquipBusinessPolicyVO.PolicyInfo();
String startTime = billingPriceVO.getStartTime() + ":00"; // 00:00:00 格式
// 需要将中间的冒号去掉,改为 000000 格式
String replace = StringUtils.replace(startTime, ":", "");
policyInfo.setStartTime(replace);
policyInfo.setElecPrice(new BigDecimal(billingPriceVO.getElectricityPrice()).setScale(4, BigDecimal.ROUND_HALF_UP));
policyInfo.setServicePrice(new BigDecimal(billingPriceVO.getServicePrice()).setScale(4, BigDecimal.ROUND_HALF_UP));
policyInfoList.add(policyInfo);
}
// 拼装所需要的数据格式
// EquipBusinessPolicyVO vo = EquipBusinessPolicyVO.builder()
// .equipBizSeq(dto.getEquipBizSeq())
// .connectorId(dto.getConnectorID())
// .succStat(0)
// .failReason(0)
// .sumPeriod(policyInfoList.size())
// .policyInfos(policyInfoList)
//
// .build();
JSONObject jsonObject = new JSONObject();
jsonObject.put("EquipBizSeq", dto.getEquipBizSeq());
jsonObject.put("ConnectorID", pileConnectorCode);
jsonObject.put("SuccStat", Constants.zero);
jsonObject.put("FailReason", Constants.zero);
jsonObject.put("SumPeriod", policyInfoList.size());
jsonObject.put("PolicyInfos", policyInfoList);
// 加密
Map<String, String> resultMap = getResultMap(jsonObject);
return resultMap;
}
// 获取青海平台配置密钥信息
private ThirdPartyStationRelationVO getQingHaiSettingInfo() {
// 通过站点id查询相关配置信息