xiaoyong931011
2022-11-08 667f4983bf7ca6ab1cc40cbc49b5456a86457987
20221021
5 files modified
2 files added
207 ■■■■■ changed files
src/main/java/cc/mrbird/febs/dapp/controller/MemberController.java 27 ●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/controller/ViewController.java 14 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java 4 ●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java 28 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/vo/AdminMemberIdentityVo.java 12 ●●●●● patch | view | raw | blame | history
src/main/resources/templates/febs/views/dapp/identitySet.html 90 ●●●●● patch | view | raw | blame | history
src/main/resources/templates/febs/views/dapp/member.html 32 ●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/dapp/controller/MemberController.java
@@ -7,12 +7,10 @@
import cc.mrbird.febs.common.utils.FebsUtil;
import cc.mrbird.febs.dapp.chain.ChainService;
import cc.mrbird.febs.dapp.dto.PriceSettingDto;
import cc.mrbird.febs.dapp.entity.AppVersion;
import cc.mrbird.febs.dapp.entity.DappMemberEntity;
import cc.mrbird.febs.dapp.entity.DappTransferRecordEntity;
import cc.mrbird.febs.dapp.entity.MemberCoinChargeEntity;
import cc.mrbird.febs.dapp.entity.*;
import cc.mrbird.febs.dapp.service.DappMemberService;
import cc.mrbird.febs.dapp.service.DappSystemService;
import cc.mrbird.febs.dapp.vo.AdminMemberIdentityVo;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.ibatis.annotations.Param;
@@ -26,6 +24,7 @@
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
@@ -203,4 +202,24 @@
    public FebsResponse addCoinConfirm(@Valid DappMemberEntity memberEntity) {
        return dappMemberService.payUsdt(memberEntity);
    }
    /**
     * 会员列表---会员等级下拉框
     */
    @GetMapping(value = "identitySetList")
    public FebsResponse identitySetList() {
        List<AdminMemberIdentityVo> identityVos = dappMemberService.identitySetList();
        return new FebsResponse().success().data(identityVos);
    }
    /**
     *会员列表---设置会员等级
     * @return
     */
    @PostMapping("identitySet")
    @ControllerEndpoint(operation = "会员列表-设置会员等级", exceptionMessage = "操作失败")
    public FebsResponse identitySet(@Valid DappMemberEntity memberEntity) {
        return dappMemberService.identitySet(memberEntity);
    }
}
src/main/java/cc/mrbird/febs/dapp/controller/ViewController.java
@@ -203,4 +203,18 @@
        return FebsUtil.view("dapp/payUsdt");
    }
    /**
     * 会员列表-设置会员等级
     * @param id
     * @param model
     * @return
     */
    @GetMapping("identitySet/{id}")
    @RequiresPermissions("identitySet:update")
    public String identitySet(@PathVariable long id, Model model) {
        DappMemberEntity data = dappMemberDao.selectById(id);
        model.addAttribute("dappMember", data);
        return FebsUtil.view("dapp/identitySet");
    }
}
src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java
@@ -98,4 +98,8 @@
    IPage<MemberCoinChargeEntity> getChargeListInPage(MemberCoinChargeEntity memberCoinChargeEntity, QueryRequest request);
    FebsResponse payUsdt(DappMemberEntity memberEntity);
    List<AdminMemberIdentityVo> identitySetList();
    FebsResponse identitySet(DappMemberEntity memberEntity);
}
src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java
@@ -1004,6 +1004,34 @@
        return new FebsResponse().success().message("操作成功");
    }
    @Override
    public List<AdminMemberIdentityVo> identitySetList() {
        ArrayList<AdminMemberIdentityVo> objects = new ArrayList<>();
        List<DataDictionaryCustom> dataDictionaryCustoms = dataDictionaryCustomMapper.selectDicByType(DataDictionaryEnum.LEVEL_AIB.getType());
        if(CollUtil.isNotEmpty(dataDictionaryCustoms)){
            for(DataDictionaryCustom dic :dataDictionaryCustoms){
                if(DataDictionaryEnum.LEVEL_TM.getCode() != dic.getCode()){
                    AdminMemberIdentityVo adminMemberIdentityVo = new AdminMemberIdentityVo();
                    adminMemberIdentityVo.setIdentityCode(dic.getCode());
                    adminMemberIdentityVo.setIdentityValue(dic.getDescription());
                    objects.add(adminMemberIdentityVo);
                }
            }
        }
        return objects;
    }
    @Override
    public FebsResponse identitySet(DappMemberEntity memberEntity) {
        DappMemberEntity dappMemberEntity = dappMemberDao.selectById(memberEntity.getId());
        if(ObjectUtil.isEmpty(dappMemberEntity)){
            return new FebsResponse().fail().message("会员信息不存在");
        }
        dappMemberEntity.setIdentity(memberEntity.getIdentity());
        dappMemberDao.updateById(dappMemberEntity);
        return new FebsResponse().success();
    }
    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/vo/AdminMemberIdentityVo.java
New file
@@ -0,0 +1,12 @@
package cc.mrbird.febs.dapp.vo;
import lombok.Data;
@Data
public class AdminMemberIdentityVo {
    private String identityCode;
    private String identityValue;
}
src/main/resources/templates/febs/views/dapp/identitySet.html
New file
@@ -0,0 +1,90 @@
<style>
    #identitySet-update {
        padding: 20px 25px 25px 0;
    }
    #identitySet-update .layui-treeSelect .ztree li a, .ztree li span {
        margin: 0 0 2px 3px !important;
    }
    #identitySet-update #data-permission-tree-block {
        border: 1px solid #eee;
        border-radius: 2px;
        padding: 3px 0;
    }
    #identitySet-update .layui-treeSelect .ztree li span.button.switch {
        top: 1px;
        left: 3px;
    }
    #identitySet-update img{
        max-width:100px
    }
</style>
<div class="layui-fluid" id="identitySet-update">
    <form class="layui-form" action="" lay-filter="identitySet-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">
                <select name="identity" class="identity-category" id="identity-category" >
<!--                    <option value="">请选择</option>-->
                </select>
            </div>
        </div>
        <div class="layui-form-item febs-hide">
            <button class="layui-btn" lay-submit="" lay-filter="identitySet-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 = $('#identitySet-update'),
            validate = layui.validate;
        //(下拉框)
        $.get(ctx + 'member/identitySetList', function (data) {
            var arr = data.data;
            for (let i = 0; i < arr.length; i++) {
                $(".identity-category").append("<option value='" + arr[i].identityCode + "'>" + arr[i].identityValue + "</option>");
            }
            layui.use('form', function () {
                var form = layui.form;
                form.render();
            });
            initUserValue();
        });
        function initUserValue() {
            form.val("identitySet-update-form", {
                "id": dappMember.id,
                "identity": dappMember.identity
            });
        }
        form.on('submit(identitySet-update-form-submit)', function (data) {
            febs.post(ctx + 'member/identitySet', data.field, function () {
                layer.closeAll();
                febs.alert.success('操作成功');
                $('#febs-member').find('#reset').click();
            });
            return false;
        });
    });
</script>
src/main/resources/templates/febs/views/dapp/member.html
@@ -198,6 +198,17 @@
                    }
                });
            }
            if (layEvent === 'identitySet') {
                febs.modal.open('设置会员等级', 'dappView/identitySet/' + data.id, {
                    btn: ['提交', '取消'],
                    yes: function (index, layero) {
                        $('#identitySet-update').find('#submit').trigger('click');
                    },
                    btn2: function () {
                        layer.closeAll();
                    }
                });
            }
            // if (layEvent === 'accountStatus') {
            //     var text = "是否启用该用户?";
            //     if (data.accountStatus === 1) {
@@ -308,16 +319,25 @@
                                return ''
                            }
                        }, minWidth: 80, align: 'center'},
                    {field: 'identity', title: '等级',
                    // {field: 'identity', title: '等级',
                    //     templet: function (d) {
                    //         if (d.identity === 'LEVEL_TM') {
                    //             return '<span></span>'
                    //         } else if (d.identity != 'LEVEL_TM' && d.identity != '' && d.identity != null) {
                    //             return '<span>'+d.identity+'</span>'
                    //         }else{
                    //             return ''
                    //         }
                    //     }, minWidth: 130, align: 'center'},
                    {title: '会员等级',
                        templet: function (d) {
                            if (d.identity === 'LEVEL_TM') {
                                return '<span></span>'
                            } else if (d.identity != 'LEVEL_TM' && d.identity != '' && d.identity != null) {
                            if(d.identity === 'LEVEL_TM'){
                                return '<span>'+d.identity+'</span>'
                            }else{
                                return ''
                                return '<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="identitySet" shiro:hasPermission="user:update"><span>'+d.identity+'</span></button>'
                            }
                        }, minWidth: 130, align: 'center'},
                        },minWidth: 130,align:'center'},
                    {field: 'totalAmount', title: '总金额', minWidth: 100},
                    {field: 'availableAmount', title: '可用余额', minWidth: 100},
                    {field: 'frozenAmount', title: '冻结金额', minWidth: 100},