zhibing.pu
2024-04-28 a661e711cebd9f0b684dc73ab732b239812f076f
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/WithdrawalController.java
@@ -1,9 +1,12 @@
package com.stylefeng.guns.modular.api;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.stylefeng.guns.modular.system.model.Withdrawal;
import com.stylefeng.guns.modular.system.service.IUserInfoService;
import com.stylefeng.guns.modular.system.service.IWithdrawalService;
import com.stylefeng.guns.modular.system.util.ResultUtil;
import com.stylefeng.guns.modular.system.warpper.WithdrawalVo;
import com.stylefeng.guns.modular.system.warpper.WithdrawalWarpper;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
@@ -18,6 +21,7 @@
import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
 * 提现控制器
@@ -72,20 +76,30 @@
     */
    @ResponseBody
    @PostMapping("/api/withdrawal/queryWithdrawal")
    @ApiOperation(value = "获取历史提现数据", tags = {"用户端-个人中心"}, notes = "")
    @ApiOperation(value = "获取历史提现数据【2.0】", tags = {"用户端-个人中心"}, notes = "")
    @ApiImplicitParams({
            @ApiImplicitParam(value = "页码,首页1", name = "pageNum", required = true, dataType = "int"),
            @ApiImplicitParam(value = "页条数", name = "size", required = true, dataType = "int"),
            @ApiImplicitParam(value = "提现状态(1=待处理,2=已提现,3=提现失败)", name = "state", required = true, dataType = "int"),
            @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
    })
    public ResultUtil<List<WithdrawalWarpper>> queryWithdrawal(Integer pageNum, Integer size, Integer language, HttpServletRequest request){
    public ResultUtil<WithdrawalVo> queryWithdrawal(Integer pageNum, Integer size, Integer state, Integer language, HttpServletRequest request){
        try {
            Integer uid = userInfoService.getUserIdFormRedis(request);
            if(null == uid){
                return ResultUtil.tokenErr();
            }
            List<Map<String, Object>> list = withdrawalService.queryWithdrawal(uid, pageNum, size, language);
            return ResultUtil.success(WithdrawalWarpper.getWithdrawalWarpper(list));
            List<Map<String, Object>> list = withdrawalService.queryWithdrawal(uid, pageNum, size, state, language);
            WithdrawalVo withdrawalVo = new WithdrawalVo();
            withdrawalVo.setList(WithdrawalWarpper.getWithdrawalWarpper(list));
            List<Withdrawal> withdrawals = withdrawalService.selectList(new EntityWrapper<Withdrawal>().eq("userId", uid).eq("userType", 1).ne("flag", 3));
            double withdrawn = withdrawals.stream().filter(s -> s.getState().compareTo(2) == 0).mapToDouble(Withdrawal::getMoney).sum();
            withdrawalVo.setWithdrawn(withdrawn);
            double processing = withdrawals.stream().filter(s -> s.getState().compareTo(1) == 0).mapToDouble(Withdrawal::getMoney).sum();
            withdrawalVo.setProcessing(processing);
            double fail = withdrawals.stream().filter(s -> s.getState().compareTo(3) == 0).mapToDouble(Withdrawal::getMoney).sum();
            withdrawalVo.setFail(fail);
            return ResultUtil.success(withdrawalVo);
        }catch (Exception e){
            e.printStackTrace();
            return ResultUtil.runErr();