新增 联联平台获取站点信息接口

This commit is contained in:
Lemon
2023-04-10 14:25:29 +08:00
parent f127f97623
commit f551363858
10 changed files with 105 additions and 27 deletions

View File

@@ -1,9 +1,15 @@
package com.jsowell.thirdparty.service.impl;
import com.github.pagehelper.PageInfo;
import com.google.common.collect.Lists;
import com.jsowell.common.util.DateUtils;
import com.jsowell.common.util.PageUtils;
import com.jsowell.pile.domain.PileBasicInfo;
import com.jsowell.pile.domain.PileStationInfo;
import com.jsowell.pile.service.IPileMerchantInfoService;
import com.jsowell.pile.service.IPileStationInfoService;
import com.jsowell.pile.service.*;
import com.jsowell.pile.vo.base.MerchantInfoVO;
import com.jsowell.pile.vo.web.PileModelInfoVO;
import com.jsowell.thirdparty.domain.EquipmentInfo;
import com.jsowell.thirdparty.domain.OperatorInfo;
import com.jsowell.thirdparty.domain.StationInfo;
import com.jsowell.thirdparty.dto.QueryStationInfoDTO;
@@ -15,6 +21,7 @@ import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@Service
public class LianLianServiceImpl implements LianLianService {
@@ -25,6 +32,15 @@ public class LianLianServiceImpl implements LianLianService {
@Autowired
private IPileStationInfoService pileStationInfoService;
@Autowired
private IPileBasicInfoService pileBasicInfoService;
@Autowired
private IPileModelInfoService pileModelInfoService;
@Autowired
private IPileConnectorInfoService pileConnectorInfoService;
@Override
public void pushMerchantInfo(Long merchantId) {
@@ -52,17 +68,18 @@ public class LianLianServiceImpl implements LianLianService {
int pageNo = dto.getPageNo() == 0 ? 1 : dto.getPageNo();
int pageSize = dto.getPageSize() == 0 ? 10 : dto.getPageSize();
List<PileStationInfo> stationInfos = pileStationInfoService.getStationInfoForLianLian(pageNo, pageSize);
PageUtils.startPage(pageNo, pageSize);
List<PileStationInfo> stationInfos = pileStationInfoService.getStationInfoForLianLian();
if (CollectionUtils.isEmpty(stationInfos)) {
// 未查到数据
return null;
}
StationInfo stationInfo = null;
for (PileStationInfo pileStationInfo : stationInfos) {
stationInfo = new StationInfo();
PageInfo<PileStationInfo> pageInfo = new PageInfo<>(stationInfos);
for (PileStationInfo pileStationInfo : pageInfo.getList()) {
StationInfo stationInfo = new StationInfo();
stationInfo.setStationID(String.valueOf(pileStationInfo.getId()));
MerchantInfoVO merchantInfo = pileMerchantInfoService.getMerchantInfo(String.valueOf(pileStationInfo.getMerchantId()));
stationInfo.setOperatorID(merchantInfo.getOrganizationCode()); // 组织构代码
stationInfo.setOperatorID(merchantInfo.getOrganizationCode()); // 组织构代码
stationInfo.setEquipmentOwnerID(String.valueOf(pileStationInfo.getMerchantId()));
stationInfo.setStationName(pileStationInfo.getStationName());
stationInfo.setIsAloneApply(Integer.valueOf(pileStationInfo.getAloneApply()));
@@ -83,7 +100,10 @@ public class LianLianServiceImpl implements LianLianService {
stationInfo.setParkFree(Integer.valueOf(pileStationInfo.getParkFree()));
stationInfo.setPayment(pileStationInfo.getPayment());
stationInfo.setSupportOrder(Integer.valueOf(pileStationInfo.getSupportOrder()));
// stationInfo.setPileInfos(); // 充电设备信息列表
List<EquipmentInfo> pileList = getPileList(pileStationInfo);
stationInfo.setEquipmentInfos(pileList); // 充电设备信息列表
// stationInfo.setParkFeeType(pileStationInfo); // 停车收费类型
stationInfo.setToiletFlag(Integer.valueOf(pileStationInfo.getToiletFlag()));
stationInfo.setStoreFlag(Integer.valueOf(pileStationInfo.getStoreFlag()));
@@ -100,5 +120,37 @@ public class LianLianServiceImpl implements LianLianService {
return resultList;
}
/**
* 获取桩列表信息
* @param pileStationInfo
* @return
*/
private List<EquipmentInfo> getPileList(PileStationInfo pileStationInfo){
List<EquipmentInfo> resultList = new ArrayList<>();
// 通过站点id查询桩基本信息
List<PileBasicInfo> list = pileBasicInfoService.getPileListByStationId(String.valueOf(pileStationInfo.getId()));
MerchantInfoVO merchantInfo = pileMerchantInfoService.getMerchantInfo(String.valueOf(pileStationInfo.getMerchantId()));
// 封装成联联平台对象
for (PileBasicInfo pileBasicInfo : list) {
EquipmentInfo equipmentInfo = new EquipmentInfo();
String pileSn = pileBasicInfo.getSn();
equipmentInfo.setEquipmentID(pileSn);
equipmentInfo.setManufacturerID(merchantInfo.getOrganizationCode());
equipmentInfo.setConstructionTime(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, pileBasicInfo.getCreateTime()));
PileModelInfoVO modelInfo = pileModelInfoService.getPileModelInfoByPileSn(pileSn);
equipmentInfo.setEquipmentType(Integer.valueOf(modelInfo.getSpeedType()));
// Map<String, String> pileStatus = pileConnectorInfoService.getPileStatus(Lists.newArrayList(pileBasicInfo.getSn()));
equipmentInfo.setEquipmentStatus(50);
equipmentInfo.setEquipmentPower(new BigDecimal(modelInfo.getRatedPower()));
equipmentInfo.setNewNationalStandard(1);
// equipmentInfo.setConnectorInfos();
equipmentInfo.setVinFlag(1);
resultList.add(equipmentInfo);
}
return resultList;
}
}