diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/constants/WithdrawConstant.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/constants/WithdrawConstant.java new file mode 100644 index 0000000..1049816 --- /dev/null +++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/constants/WithdrawConstant.java @@ -0,0 +1,19 @@ +package com.bnyer.img.constants; + +/** + * @author chengkun + * @date 2022/4/21 18:12 + */ +public class WithdrawConstant { + + /** + * 审核通过 + */ + public static final String PASS = "1"; + + /** + * 审核拒绝 + */ + public static final String UNPASS = "0"; + +} diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/WithdrawLogController.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/WithdrawLogController.java index ff91c92..0d72ace 100644 --- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/WithdrawLogController.java +++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/controller/WithdrawLogController.java @@ -55,20 +55,10 @@ public class WithdrawLogController extends BaseController { } //@RequiresPermissions("system:config:list") - @ApiOperation(value="审核提现通过") - @PostMapping(value = "/verifyPass") + @ApiOperation(value="审核提现") + @PostMapping(value = "/verify") public AjaxResult verifyPass(@Validated @RequestBody @ApiParam("审核对象") VerifyDto dto){ - log.debug("【图文平台后台】审核提现通过参数为:{}", JSON.toJSONString(dto)); - return AjaxResult.success(withdrawLogService.verifyPass(dto)); + log.debug("【图文平台后台】审核提现参数为:{}", JSON.toJSONString(dto)); + return AjaxResult.success(withdrawLogService.verify(dto)); } - - //@RequiresPermissions("system:config:list") - @ApiOperation(value="审核提现拒绝") - @PostMapping(value = "/verifyUnPass") - public AjaxResult verifyUnPass(@Validated @RequestBody @ApiParam("审核对象") VerifyDto dto){ - log.debug("【图文平台后台】审核提现不通过参数为:{}", JSON.toJSONString(dto)); - return AjaxResult.success(withdrawLogService.verifyUnPass(dto)); - } - - } diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/domain/Creator.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/domain/Creator.java index 216da34..225c036 100644 --- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/domain/Creator.java +++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/domain/Creator.java @@ -9,6 +9,7 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.*; +import java.math.BigDecimal; import java.util.Date; /** @@ -80,7 +81,7 @@ public class Creator extends BaseDomain { */ @TableField(value = "amt") @ApiModelProperty(value="余额") - private Integer amt; + private BigDecimal amt; /** * 邀请码 diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/domain/WithdrawLog.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/domain/WithdrawLog.java index b438bed..38e430e 100644 --- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/domain/WithdrawLog.java +++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/domain/WithdrawLog.java @@ -10,6 +10,8 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.*; +import java.math.BigDecimal; + @ApiModel(value="com-bnyer-img-domain-WithdrawLog") @Getter @Setter @@ -44,7 +46,7 @@ public class WithdrawLog extends BaseDomain { */ @TableField(value = "amt") @ApiModelProperty(value="提现金额") - private Integer amt; + private BigDecimal amt; /** * 银行卡(加密) diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/VerifyDto.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/VerifyDto.java index 2aa6f7d..5b8d0d1 100644 --- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/VerifyDto.java +++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/VerifyDto.java @@ -5,6 +5,8 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Getter; import lombok.Setter; +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; import java.io.Serializable; /** @@ -16,12 +18,19 @@ import java.io.Serializable; @ApiModel("审核接收类") public class VerifyDto implements Serializable { + @NotNull(message = "主键id不能为空!") @ApiModelProperty(value="主键") private Long id; + @NotNull(message = "管理员id不能为空!") @ApiModelProperty(value="管理员id") private Long adminId; + @NotBlank(message = "审核原因不能为空!") @ApiModelProperty(value="审核原因") private String reason; + + @NotBlank(message = "审核状态不能为空!") + @ApiModelProperty(value="审核状态(0->拒绝;1->通过)") + private String verifyStatus; } diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/WithdrawDto.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/WithdrawDto.java index 8e0b9dd..eee9eb9 100644 --- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/WithdrawDto.java +++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/WithdrawDto.java @@ -12,6 +12,7 @@ import lombok.Setter; import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; import java.io.Serializable; +import java.math.BigDecimal; @Getter @@ -25,7 +26,7 @@ public class WithdrawDto implements Serializable { @NotNull(message = "提现金额不能为空!") @ApiModelProperty(value="提现金额") - private Integer amt; + private BigDecimal amt; @ApiModelProperty(value="银行卡(加密)") @Desensitized(type = SensitiveTypeEnum.BANK_CARD) diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/checkWithdrawDto.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/checkWithdrawDto.java index 8fffaac..14f323e 100644 --- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/checkWithdrawDto.java +++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/dto/checkWithdrawDto.java @@ -9,6 +9,7 @@ import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotEmpty; import javax.validation.constraints.NotNull; import java.io.Serializable; +import java.math.BigDecimal; @Getter @@ -22,5 +23,5 @@ public class checkWithdrawDto implements Serializable { @NotNull(message = "额度不能为空!") @ApiModelProperty(value="额度") - private Integer amt; + private BigDecimal amt; } diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/WithdrawLogService.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/WithdrawLogService.java index 6763772..f4794ff 100644 --- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/WithdrawLogService.java +++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/WithdrawLogService.java @@ -5,6 +5,7 @@ import com.bnyer.img.dto.VerifyDto; import com.bnyer.img.dto.WithdrawPageDto; import com.bnyer.img.vo.WithdrawLogVo; +import java.math.BigDecimal; import java.util.List; /** @@ -60,14 +61,8 @@ public interface WithdrawLogService { * @param params 审核参数 * @return - */ - int verifyPass(VerifyDto params); + int verify(VerifyDto params); - /** - * 审核提现拒绝 - * @param params 审核参数 - * @return - - */ - int verifyUnPass(VerifyDto params); /** * 检查该艺术家是否可提现 @@ -75,5 +70,5 @@ public interface WithdrawLogService { * @param amt 额度 * @return - */ - boolean checkWithdraw(Long creatorId,Integer amt); + boolean checkWithdraw(Long creatorId, BigDecimal amt); } diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorServiceImpl.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorServiceImpl.java index c9173f6..de55f99 100644 --- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorServiceImpl.java +++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/CreatorServiceImpl.java @@ -36,6 +36,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.math.BigDecimal; import java.util.Date; import java.util.HashMap; import java.util.List; @@ -138,7 +139,7 @@ public class CreatorServiceImpl implements CreatorService { creator.setIsHot("0"); creator.setStatus("0"); creator.setIsShow("1"); - creator.setAmt(0); + creator.setAmt(BigDecimal.valueOf(0)); creator.setSort(0); creator.setUpdateTime(new Date()); int update = creatorMapper.updateById(creator); diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/WithdrawLogServiceImpl.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/WithdrawLogServiceImpl.java index f281e7e..9707a83 100644 --- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/WithdrawLogServiceImpl.java +++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/service/impl/WithdrawLogServiceImpl.java @@ -1,5 +1,6 @@ package com.bnyer.img.service.impl; +import cn.hutool.core.util.IdUtil; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.bnyer.common.core.exception.ServiceException; @@ -7,6 +8,7 @@ import com.bnyer.common.core.utils.DesensitizedUtils; import com.bnyer.common.core.utils.Sm4Util; import com.bnyer.common.core.utils.StringUtils; import com.bnyer.img.constants.TiktokConstant; +import com.bnyer.img.constants.WithdrawConstant; import com.bnyer.img.domain.Creator; import com.bnyer.img.domain.WithdrawLog; import com.bnyer.img.dto.VerifyDto; @@ -20,6 +22,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.math.BigDecimal; import java.util.Date; import java.util.List; @@ -46,7 +49,7 @@ public class WithdrawLogServiceImpl implements WithdrawLogService { throw new ServiceException("该艺术家不存在!", TiktokConstant.TIKTOK_CREATOR_NOT_EXIST); } //此处以分为单位 - if(creator.getAmt() < withdrawLog.getAmt() * 100){ + if(creator.getAmt().compareTo(withdrawLog.getAmt()) == -1){ throw new ServiceException("该艺术家当前可提现余额不足,提现失败!", TiktokConstant.CREATOR_AMT_NOT_ENOUGH); } withdrawLog.setCreateTime(new Date()); @@ -55,7 +58,8 @@ public class WithdrawLogServiceImpl implements WithdrawLogService { if(StringUtils.isNotBlank(withdrawLog.getBankNo())){ withdrawLog.setBankNo(Sm4Util.sm4Encryption(withdrawLog.getBankNo())); } - //TODO 订单id待核实了广告平台给予的奖励来确定是否有专属订单 + //生成订单id + withdrawLog.setOrderId(IdUtil.getSnowflakeNextIdStr()); return withdrawLogMapper.insert(withdrawLog); } @@ -79,7 +83,7 @@ public class WithdrawLogServiceImpl implements WithdrawLogService { for (WithdrawLog withdrawLog : withdrawLogs) { if(StringUtils.isNotBlank(withdrawLog.getBankNo())){ withdrawLog.setBankNo(Sm4Util.sm4Decrypt(withdrawLog.getBankNo())); - JSONObject.parseObject(DesensitizedUtils.getJsonNoCopy(withdrawLog), WithdrawLog.class); + DesensitizedUtils.getJsonNoCopy(withdrawLog); } } return withdrawLogs; @@ -113,38 +117,35 @@ public class WithdrawLogServiceImpl implements WithdrawLogService { @Override @Transactional(rollbackFor = Exception.class) - public int verifyPass(VerifyDto params) { + public int verify(VerifyDto params) { WithdrawLog withdrawLog = withdrawLogMapper.selectById(params.getId()); if(withdrawLog == null){ throw new ServiceException("该笔提现申请不存在!", TiktokConstant.WITHDRAW_LOG_NOT_EXIST); } - withdrawLog.setStatus("1"); withdrawLog.setReason(params.getReason()); + if(params.getVerifyStatus().equals(WithdrawConstant.UNPASS)){ + //审核拒绝 + withdrawLog.setStatus("4"); + withdrawLog.setUpdateTime(new Date()); + return withdrawLogMapper.updateById(withdrawLog); + } + //审核通过 + withdrawLog.setStatus("1"); + withdrawLog.setUpdateTime(new Date()); int update = withdrawLogMapper.updateById(withdrawLog); //TODO 此处审核通过,调用微信企业付款到零钱方法 - return update; - } - @Override - @Transactional(rollbackFor = Exception.class) - public int verifyUnPass(VerifyDto params) { - WithdrawLog withdrawLog = withdrawLogMapper.selectById(params.getId()); - if(withdrawLog == null){ - throw new ServiceException("该笔提现申请不存在!", TiktokConstant.WITHDRAW_LOG_NOT_EXIST); - } - withdrawLog.setStatus("4"); - withdrawLog.setReason(params.getReason()); - return withdrawLogMapper.updateById(withdrawLog); + return update; } @Override - public boolean checkWithdraw(Long creatorId,Integer amt) { + public boolean checkWithdraw(Long creatorId, BigDecimal amt) { Creator creator = creatorMapper.selectById(creatorId); if(creator == null){ throw new ServiceException("该艺术家不存在!", TiktokConstant.TIKTOK_CREATOR_NOT_EXIST); } //此处以分为单位 - if(creator.getAmt() >= amt * 100){ + if(creator.getAmt().compareTo(amt) > -1){ return true; }else{ return false; diff --git a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/WithdrawLogVo.java b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/WithdrawLogVo.java index 5e8dc71..115bc7d 100644 --- a/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/WithdrawLogVo.java +++ b/bnyer-services/bnyer-img/src/main/java/com/bnyer/img/vo/WithdrawLogVo.java @@ -9,6 +9,7 @@ import lombok.Getter; import lombok.Setter; import java.io.Serializable; +import java.math.BigDecimal; @Getter @@ -26,7 +27,7 @@ public class WithdrawLogVo implements Serializable { private Long creatorId; @ApiModelProperty(value="提现金额") - private Integer amt; + private BigDecimal amt; @ApiModelProperty(value="银行卡(加密)") @Desensitized(type = SensitiveTypeEnum.BANK_CARD) diff --git a/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/CreatorMapper.xml b/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/CreatorMapper.xml index a9b1d0c..775c9c6 100644 --- a/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/CreatorMapper.xml +++ b/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/CreatorMapper.xml @@ -11,7 +11,7 @@ - + @@ -86,14 +86,4 @@ order by create_time desc - - - - - - - - - - diff --git a/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/WithdrawLogMapper.xml b/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/WithdrawLogMapper.xml index 9f5aa19..b925d2c 100644 --- a/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/WithdrawLogMapper.xml +++ b/bnyer-services/bnyer-img/src/main/resources/com/bnyer/img/mapper/WithdrawLogMapper.xml @@ -7,7 +7,7 @@ - +