5 files modified
2 files added
| | |
| | | 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; |
| | |
| | | import javax.validation.constraints.NotNull; |
| | | import java.math.BigDecimal; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | /** |
| | |
| | | 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); |
| | | } |
| | | } |
| | |
| | | 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"); |
| | | } |
| | | |
| | | } |
| | |
| | | IPage<MemberCoinChargeEntity> getChargeListInPage(MemberCoinChargeEntity memberCoinChargeEntity, QueryRequest request); |
| | | |
| | | FebsResponse payUsdt(DappMemberEntity memberEntity); |
| | | |
| | | List<AdminMemberIdentityVo> identitySetList(); |
| | | |
| | | FebsResponse identitySet(DappMemberEntity memberEntity); |
| | | } |
| | |
| | | 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); |
| New file |
| | |
| | | package cc.mrbird.febs.dapp.vo; |
| | | |
| | | import lombok.Data; |
| | | |
| | | @Data |
| | | public class AdminMemberIdentityVo { |
| | | |
| | | private String identityCode; |
| | | |
| | | private String identityValue; |
| | | |
| | | } |
| New file |
| | |
| | | <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> |
| | |
| | | } |
| | | }); |
| | | } |
| | | 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) { |
| | |
| | | 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}, |