From 667f4983bf7ca6ab1cc40cbc49b5456a86457987 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Tue, 08 Nov 2022 14:43:41 +0800
Subject: [PATCH] 20221021

---
 src/main/resources/templates/febs/views/dapp/identitySet.html             |   90 ++++++++++++++++++++++
 src/main/resources/templates/febs/views/dapp/member.html                  |   32 ++++++-
 src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java          |    4 +
 src/main/java/cc/mrbird/febs/dapp/controller/ViewController.java          |   14 +++
 src/main/java/cc/mrbird/febs/dapp/vo/AdminMemberIdentityVo.java           |   12 +++
 src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java |   28 +++++++
 src/main/java/cc/mrbird/febs/dapp/controller/MemberController.java        |   27 +++++-
 7 files changed, 197 insertions(+), 10 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/dapp/controller/MemberController.java b/src/main/java/cc/mrbird/febs/dapp/controller/MemberController.java
index d0b488f..7d0f356 100644
--- a/src/main/java/cc/mrbird/febs/dapp/controller/MemberController.java
+++ b/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);
+    }
 }
diff --git a/src/main/java/cc/mrbird/febs/dapp/controller/ViewController.java b/src/main/java/cc/mrbird/febs/dapp/controller/ViewController.java
index 799d11a..3f97dff 100644
--- a/src/main/java/cc/mrbird/febs/dapp/controller/ViewController.java
+++ b/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");
+    }
+
 }
diff --git a/src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java b/src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java
index 801f45d..54f563a 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java
+++ b/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);
 }
diff --git a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java
index f982610..cb5e8ce 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java
+++ b/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);
diff --git a/src/main/java/cc/mrbird/febs/dapp/vo/AdminMemberIdentityVo.java b/src/main/java/cc/mrbird/febs/dapp/vo/AdminMemberIdentityVo.java
new file mode 100644
index 0000000..8acab86
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/dapp/vo/AdminMemberIdentityVo.java
@@ -0,0 +1,12 @@
+package cc.mrbird.febs.dapp.vo;
+
+import lombok.Data;
+
+@Data
+public class AdminMemberIdentityVo {
+
+    private String identityCode;
+
+    private String identityValue;
+
+}
diff --git a/src/main/resources/templates/febs/views/dapp/identitySet.html b/src/main/resources/templates/febs/views/dapp/identitySet.html
new file mode 100644
index 0000000..15a4f09
--- /dev/null
+++ b/src/main/resources/templates/febs/views/dapp/identitySet.html
@@ -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>
\ No newline at end of file
diff --git a/src/main/resources/templates/febs/views/dapp/member.html b/src/main/resources/templates/febs/views/dapp/member.html
index fd363e5..2989d9f 100644
--- a/src/main/resources/templates/febs/views/dapp/member.html
+++ b/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},

--
Gitblit v1.9.1