Przeglądaj źródła

1.添加已提现导出的功能
2.添加已提现返回银行回执的图片

hxl13994548489 2 lat temu
rodzic
commit
496cc6d784

+ 49 - 0
src/main/java/com/ydtech/modules/admin/controller/SysAmountAuditingController.java

@@ -3,19 +3,24 @@ package com.ydtech.modules.admin.controller;
 
 import com.ydtech.core.page.HttpResult;
 import com.ydtech.modules.admin.model.dto.SysAmountAuditingDto;
+import com.ydtech.modules.admin.model.dto.SysAmountAuditingEntityDto;
 import com.ydtech.modules.admin.model.po.SysAmountAuditingEntity;
 import com.ydtech.modules.admin.model.vo.SysAmountAuditingVo;
 import com.ydtech.modules.admin.model.vo.SysAmountRejectVo;
 import com.ydtech.modules.admin.service.SysAmountAuditingService;
 import com.ydtech.modules.base.controller.BaseController;
 import com.ydtech.modules.order.entity.BasePageResult;
+import com.ydtech.utils.ExcelUtils;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.web.bind.annotation.*;
 
 import javax.validation.Valid;
 import java.math.BigDecimal;
+import java.util.ArrayList;
+import java.util.List;
 
 @Api(tags = "提现审核")
 @RequestMapping("/sysAmountAuditing")
@@ -24,6 +29,13 @@ public class SysAmountAuditingController extends BaseController {
     @Autowired
     private SysAmountAuditingService sysAmountAuditingService;
 
+    @Value("${upload.file.path}")
+    private String uploadPath;
+
+    private String EXCEL_PATH = "excel//";
+
+    private String UPLOAD_PATH = "/upload//excel//";
+
     @PostMapping("/queryPage")
     @ApiOperation(value = "提现审核分页")
     public HttpResult<BasePageResult<SysAmountAuditingEntity>> queryPageOrder(@RequestBody @Valid SysAmountAuditingVo sysAmountAuditingVo) {
@@ -81,4 +93,41 @@ public class SysAmountAuditingController extends BaseController {
         SysAmountAuditingEntity vo = sysAmountAuditingService.getById(id);
         return HttpResult.ok("success", vo);
     }
+
+   /**
+    *  @version
+    *  @author: hxl
+    *  @Date: 2024/7/9 9:53
+    *  @Description:  已提现导出功能
+    */
+    @PostMapping("expeortData")
+    @ApiOperation("导出已提现明细")
+    public HttpResult<List<SysAmountAuditingEntityDto>>  expeortData(@RequestBody SysAmountAuditingVo sysAmountAuditingVo){
+        List<SysAmountAuditingEntity> exportIncomeTypeDetalsList = sysAmountAuditingService.expeortData(sysAmountAuditingVo);
+        List<SysAmountAuditingEntityDto>  newList= new ArrayList<SysAmountAuditingEntityDto>();
+        int num=0;
+        if(exportIncomeTypeDetalsList!=null && exportIncomeTypeDetalsList.size()>0){
+            for(SysAmountAuditingEntity entity : exportIncomeTypeDetalsList){
+                num++;
+                SysAmountAuditingEntityDto vo=new  SysAmountAuditingEntityDto(num, entity.getId(), entity.getUserId(),
+                        entity.getUserName(), entity.getLeaderId(), entity.getLeaderName(), entity.getAccountName(),
+                        entity.getBankCardNum(), entity.getBankName(), entity.getBankNum(), entity.getMobile(),
+                        entity.getAmount(), entity.getSurplusAmount(), entity.getRealUserName(),
+                        entity.getBankAccount(), entity.getBankAddress(), entity.getBankNumber(),
+                        entity.getVoucherId(), entity.getCreateTime());
+                newList.add(vo);
+            }
+        }
+        ExcelUtils<SysAmountAuditingEntityDto> excelUtils = new ExcelUtils<>(SysAmountAuditingEntityDto.class);
+        String fileName = "已提现明细" + System.currentTimeMillis() + ".xlsx";
+        String saveFilePath = uploadPath+"//" + EXCEL_PATH + fileName;
+        String resultPath = UPLOAD_PATH + fileName;
+        String sheetName = "已提现明细表";
+        try{
+            excelUtils.writeExcelNew(saveFilePath,sheetName, newList);
+            return HttpResult.ok(resultPath);
+        }catch(Exception e){
+            return HttpResult.error("导出已提现明细表失败:"+e.getMessage());
+        }
+    }
 }

+ 154 - 0
src/main/java/com/ydtech/modules/admin/model/dto/SysAmountAuditingEntityDto.java

@@ -0,0 +1,154 @@
+package com.ydtech.modules.admin.model.dto;
+
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.alibaba.excel.annotation.write.style.ColumnWidth;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.Date;
+/**
+ *  @version
+ *  @author: hxl
+ *  @Date: 2024/7/9 11:41
+ *  @Description: 已提现导出列表
+ */
+@Data
+@ColumnWidth(18)
+public class SysAmountAuditingEntityDto {
+
+    @ExcelProperty(value="序号",index = 0)
+    private int numbers;
+    /**
+     * id
+     */
+    @ExcelProperty(value="提现单号",index = 1)
+    private String id;
+    /**
+     * 用户id
+     */
+    @ExcelProperty(value="业务员工号",index = 2)
+    private String userId;
+
+    /**
+     * 用户名称
+     */
+    @ExcelProperty(value="业务员姓名",index = 3)
+    private String userName;
+
+    /***
+     *   维护人名称
+     */
+    @ExcelProperty(value="维护人工号",index = 4)
+    private String  leaderId;
+
+    /***
+     *   维护人
+     */
+    @ExcelProperty(value="维护人",index = 5)
+    private String  leaderName;
+
+    /***
+     *   账户名称
+     */
+    @ExcelProperty(value="内部账户名称",index = 6)
+    private String accountName;
+
+    /***
+     *  银行卡号
+     */
+    @ExcelProperty(value="内部银行卡号",index = 7)
+    private String bankCardNum;
+
+    /***
+     *  开户行名称
+     */
+    @ExcelProperty(value="内部开户行",index = 8)
+    private String bankName;
+
+    /***
+     *  开户行号
+     */
+    @ExcelProperty(value="内部开户行号",index = 9)
+    private String bankNum;
+
+    @ExcelProperty(value="电话",index = 10)
+    private String mobile;
+
+    /**
+     * 提现金额
+     */
+    @ExcelProperty(value="提现金额",index = 11)
+    private BigDecimal amount;
+
+
+    /**
+     * 剩余金额
+     */
+    @ColumnWidth(25)
+    @ExcelProperty(value="业务员账户余额",index = 12)
+    private BigDecimal surplusAmount;
+
+    /***
+     *  银行卡真实姓名
+     */
+    @ExcelProperty(value="真实姓名",index = 13)
+    private String realUserName;
+
+
+    /**
+     * 开户行
+     */
+    @ExcelProperty(value="开户行",index = 14)
+    private String bankAccount;
+
+    /**
+     * 开户行地址
+     */
+    @ExcelProperty(value="银行",index = 15)
+    private String bankAddress;
+    /**
+     * 银行卡号
+     */
+    @ExcelProperty(value="账号",index = 16)
+    private String bankNumber;
+
+    /**
+     * 凭证号
+     */
+    @ExcelProperty(value="凭证号",index = 17)
+    private String voucherId;
+
+    /**
+     * 创建时间
+     */
+    @ExcelProperty(value="提现时间",index = 18)
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    private Date createTime;
+
+
+    public SysAmountAuditingEntityDto() {
+    }
+
+    public SysAmountAuditingEntityDto(int numbers, String id, String userId, String userName, String leaderId, String leaderName, String accountName, String bankCardNum, String bankName, String bankNum, String mobile, BigDecimal amount, BigDecimal surplusAmount, String realUserName, String bankAccount, String bankAddress, String bankNumber, String voucherId, Date createTime) {
+        this.numbers = numbers;
+        this.id = id;
+        this.userId = userId;
+        this.userName = userName;
+        this.leaderId = leaderId;
+        this.leaderName = leaderName;
+        this.accountName = accountName;
+        this.bankCardNum = bankCardNum;
+        this.bankName = bankName;
+        this.bankNum = bankNum;
+        this.mobile = mobile;
+        this.amount = amount;
+        this.surplusAmount = surplusAmount;
+        this.realUserName = realUserName;
+        this.bankAccount = bankAccount;
+        this.bankAddress = bankAddress;
+        this.bankNumber = bankNumber;
+        this.voucherId = voucherId;
+        this.createTime = createTime;
+    }
+}

+ 3 - 0
src/main/java/com/ydtech/modules/admin/model/dto/WithdrawalDetalsDto.java

@@ -62,4 +62,7 @@ public class WithdrawalDetalsDto {
     @ApiModelProperty("驳回原因")
     private String  rejectReason;
 
+    @ApiModelProperty("银行回单")
+    private String  bankReceipt;
+
 }

+ 7 - 0
src/main/java/com/ydtech/modules/admin/service/SysAmountAuditingService.java

@@ -67,4 +67,11 @@ public interface SysAmountAuditingService extends IService<SysAmountAuditingEnti
      *  @Description: 补充内部银行卡信息
      */
     HttpResult addInvAccountBackCardMsg(SysAmountAuditingDto sysAmountAuditingDto);
+    /**
+     *  @version
+     *  @author: hxl
+     *  @Date: 2024/7/9 9:56
+     *  @Description:  导出已提现的费用表
+     */
+    List<SysAmountAuditingEntity> expeortData(SysAmountAuditingVo sysAmountAuditingVo);
 }

+ 39 - 0
src/main/java/com/ydtech/modules/admin/service/impl/SysAmountAuditingServiceImpl.java

@@ -344,4 +344,43 @@ public class SysAmountAuditingServiceImpl extends ServiceImpl<SysAmountAuditingM
 
         return  HttpResult.error("添加失败");
     }
+    /**
+     *  @version
+     *  @author: hxl
+     *  @Date: 2024/7/9 9:56
+     *  @Description:  导出已提现的费用表
+     */
+    @Override
+    public List<SysAmountAuditingEntity> expeortData(SysAmountAuditingVo sysAmountAuditingVo) {
+        HashMap<String, Object> params = new HashMap<>();
+        if(ObjectUtils.isNotEmpty(sysAmountAuditingVo.getStartTime())){
+            params.put("startDate",sysAmountAuditingVo.getStartTime());
+        }
+        if(ObjectUtils.isNotEmpty(sysAmountAuditingVo.getEndTime())){
+            params.put("endDate",sysAmountAuditingVo.getEndTime());
+        }
+        if(StringUtils.isNotEmpty(sysAmountAuditingVo.getAuditingStatus())){
+            params.put("auditingStatus",sysAmountAuditingVo.getAuditingStatus());
+        }
+        if(StringUtils.isNotEmpty(sysAmountAuditingVo.getUserId())){
+            params.put("userId",sysAmountAuditingVo.getUserId());
+        }
+        if(StringUtils.isNotEmpty(sysAmountAuditingVo.getId())){
+            params.put("id",sysAmountAuditingVo.getId());
+        }
+        if(StringUtils.isNotEmpty(sysAmountAuditingVo.getMobile())){
+            params.put("mobile",sysAmountAuditingVo.getMobile());
+        }
+        if(StringUtils.isNotEmpty(sysAmountAuditingVo.getUserName())){
+            params.put("userName",sysAmountAuditingVo.getUserName());
+        }
+        if(StringUtils.isNotEmpty(sysAmountAuditingVo.getLeaderId())){
+            params.put("leaderId",sysAmountAuditingVo.getLeaderId());
+        }
+        if(StringUtils.isNotEmpty(sysAmountAuditingVo.getLeaderName())){
+            params.put("leaderName",sysAmountAuditingVo.getLeaderName());
+        }
+        List<SysAmountAuditingEntity> list = baseMapper.queryPageOrderNew(params);
+        return list;
+    }
 }

+ 10 - 0
src/main/java/com/ydtech/modules/admin/service/impl/SysUserAccountServiceImpl.java

@@ -24,8 +24,10 @@ import com.ydtech.modules.message.constants.MessageTypeConstants;
 import com.ydtech.modules.message.service.MessageSecretaryService;
 import com.ydtech.modules.order.dao.InsAreaCompanyMapper;
 import com.ydtech.modules.order.dao.InsOrdersMapper;
+import com.ydtech.modules.order.dao.InsUploadFilesMapper;
 import com.ydtech.modules.order.entity.BasePageResult;
 import com.ydtech.modules.order.entity.InsOrders;
+import com.ydtech.modules.order.entity.po.InsUploadFiles;
 import com.ydtech.modules.order.service.InsAreaCompanyService;
 import com.ydtech.modules.protocols.entity.po.InsFeeOrderNew;
 import com.ydtech.modules.protocols.service.InsFeeOrderNewService;
@@ -86,6 +88,9 @@ public class SysUserAccountServiceImpl extends ServiceImpl<SysUserAccountMapper,
     @Autowired
     private SysUserMapper sysUserMapper;
 
+    @Autowired
+    private InsUploadFilesMapper insUploadFilesMapper;
+
     @Override
     @Transactional
     public void addOrUpdate(SysUserAccount sysUserAccount) {
@@ -1140,6 +1145,11 @@ public class SysUserAccountServiceImpl extends ServiceImpl<SysUserAccountMapper,
                 recordList.add(dto3);
                 withdrawalDetalsDto.setRejectReason(audi.getRejectReason()==null?"":audi.getRejectReason());
             }else{
+                //add  by   hxl   2024-07-09 添加银行回单的路径
+                if(audi!=null && StringUtils.isNotBlank(audi.getPicId())){
+                    InsUploadFiles insUploadFiles = insUploadFilesMapper.selectById(audi.getPicId());
+                    withdrawalDetalsDto.setBankReceipt(insUploadFiles==null?"":insUploadFiles.getUrl());
+                }
                 recordList.add(dto4);
             }
             withdrawalDetalsDto.setRecord(recordList);

+ 1 - 1
src/main/java/com/ydtech/utils/CustomCellWriteHandler.java

@@ -49,7 +49,7 @@ public class CustomCellWriteHandler extends AbstractColumnWidthStyleStrategy {
                     Double maxColumnWidth = maxColumnWidthMap.get(cell.getColumnIndex());
                     if (maxColumnWidth == null || columnWidth > maxColumnWidth) {
                         maxColumnWidthMap.put(cell.getColumnIndex(), columnWidth);
-                        writeSheetHolder.getSheet().setColumnWidth(cell.getColumnIndex(), (int) (maxColumnWidthMap.get(cell.getColumnIndex()) * COLUMN_WIDTH_BASE));
+                        writeSheetHolder.getSheet().setColumnWidth(cell.getColumnIndex(), (int) (maxColumnWidthMap.get(cell.getColumnIndex()) * COLUMN_WIDTH_BASE)+80);
                     }
                 }
             }