xiaoyong931011
2022-10-29 1ff3f45074f93f1d9da02c6ddfe31685b92057c3
20221021
7 files modified
1 files added
154 ■■■■■ changed files
src/main/java/cc/mrbird/febs/dapp/controller/MemberController.java 10 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/controller/ViewController.java 17 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/entity/DappMemberEntity.java 3 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java 2 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java 21 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java 2 ●●● patch | view | raw | blame | history
src/main/resources/templates/febs/views/dapp/member.html 15 ●●●●● patch | view | raw | blame | history
src/main/resources/templates/febs/views/dapp/payUsdt.html 84 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/controller/MemberController.java
@@ -193,4 +193,14 @@
        Map<String, Object> data = getDataTable(dappMemberService.getChargeListInPage(memberCoinChargeEntity, request));
        return new FebsResponse().success().data(data);
    }
    /**
     *会员列表---拨币
     * @return
     */
    @PostMapping("payUsdt")
    @ControllerEndpoint(operation = "会员列表-确认", exceptionMessage = "操作失败")
    public FebsResponse addCoinConfirm(@Valid DappMemberEntity memberEntity) {
        return dappMemberService.payUsdt(memberEntity);
    }
}
src/main/java/cc/mrbird/febs/dapp/controller/ViewController.java
@@ -5,6 +5,8 @@
import cc.mrbird.febs.common.utils.FebsUtil;
import cc.mrbird.febs.common.utils.RedisUtils;
import cc.mrbird.febs.dapp.entity.AppVersion;
import cc.mrbird.febs.dapp.entity.DappMemberEntity;
import cc.mrbird.febs.dapp.mapper.DappMemberDao;
import cc.mrbird.febs.dapp.service.DappMemberService;
import lombok.RequiredArgsConstructor;
import org.apache.shiro.authz.annotation.RequiresPermissions;
@@ -28,6 +30,7 @@
    private final RedisUtils redisUtils;
    private final DappMemberService dappMemberService;
    private final DappMemberDao dappMemberDao;
    @GetMapping(value = "admin")
    @RequiresPermissions("admin:view")
@@ -186,4 +189,18 @@
        return FebsUtil.view("dapp/member-charge");
    }
    /**
     * 会员列表-拨付
     * @param id
     * @param model
     * @return
     */
    @GetMapping("payUsdt/{id}")
    @RequiresPermissions("payUsdt:update")
    public String payUsdt(@PathVariable long id, Model model) {
        DappMemberEntity data = dappMemberDao.selectById(id);
        model.addAttribute("dappMember", data);
        return FebsUtil.view("dapp/payUsdt");
    }
}
src/main/java/cc/mrbird/febs/dapp/entity/DappMemberEntity.java
@@ -104,4 +104,7 @@
     */
    @TableField(exist = false)
    private String description;
    @TableField(exist = false)
    private BigDecimal coinNumber;
}
src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java
@@ -96,4 +96,6 @@
    FebsResponse updateAppVersion(AppVersion appVersion);
    IPage<MemberCoinChargeEntity> getChargeListInPage(MemberCoinChargeEntity memberCoinChargeEntity, QueryRequest request);
    FebsResponse payUsdt(DappMemberEntity memberEntity);
}
src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java
@@ -981,6 +981,27 @@
        return memberCoinChargeEntityIPage;
    }
    @Override
    public FebsResponse payUsdt(DappMemberEntity memberEntity) {
        DappMemberEntity dappMemberEntity = dappMemberDao.selectById(memberEntity.getId());
        if(ObjectUtil.isEmpty(dappMemberEntity)){
            return new FebsResponse().fail().message("会员信息不存在");
        }
        BigDecimal coinNumber = memberEntity.getCoinNumber() == null ? BigDecimal.ZERO : memberEntity.getCoinNumber();
        if(BigDecimal.ZERO.compareTo(coinNumber) >= 0){
            return new FebsResponse().fail().message("请输入正确的金额");
        }
        DappWalletCoinEntity dappWalletCoinEntity = dappWalletCoinDao.selectByMemberId(memberEntity.getId());
        if(ObjectUtil.isEmpty(dappWalletCoinEntity)){
            return new FebsResponse().fail().message("会员账户不存在");
        }
        dappWalletCoinDao.addTotalAndaddAvailableById(dappWalletCoinEntity.getId(),coinNumber);
        DappAccountMoneyChangeEntity dappAccountMoneyChangeEntity = new DappAccountMoneyChangeEntity(memberEntity.getId(), coinNumber, "系统拨付", 9);
        dappAccountMoneyChangeDao.insert(dappAccountMoneyChangeEntity);
        return new FebsResponse().success().message("操作成功");
    }
    public String generateAsaToken(String token) {
        RSA rsa = new RSA(null, AppContants.PUBLIC_KEY);
        return rsa.encryptBase64(token + "_" + System.currentTimeMillis(), KeyType.PublicKey);
src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java
@@ -1099,7 +1099,7 @@
    public BigDecimal updatePTFC(Long memberId, BigDecimal totalProfit) {
        BigDecimal multiply = totalProfit.multiply(new BigDecimal(0.05));
        DappAccountMoneyChangeEntity dappAccountMoneyChangeEntity = new DappAccountMoneyChangeEntity(
                memberId, multiply, "系统", 9);
                memberId, multiply.negate(), "系统", 9);
        dappAccountMoneyChangeDao.insert(dappAccountMoneyChangeEntity);
        return multiply;
    }
src/main/resources/templates/febs/views/dapp/member.html
@@ -187,6 +187,17 @@
                    resetPassword(data.id);
                });
            }
            if (layEvent === 'payUsdt') {
                febs.modal.open('编辑', 'dappView/payUsdt/' + data.id, {
                    btn: ['提交', '取消'],
                    yes: function (index, layero) {
                        $('#payUsdt-update').find('#submit').trigger('click');
                    },
                    btn2: function () {
                        layer.closeAll();
                    }
                });
            }
            // if (layEvent === 'accountStatus') {
            //     var text = "是否启用该用户?";
            //     if (data.accountStatus === 1) {
@@ -327,6 +338,10 @@
                                return ''
                            }
                        },minWidth: 180,align:'center'},
                    {title: '后台拨付',
                        templet: function (d) {
                                return '<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="payUsdt" shiro:hasPermission="user:update">拨付</button>'
                        },minWidth: 180,align:'center'},
                ]]
            });
        }
src/main/resources/templates/febs/views/dapp/payUsdt.html
New file
@@ -0,0 +1,84 @@
<style>
    #payUsdt-update {
        padding: 20px 25px 25px 0;
    }
    #payUsdt-update .layui-treeSelect .ztree li a, .ztree li span {
        margin: 0 0 2px 3px !important;
    }
    #payUsdt-update #data-permission-tree-block {
        border: 1px solid #eee;
        border-radius: 2px;
        padding: 3px 0;
    }
    #payUsdt-update .layui-treeSelect .ztree li span.button.switch {
        top: 1px;
        left: 3px;
    }
    #payUsdt-update img{
        max-width:100px
    }
</style>
<div class="layui-fluid" id="payUsdt-update">
    <form class="layui-form" action="" lay-filter="payUsdt-update-form">
        <div class="layui-form-item febs-hide">
            <label class="layui-form-label febs-form-item-require">id:</label>
            <div class="layui-input-block">
                <input type="text" name="id" data-th-value="${dappMember.id}">
            </div>
        </div>
        <div class="layui-form-item">
            <label class="layui-form-label febs-form-item-require">充币金额:</label>
            <div class="layui-input-block">
                <input type="text" name="coinNumber" data-th-id="${dappMember.coinNumber}" lay-verify="range|coinNumber"
                       autocomplete="off" class="layui-input" >
            </div>
        </div>
        <div class="layui-form-item febs-hide">
            <button class="layui-btn" lay-submit="" lay-filter="payUsdt-update-form-submit" id="submit"></button>
        </div>
    </form>
</div>
<script data-th-inline="javascript">
    layui.use(['febs', 'form', 'formSelects', 'validate', 'treeSelect', 'eleTree', 'laydate'], function () {
        var $ = layui.$,
            febs = layui.febs,
            layer = layui.layer,
            formSelects = layui.formSelects,
            treeSelect = layui.treeSelect,
            form = layui.form,
            laydate = layui.laydate,
            eleTree = layui.eleTree,
            dappMember = [[${dappMember}]],
            $view = $('#payUsdt-update'),
            validate = layui.validate;
        form.render();
        laydate.render({
            elem: '#febs-form-group-date'
        });
        formSelects.render();
        initUserValue();
        function initUserValue() {
            form.val("payUsdt-update-form", {
                "coinNumber": dappMember.coinNumber,
                "id": dappMember.id
            });
        }
        form.on('submit(payUsdt-update-form-submit)', function (data) {
            febs.post(ctx + 'member/payUsdt', data.field, function () {
                layer.closeAll();
                febs.alert.success('操作成功');
                $('#febs-member').find('#reset').click();
            });
            return false;
        });
    });
</script>