|
@@ -1,19 +1,22 @@
|
|
|
package com.ym.mec.biz.service.impl;
|
|
|
|
|
|
+import java.util.List;
|
|
|
+import java.util.Objects;
|
|
|
+import java.util.stream.Collectors;
|
|
|
+
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.scheduling.annotation.Async;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+
|
|
|
import com.alibaba.fastjson.JSON;
|
|
|
+import com.ym.mec.auth.api.entity.SysUser;
|
|
|
import com.ym.mec.biz.dal.entity.Employee;
|
|
|
+import com.ym.mec.biz.dal.entity.Teacher;
|
|
|
import com.ym.mec.biz.service.OaUserService;
|
|
|
import com.ym.mec.oa.OaFeignService;
|
|
|
import com.ym.mec.oa.entity.OAUser;
|
|
|
import com.ym.mec.oa.entity.PostDept;
|
|
|
-import org.apache.commons.lang3.StringUtils;
|
|
|
-import org.springframework.beans.factory.annotation.Autowired;
|
|
|
-import org.springframework.scheduling.annotation.Async;
|
|
|
-import org.springframework.stereotype.Service;
|
|
|
-
|
|
|
-import java.util.List;
|
|
|
-import java.util.Objects;
|
|
|
-import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
|
@Service
|
|
@@ -23,62 +26,121 @@ public class OaServiceImpl implements OaUserService {
|
|
|
|
|
|
@Override
|
|
|
@Async
|
|
|
- public Object addOaUser(Employee employee) {
|
|
|
+ public Object addOaUser(SysUser user) {
|
|
|
OAUser oaUser = new OAUser();
|
|
|
- oaUser.setMecUserId(employee.getUserId());
|
|
|
- oaUser.setUserName(employee.getRealName());
|
|
|
- oaUser.setNickName(employee.getRealName());
|
|
|
- oaUser.setPhone(employee.getPhone());
|
|
|
- if(employee.getGender() != null){
|
|
|
- oaUser.setSex(employee.getGender().toString());
|
|
|
- }
|
|
|
- oaUser.setDeptId(employee.getDeptId());
|
|
|
- oaUser.setDeptIds(JSON.parseArray(employee.getDeptIds(), Integer.class));
|
|
|
- oaUser.setAvatar(employee.getAvatar());
|
|
|
- oaUser.setPostDeptIds(JSON.parseArray(employee.getPostDeptIds(), PostDept.class));
|
|
|
- if (oaUser.getPostDeptIds() != null) {
|
|
|
- List<Integer> postIds = oaUser.getPostDeptIds().stream().map(PostDept::getPostId).collect(Collectors.toList());
|
|
|
- oaUser.setPostIds(postIds);
|
|
|
- }
|
|
|
+ if (user instanceof Employee) {
|
|
|
+ Employee employee = (Employee) user;
|
|
|
+ oaUser.setMecUserId(employee.getUserId());
|
|
|
+ oaUser.setUserName(employee.getRealName());
|
|
|
+ oaUser.setNickName(employee.getRealName());
|
|
|
+ oaUser.setPhone(employee.getPhone());
|
|
|
+ if (employee.getGender() != null) {
|
|
|
+ oaUser.setSex(employee.getGender().toString());
|
|
|
+ }
|
|
|
+ oaUser.setDeptId(employee.getDeptId());
|
|
|
+ if(StringUtils.isNotBlank(employee.getDeptIds())){
|
|
|
+ oaUser.setDeptIds(JSON.parseArray(employee.getDeptIds(), Integer.class));
|
|
|
+ }
|
|
|
+ oaUser.setAvatar(employee.getAvatar());
|
|
|
+
|
|
|
+ if(StringUtils.isNotBlank(employee.getPostDeptIds())){
|
|
|
+ oaUser.setPostDeptIds(JSON.parseArray(employee.getPostDeptIds(), PostDept.class));
|
|
|
+ }
|
|
|
+ if (oaUser.getPostDeptIds() != null) {
|
|
|
+ List<Integer> postIds = oaUser.getPostDeptIds().stream().map(PostDept::getPostId).collect(Collectors.toList());
|
|
|
+ oaUser.setPostIds(postIds);
|
|
|
+ }
|
|
|
+ }else if(user instanceof Teacher){
|
|
|
+
|
|
|
+ Teacher employee = (Teacher) user;
|
|
|
+ oaUser.setMecUserId(employee.getId());
|
|
|
+ oaUser.setUserName(employee.getRealName());
|
|
|
+ oaUser.setNickName(employee.getRealName());
|
|
|
+ oaUser.setPhone(employee.getPhone());
|
|
|
+ if (employee.getGender() != null) {
|
|
|
+ oaUser.setSex(employee.getGender().toString());
|
|
|
+ }
|
|
|
+ oaUser.setDeptId(employee.getDeptId());
|
|
|
+
|
|
|
+ if(StringUtils.isNotBlank(employee.getDeptIds())){
|
|
|
+ oaUser.setDeptIds(JSON.parseArray(employee.getDeptIds(), Integer.class));
|
|
|
+ }
|
|
|
+ oaUser.setAvatar(employee.getAvatar());
|
|
|
+
|
|
|
+ if(StringUtils.isNotBlank(employee.getPostDeptIds())){
|
|
|
+ oaUser.setPostDeptIds(JSON.parseArray(employee.getPostDeptIds(), PostDept.class));
|
|
|
+ }
|
|
|
+ if (oaUser.getPostDeptIds() != null) {
|
|
|
+ List<Integer> postIds = oaUser.getPostDeptIds().stream().map(PostDept::getPostId).collect(Collectors.toList());
|
|
|
+ oaUser.setPostIds(postIds);
|
|
|
+ }
|
|
|
+ }
|
|
|
return oaFeignService.register(oaUser);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public Object updateOaUser(Employee employee) {
|
|
|
+ public Object updateOaUser(SysUser user) {
|
|
|
OAUser oaUser = new OAUser();
|
|
|
- oaUser.setMecUserId(employee.getUserId());
|
|
|
- oaUser.setUserName(employee.getRealName());
|
|
|
- oaUser.setNickName(employee.getRealName());
|
|
|
- oaUser.setPhone(employee.getPhone());
|
|
|
- oaUser.setSex(employee.getGender().toString());
|
|
|
- oaUser.setAvatar(employee.getAvatar());
|
|
|
- if(Objects.nonNull(employee.getDeptId())){
|
|
|
- oaUser.setDeptId(employee.getDeptId());
|
|
|
- }
|
|
|
- if(Objects.nonNull(employee.getDeptIds())){
|
|
|
- oaUser.setDeptIds(JSON.parseArray(employee.getDeptIds(), Integer.class));
|
|
|
- }
|
|
|
- if(Objects.nonNull(employee.getPostDeptIds())){
|
|
|
- oaUser.setPostDeptIds(JSON.parseArray(employee.getPostDeptIds(), PostDept.class));
|
|
|
- List<Integer> postIds = oaUser.getPostDeptIds().stream().map(PostDept::getPostId).collect(Collectors.toList());
|
|
|
- oaUser.setPostIds(postIds);
|
|
|
+
|
|
|
+ if (user instanceof Employee) {
|
|
|
+ Employee employee = (Employee) user;
|
|
|
+ oaUser.setMecUserId(employee.getUserId());
|
|
|
+ oaUser.setUserName(employee.getRealName());
|
|
|
+ oaUser.setNickName(employee.getRealName());
|
|
|
+ oaUser.setPhone(employee.getPhone());
|
|
|
+ if (employee.getGender() != null) {
|
|
|
+ oaUser.setSex(employee.getGender().toString());
|
|
|
+ }
|
|
|
+ oaUser.setAvatar(employee.getAvatar());
|
|
|
+ if(Objects.nonNull(employee.getDeptId())){
|
|
|
+ oaUser.setDeptId(employee.getDeptId());
|
|
|
+ }
|
|
|
+ if(StringUtils.isNotBlank(employee.getDeptIds())){
|
|
|
+ oaUser.setDeptIds(JSON.parseArray(employee.getDeptIds(), Integer.class));
|
|
|
+ }
|
|
|
+ if(StringUtils.isNotBlank(employee.getPostDeptIds())){
|
|
|
+ oaUser.setPostDeptIds(JSON.parseArray(employee.getPostDeptIds(), PostDept.class));
|
|
|
+ List<Integer> postIds = oaUser.getPostDeptIds().stream().map(PostDept::getPostId).collect(Collectors.toList());
|
|
|
+ oaUser.setPostIds(postIds);
|
|
|
+ }
|
|
|
+ }else if(user instanceof Teacher){
|
|
|
+ Teacher employee = (Teacher) user;
|
|
|
+ oaUser.setMecUserId(employee.getId());
|
|
|
+ oaUser.setUserName(employee.getRealName());
|
|
|
+ oaUser.setNickName(employee.getRealName());
|
|
|
+ oaUser.setPhone(employee.getPhone());
|
|
|
+ if (employee.getGender() != null) {
|
|
|
+ oaUser.setSex(employee.getGender().toString());
|
|
|
+ }
|
|
|
+ oaUser.setAvatar(employee.getAvatar());
|
|
|
+ if(Objects.nonNull(employee.getDeptId())){
|
|
|
+ oaUser.setDeptId(employee.getDeptId());
|
|
|
+ }
|
|
|
+ if(StringUtils.isNotBlank(employee.getDeptIds())){
|
|
|
+ oaUser.setDeptIds(JSON.parseArray(employee.getDeptIds(), Integer.class));
|
|
|
+ }
|
|
|
+ if(StringUtils.isNotBlank(employee.getPostDeptIds())){
|
|
|
+ oaUser.setPostDeptIds(JSON.parseArray(employee.getPostDeptIds(), PostDept.class));
|
|
|
+ List<Integer> postIds = oaUser.getPostDeptIds().stream().map(PostDept::getPostId).collect(Collectors.toList());
|
|
|
+ oaUser.setPostIds(postIds);
|
|
|
+ }
|
|
|
}
|
|
|
return oaFeignService.updateUser(oaUser);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
@Async
|
|
|
- public Object delOaUser(Employee employee) {
|
|
|
+ public Object delOaUser(Integer userId) {
|
|
|
OAUser oaUser = new OAUser();
|
|
|
- oaUser.setMecUserId(employee.getUserId());
|
|
|
+ oaUser.setMecUserId(userId);
|
|
|
return oaFeignService.delUser(oaUser);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
@Async
|
|
|
- public Object reInsertOaUser(Employee employee) {
|
|
|
+ public Object reInsertOaUser(Integer userId) {
|
|
|
OAUser oaUser = new OAUser();
|
|
|
- oaUser.setMecUserId(employee.getUserId());
|
|
|
+ oaUser.setMecUserId(userId);
|
|
|
return oaFeignService.reInsertUser(oaUser);
|
|
|
}
|
|
|
}
|