Sfoglia il codice sorgente

增加岗位管理范围

river 4 anni fa
parent
commit
525e38d65d

+ 11 - 0
mec-auth/mec-auth-api/src/main/java/com/ym/mec/auth/api/entity/SysUser.java

@@ -141,6 +141,9 @@ public class SysUser implements Serializable{
 	@ApiModelProperty(value = "岗位id",required = false)
 	private String postIds;
 
+	@ApiModelProperty(value = "岗位管理部门",required = false)
+	private String postDeptIds;
+
 	@ApiModelProperty(value = "银行卡号",required = false)
 	private String bankCard;
 
@@ -465,4 +468,12 @@ public class SysUser implements Serializable{
 	public void setOpenBankAddress(String openBankAddress) {
 		this.openBankAddress = openBankAddress;
 	}
+
+	public String getPostDeptIds() {
+		return postDeptIds;
+	}
+
+	public void setPostDeptIds(String postDeptIds) {
+		this.postDeptIds = postDeptIds;
+	}
 }

+ 11 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/Employee.java

@@ -66,6 +66,9 @@ public class Employee extends SysUser {
 	@ApiModelProperty(value = "开户行",required = false)
 	private String openBankAddress;
 
+	@ApiModelProperty(value = "岗位管理部门",required = false)
+	private String postDeptIds;
+
 	/**  */
 	private java.util.Date updateTime;
 
@@ -259,4 +262,12 @@ public class Employee extends SysUser {
 	public void setOpenBankAddress(String openBankAddress) {
 		this.openBankAddress = openBankAddress;
 	}
+
+	public String getPostDeptIds() {
+		return postDeptIds;
+	}
+
+	public void setPostDeptIds(String postDeptIds) {
+		this.postDeptIds = postDeptIds;
+	}
 }

+ 9 - 9
mec-biz/src/main/java/com/ym/mec/biz/service/OaUserService.java

@@ -1,37 +1,37 @@
 package com.ym.mec.biz.service;
 
-import com.ym.mec.oa.entity.OAUser;
+import com.ym.mec.biz.dal.entity.Employee;
 
 public interface OaUserService {
 
     /**
      * 添加OA用户
-     * @param oaUser
+     * @param employee
      * @return
      */
-    Object addOaUser(OAUser oaUser);
+    Object addOaUser(Employee employee);
 
 
     /**
      * 修改OA用户
-     * @param oaUser
+     * @param employee
      * @return
      */
-    Object updateOaUser(OAUser oaUser);
+    Object updateOaUser(Employee employee);
 
 
     /**
      * 删除OA用户(软删除)
-     * @param oaUser
+     * @param employee
      * @return
      */
-    Object delOaUser(OAUser oaUser);
+    Object delOaUser(Employee employee);
 
 
     /**
      * 恢复OA用户
-     * @param oaUser
+     * @param employee
      * @return
      */
-    Object reInsertOaUser(OAUser oaUser);
+    Object reInsertOaUser(Employee employee);
 }

+ 9 - 29
mec-biz/src/main/java/com/ym/mec/biz/service/impl/EmployeeServiceImpl.java

@@ -4,7 +4,6 @@ import java.util.*;
 import java.util.stream.Collectors;
 
 import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONArray;
 import com.ym.mec.biz.dal.dao.*;
 import com.ym.mec.biz.dal.entity.Organization;
 import com.ym.mec.biz.dal.enums.GroupType;
@@ -110,20 +109,12 @@ public class EmployeeServiceImpl extends BaseServiceImpl<Integer, Employee>  imp
 		ImResult imResult = imFeignService.register(new ImUserModel(employee.getId().toString(), employee.getUsername(),null));
 		employee.setImToken(imResult.getToken());
 		teacherDao.updateUser(employee);
-
-		//添加到OA
-		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.setDeptIds(JSON.parseArray(employee.getDeptIds(), Integer.class));
-		oaUser.setPostIds(JSON.parseArray(employee.getPostIds(), Integer.class));
 		if(user != null){
-			oaUser.setAvatar(user.getAvatar());
+			employee.setAvatar(user.getAvatar());
 		}
-		oaUserService.addOaUser(oaUser);
+
+		//添加到OA
+		oaUserService.addOaUser(employee);
 	}
 
 	@Override
@@ -153,17 +144,10 @@ public class EmployeeServiceImpl extends BaseServiceImpl<Integer, Employee>  imp
 		imGroupDao.updateUserFriendNickname(employee.getUserId(), employee.getRealName());
 		imFeignService.update(new ImUserModel(employee.getUserId().toString(),employee.getRealName(),sysUser.getAvatar()));
 
+		employee.setAvatar(sysUser.getAvatar());
+
 		//更新OA信息
-		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.setDeptIds(JSON.parseArray(employee.getDeptIds(), Integer.class));
-		oaUser.setPostIds(JSON.parseArray(employee.getPostIds(), Integer.class));
-		oaUser.setAvatar(sysUser.getAvatar());
-		oaUserService.updateOaUser(oaUser);
+		oaUserService.updateOaUser(employee);
 	}
 
 	@Override
@@ -244,18 +228,14 @@ public class EmployeeServiceImpl extends BaseServiceImpl<Integer, Employee>  imp
 				sysUserFeignService.exitByPhone("system", sysUser.getPhone());
 
 				//更新OA信息
-				OAUser oaUser = new OAUser();
-				oaUser.setMecUserId(employee.getUserId());
-				oaUserService.delOaUser(oaUser);
+				oaUserService.delOaUser(employee);
 				break;
 			case REINSTATE:
 				//离职,如果有关联课程组教务老师,
 				employeeDao.updateUserDemissionDate(employeeId);
 
 				//更新OA信息
-				oaUser = new OAUser();
-				oaUser.setMecUserId(employee.getUserId());
-				oaUserService.reInsertOaUser(oaUser);
+				oaUserService.reInsertOaUser(employee);
 				break;
 		}
 	}

+ 57 - 21
mec-biz/src/main/java/com/ym/mec/biz/service/impl/OaServiceImpl.java

@@ -1,5 +1,7 @@
 package com.ym.mec.biz.service.impl;
 
+import com.alibaba.fastjson.JSON;
+import com.ym.mec.biz.dal.entity.Employee;
 import com.ym.mec.biz.service.OaUserService;
 import com.ym.mec.oa.OaFeignService;
 import com.ym.mec.oa.entity.OAUser;
@@ -7,34 +9,68 @@ 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.stream.Collectors;
+
 
 @Service
 public class OaServiceImpl implements OaUserService {
-	@Autowired
-	private OaFeignService oaFeignService;
+    @Autowired
+    private OaFeignService oaFeignService;
 
     @Override
-	@Async
-    public Object addOaUser(OAUser oaUser) {
-		return oaFeignService.register(oaUser);
+    @Async
+    public Object addOaUser(Employee employee) {
+        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.setDeptIds(JSON.parseArray(employee.getDeptIds(), Integer.class));
+        oaUser.setPostIds(JSON.parseArray(employee.getPostIds(), Integer.class));
+        oaUser.setAvatar(employee.getAvatar());
+        oaUser.setPostDeptIds(JSON.parseArray(employee.getPostDeptIds(), OAUser.postDept.class));
+        if (oaUser.getPostDeptIds() != null) {
+            List<Integer> postIds = oaUser.getPostDeptIds().stream().map(OAUser.postDept::getPostId).collect(Collectors.toList());
+            oaUser.setPostIds(postIds);
+        }
+        return oaFeignService.register(oaUser);
     }
 
-	@Override
-	@Async
-	public Object updateOaUser(OAUser oaUser) {
-		return oaFeignService.updateUser(oaUser);
-	}
-
-	@Override
-	@Async
-	public Object delOaUser(OAUser oaUser) {
-		return oaFeignService.delUser(oaUser);
+    @Override
+    @Async
+    public Object updateOaUser(Employee employee) {
+        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.setDeptIds(JSON.parseArray(employee.getDeptIds(), Integer.class));
+        oaUser.setPostIds(JSON.parseArray(employee.getPostIds(), Integer.class));
+        oaUser.setAvatar(employee.getAvatar());
+        oaUser.setPostDeptIds(JSON.parseArray(employee.getPostDeptIds(), OAUser.postDept.class));
+        if (oaUser.getPostDeptIds() != null) {
+            List<Integer> postIds = oaUser.getPostDeptIds().stream().map(OAUser.postDept::getPostId).collect(Collectors.toList());
+            oaUser.setPostIds(postIds);
+        }
+        return oaFeignService.updateUser(oaUser);
+    }
 
-	}
+    @Override
+    @Async
+    public Object delOaUser(Employee employee) {
+        OAUser oaUser = new OAUser();
+        oaUser.setMecUserId(employee.getUserId());
+        return oaFeignService.delUser(oaUser);
+    }
 
-	@Override
-	@Async
-	public Object reInsertOaUser(OAUser oaUser) {
-		return oaFeignService.reInsertUser(oaUser);
-	}
+    @Override
+    @Async
+    public Object reInsertOaUser(Employee employee) {
+        OAUser oaUser = new OAUser();
+        oaUser.setMecUserId(employee.getUserId());
+        return oaFeignService.reInsertUser(oaUser);
+    }
 }

+ 33 - 0
mec-client-api/src/main/java/com/ym/mec/oa/entity/OAUser.java

@@ -19,6 +19,39 @@ public class OAUser {
 
     private List<Integer> postIds;
 
+    private List<postDept> postDeptIds;
+
+    public List<postDept> getPostDeptIds() {
+        return postDeptIds;
+    }
+
+    public void setPostDeptIds(List<postDept> postDeptIds) {
+        this.postDeptIds = postDeptIds;
+    }
+
+
+    public class postDept {
+        private Integer postId;
+
+        private List<Integer> deptIds;
+
+        public Integer getPostId() {
+            return postId;
+        }
+
+        public void setPostId(Integer postId) {
+            this.postId = postId;
+        }
+
+        public List<Integer> getDeptIds() {
+            return deptIds;
+        }
+
+        public void setDeptIds(List<Integer> deptIds) {
+            this.deptIds = deptIds;
+        }
+    }
+
     public Integer getMecUserId() {
         return mecUserId;
     }

+ 1 - 0
mec-web/src/main/java/com/ym/mec/web/controller/EmployeeController.java

@@ -140,6 +140,7 @@ public class EmployeeController extends BaseController {
             sysUser.setPostIds(employee.getPostIds());
             sysUser.setBankCard(employee.getBankCard());
             sysUser.setOpenBankAddress(employee.getOpenBankAddress());
+            sysUser.setPostDeptIds(employee.getPostDeptIds());
             return succeed(sysUser);
         }
         return failed("获取用户信息失败");