KKSU
2024-03-18 57ac3a35ac056f0a09d8a013e8f3da2ecfe8a7c6
抽奖
4 files modified
39 ■■■■ changed files
src/main/java/cc/mrbird/febs/common/enumerates/MoneyFlowTypeNewEnum.java 2 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/dto/TransferDto.java 2 ●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java 6 ●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java 29 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/common/enumerates/MoneyFlowTypeNewEnum.java
@@ -11,6 +11,8 @@
@Getter
public enum MoneyFlowTypeNewEnum {
    NFT_TRANS_IN(30,"卡牌转入"),
    NFT_TRANS_OUT(29,"卡牌转出"),
    PERK_POINT(28,"节点收益"),
    PERK_CYCLE(27,"收益"),
    GSD_GFA(26,"GFD兑换GFA"),
src/main/java/cc/mrbird/febs/mall/dto/TransferDto.java
@@ -18,7 +18,7 @@
@ApiModel(value = "TransferDto", description = "转账接收参数类")
public class TransferDto {
    @ApiModelProperty(value = "转出类型 1:FCM 2:令牌", example = "1")
    @ApiModelProperty(value = "转出类型 1:FCM 2:令牌 3:卡牌", example = "1")
    private int type;
    @NotBlank(message = "转出账户不能为空")
src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java
@@ -1201,7 +1201,7 @@
        queryMallMoneyFlow.eq("is_return",AppContants.MEMBER_FLOW_ING);
        queryMallMoneyFlow.eq("flow_type",FlowTypeNewEnum.NFT.getValue());
        List<MallMoneyFlow> mallMoneyFlows = mallMoneyFlowMapper.selectList(queryMallMoneyFlow);
        if(CollUtil.isNotEmpty(mallMoneyFlows)){
        if(CollUtil.isEmpty(mallMoneyFlows)){
            return;
        }
@@ -1268,7 +1268,7 @@
        queryMallMoneyFlow.eq("is_return",AppContants.MEMBER_FLOW_ING);
        queryMallMoneyFlow.eq("flow_type",FlowTypeNewEnum.NFT.getValue());
        List<MallMoneyFlow> mallMoneyFlows = mallMoneyFlowMapper.selectList(queryMallMoneyFlow);
        if(CollUtil.isNotEmpty(mallMoneyFlows)){
        if(CollUtil.isEmpty(mallMoneyFlows)){
            return;
        }
@@ -1335,7 +1335,7 @@
        queryMallMoneyFlow.eq("is_return",AppContants.MEMBER_FLOW_ING);
        queryMallMoneyFlow.eq("flow_type",FlowTypeNewEnum.NFT.getValue());
        List<MallMoneyFlow> mallMoneyFlows = mallMoneyFlowMapper.selectList(queryMallMoneyFlow);
        if(CollUtil.isNotEmpty(mallMoneyFlows)){
        if(CollUtil.isEmpty(mallMoneyFlows)){
            return;
        }
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java
@@ -493,7 +493,7 @@
        BigDecimal amount = transferDto.getAmount();
        int type = transferDto.getType();
        if(1 != type && 2 != type){
        if(1 != type && 2 != type && 3 != type){
            throw new FebsException("请选择互转类型");
        }
        Integer insideWith = loginMember.getInsideWith() == null ? 2 :loginMember.getInsideWith();
@@ -518,7 +518,6 @@
            throw new FebsException("交易密码错误");
        }
        BigDecimal avaAmount = transferDto.getAmount().setScale(2, BigDecimal.ROUND_DOWN);
        MallMemberAmount mallMemberAmountLogin = mallMemberAmountMapper.selectByMemberId(loginMember.getId());
        MallMemberAmount mallMemberAmount = mallMemberAmountMapper.selectByMemberId(mallMember.getId());
        if(1 == type){
@@ -573,6 +572,32 @@
                    FlowTypeNewEnum.TOKEN.getValue(),
                    MoneyFlowTypeNewEnum.TOKEN_INSIDE_IN.getDescrition());
        }
        if(3 == type){
            if (amount.compareTo(mallMemberAmountLogin.getTrendsNft()) > 0) {
                throw new FebsException("卡牌不足");
            }
            mallMemberAmountLogin.setTrendsNft(mallMemberAmountLogin.getTrendsNft().subtract(amount));
            mallMemberAmountMapper.updateTrendsNftById(mallMemberAmountLogin);
            String orderNo = MallUtils.getOrderNum("NFT");
            mallMoneyFlowService.addMoneyFlow(
                    loginMember.getId(),
                    amount.negate(),
                    MoneyFlowTypeNewEnum.NFT_TRANS_OUT.getValue(),
                    orderNo,
                    mallMember.getId(),
                    FlowTypeNewEnum.NFT.getValue(),
                    MoneyFlowTypeNewEnum.NFT_TRANS_OUT.getDescrition());
            mallMemberAmount.setTrendsNft(mallMemberAmount.getTrendsNft().add(amount));
            mallMemberAmountMapper.updateTrendsNftById(mallMemberAmount);
            mallMoneyFlowService.addMoneyFlow(
                    mallMember.getId(),
                    amount,
                    MoneyFlowTypeNewEnum.NFT_TRANS_IN.getValue(),
                    orderNo,
                    loginMember.getId(),
                    FlowTypeNewEnum.NFT.getValue(),
                    MoneyFlowTypeNewEnum.NFT_TRANS_IN.getDescrition());
        }
    }
    @Override