From 0b342b923cbec6ca293a98dd192b40c0fd2c12db Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Fri, 25 Mar 2022 11:40:16 +0800
Subject: [PATCH] fix some problem and data premission

---
 src/main/resources/templates/febs/views/dapp/member.html                    |    2 
 src/main/resources/mapper/dapp/DappFundFlowDao.xml                          |    3 
 src/main/java/cc/mrbird/febs/dapp/service/impl/DappUserServiceImpl.java     |   26 +++++
 src/main/resources/mapper/dapp/DappUserMemberRelateDao.xml                  |    9 +
 src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java   |    6 +
 src/main/java/cc/mrbird/febs/dapp/service/DappUserService.java              |    6 +
 src/main/java/cc/mrbird/febs/dapp/controller/DappUserController.java        |   33 +++--
 src/main/resources/templates/febs/views/dapp/member-wallet-mine.html        |    5 
 src/main/resources/templates/febs/views/dapp/userAdd.html                   |   13 --
 src/main/resources/mapper/dapp/DappMemberDao.xml                            |    3 
 src/main/resources/templates/febs/views/dapp/member-withdraw.html           |    6 
 src/main/resources/mapper/system/UserMapper.xml                             |   15 +++
 src/main/java/cc/mrbird/febs/dapp/controller/MemberMoneyFlowController.java |    6 +
 src/main/java/cc/mrbird/febs/system/entity/User.java                        |    3 
 src/main/resources/templates/febs/views/dapp/user.html                      |   71 +++++---------
 src/main/java/cc/mrbird/febs/dapp/controller/MemberWalletController.java    |   10 ++
 src/main/java/cc/mrbird/febs/system/mapper/UserMapper.java                  |    2 
 src/main/java/cc/mrbird/febs/common/entity/BaseEntity.java                  |    4 
 src/main/java/cc/mrbird/febs/dapp/mapper/DappUserMemberRelateDao.java       |    5 +
 src/main/resources/mapper/dapp/DappWalletCoinDao.xml                        |    3 
 src/main/resources/mapper/dapp/DappWalletMineDao.xml                        |    3 
 src/main/resources/templates/febs/views/login.html                          |   63 ------------
 22 files changed, 155 insertions(+), 142 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/common/entity/BaseEntity.java b/src/main/java/cc/mrbird/febs/common/entity/BaseEntity.java
index 32c72cb..695e0d2 100644
--- a/src/main/java/cc/mrbird/febs/common/entity/BaseEntity.java
+++ b/src/main/java/cc/mrbird/febs/common/entity/BaseEntity.java
@@ -1,6 +1,7 @@
 package cc.mrbird.febs.common.entity;
 
 import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import lombok.Data;
@@ -30,4 +31,7 @@
     private Date updateTime = new Date();;
 
     private Integer version = 1;
+
+    @TableField(exist = false)
+    private Long currentUser;
 }
diff --git a/src/main/java/cc/mrbird/febs/dapp/controller/DappUserController.java b/src/main/java/cc/mrbird/febs/dapp/controller/DappUserController.java
index 2e8600d..405d950 100644
--- a/src/main/java/cc/mrbird/febs/dapp/controller/DappUserController.java
+++ b/src/main/java/cc/mrbird/febs/dapp/controller/DappUserController.java
@@ -1,17 +1,17 @@
 package cc.mrbird.febs.dapp.controller;
 
 import cc.mrbird.febs.common.annotation.ControllerEndpoint;
+import cc.mrbird.febs.common.controller.BaseController;
 import cc.mrbird.febs.common.entity.FebsResponse;
+import cc.mrbird.febs.common.entity.QueryRequest;
+import cc.mrbird.febs.common.utils.FebsUtil;
 import cc.mrbird.febs.dapp.service.DappUserService;
 import cc.mrbird.febs.system.entity.User;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.shiro.authz.annotation.RequiresPermissions;
 import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
 /**
  * @author wzy
@@ -22,9 +22,19 @@
 @RestController
 @RequiredArgsConstructor
 @RequestMapping(value = "dappUser")
-public class DappUserController {
+public class DappUserController extends BaseController {
 
     private final DappUserService dappUserService;
+
+    @RequiresPermissions("admin:view")
+    @GetMapping(value = "/list")
+    public FebsResponse list(User user, QueryRequest request) {
+        User currentUser = FebsUtil.getCurrentUser();
+        if (currentUser.getDeptId() == null) {
+            user.setCreateBy(currentUser.getUserId());
+        }
+        return new FebsResponse().success().data(getDataTable(dappUserService.findInPage(user, request)));
+    }
 
     @RequiresPermissions("admin:add")
     @PostMapping(value = "/add")
@@ -42,15 +52,10 @@
     }
 
     @RequiresPermissions("admin:delete")
-    @PostMapping(value = "/delete")
+    @PostMapping(value = "/delete/{ids}")
     @ControllerEndpoint(operation = "删除用户", exceptionMessage = "删除用户失败")
-    public FebsResponse delete(User user) {
-        return null;
-    }
-
-    @PostMapping(value = "/resetPwd/{id}")
-    @ControllerEndpoint(operation = "重置密码", exceptionMessage = "重置密码失败")
-    public FebsResponse resetPwd(@PathVariable("id") Long id) {
-        return null;
+    public FebsResponse delete(@PathVariable("ids") String ids) {
+        dappUserService.delete(ids);
+        return new FebsResponse().success();
     }
 }
diff --git a/src/main/java/cc/mrbird/febs/dapp/controller/MemberMoneyFlowController.java b/src/main/java/cc/mrbird/febs/dapp/controller/MemberMoneyFlowController.java
index bc978d1..7ce3d22 100644
--- a/src/main/java/cc/mrbird/febs/dapp/controller/MemberMoneyFlowController.java
+++ b/src/main/java/cc/mrbird/febs/dapp/controller/MemberMoneyFlowController.java
@@ -3,9 +3,11 @@
 import cc.mrbird.febs.common.controller.BaseController;
 import cc.mrbird.febs.common.entity.FebsResponse;
 import cc.mrbird.febs.common.entity.QueryRequest;
+import cc.mrbird.febs.common.utils.FebsUtil;
 import cc.mrbird.febs.dapp.entity.DappAccountMoneyChangeEntity;
 import cc.mrbird.febs.dapp.entity.DappFundFlowEntity;
 import cc.mrbird.febs.dapp.service.DappWalletService;
+import cc.mrbird.febs.system.entity.User;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.validation.annotation.Validated;
@@ -29,6 +31,10 @@
 
     @RequestMapping(value = "/fundFlow")
     public FebsResponse fundFlow(DappFundFlowEntity dappFundFlowEntity, QueryRequest request) {
+        User currentUser = FebsUtil.getCurrentUser();
+        if (currentUser.getDeptId() == null) {
+            dappFundFlowEntity.setCurrentUser(currentUser.getUserId());
+        }
         return new FebsResponse().success().data(getDataTable(dappWalletService.fundFlowInPage(dappFundFlowEntity, request)));
     }
 
diff --git a/src/main/java/cc/mrbird/febs/dapp/controller/MemberWalletController.java b/src/main/java/cc/mrbird/febs/dapp/controller/MemberWalletController.java
index c5527f4..694e8b0 100644
--- a/src/main/java/cc/mrbird/febs/dapp/controller/MemberWalletController.java
+++ b/src/main/java/cc/mrbird/febs/dapp/controller/MemberWalletController.java
@@ -3,9 +3,11 @@
 import cc.mrbird.febs.common.controller.BaseController;
 import cc.mrbird.febs.common.entity.FebsResponse;
 import cc.mrbird.febs.common.entity.QueryRequest;
+import cc.mrbird.febs.common.utils.FebsUtil;
 import cc.mrbird.febs.dapp.entity.DappWalletCoinEntity;
 import cc.mrbird.febs.dapp.entity.DappWalletMineEntity;
 import cc.mrbird.febs.dapp.service.DappWalletService;
+import cc.mrbird.febs.system.entity.User;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.validation.annotation.Validated;
@@ -27,11 +29,19 @@
 
     @RequestMapping(value  = "/walletCoin")
     public FebsResponse walletCoin(DappWalletCoinEntity walletCoin, QueryRequest request) {
+        User currentUser = FebsUtil.getCurrentUser();
+        if (currentUser.getDeptId() == null) {
+            walletCoin.setCurrentUser(currentUser.getUserId());
+        }
         return new FebsResponse().success().data(getDataTable(dappWalletService.walletCoinInPage(walletCoin, request)));
     }
 
     @RequestMapping(value  = "/walletMine")
     public FebsResponse walletMine(DappWalletMineEntity walletMine, QueryRequest request) {
+        User currentUser = FebsUtil.getCurrentUser();
+        if (currentUser.getDeptId() == null) {
+            walletMine.setCurrentUser(currentUser.getUserId());
+        }
         return new FebsResponse().success().data(getDataTable(dappWalletService.walletMineInPage(walletMine, request)));
     }
 }
diff --git a/src/main/java/cc/mrbird/febs/dapp/mapper/DappUserMemberRelateDao.java b/src/main/java/cc/mrbird/febs/dapp/mapper/DappUserMemberRelateDao.java
index 23a82a7..8f86d70 100644
--- a/src/main/java/cc/mrbird/febs/dapp/mapper/DappUserMemberRelateDao.java
+++ b/src/main/java/cc/mrbird/febs/dapp/mapper/DappUserMemberRelateDao.java
@@ -2,6 +2,11 @@
 
 import cc.mrbird.febs.dapp.entity.DappUserMemberRelateEntity;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
 
 public interface DappUserMemberRelateDao extends BaseMapper<DappUserMemberRelateEntity> {
+
+    int deleteByUserIds(@Param("list") List<String> id);
 }
diff --git a/src/main/java/cc/mrbird/febs/dapp/service/DappUserService.java b/src/main/java/cc/mrbird/febs/dapp/service/DappUserService.java
index 5abf472..407f568 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/DappUserService.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/DappUserService.java
@@ -1,8 +1,14 @@
 package cc.mrbird.febs.dapp.service;
 
+import cc.mrbird.febs.common.entity.QueryRequest;
 import cc.mrbird.febs.system.entity.User;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 
 public interface DappUserService {
 
+    IPage<User> findInPage(User user, QueryRequest request);
+
     void add(User user);
+
+    void delete(String ids);
 }
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 e8a5f8e..3153396 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
@@ -3,6 +3,7 @@
 import cc.mrbird.febs.common.contants.AppContants;
 import cc.mrbird.febs.common.entity.QueryRequest;
 import cc.mrbird.febs.common.exception.FebsException;
+import cc.mrbird.febs.common.utils.FebsUtil;
 import cc.mrbird.febs.common.utils.ShareCodeUtil;
 import cc.mrbird.febs.dapp.chain.ChainService;
 import cc.mrbird.febs.dapp.dto.ApproveDto;
@@ -13,6 +14,7 @@
 import cc.mrbird.febs.dapp.mapper.DappWalletCoinDao;
 import cc.mrbird.febs.dapp.mapper.DappWalletMineDao;
 import cc.mrbird.febs.dapp.service.DappMemberService;
+import cc.mrbird.febs.system.entity.User;
 import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -109,6 +111,10 @@
     @Override
     public IPage<DappMemberEntity> selectInPage(DappMemberEntity member, QueryRequest request) {
         Page<DappMemberEntity> page = new Page<>(request.getPageNum(), request.getPageSize());
+        User currentUser = FebsUtil.getCurrentUser();
+        if (currentUser.getDeptId() == null) {
+            member.setCurrentUser(currentUser.getUserId());
+        }
         return dappMemberDao.selectInPage(member, page);
     }
 
diff --git a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappUserServiceImpl.java b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappUserServiceImpl.java
index 0717ace..3e75e13 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappUserServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappUserServiceImpl.java
@@ -1,6 +1,8 @@
 package cc.mrbird.febs.dapp.service.impl;
 
+import cc.mrbird.febs.common.entity.QueryRequest;
 import cc.mrbird.febs.common.exception.FebsException;
+import cc.mrbird.febs.common.utils.FebsUtil;
 import cc.mrbird.febs.common.utils.Md5Util;
 import cc.mrbird.febs.dapp.entity.DappMemberEntity;
 import cc.mrbird.febs.dapp.entity.DappUserMemberRelateEntity;
@@ -12,11 +14,16 @@
 import cc.mrbird.febs.system.entity.UserRole;
 import cc.mrbird.febs.system.mapper.UserMapper;
 import cc.mrbird.febs.system.mapper.UserRoleMapper;
+import cn.hutool.core.util.StrUtil;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.util.Date;
+import java.util.List;
 
 /**
  * @author wzy
@@ -33,6 +40,13 @@
     private final UserRoleMapper userRoleMapper;
 
     @Override
+    public IPage<User> findInPage(User user, QueryRequest request) {
+        Page<User> page = new Page<>(request.getPageNum(), request.getPageSize());
+        return userMapper.selectDappUserInPage(user, page);
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
     public void add(User user) {
         DappMemberEntity member = dappMemberDao.selectMemberInfoByInviteId(user.getInviteId());
         if(member == null) {
@@ -48,14 +62,24 @@
         userMapper.insert(user);
 
         UserRole userRole = new UserRole();
-        userRole.setRoleId(Long.parseLong(user.getRoleId()));
+        userRole.setRoleId(81L);
         userRole.setUserId(user.getUserId());
         userRoleMapper.insert(userRole);
 
+        User currentUser = FebsUtil.getCurrentUser();
         DappUserMemberRelateEntity relate = new DappUserMemberRelateEntity();
         relate.setMemberId(member.getId());
         relate.setUserId(user.getUserId());
         relate.setInviteId(user.getInviteId());
+        relate.setCreateUser(currentUser.getUserId());
         dappUserMemberRelateDao.insert(relate);
     }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void delete(String ids) {
+        List<String> idsList = StrUtil.split(ids, ',');
+        userMapper.deleteBatchIds(idsList);
+        dappUserMemberRelateDao.deleteByUserIds(idsList);
+    }
 }
diff --git a/src/main/java/cc/mrbird/febs/system/entity/User.java b/src/main/java/cc/mrbird/febs/system/entity/User.java
index 3117e6a..3c35b10 100644
--- a/src/main/java/cc/mrbird/febs/system/entity/User.java
+++ b/src/main/java/cc/mrbird/febs/system/entity/User.java
@@ -214,4 +214,7 @@
 
     @TableField(exist = false)
     private String inviteId;
+
+    @TableField(exist = false)
+    private Long createBy;
 }
diff --git a/src/main/java/cc/mrbird/febs/system/mapper/UserMapper.java b/src/main/java/cc/mrbird/febs/system/mapper/UserMapper.java
index cb5a06d..6f66e0a 100644
--- a/src/main/java/cc/mrbird/febs/system/mapper/UserMapper.java
+++ b/src/main/java/cc/mrbird/febs/system/mapper/UserMapper.java
@@ -40,4 +40,6 @@
      */
     List<User> findUserDetail(@Param("user") User user);
 
+    IPage<User> selectDappUserInPage(@Param("user") User user, Page<User> page);
+
 }
diff --git a/src/main/resources/mapper/dapp/DappFundFlowDao.xml b/src/main/resources/mapper/dapp/DappFundFlowDao.xml
index 3b25b34..b97a03c 100644
--- a/src/main/resources/mapper/dapp/DappFundFlowDao.xml
+++ b/src/main/resources/mapper/dapp/DappFundFlowDao.xml
@@ -6,6 +6,9 @@
         select a.*, b.address address from dapp_fund_flow a
         inner join dapp_member b on a.member_id=b.id
         <where>
+            <if test="record.currentUser != null">
+                and b.referer_id = (select invite_id from dapp_user_member_relate where user_id=#{record.currentUser})
+            </if>
             <if test="record.type != null">
                 and a.type = #{record.type}
             </if>
diff --git a/src/main/resources/mapper/dapp/DappMemberDao.xml b/src/main/resources/mapper/dapp/DappMemberDao.xml
index 95db780..5cb4f39 100644
--- a/src/main/resources/mapper/dapp/DappMemberDao.xml
+++ b/src/main/resources/mapper/dapp/DappMemberDao.xml
@@ -13,6 +13,9 @@
     <select id="selectInPage" resultType="cc.mrbird.febs.dapp.entity.DappMemberEntity">
         select * from dapp_member
         <where>
+            <if test="record.currentUser != null">
+                and referer_id = (select invite_id from dapp_user_member_relate where user_id=#{record.currentUser})
+            </if>
             <if test="record.accountStatus != null">
                 and account_status = #{record.accountStatus}
             </if>
diff --git a/src/main/resources/mapper/dapp/DappUserMemberRelateDao.xml b/src/main/resources/mapper/dapp/DappUserMemberRelateDao.xml
index 3b93211..20e84f7 100644
--- a/src/main/resources/mapper/dapp/DappUserMemberRelateDao.xml
+++ b/src/main/resources/mapper/dapp/DappUserMemberRelateDao.xml
@@ -2,4 +2,13 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="cc.mrbird.febs.dapp.mapper.DappUserMemberRelateDao">
 
+
+    <delete id="deleteByUserIds">
+        delete from dapp_user_member_relate
+        where
+        user_id in
+        <foreach collection="list" separator="," item="item" open="(" close=")">
+            ${item}
+        </foreach>
+    </delete>
 </mapper>
\ No newline at end of file
diff --git a/src/main/resources/mapper/dapp/DappWalletCoinDao.xml b/src/main/resources/mapper/dapp/DappWalletCoinDao.xml
index f1956b4..f1b9c56 100644
--- a/src/main/resources/mapper/dapp/DappWalletCoinDao.xml
+++ b/src/main/resources/mapper/dapp/DappWalletCoinDao.xml
@@ -10,6 +10,9 @@
         select a.*, b.address address from dapp_wallet_coin a
         inner join dapp_member b on a.member_id=b.id
         <where>
+            <if test="record.currentUser != null">
+                and b.referer_id = (select invite_id from dapp_user_member_relate where user_id=#{record.currentUser})
+            </if>
             <if test="record.address != '' and record.address != null">
                 and b.address = #{record.address}
             </if>
diff --git a/src/main/resources/mapper/dapp/DappWalletMineDao.xml b/src/main/resources/mapper/dapp/DappWalletMineDao.xml
index ae87ae9..3e09ca2 100644
--- a/src/main/resources/mapper/dapp/DappWalletMineDao.xml
+++ b/src/main/resources/mapper/dapp/DappWalletMineDao.xml
@@ -10,6 +10,9 @@
         select * from dapp_wallet_mine a
         inner join dapp_member b on a.member_id=b.id
         <where>
+            <if test="record.currentUser != null">
+                and b.referer_id = (select invite_id from dapp_user_member_relate where user_id=#{record.currentUser})
+            </if>
             <if test="record.address != '' and record.address != null">
                 and b.address = #{record.address}
             </if>
diff --git a/src/main/resources/mapper/system/UserMapper.xml b/src/main/resources/mapper/system/UserMapper.xml
index ecc5415..f0ea045 100644
--- a/src/main/resources/mapper/system/UserMapper.xml
+++ b/src/main/resources/mapper/system/UserMapper.xml
@@ -53,6 +53,7 @@
         LEFT JOIN t_user_role ur ON (u.user_id = ur.user_id)
         LEFT JOIN t_role r ON r.role_id = ur.role_id
         WHERE 1 = 1
+          and u.dept_id is not null
         <if test="user.username != null and user.username != ''">
             AND u.username = #{user.username}
         </if>
@@ -149,4 +150,18 @@
         select user_id userId, dept_id deptId from t_user_data_permission
         where user_id = #{userId}
     </select>
+
+    <select id="selectDappUserInPage" resultType="user">
+        select a.*, b.invite_id
+        from t_user a
+        inner join dapp_user_member_relate b on a.user_id=b.user_id
+        <where>
+            <if test="user.username != null and user.username != ''">
+                AND (a.username = #{user.username} or b.invite_id = #{user.username})
+            </if>
+            <if test="user.createBy != null and user.createBy != ''">
+                AND b.create_user = #{user.createBy}
+            </if>
+        </where>
+    </select>
 </mapper>
diff --git a/src/main/resources/templates/febs/views/dapp/member-wallet-mine.html b/src/main/resources/templates/febs/views/dapp/member-wallet-mine.html
index de62005..51298a6 100644
--- a/src/main/resources/templates/febs/views/dapp/member-wallet-mine.html
+++ b/src/main/resources/templates/febs/views/dapp/member-wallet-mine.html
@@ -87,9 +87,8 @@
                 url: ctx + 'wallet/walletMine',
                 cols: [[
                     {field: 'address', title: '地址', minWidth: 130},
-                    {field: 'availableAmount', title: '可用金额', minWidth: 130},
-                    {field: 'frozenAmount', title: '冻结金额', minWidth: 130},
-                    {field: 'totalAmount', title: '总金额', minWidth: 180}
+                    {field: 'availableAmount', title: '剩余产量', minWidth: 130},
+                    {field: 'totalAmount', title: '总产量', minWidth: 180}
                 ]]
             });
         }
diff --git a/src/main/resources/templates/febs/views/dapp/member-withdraw.html b/src/main/resources/templates/febs/views/dapp/member-withdraw.html
index 7f0475d..2a904b8 100644
--- a/src/main/resources/templates/febs/views/dapp/member-withdraw.html
+++ b/src/main/resources/templates/febs/views/dapp/member-withdraw.html
@@ -64,12 +64,12 @@
     <a href="https://tronscan.io/#/address/{{d.address}}" target="_blank">1</a>
 </script>
 <script type="text/html" id="withdraw-option">
-    <span shiro:lacksPermission="user:view,user:update,user:delete">
+    <span shiro:lacksPermission="withdraw:agree,withdraw:disagree">
         <span class="layui-badge-dot febs-bg-orange"></span> 无权限
     </span>
     {{# if(d.status == 1) { }}
-    <a lay-event="agree" shiro:hasPermission="member:accountStatus">审核通过</a>
-    <a lay-event="disagree" shiro:hasPermission="member:changeAble">审核驳回</a>
+    <a lay-event="agree" shiro:hasPermission="withdraw:agree">审核通过</a>
+    <a lay-event="disagree" shiro:hasPermission="withdraw:disagree">审核驳回</a>
     {{# } }}
 </script>
 <script data-th-inline="none" type="text/javascript">
diff --git a/src/main/resources/templates/febs/views/dapp/member.html b/src/main/resources/templates/febs/views/dapp/member.html
index fd067a2..88885eb 100644
--- a/src/main/resources/templates/febs/views/dapp/member.html
+++ b/src/main/resources/templates/febs/views/dapp/member.html
@@ -126,7 +126,7 @@
             1: {title: '不可提现'}
             }[d.withdrawAble];
     }}
-    <span shiro:lacksPermission="user:view,user:update,user:delete">
+    <span shiro:lacksPermission="member:accountStatus,member:changeAble,member:withdrawAble">
         <span class="layui-badge-dot febs-bg-orange"></span> 无权限
     </span>
     <a lay-event="accountStatus" shiro:hasPermission="member:accountStatus" title="设置用户状态">{{accountStatus.title}}</a>
diff --git a/src/main/resources/templates/febs/views/dapp/user.html b/src/main/resources/templates/febs/views/dapp/user.html
index 7ae8f5a..5866287 100644
--- a/src/main/resources/templates/febs/views/dapp/user.html
+++ b/src/main/resources/templates/febs/views/dapp/user.html
@@ -3,22 +3,22 @@
         <div class="layui-col-md12">
             <div class="layui-card">
                 <div class="layui-card-body febs-table-full">
-                    <form class="layui-form layui-table-form" lay-filter="user-table-form">
+                    <form class="layui-form layui-table-form" lay-filter="admin-table-form">
                         <div class="layui-row">
                             <div class="layui-col-md10">
                                 <div class="layui-form-item">
                                     <div class="layui-inline">
-                                        <label class="layui-form-label layui-form-label-sm">用户名</label>
+<!--                                        <label class="layui-form-label layui-form-label-sm">用户名</label>-->
                                         <div class="layui-input-inline">
-                                            <input type="text" name="username" autocomplete="off" class="layui-input">
+                                            <input type="text" name="username" autocomplete="off" placeholder="输入用户或者邀请码" class="layui-input">
                                         </div>
                                     </div>
-                                    <div class="layui-inline">
-                                        <label class="layui-form-label layui-form-label-sm">创建时间</label>
-                                        <div class="layui-input-inline">
-                                            <input type="text" name="createTime" id="user-createTime" class="layui-input">
-                                        </div>
-                                    </div>
+<!--                                    <div class="layui-inline">-->
+<!--                                        <label class="layui-form-label layui-form-label-sm">创建时间</label>-->
+<!--                                        <div class="layui-input-inline">-->
+<!--                                            <input type="text" name="createTime" id="user-createTime" class="layui-input">-->
+<!--                                        </div>-->
+<!--                                    </div>-->
                                     <div class="layui-inline">
                                         <label class="layui-form-label layui-form-label-sm">状态</label>
                                         <div class="layui-input-inline">
@@ -45,7 +45,7 @@
                             </div>
                         </div>
                     </form>
-                    <table lay-filter="userTable" lay-data="{id: 'userTable'}"></table>
+                    <table lay-filter="adminTable" lay-data="{id: 'adminTable'}"></table>
                 </div>
             </div>
         </div>
@@ -60,22 +60,10 @@
     }}
     <span class="layui-badge febs-bg-{{status.color}}">{{ status.title }}</span>
 </script>
-<script type="text/html" id="user-sex">
-    {{#
-    var sex = {
-    2: {title: '保密'},
-    1: {title: '女'},
-    0: {title: '男'}
-    }[d.sex];
-    }}
-    <span>{{ sex.title }}</span>
-</script>
 <script type="text/html" id="user-option">
     <span shiro:lacksPermission="admin:view,admin:update,admin:delete">
         <span class="layui-badge-dot febs-bg-orange"></span> 无权限
     </span>
-    <a lay-event="edit" shiro:hasPermission="admin:update"><i
-            class="layui-icon febs-edit-area febs-blue">&#xe7a4;</i></a>
     <a lay-event="del" shiro:hasPermission="admin:delete"><i class="layui-icon febs-edit-area febs-red">&#xe7f9;</i></a>
 </script>
 <script data-th-inline="none" type="text/javascript">
@@ -109,7 +97,7 @@
         dropdown.render({
             elem: $view.find('.action-more'),
             click: function (name, elem, event) {
-                var checkStatus = table.checkStatus('userTable');
+                var checkStatus = table.checkStatus('adminTable');
                 if (name === 'add') {
                     febs.modal.open('新增用户', 'dappView/admin/add', {
                         btn: ['提交', '重置'],
@@ -166,7 +154,7 @@
             }]
         });
 
-        table.on('tool(userTable)', function (obj) {
+        table.on('tool(adminTable)', function (obj) {
             var data = obj.data,
                 layEvent = obj.event;
             if (layEvent === 'del') {
@@ -189,7 +177,7 @@
             }
         });
 
-        table.on('sort(userTable)', function (obj) {
+        table.on('sort(adminTable)', function (obj) {
             sortObject = obj;
             tableIns.reload({
                 initSort: obj,
@@ -207,26 +195,20 @@
 
         $reset.on('click', function () {
             $searchForm[0].reset();
-            treeSelect.revokeNode('dept');
-            sortObject.type = 'null';
-            createTimeTo = null;
-            createTimeFrom = null;
             tableIns.reload({where: getQueryParams(), page: {curr: 1}, initSort: sortObject});
         });
 
         function initTable() {
             tableIns = febs.table.init({
                 elem: $view.find('table'),
-                id: 'userTable',
-                url: ctx + 'user/list',
+                id: 'adminTable',
+                url: ctx + 'dappUser/list',
                 cols: [[
                     {type: 'checkbox'},
                     {field: 'username', title: '用户名', minWidth: 100},
-                    {title: '性别', templet: '#user-sex'},
-                    {field: 'deptName', title: '部门'},
-                    {field: 'mobile', title: '手机', minWidth: 165},
-                    {field: 'email', title: '邮箱', minWidth: 180},
+                    {field: 'inviteId', title: '邀请码', minWidth: 100},
                     {title: '状态', templet: '#user-status'},
+                    {field: 'lastLoginTime', title: '上次登录时间', minWidth: 100},
                     {field: 'createTime', title: '创建时间', minWidth: 180, sort: true},
                     {title: '操作', toolbar: '#user-option', minWidth: 140}
                 ]]
@@ -234,19 +216,16 @@
         }
 
         function getQueryParams() {
-            var createTime = $searchForm.find('input[name="createTime"]').val();
-            if (createTime) {
-                createTimeFrom = createTime.split(' - ')[0];
-                createTimeTo = createTime.split(' - ')[1];
-            }
+            // var createTime = $searchForm.find('input[name="createTime"]').val();
+            // if (createTime) {
+            //     createTimeFrom = createTime.split(' - ')[0];
+            //     createTimeTo = createTime.split(' - ')[1];
+            // }
             return {
-                createTimeFrom: createTimeFrom,
-                createTimeTo: createTimeTo,
+                // createTimeFrom: createTimeFrom,
+                // createTimeTo: createTimeTo,
                 username: $searchForm.find('input[name="username"]').val().trim(),
                 status: $searchForm.find("select[name='status']").val(),
-                sex: $searchForm.find("select[name='sex']").val(),
-                mobile: $searchForm.find("input[name='mobile']").val().trim(),
-                deptId: $searchForm.find("input[name='dept']").val().trim(),
                 invalidate_ie_cache: new Date()
             };
         }
@@ -257,7 +236,7 @@
                 febs.alert.warn('所选用户包含当前登录用户,无法删除');
                 return;
             }
-            febs.get(ctx + 'user/delete/' + userIds, null, function () {
+            febs.post(ctx + 'dappUser/delete/' + userIds, null, function () {
                 febs.alert.success('删除用户成功');
                 $query.click();
             });
diff --git a/src/main/resources/templates/febs/views/dapp/userAdd.html b/src/main/resources/templates/febs/views/dapp/userAdd.html
index 3e7321d..740ea8d 100644
--- a/src/main/resources/templates/febs/views/dapp/userAdd.html
+++ b/src/main/resources/templates/febs/views/dapp/userAdd.html
@@ -55,10 +55,7 @@
         var $ = layui.$,
             febs = layui.febs,
             layer = layui.layer,
-            formSelects = layui.formSelects,
-            treeSelect = layui.treeSelect,
             form = layui.form,
-            eleTree = layui.eleTree,
             $view = $('#dapp-user-add'),
             validate = layui.validate,
             _deptTree;
@@ -67,16 +64,10 @@
         form.render();
 
         form.on('submit(dapp-user-add-form-submit)', function (data) {
-            var checked = _deptTree.getChecked(false, true);
-            var deptIds = [];
-            layui.each(checked, function (key, item) {
-                deptIds.push(item.id)
-            });
-            data.deptIds = deptIds.join(",");
-            febs.post(ctx + 'user', data.field, function () {
+            febs.post(ctx + 'dappUser/add', data.field, function () {
                 layer.closeAll();
                 febs.alert.success('新增用户成功,初始密码为 1234qwer');
-                $('#febs-user').find('#query').click();
+                $('#febs-admin').find('#query').click();
             });
             return false;
         });
diff --git a/src/main/resources/templates/febs/views/login.html b/src/main/resources/templates/febs/views/login.html
index 2741f64..c9a1744 100644
--- a/src/main/resources/templates/febs/views/login.html
+++ b/src/main/resources/templates/febs/views/login.html
@@ -62,47 +62,6 @@
                                     </button>
                                 </div>
                             </div>
-                            <div class="layui-form-item febs-tr">
-                                <a id="regist-href">注册账号</a>
-                            </div>
-                        </div>
-                    </div>
-                </div>
-
-                <div class="layui-col-xs12 layui-col-lg4 layui-col-lg-offset4 febs-hide" id="regist-div">
-                    <div class="layui-form" lay-filter="regist-form">
-                        <div class="layui-anim layui-anim-upbit">
-                            <ul class="login-type-tab">
-                                <li class="active">账号注册</li>
-                            </ul>
-                            <div class="normal-login-form">
-                                <div class="layui-form-item">
-                                    <label class="layui-icon label-icon layui-icon-username"></label>
-                                    <input type="text" name="username" minlength="2" maxlength="10" lay-verify="range"
-                                           placeholder="用户名" autocomplete="off" class="layui-input">
-                                </div>
-                                <div class="layui-form-item password-block">
-                                    <label class="layui-icon label-icon layui-icon-password"></label>
-                                    <input type="password" name="password" minlength="6" lay-verify="range"
-                                           placeholder="密码" autocomplete="off" class="layui-input">
-                                </div>
-                                <div class="layui-form-item password-block">
-                                    <label class="layui-icon label-icon layui-icon-password"></label>
-                                    <input type="password" name="passwordB" lay-verify="required"
-                                           placeholder="密码确认" autocomplete="off" class="layui-input">
-                                </div>
-                                <div class="layui-form-item">
-                                    <button class="layui-btn layui-btn-normal layui-btn-fluid" lay-submit
-                                            lay-filter="regist-submit" id="regist">
-                                        <i style="display: none"
-                                           class="layui-icon layui-icon-loading layui-icon layui-anim layui-anim-rotate layui-anim-loop"></i>
-                                        立即注册
-                                    </button>
-                                </div>
-                            </div>
-                        </div>
-                        <div class="layui-form-item febs-tr">
-                            <a id="login-href">已有账号?马上登录</a>
                         </div>
                     </div>
                 </div>
@@ -140,28 +99,6 @@
                     layer.msg(r.message);
                     loading.hide();
                     initCode();
-                }
-            });
-            return false;
-        });
-
-        //提交注册表单
-        form.on('submit(regist-submit)', function (data) {
-            if (data.field.password !== data.field.passwordB) {
-                layer.msg('两次密码输入不一致!');
-                return;
-            }
-            var loading = $(this).find('.layui-icon');
-            if (loading.is(":visible")) return;
-            loading.show();
-            $.post(ctx + 'regist', data.field, function (r) {
-                if (r.code === 200) {
-                    layer.msg('注册成功,请登录');
-                    loading.hide();
-                    $view.find('#login-href').trigger('click');
-                } else {
-                    layer.msg(r.message);
-                    loading.hide();
                 }
             });
             return false;

--
Gitblit v1.9.1