diff --git a/ruoyi-ui/src/views/system/user/index.vue b/ruoyi-ui/src/views/system/user/index.vue
index 68d477e10..47b585cce 100644
--- a/ruoyi-ui/src/views/system/user/index.vue
+++ b/ruoyi-ui/src/views/system/user/index.vue
@@ -274,6 +274,19 @@
+
+
+
+
+
+
+
@@ -374,6 +387,10 @@ export default {
postOptions: [],
// 角色选项
roleOptions: [],
+ //多幼儿园选项
+ kindergartenOptions: [],
+ //是否幼儿园
+ isSchool:undefined,
// 表单参数
form: {},
defaultProps: {
@@ -539,6 +556,13 @@ export default {
getUser().then(response => {
this.postOptions = response.posts;
this.roleOptions = response.roles;
+ //console.log("school="+response.isSchool);
+ if (response.isSchool=="0") {
+ this.isSchool=true;
+ this.kindergartenOptions = response.kindergartens;
+ }else{
+ this.isSchool=false;
+ }
this.open = true;
this.title = "添加用户";
this.form.password = this.initPassword;
@@ -555,6 +579,14 @@ export default {
this.roleOptions = response.roles;
this.form.postIds = response.postIds;
this.form.roleIds = response.roleIds;
+ this.form.deptIds=response.kindergartenIds;
+ //console.log("school="+response.isSchool);
+ if (response.isSchool=="0") {
+ this.isSchool=true;
+ this.kindergartenOptions = response.kindergartens;
+ }else{
+ this.isSchool=false;
+ }
this.open = true;
this.title = "修改用户";
this.form.password = "";
diff --git a/ruoyi/src/main/java/com/ruoyi/project/system/controller/SysUserController.java b/ruoyi/src/main/java/com/ruoyi/project/system/controller/SysUserController.java
index 2b1e863c1..dcd987808 100644
--- a/ruoyi/src/main/java/com/ruoyi/project/system/controller/SysUserController.java
+++ b/ruoyi/src/main/java/com/ruoyi/project/system/controller/SysUserController.java
@@ -5,6 +5,7 @@ import java.util.List;
import com.ruoyi.project.common.SchoolCommon;
import com.ruoyi.project.system.domain.ByTeacherJbxx;
+import com.ruoyi.project.system.domain.SysDept;
import com.ruoyi.project.system.service.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
@@ -58,6 +59,9 @@ public class SysUserController extends BaseController {
@Autowired
private SchoolCommon schoolCommon;
+ @Autowired
+ private ISysDeptService deptService;
+
/**
* 获取用户列表
@@ -104,14 +108,21 @@ public class SysUserController extends BaseController {
@GetMapping(value = {"/", "/{userId}"})
public AjaxResult getInfo(@PathVariable(value = "userId", required = false) Long userId) {
AjaxResult ajax = AjaxResult.success();
+
+ SysDept dept = new SysDept();
+ dept.setParentId((long) 200);
+
//在添加用户时判断是否为幼儿园平台
if (schoolCommon.isSchool() == true) {
//只显示幼儿园相关的岗位和角色
ajax.put("roles", roleService.selectYeyRoleAll());
ajax.put("posts", postService.selectYeyPostAll());
+ ajax.put("isSchool", "1");
} else {
ajax.put("roles", roleService.selectRoleAll());
ajax.put("posts", postService.selectPostAll());
+ ajax.put("isSchool", "0");
+ ajax.put("kindergartens", deptService.selectDeptList(dept));
}
//在修改用户时判断是否为幼儿园平台
@@ -120,12 +131,14 @@ public class SysUserController extends BaseController {
ajax.put(AjaxResult.DATA_TAG, userService.selectUserById(userId));
ajax.put("postIds", postService.selectYeyPostListByUserId(userId));
ajax.put("roleIds", roleService.selectYeyRoleListByUserId(userId));
+ ajax.put("isSchool", "1");
} else {
-
+ ajax.put(AjaxResult.DATA_TAG, userService.selectUserById(userId));
+ ajax.put("postIds", postService.selectPostListByUserId(userId));
+ ajax.put("roleIds", roleService.selectRoleListByUserId(userId));
+ ajax.put("isSchool", "0");
+ ajax.put("kindergartenIds", deptService.selectDeptListByUserId(userId));
}
- ajax.put(AjaxResult.DATA_TAG, userService.selectUserById(userId));
- ajax.put("postIds", postService.selectPostListByUserId(userId));
- ajax.put("roleIds", roleService.selectRoleListByUserId(userId));
}
return ajax;
}
@@ -137,20 +150,20 @@ public class SysUserController extends BaseController {
@GetMapping("/listbyroleid")
public AjaxResult getUserList() {
AjaxResult ajax = AjaxResult.success();
- Long deptId=SecurityUtils.getLoginUser().getUser().getDept().getDeptId();
- SysUser user=new SysUser();
+ Long deptId = SecurityUtils.getLoginUser().getUser().getDept().getDeptId();
+ SysUser user = new SysUser();
//主班教师
- user.setUserId((long)102);
+ user.setUserId((long) 102);
user.setDeptId(deptId);
ajax.put("zbjs", userService.selectUserListByRoleId(user));
//配班教师
- user=new SysUser();
- user.setUserId((long)104);
+ user = new SysUser();
+ user.setUserId((long) 104);
user.setDeptId(deptId);
ajax.put("pbjs", userService.selectUserListByRoleId(user));
//助理教师
- user=new SysUser();
- user.setUserId((long)105);
+ user = new SysUser();
+ user.setUserId((long) 105);
user.setDeptId(deptId);
ajax.put("zljs", userService.selectUserListByRoleId(user));
diff --git a/ruoyi/src/main/java/com/ruoyi/project/system/domain/SysUser.java b/ruoyi/src/main/java/com/ruoyi/project/system/domain/SysUser.java
index e38c22f5d..37016945c 100644
--- a/ruoyi/src/main/java/com/ruoyi/project/system/domain/SysUser.java
+++ b/ruoyi/src/main/java/com/ruoyi/project/system/domain/SysUser.java
@@ -91,6 +91,9 @@ public class SysUser extends BaseEntity
/** 岗位组 */
private Long[] postIds;
+ /** 部门组 */
+ private Long[] deptIds;
+
/**教师对象*/
private ByTeacherJbxx byTeacherJbxx;
@@ -300,6 +303,15 @@ public class SysUser extends BaseEntity
{
this.postIds = postIds;
}
+ public Long[] getDeptIds()
+ {
+ return deptIds;
+ }
+
+ public void setDeptIds(Long[] deptIds)
+ {
+ this.deptIds = deptIds;
+ }
@Override
public String toString() {
diff --git a/ruoyi/src/main/java/com/ruoyi/project/system/domain/SysUserDept.java b/ruoyi/src/main/java/com/ruoyi/project/system/domain/SysUserDept.java
new file mode 100644
index 000000000..4cfb046f5
--- /dev/null
+++ b/ruoyi/src/main/java/com/ruoyi/project/system/domain/SysUserDept.java
@@ -0,0 +1,52 @@
+package com.ruoyi.project.system.domain;
+
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.ruoyi.framework.aspectj.lang.annotation.Excel;
+import com.ruoyi.framework.web.domain.BaseEntity;
+
+/**
+ * 多幼儿园账户对象 sys_user_dept
+ *
+ * @author tsbz
+ * @date 2020-06-15
+ */
+public class SysUserDept extends BaseEntity {
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 用户id
+ */
+ @Excel(name = "用户id")
+ private Long userId;
+
+ /**
+ * 部门id
+ */
+ @Excel(name = "部门id")
+ private Long deptId;
+
+ public void setUserId(Long userId) {
+ this.userId = userId;
+ }
+
+ public Long getUserId() {
+ return userId;
+ }
+
+ public void setDeptId(Long deptId) {
+ this.deptId = deptId;
+ }
+
+ public Long getDeptId() {
+ return deptId;
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
+ .append("userId", getUserId())
+ .append("deptId", getDeptId())
+ .toString();
+ }
+}
diff --git a/ruoyi/src/main/java/com/ruoyi/project/system/mapper/SysDeptMapper.java b/ruoyi/src/main/java/com/ruoyi/project/system/mapper/SysDeptMapper.java
index 7dac0cb49..4afdcb67d 100644
--- a/ruoyi/src/main/java/com/ruoyi/project/system/mapper/SysDeptMapper.java
+++ b/ruoyi/src/main/java/com/ruoyi/project/system/mapper/SysDeptMapper.java
@@ -27,6 +27,14 @@ public interface SysDeptMapper
*/
public List selectDeptListByRoleId(Long roleId);
+ /**
+ * 根据用户ID获取部门选择框列表
+ *
+ * @param userId 用户ID
+ * @return 选中岗位ID列表
+ */
+ public List selectDeptListByUserId(Long userId);
+
/**
* 根据部门ID查询信息
*
diff --git a/ruoyi/src/main/java/com/ruoyi/project/system/mapper/SysUserDeptMapper.java b/ruoyi/src/main/java/com/ruoyi/project/system/mapper/SysUserDeptMapper.java
new file mode 100644
index 000000000..deab22aad
--- /dev/null
+++ b/ruoyi/src/main/java/com/ruoyi/project/system/mapper/SysUserDeptMapper.java
@@ -0,0 +1,77 @@
+package com.ruoyi.project.system.mapper;
+
+import java.util.List;
+
+import com.ruoyi.project.system.domain.SysUserDept;
+
+/**
+ * 多幼儿园账户Mapper接口
+ *
+ * @author tsbz
+ * @date 2020-06-15
+ */
+public interface SysUserDeptMapper {
+ /**
+ * 通过用户ID删除用户和岗位关联
+ *
+ * @param userId 用户ID
+ * @return 结果
+ */
+ public int deleteUserDeptByUserId(Long userId);
+
+ /**
+ * 查询多幼儿园账户
+ *
+ * @param userId 多幼儿园账户ID
+ * @return 多幼儿园账户
+ */
+ public SysUserDept selectSysUserDeptById(Long userId);
+
+ /**
+ * 查询多幼儿园账户列表
+ *
+ * @param sysUserDept 多幼儿园账户
+ * @return 多幼儿园账户集合
+ */
+ public List selectSysUserDeptList(SysUserDept sysUserDept);
+
+ /**
+ * 新增多幼儿园账户
+ *
+ * @param sysUserDept 多幼儿园账户
+ * @return 结果
+ */
+ public int insertSysUserDept(SysUserDept sysUserDept);
+
+ /**
+ * 修改多幼儿园账户
+ *
+ * @param sysUserDept 多幼儿园账户
+ * @return 结果
+ */
+ public int updateSysUserDept(SysUserDept sysUserDept);
+
+ /**
+ * 删除多幼儿园账户
+ *
+ * @param userId 多幼儿园账户ID
+ * @return 结果
+ */
+ public int deleteSysUserDeptById(Long userId);
+
+ /**
+ * 批量删除多幼儿园账户
+ *
+ * @param userIds 需要删除的数据ID
+ * @return 结果
+ */
+ public int deleteSysUserDeptByIds(Long[] userIds);
+
+ /**
+ * 批量新增用户部门信息
+ *
+ * @param userDeptList 用户角色列表
+ * @return 结果
+ */
+ public int batchUserDept(List userDeptList);
+}
diff --git a/ruoyi/src/main/java/com/ruoyi/project/system/service/ISysDeptService.java b/ruoyi/src/main/java/com/ruoyi/project/system/service/ISysDeptService.java
index 1d8a30678..42dde6fff 100644
--- a/ruoyi/src/main/java/com/ruoyi/project/system/service/ISysDeptService.java
+++ b/ruoyi/src/main/java/com/ruoyi/project/system/service/ISysDeptService.java
@@ -19,6 +19,14 @@ public interface ISysDeptService
*/
public List selectDeptList(SysDept dept);
+ /**
+ * 根据用户ID获取岗位选择框列表
+ *
+ * @param userId 用户ID
+ * @return 选中岗位ID列表
+ */
+ public List selectDeptListByUserId(Long userId);
+
/**
* 构建前端所需要树结构
*
diff --git a/ruoyi/src/main/java/com/ruoyi/project/system/service/ISysUserDeptService.java b/ruoyi/src/main/java/com/ruoyi/project/system/service/ISysUserDeptService.java
new file mode 100644
index 000000000..01ef6c3a2
--- /dev/null
+++ b/ruoyi/src/main/java/com/ruoyi/project/system/service/ISysUserDeptService.java
@@ -0,0 +1,61 @@
+package com.ruoyi.project.system.service;
+
+import java.util.List;
+
+import com.ruoyi.project.system.domain.SysUserDept;
+
+/**
+ * 多幼儿园账户Service接口
+ *
+ * @author tsbz
+ * @date 2020-06-15
+ */
+public interface ISysUserDeptService {
+ /**
+ * 查询多幼儿园账户
+ *
+ * @param userId 多幼儿园账户ID
+ * @return 多幼儿园账户
+ */
+ public SysUserDept selectSysUserDeptById(Long userId);
+
+ /**
+ * 查询多幼儿园账户列表
+ *
+ * @param sysUserDept 多幼儿园账户
+ * @return 多幼儿园账户集合
+ */
+ public List selectSysUserDeptList(SysUserDept sysUserDept);
+
+ /**
+ * 新增多幼儿园账户
+ *
+ * @param sysUserDept 多幼儿园账户
+ * @return 结果
+ */
+ public int insertSysUserDept(SysUserDept sysUserDept);
+
+ /**
+ * 修改多幼儿园账户
+ *
+ * @param sysUserDept 多幼儿园账户
+ * @return 结果
+ */
+ public int updateSysUserDept(SysUserDept sysUserDept);
+
+ /**
+ * 批量删除多幼儿园账户
+ *
+ * @param userIds 需要删除的多幼儿园账户ID
+ * @return 结果
+ */
+ public int deleteSysUserDeptByIds(Long[] userIds);
+
+ /**
+ * 删除多幼儿园账户信息
+ *
+ * @param userId 多幼儿园账户ID
+ * @return 结果
+ */
+ public int deleteSysUserDeptById(Long userId);
+}
diff --git a/ruoyi/src/main/java/com/ruoyi/project/system/service/impl/SysDeptServiceImpl.java b/ruoyi/src/main/java/com/ruoyi/project/system/service/impl/SysDeptServiceImpl.java
index 338e2a66c..f3a455eee 100644
--- a/ruoyi/src/main/java/com/ruoyi/project/system/service/impl/SysDeptServiceImpl.java
+++ b/ruoyi/src/main/java/com/ruoyi/project/system/service/impl/SysDeptServiceImpl.java
@@ -39,6 +39,17 @@ public class SysDeptServiceImpl implements ISysDeptService
return deptMapper.selectDeptList(dept);
}
+ /**
+ * 根据用户ID获取岗位选择框列表
+ *
+ * @param userId 用户ID
+ * @return 选中岗位ID列表
+ */
+ public List selectDeptListByUserId(Long userId)
+ {
+ return deptMapper.selectDeptListByUserId(userId);
+ }
+
/**
* 构建前端所需要树结构
*
diff --git a/ruoyi/src/main/java/com/ruoyi/project/system/service/impl/SysUserDeptServiceImpl.java b/ruoyi/src/main/java/com/ruoyi/project/system/service/impl/SysUserDeptServiceImpl.java
new file mode 100644
index 000000000..b25eb7ffd
--- /dev/null
+++ b/ruoyi/src/main/java/com/ruoyi/project/system/service/impl/SysUserDeptServiceImpl.java
@@ -0,0 +1,87 @@
+package com.ruoyi.project.system.service.impl;
+
+import java.util.List;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.ruoyi.project.system.mapper.SysUserDeptMapper;
+import com.ruoyi.project.system.domain.SysUserDept;
+import com.ruoyi.project.system.service.ISysUserDeptService;
+
+/**
+ * 多幼儿园账户Service业务层处理
+ *
+ * @author tsbz
+ * @date 2020-06-15
+ */
+@Service
+public class SysUserDeptServiceImpl implements ISysUserDeptService {
+ @Autowired
+ private SysUserDeptMapper sysUserDeptMapper;
+
+ /**
+ * 查询多幼儿园账户
+ *
+ * @param userId 多幼儿园账户ID
+ * @return 多幼儿园账户
+ */
+ @Override
+ public SysUserDept selectSysUserDeptById(Long userId) {
+ return sysUserDeptMapper.selectSysUserDeptById(userId);
+ }
+
+ /**
+ * 查询多幼儿园账户列表
+ *
+ * @param sysUserDept 多幼儿园账户
+ * @return 多幼儿园账户
+ */
+ @Override
+ public List selectSysUserDeptList(SysUserDept sysUserDept) {
+ return sysUserDeptMapper.selectSysUserDeptList(sysUserDept);
+ }
+
+ /**
+ * 新增多幼儿园账户
+ *
+ * @param sysUserDept 多幼儿园账户
+ * @return 结果
+ */
+ @Override
+ public int insertSysUserDept(SysUserDept sysUserDept) {
+ return sysUserDeptMapper.insertSysUserDept(sysUserDept);
+ }
+
+ /**
+ * 修改多幼儿园账户
+ *
+ * @param sysUserDept 多幼儿园账户
+ * @return 结果
+ */
+ @Override
+ public int updateSysUserDept(SysUserDept sysUserDept) {
+ return sysUserDeptMapper.updateSysUserDept(sysUserDept);
+ }
+
+ /**
+ * 批量删除多幼儿园账户
+ *
+ * @param userIds 需要删除的多幼儿园账户ID
+ * @return 结果
+ */
+ @Override
+ public int deleteSysUserDeptByIds(Long[] userIds) {
+ return sysUserDeptMapper.deleteSysUserDeptByIds(userIds);
+ }
+
+ /**
+ * 删除多幼儿园账户信息
+ *
+ * @param userId 多幼儿园账户ID
+ * @return 结果
+ */
+ @Override
+ public int deleteSysUserDeptById(Long userId) {
+ return sysUserDeptMapper.deleteSysUserDeptById(userId);
+ }
+}
diff --git a/ruoyi/src/main/java/com/ruoyi/project/system/service/impl/SysUserServiceImpl.java b/ruoyi/src/main/java/com/ruoyi/project/system/service/impl/SysUserServiceImpl.java
index 404ac1e4b..1cf8228ab 100644
--- a/ruoyi/src/main/java/com/ruoyi/project/system/service/impl/SysUserServiceImpl.java
+++ b/ruoyi/src/main/java/com/ruoyi/project/system/service/impl/SysUserServiceImpl.java
@@ -3,6 +3,8 @@ package com.ruoyi.project.system.service.impl;
import java.util.ArrayList;
import java.util.List;
+import com.ruoyi.project.system.domain.*;
+import com.ruoyi.project.system.mapper.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -13,16 +15,6 @@ import com.ruoyi.common.exception.CustomException;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.framework.aspectj.lang.annotation.DataScope;
-import com.ruoyi.project.system.domain.SysPost;
-import com.ruoyi.project.system.domain.SysRole;
-import com.ruoyi.project.system.domain.SysUser;
-import com.ruoyi.project.system.domain.SysUserPost;
-import com.ruoyi.project.system.domain.SysUserRole;
-import com.ruoyi.project.system.mapper.SysPostMapper;
-import com.ruoyi.project.system.mapper.SysRoleMapper;
-import com.ruoyi.project.system.mapper.SysUserMapper;
-import com.ruoyi.project.system.mapper.SysUserPostMapper;
-import com.ruoyi.project.system.mapper.SysUserRoleMapper;
import com.ruoyi.project.system.service.ISysConfigService;
import com.ruoyi.project.system.service.ISysUserService;
@@ -50,6 +42,9 @@ public class SysUserServiceImpl implements ISysUserService {
@Autowired
private SysUserPostMapper userPostMapper;
+ @Autowired
+ private SysUserDeptMapper userDeptMapper;
+
@Autowired
private ISysConfigService configService;
@@ -209,6 +204,8 @@ public class SysUserServiceImpl implements ISysUserService {
insertUserPost(user);
// 新增用户与角色管理
insertUserRole(user);
+ //新增用户与部门管理
+ insertUserDept(user);
return rows;
}
@@ -230,6 +227,10 @@ public class SysUserServiceImpl implements ISysUserService {
userPostMapper.deleteUserPostByUserId(userId);
// 新增用户与岗位管理
insertUserPost(user);
+ // 删除用户与部门关联
+ userDeptMapper.deleteUserDeptByUserId(userId);
+ // 新增用户与角色管理
+ insertUserDept(user);
return userMapper.updateUser(user);
}
@@ -333,6 +334,28 @@ public class SysUserServiceImpl implements ISysUserService {
}
}
+ /**
+ * 新增用户部门信息
+ *
+ * @param user 用户对象
+ */
+ public void insertUserDept(SysUser user) {
+ Long[] depts = user.getDeptIds();
+ if (StringUtils.isNotNull(depts)) {
+ // 新增用户与部门管理
+ List list = new ArrayList();
+ for (Long deptId : depts) {
+ SysUserDept ud = new SysUserDept();
+ ud.setUserId(user.getUserId());
+ ud.setDeptId(deptId);
+ list.add(ud);
+ }
+ if (list.size() > 0) {
+ userDeptMapper.batchUserDept(list);
+ }
+ }
+ }
+
/**
* 通过用户ID删除用户
*
diff --git a/ruoyi/src/main/resources/mybatis/system/SysDeptMapper.xml b/ruoyi/src/main/resources/mybatis/system/SysDeptMapper.xml
index ecfbd657b..fa9419b11 100644
--- a/ruoyi/src/main/resources/mybatis/system/SysDeptMapper.xml
+++ b/ruoyi/src/main/resources/mybatis/system/SysDeptMapper.xml
@@ -27,6 +27,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
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.school_id
from sys_dept d
+
+
+