| | |
| | | import java.time.LocalDateTime; |
| | | import java.time.format.DateTimeFormatter; |
| | | import java.util.*; |
| | | import java.util.concurrent.LinkedBlockingQueue; |
| | | import java.util.concurrent.ThreadPoolExecutor; |
| | | import java.util.concurrent.TimeUnit; |
| | | import java.util.concurrent.*; |
| | | import java.util.stream.Collectors; |
| | | |
| | | /** |
| | |
| | | stationInfo.setOperatorID("906171535"); |
| | | stationInfo.setEquipmentOwnerID("906171535"); |
| | | stationInfo.setStationName(datum.getName()); |
| | | stationInfo.setCountryCode(datum.getCountryCode()); |
| | | stationInfo.setCountryCode(StringUtils.isNotEmpty(datum.getCountryCode()) ? datum.getCountryCode() : "CN"); |
| | | stationInfo.setAreaCode(datum.getDistrictsCode()); |
| | | stationInfo.setAddress(datum.getAddress()); |
| | | stationInfo.setStationTel(datum.getPhone()); |
| | |
| | | |
| | | //构建设备接口信息 |
| | | equipmentInfo.setConnectorInfos(buildConnectorInfos(tChargingPile.getId(), tChargingPile.getCode(), chargingGunList)); |
| | | equipmentInfo.setPower(tChargingPile.getRatedPower()); |
| | | equipmentInfos.add(equipmentInfo); |
| | | } |
| | | return equipmentInfos; |
| | |
| | | connectorStatusInfo.setStatus(255); |
| | | break; |
| | | } |
| | | ConnectorStatusInfo connectorStatusInfo1 = new ConnectorStatusInfo(); |
| | | BeanUtils.copyProperties(connectorStatusInfo, connectorStatusInfo1); |
| | | connectorStatusInfo.setConnectorStatusInfo(connectorStatusInfo1); |
| | | List<Operator> operators = operatorClient.getAllOperator().getData(); |
| | | for (Operator operator : operators) { |
| | | TCECUtil.notificationStationStatus(operator, connectorStatusInfo); |
| | |
| | | addTripartitePlatformOrder.setStartChargeSeq(queryStartCharge.getStartChargeSeq()); |
| | | addTripartitePlatformOrder.setChargingGunId(tChargingGun.getId()); |
| | | addTripartitePlatformOrder.setOperatorId(operator.getOperatorId()); |
| | | addTripartitePlatformOrder.setPaymentAmount(queryStartCharge.getChargingAmt()); |
| | | addTripartitePlatformOrder.setPaymentAmount(null == queryStartCharge.getChargingAmt() ? new BigDecimal(9999) : queryStartCharge.getChargingAmt()); |
| | | addTripartitePlatformOrder.setRechargePaymentType(0); |
| | | addTripartitePlatformOrder.setPlateNum(queryStartCharge.getPlateNum()); |
| | | R order = chargingOrderClient.addTripartitePlatformOrder(addTripartitePlatformOrder); |
| | |
| | | } |
| | | }); |
| | | } |
| | | |
| | | //定义定时任务推送订单状态 |
| | | ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1); |
| | | Runnable task = new Runnable() { |
| | | @Override |
| | | public void run() { |
| | | TChargingOrder chargingOrder = chargingOrderClient.getChargingOrderByStartChargeSeq(result.getStartChargeSeq()).getData(); |
| | | if(null == chargingOrder || chargingOrder.getStatus() != 3){ |
| | | scheduler.shutdown(); |
| | | return; |
| | | } |
| | | notificationEquipChargeStatus(result.getStartChargeSeq(), operator.getId()); |
| | | } |
| | | }; |
| | | //一分钟执行一次 |
| | | scheduler.scheduleAtFixedRate(task, 1, 1, TimeUnit.MINUTES); |
| | | return R.ok(); |
| | | } |
| | | |
| | |
| | | queryEquipChargeStatusResult.setVoltageA(chargingOrder.getVoltage()); |
| | | queryEquipChargeStatusResult.setSoc(chargingOrder.getTotalElectricity()); |
| | | queryEquipChargeStatusResult.setStartTime((null == chargingOrder.getStartTime() ? chargingOrder.getCreateTime() : chargingOrder.getStartTime()).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); |
| | | queryEquipChargeStatusResult.setEndTime((null == chargingOrder.getStartTime() ? LocalDateTime.now() : chargingOrder.getEndTime()).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); |
| | | queryEquipChargeStatusResult.setEndTime((null == chargingOrder.getEndTime() ? LocalDateTime.now() : chargingOrder.getEndTime()).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); |
| | | queryEquipChargeStatusResult.setTotalPower(chargingOrder.getElectricity()); |
| | | queryEquipChargeStatusResult.setElecMoney(chargingOrder.getTotalElectricity()); |
| | | queryEquipChargeStatusResult.setSeviceMoney(chargingOrder.getServiceCharge()); |
| | |
| | | List<TChargingOrderAccountingStrategy> data = chargingOrderAccountingStrategyClient.getChargingOrderAccountingStrategyByOrderId(chargingOrder.getId()).getData(); |
| | | |
| | | LocalDateTime startTime = chargingOrder.getStartTime(); |
| | | LocalDateTime endTime = chargingOrder.getEndTime(); |
| | | LocalDateTime endTime = null == chargingOrder.getEndTime() ? LocalDateTime.now() : chargingOrder.getEndTime(); |
| | | String s_format = startTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")); |
| | | String e_format = endTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")); |
| | | for (TChargingOrderAccountingStrategy datum : data) { |
| | |
| | | * @return |
| | | */ |
| | | @PostMapping("/notificationEquipChargeStatus") |
| | | public R notificationEquipChargeStatus(@RequestParam("startChargeSeq") String startChargeSeq, @RequestParam("operatorId") Integer operatorId){ |
| | | public R notificationEquipChargeStatus(@RequestParam(value = "startChargeSeq") String startChargeSeq, @RequestParam(value = "operatorId") Integer operatorId){ |
| | | QueryEquipChargeStatusResult queryEquipChargeStatusResult = buildQueryEquipChargeStatusResult(startChargeSeq); |
| | | Operator operator = operatorClient.getOperatorById(operatorId).getData(); |
| | | NotificationEquipChargeStatusResult notificationEquipChargeStatusResult = TCECUtil.notificationEquipChargeStatus(operator, queryEquipChargeStatusResult); |
| | |
| | | } |
| | | notificationChargeOrderInfo.setConnectorID(chargingOrder.getChargingGunId().toString()); |
| | | notificationChargeOrderInfo.setStartTime((null == chargingOrder.getStartTime() ? chargingOrder.getCreateTime() : chargingOrder.getStartTime()).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); |
| | | notificationChargeOrderInfo.setEndTime((null == chargingOrder.getStartTime() ? LocalDateTime.now() : chargingOrder.getEndTime()).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); |
| | | notificationChargeOrderInfo.setEndTime((null == chargingOrder.getEndTime() ? LocalDateTime.now() : chargingOrder.getEndTime()).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); |
| | | notificationChargeOrderInfo.setTotalPower(chargingOrder.getElectricity()); |
| | | notificationChargeOrderInfo.setTotalElecMoney(chargingOrder.getTotalElectricity()); |
| | | notificationChargeOrderInfo.setTotalSeviceMoney(chargingOrder.getServiceCharge()); |
| | |
| | | List<TChargingOrderAccountingStrategy> data = chargingOrderAccountingStrategyClient.getChargingOrderAccountingStrategyByOrderId(chargingOrder.getId()).getData(); |
| | | |
| | | LocalDateTime startTime = chargingOrder.getStartTime(); |
| | | LocalDateTime endTime = chargingOrder.getEndTime(); |
| | | LocalDateTime endTime = null == chargingOrder.getEndTime() ? LocalDateTime.now() : chargingOrder.getEndTime(); |
| | | String s_format = startTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")); |
| | | String e_format = endTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")); |
| | | for (TChargingOrderAccountingStrategy datum : data) { |
| | |
| | | QueryTerminalCode queryTerminalCode = JSON.parseObject(decrypt, QueryTerminalCode.class); |
| | | String qrCode = queryTerminalCode.getQRCode(); |
| | | String substring = qrCode.substring(qrCode.indexOf("=") + 1); |
| | | TChargingGun chargingGun = chargingGunClient.getChargingGunByFullNumber(substring).getData(); |
| | | QueryTerminalCodeResult queryTerminalCodeResult = new QueryTerminalCodeResult(); |
| | | queryTerminalCodeResult.setTerminalCode(substring); |
| | | if(null != chargingGun){ |
| | | queryTerminalCodeResult.setTerminalCode(chargingGun.getId().toString()); |
| | | } |
| | | |
| | | //参数加密 |
| | | String jsonString = JacksonUtils.toJson(queryTerminalCodeResult); |
| | |
| | | orderInfo.setStartChargeSeq(chargingOrder.getStartChargeSeq()); |
| | | orderInfo.setConnectorID(chargingOrder.getChargingGunId().toString()); |
| | | orderInfo.setStartTime((null == chargingOrder.getStartTime() ? chargingOrder.getCreateTime() : chargingOrder.getStartTime()).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); |
| | | orderInfo.setEndTime((null == chargingOrder.getStartTime() ? LocalDateTime.now() : chargingOrder.getEndTime()).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); |
| | | orderInfo.setEndTime((null == chargingOrder.getEndTime() ? LocalDateTime.now() : chargingOrder.getEndTime()).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); |
| | | orderInfo.setTotalPower(chargingOrder.getTotalElectricity()); |
| | | orderInfo.setTotalElecMoney(chargingOrder.getElectrovalence()); |
| | | orderInfo.setTotalSeviceMoney(chargingOrder.getServiceCharge()); |
| | |
| | | List<TChargingOrderAccountingStrategy> data = chargingOrderAccountingStrategyClient.getChargingOrderAccountingStrategyByOrderId(chargingOrder.getId()).getData(); |
| | | |
| | | LocalDateTime startTime = chargingOrder.getStartTime(); |
| | | LocalDateTime endTime = chargingOrder.getEndTime(); |
| | | LocalDateTime endTime = null == chargingOrder.getEndTime() ? LocalDateTime.now() : chargingOrder.getEndTime(); |
| | | String s_format = startTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")); |
| | | String e_format = endTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")); |
| | | for (TChargingOrderAccountingStrategy datum : data) { |