Commit 0e3c7e73 by xuwenhao

修改用户事件订阅

parent b3218b57
...@@ -85,31 +85,45 @@ public class DdUserServiceImpl implements IDdUserService { ...@@ -85,31 +85,45 @@ public class DdUserServiceImpl implements IDdUserService {
//多部门任职信息 //多部门任职信息
List<OapiV2UserGetResponse.DeptPosition> deptPositionList = ddUser.getDeptPositionList(); List<OapiV2UserGetResponse.DeptPosition> deptPositionList = ddUser.getDeptPositionList();
//拿取钉钉用户部门id列表的第一个存在的部门id存到用户表中
//部门列表
List<Long> deptIdList = ddUser.getDeptIdList();
//用户部门列表 //用户部门列表
List<Long> ddUserDepts = new ArrayList<>(); List<Long> ddUserDepts = new ArrayList<>();
//用户部门列表(用于判断是否是级部成员)
for (Long ddUserDeptId : deptIdList) { List<Long> ddUserDepts1 = new ArrayList<>();
SysDdDept dept1 = ddDeptMapper.selectDeptByDdDeptId(ddUserDeptId);
if (StringUtils.isNotNull(dept1)){
ddUserDepts.add(dept1.getDeptId());
}
}
//用户表数据 //用户表数据
SysDdUser sysDdUser = new SysDdUser(); SysDdUser sysDdUser = new SysDdUser();
sysDdUser.setDdUserDepts(ddUserDepts);
//根据钉钉部门id查询部门信息 //设置主部门和任职部门
for (Long ddDeptId : deptIdList) { if (deptPositionList.size()>0){
SysDdDept dept = ddDeptMapper.selectDeptByDdDeptId(ddDeptId); for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) {
if (StringUtils.isNotNull(dept)){ if (StringUtils.isNotNull(deptPosition.getIsMain())){
sysDdUser.setDeptId(dept.getDeptId()); if (deptPosition.getIsMain()){
break; SysDdDept dept = ddDeptMapper.selectDeptByDdDeptId(deptPosition.getDeptId());
if (StringUtils.isNotNull(dept)){
sysDdUser.setDeptId(dept.getDeptId());
ddUserDepts1.add(dept.getDeptId());
}
}else {
SysDdDept dept1 = ddDeptMapper.selectDeptByDdDeptId(deptPosition.getDeptId());
if (StringUtils.isNotNull(dept1)){
ddUserDepts.add(dept1.getDeptId());
ddUserDepts1.add(dept1.getDeptId());
}
}
}else {
SysDdDept dept = ddDeptMapper.selectDeptByDdDeptId(deptPosition.getDeptId());
if (StringUtils.isNotNull(dept)){
ddUserDepts.add(dept.getDeptId());
ddUserDepts1.add(dept.getDeptId());
}
}
} }
} }
if (StringUtils.isNull(sysDdUser.getDeptId())){
sysDdUser.setDeptId(ddUserDepts.get(0));
ddUserDepts.remove(ddUserDepts.get(0));
}
sysDdUser.setDdUserDepts(ddUserDepts);
sysDdUser.setLoginName(ddUser.getName()); sysDdUser.setLoginName(ddUser.getName());
sysDdUser.setPassword(SecurityUtils.encryptPassword("Ez2023@345")); sysDdUser.setPassword(SecurityUtils.encryptPassword("Ez2023@345"));
sysDdUser.setUserName(ddUser.getName()); sysDdUser.setUserName(ddUser.getName());
...@@ -146,7 +160,7 @@ public class DdUserServiceImpl implements IDdUserService { ...@@ -146,7 +160,7 @@ public class DdUserServiceImpl implements IDdUserService {
ddTeacherMapper.addTeacherList(sysDdTeacher); ddTeacherMapper.addTeacherList(sysDdTeacher);
//判断用户是否为级部成员 //判断用户是否为级部成员
for (Long deptId : ddUserDepts) { for (Long deptId : ddUserDepts1) {
//根据部门id获取部门信息 //根据部门id获取部门信息
SysDdDept sysDdDept = ddDeptMapper.selectDeptByDeptId(deptId); SysDdDept sysDdDept = ddDeptMapper.selectDeptByDeptId(deptId);
//判断是否是年级部成员 //判断是否是年级部成员
...@@ -163,10 +177,15 @@ public class DdUserServiceImpl implements IDdUserService { ...@@ -163,10 +177,15 @@ public class DdUserServiceImpl implements IDdUserService {
//包含,新增用户到该级部成员 //包含,新增用户到该级部成员
SchoolGradeMentorCopy schoolGradeMentor = new SchoolGradeMentorCopy(); SchoolGradeMentorCopy schoolGradeMentor = new SchoolGradeMentorCopy();
//设置职位 //设置职位
if (StringUtils.isNotNull(deptPositionList) && deptPositionList.size() > 0){ if (deptPositionList.size() > 0){
for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) { for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) {
if (deptPosition.getDeptId().equals(sysDdDept.getDdDeptId())){ if (deptPosition.getDeptId().equals(sysDdDept.getDdDeptId())){
schoolGradeMentor.setTeacherPost(deptPosition.getTitle()); if (StringUtils.isNotEmpty(deptPosition.getTitle())){
schoolGradeMentor.setTeacherPost(deptPosition.getTitle());
}else {
schoolGradeMentor.setTeacherPost(ddUser.getTitle());
}
} }
} }
} }
...@@ -193,10 +212,14 @@ public class DdUserServiceImpl implements IDdUserService { ...@@ -193,10 +212,14 @@ public class DdUserServiceImpl implements IDdUserService {
//包含,新增用户到该级部成员 //包含,新增用户到该级部成员
SchoolGradeMentorCopy schoolGradeMentor = new SchoolGradeMentorCopy(); SchoolGradeMentorCopy schoolGradeMentor = new SchoolGradeMentorCopy();
//设置职位 //设置职位
if (StringUtils.isNotNull(deptPositionList) && deptPositionList.size() > 0){ if (deptPositionList.size() > 0){
for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) { for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) {
if (deptPosition.getDeptId().equals(sysDdDept.getDdDeptId())){ if (deptPosition.getDeptId().equals(sysDdDept.getDdDeptId())){
schoolGradeMentor.setTeacherPost(deptPosition.getTitle()); if (StringUtils.isNotEmpty(deptPosition.getTitle())){
schoolGradeMentor.setTeacherPost(deptPosition.getTitle());
}else {
schoolGradeMentor.setTeacherPost(ddUser.getTitle());
}
} }
} }
} }
...@@ -283,30 +306,41 @@ public class DdUserServiceImpl implements IDdUserService { ...@@ -283,30 +306,41 @@ public class DdUserServiceImpl implements IDdUserService {
for (OapiV2UserGetResponse.UserGetResponse ddUser : ddUserAll) { for (OapiV2UserGetResponse.UserGetResponse ddUser : ddUserAll) {
if (ddUserId.equals(ddUser.getUserid())){ if (ddUserId.equals(ddUser.getUserid())){
//拿取钉钉用户部门id列表的第一个存在的部门id存到用户表中 //拿取钉钉用户部门id列表的第一个存在的部门id存到用户表中
//部门列表
List<Long> deptIdList = ddUser.getDeptIdList(); //多部门任职信息
List<OapiV2UserGetResponse.DeptPosition> deptPositionList = ddUser.getDeptPositionList();
//用户部门列表 //用户部门列表
List<Long> ddUserDepts = new ArrayList<>(); List<Long> ddUserDepts = new ArrayList<>();
//用户部门列表(用于判断是否是级部成员)
for (Long ddUserDeptId : deptIdList) { List<Long> ddUserDepts1 = new ArrayList<>();
SysDdDept dept1 = ddDeptMapper.selectDeptByDdDeptId(ddUserDeptId);
if (StringUtils.isNotNull(dept1)){
ddUserDepts.add(dept1.getDeptId());
}
}
//根据钉钉部门id查询部门信息 //根据钉钉部门id查询部门信息
//新增用户到用户表 //新增用户到用户表
SysDdUser sysDdUser = new SysDdUser(); SysDdUser sysDdUser = new SysDdUser();
sysDdUser.setDdUserDepts(ddUserDepts);
//根据钉钉部门id查询部门信息 //设置主部门和任职部门
for (Long ddDeptId : deptIdList) { if (deptPositionList.size()>0){
SysDdDept dept = ddDeptMapper.selectDeptByDdDeptId(ddDeptId); for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) {
if (StringUtils.isNotNull(dept)){ if (deptPosition.getIsMain()){
sysDdUser.setDeptId(dept.getDeptId()); SysDdDept dept = ddDeptMapper.selectDeptByDdDeptId(deptPosition.getDeptId());
break; if (StringUtils.isNotNull(dept)){
sysDdUser.setDeptId(dept.getDeptId());
ddUserDepts1.add(dept.getDeptId());
}
}else {
SysDdDept dept1 = ddDeptMapper.selectDeptByDdDeptId(deptPosition.getDeptId());
if (StringUtils.isNotNull(dept1)){
ddUserDepts.add(dept1.getDeptId());
ddUserDepts1.add(dept1.getDeptId());
}
}
} }
} }
if (StringUtils.isNull(sysDdUser.getDeptId())){
sysDdUser.setDeptId(ddUserDepts1.get(0));
ddUserDepts.remove(ddUserDepts1.get(0));
}
sysDdUser.setDdUserDepts(ddUserDepts);
sysDdUser.setLoginName(ddUser.getName()); sysDdUser.setLoginName(ddUser.getName());
sysDdUser.setPassword(SecurityUtils.encryptPassword("Ez2023@345")); sysDdUser.setPassword(SecurityUtils.encryptPassword("Ez2023@345"));
sysDdUser.setUserName(ddUser.getName()); sysDdUser.setUserName(ddUser.getName());
...@@ -349,11 +383,8 @@ public class DdUserServiceImpl implements IDdUserService { ...@@ -349,11 +383,8 @@ public class DdUserServiceImpl implements IDdUserService {
sysDdTeacher.setCreateTime(DateUtils.getNowDate()); sysDdTeacher.setCreateTime(DateUtils.getNowDate());
ddTeacherMapper.addTeacherList(sysDdTeacher); ddTeacherMapper.addTeacherList(sysDdTeacher);
//多部门任职信息
List<OapiV2UserGetResponse.DeptPosition> deptPositionList = ddUser.getDeptPositionList();
//判断用户是否是级部成员,如果是,新增到级部成员 //判断用户是否是级部成员,如果是,新增到级部成员
for (Long deptId : ddUserDepts) { for (Long deptId : ddUserDepts1) {
//根据部门id获取部门信息 //根据部门id获取部门信息
SysDdDept sysDdDept = ddDeptMapper.selectDeptByDeptId(deptId); SysDdDept sysDdDept = ddDeptMapper.selectDeptByDeptId(deptId);
//判断是否是年级部成员 //判断是否是年级部成员
...@@ -370,10 +401,14 @@ public class DdUserServiceImpl implements IDdUserService { ...@@ -370,10 +401,14 @@ public class DdUserServiceImpl implements IDdUserService {
//包含,新增用户到该级部成员 //包含,新增用户到该级部成员
SchoolGradeMentorCopy schoolGradeMentor = new SchoolGradeMentorCopy(); SchoolGradeMentorCopy schoolGradeMentor = new SchoolGradeMentorCopy();
//设置职位 //设置职位
if (StringUtils.isNotNull(deptPositionList) && deptPositionList.size() > 0){ if (deptPositionList.size() > 0){
for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) { for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) {
if (deptPosition.getDeptId().equals(sysDdDept.getDdDeptId())){ if (deptPosition.getDeptId().equals(sysDdDept.getDdDeptId())){
schoolGradeMentor.setTeacherPost(deptPosition.getTitle()); if (StringUtils.isNotEmpty(deptPosition.getTitle())){
schoolGradeMentor.setTeacherPost(deptPosition.getTitle());
}else {
schoolGradeMentor.setTeacherPost(ddUser.getTitle());
}
} }
} }
} }
...@@ -400,10 +435,14 @@ public class DdUserServiceImpl implements IDdUserService { ...@@ -400,10 +435,14 @@ public class DdUserServiceImpl implements IDdUserService {
//包含,新增用户到该级部成员 //包含,新增用户到该级部成员
SchoolGradeMentorCopy schoolGradeMentor = new SchoolGradeMentorCopy(); SchoolGradeMentorCopy schoolGradeMentor = new SchoolGradeMentorCopy();
//设置职位 //设置职位
if (StringUtils.isNotNull(deptPositionList) && deptPositionList.size() > 0){ if (deptPositionList.size() > 0){
for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) { for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) {
if (deptPosition.getDeptId().equals(sysDdDept.getDdDeptId())){ if (deptPosition.getDeptId().equals(sysDdDept.getDdDeptId())){
schoolGradeMentor.setTeacherPost(deptPosition.getTitle()); if (StringUtils.isNotEmpty(deptPosition.getTitle())){
schoolGradeMentor.setTeacherPost(deptPosition.getTitle());
}else {
schoolGradeMentor.setTeacherPost(ddUser.getTitle());
}
} }
} }
} }
...@@ -476,27 +515,46 @@ public class DdUserServiceImpl implements IDdUserService { ...@@ -476,27 +515,46 @@ public class DdUserServiceImpl implements IDdUserService {
} }
//更新的部门id列表 //更新的部门id列表
List<Long> deptIds = new ArrayList<>(); List<Long> deptIds = new ArrayList<>();
//更新的部门id列表(用于判断是否是级部成员)
List<Long> deptIds1 = new ArrayList<>();
//判断系统用户和钉钉用户部门是否发生改变 //判断系统用户和钉钉用户部门是否发生改变
boolean isEqual = ddDeptIds.containsAll(deptIdList1) && deptIdList1.containsAll(ddDeptIds); boolean isEqual = ddDeptIds.containsAll(deptIdList1) && deptIdList1.containsAll(ddDeptIds);
if (!isEqual) { if (!isEqual) {
//发生改变更新用户信息 //发生改变更新用户信息
for (Long ddUserDeptId : deptIdList1) { //设置主部门和任职部门
SysDdDept dept1 = ddDeptMapper.selectDeptByDdDeptId(ddUserDeptId); if (deptPositionList.size()>0){
if (StringUtils.isNotNull(dept1)){ for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) {
deptIds.add(dept1.getDeptId()); if (deptPosition.getIsMain()){
SysDdDept dept = ddDeptMapper.selectDeptByDdDeptId(deptPosition.getDeptId());
if (StringUtils.isNotNull(dept)){
sysDdUser.setDeptId(dept.getDeptId());
deptIds1.add(dept.getDeptId());
}
}else {
SysDdDept dept1 = ddDeptMapper.selectDeptByDdDeptId(deptPosition.getDeptId());
if (StringUtils.isNotNull(dept1)){
deptIds.add(dept1.getDeptId());
deptIds1.add(dept1.getDeptId());
}
}
} }
} }
if (!deptIds1.contains(sysDdUser.getDeptId())){
sysDdUser.setDeptId(deptIds1.get(0));
deptIds.remove(deptIds1.get(0));
}
//删除原用户与部门关系 //删除原用户与部门关系
ddUserMapper.deleteDdUserDept(sysDdUser.getUserId()); ddUserMapper.deleteDdUserDept(sysDdUser.getUserId());
//删除级部成员信息 //删除级部成员信息
ddUserMapper.deleteGradeMentor(sysDdUser.getUserId()); ddUserMapper.deleteGradeMentor(sysDdUser.getUserId());
//新增用户和部门关系
sysDdUser.setDeptId(deptIds.get(0));
SysDdUserDept sysDdUserDept = new SysDdUserDept(); SysDdUserDept sysDdUserDept = new SysDdUserDept();
sysDdUserDept.setUserId(sysDdUser.getUserId()); sysDdUserDept.setUserId(sysDdUser.getUserId());
for (Long ddUserDept : deptIds) { for (Long ddUserDept : deptIds) {
sysDdUserDept.setDeptId(ddUserDept); sysDdUserDept.setDeptId(ddUserDept);
ddUserMapper.insertDdUserDept(sysDdUserDept); ddUserMapper.insertDdUserDept(sysDdUserDept);
}
for (Long ddUserDept : deptIds1){
//根据部门id获取部门信息 //根据部门id获取部门信息
SysDdDept sysDdDept = ddDeptMapper.selectDeptByDeptId(ddUserDept); SysDdDept sysDdDept = ddDeptMapper.selectDeptByDeptId(ddUserDept);
//判断是否是年级部成员 //判断是否是年级部成员
...@@ -513,10 +571,14 @@ public class DdUserServiceImpl implements IDdUserService { ...@@ -513,10 +571,14 @@ public class DdUserServiceImpl implements IDdUserService {
//包含,新增用户到该级部成员 //包含,新增用户到该级部成员
SchoolGradeMentorCopy schoolGradeMentor = new SchoolGradeMentorCopy(); SchoolGradeMentorCopy schoolGradeMentor = new SchoolGradeMentorCopy();
//设置职位 //设置职位
if (StringUtils.isNotNull(deptPositionList) && deptPositionList.size() > 0){ if (deptPositionList.size() > 0){
for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) { for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) {
if (deptPosition.getDeptId().equals(sysDdDept.getDdDeptId())){ if (deptPosition.getDeptId().equals(sysDdDept.getDdDeptId())){
schoolGradeMentor.setTeacherPost(deptPosition.getTitle()); if (StringUtils.isNotEmpty(deptPosition.getTitle())){
schoolGradeMentor.setTeacherPost(deptPosition.getTitle());
}else {
schoolGradeMentor.setTeacherPost(ddUser.getTitle());
}
} }
} }
} }
...@@ -543,10 +605,14 @@ public class DdUserServiceImpl implements IDdUserService { ...@@ -543,10 +605,14 @@ public class DdUserServiceImpl implements IDdUserService {
//包含,新增用户到该级部成员 //包含,新增用户到该级部成员
SchoolGradeMentorCopy schoolGradeMentor = new SchoolGradeMentorCopy(); SchoolGradeMentorCopy schoolGradeMentor = new SchoolGradeMentorCopy();
//设置职位 //设置职位
if (StringUtils.isNotNull(deptPositionList) && deptPositionList.size() > 0){ if (deptPositionList.size() > 0){
for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) { for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) {
if (deptPosition.getDeptId().equals(sysDdDept.getDdDeptId())){ if (deptPosition.getDeptId().equals(sysDdDept.getDdDeptId())){
schoolGradeMentor.setTeacherPost(deptPosition.getTitle()); if (StringUtils.isNotEmpty(deptPosition.getTitle())){
schoolGradeMentor.setTeacherPost(deptPosition.getTitle());
}else {
schoolGradeMentor.setTeacherPost(ddUser.getTitle());
}
} }
} }
} }
...@@ -616,29 +682,39 @@ public class DdUserServiceImpl implements IDdUserService { ...@@ -616,29 +682,39 @@ public class DdUserServiceImpl implements IDdUserService {
//多部门任职信息 //多部门任职信息
List<OapiV2UserGetResponse.DeptPosition> deptPositionList = ddUser.getDeptPositionList(); List<OapiV2UserGetResponse.DeptPosition> deptPositionList = ddUser.getDeptPositionList();
//钉钉用户的钉钉部门id列表 //钉钉用户的钉钉部门id列表
List<Long> deptIdList = ddUser.getDeptIdList();
//用户系统部门id列表 //用户系统部门id列表
List<Long> ddUserDepts = new ArrayList<>(); List<Long> ddUserDepts = new ArrayList<>();
//用户系统部门id列表(用于判断是否是级部成员)
for (Long ddUserDeptId : deptIdList) { List<Long> ddUserDepts1 = new ArrayList<>();
SysDdDept dept1 = ddDeptMapper.selectDeptByDdDeptId(ddUserDeptId);
if (StringUtils.isNotNull(dept1)){
ddUserDepts.add(dept1.getDeptId());
}
}
//用户表数据 //用户表数据
SysDdUser sysDdUser = new SysDdUser(); SysDdUser sysDdUser = new SysDdUser();
sysDdUser.setDdUserDepts(ddUserDepts);
//根据钉钉部门id查询部门信息 //设置主部门和任职部门
for (Long ddDeptId : deptIdList) { if (deptPositionList.size()>0){
SysDdDept dept = ddDeptMapper.selectDeptByDdDeptId(ddDeptId); for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) {
if (StringUtils.isNotNull(dept)){ if (deptPosition.getIsMain()){
sysDdUser.setDeptId(dept.getDeptId()); SysDdDept dept = ddDeptMapper.selectDeptByDdDeptId(deptPosition.getDeptId());
break; if (StringUtils.isNotNull(dept)){
sysDdUser.setDeptId(dept.getDeptId());
ddUserDepts1.add(dept.getDeptId());
}
}else {
SysDdDept dept1 = ddDeptMapper.selectDeptByDdDeptId(deptPosition.getDeptId());
if (StringUtils.isNotNull(dept1)){
ddUserDepts.add(dept1.getDeptId());
ddUserDepts1.add(dept1.getDeptId());
}
}
} }
} }
if (StringUtils.isNull(sysDdUser.getDeptId())){
sysDdUser.setDeptId(ddUserDepts1.get(0));
ddUserDepts.remove(ddUserDepts1.get(0));
}
sysDdUser.setDdUserDepts(ddUserDepts);
sysDdUser.setLoginName(ddUser.getName()); sysDdUser.setLoginName(ddUser.getName());
sysDdUser.setPassword(SecurityUtils.encryptPassword("Ez2023@345")); sysDdUser.setPassword(SecurityUtils.encryptPassword("Ez2023@345"));
sysDdUser.setUserName(ddUser.getName()); sysDdUser.setUserName(ddUser.getName());
...@@ -680,7 +756,7 @@ public class DdUserServiceImpl implements IDdUserService { ...@@ -680,7 +756,7 @@ public class DdUserServiceImpl implements IDdUserService {
ddTeacherMapper.addTeacherList(sysDdTeacher); ddTeacherMapper.addTeacherList(sysDdTeacher);
//判断用户是否是级部成员,如果是,新增到级部成员 //判断用户是否是级部成员,如果是,新增到级部成员
for (Long deptId : ddUserDepts) { for (Long deptId : ddUserDepts1) {
//根据部门id获取部门信息 //根据部门id获取部门信息
SysDdDept sysDdDept = ddDeptMapper.selectDeptByDeptId(deptId); SysDdDept sysDdDept = ddDeptMapper.selectDeptByDeptId(deptId);
//判断是否是年级部成员 //判断是否是年级部成员
...@@ -697,10 +773,14 @@ public class DdUserServiceImpl implements IDdUserService { ...@@ -697,10 +773,14 @@ public class DdUserServiceImpl implements IDdUserService {
//包含,新增用户到该级部成员 //包含,新增用户到该级部成员
SchoolGradeMentorCopy schoolGradeMentor = new SchoolGradeMentorCopy(); SchoolGradeMentorCopy schoolGradeMentor = new SchoolGradeMentorCopy();
//设置职位 //设置职位
if (StringUtils.isNotNull(deptPositionList) && deptPositionList.size() > 0){ if (deptPositionList.size() > 0){
for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) { for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) {
if (deptPosition.getDeptId().equals(sysDdDept.getDdDeptId())){ if (deptPosition.getDeptId().equals(sysDdDept.getDdDeptId())){
schoolGradeMentor.setTeacherPost(deptPosition.getTitle()); if (StringUtils.isNotEmpty(deptPosition.getTitle())){
schoolGradeMentor.setTeacherPost(deptPosition.getTitle());
}else {
schoolGradeMentor.setTeacherPost(ddUser.getTitle());
}
} }
} }
} }
...@@ -727,10 +807,14 @@ public class DdUserServiceImpl implements IDdUserService { ...@@ -727,10 +807,14 @@ public class DdUserServiceImpl implements IDdUserService {
//包含,新增用户到该级部成员 //包含,新增用户到该级部成员
SchoolGradeMentorCopy schoolGradeMentor = new SchoolGradeMentorCopy(); SchoolGradeMentorCopy schoolGradeMentor = new SchoolGradeMentorCopy();
//设置职位 //设置职位
if (StringUtils.isNotNull(deptPositionList) && deptPositionList.size() > 0){ if (deptPositionList.size() > 0){
for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) { for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) {
if (deptPosition.getDeptId().equals(sysDdDept.getDdDeptId())){ if (deptPosition.getDeptId().equals(sysDdDept.getDdDeptId())){
schoolGradeMentor.setTeacherPost(deptPosition.getTitle()); if (StringUtils.isNotEmpty(deptPosition.getTitle())){
schoolGradeMentor.setTeacherPost(deptPosition.getTitle());
}else {
schoolGradeMentor.setTeacherPost(ddUser.getTitle());
}
} }
} }
} }
...@@ -767,18 +851,41 @@ public class DdUserServiceImpl implements IDdUserService { ...@@ -767,18 +851,41 @@ public class DdUserServiceImpl implements IDdUserService {
OapiV2UserGetResponse.UserGetResponse ddUser = dingUserUtils.getUser(userId); OapiV2UserGetResponse.UserGetResponse ddUser = dingUserUtils.getUser(userId);
//查询系统用户详情 //查询系统用户详情
SysDdUser sysDdUser = ddUserMapper.selectDdUserByDdUserId(userId); SysDdUser sysDdUser = ddUserMapper.selectDdUserByDdUserId(userId);
if (StringUtils.isNull(sysDdUser)){
return 1;
}
//钉钉用户的钉钉部门id列表 //钉钉用户的钉钉部门id列表
List<Long> deptIdList = ddUser.getDeptIdList(); List<Long> deptIdList = ddUser.getDeptIdList();
//多部门任职信息 //多部门任职信息
List<OapiV2UserGetResponse.DeptPosition> deptPositionList = ddUser.getDeptPositionList(); List<OapiV2UserGetResponse.DeptPosition> deptPositionList = ddUser.getDeptPositionList();
//用户系统部门id列表 //用户系统部门id列表
List<Long> ddUserDepts = new ArrayList<>(); List<Long> ddUserDepts = new ArrayList<>();
for (Long ddUserDeptId : deptIdList) { //用户系统部门id列表(用于判断是否是级部成员)
SysDdDept dept1 = ddDeptMapper.selectDeptByDdDeptId(ddUserDeptId); List<Long> ddUserDepts1 = new ArrayList<>();
if (StringUtils.isNotNull(dept1)){
ddUserDepts.add(dept1.getDeptId()); //设置主部门和任职部门
if (deptPositionList.size()>0){
for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) {
if (deptPosition.getIsMain()){
SysDdDept dept = ddDeptMapper.selectDeptByDdDeptId(deptPosition.getDeptId());
if (StringUtils.isNotNull(dept)){
sysDdUser.setDeptId(dept.getDeptId());
ddUserDepts1.add(dept.getDeptId());
}
}else {
SysDdDept dept1 = ddDeptMapper.selectDeptByDdDeptId(deptPosition.getDeptId());
if (StringUtils.isNotNull(dept1)){
ddUserDepts.add(dept1.getDeptId());
ddUserDepts1.add(dept1.getDeptId());
}
}
} }
} }
if (!ddUserDepts1.contains(sysDdUser.getDeptId())){
sysDdUser.setDeptId(ddUserDepts1.get(0));
ddUserDepts.remove(ddUserDepts1.get(0));
}
//删除原用户与部门关系 //删除原用户与部门关系
ddUserMapper.deleteDdUserDept(sysDdUser.getUserId()); ddUserMapper.deleteDdUserDept(sysDdUser.getUserId());
//删除级部成员信息 //删除级部成员信息
...@@ -789,6 +896,8 @@ public class DdUserServiceImpl implements IDdUserService { ...@@ -789,6 +896,8 @@ public class DdUserServiceImpl implements IDdUserService {
for (Long ddUserDept : ddUserDepts) { for (Long ddUserDept : ddUserDepts) {
sysDdUserDept.setDeptId(ddUserDept); sysDdUserDept.setDeptId(ddUserDept);
ddUserMapper.insertDdUserDept(sysDdUserDept); ddUserMapper.insertDdUserDept(sysDdUserDept);
}
for (Long ddUserDept : ddUserDepts1) {
//根据部门id获取部门信息 //根据部门id获取部门信息
SysDdDept sysDdDept = ddDeptMapper.selectDeptByDeptId(ddUserDept); SysDdDept sysDdDept = ddDeptMapper.selectDeptByDeptId(ddUserDept);
...@@ -806,10 +915,14 @@ public class DdUserServiceImpl implements IDdUserService { ...@@ -806,10 +915,14 @@ public class DdUserServiceImpl implements IDdUserService {
//包含,新增用户到该级部成员 //包含,新增用户到该级部成员
SchoolGradeMentorCopy schoolGradeMentor = new SchoolGradeMentorCopy(); SchoolGradeMentorCopy schoolGradeMentor = new SchoolGradeMentorCopy();
//设置职位 //设置职位
if (StringUtils.isNotNull(deptPositionList) && deptPositionList.size() > 0){ if (deptPositionList.size() > 0){
for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) { for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) {
if (deptPosition.getDeptId().equals(sysDdDept.getDdDeptId())){ if (deptPosition.getDeptId().equals(sysDdDept.getDdDeptId())){
schoolGradeMentor.setTeacherPost(deptPosition.getTitle()); if (StringUtils.isNotEmpty(deptPosition.getTitle())){
schoolGradeMentor.setTeacherPost(deptPosition.getTitle());
}else {
schoolGradeMentor.setTeacherPost(ddUser.getTitle());
}
} }
} }
} }
...@@ -836,10 +949,14 @@ public class DdUserServiceImpl implements IDdUserService { ...@@ -836,10 +949,14 @@ public class DdUserServiceImpl implements IDdUserService {
//包含,新增用户到该级部成员 //包含,新增用户到该级部成员
SchoolGradeMentorCopy schoolGradeMentor = new SchoolGradeMentorCopy(); SchoolGradeMentorCopy schoolGradeMentor = new SchoolGradeMentorCopy();
//设置职位 //设置职位
if (StringUtils.isNotNull(deptPositionList) && deptPositionList.size() > 0){ if (deptPositionList.size() > 0){
for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) { for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) {
if (deptPosition.getDeptId().equals(sysDdDept.getDdDeptId())){ if (deptPosition.getDeptId().equals(sysDdDept.getDdDeptId())){
schoolGradeMentor.setTeacherPost(deptPosition.getTitle()); if (StringUtils.isNotEmpty(deptPosition.getTitle())){
schoolGradeMentor.setTeacherPost(deptPosition.getTitle());
}else {
schoolGradeMentor.setTeacherPost(ddUser.getTitle());
}
} }
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment