Преглед изворни кода

Merge remote-tracking branch 'origin/master'

yfh пре 3 недеља
родитељ
комит
3fdc89bdc9

+ 0 - 1
fs-admin/src/main/java/com/fs/his/controller/FsTestTempItemController.java

@@ -4,7 +4,6 @@ import java.util.List;
 
 import com.fs.his.param.FsTestTempItemParam;
 import com.fs.his.vo.FsTestTempItemListVO;
-import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;

+ 26 - 3
fs-admin/src/main/java/com/fs/web/controller/system/SysUserController.java

@@ -1,10 +1,14 @@
 package com.fs.web.controller.system;
 
+import java.util.ArrayList;
 import java.util.List;
 import java.util.stream.Collectors;
 
+import com.fs.common.constant.HttpStatus;
 import com.fs.common.core.domain.R;
 import com.fs.common.core.domain.model.LoginUser;
+import com.fs.common.core.page.PageDomain;
+import com.fs.common.core.page.TableSupport;
 import com.fs.common.utils.ServletUtils;
 import org.apache.commons.lang3.ArrayUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -59,9 +63,28 @@ public class SysUserController extends BaseController
     @GetMapping("/list")
     public TableDataInfo list(SysUser user)
     {
-        startPage();
-        List<SysUser> list = userService.selectUserList(user);
-        return getDataTable(list);
+        PageDomain pageDomain = TableSupport.buildPageRequest();
+        Integer pageNum = pageDomain.getPageNum();
+        Integer pageSize = pageDomain.getPageSize();
+
+
+        long total = userService.selectUserCount(user);
+
+
+        List<Long> userIds = userService.selectUserIdsWithPage(user, pageNum, pageSize);
+
+        List<SysUser> list = new ArrayList<>();
+        if (!userIds.isEmpty()) {
+
+            list = userService.selectUserListByIds(userIds);
+        }
+
+        TableDataInfo rspData = new TableDataInfo();
+        rspData.setCode(HttpStatus.SUCCESS);
+        rspData.setMsg("查询成功");
+        rspData.setRows(list);
+        rspData.setTotal(total);
+        return rspData;
     }
 
     @Log(title = "用户管理", businessType = BusinessType.EXPORT)

+ 11 - 0
fs-common/src/main/java/com/fs/common/core/domain/entity/SysUser.java

@@ -95,11 +95,22 @@ public class SysUser extends BaseEntity
     /** 角色ID */
     private Long roleId;
 
+    @Excel(name = "角色名称")
+    private List<String> roleName;
+
     public SysUser()
     {
 
     }
 
+    public List<String> getRoleName() {
+        return roleName;
+    }
+
+    public void setRoleName(List<String> roleName) {
+        this.roleName = roleName;
+    }
+
     public SysUser(Long userId)
     {
         this.userId = userId;

+ 1 - 1
fs-company/src/main/resources/application.yml

@@ -4,7 +4,7 @@ server:
 spring:
   profiles:
 #    active: druid-fcky-test
-    active: dev
+    active: druid-jnmy-test
 #    active: druid-jzzx-test
 #    active: druid-hdt
 #    active: druid-sxjz

+ 1 - 35
fs-service/src/main/java/com/fs/company/mapper/CompanyUserMapper.java

@@ -151,41 +151,7 @@ public interface CompanyUserMapper
     @Select("select * from  qw_user  where corp_id=#{corpId} and company_id=#{companyId}")
     List<QwUserVO> selectCompanyQwUserList(@Param("corpId") String corpId,@Param("companyId")Long companyId);
 
-    @Select({"<script> " +
-            "select u.*, d.dept_name, d.leader from company_user u\n" +
-            "        left join company_dept d on u.dept_id = d.dept_id\n" +
-            "        where u.del_flag = '0'\n" +
-            "        <if test=\"userName != null and userName != ''\">\n" +
-            "            AND u.user_name like concat('%', #{userName}, '%')\n" +
-            "        </if>\n" +
-            "\n" +
-            "        <if test=\"nickName != null and nickName != ''\">\n" +
-            "            AND u.nick_name like concat( #{nickName}, '%')\n" +
-            "        </if>\n" +
-            "        <if test=\"companyId != null and companyId != ''\">\n" +
-            "            AND u.company_id = #{companyId}\n" +
-            "        </if>\n" +
-            "        <if test=\"status != null and status != ''\">\n" +
-            "            AND u.status = #{status}\n" +
-            "        </if>\n" +
-            "        <if test=\"qwStatus != null \">\n" +
-            "            AND u.qw_status = #{qwStatus} \n" +
-            "        </if>\n" +
-            "        <if test=\"phonenumber != null and phonenumber != ''\">\n" +
-            "            AND u.phonenumber like concat('%', #{phonenumber}, '%')\n" +
-            "        </if>\n" +
-            "        <if test=\"beginTime != null and beginTime != ''\"><!-- 开始时间检索 -->\n" +
-            "            AND date_format(u.create_time,'%y%m%d') &gt;= date_format(#{beginTime},'%y%m%d')\n" +
-            "        </if>\n" +
-            "        <if test=\"endTime != null and endTime != ''\"><!-- 结束时间检索 -->\n" +
-            "            AND date_format(u.create_time,'%y%m%d') &lt;= date_format(#{endTime},'%y%m%d')\n" +
-            "        </if>\n" +
-            "        <if test=\"deptId != null and deptId != 0\">\n" +
-            "            AND (u.dept_id = #{deptId} OR u.dept_id IN ( SELECT t.dept_id FROM company_dept t WHERE find_in_set(#{deptId}, ancestors) ))\n" +
-            "        </if>\n" +
-            "        <!-- 数据范围过滤 -->\n" +
-            "        ${params.dataScope}"+
-            "</script>"})
+
     List<CompanyUserQwListVO> selectCompanyUserQwListVO(CompanyUserQwParam user);
 
 

+ 2 - 0
fs-service/src/main/java/com/fs/company/vo/CompanyUserQwListVO.java

@@ -93,6 +93,8 @@ public class CompanyUserQwListVO extends BaseEntity {
     /** 角色对象 */
     private List<CompanyRole> roles;
 
+    /** 角色名称 */
+    private List<String> roleNames;
     /** 角色组 */
     private Long[] roleIds;
 

+ 6 - 0
fs-service/src/main/java/com/fs/system/mapper/SysUserMapper.java

@@ -1,6 +1,8 @@
 package com.fs.system.mapper;
 
 import java.util.List;
+import java.util.Map;
+
 import org.apache.ibatis.annotations.Param;
 import com.fs.common.core.domain.entity.SysUser;
 
@@ -19,6 +21,10 @@ public interface SysUserMapper
      */
     public List<SysUser> selectUserList(SysUser sysUser);
 
+    public  Long  selectUserCount(SysUser sysUser);
+
+    public  List<Long>  selectUserIdsWithPage(Map<String, Object> params);
+    public  List<SysUser>  selectUserListByIds(List<Long> userIds);
     /**
      * 根据条件分页查询未已配用户角色列表
      * 

+ 9 - 0
fs-service/src/main/java/com/fs/system/service/ISysUserService.java

@@ -17,7 +17,16 @@ public interface ISysUserService
      * @return 用户信息集合信息
      */
     public List<SysUser> selectUserList(SysUser user);
+    /**
+     * 根据条件分页查询已分配用户角色列表
+     *
+     * @param user 用户信息
+     * @return 用户信息集合信息
+     */
+    public Long selectUserCount(SysUser user);
+    public List<Long> selectUserIdsWithPage(SysUser user, int pageNum, int pageSize);
 
+    public List<SysUser> selectUserListByIds(List<Long> userIds);
     /**
      * 根据条件分页查询已分配用户角色列表
      * 

+ 22 - 0
fs-service/src/main/java/com/fs/system/service/impl/SysUserServiceImpl.java

@@ -1,7 +1,10 @@
 package com.fs.system.service.impl;
 
 import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
+
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -66,7 +69,26 @@ public class SysUserServiceImpl implements ISysUserService
     {
         return userMapper.selectUserList(user);
     }
+    @Override
+    @DataScope(deptAlias = "d", userAlias = "u")
+    public Long selectUserCount(SysUser user)
+    {
 
+        return userMapper.selectUserCount(user);
+    }
+    public List<Long> selectUserIdsWithPage(SysUser user, int pageNum, int pageSize){
+        Map<String, Object> params = new HashMap<>();
+        params.put("user", user);
+        params.put("startRow", (pageNum - 1) * pageSize);
+        params.put("pageSize", pageSize);
+        return userMapper.selectUserIdsWithPage(params);
+    }
+    @Override
+    @DataScope(deptAlias = "d", userAlias = "u")
+    public List<SysUser> selectUserListByIds(List<Long> userIds)
+    {
+        return userMapper.selectUserListByIds(userIds);
+    }
     /**
      * 根据条件分页查询已分配用户角色列表
      * 

+ 2 - 1
fs-service/src/main/resources/application-config-druid-czt.yml

@@ -91,4 +91,5 @@ wx_miniapp_temp:
   pay_order_temp_id:
   inquiry_temp_id:
 
-
+# 0 代表关闭 1代表开启(润天老商户号的扣款限制)
+enableRedPackAccount: 1

+ 85 - 6
fs-service/src/main/resources/mapper/company/CompanyUserMapper.xml

@@ -47,13 +47,34 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <collection  property="roles"   javaType="java.util.List"        resultMap="RoleResult" />
     </resultMap>
 
+    <resultMap id="CompanyUserQwListVOResult" type="com.fs.company.vo.CompanyUserQwListVO">
+        <id property="userId" column="user_id"/>
+        <result property="userName" column="user_name"/>
+        <result property="nickName" column="nick_name"/>
+        <result property="companyId" column="company_id"/>
+        <result property="status" column="status"/>
+        <result property="qwStatus" column="qw_status"/>
+        <result property="phonenumber" column="phonenumber"/>
+        <result property="createTime" column="create_time"/>
+        <result property="deptId" column="dept_id"/>
+        <result property="deptName" column="dept_name"/>
+        <result property="qrCodeWeixin" column="qr_code_weixin"/>
+        <result property="postName" column="post_name"/>
+        <result property="qrCodeWecom" column="qr_code_wecom"/>
+        <result property="jpushId" column="jpush_id"/>
+        <result property="callerNo" column="caller_no"/>
+        <collection property="roleNames" ofType="java.lang.String" javaType="java.util.ArrayList">
+            <result column="role_name"/>
+        </collection>
+    </resultMap>
+
     <resultMap id="deptResult" type="CompanyDept">
-        <id     property="deptId"   column="dept_id"     />
-        <result property="parentId" column="parent_id"   />
-        <result property="deptName" column="dept_name"   />
-        <result property="orderNum" column="order_num"   />
-        <result property="leader"   column="leader"      />
-        <result property="status"   column="dept_status" />
+        <id property="deptId" column="dept_id"/>
+        <result property="parentId" column="parent_id"/>
+        <result property="deptName" column="dept_name"/>
+        <result property="orderNum" column="order_num"/>
+        <result property="leader" column="leader"/>
+        <result property="status" column="dept_status"/>
     </resultMap>
 
     <resultMap id="RoleResult" type="CompanyRole">
@@ -64,7 +85,65 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="dataScope"     column="data_scope"    />
         <result property="status"       column="role_status"    />
     </resultMap>
+    <select id="selectCompanyUserQwListVO" resultMap="CompanyUserQwListVOResult">
+        select
+        u.user_id, u.user_name, u.nick_name, u.company_id, u.status,
+        u.qw_status, u.phonenumber, u.create_time, u.dept_id,
+        u.qr_code_weixin, u.user_type, u.qr_code_wecom, u.jpush_id,
+        u.avatar,
+        d.dept_name,
+        d.leader,
+        cr.role_name as role_name
+        from
+        company_user u
+        left join
+        company_dept d on u.dept_id = d.dept_id
+        left join
+        company_user_role cur on u.user_id = cur.user_id
+        left join
+        company_role cr on cr.role_id = cur.role_id
+        where
+        u.del_flag = '0'
+
+        <if test="userName != null and userName != ''">
+            AND u.user_name like concat('%', #{userName}, '%')
+        </if>
+
+        <if test="nickName != null and nickName != ''">
+            AND u.nick_name like concat( #{nickName}, '%')
+        </if>
+
+        <if test="companyId != null and companyId != ''">
+            AND u.company_id = #{companyId}
+        </if>
+
+        <if test="status != null and status != ''">
+            AND u.status = #{status}
+        </if>
 
+        <if test="qwStatus != null">
+            AND u.qw_status = #{qwStatus}
+        </if>
+
+        <if test="phonenumber != null and phonenumber != ''">
+            AND u.phonenumber like concat('%', #{phonenumber}, '%')
+        </if>
+
+        <if test="beginTime != null and beginTime != ''">
+            AND date_format(u.create_time,'%y%m%d') &gt;= date_format(#{beginTime},'%y%m%d')
+        </if>
+
+        <if test="endTime != null and endTime != ''">
+            AND date_format(u.create_time,'%y%m%d') &lt;= date_format(#{endTime},'%y%m%d')
+        </if>
+
+        <if test="deptId != null and deptId != 0">
+            AND (u.dept_id = #{deptId} OR u.dept_id IN ( SELECT t.dept_id FROM company_dept t WHERE find_in_set(#{deptId}, ancestors) ))
+        </if>
+
+        <!-- 数据范围过滤 -->
+        ${params.dataScope}
+    </select>
 
 
     <select id="selectCompanyUserList" parameterType="CompanyUser" resultMap="CompanyUserResult">

+ 107 - 3
fs-service/src/main/resources/mapper/system/SysUserMapper.xml

@@ -4,6 +4,31 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.fs.system.mapper.SysUserMapper">
 
+	<resultMap type="SysUser" id="SysUserResults">
+		<id     property="userId"       column="user_id"      />
+		<result property="deptId"       column="dept_id"      />
+		<result property="userName"     column="user_name"    />
+		<result property="nickName"     column="nick_name"    />
+		<result property="email"        column="email"        />
+		<result property="phonenumber"  column="phonenumber"  />
+		<result property="sex"          column="sex"          />
+		<result property="avatar"       column="avatar"       />
+		<result property="password"     column="password"     />
+		<result property="status"       column="status"       />
+		<result property="delFlag"      column="del_flag"     />
+		<result property="loginIp"      column="login_ip"     />
+		<result property="loginDate"    column="login_date"   />
+		<result property="createBy"     column="create_by"    />
+		<result property="createTime"   column="create_time"  />
+		<result property="updateBy"     column="update_by"    />
+		<result property="updateTime"   column="update_time"  />
+		<result property="remark"       column="remark"       />
+		<association property="dept"    column="dept_id" javaType="SysDept" resultMap="deptResult" />
+		<collection  property="roles"   javaType="java.util.List"        resultMap="RoleResult" />
+		<collection property="roleName" ofType="java.lang.String" javaType="java.util.ArrayList">
+			<result column="role_name"/>
+		</collection>
+	</resultMap>
 	<resultMap type="SysUser" id="SysUserResult">
 		<id     property="userId"       column="user_id"      />
 		<result property="deptId"       column="dept_id"      />
@@ -54,10 +79,89 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		    left join sys_user_role ur on u.user_id = ur.user_id
 		    left join sys_role r on r.role_id = ur.role_id
     </sql>
-    
-    <select id="selectUserList" parameterType="SysUser" resultMap="SysUserResult">
-		select u.user_id, u.dept_id, u.nick_name, u.user_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, d.dept_name, d.leader from sys_user u
+	<!-- 查询符合条件的用户总数 -->
+	<select id="selectUserCount" parameterType="SysUser" resultType="java.lang.Long">
+		select count(distinct u.user_id)
+		from sys_user u
+		left join sys_dept d on u.dept_id = d.dept_id
+		left join sys_user_role sur on u.user_id = sur.user_id
+		left join sys_role r on r.role_id = sur.role_id
+		where u.del_flag = '0'
+		<if test="userId != null and userId != 0">
+			AND u.user_id = #{userId}
+		</if>
+		<if test="userName != null and userName != ''">
+			AND u.user_name like concat('%', #{userName}, '%')
+		</if>
+		<if test="status != null and status != ''">
+			AND u.status = #{status}
+		</if>
+		<if test="phonenumber != null and phonenumber != ''">
+			AND u.phonenumber like concat('%', #{phonenumber}, '%')
+		</if>
+		<if test="params.beginTime != null and params.beginTime != ''"><!-- 开始时间检索 -->
+			AND date_format(u.create_time,'%y%m%d') &gt;= date_format(#{params.beginTime},'%y%m%d')
+		</if>
+		<if test="params.endTime != null and params.endTime != ''"><!-- 结束时间检索 -->
+			AND date_format(u.create_time,'%y%m%d') &lt;= date_format(#{params.endTime},'%y%m%d')
+		</if>
+		<if test="deptId != null and deptId != 0">
+			AND (u.dept_id = #{deptId} OR u.dept_id IN ( SELECT t.dept_id FROM sys_dept t WHERE find_in_set(#{deptId}, ancestors) ))
+		</if>
+		<!-- 数据范围过滤 -->
+		${params.dataScope}
+	</select>
+	<select id="selectUserIdsWithPage" parameterType="map" resultType="java.lang.Long">
+		select distinct u.user_id
+		from sys_user u
+		left join sys_dept d on u.dept_id = d.dept_id
+		left join sys_user_role sur on u.user_id = sur.user_id
+		left join sys_role r on r.role_id = sur.role_id
+		where u.del_flag = '0'
+		<if test="user.deptId != null and user.deptId != 0">
+			AND (u.dept_id = #{user.deptId} OR u.dept_id IN ( SELECT t.dept_id FROM sys_dept t WHERE find_in_set(#{user.deptId}, ancestors) ))
+		</if>
+		<if test="user.userId != null and user.userId != 0">
+			AND u.user_id = #{user.userId}
+		</if>
+		<if test="user.userName != null and user.userName != ''">
+			AND u.user_name like concat('%', #{user.userName}, '%')
+		</if>
+		<if test="user.status != null and user.status != ''">
+			AND u.status = #{user.status}
+		</if>
+		<if test="user.phonenumber != null and user.phonenumber != ''">
+			AND u.phonenumber like concat('%', #{user.phonenumber}, '%')
+		</if>
+		<if test="user.params.beginTime != null and user.params.beginTime != ''"><!-- 开始时间检索 -->
+			AND date_format(u.create_time,'%y%m%d') &gt;= date_format(#{user.params.beginTime},'%y%m%d')
+		</if>
+		<if test="user.params.endTime != null and user.params.endTime != ''"><!-- 结束时间检索 -->
+			AND date_format(u.create_time,'%y%m%d') &lt;= date_format(#{user.params.endTime},'%y%m%d')
+		</if>
+		${user.params.dataScope}
+		order by u.user_id
+		limit #{pageSize} offset #{startRow}
+	</select>
+	<select id="selectUserListByIds" parameterType="java.util.List" resultMap="SysUserResults">
+		select u.user_id, u.dept_id, u.nick_name, u.user_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, d.dept_name, d.leader, r.role_name
+		from sys_user u
+		left join sys_dept d on u.dept_id = d.dept_id
+		left join sys_user_role sur on u.user_id = sur.user_id
+		left join sys_role r on r.role_id = sur.role_id
+		where u.user_id in
+		<foreach collection="list" item="userId" open="(" separator="," close=")">
+			#{userId}
+		</foreach>
+		order by u.user_id
+	</select>
+    <select id="selectUserList" parameterType="SysUser" resultMap="SysUserResults">
+		select u.user_id, u.dept_id, u.nick_name, u.user_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, d.dept_name, d.leader,r.role_name from sys_user u
 		left join sys_dept d on u.dept_id = d.dept_id
+		left join sys_user_role sur on u.user_id = sur.user_id
+		left join sys_role r on r.role_id = sur.role_id
 		where u.del_flag = '0'
 		<if test="userId != null and userId != 0">
 			AND u.user_id = #{userId}