瀏覽代碼

用户导入,公司LOGO与名称开发

anderx 2 年之前
父節點
當前提交
d711cf90b3

+ 9 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java

@@ -2,6 +2,9 @@ package com.ruoyi.web.controller.system;
 
 import java.util.List;
 import java.util.Set;
+
+import com.ruoyi.common.core.domain.entity.SysDept;
+import com.ruoyi.system.service.ISysDeptService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
@@ -33,6 +36,8 @@ public class SysLoginController
 
     @Autowired
     private SysPermissionService permissionService;
+    @Autowired
+    private ISysDeptService deptService;
 
     /**
      * 登录方法
@@ -68,11 +73,15 @@ public class SysLoginController
         if (roles.contains("ceo")){
             ceo=true;
         }
+        Long company = deptService.selectCompanyByDeptId();
+        SysDept sysDept = deptService.selectDeptById(company);
+
         AjaxResult ajax = AjaxResult.success();
         ajax.put("ceo", ceo);
         ajax.put("user", user);
         ajax.put("roles", roles);
         ajax.put("permissions", permissions);
+        ajax.put("company", sysDept);
         return ajax;
     }
 

+ 18 - 0
ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysDept.java

@@ -66,6 +66,24 @@ public class SysDept extends BaseEntity
 
     private String startTime;
     private String endTime;
+    private String companyLogo;
+    private String companyFullName;
+
+    public String getCompanyLogo() {
+        return companyLogo;
+    }
+
+    public void setCompanyLogo(String companyLogo) {
+        this.companyLogo = companyLogo;
+    }
+
+    public String getCompanyFullName() {
+        return companyFullName;
+    }
+
+    public void setCompanyFullName(String companyFullName) {
+        this.companyFullName = companyFullName;
+    }
 
     public String getStartTime() {
         return startTime;

+ 24 - 6
ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java

@@ -25,7 +25,7 @@ public class SysUser extends BaseEntity
     private static final long serialVersionUID = 1L;
 
     /** 用户ID */
-    @Excel(name = "用户序号", cellType = ColumnType.NUMERIC, prompt = "用户编号",width = 8)
+    @Excel(name = "用户序号", cellType = ColumnType.NUMERIC, prompt = "用户编号",width = 8,type =Type.EXPORT)
     private Long userId;
     /**
      * 工号
@@ -46,10 +46,12 @@ public class SysUser extends BaseEntity
      */
     @Excel(name = "全职/兼职",readConverterExp = "0=兼职,1=全职",width = 8)
     private String fullJob;
-    @Excels({
-            @Excel(name = "部门名称", targetAttr = "deptName", type = Type.EXPORT),
-//        @Excel(name = "部门负责人", targetAttr = "leader", type = Type.EXPORT)
-    })
+    @Excel(name = "部门名称")
+    private String deptName;
+//    @Excels({
+//            @Excel(name = "部门名称", targetAttr = "deptName"),
+////        @Excel(name = "部门负责人", targetAttr = "leader", type = Type.EXPORT)
+//    })
     private SysDept dept;
 
     /**
@@ -133,6 +135,7 @@ public class SysUser extends BaseEntity
 
     /** 角色ID */
     private Long roleId;
+    private String roleName;
 
     /**公司id*/
     private Long companyId;
@@ -144,6 +147,22 @@ public class SysUser extends BaseEntity
     private Integer projectQuantitySort;
     private Integer durationSort;
 
+    public String getDeptName() {
+        return deptName;
+    }
+
+    public void setDeptName(String deptName) {
+        this.deptName = deptName;
+    }
+
+    public String getRoleName() {
+        return roleName;
+    }
+
+    public void setRoleName(String roleName) {
+        this.roleName = roleName;
+    }
+
     @Override
     public Date getCreateTime() {
         return createTime;
@@ -446,7 +465,6 @@ public class SysUser extends BaseEntity
         this.roleIds = roleIds;
     }
 
-    @Size(min = 1,message = "职位必须存在")
     public Long[] getPostIds()
     {
         return postIds;

+ 6 - 4
ruoyi-system/src/main/java/com/ruoyi/project/service/impl/ProjectTaskServiceImpl.java

@@ -122,6 +122,7 @@ public class ProjectTaskServiceImpl   implements ProjectTaskService {
         int failureNum = 0;
         StringBuilder successMsg = new StringBuilder();
         StringBuilder failureMsg = new StringBuilder();
+        Long company = deptService.selectCompanyByDeptId();
         for (ProjectTaskListOut p : list)
         {
             try
@@ -132,7 +133,7 @@ public class ProjectTaskServiceImpl   implements ProjectTaskService {
                     BeanValidators.validateWithException(validator, p);
 
                     if(StringUtils.isNotBlank(p.getAdminName())) {
-                        SysUser sysUser = userMapper.selectByNikeName(p.getAdminName());
+                        SysUser sysUser = userMapper.selectByNikeName(p.getAdminName(),company);
                         if (sysUser == null) {
                             throw new ServiceException(String.format("负责人[%s]不存在", p.getAdminName()));
                         }
@@ -145,7 +146,7 @@ public class ProjectTaskServiceImpl   implements ProjectTaskService {
                         String[] split = p.getStaffName().split(",");
                         for (String s : split) {
                             ProjectStaff newPs = new ProjectStaff();
-                            SysUser sysUser = userMapper.selectByNikeName(s);
+                            SysUser sysUser = userMapper.selectByNikeName(s,company);
                             if (sysUser == null) {
                                 throw new ServiceException("[" + s + "]不存在");
                             }
@@ -164,7 +165,7 @@ public class ProjectTaskServiceImpl   implements ProjectTaskService {
                         addStaffAndDelete( p);
                     }
                     if (p.getAdminName()!=null){
-                        SysUser sysUser = userMapper.selectByNikeName(p.getAdminName());
+                        SysUser sysUser = userMapper.selectByNikeName(p.getAdminName(),company);
                         if (sysUser == null) {
                             throw new ServiceException(String.format("负责人[%s]不存在", p.getAdminName()));
                         }
@@ -266,6 +267,7 @@ public class ProjectTaskServiceImpl   implements ProjectTaskService {
     }
 
     private void addStaff( ProjectTaskListOut p, String[] split, List<ProjectStaff> projectStaffs) {
+        Long company = deptService.selectCompanyByDeptId();
         for (String s : split) {
             boolean flag = true;
             for (ProjectStaff ps : projectStaffs) {
@@ -275,7 +277,7 @@ public class ProjectTaskServiceImpl   implements ProjectTaskService {
             }
             if (flag) {
                 ProjectStaff newPs = new ProjectStaff();
-                SysUser sysUser = userMapper.selectByNikeName(s);
+                SysUser sysUser = userMapper.selectByNikeName(s,company);
                 if (sysUser == null) {
                     throw new ServiceException("[" + s + "]不存在");
                 }

+ 1 - 0
ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysDeptMapper.java

@@ -118,4 +118,5 @@ public interface SysDeptMapper
 
     List<SysDept> getCompany();
 
+    SysDept selectByDepName(@Param("deptName") String deptName, @Param("companyId") Long companyId);
 }

+ 15 - 13
ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRoleMapper.java

@@ -5,14 +5,14 @@ import com.ruoyi.common.core.domain.entity.SysRole;
 
 /**
  * 角色表 数据层
- * 
+ *
  * @author ruoyi
  */
 public interface SysRoleMapper
 {
     /**
      * 根据条件分页查询角色数据
-     * 
+     *
      * @param role 角色信息
      * @return 角色数据集合信息
      */
@@ -20,7 +20,7 @@ public interface SysRoleMapper
 
     /**
      * 根据用户ID查询角色
-     * 
+     *
      * @param userId 用户ID
      * @return 角色列表
      */
@@ -28,14 +28,14 @@ public interface SysRoleMapper
 
     /**
      * 查询所有角色
-     * 
+     *
      * @return 角色列表
      */
     public List<SysRole> selectRoleAll();
 
     /**
      * 根据用户ID获取角色选择框列表
-     * 
+     *
      * @param userId 用户ID
      * @return 选中角色ID列表
      */
@@ -43,7 +43,7 @@ public interface SysRoleMapper
 
     /**
      * 通过角色ID查询角色
-     * 
+     *
      * @param roleId 角色ID
      * @return 角色对象信息
      */
@@ -51,7 +51,7 @@ public interface SysRoleMapper
 
     /**
      * 根据用户ID查询角色
-     * 
+     *
      * @param userName 用户名
      * @return 角色列表
      */
@@ -59,7 +59,7 @@ public interface SysRoleMapper
 
     /**
      * 校验角色名称是否唯一
-     * 
+     *
      * @param roleName 角色名称
      * @return 角色信息
      */
@@ -67,7 +67,7 @@ public interface SysRoleMapper
 
     /**
      * 校验角色权限是否唯一
-     * 
+     *
      * @param roleKey 角色权限
      * @return 角色信息
      */
@@ -75,7 +75,7 @@ public interface SysRoleMapper
 
     /**
      * 修改角色信息
-     * 
+     *
      * @param role 角色信息
      * @return 结果
      */
@@ -83,7 +83,7 @@ public interface SysRoleMapper
 
     /**
      * 新增角色信息
-     * 
+     *
      * @param role 角色信息
      * @return 结果
      */
@@ -91,7 +91,7 @@ public interface SysRoleMapper
 
     /**
      * 通过角色ID删除角色
-     * 
+     *
      * @param roleId 角色ID
      * @return 结果
      */
@@ -99,9 +99,11 @@ public interface SysRoleMapper
 
     /**
      * 批量删除角色信息
-     * 
+     *
      * @param roleIds 需要删除的角色ID
      * @return 结果
      */
     public int deleteRoleByIds(Long[] roleIds);
+
+    SysRole selectByRoleName(String roleName);
 }

+ 1 - 1
ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java

@@ -137,7 +137,7 @@ public interface SysUserMapper
 
     SysUser checkJobNumber(@Param("jobNumber") String jobNumber, @Param("companyId") Long companyId);
 
-    SysUser selectByNikeName(String nikeName);
+    SysUser selectByNikeName(@Param("nikeName") String nikeName, @Param("companyId") Long companyId);
 
     void updateDuration(Long aid);
 }

+ 4 - 0
ruoyi-system/src/main/java/com/ruoyi/system/service/ISysDeptService.java

@@ -3,6 +3,7 @@ package com.ruoyi.system.service;
 import java.util.List;
 import com.ruoyi.common.core.domain.TreeSelect;
 import com.ruoyi.common.core.domain.entity.SysDept;
+import org.apache.ibatis.annotations.Param;
 
 /**
  * 部门管理 服务层
@@ -125,4 +126,7 @@ public interface ISysDeptService
     public Long selectCompanyByDeptId();
 
     List<SysDept> getCompany();
+
+
+    SysDept selectByDepName(String deptName, Long company);
 }

+ 8 - 0
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java

@@ -6,6 +6,7 @@ import java.util.Iterator;
 import java.util.List;
 import java.util.stream.Collectors;
 
+import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.enums.UserRolesType;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -315,6 +316,7 @@ public class SysDeptServiceImpl implements ISysDeptService
 
     @Override
     public Long selectCompanyByDeptId() {
+        //管理无公司,2级获取当前,3级及以上获取第三级
         if (SecurityUtils.hashRoles(UserRolesType.ADMIN.getCode())){
             return null;
         }
@@ -343,6 +345,12 @@ public class SysDeptServiceImpl implements ISysDeptService
 
     }
 
+    @Override
+    public  SysDept selectByDepName(String deptName, Long company) {
+        return deptMapper.selectByDepName(deptName, company);
+    }
+
+
     /**
      * 递归列表
      */

+ 30 - 2
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java

@@ -525,18 +525,42 @@ public class SysUserServiceImpl implements ISysUserService
         StringBuilder successMsg = new StringBuilder();
         StringBuilder failureMsg = new StringBuilder();
         String password = configService.selectConfigByKey("sys.user.initPassword");
+        Long company = deptService.selectCompanyByDeptId();
         for (SysUser user : userList)
         {
             try
             {
                 // 验证是否存在这个用户
-                SysUser u = userMapper.selectUserById(user.getUserId());
+                SysUser u = userMapper.checkJobNumber(user.getJobNumber(),company);
                 if (StringUtils.isNull(u))
                 {
-                    BeanValidators.validateWithException(validator, user);
                     user.setPassword(SecurityUtils.encryptPassword(password));
                     user.setCreateBy(operName);
+                    user.setUserId(null);
+                    if (user.getSuperiorName()!=null){
+                        SysUser sysUser = userMapper.selectByNikeName(user.getSuperiorName(),company);
+                        if (sysUser != null){
+                            user.setSuperiorId(sysUser.getUserId());
+                        }
+                    }
+                    if (user.getDeptName()!=null){
+                        SysDept sysDept = deptService.selectByDepName(user.getDeptName(), company);
+                        if (sysDept !=null){
+                            user.setDeptId(sysDept.getDeptId());
+                        }
+                    }
                     userMapper.insertUser(user);
+                    if (user.getPostName()!=null){
+                        SysRole sysRole = roleMapper.selectByRoleName(user.getPostName());
+                        if (sysRole !=null){
+                            List<SysUserRole> list=new ArrayList<>();
+                            SysUserRole sur = new SysUserRole();
+                            sur.setUserId(user.getUserId());
+                            sur.setRoleId(sysRole.getRoleId());
+                            list.add(sur);
+                            userRoleMapper.batchUserRole(list);
+                        }
+                    }
                     successNum++;
                     successMsg.append("<br/>" + successNum + "、账号 " + user.getUserName() + " 导入成功");
                 }
@@ -547,6 +571,10 @@ public class SysUserServiceImpl implements ISysUserService
                     checkUserDataScope(u.getUserId());
                     user.setUserId(u.getUserId());
                     user.setUpdateBy(operName);
+                    SysUser sysUser = userMapper.selectByNikeName(u.getSuperiorName(),company);
+                    if (sysUser != null){
+                        user.setSuperiorId(sysUser.getUserId());
+                    }
                     userMapper.updateUser(user);
                     successNum++;
                     successMsg.append("<br/>" + successNum + "、账号 " + user.getUserName() + " 更新成功");

+ 19 - 3
ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml

@@ -23,11 +23,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		<result property="companyId" column="company_id" />
 		<result property="companyName" column="companyName" />
 		<result property="maxDuration" column="max_duration" />
+		<result property="companyLogo" column="company_logo" />
+		<result property="companyFullName" column="company_full_name" />
 	</resultMap>
 
 	<sql id="selectDeptVo">
         select d.dept_id, d.parent_id, d.ancestors, d.dept_name, d.order_num, d.leader, d.phone, d.email, d.status,
-               d.del_flag, d.create_by, d.create_time,d.company_id,d.company_name,d.max_duration,sd.dept_name companyName
+               d.del_flag, d.create_by, d.create_time,d.company_id,d.company_name,d.max_duration,sd.dept_name companyName,
+               d.company_logo ,d.company_full_name
         from sys_dept d left join sys_dept sd on d.company_id = sd.dept_id
     </sql>
 
@@ -74,7 +77,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 
     <select id="selectDeptById" parameterType="Long" resultMap="SysDeptResult">
 		select d.dept_id, d.parent_id, d.ancestors, d.dept_name, d.order_num, d.leader, d.phone, d.email, d.status,d.max_duration,
-		       d.company_id,(select dept_name from sys_dept where dept_id = d.company_id) companyName,
+		       d.company_id,(select dept_name from sys_dept where dept_id = d.company_id) companyName,d.company_logo,d.company_full_name,
 			(select dept_name from sys_dept where dept_id = d.parent_id) parent_name
 		from sys_dept d
 		where d.dept_id = #{deptId}
@@ -105,8 +108,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		<include refid="selectDeptVo"/>
 		 where d.parent_id = 100
 	</select>
+    <select id="selectByDepName" resultMap="SysDeptResult">
+		<include refid="selectDeptVo"/>
+		where d.dept_name =#{deptName}
+		<if test="companyId !=null and companyId != 0">
+			AND (d.dept_id = #{companyId} OR d.dept_id IN ( SELECT t.dept_id FROM sys_dept t WHERE find_in_set(#{companyId}, ancestors) ))
+		</if>
+	</select>
 
-	<insert id="insertDept" parameterType="SysDept">
+    <insert id="insertDept" parameterType="SysDept">
  		insert into sys_dept(
  			<if test="deptId != null and deptId != 0">dept_id,</if>
  			<if test="parentId != null and parentId != 0">parent_id,</if>
@@ -121,6 +131,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 			<if test="maxDuration != null ">max_duration,</if>
 			<if test="companyId != null ">company_id,</if>
 			<if test="companyName != null ">company_name,</if>
+			<if test="companyLogo != null ">company_logo,</if>
+			<if test="companyFullName != null ">company_full_name,</if>
  			create_time
  		)values(
  			<if test="deptId != null and deptId != 0">#{deptId},</if>
@@ -136,6 +148,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 			<if test="maxDuration != null ">#{maxDuration},</if>
 			<if test="companyId != null ">#{companyId},</if>
 			<if test="companyName != null ">#{companyName},</if>
+			<if test="companyLogo != null ">#{companyLogo},</if>
+			<if test="companyFullName != null ">#{companyFullName},</if>
  			sysdate()
  		)
 	</insert>
@@ -155,6 +169,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  			<if test="maxDuration != null ">max_duration = #{maxDuration},</if>
  			<if test="companyId != null ">company_id = #{companyId},</if>
  			<if test="companyName != null ">company_name = #{companyName},</if>
+			<if test="companyLogo != null ">company_logo = #{companyLogo},</if>
+			<if test="companyFullName != null ">company_full_name = #{companyFullName},</if>
  			update_time = sysdate()
  		</set>
  		where dept_id = #{deptId}

+ 22 - 18
ruoyi-system/src/main/resources/mapper/system/SysRoleMapper.xml

@@ -20,16 +20,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		<result property="updateTime"         column="update_time"           />
 		<result property="remark"             column="remark"                />
 	</resultMap>
-	
+
 	<sql id="selectRoleVo">
 	    select distinct r.role_id, r.role_name, r.role_key, r.role_sort, r.data_scope, r.menu_check_strictly, r.dept_check_strictly,
-            r.status, r.del_flag, r.create_time, r.remark 
+            r.status, r.del_flag, r.create_time, r.remark
         from sys_role r
 	        left join sys_user_role ur on ur.role_id = r.role_id
 	        left join sys_user u on u.user_id = ur.user_id
 	        left join sys_dept d on u.dept_id = d.dept_id
     </sql>
-    
+
     <select id="selectRoleList" parameterType="SysRole" resultMap="SysRoleResult">
 		<include refid="selectRoleVo"/>
 		where r.del_flag = '0'
@@ -55,16 +55,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		${params.dataScope}
 		order by r.role_sort
 	</select>
-    
+
 	<select id="selectRolePermissionByUserId" parameterType="Long" resultMap="SysRoleResult">
 		<include refid="selectRoleVo"/>
 		WHERE r.del_flag = '0' and ur.user_id = #{userId}
 	</select>
-	
+
 	<select id="selectRoleAll" resultMap="SysRoleResult">
 		<include refid="selectRoleVo"/>
 	</select>
-	
+
 	<select id="selectRoleListByUserId" parameterType="Long" resultType="Long">
 		select r.role_id
         from sys_role r
@@ -72,28 +72,32 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 	        left join sys_user u on u.user_id = ur.user_id
 	    where u.user_id = #{userId}
 	</select>
-	
+
 	<select id="selectRoleById" parameterType="Long" resultMap="SysRoleResult">
 		<include refid="selectRoleVo"/>
 		where r.role_id = #{roleId}
 	</select>
-	
+
 	<select id="selectRolesByUserName" parameterType="String" resultMap="SysRoleResult">
 		<include refid="selectRoleVo"/>
 		WHERE r.del_flag = '0' and u.user_name = #{userName}
 	</select>
-	
+
 	<select id="checkRoleNameUnique" parameterType="String" resultMap="SysRoleResult">
 		<include refid="selectRoleVo"/>
 		 where r.role_name=#{roleName} and r.del_flag = '0' limit 1
 	</select>
-	
+
 	<select id="checkRoleKeyUnique" parameterType="String" resultMap="SysRoleResult">
 		<include refid="selectRoleVo"/>
 		 where r.role_key=#{roleKey} and r.del_flag = '0' limit 1
 	</select>
-	
- 	<insert id="insertRole" parameterType="SysRole" useGeneratedKeys="true" keyProperty="roleId">
+	<select id="selectByRoleName" resultMap="SysRoleResult">
+		<include refid="selectRoleVo"/>
+		where r.role_name=#{roleName} and r.del_flag = '0' limit 1
+	</select>
+
+	<insert id="insertRole" parameterType="SysRole" useGeneratedKeys="true" keyProperty="roleId">
  		insert into sys_role(
  			<if test="roleId != null and roleId != 0">role_id,</if>
  			<if test="roleName != null and roleName != ''">role_name,</if>
@@ -120,7 +124,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  			sysdate()
  		)
 	</insert>
-	
+
 	<update id="updateRole" parameterType="SysRole">
  		update sys_role
  		<set>
@@ -137,16 +141,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  		</set>
  		where role_id = #{roleId}
 	</update>
-	
+
 	<delete id="deleteRoleById" parameterType="Long">
  		update sys_role set del_flag = '2' where role_id = #{roleId}
  	</delete>
- 	
+
  	<delete id="deleteRoleByIds" parameterType="Long">
  	    update sys_role set del_flag = '2' where role_id in
  		<foreach collection="array" item="roleId" open="(" separator="," close=")">
  			#{roleId}
-        </foreach> 
+        </foreach>
  	</delete>
- 	
-</mapper> 
+
+</mapper>

+ 13 - 5
ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml

@@ -29,8 +29,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="jobNumber"       column="job_number"       />
         <result property="fullJob"       column="full_job"       />
 		<result property="postId"       column="post_id"       />
+		<result property="roleId"       column="roleId"       />
 		<result property="duration"       column="duration"       />
 		<result property="postName"       column="post_name"       />
+		<result property="roleName"       column="roleName"       />
 		<result property="superiorName"       column="superiorName"       />
         <association property="dept"    javaType="SysDept"         resultMap="deptResult" />
         <collection  property="roles"   javaType="java.util.List"  resultMap="RoleResult" />
@@ -73,12 +75,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     <select id="selectUserList" parameterType="com.ruoyi.common.core.domain.entity.SysUser" resultMap="SysUserResult">
 		select u.user_id, u.dept_id, u.nick_name, u.user_name, u.email, u.avatar, u.phonenumber, 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,u.open_id,u.superior_id,
-		       u.project_quantity,u.job_number,u.full_job,sup.post_id,u.duration,sp.post_name,su.nick_name superiorName
+		       u.project_quantity,u.job_number,u.full_job,sup.post_id,u.duration,sp.post_name,su.nick_name superiorName,
+			sr.role_id roleId, sr.role_name roleName
 		from sys_user u
 		left join sys_dept d on u.dept_id = d.dept_id
 		left join sys_user_post sup on u.user_id = sup.user_id
 		left join sys_post sp on sup.post_id=sp.post_id
 		left join sys_user su on u.superior_id =su.user_id
+		left join sys_user_role sur on u.user_id =sur.user_id
+		left join sys_role sr on sur.role_id=sr.role_id
 		where u.del_flag = '0'
 		<if test="userId != null and userId != 0">
 			AND u.user_id = #{userId}
@@ -95,8 +100,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 		<if test="fullJob != null ">
 			AND u.full_job = #{fullJob}
 		</if>
-		<if test="postId != null and postId != ''">
-			AND sup.post_id = #{postId}
+		<if test="roleId != null and roleId != ''">
+			AND sur.role_id = #{roleId}
 		</if>
 		<if test="status != null and status != ''">
 			AND u.status = #{status}
@@ -211,7 +216,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 	</select>
 
 
-	<insert id="insertUser" parameterType="SysUser" useGeneratedKeys="true" keyProperty="userId">
+	<insert id="insertUser" parameterType="com.ruoyi.common.core.domain.entity.SysUser" useGeneratedKeys="true" keyProperty="userId" keyColumn="userId" >
  		insert into sys_user(
  			<if test="userId != null and userId != 0">user_id,</if>
  			<if test="deptId != null and deptId != 0">dept_id,</if>
@@ -332,7 +337,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     <select id="selectByNikeName" resultType="com.ruoyi.common.core.domain.entity.SysUser">
 		select a.user_id userId, a.user_name userName,a.nick_name nickName,a.open_id openId
 		from sys_user a left join sys_user b on a.superior_id=b.user_id
-		where a.nick_name = #{nickName}
+		where a.nick_name = #{nikeName}
+		<if test="companyId !=null and companyId != 0">
+			AND (a.dept_id = #{companyId} OR a.dept_id IN ( SELECT t.dept_id FROM sys_dept t WHERE find_in_set(#{companyId}, ancestors) ))
+		</if>
 	</select>