From 1789718f58e3374ce85357524ef80a84f3d70d6f Mon Sep 17 00:00:00 2001
From: jiangqs <jiangqs>
Date: 星期日, 25 六月 2023 18:36:01 +0800
Subject: [PATCH] 商户端统计

---
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysMenuServiceImpl.java           |   59 ++
 ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml                                    |    8 
 ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/poji/sys/SysDept.java                   |   14 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtStaffController.java      |   18 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MgtStaffPageVo.java                      |   51 ++
 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/shop/ShopTotalService.java                     |   16 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/sys/SysUserController.java              |   14 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/sys/ISysUserService.java                   |   21 +
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtStaffPageDto.java                    |   22 +
 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopTotalServiceImpl.java            |   20 +
 ruoyi-modules/ruoyi-system/src/main/resources/mapper/sys/SysMenuMapper.xml                                   |   83 +++
 ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopTotalMapper.xml                                  |    6 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysDeptServiceImpl.java           |   17 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/StaffSuggestServiceImpl.java   |    2 
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/order/UserServiceRecordService.java          |    9 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/UserMenuEditDto.java                    |   25 +
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/sys/SysDeptMenu.java                   |   10 
 ruoyi-modules/ruoyi-system/src/main/resources/mapper/sys/SysDeptMapper.xml                                   |    2 
 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java                 |   83 +++
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/staff/SysStaffService.java                 |   13 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/conslole/ConfigController.java          |   16 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtConfigController.java     |    2 
 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtShopAuthGetDto.java                      |   20 +
 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/vo/MgtShopAuthGetVo.java                        |    7 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/sys/StaffMenuController.java            |   56 ++
 ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/UserServiceRecordMapper.xml                        |    5 
 ruoyi-modules/ruoyi-system/src/main/resources/mapper/staff/SysStaffMapper.xml                                |   19 
 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/management/MgtShopController.java           |    9 
 ruoyi-modules/ruoyi-system/src/main/resources/mapper/sys/SysUserMapper.xml                                   |   19 
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/UserServiceRecordMapper.java            |    9 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/sys/SysMenu.java                       |   26 +
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/UserServiceRecordServiceImpl.java |   11 
 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/pojo/ShopTotal.java                             |  197 +++++++++
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/OrderMapper.java                        |   10 
 ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteConfigService.java               |   13 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/sys/SysUserMapper.java                      |   10 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysUserServiceImpl.java           |   54 ++
 ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml                                       |    8 
 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/shop/ShopService.java                          |    9 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/sys/SysMenuMapper.java                      |   34 +
 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/mapper/shop/ShopTotalMapper.java                       |   16 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/staff/SysStaffMapper.java                   |   12 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/staff/SysStaffServiceImpl.java        |   16 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/sys/SysUserMenu.java                   |   10 
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java             |   16 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/sys/ISysMenuService.java                   |   35 +
 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/vo/MgtShopPageVo.java                           |   10 
 ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteConfigFallbackFactory.java       |    7 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/GeneratorMybatisPlus.java               |    6 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MgtStaffSuggestPageVo.java               |    3 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/sys/SysDeptController.java              |    2 
 ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/MgtSysSimpleUserVo.java              |   27 +
 52 files changed, 1,113 insertions(+), 74 deletions(-)

diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/poji/sys/SysDept.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/poji/sys/SysDept.java
index fc2a9ed..7d75726 100644
--- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/poji/sys/SysDept.java
+++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/poji/sys/SysDept.java
@@ -7,7 +7,6 @@
 
 import javax.validation.constraints.Email;
 import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
 import javax.validation.constraints.Size;
 import java.util.ArrayList;
 import java.util.List;
@@ -64,6 +63,9 @@
     /** 菜单组 */
     private Long[] menuIds;
 
+    /** 菜单组 */
+    private Long[] staffMenuIds;
+
     public Long getDeptId()
     {
         return deptId;
@@ -106,7 +108,7 @@
         this.deptName = deptName;
     }
 
-    @NotNull(message = "显示顺序不能为空")
+    //@NotNull(message = "显示顺序不能为空")
     public Integer getOrderNum()
     {
         return orderNum;
@@ -206,6 +208,14 @@
         this.menuIds = menuIds;
     }
 
+    public Long[] getStaffMenuIds() {
+        return staffMenuIds;
+    }
+
+    public void setStaffMenuIds(Long[] staffMenuIds) {
+        this.staffMenuIds = staffMenuIds;
+    }
+
     @Override
     public String toString() {
         return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/MgtSysSimpleUserVo.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/MgtSysSimpleUserVo.java
new file mode 100644
index 0000000..ca98c46
--- /dev/null
+++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/vo/MgtSysSimpleUserVo.java
@@ -0,0 +1,27 @@
+package com.ruoyi.system.api.domain.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @ClassName MgtSysSimpleVo
+ * @Description TODO
+ * @Author jqs
+ * @Date 2023/6/25 14:31
+ * @Version 1.0
+ */
+@Data
+public class MgtSysSimpleUserVo {
+
+    @ApiModelProperty(value = "用户id")
+    private Long userId;
+
+    @ApiModelProperty(value = "用户名称")
+    private String nickName;
+
+    @ApiModelProperty(value = "部门id")
+    private Long deptId;
+
+    @ApiModelProperty(value = "部门名称")
+    private String deptName;
+}
diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteConfigFallbackFactory.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteConfigFallbackFactory.java
index a963f75..9936a80 100644
--- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteConfigFallbackFactory.java
+++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteConfigFallbackFactory.java
@@ -1,9 +1,11 @@
 package com.ruoyi.system.api.factory;
 
 import com.ruoyi.common.core.domain.R;
+import com.ruoyi.system.api.domain.dto.MgtBaseBathDto;
 import com.ruoyi.system.api.domain.dto.MgtUserIdByDept;
 import com.ruoyi.system.api.domain.poji.config.Activeness;
 import com.ruoyi.system.api.domain.poji.config.SysClassification;
+import com.ruoyi.system.api.domain.vo.MgtSysSimpleUserVo;
 import com.ruoyi.system.api.service.RemoteConfigService;
 import com.ruoyi.system.api.domain.poji.config.SysTag;
 import org.slf4j.Logger;
@@ -41,6 +43,11 @@
             }
 
             @Override
+            public R<List<MgtSysSimpleUserVo>> listSimpleUserVo(MgtBaseBathDto mgtBaseBathDto) {
+                return R.fail("获取用户列表失败:" + throwable.getMessage());
+            }
+
+            @Override
             public R<List<SysTag>> listSysTag(Integer tagType) {
                 return R.fail("获取标签失败:" + throwable.getMessage());
             }
diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteConfigService.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteConfigService.java
index 9efe7bf..33fdbc4 100644
--- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteConfigService.java
+++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteConfigService.java
@@ -2,10 +2,12 @@
 
 import com.ruoyi.common.core.constant.ServiceNameConstants;
 import com.ruoyi.common.core.domain.R;
+import com.ruoyi.system.api.domain.dto.MgtBaseBathDto;
 import com.ruoyi.system.api.domain.dto.MgtUserIdByDept;
 import com.ruoyi.system.api.domain.poji.config.Activeness;
 import com.ruoyi.system.api.domain.poji.config.SysClassification;
 import com.ruoyi.system.api.domain.poji.config.SysTag;
+import com.ruoyi.system.api.domain.vo.MgtSysSimpleUserVo;
 import com.ruoyi.system.api.factory.RemoteConfigFallbackFactory;
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.web.bind.annotation.PostMapping;
@@ -66,4 +68,15 @@
      */
     @PostMapping("/config/getUserIdByDept")
     public R<MgtUserIdByDept> getUserIdByDept(@RequestBody MgtUserIdByDept userIdByDept);
+
+
+    /**
+     * @description  通过id获取用户简易信息
+     * @author  jqs
+     * @date    2023/6/25 14:41
+     * @param mgtBaseBathDto
+     * @return  R<List<MgtSysSimpleUserVo>>
+     */
+    @PostMapping("/listSimpleUserVo")
+    public R<List<MgtSysSimpleUserVo>> listSimpleUserVo(@RequestBody MgtBaseBathDto mgtBaseBathDto);
 }
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/OrderMapper.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/OrderMapper.java
index 2349a06..5892db8 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/OrderMapper.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/OrderMapper.java
@@ -9,6 +9,7 @@
 import com.ruoyi.system.api.domain.dto.MgtBasePlatformDto;
 import com.ruoyi.system.api.domain.dto.MgtBaseShopDto;
 import com.ruoyi.system.api.domain.dto.MgtPlActivityAgeDto;
+import com.ruoyi.system.api.domain.vo.MerHomeShopTotalVo;
 import com.ruoyi.system.api.domain.vo.MgtBulletinBoardVo;
 import com.ruoyi.system.api.domain.vo.MgtMapTotalVo;
 import org.apache.ibatis.annotations.Param;
@@ -410,4 +411,13 @@
      * @date 2023/6/19 22:48
      */
     List<MgtMapTotalPlusVo> listPlTotalActivitySalesRank(@Param("param") MgtBasePlatformDto mgtBasePlatformDto);
+
+    /**
+     * @description
+     * @author  jqs
+     * @date    2023/6/25 17:28
+     * @param shopId
+     * @return  MerHomeShopTotalVo
+     */
+    MerHomeShopTotalVo getMerHomeShopTotalVo(Long shopId);
 }
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/UserServiceRecordMapper.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/UserServiceRecordMapper.java
index 8e71980..93347de 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/UserServiceRecordMapper.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/UserServiceRecordMapper.java
@@ -55,5 +55,12 @@
      */
     MgtMemberServiceTotalVo getMgtMemberServiceTotal(@Param("userId")Long userId);
 
-
+    /**
+     * @description  统计商户到店人数
+     * @author  jqs
+     * @date    2023/6/25 17:17
+     * @param shopId
+     * @return  Integer
+     */
+    Integer countShopServicePerson(@Param("shopId")Long shopId);
 }
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java
index 7298a75..9f8b9bf 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java
@@ -17,6 +17,7 @@
 import com.ruoyi.order.service.order.ConsumerGoodsService;
 import com.ruoyi.order.service.order.OrderGoodsService;
 import com.ruoyi.common.security.utils.CodeFactoryUtil;
+import com.ruoyi.order.service.order.UserServiceRecordService;
 import com.ruoyi.system.api.domain.dto.*;
 import com.ruoyi.system.api.domain.vo.*;
 import com.ruoyi.system.api.domain.vo.MgtMapTotalVo;
@@ -75,6 +76,10 @@
 
     @Resource
     private RemoteConfigService remoteConfigService;
+
+    @Resource
+    private UserServiceRecordService userServiceRecordService;
+
 
 
     /**
@@ -508,16 +513,9 @@
     @Override
     public MerHomeShopTotalVo getMerHomeTotal(MerHomeShopTotalVo merHomeShopTotalVo) {
         Long shopId = merHomeShopTotalVo.getShopId();
-        Integer todayShop = 0;
-        Integer unHandleOrder = 0;
-        BigDecimal shopTurnover = new BigDecimal("0.00");
-        Integer cycleSurp = 0;
-        Integer explorationSurp = 0;
+        Integer todayShop = userServiceRecordService.countShopServicePerson(shopId);
         merHomeShopTotalVo.setTodayShop(todayShop);
-        merHomeShopTotalVo.setUnHandleOrder(unHandleOrder);
-        merHomeShopTotalVo.setShopTurnover(shopTurnover);
-        merHomeShopTotalVo.setCycleSurp(cycleSurp);
-        merHomeShopTotalVo.setExplorationSurp(explorationSurp);
+        merHomeShopTotalVo = orderMapper.getMerHomeShopTotalVo(shopId);
         return merHomeShopTotalVo;
     }
 
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/UserServiceRecordServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/UserServiceRecordServiceImpl.java
index 44f005c..f905d5c 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/UserServiceRecordServiceImpl.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/UserServiceRecordServiceImpl.java
@@ -75,4 +75,15 @@
         return userServiceRecordMapper.getMgtMemberServiceTotal(userId);
     }
 
+    /**
+     * @description  统计商户到店人数
+     * @author  jqs
+     * @date    2023/6/25 17:17
+     * @param shopId
+     * @return  Integer
+     */
+    @Override
+    public Integer countShopServicePerson(Long shopId){
+        return userServiceRecordMapper.countShopServicePerson(shopId);
+    }
 }
diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/order/UserServiceRecordService.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/order/UserServiceRecordService.java
index 45b6ff1..d04fccb 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/order/UserServiceRecordService.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/order/UserServiceRecordService.java
@@ -53,4 +53,13 @@
      * @return
      */
     MgtMemberServiceTotalVo getMgtMemberServiceTotal(Long userId);
+
+    /**
+     * @description  统计商户到店人数
+     * @author  jqs
+     * @date    2023/6/25 17:17
+     * @param shopId
+     * @return  Integer
+     */
+    Integer countShopServicePerson(Long shopId);
 }
diff --git a/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml b/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml
index 0b9e048..2f2577a 100644
--- a/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml
+++ b/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml
@@ -1198,4 +1198,12 @@
         GROUP BY activity_name
         ORDER BY SUM(order_money) DESC LIMIT 15
     </select>
+
+    <select id="getMerHomeShopTotalVo" resultType="com.ruoyi.system.api.domain.vo.MerHomeShopTotalVo">
+        SELECT
+        SUM(CASE WHEN order_status = 2 THEN 1 ELSE 0 END) unHandleOrder,
+        SUM(pay_money) shopTurnover
+        FROM t.order
+        WHERE del_flag = 0 AND shopId = #{shopId}
+    </select>
 </mapper>
diff --git a/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/UserServiceRecordMapper.xml b/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/UserServiceRecordMapper.xml
index bca7e1f..82273b2 100644
--- a/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/UserServiceRecordMapper.xml
+++ b/ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/UserServiceRecordMapper.xml
@@ -136,4 +136,9 @@
         GROUP BY tsrd.consumer_goods_id) AS temp
     </select>
 
+    <select id="countShopServicePerson" resultType="java.lang.Integer">
+        SELECT COUNT(DISTINCT user_id)
+        FROM t_user_service_record
+        WHERE shop_id = #{shopId} AND DATE(create_time) = CURDATE()
+    </select>
 </mapper>
diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/management/MgtShopController.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/management/MgtShopController.java
index 53b9351..71fb7b2 100644
--- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/management/MgtShopController.java
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/management/MgtShopController.java
@@ -48,7 +48,7 @@
     private ShopCertificateService shopCertificateService;
 
     @RequestMapping(value = "/listMgtShopSimpleVo", method = RequestMethod.POST)
-    @ApiOperation(value = "分页获取商户列表")
+    @ApiOperation(value = "获取简易商户列表")
     public R<List<MgtShopListSimpleVo>> listMgtShopSimpleVo(@RequestBody MgtShopListDto mgtShopListDto) {
         List<MgtShopListSimpleVo> mgtShopListSimpleVoList = shopService.listMgtShopSimpleVo(mgtShopListDto);
         return R.ok(mgtShopListSimpleVoList);
@@ -240,4 +240,11 @@
         shopService.mgtShopAuth(mgtShopAuthDto);
         return R.ok();
     }
+
+    @RequestMapping(value = "/getMgtShopAuth", method = RequestMethod.POST)
+    @ApiOperation(value = "获取商户进件信息")
+    public R<MgtShopAuthGetVo> getMgtShopAuth(@RequestBody MgtShopAuthGetDto mgtShopAuthGetDto) {
+        MgtShopAuthGetVo shopAuthGetVo = shopService.getMgtShopAuth(mgtShopAuthGetDto.getAuthId());
+        return R.ok(shopAuthGetVo);
+    }
 }
diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtShopAuthGetDto.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtShopAuthGetDto.java
new file mode 100644
index 0000000..5eaa611
--- /dev/null
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtShopAuthGetDto.java
@@ -0,0 +1,20 @@
+package com.ruoyi.shop.domain.dto;
+
+import com.ruoyi.system.api.domain.dto.MgtBaseDto;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @ClassName MgtShopAuthGetDto
+ * @Description TODO
+ * @Author jqs
+ * @Date 2023/6/25 10:42
+ * @Version 1.0
+ */
+@Data
+public class MgtShopAuthGetDto extends MgtBaseDto {
+
+    @ApiModelProperty(value = "审核id")
+    private String authId;
+
+}
diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/pojo/ShopTotal.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/pojo/ShopTotal.java
new file mode 100644
index 0000000..d3ef83c
--- /dev/null
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/pojo/ShopTotal.java
@@ -0,0 +1,197 @@
+package com.ruoyi.shop.domain.pojo;
+
+import com.baomidou.mybatisplus.activerecord.Model;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+
+/**
+ * <p>
+ * 商户统计
+ * </p>
+ *
+ * @author jqs
+ * @since 2023-06-25
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@TableName("t_shop_total")
+public class ShopTotal extends Model<ShopTotal> {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 商户id
+     */
+    @TableId("shop_id")
+    private Integer shopId;
+    /**
+     * 删除标记
+     */
+    @TableField("del_flag")
+    private Integer delFlag;
+    /**
+     * 最后消费金额
+     */
+    @TableField("last_pay_money")
+    private BigDecimal lastPayMoney;
+    /**
+     * 总活动次数
+     */
+    @TableField("total_activity_count")
+    private String totalActivityCount;
+    /**
+     * 总订单数
+     */
+    @TableField("total_order")
+    private String totalOrder;
+    /**
+     * 总周期订单数
+     */
+    @TableField("total_cycle_order")
+    private Integer totalCycleOrder;
+    /**
+     * 总体验订单数
+     */
+    @TableField("tolta_experience_order")
+    private Integer toltaExperienceOrder;
+    /**
+     * 总服务订单数
+     */
+    @TableField("total_service_order")
+    private Integer totalServiceOrder;
+    /**
+     * 总单品订单数
+     */
+    @TableField("total_goods_order")
+    private Integer totalGoodsOrder;
+    /**
+     * 总服务次数
+     */
+    @TableField("total_service_count")
+    private Integer totalServiceCount;
+    /**
+     * 使用服务次数
+     */
+    @TableField("used_service_count")
+    private Integer usedServiceCount;
+    /**
+     * 可用服务次数
+     */
+    @TableField("useable_service_count")
+    private Integer useableServiceCount;
+    /**
+     * 总周期服务次数
+     */
+    @TableField("total_cycle_service")
+    private Integer totalCycleService;
+    /**
+     * 已用周期服务次数
+     */
+    @TableField("used_cycle_service")
+    private Integer usedCycleService;
+    /**
+     * 可用周期服务次数
+     */
+    @TableField("useable_cycle_service")
+    private Integer useableCycleService;
+    /**
+     * 总周期服务人数
+     */
+    @TableField("total_cycle_person")
+    private Integer totalCyclePerson;
+    /**
+     * 可用周期服务人数
+     */
+    @TableField("useable_cycle_person")
+    private Integer useableCyclePerson;
+    /**
+     * 总服务服务次数
+     */
+    @TableField("total_service_service")
+    private Integer totalServiceService;
+    /**
+     * 已用服务服务次数
+     */
+    @TableField("used_service_service")
+    private Integer usedServiceService;
+    /**
+     * 可用服务服务次数
+     */
+    @TableField("useable_service_service")
+    private Integer useableServiceService;
+    /**
+     * 总服务服务人数
+     */
+    @TableField("total_service_person")
+    private Integer totalServicePerson;
+    /**
+     * 可用服务服务人数
+     */
+    @TableField("useable_service_person")
+    private Integer useableServicePerson;
+    /**
+     * 总体验服务次数
+     */
+    @TableField("total_experience_service")
+    private Integer totalExperienceService;
+    /**
+     * 已用体验服务次数
+     */
+    @TableField("used_experience_service")
+    private Integer usedExperienceService;
+    /**
+     * 可用体验服务次数
+     */
+    @TableField("useable_experience_service")
+    private Integer useableExperienceService;
+    /**
+     * 总体体验服务人数
+     */
+    @TableField("total_experience_person")
+    private Integer totalExperiencePerson;
+    /**
+     * 可用体验服务次数
+     */
+    @TableField("useable_experience_person")
+    private Integer useableExperiencePerson;
+    /**
+     * 总订单金额
+     */
+    @TableField("total_order_ money")
+    private BigDecimal totalOrderMoney;
+    /**
+     * 周期订单金额
+     */
+    @TableField("total_cycle_money")
+    private BigDecimal totalCycleMoney;
+    /**
+     * 体验订单金额
+     */
+    @TableField("total_experience_money")
+    private BigDecimal totalExperienceMoney;
+    /**
+     * 服务订单金额
+     */
+    @TableField("total_service_money")
+    private BigDecimal totalServiceMoney;
+    /**
+     * 单品订单金额
+     */
+    @TableField("total_goods_money")
+    private BigDecimal totalGoodsMoney;
+
+
+    @Override
+    protected Serializable pkVal() {
+        return this.shopId;
+    }
+
+}
diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/vo/MgtShopAuthGetVo.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/vo/MgtShopAuthGetVo.java
index e14408f..dc81867 100644
--- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/vo/MgtShopAuthGetVo.java
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/vo/MgtShopAuthGetVo.java
@@ -15,9 +15,7 @@
 
     @ApiModelProperty(value = "审核id")
     private String authId;
-    /**
-     * 商户id
-     */
+
     @ApiModelProperty(value = "商户id")
     private Long shopId;
 
@@ -149,4 +147,7 @@
 
     @ApiModelProperty(value = "补充说明")
     private String baDesc;
+
+    @ApiModelProperty(value = "拒绝理由")
+    private String adRejectReason;
 }
diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/vo/MgtShopPageVo.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/vo/MgtShopPageVo.java
index d156e0d..319875c 100644
--- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/vo/MgtShopPageVo.java
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/vo/MgtShopPageVo.java
@@ -35,14 +35,20 @@
     @ApiModelProperty("商户标签")
     private String shopTags;
 
-    @Excel(name = "签约人", width = 30)
-    @ApiModelProperty("签约人")
+    @ApiModelProperty("签约人id")
+    private Long signUserId;
+
+    @Excel(name = "签约员工", width = 30)
+    @ApiModelProperty("签约员工")
     private String signUser;
 
     @Excel(name = "首提金额", width = 30)
     @ApiModelProperty("首提金额")
     private BigDecimal firstWithdraw;
 
+    @ApiModelProperty("关联员工id")
+    private Long belongUserId;
+
     @Excel(name = "关联员工", width = 30)
     @ApiModelProperty("关联员工")
     private String belongUser;
diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/mapper/shop/ShopTotalMapper.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/mapper/shop/ShopTotalMapper.java
new file mode 100644
index 0000000..c7d9be1
--- /dev/null
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/mapper/shop/ShopTotalMapper.java
@@ -0,0 +1,16 @@
+package com.ruoyi.shop.mapper.shop;
+
+import com.ruoyi.shop.domain.pojo.ShopTotal;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ * 商户统计 Mapper 接口
+ * </p>
+ *
+ * @author jqs
+ * @since 2023-06-25
+ */
+public interface ShopTotalMapper extends BaseMapper<ShopTotal> {
+
+}
diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java
index a84c332..99fc8de 100644
--- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java
@@ -17,10 +17,7 @@
 import com.ruoyi.shop.service.shop.*;
 import com.ruoyi.shop.service.task.ShopFileService;
 import com.ruoyi.system.api.constant.AppErrorConstant;
-import com.ruoyi.system.api.domain.dto.AppMemberBindingDto;
-import com.ruoyi.system.api.domain.dto.MgtBasePlatformDto;
-import com.ruoyi.system.api.domain.dto.MgtShopIdByCodeDto;
-import com.ruoyi.system.api.domain.dto.MgtUserIdByDept;
+import com.ruoyi.system.api.domain.dto.*;
 import com.ruoyi.system.api.domain.poji.config.SysTag;
 import com.ruoyi.system.api.domain.poji.member.Member;
 import com.ruoyi.system.api.domain.poji.shop.Shop;
@@ -37,6 +34,7 @@
 import java.math.BigDecimal;
 import java.text.ParseException;
 import java.util.*;
+import java.util.function.Function;
 import java.util.stream.Collectors;
 
 /**
@@ -89,7 +87,8 @@
     @Resource
     private ShopProportionService shopProportionService;
 
-    
+    @Resource
+    private RemoteConfigService remoteConfigService;
 
     /**
      * 获取商户详情
@@ -341,11 +340,58 @@
      */
     @Override
     public List<MgtShopPageVo> pageMgtShop(Page page, MgtShopPageDto mgtShopPageDto){
-        //处理标签为正则表达
-        if(StringUtils.isNotBlank(mgtShopPageDto.getShopTags())){
-            mgtShopPageDto.setShopTags(mgtShopPageDto.getShopTags().replace(",","|"));
+        if (StringUtils.isNotBlank(mgtShopPageDto.getShopTags())) {
+            mgtShopPageDto.setShopTags(mgtShopPageDto.getShopTags().replace(",", "|"));
         }
+        // 分页查询商铺信息
         List<MgtShopPageVo> mgtShopPageVoList = shopMapper.pageMgtShop(page, mgtShopPageDto);
+        // 如果查询结果不为空
+        if (!mgtShopPageVoList.isEmpty()) {
+            // 创建签约用户ID集合和所属用户ID集合
+            HashSet<Long> signUserIdSet = new HashSet<>();
+            HashSet<Long> belongUserIdSet = new HashSet<>();
+            // 遍历查询结果,将签约用户和所属用户添加到对应的集合中
+            for (MgtShopPageVo shopPageVo : mgtShopPageVoList) {
+                if (shopPageVo.getSignUserId() != null) {
+                    signUserIdSet.add(shopPageVo.getSignUserId());
+                }
+                if (shopPageVo.getBelongUserId() != null) {
+                    belongUserIdSet.add(shopPageVo.getBelongUserId());
+                }
+            }
+            MgtBaseBathDto mgtBaseBathDto;
+            Map<Long, MgtSysSimpleUserVo> signUserMap = null;
+            Map<Long, MgtSysSimpleUserVo> belongUserMap = null;
+            if(signUserIdSet!=null&&!signUserIdSet.isEmpty()){
+                String signUserString = String.join(",", signUserIdSet.stream().map(Object::toString).collect(Collectors.toList()));
+                mgtBaseBathDto = new MgtBaseBathDto();
+                mgtBaseBathDto.setIds(signUserString);
+                List<MgtSysSimpleUserVo> signUserVoList = remoteConfigService.listSimpleUserVo(mgtBaseBathDto).getData();
+                signUserMap = signUserVoList.stream()
+                        .collect(Collectors.toMap(MgtSysSimpleUserVo::getUserId, Function.identity()));
+            }
+            if(belongUserIdSet!=null&&!belongUserIdSet.isEmpty()){
+                // 将签约用户ID集合和所属用户ID集合转为字符串
+                String belongUserString = String.join(",", belongUserIdSet.stream().map(Object::toString).collect(Collectors.toList()));
+                // 查询签约用户和所属用户的详细信息
+                mgtBaseBathDto = new MgtBaseBathDto();
+                mgtBaseBathDto.setIds(belongUserString);
+                List<MgtSysSimpleUserVo> belongUserVoList = remoteConfigService.listSimpleUserVo(mgtBaseBathDto).getData();
+                belongUserMap = belongUserVoList.stream()
+                        .collect(Collectors.toMap(MgtSysSimpleUserVo::getUserId, Function.identity()));
+            }
+            // 遍历查询结果,将签约用户和所属用户的详细信息添加到商铺信息中
+            for (MgtShopPageVo shopPageVo : mgtShopPageVoList) {
+                if (signUserMap!=null&&!signUserMap.isEmpty()&&shopPageVo.getSignUserId() != null) {
+                    shopPageVo.setSignUser(signUserMap.get(shopPageVo.getSignUserId()).getNickName());
+                }
+                if (belongUserMap!=null&&!belongUserMap.isEmpty()&&shopPageVo.getBelongUserId() != null) {
+                    shopPageVo.setBelongUser(belongUserMap.get(shopPageVo.getBelongUserId()).getNickName());
+                    shopPageVo.setBelongDept(belongUserMap.get(shopPageVo.getBelongUserId()).getDeptName());
+                }
+            }
+        }
+        // 返回商铺信息
         return mgtShopPageVoList;
     }
 
@@ -495,9 +541,8 @@
         merHomeShopTotalVo.setShopId(shopId);
         Shop shop = this.getById(shopId);
         merHomeShopTotalVo.setShopType(shop.getShopType());
-        Integer task = 0;
-        merHomeShopTotalVo.setTask(task);
-        merHomeShopTotalVo = remoteOrderService.getMerHomeTotal(merHomeShopTotalVo).getData();
+        MerHomeShopTotalVo orderVo = remoteOrderService.getMerHomeTotal(merHomeShopTotalVo).getData();
+
         return merHomeShopTotalVo;
     }
 
@@ -779,4 +824,20 @@
         List<Long> shopIdList = shopMapper.listShopIdByPlTotal(mgtBasePlatformDto);
         return shopIdList;
     }
+
+
+    /**
+     * @description  获取商户审核资料
+     * @author  jqs
+     * @date    2023/6/25 10:37
+     * @param authId
+     * @return  MgtShopAuthGetVo
+     */
+    @Override
+    public MgtShopAuthGetVo getMgtShopAuth(String authId){
+        MgtShopAuthGetVo shopAuthGetVo = new MgtShopAuthGetVo();
+        ShopAuthentication shopAuthentication = shopAuthenticationService.getById(authId);
+        BeanUtils.copyProperties(shopAuthentication, shopAuthGetVo);
+        return shopAuthGetVo;
+    }
 }
diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopTotalServiceImpl.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopTotalServiceImpl.java
new file mode 100644
index 0000000..b138fd7
--- /dev/null
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopTotalServiceImpl.java
@@ -0,0 +1,20 @@
+package com.ruoyi.shop.service.impl.shop;
+
+import com.ruoyi.shop.domain.pojo.ShopTotal;
+import com.ruoyi.shop.mapper.shop.ShopTotalMapper;
+import com.ruoyi.shop.service.shop.ShopTotalService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 商户统计 服务实现类
+ * </p>
+ *
+ * @author jqs
+ * @since 2023-06-25
+ */
+@Service
+public class ShopTotalServiceImpl extends ServiceImpl<ShopTotalMapper, ShopTotal> implements ShopTotalService {
+
+}
diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/shop/ShopService.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/shop/ShopService.java
index b608a23..74ca3e7 100644
--- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/shop/ShopService.java
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/shop/ShopService.java
@@ -206,4 +206,13 @@
     * @date 2023/6/23 14:13
     */
     List<Long> listShopIdByPlTotal(MgtBasePlatformDto mgtBasePlatformDto);
+
+    /**
+     * @description  获取商户审核资料
+     * @author  jqs
+     * @date    2023/6/25 10:37
+     * @param authId
+     * @return  MgtShopAuthGetVo
+     */
+    MgtShopAuthGetVo getMgtShopAuth(String authId);
 }
diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/shop/ShopTotalService.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/shop/ShopTotalService.java
new file mode 100644
index 0000000..9f049f9
--- /dev/null
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/shop/ShopTotalService.java
@@ -0,0 +1,16 @@
+package com.ruoyi.shop.service.shop;
+
+import com.ruoyi.shop.domain.pojo.ShopTotal;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ * 商户统计 服务类
+ * </p>
+ *
+ * @author jqs
+ * @since 2023-06-25
+ */
+public interface ShopTotalService extends IService<ShopTotal> {
+
+}
diff --git a/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml b/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml
index bb8fa05..d495f93 100644
--- a/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml
+++ b/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml
@@ -290,10 +290,9 @@
         ts.shop_name shopName,
         ts.shop_number shopNumber,
         ts.shop_tags shopTags,
-        sus.nick_name signUser,
+        ts.sign_user_id signUserId,
         null firstWithdraw,
-        sub.nick_name belongUser,
-        sd.dept_name belongDept,
+        ts.belong_user_id belongUserId,
         ts.shop_source shopSource,
         ts.sign_area_name signAreaName,
         CONCAT(ts.cooperation_start_time,'-',ts.cooperation_end_time) cooperationTime,
@@ -308,9 +307,6 @@
         tsm.shop_marketing_total shopActivityCount,
         ts.shop_custom_status shopCustomStatus
         FROM t_shop ts
-        LEFT JOIN sys_user sus ON sus.user_id = ts.sign_user_id
-        LEFT JOIN sys_user sub ON sub.user_id = ts.belong_user_id
-        LEFT JOIN sys_dept sd ON sub.dept_id = sd.dept_id
         LEFT JOIN t_shop_marketing tsm ON tsm.shop_id = ts.shop_id
         WHERE ts.del_flag = 0
         <if test="param.shopType!=null and param.shopType!=''">
diff --git a/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopTotalMapper.xml b/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopTotalMapper.xml
new file mode 100644
index 0000000..4dd3b03
--- /dev/null
+++ b/ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopTotalMapper.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.shop.mapper.shop.ShopTotalMapper">
+
+
+</mapper>
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/GeneratorMybatisPlus.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/GeneratorMybatisPlus.java
index c7fcae2..e81574c 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/GeneratorMybatisPlus.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/GeneratorMybatisPlus.java
@@ -44,7 +44,7 @@
         DataSourceConfig dataSourceConfig = new DataSourceConfig();
         dataSourceConfig.setDbType(DbType.MYSQL);
         dataSourceConfig.setTypeConvert(new MySqlTypeConvert());
-        dataSourceConfig.setUrl("jdbc:mysql://47.109.78.184:10010/hrt_member?tinyInt1isBit=false");
+        dataSourceConfig.setUrl("jdbc:mysql://47.109.78.184:10010/hrt_shop?tinyInt1isBit=false");
         dataSourceConfig.setDriverName("com.mysql.cj.jdbc.Driver");
         dataSourceConfig.setUsername("root");
         dataSourceConfig.setPassword("hrt123456");
@@ -53,7 +53,7 @@
         // 包名配置
         PackageConfig packageConfig = new PackageConfig();
         // 父包和子包名分开处理
-        packageConfig.setParent("com.ruoyi.member");
+        packageConfig.setParent("com.ruoyi.shop");
         packageConfig.setController("app");
         packageConfig.setEntity("domain.pojo");
         packageConfig.setMapper("mapper");
@@ -74,7 +74,7 @@
         strategy.setControllerMappingHyphenStyle(true);
         //表和前缀处理
         String[] table = {
-                "t_birthday_gift","t_birthday_card"
+                "t_shop_total"
         };
         strategy.setInclude(table);
         String[] tablePre = new String[]{"t_"};
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/conslole/ConfigController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/conslole/ConfigController.java
index 36700ed..91e2db7 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/conslole/ConfigController.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/conslole/ConfigController.java
@@ -1,10 +1,12 @@
 package com.ruoyi.system.controller.conslole;
 
 import com.ruoyi.common.core.domain.R;
+import com.ruoyi.system.api.domain.dto.MgtBaseBathDto;
 import com.ruoyi.system.api.domain.dto.MgtUserIdByDept;
 import com.ruoyi.system.api.domain.poji.config.Activeness;
 import com.ruoyi.system.api.domain.poji.config.SysClassification;
 import com.ruoyi.system.api.domain.poji.config.SysTag;
+import com.ruoyi.system.api.domain.vo.MgtSysSimpleUserVo;
 import com.ruoyi.system.service.config.ActivenessService;
 import com.ruoyi.system.service.config.SysClassificationService;
 import com.ruoyi.system.service.config.SysTagService;
@@ -114,4 +116,18 @@
         return R.ok(userIdByDept);
     }
 
+    /**
+     * @description  通过id获取用户简易信息
+     * @author  jqs
+     * @date    2023/6/25 14:41
+     * @param mgtBaseBathDto
+     * @return  R<List<MgtSysSimpleUserVo>>
+     */
+    @PostMapping("/listSimpleUserVo")
+    public R<List<MgtSysSimpleUserVo>> listSimpleUserVo(@RequestBody MgtBaseBathDto mgtBaseBathDto)
+    {
+        List<MgtSysSimpleUserVo> sysSimpleUserVoList = sysUserService.listSimpleUserVo(mgtBaseBathDto);
+        return R.ok(sysSimpleUserVoList);
+    }
+
 }
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtConfigController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtConfigController.java
index 84f82cb..f289552 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtConfigController.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtConfigController.java
@@ -345,6 +345,7 @@
         return R.ok(page.setRecords(mgtTagPageVoList));
     }
 
+    @ApiOperation(value = "导入标签")
     @PostMapping("/importData")
     public AjaxResult importData(MultipartFile file, Integer tagType) throws Exception
     {
@@ -355,6 +356,7 @@
         return success(message);
     }
 
+    @ApiOperation(value = "下载标签模板")
     @PostMapping("/importTemplate")
     public void importTemplate(HttpServletResponse response) throws IOException
     {
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtStaffController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtStaffController.java
index 6a32e70..85135b0 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtStaffController.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtStaffController.java
@@ -5,11 +5,9 @@
 import com.ruoyi.common.core.utils.poi.ExcelUtil;
 import com.ruoyi.common.security.utils.SecurityUtils;
 import com.ruoyi.system.api.domain.dto.MgtBaseGetDto;
-import com.ruoyi.system.domain.dto.MgtReplayStaffSuggestDto;
-import com.ruoyi.system.domain.dto.MgtStaffEditDto;
-import com.ruoyi.system.domain.dto.MgtStaffSuggestPageDto;
-import com.ruoyi.system.domain.dto.MgtTagStaffSuggestDto;
+import com.ruoyi.system.domain.dto.*;
 import com.ruoyi.system.domain.vo.MgtDeptStaffListVo;
+import com.ruoyi.system.domain.vo.MgtStaffPageVo;
 import com.ruoyi.system.domain.vo.MgtStaffSuggestPageVo;
 import com.ruoyi.system.domain.vo.MgtStaffSuggestTagVo;
 import com.ruoyi.system.service.config.StaffSuggestService;
@@ -111,6 +109,18 @@
         return R.ok();
     }
 
+    @RequestMapping(value = "/pageMgtStaff", method = RequestMethod.POST)
+    @ApiOperation(value = "平台获取员工列表")
+    public R<Page<MgtStaffPageVo>> pageMgtStaff(@RequestBody MgtStaffPageDto mgtStaffPageDto) {
+        Long userId = SecurityUtils.getUserId();
+        mgtStaffPageDto.setUserId(userId);
+        Page<MgtStaffPageVo> page = new Page<>();
+        page.setSize(mgtStaffPageDto.getPageSize());
+        page.setCurrent(mgtStaffPageDto.getPageNum());
+        List<MgtStaffPageVo> staffPageVoList = sysStaffService.pageMgtStaff(page,mgtStaffPageDto);
+        return R.ok(page.setRecords(staffPageVoList));
+    }
+
     @RequestMapping(value = "/mgtEditStaff", method = RequestMethod.POST)
     @ApiOperation(value = "平台编辑员工")
     public R mgtEditStaff(@RequestBody MgtStaffEditDto mgtStaffEditDto) {
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/sys/StaffMenuController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/sys/StaffMenuController.java
new file mode 100644
index 0000000..c8d2bc5
--- /dev/null
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/sys/StaffMenuController.java
@@ -0,0 +1,56 @@
+package com.ruoyi.system.controller.sys;
+
+import com.ruoyi.common.core.web.domain.AjaxResult;
+import com.ruoyi.common.security.utils.SecurityUtils;
+import com.ruoyi.system.domain.pojo.sys.SysMenu;
+import com.ruoyi.system.service.sys.ISysMenuService;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+/**
+ * @ClassName StaffMenuController
+ * @Description TODO
+ * @Author jqs
+ * @Date 2023/6/25 16:19
+ * @Version 1.0
+ */
+@RestController
+@RequestMapping("/staffMenu")
+public class StaffMenuController {
+
+
+    @Autowired
+    private ISysMenuService menuService;
+
+    @ApiOperation(value = "加载对应部门员工菜单列表树")
+    @GetMapping(value = "/roleStaffMenuTreeselect/{deptId}")
+    public AjaxResult deptStaffMenuTreeselect(@PathVariable("deptId") Long deptId)
+    {
+        Long userId = SecurityUtils.getUserId();
+        List<SysMenu> menus = menuService.selectStaffMenuList(userId);
+        AjaxResult ajax = AjaxResult.success();
+        ajax.put("checkedKeys", menuService.selectStaffMenuListByDeptId(deptId));
+        ajax.put("menus", menuService.buildMenuTreeSelect(menus));
+        return ajax;
+    }
+
+
+    @ApiOperation(value = "加载对应部门用户员工菜单列表树")
+    @GetMapping(value = "/deptUserStaffMenuTreeselect/{deptUserId}")
+    public AjaxResult deptUserStaffMenuTreeselect(@PathVariable("deptUserId") Long deptUserId)
+    {
+        Long userId = SecurityUtils.getUserId();
+        List<SysMenu> menus = menuService.selectStaffMenuList(userId);
+        AjaxResult ajax = AjaxResult.success();
+        ajax.put("checkedKeys", menuService.selectStaffMenuListByDeptUserId(deptUserId));
+        ajax.put("menus", menuService.buildMenuTreeSelect(menus));
+        return ajax;
+    }
+
+}
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/sys/SysDeptController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/sys/SysDeptController.java
index 9b94d78..ccab470 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/sys/SysDeptController.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/sys/SysDeptController.java
@@ -75,6 +75,8 @@
         {
             return error("新增部门'" + dept.getDeptName() + "'失败,部门名称已存在");
         }
+        dept.setParentId(100L);
+        dept.setOrderNum(1);
         dept.setCreateBy(SecurityUtils.getUsername());
         return toAjax(deptService.insertDept(dept));
     }
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/sys/SysUserController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/sys/SysUserController.java
index dd8f3a1..f034dda 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/sys/SysUserController.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/sys/SysUserController.java
@@ -1,7 +1,6 @@
 package com.ruoyi.system.controller.sys;
 
 import com.ruoyi.common.core.domain.R;
-import com.ruoyi.common.core.exception.ServiceException;
 import com.ruoyi.common.core.utils.StringUtils;
 import com.ruoyi.common.core.utils.poi.ExcelUtil;
 import com.ruoyi.common.core.web.controller.BaseController;
@@ -13,15 +12,11 @@
 import com.ruoyi.common.security.annotation.RequiresPermissions;
 import com.ruoyi.common.security.utils.SecurityUtils;
 import com.ruoyi.system.api.domain.dto.AppEditUserDto;
-import com.ruoyi.system.api.domain.poji.config.SysTag;
 import com.ruoyi.system.api.domain.poji.sys.SysDept;
 import com.ruoyi.system.api.domain.poji.sys.SysRole;
 import com.ruoyi.system.api.domain.poji.sys.SysUser;
-import com.ruoyi.system.api.model.AppMiniLoginVo;
 import com.ruoyi.system.api.model.LoginUser;
-import com.ruoyi.system.api.model.QwH5LoginVo;
-import com.ruoyi.system.api.model.QwUserDetailDto;
-import com.ruoyi.system.service.config.SysTagService;
+import com.ruoyi.system.domain.dto.UserMenuEditDto;
 import com.ruoyi.system.service.sys.*;
 import org.apache.commons.lang3.ArrayUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -29,11 +24,9 @@
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
 
-import javax.annotation.Resource;
 import javax.servlet.http.HttpServletResponse;
 import java.io.IOException;
 import java.util.List;
-import java.util.Optional;
 import java.util.Set;
 import java.util.stream.Collectors;
 
@@ -381,4 +374,9 @@
         return R.ok();
     }
 
+    @PostMapping("/editUserMenu")
+    public R editUserMenu(@RequestBody UserMenuEditDto userMenuEditDto){
+        userService.editUserMenu(userMenuEditDto);
+        return R.ok();
+    }
 }
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtStaffPageDto.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtStaffPageDto.java
new file mode 100644
index 0000000..3f01dcf
--- /dev/null
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtStaffPageDto.java
@@ -0,0 +1,22 @@
+package com.ruoyi.system.domain.dto;
+
+import com.ruoyi.system.api.domain.dto.MgtPageDto;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @ClassName MgtStaffPageDto
+ * @Description TODO
+ * @Author jqs
+ * @Date 2023/6/25 17:46
+ * @Version 1.0
+ */
+@Data
+public class MgtStaffPageDto extends MgtPageDto {
+
+    @ApiModelProperty(value = "部门id")
+    private Long deptId;
+
+    @ApiModelProperty(value = "员工姓名")
+    private String staffName;
+}
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/UserMenuEditDto.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/UserMenuEditDto.java
new file mode 100644
index 0000000..3f1b091
--- /dev/null
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/UserMenuEditDto.java
@@ -0,0 +1,25 @@
+package com.ruoyi.system.domain.dto;
+
+import lombok.Data;
+
+/**
+ * @ClassName UserMenuEditDto
+ * @Description TODO
+ * @Author jqs
+ * @Date 2023/6/25 16:35
+ * @Version 1.0
+ */
+@Data
+public class UserMenuEditDto {
+
+    private Long userId;
+
+    /** 菜单组 */
+    private Long[] menuIds;
+
+    /** 菜单组 */
+    private Long[] staffMenuIds;
+
+
+
+}
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/sys/SysDeptMenu.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/sys/SysDeptMenu.java
index e2cfa9c..6b1783d 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/sys/SysDeptMenu.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/sys/SysDeptMenu.java
@@ -16,6 +16,8 @@
     /** 菜单ID */
     private Long menuId;
 
+    private Integer menuFrom;
+
     public Long getDeptId()
     {
         return deptId;
@@ -36,6 +38,14 @@
         this.menuId = menuId;
     }
 
+    public Integer getMenuFrom() {
+        return menuFrom;
+    }
+
+    public void setMenuFrom(Integer menuFrom) {
+        this.menuFrom = menuFrom;
+    }
+
     @Override
     public String toString() {
         return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/sys/SysMenu.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/sys/SysMenu.java
index 189db7d..8ef4c81 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/sys/SysMenu.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/sys/SysMenu.java
@@ -1,13 +1,14 @@
 package com.ruoyi.system.domain.pojo.sys;
 
-import java.util.ArrayList;
-import java.util.List;
+import com.ruoyi.common.core.web.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
 import javax.validation.constraints.NotBlank;
 import javax.validation.constraints.NotNull;
 import javax.validation.constraints.Size;
-import org.apache.commons.lang3.builder.ToStringBuilder;
-import org.apache.commons.lang3.builder.ToStringStyle;
-import com.ruoyi.common.core.web.domain.BaseEntity;
+import java.util.ArrayList;
+import java.util.List;
 
 /**
  * 菜单权限表 sys_menu
@@ -62,6 +63,10 @@
 
     /** 菜单图标 */
     private String icon;
+
+    /** 菜单来源1管理平台2员工端 */
+    private Integer menuFrom;
+
 
     /** 子菜单 */
     private List<SysMenu> children = new ArrayList<SysMenu>();
@@ -232,7 +237,15 @@
     {
         this.children = children;
     }
-    
+
+    public Integer getMenuFrom() {
+        return menuFrom;
+    }
+
+    public void setMenuFrom(Integer menuFrom) {
+        this.menuFrom = menuFrom;
+    }
+
     @Override
     public String toString() {
         return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
@@ -254,6 +267,7 @@
             .append("updateBy", getUpdateBy())
             .append("updateTime", getUpdateTime())
             .append("remark", getRemark())
+            .append("menuFrom", getMenuFrom())
             .toString();
     }
 }
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/sys/SysUserMenu.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/sys/SysUserMenu.java
index 7aa84b1..8dc0660 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/sys/SysUserMenu.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/pojo/sys/SysUserMenu.java
@@ -16,6 +16,8 @@
     /** 菜单ID */
     private Long menuId;
 
+    private Integer menuFrom;
+
     public Long getUserId()
     {
         return userId;
@@ -36,6 +38,14 @@
         this.menuId = menuId;
     }
 
+    public Integer getMenuFrom() {
+        return menuFrom;
+    }
+
+    public void setMenuFrom(Integer menuFrom) {
+        this.menuFrom = menuFrom;
+    }
+
     @Override
     public String toString() {
         return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MgtStaffPageVo.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MgtStaffPageVo.java
new file mode 100644
index 0000000..366f85b
--- /dev/null
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MgtStaffPageVo.java
@@ -0,0 +1,51 @@
+package com.ruoyi.system.domain.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @ClassName MgtStaffPageVo
+ * @Description TODO
+ * @Author jqs
+ * @Date 2023/6/25 17:49
+ * @Version 1.0
+ */
+@Data
+public class MgtStaffPageVo {
+
+    /**
+     * 用户id
+     */
+    @ApiModelProperty(value = "用户id")
+    private Long userId;
+    /**
+     * 员工姓名
+     */
+    @ApiModelProperty(value = "员工姓名")
+    private String staffName;
+    /**
+     * 员工电话
+     */
+    @ApiModelProperty(value = "员工电话")
+    private String staffMobile;
+    /**
+     * 员工邮箱
+     */
+    @ApiModelProperty(value = "员工邮箱")
+    private String staffEmail;
+    /**
+     * 员工职位
+     */
+    @ApiModelProperty(value = "员工职位")
+    private String staffPost;
+    /**
+     * 员工头像
+     */
+    @ApiModelProperty(value = "员工头像")
+    private String staffAvatar;
+    /**
+     * 负责人标记
+     */
+    @ApiModelProperty(value = "负责人标记")
+    private String headFlag;
+}
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MgtStaffSuggestPageVo.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MgtStaffSuggestPageVo.java
index 3969d41..080c84d 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MgtStaffSuggestPageVo.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/MgtStaffSuggestPageVo.java
@@ -51,4 +51,7 @@
     @Excel(name = "平台响应时间", width = 30)
     @ApiModelProperty(value = "平台响应时间")
     private String responseTime;
+    @Excel(name = "建议标签", width = 30)
+    @ApiModelProperty(value = "建议标签")
+    private String suggestTags;
 }
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/staff/SysStaffMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/staff/SysStaffMapper.java
index 04603c4..7bc4909 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/staff/SysStaffMapper.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/staff/SysStaffMapper.java
@@ -1,8 +1,11 @@
 package com.ruoyi.system.mapper.staff;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.system.domain.dto.MgtStaffPageDto;
 import com.ruoyi.system.domain.pojo.staff.SysStaff;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.ruoyi.system.domain.vo.MgtDeptStaffListVo;
+import com.ruoyi.system.domain.vo.MgtStaffPageVo;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
@@ -35,4 +38,13 @@
      */
     List<MgtDeptStaffListVo> listMgtDeptStaffByDept(@Param("deptId") Long deptId,@Param("userId") Long userId);
 
+    /**
+     * @description
+     * @author  jqs
+     * @date    2023/6/25 17:52
+     * @param page
+     * @param mgtStaffPageDto
+     * @return  List<MgtStaffPageVo>
+     */
+    List<MgtStaffPageVo> pageMgtStaff(Page page, @Param("param")MgtStaffPageDto mgtStaffPageDto);
 }
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/sys/SysMenuMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/sys/SysMenuMapper.java
index 30ab907..2a1e321 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/sys/SysMenuMapper.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/sys/SysMenuMapper.java
@@ -21,6 +21,14 @@
     public List<SysMenu> selectMenuList(SysMenu menu);
 
     /**
+     * 查询系统菜单列表
+     *
+     * @param menu 菜单信息
+     * @return 菜单列表
+     */
+    public List<SysMenu> selectStaffMenuList(SysMenu menu);
+
+    /**
      * 根据用户所有权限
      * 
      * @return 权限列表
@@ -34,6 +42,14 @@
      * @return 菜单列表
      */
     public List<SysMenu> selectMenuListByUserId(SysMenu menu);
+
+    /**
+     * 根据用户查询系统菜单列表
+     *
+     * @param menu 菜单信息
+     * @return 菜单列表
+     */
+    public List<SysMenu> selectStaffMenuListByUserId(SysMenu menu);
 
     /**
      * 根据角色ID查询权限
@@ -85,6 +101,15 @@
     public List<Long> selectMenuListByDeptId(@Param("deptId") Long deptId, @Param("menuCheckStrictly") boolean menuCheckStrictly);
 
     /**
+     * @description selectMenuListByDeptId
+     * @param deptId
+     * @return List<SysMenu>
+     * @author jqs34
+     * @date 2023/6/18 19:13
+     */
+    public List<Long> selectStaffMenuListByDeptId(@Param("deptId") Long deptId, @Param("menuCheckStrictly") boolean menuCheckStrictly);
+
+    /**
      * @description selectMenuListByDeptUserId
      * @param deptUserId
      * @return List<SysMenu>
@@ -94,6 +119,15 @@
     public List<Long> selectMenuListByDeptUserId(@Param("deptUserId") Long deptUserId, @Param("menuCheckStrictly") boolean menuCheckStrictly);
 
     /**
+     * @description selectMenuListByDeptUserId
+     * @param deptUserId
+     * @return List<SysMenu>
+     * @author jqs34
+     * @date 2023/6/18 19:13
+     */
+    public List<Long> selectStaffMenuListByDeptUserId(@Param("deptUserId") Long deptUserId, @Param("menuCheckStrictly") boolean menuCheckStrictly);
+
+    /**
      * 根据菜单ID查询信息
      * 
      * @param menuId 菜单ID
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/sys/SysUserMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/sys/SysUserMapper.java
index d0c4ea6..d3974d3 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/sys/SysUserMapper.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/sys/SysUserMapper.java
@@ -3,6 +3,7 @@
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.ruoyi.system.api.domain.dto.MgtUserIdByDept;
 import com.ruoyi.system.api.domain.poji.sys.SysUser;
+import com.ruoyi.system.api.domain.vo.MgtSysSimpleUserVo;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
@@ -135,4 +136,13 @@
      * @return  List<Long>
      */
     List<Long> getUserIdByDept(@Param("param")MgtUserIdByDept userIdByDept);
+
+    /**
+     * @description
+     * @author  jqs
+     * @date    2023/6/25 14:35
+     * @param userIds
+     * @return  List<MgtSysSimpleUserVo>
+     */
+    List<MgtSysSimpleUserVo> listSimpleUserVo(@Param("userIds")String userIds);
 }
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/StaffSuggestServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/StaffSuggestServiceImpl.java
index 3f52807..4745757 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/StaffSuggestServiceImpl.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/StaffSuggestServiceImpl.java
@@ -88,7 +88,7 @@
     @Override
     public void mgtReplayStaffSuggest(MgtReplayStaffSuggestDto mgtReplayStaffSuggestDto){
         Long userId = mgtReplayStaffSuggestDto.getUserId();
-        SysUser sysUser = sysUserService.getById(userId);
+        SysUser sysUser = sysUserService.selectUserById(userId);
         StaffSuggest staffSuggest = this.getById(mgtReplayStaffSuggestDto.getSuggestId());
         staffSuggest.setReplayContent(mgtReplayStaffSuggestDto.getReplayContent());
         staffSuggest.setReplayTime(new Date());
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/staff/SysStaffServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/staff/SysStaffServiceImpl.java
index 5b38002..c82f9cc 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/staff/SysStaffServiceImpl.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/staff/SysStaffServiceImpl.java
@@ -1,14 +1,17 @@
 package com.ruoyi.system.service.impl.staff;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.common.core.utils.uuid.IdUtils;
 import com.ruoyi.common.security.utils.SecurityUtils;
 import com.ruoyi.system.api.domain.dto.MgtBaseGetDto;
 import com.ruoyi.system.api.domain.poji.sys.SysUser;
 import com.ruoyi.system.domain.dto.MgtStaffEditDto;
+import com.ruoyi.system.domain.dto.MgtStaffPageDto;
 import com.ruoyi.system.domain.pojo.staff.SysStaff;
 import com.ruoyi.system.domain.vo.MgtDeptStaffListVo;
+import com.ruoyi.system.domain.vo.MgtStaffPageVo;
 import com.ruoyi.system.mapper.staff.SysStaffMapper;
 import com.ruoyi.system.service.staff.SysStaffService;
 import com.ruoyi.system.service.sys.ISysUserService;
@@ -147,4 +150,17 @@
         this.saveOrUpdate(sysStaff);
         sysUserService.deleteUserById(mgtBaseGetDto.getUserId());
     }
+
+    /**
+     * @description
+     * @author  jqs
+     * @date    2023/6/25 17:52
+     * @param page
+     * @param mgtStaffPageDto
+     * @return  List<MgtStaffPageVo>
+     */
+    @Override
+    public List<MgtStaffPageVo> pageMgtStaff(Page page, MgtStaffPageDto mgtStaffPageDto){
+        return sysStaffMapper.pageMgtStaff(page, mgtStaffPageDto);
+    }
 }
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysDeptServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysDeptServiceImpl.java
index 63c79a6..0bdc6ed 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysDeptServiceImpl.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysDeptServiceImpl.java
@@ -225,8 +225,13 @@
         }
         dept.setAncestors(info.getAncestors() + "," + dept.getParentId());
         //新增部门
-        deptMapper.insertDept(dept);
-        return insertDeptMenu(dept);
+        int i = deptMapper.insertDept(dept);
+        if(dept.getMenuIds()!=null||dept.getStaffMenuIds()!=null){
+            return insertDeptMenu(dept);
+        }else{
+            return i;
+        }
+
     }
 
     /**
@@ -244,6 +249,14 @@
             SysDeptMenu rm = new SysDeptMenu();
             rm.setDeptId(dept.getDeptId());
             rm.setMenuId(menuId);
+            rm.setMenuFrom(1);
+            list.add(rm);
+        }
+        for(Long menuId : dept.getStaffMenuIds()){
+            SysDeptMenu rm = new SysDeptMenu();
+            rm.setDeptId(dept.getDeptId());
+            rm.setMenuId(menuId);
+            rm.setMenuFrom(2);
             list.add(rm);
         }
         if (list.size() > 0)
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysMenuServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysMenuServiceImpl.java
index 71abcfe..fd8a9d1 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysMenuServiceImpl.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysMenuServiceImpl.java
@@ -50,7 +50,16 @@
     {
         return selectMenuList(new SysMenu(), userId);
     }
-
+    /**
+     * 根据用户查询系统菜单列表
+     *
+     * @param userId 用户ID
+     * @return 菜单列表
+     */
+    @Override
+    public List<SysMenu> selectStaffMenuList(Long userId){
+        return selectStaffMenuList(new SysMenu(), userId);
+    }
     /**
      * 查询系统菜单列表
      * 
@@ -70,6 +79,29 @@
         {
             menu.getParams().put("userId", userId);
             menuList = menuMapper.selectMenuListByUserId(menu);
+        }
+        return menuList;
+    }
+
+    /**
+     * 根据用户查询系统菜单列表
+     *
+     * @param menu 菜单信息
+     * @param userId 用户ID
+     * @return 菜单列表
+     */
+    @Override
+    public List<SysMenu> selectStaffMenuList(SysMenu menu, Long userId){
+        List<SysMenu> menuList = null;
+        // 管理员显示所有菜单信息
+        if (SysUser.isAdmin(userId))
+        {
+            menuList = menuMapper.selectStaffMenuList(menu);
+        }
+        else
+        {
+            menu.getParams().put("userId", userId);
+            menuList = menuMapper.selectStaffMenuListByUserId(menu);
         }
         return menuList;
     }
@@ -164,16 +196,41 @@
 
     /**
      * @description selectMenuListByDeptId
+     * @param deptId
+     * @return List<SysMenu>
+     * @author jqs34
+     * @date 2023/6/18 19:13
+     */
+    @Override
+    public List<Long> selectStaffMenuListByDeptId(Long deptId){
+        return menuMapper.selectStaffMenuListByDeptId(deptId, true);
+    }
+
+    /**
+     * @description selectMenuListByDeptId
      * @param deptUserId
      * @return List<SysMenu>
      * @author jqs34
      * @date 2023/6/18 19:13
      */
+    @Override
     public List<Long> selectMenuListByDeptUserId(Long deptUserId){
         return menuMapper.selectMenuListByDeptUserId(deptUserId, true);
     }
 
     /**
+     * @description selectMenuListByDeptId
+     * @param deptUserId
+     * @return List<SysMenu>
+     * @author jqs34
+     * @date 2023/6/18 19:13
+     */
+    @Override
+    public List<Long> selectStaffMenuListByDeptUserId(Long deptUserId){
+        return menuMapper.selectStaffMenuListByDeptUserId(deptUserId, true);
+    }
+
+    /**
      * 构建前端路由所需要的菜单
      * 
      * @param menus 菜单列表
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysUserServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysUserServiceImpl.java
index 6ce9dc7..befbd2d 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysUserServiceImpl.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysUserServiceImpl.java
@@ -10,10 +10,14 @@
 import com.ruoyi.common.datascope.annotation.DataScope;
 import com.ruoyi.common.security.utils.SecurityUtils;
 import com.ruoyi.system.api.domain.dto.AppEditUserDto;
+import com.ruoyi.system.api.domain.dto.MgtBaseBathDto;
 import com.ruoyi.system.api.domain.dto.MgtUserIdByDept;
 import com.ruoyi.system.api.domain.poji.sys.SysRole;
 import com.ruoyi.system.api.domain.poji.sys.SysUser;
+import com.ruoyi.system.api.domain.vo.MgtSysSimpleUserVo;
+import com.ruoyi.system.domain.dto.UserMenuEditDto;
 import com.ruoyi.system.domain.pojo.sys.SysPost;
+import com.ruoyi.system.domain.pojo.sys.SysUserMenu;
 import com.ruoyi.system.domain.pojo.sys.SysUserPost;
 import com.ruoyi.system.domain.pojo.sys.SysUserRole;
 import com.ruoyi.system.mapper.sys.*;
@@ -61,6 +65,9 @@
 
     @Resource
     protected Validator validator;
+
+    @Resource
+    protected SysUserMenuMapper userMenuMapper;
 
     /**
      * 根据条件分页查询用户列表
@@ -637,4 +644,51 @@
         userIdByDept.setUserIdList(userIdList);
         return userIdByDept;
     }
+
+    /**
+     * @description
+     * @author  jqs
+     * @date    2023/6/25 14:35
+     * @param mgtBaseBathDto
+     * @return  List<MgtSysSimpleUserVo>
+     */
+    @Override
+    public List<MgtSysSimpleUserVo> listSimpleUserVo(MgtBaseBathDto mgtBaseBathDto){
+        return userMapper.listSimpleUserVo(mgtBaseBathDto.getIds());
+    }
+
+    /**
+     * @description
+     * @author  jqs
+     * @date    2023/6/25 16:37
+     * @param userMenuEditDto
+     * @return  void
+     */
+    @Override
+    public void editUserMenu(UserMenuEditDto userMenuEditDto){
+        userMenuMapper.deleteUserMenuByUserId(userMenuEditDto.getUserId());
+        int rows = 1;
+        // 新增用户与角色管理
+        List<SysUserMenu> list = new ArrayList<SysUserMenu>();
+        for (Long menuId : userMenuEditDto.getMenuIds())
+        {
+            SysUserMenu rm = new SysUserMenu();
+            rm.setUserId(userMenuEditDto.getUserId());
+            rm.setMenuId(menuId);
+            rm.setMenuFrom(1);
+            list.add(rm);
+        }
+        for(Long menuId : userMenuEditDto.getStaffMenuIds()){
+            SysUserMenu rm = new SysUserMenu();
+            rm.setUserId(userMenuEditDto.getUserId());
+            rm.setMenuId(menuId);
+            rm.setMenuFrom(2);
+            list.add(rm);
+        }
+        if (list.size() > 0)
+        {
+            rows = userMenuMapper.batchUserMenu(list);
+        }
+    }
+
 }
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/staff/SysStaffService.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/staff/SysStaffService.java
index b345f8b..7fca57e 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/staff/SysStaffService.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/staff/SysStaffService.java
@@ -1,10 +1,13 @@
 package com.ruoyi.system.service.staff;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.system.api.domain.dto.MgtBaseGetDto;
 import com.ruoyi.system.domain.dto.MgtStaffEditDto;
+import com.ruoyi.system.domain.dto.MgtStaffPageDto;
 import com.ruoyi.system.domain.pojo.staff.SysStaff;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.ruoyi.system.domain.vo.MgtDeptStaffListVo;
+import com.ruoyi.system.domain.vo.MgtStaffPageVo;
 
 import java.util.List;
 
@@ -62,4 +65,14 @@
     * @date 2023/6/18 22:01
     */
     void mgtDeleteStaff(MgtBaseGetDto mgtBaseGetDto);
+
+    /**
+     * @description
+     * @author  jqs
+     * @date    2023/6/25 17:52
+     * @param page
+ * @param mgtStaffPageDto
+     * @return  List<MgtStaffPageVo>
+     */
+    List<MgtStaffPageVo> pageMgtStaff(Page page, MgtStaffPageDto mgtStaffPageDto);
 }
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/sys/ISysMenuService.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/sys/ISysMenuService.java
index e3a8c02..249efe2 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/sys/ISysMenuService.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/sys/ISysMenuService.java
@@ -24,12 +24,29 @@
 
     /**
      * 根据用户查询系统菜单列表
+     *
+     * @param userId 用户ID
+     * @return 菜单列表
+     */
+    public List<SysMenu> selectStaffMenuList(Long userId);
+
+    /**
+     * 根据用户查询系统菜单列表
      * 
      * @param menu 菜单信息
      * @param userId 用户ID
      * @return 菜单列表
      */
     public List<SysMenu> selectMenuList(SysMenu menu, Long userId);
+
+    /**
+     * 根据用户查询系统菜单列表
+     *
+     * @param menu 菜单信息
+     * @param userId 用户ID
+     * @return 菜单列表
+     */
+    public List<SysMenu> selectStaffMenuList(SysMenu menu, Long userId);
 
 
     /**
@@ -75,6 +92,15 @@
 
     /**
      * @description selectMenuListByDeptId
+     * @param deptId
+     * @return List<SysMenu>
+     * @author jqs34
+     * @date 2023/6/18 19:13
+     */
+    public List<Long> selectStaffMenuListByDeptId(Long deptId);
+
+    /**
+     * @description selectMenuListByDeptId
      * @param deptUserId
      * @return List<SysMenu>
      * @author jqs34
@@ -83,6 +109,15 @@
     public List<Long> selectMenuListByDeptUserId(Long deptUserId);
 
     /**
+     * @description selectMenuListByDeptId
+     * @param deptUserId
+     * @return List<SysMenu>
+     * @author jqs34
+     * @date 2023/6/18 19:13
+     */
+    public List<Long> selectStaffMenuListByDeptUserId(Long deptUserId);
+
+    /**
      * 构建前端路由所需要的菜单
      * 
      * @param menus 菜单列表
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/sys/ISysUserService.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/sys/ISysUserService.java
index 6f26ac6..83a5d50 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/sys/ISysUserService.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/sys/ISysUserService.java
@@ -2,8 +2,11 @@
 
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.ruoyi.system.api.domain.dto.AppEditUserDto;
+import com.ruoyi.system.api.domain.dto.MgtBaseBathDto;
 import com.ruoyi.system.api.domain.dto.MgtUserIdByDept;
 import com.ruoyi.system.api.domain.poji.sys.SysUser;
+import com.ruoyi.system.api.domain.vo.MgtSysSimpleUserVo;
+import com.ruoyi.system.domain.dto.UserMenuEditDto;
 
 import java.util.List;
 
@@ -244,4 +247,22 @@
      * @return  MgtUserIdByDept
      */
     MgtUserIdByDept getUserIdByDept(MgtUserIdByDept userIdByDept);
+
+    /**
+     * @description
+     * @author  jqs
+     * @date    2023/6/25 14:36
+     * @param mgtBaseBathDto
+     * @return  List<MgtSysSimpleUserVo>
+     */
+    List<MgtSysSimpleUserVo> listSimpleUserVo(MgtBaseBathDto mgtBaseBathDto);
+
+    /**
+     * @description
+     * @author  jqs
+     * @date    2023/6/25 16:37
+     * @param userMenuEditDto
+     * @return  void
+     */
+    void editUserMenu(UserMenuEditDto userMenuEditDto);
 }
diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/staff/SysStaffMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/staff/SysStaffMapper.xml
index a893c2a..de5a65d 100644
--- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/staff/SysStaffMapper.xml
+++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/staff/SysStaffMapper.xml
@@ -36,4 +36,23 @@
         </if>
     </select>
 
+    <select id="pageMgtStaff" resultType="com.ruoyi.system.domain.vo.MgtStaffPageVo">
+        SELECT
+        su.user_id userId,
+        tss.staff_name staffName,
+        tss.staff_mobile staffMobile,
+        tss.staff_email staffEmail,
+        tss.staff_post staffPost,
+        tss.staff_avatar staffAvatar,
+        tss.head_flag headFlag
+        FROM t_sys_staff tss
+        INNER JOIN sys_user su ON tss.user_id = su.user_id
+        WHERE su.del_flag = 0
+        <if test="param.deptId!=null and param.deptId!=''">
+            AND su.dept_id = #{param.deptId}
+        </if>
+        <if test="param.staffName!=null and param.staffName!=''">
+            AND tss.staff_name LIKE CONCAT('%',#{param.staffName},'%')
+        </if>
+    </select>
 </mapper>
diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/sys/SysDeptMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/sys/SysDeptMapper.xml
index 18464b8..91ed7c7 100644
--- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/sys/SysDeptMapper.xml
+++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/sys/SysDeptMapper.xml
@@ -85,7 +85,7 @@
 		where dept_name=#{deptName} and parent_id = #{parentId} and del_flag = '0' limit 1
 	</select>
     
-    <insert id="insertDept" parameterType="SysDept">
+    <insert id="insertDept" parameterType="SysDept" useGeneratedKeys="true" keyProperty="deptId">
  		insert into sys_dept(
  			<if test="deptId != null and deptId != 0">dept_id,</if>
  			<if test="parentId != null and parentId != 0">parent_id,</if>
diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/sys/SysMenuMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/sys/SysMenuMapper.xml
index ef3fe7b..9d5ab94 100644
--- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/sys/SysMenuMapper.xml
+++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/sys/SysMenuMapper.xml
@@ -35,6 +35,24 @@
     <select id="selectMenuList" parameterType="SysMenu" resultMap="SysMenuResult">
 		<include refid="selectMenuVo"/>
 		<where>
+			AND menu_from = 1
+			<if test="menuName != null and menuName != ''">
+				AND menu_name like concat('%', #{menuName}, '%')
+			</if>
+			<if test="visible != null and visible != ''">
+				AND visible = #{visible}
+			</if>
+			<if test="status != null and status != ''">
+				AND status = #{status}
+			</if>
+		</where>
+		order by parent_id, order_num
+	</select>
+
+	<select id="selectStaffMenuList" parameterType="SysMenu" resultMap="SysMenuResult">
+		<include refid="selectMenuVo"/>
+		<where>
+			AND menu_from = 2
 			<if test="menuName != null and menuName != ''">
 				AND menu_name like concat('%', #{menuName}, '%')
 			</if>
@@ -50,7 +68,7 @@
 	
 	<select id="selectMenuTreeAll" resultMap="SysMenuResult">
 		select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.`query`, m.visible, m.status, ifnull(m.perms,'') as perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.create_time
-		from sys_menu m where m.menu_type in ('M', 'C') and m.status = 0
+		from sys_menu m where m.menu_type in ('M', 'C') and m.status = 0 AND menu_from = 1
 		order by m.parent_id, m.order_num
 	</select>
 	
@@ -60,7 +78,7 @@
 		left join sys_role_menu rm on m.menu_id = rm.menu_id
 		left join sys_user_role ur on rm.role_id = ur.role_id
 		left join sys_role ro on ur.role_id = ro.role_id
-		where ur.user_id = #{params.userId}
+		where ur.user_id = #{params.userId} AND m.menu_from = 1
 		<if test="menuName != null and menuName != ''">
             AND m.menu_name like concat('%', #{menuName}, '%')
 		</if>
@@ -72,6 +90,23 @@
 		</if>
 		order by m.parent_id, m.order_num
 	</select>
+
+	<select id="selectStaffMenuListByUserId" parameterType="SysMenu" resultMap="SysMenuResult">
+		select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.`query`, m.visible, m.status, ifnull(m.perms,'') as perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.create_time
+		from sys_menu m
+		left join sys_user_menu rm on m.menu_id = rm.menu_id
+		where rm.user_id = #{params.userId} AND rm.menu_from = 2
+		<if test="menuName != null and menuName != ''">
+			AND m.menu_name like concat('%', #{menuName}, '%')
+		</if>
+		<if test="visible != null and visible != ''">
+			AND m.visible = #{visible}
+		</if>
+		<if test="status != null and status != ''">
+			AND m.status = #{status}
+		</if>
+		order by m.parent_id, m.order_num
+	</select>
     
     <select id="selectMenuTreeByUserId" parameterType="Long" resultMap="SysMenuResult">
 		select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.`query`, m.visible, m.status, ifnull(m.perms,'') as perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.create_time
@@ -80,7 +115,7 @@
 			 left join sys_user_role ur on rm.role_id = ur.role_id
 			 left join sys_role ro on ur.role_id = ro.role_id
 			 left join sys_user u on ur.user_id = u.user_id
-		where u.user_id = #{userId} and m.menu_type in ('M', 'C') and m.status = 0  AND ro.status = 0
+		where u.user_id = #{userId} and m.menu_type in ('M', 'C') and m.status = 0  AND ro.status = 0 AND menu_from = 1
 		order by m.parent_id, m.order_num
 	</select>
 	
@@ -88,7 +123,7 @@
 		select m.menu_id
 		from sys_menu m
             left join sys_role_menu rm on m.menu_id = rm.menu_id
-        where rm.role_id = #{roleId}
+        where rm.role_id = #{roleId} AND m.menu_from = 1
             <if test="menuCheckStrictly">
               and m.menu_id not in (select m.parent_id from sys_menu m inner join sys_role_menu rm on m.menu_id = rm.menu_id and rm.role_id = #{roleId})
             </if>
@@ -99,7 +134,18 @@
 		select m.menu_id
 		from sys_menu m
 		left join sys_dept_menu rm on m.menu_id = rm.menu_id
-		where rm.dept_id = #{deptId}
+		where rm.dept_id = #{deptId} AND m.menu_from = 1 AND rm.menu_from = 1
+		<if test="menuCheckStrictly">
+			and m.menu_id not in (select m.parent_id from sys_menu m inner join sys_dept_menu rm on m.menu_id = rm.menu_id and rm.dept_id = #{deptId})
+		</if>
+		order by m.parent_id, m.order_num
+	</select>
+
+	<select id="selectStaffMenuListByDeptId" resultType="Long">
+		select m.menu_id
+		from sys_menu m
+		left join sys_dept_menu rm on m.menu_id = rm.menu_id
+		where rm.dept_id = #{deptId} AND m.menu_from = 2 AND rm.menu_from = 2
 		<if test="menuCheckStrictly">
 			and m.menu_id not in (select m.parent_id from sys_menu m inner join sys_dept_menu rm on m.menu_id = rm.menu_id and rm.dept_id = #{deptId})
 		</if>
@@ -110,7 +156,18 @@
 		select m.menu_id
 		from sys_menu m
 		left join sys_user_menu rm on m.menu_id = rm.menu_id
-		where rm.user_id = #{deprUserId}
+		where rm.user_id = #{deptUserId} AND m.menu_from = 1 AND rm.menu_from = 1
+		<if test="menuCheckStrictly">
+			and m.menu_id not in (select m.parent_id from sys_menu m inner join sys_user_menu rm on m.menu_id = rm.menu_id and rm.user_id = #{deptUserId})
+		</if>
+		order by m.parent_id, m.order_num
+	</select>
+
+	<select id="selectStaffMenuListByDeptUserId" resultType="Long">
+		select m.menu_id
+		from sys_menu m
+		left join sys_user_menu rm on m.menu_id = rm.menu_id
+		where rm.user_id = #{deptUserId} AND m.menu_from = 2 AND rm.menu_from = 2
 		<if test="menuCheckStrictly">
 			and m.menu_id not in (select m.parent_id from sys_menu m inner join sys_user_menu rm on m.menu_id = rm.menu_id and rm.user_id = #{deptUserId})
 		</if>
@@ -122,6 +179,7 @@
 		from sys_menu m
 			 left join sys_role_menu rm on m.menu_id = rm.menu_id
 			 left join sys_user_role ur on rm.role_id = ur.role_id
+		where m.menu_from = 1
 	</select>
 
 	<select id="selectMenuPermsByUserId" parameterType="Long" resultType="String">
@@ -130,28 +188,28 @@
 			 left join sys_role_menu rm on m.menu_id = rm.menu_id
 			 left join sys_user_role ur on rm.role_id = ur.role_id
 			 left join sys_role r on r.role_id = ur.role_id
-		where m.status = '0' and r.status = '0' and ur.user_id = #{userId}
+		where m.status = '0' and r.status = '0' and ur.user_id = #{userId} AND m.menu_from = 1
 	</select>
 	
 	<select id="selectMenuPermsByRoleId" parameterType="Long" resultType="String">
 		select distinct m.perms
 		from sys_menu m
 			 left join sys_role_menu rm on m.menu_id = rm.menu_id
-		where m.status = '0' and rm.role_id = #{roleId}
+		where m.status = '0' and rm.role_id = #{roleId} AND m.menu_from = 1
 	</select>
 	
 	<select id="selectMenuById" parameterType="Long" resultMap="SysMenuResult">
 		<include refid="selectMenuVo"/>
-		where menu_id = #{menuId}
+		where menu_id = #{menuId} AND m.menu_from = 1
 	</select>
 	
 	<select id="hasChildByMenuId" resultType="Integer">
-	    select count(1) from sys_menu where parent_id = #{menuId}  
+	    select count(1) from sys_menu where parent_id = #{menuId} AND m.menu_from = 1
 	</select>
 	
 	<select id="checkMenuNameUnique" parameterType="SysMenu" resultMap="SysMenuResult">
 		<include refid="selectMenuVo"/>
-		where menu_name=#{menuName} and parent_id = #{parentId} limit 1
+		where menu_name=#{menuName} and parent_id = #{parentId} limit 1 AND m.menu_from = 1
 	</select>
 	
 	<update id="updateMenu" parameterType="SysMenu">
@@ -172,6 +230,7 @@
 			<if test="icon !=null and icon != ''">icon = #{icon},</if>
 			<if test="remark != null and remark != ''">remark = #{remark},</if>
 			<if test="updateBy != null and updateBy != ''">update_by = #{updateBy},</if>
+			<if test="menuFrom != null and menuFrom != ''">menu_from = #{menuFrom},</if>
 			update_time = sysdate()
 		</set>
 		where menu_id = #{menuId}
@@ -195,6 +254,7 @@
 		<if test="icon != null and icon != ''">icon,</if>
 		<if test="remark != null and remark != ''">remark,</if>
 		<if test="createBy != null and createBy != ''">create_by,</if>
+		<if test="menuFrom != null and menuFrom != ''">menu_from,</if>
 		create_time
 		)values(
 		<if test="menuId != null and menuId != 0">#{menuId},</if>
@@ -213,6 +273,7 @@
 		<if test="icon != null and icon != ''">#{icon},</if>
 		<if test="remark != null and remark != ''">#{remark},</if>
 		<if test="createBy != null and createBy != ''">#{createBy},</if>
+		<if test="menuFrom != null and menuFrom != ''">#{menuFrom},</if>
 		sysdate()
 		)
 	</insert>
diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/sys/SysUserMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/sys/SysUserMapper.xml
index 6836c8c..8208bfd 100644
--- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/sys/SysUserMapper.xml
+++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/sys/SysUserMapper.xml
@@ -24,6 +24,7 @@
         <result property="updateBy"     column="update_by"    />
         <result property="updateTime"   column="update_time"  />
         <result property="remark"       column="remark"       />
+		<result property="dataScope"       column="user_data_scope"       />
         <association property="dept"    column="dept_id" javaType="SysDept" resultMap="deptResult" />
         <collection  property="roles"   javaType="java.util.List"           resultMap="RoleResult" />
     </resultMap>
@@ -48,7 +49,7 @@
     </resultMap>
 	
 	<sql id="selectUserVo">
-        select u.user_id, u.dept_id, u.user_name,u.user_type, u.nick_name, u.email, u.avatar, u.phonenumber, u.password, u.sex, u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark,
+        select u.user_id, u.dept_id, u.user_name,u.user_type, u.nick_name, u.email, u.avatar, u.phonenumber, u.password, u.sex, u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, u.data_scope as user_data_scope,
         d.dept_id, d.parent_id, d.ancestors, d.dept_name, d.order_num, d.leader, d.status as dept_status,
         r.role_id, r.role_name, r.role_key, r.role_sort, r.data_scope, r.status as role_status
         from sys_user u
@@ -225,7 +226,21 @@
 		FROM sys_user
 		WHERE del_flag = '0'
 		<if test="param.deptId != null and param.deptId != ''">
-			dept_id = #{param.deptId}
+			AND dept_id = #{param.deptId}
+		</if>
+	</select>
+
+	<select id="listSimpleUserVo" resultType="com.ruoyi.system.api.domain.vo.MgtSysSimpleUserVo">
+		SELECT
+		su.user_id userId,
+		su.nick_name nickName,
+		sd.dept_id deptId,
+		sd.dept_name deptName
+		FROM sys_user su
+		LEFT JOIN sys_dept sd ON sd.dept_id = su.dept_id
+		WHERE su.del_flag = '0'
+		<if test="userIds != null and userIds != ''">
+			AND FIND_IN_SET(#{userIds}, su.user_id)
 		</if>
 	</select>
 </mapper> 
\ No newline at end of file

--
Gitblit v1.7.1