This commit is contained in:
77
2024-07-21 15:01:09 +08:00
parent f98988f708
commit d11d10f1bf
5 changed files with 128 additions and 4 deletions

View File

@@ -1,16 +1,22 @@
package com.ruoyi.web.controller.cai.admin;
import cn.dev33.satoken.annotation.SaCheckPermission;
import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.ExcelWriter;
import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.cai.domain.AccountCash;
import com.ruoyi.cai.dto.admin.common.IdsReq;
import com.ruoyi.cai.dto.admin.vo.AccountCashAdminVo;
import com.ruoyi.cai.dto.admin.vo.account.ExportBatchAuditVo;
import com.ruoyi.cai.dto.admin.vo.accountCash.AccountCashExportVo;
import com.ruoyi.cai.enums.AccountCashStatusEnum;
import com.ruoyi.cai.mapper.AccountCashMapper;
import com.ruoyi.cai.service.AccountCashService;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.annotation.RepeatSubmit;
import com.ruoyi.common.convert.ExcelBigNumberConvert;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.common.core.domain.R;
@@ -25,8 +31,11 @@ import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse;
import javax.validation.constraints.NotNull;
import java.io.IOException;
import java.time.LocalDateTime;
import java.util.List;
import java.util.stream.Collectors;
@@ -45,6 +54,8 @@ import java.util.stream.Collectors;
public class AccountCashController extends BaseController {
private final AccountCashService accountCashService;
@Resource
private AccountCashMapper accountCashMapper;
/**
* 查询用户提现记录列表
@@ -67,14 +78,31 @@ public class AccountCashController extends BaseController {
query.setPageSize(Integer.MAX_VALUE);
query.setPageNum(1);
List<AccountCashAdminVo> list = accountCashService.pageAdmin(query,bo).getRecords();
ExcelUtil.exportExcel(list, "用户提现记录", AccountCashAdminVo.class, response);
List<AccountCashExportVo> mergeList = accountCashMapper.exportMerge(bo);
try {
ExcelUtil.resetResponse("用户提现", response);
ServletOutputStream os = response.getOutputStream();
ExcelWriter excelWriter = EasyExcel.write(os).autoCloseStream(false)
// 自动适配
.registerWriteHandler(new LongestMatchColumnWidthStyleStrategy())
// 添加下拉框操作
// builder.registerWriteHandler(new ExcelDownHandler(null));
// 大数值自动转换 防止失真
.registerConverter(new ExcelBigNumberConvert()).build();
excelWriter.write(mergeList, EasyExcel.writerSheet(0, "用户提现汇总").head(AccountCashExportVo.class).build());
excelWriter.write(list, EasyExcel.writerSheet(1, "用户提现明细").head(AccountCashAdminVo.class).build());
excelWriter.finish();
} catch (IOException e) {
throw new RuntimeException("导出Excel异常");
}
// ExcelUtil.exportExcel(list, "用户提现记录", AccountCashAdminVo.class, response);
}
@Log(title = "用户导入提现通过", businessType = BusinessType.IMPORT)
@SaCheckPermission("cai:accountCash:edit")
@PostMapping(value = "/importAudit", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
public R<ExportBatchAuditVo> importData(@RequestPart("file") MultipartFile file) throws Exception {
List<AccountCashAdminVo> result = ExcelUtil.importExcel(file.getInputStream(), AccountCashAdminVo.class);
List<AccountCashAdminVo> result = ExcelUtil.importExcel(file.getInputStream(), AccountCashAdminVo.class,"用户提现明细");
List<Long> ids = result.stream().map(AccountCash::getId).collect(Collectors.toList());
ExportBatchAuditVo audit = accountCashService.batchAudit(ids);
return R.ok(audit);