puzhibing
2026-09-01 4292699a7addaf35d25c4ce00dc626c3d63a9476
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TCardChargingOrderController.java
@@ -10,8 +10,11 @@
import com.ruoyi.common.log.enums.BusinessType;
import com.ruoyi.common.security.annotation.Logical;
import com.ruoyi.common.security.annotation.RequiresPermissions;
import com.ruoyi.order.api.query.CardBalanceDetailQuery;
import com.ruoyi.order.api.query.CardChargingOrderQuery;
import com.ruoyi.order.api.vo.CardBalanceDetailVO;
import com.ruoyi.order.api.vo.ChargingOrderVO;
import com.ruoyi.order.export.CardBalanceDetailExport;
import com.ruoyi.order.export.CardChargingOrderExport;
import com.ruoyi.order.service.TCardChargingOrderService;
import io.swagger.annotations.Api;
@@ -117,4 +120,37 @@
        List<Map<String, Object>> list = cardChargingOrderService.accountingStrategyList(chargingOrderId);
        return R.ok(Collections.singletonMap("list", list));
    }
    @RequiresPermissions("/chargingCardBalanceDetail/list")
    @GetMapping("/balance-detail/list")
    @ApiOperation("卡片收支明细列表")
    public R<PageInfo<CardBalanceDetailVO>> balanceDetailList(CardBalanceDetailQuery query) {
        return R.ok(cardChargingOrderService.balanceDetailPage(query));
    }
    @RequiresPermissions("/chargingCardBalanceDetail/list")
    @GetMapping("/balance-detail/summary")
    @ApiOperation("卡片收支明细汇总")
    public R<Map<String, Object>> balanceDetailSummary(CardBalanceDetailQuery query) {
        return R.ok(cardChargingOrderService.balanceDetailSummary(query));
    }
    @RequiresPermissions("/chargingCardBalanceDetail/export")
    @PutMapping("/balance-detail/export")
    @ApiOperation("卡片收支明细导出")
    @Log(title = "卡片收支明细导出", businessType = BusinessType.EXPORT)
    public void balanceDetailExport(@RequestBody CardBalanceDetailQuery query) {
        List<CardBalanceDetailVO> list = cardChargingOrderService.balanceDetailExport(query);
        List<CardBalanceDetailExport> exports = new ArrayList<>();
        for (int i = 0; i < list.size(); i++) {
            CardBalanceDetailVO detail = list.get(i);
            CardBalanceDetailExport export = new CardBalanceDetailExport();
            BeanUtils.copyProperties(detail, export);
            export.setSequence(i + 1);
            export.setOperationTime(formatTime(detail.getOperationTime()));
            exports.add(export);
        }
        Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(), CardBalanceDetailExport.class, exports);
        writeWorkbook(workbook, "卡片收支明细导出.xls");
    }
}