From dacdca90b0faed8a38d56b2bab0df3ad3b9982b1 Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Wed, 31 Jan 2024 10:38:14 +0800
Subject: [PATCH] 会员列表增加波卷功能

---
 src/main/resources/mapper/modules/MallAgentRecordMapper.xml                    |    4 +
 src/main/java/cc/mrbird/febs/mall/controller/AdminMallMemberController.java    |   18 ++++
 src/main/resources/templates/febs/views/modules/mallMember/rollPerkSet.html    |   90 ++++++++++++++++++++++
 src/main/java/cc/mrbird/febs/common/utils/ZzSmsSend.java                       |    4 
 src/main/java/cc/mrbird/febs/mall/mapper/MallAgentRecordMapper.java            |    3 
 src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java |   22 +++++
 src/main/resources/templates/febs/views/modules/mallMember/mallMemberList.html |   17 ++++
 src/main/java/cc/mrbird/febs/mall/controller/CommonController.java             |    7 +
 src/main/java/cc/mrbird/febs/mall/controller/ViewMallMemberController.java     |   15 +++
 src/main/java/cc/mrbird/febs/mall/mapper/DataDictionaryCustomMapper.java       |    2 
 src/main/java/cc/mrbird/febs/common/utils/Sms106Send.java                      |    2 
 src/main/resources/mapper/modules/DataDictionaryCustomMapper.xml               |    5 +
 src/main/java/cc/mrbird/febs/mall/service/IAdminMallMemberService.java         |    2 
 13 files changed, 185 insertions(+), 6 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/common/utils/Sms106Send.java b/src/main/java/cc/mrbird/febs/common/utils/Sms106Send.java
index 62fec4e..72add6a 100644
--- a/src/main/java/cc/mrbird/febs/common/utils/Sms106Send.java
+++ b/src/main/java/cc/mrbird/febs/common/utils/Sms106Send.java
@@ -21,7 +21,7 @@
     private static final String URL = "http://www.qf106.com/sms.aspx";
     private static final String ID = "16880";
     private static final String ACCOUNT = "ywg";
-    private static final String PASSWORD = "ywg123456";
+    private static final String PASSWORD = "1!qaz2@wsx";
 
 
     /**
diff --git a/src/main/java/cc/mrbird/febs/common/utils/ZzSmsSend.java b/src/main/java/cc/mrbird/febs/common/utils/ZzSmsSend.java
index cc8afd9..017dac0 100644
--- a/src/main/java/cc/mrbird/febs/common/utils/ZzSmsSend.java
+++ b/src/main/java/cc/mrbird/febs/common/utils/ZzSmsSend.java
@@ -34,8 +34,8 @@
         return new com.aliyun.dysmsapi20170525.Client(config);
     }
 
-    private static final String SIGNNAME = "钱阿姨";
-    private static final String TEMPLATECODE = "SMS_251041117";
+    private static final String SIGNNAME = "药王谷铺子";
+    private static final String TEMPLATECODE = "SMS_465075162";
     public static boolean sendALiYun(String phone,String TemplateParam){
         com.aliyun.dysmsapi20170525.Client client = null;
         try {
diff --git a/src/main/java/cc/mrbird/febs/mall/controller/AdminMallMemberController.java b/src/main/java/cc/mrbird/febs/mall/controller/AdminMallMemberController.java
index 8e58190..91c0fa2 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/AdminMallMemberController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/AdminMallMemberController.java
@@ -233,6 +233,15 @@
     /**
      * 代理-等级选择Option
      */
+    @GetMapping("getRollperkOption/tree")
+    @ControllerEndpoint(exceptionMessage = "获取等级失败")
+    public List<AdminAgentLevelOptionTreeVo> getRollperkOption() {
+        return mallMemberService.getRollperkOption();
+    }
+
+    /**
+     * 代理-等级选择Option
+     */
     @GetMapping("agentLevelOption/tree")
     @ControllerEndpoint(exceptionMessage = "获取等级失败")
     public List<AdminAgentLevelOptionTreeVo> agentLevelOption() {
@@ -276,6 +285,15 @@
     }
 
     /**
+     * 拨付卷
+     */
+    @PostMapping("rollperkSetUpdate")
+    @ControllerEndpoint(operation = "拨付卷", exceptionMessage = "操作失败")
+    public FebsResponse rollperkSetUpdate(@Valid AgentLevelSetUpdateDto agentLevelSetUpdateDto) {
+        return mallMemberService.rollperkSetUpdate(agentLevelSetUpdateDto);
+    }
+
+    /**
      * 奖励设置-列表
      *
      * @param rankAwardDto
diff --git a/src/main/java/cc/mrbird/febs/mall/controller/CommonController.java b/src/main/java/cc/mrbird/febs/mall/controller/CommonController.java
index 9197a1e..d3d9cb6 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/CommonController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/CommonController.java
@@ -53,7 +53,8 @@
 
         // 发送手机验证码
         if (AppContants.ACCOUNT_TYPE_MOBILE.equals(type)) {
-            boolean result = Sms106Send.sendVerifyCode(account, code.toString(), 2);
+//            boolean result = Sms106Send.sendVerifyCode(account, code.toString(), 2);
+            boolean result = ZzSmsSend.sendALiYun(account, code.toString());
 //            boolean result = ZzSmsSend.sendVerifyCode(account, code.toString(), 2);
             if (result) {
                 Map<String, Object> map = new HashMap<>();
@@ -91,8 +92,8 @@
         // 发送手机验证码
         if (AppContants.ACCOUNT_TYPE_MOBILE.equals(type)) {
 
-            boolean result = Sms106Send.sendVerifyCode(account, code.toString(), 2);
-//            boolean result = ZzSmsSend.sendALiYun(account, code.toString());
+//            boolean result = Sms106Send.sendVerifyCode(account, code.toString(), 2);
+            boolean result = ZzSmsSend.sendALiYun(account, code.toString());
             if (result) {
                 Map<String, Object> map = new HashMap<>();
                 boolean flag = redisUtils.set(AppContants.VERIFY_CODE_PREFIX + account, code, 120);
diff --git a/src/main/java/cc/mrbird/febs/mall/controller/ViewMallMemberController.java b/src/main/java/cc/mrbird/febs/mall/controller/ViewMallMemberController.java
index 8ff5849..4b96830 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/ViewMallMemberController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/ViewMallMemberController.java
@@ -188,6 +188,21 @@
     }
 
     /**
+     * 卷-设置卷-拨付卷
+     * @param id
+     * @param model
+     * @return
+     */
+    @GetMapping("rollPerkSet/{id}")
+    @RequiresPermissions("rollPerkSet:update")
+    public String rollPerkSet(@PathVariable long id, Model model) {
+        AdminAgentLevelSetInfoVo data = new AdminAgentLevelSetInfoVo();
+        data.setId(id);//会员memberID
+        model.addAttribute("rollperkSet", data);
+        return FebsUtil.view("modules/mallMember/rollperkSet");
+    }
+
+    /**
      * 奖励设置-列表
      * @return
      */
diff --git a/src/main/java/cc/mrbird/febs/mall/mapper/DataDictionaryCustomMapper.java b/src/main/java/cc/mrbird/febs/mall/mapper/DataDictionaryCustomMapper.java
index 0f873f3..31cb7e3 100644
--- a/src/main/java/cc/mrbird/febs/mall/mapper/DataDictionaryCustomMapper.java
+++ b/src/main/java/cc/mrbird/febs/mall/mapper/DataDictionaryCustomMapper.java
@@ -32,4 +32,6 @@
     AdminRankAwardUpdateInfoVo getRankAwardUpdateInfoById(@Param("id")long id);
 
     int updateDicValueByTypeAndCode(@Param("type") String type, @Param("code") String code, @Param("value") String value);
+
+    List<AdminAgentLevelOptionTreeVo> getRollperkOption();
 }
diff --git a/src/main/java/cc/mrbird/febs/mall/mapper/MallAgentRecordMapper.java b/src/main/java/cc/mrbird/febs/mall/mapper/MallAgentRecordMapper.java
index f165d9a..9968b83 100644
--- a/src/main/java/cc/mrbird/febs/mall/mapper/MallAgentRecordMapper.java
+++ b/src/main/java/cc/mrbird/febs/mall/mapper/MallAgentRecordMapper.java
@@ -1,6 +1,7 @@
 package cc.mrbird.febs.mall.mapper;
 
 import cc.mrbird.febs.mall.entity.MallAgentRecord;
+import cc.mrbird.febs.mall.vo.AdminAgentLevelSetInfoVo;
 import cc.mrbird.febs.mall.vo.ApiMallAgentRecordVo;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -22,4 +23,6 @@
     ApiMallAgentRecordVo selectApiMallAgentRecordVoByMemberIdAndState(@Param("memberId")Long memberId, @Param("state")Integer applyIng);
 
     List<MallAgentRecord> selectByCity(@Param("city")String city);
+
+    AdminAgentLevelSetInfoVo getRollPerkInfo();
 }
diff --git a/src/main/java/cc/mrbird/febs/mall/service/IAdminMallMemberService.java b/src/main/java/cc/mrbird/febs/mall/service/IAdminMallMemberService.java
index 18a1c54..aea32e0 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/IAdminMallMemberService.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/IAdminMallMemberService.java
@@ -44,6 +44,7 @@
     FebsResponse agentLevelUpdate(AgentLevelUpdateDto agentLevelUpdateDto);
 
     List<AdminAgentLevelOptionTreeVo> getAgentLevelOption();
+    List<AdminAgentLevelOptionTreeVo> getRollperkOption();
 
     IPage<AdminAgentMemberVo> agentChild(QueryRequest request, MallMember mallMember);
 
@@ -70,6 +71,7 @@
     AdminAgentLevelSetInfoVo getAgentLevelSetInfoByMemberId(long id);
 
     FebsResponse agentLevelSetUpdate(AgentLevelSetUpdateDto agentLevelSetUpdateDto);
+    FebsResponse rollperkSetUpdate(AgentLevelSetUpdateDto agentLevelSetUpdateDto);
 
     FebsResponse resetPwd(Long id);
 
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java
index a7b23d0..a448dca 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java
@@ -48,6 +48,7 @@
 public class AdminMallMemberServiceImpl extends ServiceImpl<MallMemberMapper, MallMember> implements IAdminMallMemberService {
 
     private final MallMemberMapper mallMemberMapper;
+    private final MallRollPerkMapper mallRollPerkMapper;
 
     private final MallMemberWalletMapper mallMemberWalletMapper;
 
@@ -287,6 +288,11 @@
         return dataDictionaryCustomMapper.getAgentLevelOption();
     }
 
+    @Override
+    public List<AdminAgentLevelOptionTreeVo> getRollperkOption() {
+        return dataDictionaryCustomMapper.getRollperkOption();
+    }
+
 
     @Override
     public List<AdminAgentLevelOptionTreeVo> agentLevelOption() {
@@ -488,6 +494,22 @@
     }
 
     @Override
+    public FebsResponse rollperkSetUpdate(AgentLevelSetUpdateDto agentLevelSetUpdateDto) {
+        Long memberId = agentLevelSetUpdateDto.getId();
+        MallMember mallMember = mallMemberMapper.selectById(memberId);
+        if(ObjectUtil.isEmpty(mallMember)){
+            return new FebsResponse().fail().message("系统繁忙,请刷新页面重试");
+        }
+        MallRollPerk mallRollPerk = new MallRollPerk();
+        mallRollPerk.setMemberId(memberId);
+        mallRollPerk.setState(1);
+        long rollId = Long.parseLong(agentLevelSetUpdateDto.getLevelCode());
+        mallRollPerk.setRollId(rollId);
+        mallRollPerkMapper.insert(mallRollPerk);
+        return new FebsResponse().success();
+    }
+
+    @Override
     public FebsResponse resetPwd(Long id) {
         MallMember mallMember = this.baseMapper.selectById(id);
         if (mallMember == null) {
diff --git a/src/main/resources/mapper/modules/DataDictionaryCustomMapper.xml b/src/main/resources/mapper/modules/DataDictionaryCustomMapper.xml
index 72da31a..c2beb82 100644
--- a/src/main/resources/mapper/modules/DataDictionaryCustomMapper.xml
+++ b/src/main/resources/mapper/modules/DataDictionaryCustomMapper.xml
@@ -58,4 +58,9 @@
             </if>
         </where>
     </update>
+
+
+    <select id="getRollperkOption" resultType="cc.mrbird.febs.mall.vo.AdminAgentLevelOptionTreeVo">
+        select a.id id,a.roll_name name from mall_roll a
+    </select>
 </mapper>
\ No newline at end of file
diff --git a/src/main/resources/mapper/modules/MallAgentRecordMapper.xml b/src/main/resources/mapper/modules/MallAgentRecordMapper.xml
index 5f1d001..beb964a 100644
--- a/src/main/resources/mapper/modules/MallAgentRecordMapper.xml
+++ b/src/main/resources/mapper/modules/MallAgentRecordMapper.xml
@@ -59,4 +59,8 @@
         where a.city = #{city}
     </select>
 
+    <select id="getRollPerkInfo" resultType="cc.mrbird.febs.mall.vo.AdminAgentLevelSetInfoVo">
+        select a.id ,a.roll_name levelCode from mall_roll a where id = 1
+    </select>
+
 </mapper>
\ No newline at end of file
diff --git a/src/main/resources/templates/febs/views/modules/mallMember/mallMemberList.html b/src/main/resources/templates/febs/views/modules/mallMember/mallMemberList.html
index 775c27e..1252424 100644
--- a/src/main/resources/templates/febs/views/modules/mallMember/mallMemberList.html
+++ b/src/main/resources/templates/febs/views/modules/mallMember/mallMemberList.html
@@ -109,6 +109,7 @@
 <!--        <button class="layui-btn layui-btn-normal layui-btn-sm" type="button" lay-event="resetPwd">重置登录密码</button>-->
 <!--        <button class="layui-btn layui-btn-normal layui-btn-sm" type="button" lay-event="resetPayPwd">重置支付密码</button>-->
 <!--        <button class="layui-btn layui-btn-normal layui-btn-sm" type="button" lay-event="agentLevel">设置代理等级</button>-->
+        <button class="layui-btn layui-btn-normal layui-btn-sm" type="button" lay-event="rollPerk">拨卷</button>
     </div>
 </script>
 <!-- 表格操作栏 end -->
@@ -382,6 +383,22 @@
                     }
                 });
             }
+
+            if (layEvent === 'rollPerk') {
+                if (checkData.length > 1) {
+                    febs.alert.warn('请选择一个用户');
+                    return;
+                }
+                febs.modal.open('拨卷', 'modules/mallMember/rollPerkSet/' + checkData[0].id, {
+                    btn: ['确认', '取消'],
+                    yes: function (index, layero) {
+                        $('#roll_perk-set').find('#submit').trigger('click');
+                    },
+                    btn2: function () {
+                        layer.closeAll();
+                    }
+                });
+            }
         });
 
         function systemPay(text, id, type) {
diff --git a/src/main/resources/templates/febs/views/modules/mallMember/rollPerkSet.html b/src/main/resources/templates/febs/views/modules/mallMember/rollPerkSet.html
new file mode 100644
index 0000000..55c09a5
--- /dev/null
+++ b/src/main/resources/templates/febs/views/modules/mallMember/rollPerkSet.html
@@ -0,0 +1,90 @@
+<style>
+    #roll_perk-set {
+        padding: 20px 25px 25px 0;
+    }
+
+    #roll_perk-set .layui-treeSelect .ztree li a, .ztree li span {
+        margin: 0 0 2px 3px !important;
+    }
+    #roll_perk-set #data-permission-tree-block {
+        border: 1px solid #eee;
+        border-radius: 2px;
+        padding: 3px 0;
+    }
+    #roll_perk-set .layui-treeSelect .ztree li span.button.switch {
+        top: 1px;
+        left: 3px;
+    }
+
+</style>
+<div class="layui-fluid" id="roll_perk-set">
+    <form class="layui-form" action="" lay-filter="roll_perk-set-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">
+            </div>
+        </div>
+        <div class="layui-form-item">
+            <div class="layui-inline">
+                <label class="layui-form-label">卷类型:</label>
+                <div class="layui-input-inline">
+                    <select lay-verify="required" name="levelCode" class="roll_perk-set-level" id="perkSet">
+                        <option value="">请选择</option>
+                    </select>
+                </div>
+            </div>
+        </div>
+        <div class="layui-form-item febs-hide">
+            <button class="layui-btn" lay-submit="" lay-filter="roll_perk-set-form-submit" id="submit"></button>
+        </div>
+    </form>
+</div>
+
+<script data-th-inline="javascript">
+    layui.use(['febs', 'form', 'formSelects', 'validate', 'treeSelect', 'eleTree'], function () {
+        var $ = layui.jquery,
+            febs = layui.febs,
+            layer = layui.layer,
+            formSelects = layui.formSelects,
+            treeSelect = layui.treeSelect,
+            form = layui.form,
+            eleTree = layui.eleTree,
+            rollperkSet = [[${rollperkSet}]],
+            $view = $('#roll_perk-set'),
+            validate = layui.validate,
+            _deptTree;
+
+        form.render();
+
+        initUserValue();
+
+        function initUserValue() {
+            form.val("roll_perk-set-form", {
+                "id": rollperkSet.id,
+            });
+        }
+
+        //(下拉框)
+        $.get(ctx + 'admin/mallMember/getRollperkOption/tree', function (data) {
+            for (var k in data)
+            {
+                $(".roll_perk-set-level").append("<option value='" + data[k].id + "'>" + data[k].name + "</option>");
+            }
+            layui.use('form', function () {
+                var form = layui.form;
+                // $("#perkSet").val(rollperkSet.levelCode)
+                form.render();
+            });
+        });
+
+        form.on('submit(roll_perk-set-form-submit)', function (data) {
+            febs.post(ctx + 'admin/mallMember/rollperkSetUpdate', data.field, function () {
+                layer.closeAll();
+                febs.alert.success('操作成功');
+                $('#febs-member-list').find('#reset').click();
+            });
+            return false;
+        });
+    });
+</script>
\ No newline at end of file

--
Gitblit v1.9.1