| | |
| | | List<StationInfo> StationInfos = new ArrayList<>(); |
| | | for (Site datum : sites) { |
| | | StationInfo stationInfo = new StationInfo(); |
| | | stationInfo.setAreaCodeCountryside(datum.getAreaCodeCountryside()); |
| | | stationInfo.setStationClassification(datum.getStationClassification()); |
| | | stationInfo.setGeneralApplicationType(datum.getGeneralApplicationType()); |
| | | if (org.springframework.util.StringUtils.hasLength(datum.getSwapMatchCars())){ |
| | | stationInfo.setSwapMatchCars(Arrays.asList(datum.getSwapMatchCars().split(","))); |
| | | } |
| | | stationInfo.setBusineHours(datum.getStartServiceTime()); |
| | | stationInfo.setRoundTheClock(datum.getRoundTheClock()); |
| | | stationInfo.setParkType(datum.getParkType()); |
| | | stationInfo.setElectricityFee("{"+datum.getElectricityFee()+"}"); |
| | | stationInfo.setServiceFee("{"+datum.getServiceFee()+"}"); |
| | | stationInfo.setParkFee("{\"rules\":"+datum.getParkFee()+","+"\"freeDuration\":"+datum.getParkFeeFree()+"}"); |
| | | stationInfo.setElectricityType(datum.getElectricityType()); |
| | | stationInfo.setBusinessExpandType(datum.getBusinessExpandType()); |
| | | stationInfo.setCapacity(datum.getCapacity()); |
| | | stationInfo.setRatedPower(datum.getRatedPower()); |
| | | stationInfo.setPeriodFee(datum.getPeriodFee()); |
| | | stationInfo.setOfficialRunTime(datum.getOfficialRunTime()); |
| | | stationInfo.setStationOrientation(datum.getStationOrientation()); |
| | | stationInfo.setStationArea(datum.getStationArea()); |
| | | stationInfo.setHavePerson(datum.getHavePerson()); |
| | | stationInfo.setVideoMonitor(datum.getVideoMonitor()); |
| | | if (StringUtils.isNotEmpty(datum.getSupportingFacilities())){ |
| | | String[] split = datum.getSupportingFacilities().split(","); |
| | | List<Integer> collect = Arrays.stream(split).map(Integer::parseInt).collect(Collectors.toList()); |
| | | stationInfo.setSupportingFacilities(collect); |
| | | } |
| | | stationInfo.setPrinterFlag(datum.getPrinterFlag()); |
| | | stationInfo.setBarrierFlag(datum.getBarrierFlag()); |
| | | stationInfo.setParkingLockFlag(datum.getParkingLockFlag()); |
| | | stationInfo.setEquipmentOwnerName(datum.getEquipmentOwnerName()); |
| | | stationInfo.setResidentNo(datum.getResidentNo()); |
| | | stationInfo.setSupplyType(datum.getSupplyType()); |
| | | stationInfo.setWattHourMeterNo(datum.getWattHourMeterNo()); |
| | | BigDecimal forwardPower = datum.getForwardPower(); |
| | | if (forwardPower!=null){ |
| | | stationInfo.setForwardPower(forwardPower.setScale(4, BigDecimal.ROUND_HALF_UP).toString()); |
| | | } |
| | | stationInfo.setRecordUniqueNo(datum.getRecordUniqueNo()); |
| | | stationInfo.setStationID(datum.getId().toString()); |
| | | stationInfo.setOperatorID("906171535"); |
| | | stationInfo.setEquipmentOwnerID("906171535"); |
| | |
| | | stationInfo.setPictures(StringUtils.isNotEmpty(datum.getImgUrl()) ? Arrays.asList(datum.getImgUrl().split(",")) : new ArrayList<>()); |
| | | stationInfo.setSiteGuide(datum.getGuide()); |
| | | stationInfo.setMatchCars(datum.getVehicleDescription()); |
| | | stationInfo.setBusineHours(datum.getStartServiceTime() + "-" + datum.getEndServiceTime()); |
| | | // stationInfo.setBusineHours(datum.getStartServiceTime() + "-" + datum.getEndServiceTime()); |
| | | stationInfo.setElectricityFee(datum.getRateDescription()); |
| | | //添加停车费信息 |
| | | Optional<TParkingLot> first = parkingLots.stream().filter(s -> s.getSiteId().equals(datum.getId())).findFirst(); |
| | |
| | | TParkingLot tParkingLot = first.get(); |
| | | buildPlaceHolder(tParkingLot, stationInfo); |
| | | } |
| | | |
| | | //构建充电设备信息数据 |
| | | stationInfo.setEquipmentInfos(buildEquipmentInfo(datum.getId(), tChargingPiles, chargingGunList)); |
| | | StationInfos.add(stationInfo); |
| | |
| | | equipmentInfo.setManufacturerID(tChargingPile.getManufacturerCode()); |
| | | equipmentInfo.setManufacturerName(tChargingPile.getManufacturer()); |
| | | equipmentInfo.setEquipmentModel(tChargingPile.getEquipmentType()); |
| | | equipmentInfo.setEquipmentUniqueNumber(tChargingPile.getEquipmentUniqueNumber()); |
| | | equipmentInfo.setEquipmentClassification(tChargingPile.getEquipmentClassification()); |
| | | if(null != tChargingPile.getProductionDate()){ |
| | | equipmentInfo.setProductionDate(tChargingPile.getProductionDate().format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))); |
| | | } |
| | |
| | | break; |
| | | case 4: |
| | | equipmentInfo.setEquipmentType(EquipmentTypeEnum.WIRELESS_DEVICE.getType()); |
| | | break; |
| | | case 5: |
| | | equipmentInfo.setEquipmentType(EquipmentTypeEnum.ORDER.getType()); |
| | | break; |
| | | case 6: |
| | | equipmentInfo.setEquipmentType(EquipmentTypeEnum.V2G.getType()); |
| | | break; |
| | | } |
| | | |
| | |
| | | ConnectorInfo connectorInfo = new ConnectorInfo(); |
| | | connectorInfo.setConnectorID(chargingGun.getFullNumber()); |
| | | connectorInfo.setConnectorName(chargingGun.getName()); |
| | | connectorInfo.setEquipmentClassification(chargingGun.getEquipmentClassification()); |
| | | connectorInfo.setConstantVoltageLowerLimits(chargingGun.getConstantVoltageLowerLimits()); |
| | | connectorInfo.setConstantVoltageUpperLimits(chargingGun.getConstantVoltageUpperLimits()); |
| | | connectorInfo.setConstantCurrentLowerLimits(chargingGun.getConstantCurrentLowerLimits()); |
| | | connectorInfo.setConstantCurrentUpperLimits(chargingGun.getConstantCurrentUpperLimits()); |
| | | connectorInfo.setAuxPower(chargingGun.getAuxPower()); |
| | | connectorInfo.setOpreateStatus(chargingGun.getOpreateStatus()); |
| | | connectorInfo.setOpreateHours(chargingGun.getOpreateHours()); |
| | | switch (chargingGun.getType()){ |
| | | case 0: |
| | | connectorInfo.setConnectorType(ConnectorTypeEnum.OTHER.getType()); |
| | |
| | | connectorInfo.setConnectorType(ConnectorTypeEnum.WIRELESS_CHARGING_STAND.getType()); |
| | | break; |
| | | } |
| | | connectorInfo.setVoltageUpperLimits(chargingGun.getUpperRatedVoltage().intValue()); |
| | | connectorInfo.setVoltageLowerLimits(chargingGun.getLowerLimitOfRatedVoltage().intValue()); |
| | | connectorInfo.setCurrent(chargingGun.getRatedCurrent().intValue()); |
| | | connectorInfo.setPower(chargingGun.getRatedPower()); |
| | | connectorInfo.setParkNo(chargingGun.getParkingNumber()); |
| | |
| | | |
| | | |
| | | /*********************数据监管平台接口*********************/ |
| | | |
| | | |
| | | /** |
| | | * 查询运营商信息 |
| | | * @param baseRequest |
| | |
| | | pageSize = 50; |
| | | } |
| | | String operatorTel = systemConfigurationClient.getServerPhone().getData(); |
| | | SuperviseQueryOperatorInfoResultPage superviseQueryOperatorInfoResultPage = new SuperviseQueryOperatorInfoResultPage(); |
| | | superviseQueryOperatorInfoResultPage.setPageNo(1); |
| | | superviseQueryOperatorInfoResultPage.setPageCount(1); |
| | | superviseQueryOperatorInfoResultPage.setItemSize(1); |
| | | |
| | | SuperviseQueryOperatorInfoResult superviseQueryOperatorInfoResult = new SuperviseQueryOperatorInfoResult(); |
| | | superviseQueryOperatorInfoResult.setOperatorID("906171535"); |
| | | superviseQueryOperatorInfoResult.setOperatorUSCID("91510903906171535D"); |
| | | superviseQueryOperatorInfoResult.setOperatorName("四川明星新能源科技有限公司"); |
| | | superviseQueryOperatorInfoResult.setOperatorTel1(operatorTel); |
| | | |
| | | List<SuperviseQueryOperatorInfoResult> superviseQueryOperatorInfoResults = new ArrayList<>(); |
| | | superviseQueryOperatorInfoResults.add(superviseQueryOperatorInfoResult); |
| | | // 将superviseQueryOperatorInfoResults转化为json数组 |
| | | superviseQueryOperatorInfoResultPage.setOperatorInfos(superviseQueryOperatorInfoResults); |
| | | String jsonString = JacksonUtils.toJson(superviseQueryOperatorInfoResultPage); |
| | | //参数加密 |
| | | String jsonString = JacksonUtils.toJson(superviseQueryOperatorInfoResult); |
| | | log.info("监管平台查询充电站信息响应Data:" + jsonString); |
| | | String encrypt = AESUtil.encrypt(jsonString, operator.getOurDataSecret(), operator.getOurDataSecretIv()); |
| | | baseResult.setData(encrypt); |
| | |
| | | log.info("监管平台查询充电站信息响应参数:" + JacksonUtils.toJson(baseResult)); |
| | | return baseResult; |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | // /** |
| | | // * 查询充电站信息 |
| | | // * @param baseRequest |
| | | // * @param request |
| | | // * @return |
| | | // */ |
| | | // @PostMapping("/supervise_query_stations_info") |
| | | // public BaseResult superviseQueryStationsInfo(@RequestBody BaseRequest baseRequest, HttpServletRequest request){ |
| | | // log.info("监管平台查询充电站信息请求参数:" + JacksonUtils.toJson(baseRequest)); |
| | | // //校验token和签名 |
| | | // BaseResult baseResult = requestCheck(true, baseRequest, request); |
| | | // if(0 != baseResult.getRet()){ |
| | | // log.info("监管平台查询充电站信息响应Data:"); |
| | | // baseResult.setData(""); |
| | | // baseResult.setSig(TCECUtil.ourBuildSign(baseResult)); |
| | | // log.info("监管平台查询充电站信息响应参数:" + JacksonUtils.toJson(baseResult)); |
| | | // return baseResult; |
| | | // } |
| | | // Operator operator = baseResult.getOperator(); |
| | | // //解密参数 |
| | | // String decrypt = AESUtil.decrypt(baseRequest.getData(), operator.getOurDataSecret(), operator.getOurDataSecretIv()); |
| | | // log.info("监管平台查询充电站信息请求Data:" + decrypt); |
| | | // QueryStationsInfo queryStationsInfo = JSON.parseObject(decrypt, QueryStationsInfo.class); |
| | | // Integer pageNo = queryStationsInfo.getPageNo(); |
| | | // Integer pageSize = queryStationsInfo.getPageSize(); |
| | | // List<String> stationIDs = queryStationsInfo.getStationIDs(); |
| | | // if(null == pageNo){ |
| | | // pageNo = 1; |
| | | // } |
| | | // if(null == pageSize){ |
| | | // pageSize = 50; |
| | | // } |
| | | // PageInfo<Site> siteListPaging = siteClient.getSiteListPaging(pageNo, pageSize, stationIDs); |
| | | // List<TParkingLot> parkingLots = parkingLotClient.getAllParkingLot().getData(); |
| | | // QueryStationsInfoResult queryStationsInfoResult = new QueryStationsInfoResult(); |
| | | // queryStationsInfoResult.setPageNo(pageNo); |
| | | // queryStationsInfoResult.setPageCount((0 == (siteListPaging.getTotal() % pageSize) ? 0 : 1) + Double.valueOf(siteListPaging.getTotal() / pageSize).intValue()); |
| | | // queryStationsInfoResult.setItemSize(Long.valueOf(siteListPaging.getTotal()).intValue()); |
| | | // queryStationsInfoResult.setStationInfos(superviseBuildSite(parkingLots, siteListPaging.getRecords())); |
| | | // //参数加密 |
| | | // String jsonString = JacksonUtils.toJson(queryStationsInfoResult); |
| | | // log.info("监管平台查询充电站信息响应Data:" + jsonString); |
| | | // String encrypt = AESUtil.encrypt(jsonString, operator.getOurDataSecret(), operator.getOurDataSecretIv()); |
| | | // baseResult.setData(encrypt); |
| | | // baseResult.setSig(TCECUtil.ourBuildSign(baseResult)); |
| | | // log.info("监管平台查询充电站信息响应参数:" + JacksonUtils.toJson(baseResult)); |
| | | // return baseResult; |
| | | // } |
| | | /** |
| | | * 查询充电站信息 |
| | | * @param baseRequest |
| | | * @param request |
| | | * @return |
| | | */ |
| | | @PostMapping("/supervise_query_stations_info") |
| | | public BaseResult superviseQueryStationsInfo(@RequestBody BaseRequest baseRequest, HttpServletRequest request){ |
| | | log.info("监管平台查询充电站信息请求参数:" + JacksonUtils.toJson(baseRequest)); |
| | | //校验token和签名 |
| | | BaseResult baseResult = requestCheck(true, baseRequest, request); |
| | | if(0 != baseResult.getRet()){ |
| | | log.info("监管平台查询充电站信息响应Data:"); |
| | | baseResult.setData(""); |
| | | baseResult.setSig(TCECUtil.ourBuildSign(baseResult)); |
| | | log.info("监管平台查询充电站信息响应参数:" + JacksonUtils.toJson(baseResult)); |
| | | return baseResult; |
| | | } |
| | | Operator operator = baseResult.getOperator(); |
| | | //解密参数 |
| | | String decrypt = AESUtil.decrypt(baseRequest.getData(), operator.getOurDataSecret(), operator.getOurDataSecretIv()); |
| | | log.info("监管平台查询充电站信息请求Data:" + decrypt); |
| | | QueryStationsInfo queryStationsInfo = JSON.parseObject(decrypt, QueryStationsInfo.class); |
| | | Integer pageNo = queryStationsInfo.getPageNo(); |
| | | Integer pageSize = queryStationsInfo.getPageSize(); |
| | | List<String> stationIDs = queryStationsInfo.getStationIDs(); |
| | | if(null == pageNo){ |
| | | pageNo = 1; |
| | | } |
| | | if(null == pageSize){ |
| | | pageSize = 50; |
| | | } |
| | | PageInfo<Site> siteListPaging = siteClient.getSiteListPaging(pageNo, pageSize, stationIDs); |
| | | List<TParkingLot> parkingLots = parkingLotClient.getAllParkingLot().getData(); |
| | | QueryStationsInfoResult queryStationsInfoResult = new QueryStationsInfoResult(); |
| | | queryStationsInfoResult.setPageNo(pageNo); |
| | | queryStationsInfoResult.setPageCount((0 == (siteListPaging.getTotal() % pageSize) ? 0 : 1) + Double.valueOf(siteListPaging.getTotal() / pageSize).intValue()); |
| | | queryStationsInfoResult.setItemSize(Long.valueOf(siteListPaging.getTotal()).intValue()); |
| | | queryStationsInfoResult.setStationInfos(buildSite(parkingLots, siteListPaging.getRecords())); |
| | | //参数加密 |
| | | String jsonString = JacksonUtils.toJson(queryStationsInfoResult); |
| | | log.info("监管平台查询充电站信息响应Data:" + jsonString); |
| | | String encrypt = AESUtil.encrypt(jsonString, operator.getOurDataSecret(), operator.getOurDataSecretIv()); |
| | | baseResult.setData(encrypt); |
| | | baseResult.setSig(TCECUtil.ourBuildSign(baseResult)); |
| | | log.info("监管平台查询充电站信息响应参数:" + JacksonUtils.toJson(baseResult)); |
| | | return baseResult; |
| | | } |
| | | /** |
| | | * 查询充电站信息 |
| | | * @param baseRequest |
| | | * @param request |
| | | * @return |
| | | */ |
| | | @PostMapping("/supervise_notification_operation_stats_info") |
| | | public BaseResult superviseNotificationOperationStatsInfo(@RequestBody BaseRequest baseRequest, HttpServletRequest request){ |
| | | log.info("监管平台查询充电站信息请求参数:" + JacksonUtils.toJson(baseRequest)); |
| | | //校验token和签名 |
| | | BaseResult baseResult = requestCheck(true, baseRequest, request); |
| | | if(0 != baseResult.getRet()){ |
| | | log.info("监管平台查询充电站信息响应Data:"); |
| | | baseResult.setData(""); |
| | | baseResult.setSig(TCECUtil.ourBuildSign(baseResult)); |
| | | log.info("监管平台查询充电站信息响应参数:" + JacksonUtils.toJson(baseResult)); |
| | | return baseResult; |
| | | } |
| | | Operator operator = baseResult.getOperator(); |
| | | //解密参数 |
| | | String decrypt = AESUtil.decrypt(baseRequest.getData(), operator.getOurDataSecret(), operator.getOurDataSecretIv()); |
| | | log.info("监管平台查询充电站信息请求Data:" + decrypt); |
| | | QueryStationsInfo queryStationsInfo = JSON.parseObject(decrypt, QueryStationsInfo.class); |
| | | Integer pageNo = queryStationsInfo.getPageNo(); |
| | | Integer pageSize = queryStationsInfo.getPageSize(); |
| | | List<String> stationIDs = queryStationsInfo.getStationIDs(); |
| | | if(null == pageNo){ |
| | | pageNo = 1; |
| | | } |
| | | if(null == pageSize){ |
| | | pageSize = 50; |
| | | } |
| | | PageInfo<Site> siteListPaging = siteClient.getSiteListPaging(pageNo, pageSize, stationIDs); |
| | | List<TParkingLot> parkingLots = parkingLotClient.getAllParkingLot().getData(); |
| | | QueryStationsInfoResult queryStationsInfoResult = new QueryStationsInfoResult(); |
| | | queryStationsInfoResult.setPageNo(pageNo); |
| | | queryStationsInfoResult.setPageCount((0 == (siteListPaging.getTotal() % pageSize) ? 0 : 1) + Double.valueOf(siteListPaging.getTotal() / pageSize).intValue()); |
| | | queryStationsInfoResult.setItemSize(Long.valueOf(siteListPaging.getTotal()).intValue()); |
| | | queryStationsInfoResult.setStationInfos(buildSite(parkingLots, siteListPaging.getRecords())); |
| | | //参数加密 |
| | | String jsonString = JacksonUtils.toJson(queryStationsInfoResult); |
| | | log.info("监管平台查询充电站信息响应Data:" + jsonString); |
| | | String encrypt = AESUtil.encrypt(jsonString, operator.getOurDataSecret(), operator.getOurDataSecretIv()); |
| | | baseResult.setData(encrypt); |
| | | baseResult.setSig(TCECUtil.ourBuildSign(baseResult)); |
| | | log.info("监管平台查询充电站信息响应参数:" + JacksonUtils.toJson(baseResult)); |
| | | return baseResult; |
| | | } |
| | | |
| | | /** |
| | | * 推送充换电站信息 |
| | | * @param site |
| | | * @return |
| | | */ |
| | | @PostMapping("/supervise_notification_station_info") |
| | | public BaseResult superviseNotificationStationInfo(@RequestBody Site site){ |
| | | BaseResult baseResult = new BaseResult(); |
| | | |
| | | return baseResult; |
| | | } |
| | | // |
| | | // |
| | | // /** |