feat:票号排序

This commit is contained in:
dzc committed 2025-08-01 14:40:21 +08:00
1 parent 595b1fc7b4
commit 6727b6a490
4 files changed
+49 -1

No files matched your search

@@ -37,5 +37,11 @@ public class WalletRechargeBindInvoiceDto extends WalletRechargeInvoiceEntity {
*/
private LocalDateTime[] processTimeList;
private Boolean isFindUserCheck = false;
/**
* sql
*/
private String orderSql = "";
}
@@ -14,6 +14,7 @@ import com.alibaba.excel.write.metadata.fill.FillConfig;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.OrderItem;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.bsd.pjcloud.admin.api.dto.UserInfo;
@@ -53,6 +54,7 @@ import com.bsd.pjcloud.wallet.service.WalletRechargeInvoiceService;
import com.bsd.pjcloud.wallet.utils.ConvertCnPriceUtil;
import com.bsd.pjcloud.wallet.utils.flow.FlowUtil;
import com.bsd.pjcloud.wallet.utils.flow.dto.WalletRechargeInvoiceFlowDto;
import com.bsd.pjcloud.wallet.utils.page.PaginationOrderSqlExtractor;
import jakarta.servlet.http.HttpServletResponse;
import org.springframework.mock.web.MockMultipartFile;
import org.springframework.transaction.annotation.Transactional;
@@ -472,6 +474,9 @@ public class WalletRechargeInvoiceServiceImpl extends ServiceImpl<WalletRecharge
*/
@Override
public void export(HttpServletResponse response, Page page, WalletRechargeBindInvoiceDto dto, DataScope dataScope) {
String orderSql = PaginationOrderSqlExtractor.getOrderSql(page, "a");
if (ObjectUtil.isNotEmpty(orderSql)) dto.setOrderSql(orderSql + ",");
List<WalletRechargeInvoiceVo> list = scopeList(dto, dataScope);
try (ExcelWriter excelWriter = EasyExcel.write(response.getOutputStream()).withTemplate(ResourceUtil.getStream("file/充值扣款发票申请.xlsx")).build()) {
WriteSheet writeSheet = EasyExcel.writerSheet().build();
@@ -0,0 +1,33 @@
package com.bsd.pjcloud.wallet.utils.page;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.metadata.OrderItem;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import java.util.List;
import java.util.stream.Collectors;
public class PaginationOrderSqlExtractor {
public static String getOrderSql(Page page) {
return getOrderSql(page, null);
}
public static String getOrderSql(Page page, String alias) {
List<OrderItem> orderItems = page.orders();
if (ObjectUtil.isEmpty(orderItems)) return null;
if (ObjectUtil.isEmpty(alias)) alias = "";
if (alias.length() > 0) alias += ".";
String finalAlias = alias;
return orderItems.stream()
.map(item -> {
if (item.isAsc()) {
return finalAlias + item.getColumn() + " asc";
} else {
return finalAlias + item.getColumn() + " desc";
}
})
.collect(Collectors.joining(", "));
}
}
@@ -71,7 +71,11 @@
<where>
<include refid="whereA"/>
</where>
order by a.create_time desc , a.id desc
order by
<if test="dto.orderSql != null and dto.orderSql != '' ">
${dto.orderSql}
</if>
a.create_time desc , a.id desc
</sql>
<select id="selectAllCount" resultType="java.lang.Long">