puzhibing
2024-11-02 b70a45d79dbbc50b7c75254620c174fb8a6d2cd6
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TApplyChargingPileController.java
@@ -101,6 +101,7 @@
    @Resource
    private AppUserCarClient appUserCarClient;
    @Autowired
    public TApplyChargingPileController(TApplyChargingPileService applyChargingPileService, TokenService tokenService, RedisService redisService) {
        this.applyChargingPileService = applyChargingPileService;
@@ -314,6 +315,28 @@
    {   dto.setPageCurr(1);
        dto.setPageSize(99999999);
        AccountListVO data = orderClient.accountBillList(dto).getData();
        List<TChargingOrder> collect = data.getOrderList().stream().distinct().collect(Collectors.toList());
        int i = 1;
        BigDecimal bigDecimal = new BigDecimal("0");
        for (TChargingOrder chargingOrder : collect) {
            bigDecimal = bigDecimal.add(chargingOrder.getPaymentAmount());
            if (chargingOrder.getRechargePaymentType()!=null){
                switch (chargingOrder.getRechargePaymentType()){
                    case 1:
                        chargingOrder.setPayPlatform("微信");
                        chargingOrder.setRechargePaymentType1("微信小程序支付");
                        break;
                    case 2:
                        chargingOrder.setPayPlatform("支付宝");
                        chargingOrder.setRechargePaymentType1("支付宝小程序支付");
                        break;
                }
            }
            chargingOrder.setXuhao(i);
            i++;
        }
        collect.get(0).setTotal(bigDecimal);
        try {
            response.setCharacterEncoding(Constants.UTF8);
            response.setContentType("application/vnd.ms-excel");
@@ -331,7 +354,7 @@
            try (ExcelWriter excelWriter = excelWriterBuilder.withTemplate(stream).build()) {
                WriteSheet writeSheet = EasyExcel.writerSheet().build();
                FillConfig fillConfig = FillConfig.builder().direction(WriteDirectionEnum.VERTICAL).build();
                excelWriter.fill(new FillWrapper("data1", data.getList().getRecords()), fillConfig, writeSheet);
                excelWriter.fill(new FillWrapper("data1", collect), fillConfig, writeSheet);
                excelWriter.finish();
            } catch (Exception e) {
                return R.fail("excel导出失败!");
@@ -368,7 +391,7 @@
                WriteSheet writeSheet = EasyExcel.writerSheet().build();
                FillConfig fillConfig = FillConfig.builder().direction(WriteDirectionEnum.VERTICAL).build();
                excelWriter.fill(new FillWrapper("data1", data.getList1()), fillConfig, writeSheet);
                excelWriter.fill(new FillWrapper("data2", data.getList2()), fillConfig, writeSheet);
//                excelWriter.fill(new FillWrapper("data2", data.getList2()), fillConfig, writeSheet);
                excelWriter.finish();
            } catch (Exception e) {
                return R.fail("excel导出失败!");
@@ -390,7 +413,6 @@
        TSettlementConfirm data = chargingOrderClient.downloadSettlement(uid.getUid()).getData();
        for (TChargingOrder chargingOrder : data.getList()) {
            SettlementExportVO settlementExportVO = new SettlementExportVO();
            BeanUtils.copyProperties(data, settlementExportVO);
            List<Site> data3 = siteClient.getSiteByIds(Arrays.asList(data.getSiteId())).getData();
            if (data3!=null && (!data3.isEmpty())){
@@ -484,26 +506,28 @@
            settlementExportVO.setCreateTime1(createTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
            settlementExportVO.setStartTime1(startTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
            settlementExportVO.setEndTime1(endTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
            switch (settlementExportVO.getStatus()){
                case 0:
                    settlementExportVO.setStatusName("未知");
                    break;
                case 1:
                    settlementExportVO.setStatusName("等待中/已插枪");
                    break;
                case 2:
                    settlementExportVO.setStatusName("启动中");
                    break;
                case 3:
                    settlementExportVO.setStatusName("充电中");
                    break;
                case 4:
                    settlementExportVO.setStatusName("停止中");
                    break;
                case 5:
                    settlementExportVO.setStatusName("已结束");
                    break;
            if (chargingOrder.getStatus()!=null){
                switch (chargingOrder.getStatus()){
                    case 0:
                        settlementExportVO.setStatusName("未知");
                        break;
                    case 1:
                        settlementExportVO.setStatusName("等待中/已插枪");
                        break;
                    case 2:
                        settlementExportVO.setStatusName("启动中");
                        break;
                    case 3:
                        settlementExportVO.setStatusName("充电中");
                        break;
                    case 4:
                        settlementExportVO.setStatusName("停止中");
                        break;
                    case 5:
                        settlementExportVO.setStatusName("已结束");
                        break;
                }
            }
            settlementExportVO.setOrderTypeName("充电订单");
            settlementExportVO.setChargingType("单桩双充");
@@ -523,9 +547,18 @@
            if (chargingOrder.getCode()!=null){
                List<UploadRealTimeMonitoringData> data6 = uploadRealTimeMonitoringDataClient.getDataByOrderCode(chargingOrder.getCode()).getData();
                if (data6!=null && !data6.isEmpty()){
                    // 第一条数据soc为开始 最后一条数据soc为结束soc
                    settlementExportVO.setStartSoc(data6.get(0).getSoc()+"%");
                    settlementExportVO.setEndSoc(data6.get(data6.size()-1).getSoc()+"%");
                    int min = 100;
                    int max = 0;
                    for (UploadRealTimeMonitoringData uploadRealTimeMonitoringData : data6) {
                        if (uploadRealTimeMonitoringData.getSoc()>max){
                            max = uploadRealTimeMonitoringData.getSoc();
                        }
                        if (uploadRealTimeMonitoringData.getSoc()!=0 &&uploadRealTimeMonitoringData.getSoc()<min){
                            min = uploadRealTimeMonitoringData.getSoc();
                        }
                    }
                    settlementExportVO.setEndSoc(max+"");
                    settlementExportVO.setStartSoc(min+"");
                }
            }
            settlementExportVO.setIsSoc("否");
@@ -590,7 +623,6 @@
                excelWriter.fill(new FillWrapper("data1", chargingBillVOS), fillConfig, writeSheet);
                excelWriter.fill(new FillWrapper("data2", chargingBillVOS), fillConfig, writeSheet2);
                excelWriter.fill(new FillWrapper("data3", data.getList()), fillConfig, writeSheet3);
                excelWriter.fill(new FillWrapper("data4", data.getList()), fillConfig, writeSheet3);
                excelWriter.finish();
            } catch (Exception e) {
                return R.fail("excel导出失败!");