Commit 0e3c7e73 by xuwenhao

修改用户事件订阅

parent b3218b57
......@@ -85,31 +85,45 @@ public class DdUserServiceImpl implements IDdUserService {
//多部门任职信息
List<OapiV2UserGetResponse.DeptPosition> deptPositionList = ddUser.getDeptPositionList();
//拿取钉钉用户部门id列表的第一个存在的部门id存到用户表中
//部门列表
List<Long> deptIdList = ddUser.getDeptIdList();
//用户部门列表
List<Long> ddUserDepts = new ArrayList<>();
for (Long ddUserDeptId : deptIdList) {
SysDdDept dept1 = ddDeptMapper.selectDeptByDdDeptId(ddUserDeptId);
if (StringUtils.isNotNull(dept1)){
ddUserDepts.add(dept1.getDeptId());
}
}
//用户部门列表(用于判断是否是级部成员)
List<Long> ddUserDepts1 = new ArrayList<>();
//用户表数据
SysDdUser sysDdUser = new SysDdUser();
sysDdUser.setDdUserDepts(ddUserDepts);
//根据钉钉部门id查询部门信息
for (Long ddDeptId : deptIdList) {
SysDdDept dept = ddDeptMapper.selectDeptByDdDeptId(ddDeptId);
if (StringUtils.isNotNull(dept)){
sysDdUser.setDeptId(dept.getDeptId());
break;
//设置主部门和任职部门
if (deptPositionList.size()>0){
for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) {
if (StringUtils.isNotNull(deptPosition.getIsMain())){
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());
}
}
}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.setPassword(SecurityUtils.encryptPassword("Ez2023@345"));
sysDdUser.setUserName(ddUser.getName());
......@@ -146,7 +160,7 @@ public class DdUserServiceImpl implements IDdUserService {
ddTeacherMapper.addTeacherList(sysDdTeacher);
//判断用户是否为级部成员
for (Long deptId : ddUserDepts) {
for (Long deptId : ddUserDepts1) {
//根据部门id获取部门信息
SysDdDept sysDdDept = ddDeptMapper.selectDeptByDeptId(deptId);
//判断是否是年级部成员
......@@ -163,10 +177,15 @@ public class DdUserServiceImpl implements IDdUserService {
//包含,新增用户到该级部成员
SchoolGradeMentorCopy schoolGradeMentor = new SchoolGradeMentorCopy();
//设置职位
if (StringUtils.isNotNull(deptPositionList) && deptPositionList.size() > 0){
if (deptPositionList.size() > 0){
for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) {
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 {
//包含,新增用户到该级部成员
SchoolGradeMentorCopy schoolGradeMentor = new SchoolGradeMentorCopy();
//设置职位
if (StringUtils.isNotNull(deptPositionList) && deptPositionList.size() > 0){
if (deptPositionList.size() > 0){
for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) {
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 {
for (OapiV2UserGetResponse.UserGetResponse ddUser : ddUserAll) {
if (ddUserId.equals(ddUser.getUserid())){
//拿取钉钉用户部门id列表的第一个存在的部门id存到用户表中
//部门列表
List<Long> deptIdList = ddUser.getDeptIdList();
//多部门任职信息
List<OapiV2UserGetResponse.DeptPosition> deptPositionList = ddUser.getDeptPositionList();
//用户部门列表
List<Long> ddUserDepts = new ArrayList<>();
for (Long ddUserDeptId : deptIdList) {
SysDdDept dept1 = ddDeptMapper.selectDeptByDdDeptId(ddUserDeptId);
if (StringUtils.isNotNull(dept1)){
ddUserDepts.add(dept1.getDeptId());
}
}
//用户部门列表(用于判断是否是级部成员)
List<Long> ddUserDepts1 = new ArrayList<>();
//根据钉钉部门id查询部门信息
//新增用户到用户表
SysDdUser sysDdUser = new SysDdUser();
sysDdUser.setDdUserDepts(ddUserDepts);
//根据钉钉部门id查询部门信息
for (Long ddDeptId : deptIdList) {
SysDdDept dept = ddDeptMapper.selectDeptByDdDeptId(ddDeptId);
if (StringUtils.isNotNull(dept)){
sysDdUser.setDeptId(dept.getDeptId());
break;
//设置主部门和任职部门
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 (StringUtils.isNull(sysDdUser.getDeptId())){
sysDdUser.setDeptId(ddUserDepts1.get(0));
ddUserDepts.remove(ddUserDepts1.get(0));
}
sysDdUser.setDdUserDepts(ddUserDepts);
sysDdUser.setLoginName(ddUser.getName());
sysDdUser.setPassword(SecurityUtils.encryptPassword("Ez2023@345"));
sysDdUser.setUserName(ddUser.getName());
......@@ -349,11 +383,8 @@ public class DdUserServiceImpl implements IDdUserService {
sysDdTeacher.setCreateTime(DateUtils.getNowDate());
ddTeacherMapper.addTeacherList(sysDdTeacher);
//多部门任职信息
List<OapiV2UserGetResponse.DeptPosition> deptPositionList = ddUser.getDeptPositionList();
//判断用户是否是级部成员,如果是,新增到级部成员
for (Long deptId : ddUserDepts) {
for (Long deptId : ddUserDepts1) {
//根据部门id获取部门信息
SysDdDept sysDdDept = ddDeptMapper.selectDeptByDeptId(deptId);
//判断是否是年级部成员
......@@ -370,10 +401,14 @@ public class DdUserServiceImpl implements IDdUserService {
//包含,新增用户到该级部成员
SchoolGradeMentorCopy schoolGradeMentor = new SchoolGradeMentorCopy();
//设置职位
if (StringUtils.isNotNull(deptPositionList) && deptPositionList.size() > 0){
if (deptPositionList.size() > 0){
for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) {
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 {
//包含,新增用户到该级部成员
SchoolGradeMentorCopy schoolGradeMentor = new SchoolGradeMentorCopy();
//设置职位
if (StringUtils.isNotNull(deptPositionList) && deptPositionList.size() > 0){
if (deptPositionList.size() > 0){
for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) {
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 {
}
//更新的部门id列表
List<Long> deptIds = new ArrayList<>();
//更新的部门id列表(用于判断是否是级部成员)
List<Long> deptIds1 = new ArrayList<>();
//判断系统用户和钉钉用户部门是否发生改变
boolean isEqual = ddDeptIds.containsAll(deptIdList1) && deptIdList1.containsAll(ddDeptIds);
if (!isEqual) {
//发生改变更新用户信息
for (Long ddUserDeptId : deptIdList1) {
SysDdDept dept1 = ddDeptMapper.selectDeptByDdDeptId(ddUserDeptId);
if (StringUtils.isNotNull(dept1)){
deptIds.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());
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.deleteGradeMentor(sysDdUser.getUserId());
//新增用户和部门关系
sysDdUser.setDeptId(deptIds.get(0));
SysDdUserDept sysDdUserDept = new SysDdUserDept();
sysDdUserDept.setUserId(sysDdUser.getUserId());
for (Long ddUserDept : deptIds) {
sysDdUserDept.setDeptId(ddUserDept);
ddUserMapper.insertDdUserDept(sysDdUserDept);
}
for (Long ddUserDept : deptIds1){
//根据部门id获取部门信息
SysDdDept sysDdDept = ddDeptMapper.selectDeptByDeptId(ddUserDept);
//判断是否是年级部成员
......@@ -513,10 +571,14 @@ public class DdUserServiceImpl implements IDdUserService {
//包含,新增用户到该级部成员
SchoolGradeMentorCopy schoolGradeMentor = new SchoolGradeMentorCopy();
//设置职位
if (StringUtils.isNotNull(deptPositionList) && deptPositionList.size() > 0){
if (deptPositionList.size() > 0){
for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) {
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 {
//包含,新增用户到该级部成员
SchoolGradeMentorCopy schoolGradeMentor = new SchoolGradeMentorCopy();
//设置职位
if (StringUtils.isNotNull(deptPositionList) && deptPositionList.size() > 0){
if (deptPositionList.size() > 0){
for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) {
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 {
//多部门任职信息
List<OapiV2UserGetResponse.DeptPosition> deptPositionList = ddUser.getDeptPositionList();
//钉钉用户的钉钉部门id列表
List<Long> deptIdList = ddUser.getDeptIdList();
//用户系统部门id列表
List<Long> ddUserDepts = new ArrayList<>();
for (Long ddUserDeptId : deptIdList) {
SysDdDept dept1 = ddDeptMapper.selectDeptByDdDeptId(ddUserDeptId);
if (StringUtils.isNotNull(dept1)){
ddUserDepts.add(dept1.getDeptId());
}
}
//用户系统部门id列表(用于判断是否是级部成员)
List<Long> ddUserDepts1 = new ArrayList<>();
//用户表数据
SysDdUser sysDdUser = new SysDdUser();
sysDdUser.setDdUserDepts(ddUserDepts);
//根据钉钉部门id查询部门信息
for (Long ddDeptId : deptIdList) {
SysDdDept dept = ddDeptMapper.selectDeptByDdDeptId(ddDeptId);
if (StringUtils.isNotNull(dept)){
sysDdUser.setDeptId(dept.getDeptId());
break;
//设置主部门和任职部门
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 (StringUtils.isNull(sysDdUser.getDeptId())){
sysDdUser.setDeptId(ddUserDepts1.get(0));
ddUserDepts.remove(ddUserDepts1.get(0));
}
sysDdUser.setDdUserDepts(ddUserDepts);
sysDdUser.setLoginName(ddUser.getName());
sysDdUser.setPassword(SecurityUtils.encryptPassword("Ez2023@345"));
sysDdUser.setUserName(ddUser.getName());
......@@ -680,7 +756,7 @@ public class DdUserServiceImpl implements IDdUserService {
ddTeacherMapper.addTeacherList(sysDdTeacher);
//判断用户是否是级部成员,如果是,新增到级部成员
for (Long deptId : ddUserDepts) {
for (Long deptId : ddUserDepts1) {
//根据部门id获取部门信息
SysDdDept sysDdDept = ddDeptMapper.selectDeptByDeptId(deptId);
//判断是否是年级部成员
......@@ -697,10 +773,14 @@ public class DdUserServiceImpl implements IDdUserService {
//包含,新增用户到该级部成员
SchoolGradeMentorCopy schoolGradeMentor = new SchoolGradeMentorCopy();
//设置职位
if (StringUtils.isNotNull(deptPositionList) && deptPositionList.size() > 0){
if (deptPositionList.size() > 0){
for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) {
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 {
//包含,新增用户到该级部成员
SchoolGradeMentorCopy schoolGradeMentor = new SchoolGradeMentorCopy();
//设置职位
if (StringUtils.isNotNull(deptPositionList) && deptPositionList.size() > 0){
if (deptPositionList.size() > 0){
for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) {
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 {
OapiV2UserGetResponse.UserGetResponse ddUser = dingUserUtils.getUser(userId);
//查询系统用户详情
SysDdUser sysDdUser = ddUserMapper.selectDdUserByDdUserId(userId);
if (StringUtils.isNull(sysDdUser)){
return 1;
}
//钉钉用户的钉钉部门id列表
List<Long> deptIdList = ddUser.getDeptIdList();
//多部门任职信息
List<OapiV2UserGetResponse.DeptPosition> deptPositionList = ddUser.getDeptPositionList();
//用户系统部门id列表
List<Long> ddUserDepts = new ArrayList<>();
for (Long ddUserDeptId : deptIdList) {
SysDdDept dept1 = ddDeptMapper.selectDeptByDdDeptId(ddUserDeptId);
if (StringUtils.isNotNull(dept1)){
ddUserDepts.add(dept1.getDeptId());
//用户系统部门id列表(用于判断是否是级部成员)
List<Long> ddUserDepts1 = new ArrayList<>();
//设置主部门和任职部门
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());
//删除级部成员信息
......@@ -789,6 +896,8 @@ public class DdUserServiceImpl implements IDdUserService {
for (Long ddUserDept : ddUserDepts) {
sysDdUserDept.setDeptId(ddUserDept);
ddUserMapper.insertDdUserDept(sysDdUserDept);
}
for (Long ddUserDept : ddUserDepts1) {
//根据部门id获取部门信息
SysDdDept sysDdDept = ddDeptMapper.selectDeptByDeptId(ddUserDept);
......@@ -806,10 +915,14 @@ public class DdUserServiceImpl implements IDdUserService {
//包含,新增用户到该级部成员
SchoolGradeMentorCopy schoolGradeMentor = new SchoolGradeMentorCopy();
//设置职位
if (StringUtils.isNotNull(deptPositionList) && deptPositionList.size() > 0){
if (deptPositionList.size() > 0){
for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) {
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 {
//包含,新增用户到该级部成员
SchoolGradeMentorCopy schoolGradeMentor = new SchoolGradeMentorCopy();
//设置职位
if (StringUtils.isNotNull(deptPositionList) && deptPositionList.size() > 0){
if (deptPositionList.size() > 0){
for (OapiV2UserGetResponse.DeptPosition deptPosition : deptPositionList) {
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