From 4b7e07c9f561c78ba2f4c1e3ccc7f1d7a8bd5a9a Mon Sep 17 00:00:00 2001 From: 19173159168 Date: Sun, 28 Sep 2025 23:32:28 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=86=E6=B6=A6=E5=AF=BC=E5=87=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/ZcOrderDistribController.java | 37 +++++++++- .../orders/dto/OrderDistribExportDto.java | 73 +++++++++++++++++++ .../templates/orders/distrib/distrib.html | 10 ++- 3 files changed, 115 insertions(+), 5 deletions(-) create mode 100644 ruoyi-admin/src/main/java/com/ruoyi/orders/dto/OrderDistribExportDto.java diff --git a/ruoyi-admin/src/main/java/com/ruoyi/orders/controller/ZcOrderDistribController.java b/ruoyi-admin/src/main/java/com/ruoyi/orders/controller/ZcOrderDistribController.java index de08031..3c80a91 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/orders/controller/ZcOrderDistribController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/orders/controller/ZcOrderDistribController.java @@ -2,11 +2,16 @@ package com.ruoyi.orders.controller; import java.util.List; import java.util.Map; +import java.util.stream.Collectors; import com.ruoyi.common.constant.UserConstants; +import com.ruoyi.common.utils.DateUtils; +import com.ruoyi.common.utils.DictUtils; import com.ruoyi.operation.domain.Company; import com.ruoyi.operation.service.ICompanyService; +import com.ruoyi.orders.dto.OrderDistribExportDto; import org.apache.shiro.authz.annotation.RequiresPermissions; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; @@ -89,9 +94,37 @@ public class ZcOrderDistribController extends BaseController if(UserConstants.USER_TYPE_02 .equals(getSysUser().getUserType())){ zcOrderDistrib.setCompanyId(getSysUser().getGroupId()); } + List list = zcOrderDistribService.selectZcOrderDistribList(zcOrderDistrib); - ExcelUtil util = new ExcelUtil(ZcOrderDistrib.class); - return util.exportExcel(list, "订单分成统计数据"); + + // 转换为导出DTO + List exportList = list.stream() + .map(this::convertToExportDto) + .collect(Collectors.toList()); + + ExcelUtil util = new ExcelUtil<>(OrderDistribExportDto.class); + return util.exportExcel(exportList, "订单分成统计数据"); + } + + private OrderDistribExportDto convertToExportDto(ZcOrderDistrib entity) { + OrderDistribExportDto dto = new OrderDistribExportDto(); + // 执行字段映射 + dto.setOrderNo(entity.getOrderNo()); + dto.setOperatorName(entity.getZcOrderMain().getOperatorName()); + dto.setStoreName(entity.getZcOrderMain().getStoreName()); + dto.setLicensePlate(entity.getZcOrderMain().getLicensePlate()); + dto.setCustomerName(entity.getZcOrderMain().getCustomerName()); + dto.setCustomerPhone(entity.getZcOrderMain().getCustomerPhone()); + dto.setRentalType(DictUtils.getDictLabel("key_order_rental_type", entity.getZcOrderMain().getRentalType())); + dto.setRentalPrice(entity.getZcOrderMain().getRentalPrice()); + dto.setDepositPrice(entity.getZcOrderMain().getDepositPrice()); + dto.setRentalDuration(entity.getZcOrderMain().getRentalDuration()); + dto.setOrderAmount(entity.getZcOrderMain().getOrderAmount()); + dto.setFirstOrderTime(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, entity.getZcOrderMain().getFirstOrderTime())); + dto.setOrderStatus(DictUtils.getDictLabel("key_order_status", entity.getZcOrderMain().getOrderStatus())); + dto.setDistribRate(entity.getDistribRate()); + dto.setDistribAmount(entity.getDistribAmount()); + return dto; } /** diff --git a/ruoyi-admin/src/main/java/com/ruoyi/orders/dto/OrderDistribExportDto.java b/ruoyi-admin/src/main/java/com/ruoyi/orders/dto/OrderDistribExportDto.java new file mode 100644 index 0000000..b0cfb05 --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/orders/dto/OrderDistribExportDto.java @@ -0,0 +1,73 @@ +package com.ruoyi.orders.dto; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.ruoyi.common.annotation.Excel; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.Date; + +@Data +public class OrderDistribExportDto { + + /** 订单编号 */ + @Excel(name = "订单编号") + private String orderNo; + + /** 所属运营商 */ + @Excel(name = "所属运营商") + private String operatorName; + + /** 所属门店 */ + @Excel(name = "所属门店") + private String storeName; + + /** 车牌号 */ + @Excel(name = "车牌号") + private String licensePlate; + + /** 客户姓名 */ + @Excel(name = "客户姓名") + private String customerName; + + /** 联系电话 */ + @Excel(name = "联系电话") + private String customerPhone; + + /** 租赁类型 */ + @Excel(name = "租赁类型") + private String rentalType; + + /** 租赁价格 */ + @Excel(name = "租赁价格(元)") + private BigDecimal rentalPrice; + + /** 支付押金 */ + @Excel(name = "支付押金(元)") + private BigDecimal depositPrice; + + /** 租赁时长 */ + @Excel(name = "租赁时长") + private Long rentalDuration; + + /** 租金总额 */ + @Excel(name = "租金总额") + private BigDecimal orderAmount; + + /** 首次下单时间 */ + @Excel(name = "首次下单时间", width = 30) + private String firstOrderTime; + + /** 订单状态 */ + @Excel(name = "订单状态") + private String orderStatus; + + /** 分配比例 */ + @Excel(name = "分配比例") + private BigDecimal distribRate; + + /** 分配金额 */ + @Excel(name = "分配金额") + private BigDecimal distribAmount; + +} diff --git a/ruoyi-admin/src/main/resources/templates/orders/distrib/distrib.html b/ruoyi-admin/src/main/resources/templates/orders/distrib/distrib.html index 8a44dad..2c6a34c 100644 --- a/ruoyi-admin/src/main/resources/templates/orders/distrib/distrib.html +++ b/ruoyi-admin/src/main/resources/templates/orders/distrib/distrib.html @@ -95,9 +95,6 @@
- - -
@@ -137,6 +134,13 @@ $(function() { // 初始化时间范围为近一周 initDateRange(); + setTimeout(function () { + var exportBtn = '' + + ' 导出'; + // 在搜索按钮前插入新按钮 + $('button[name*="search"]').before(exportBtn); + }, 500) + var options = { url: prefix + "/list",