WANG 6 жил өмнө
parent
commit
dba0121253

+ 2 - 2
examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/UserController.java

@@ -52,7 +52,7 @@ import cn.com.qmth.examcloud.core.basic.dao.entity.OrgEntity;
 import cn.com.qmth.examcloud.core.basic.dao.entity.RoleEntity;
 import cn.com.qmth.examcloud.core.basic.dao.entity.UserEntity;
 import cn.com.qmth.examcloud.core.basic.dao.entity.UserRoleRelationEntity;
-import cn.com.qmth.examcloud.core.basic.service.impl.UserServiceImpl;
+import cn.com.qmth.examcloud.core.basic.service.UserService;
 import io.swagger.annotations.ApiOperation;
 
 /**
@@ -64,7 +64,7 @@ import io.swagger.annotations.ApiOperation;
 public class UserController extends ControllerSupport {
 
 	@Autowired
-	UserServiceImpl userService;
+	UserService userService;
 
 	@Autowired
 	UserRepo userRepo;

+ 5 - 1
examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/provider/UserCloudServiceProvider.java

@@ -45,6 +45,7 @@ import cn.com.qmth.examcloud.core.basic.dao.entity.OrgEntity;
 import cn.com.qmth.examcloud.core.basic.dao.entity.RoleEntity;
 import cn.com.qmth.examcloud.core.basic.dao.entity.UserEntity;
 import cn.com.qmth.examcloud.core.basic.dao.entity.UserRoleRelationEntity;
+import cn.com.qmth.examcloud.core.basic.service.UserService;
 import io.swagger.annotations.ApiOperation;
 
 /**
@@ -70,6 +71,9 @@ public class UserCloudServiceProvider extends ControllerSupport implements UserC
 	@Autowired
 	RoleRepo roleRepo;
 
+	@Autowired
+	UserService userService;
+
 	@Autowired
 	UserRoleRelationRepo userRoleRelationRepo;
 
@@ -99,7 +103,7 @@ public class UserCloudServiceProvider extends ControllerSupport implements UserC
 			userEntity.setPassword(req.getPassword());
 		}
 
-		UserEntity saved = userRepo.save(userEntity);
+		UserEntity saved = userService.save(userEntity);
 
 		List<String> roleCodeList = req.getRoleCodeList();
 

+ 4 - 0
examcloud-core-basic-service/src/main/java/cn/com/qmth/examcloud/core/basic/service/UserService.java

@@ -1,5 +1,7 @@
 package cn.com.qmth.examcloud.core.basic.service;
 
+import cn.com.qmth.examcloud.core.basic.dao.entity.UserEntity;
+
 /**
  * 用户服务
  * 
@@ -8,4 +10,6 @@ package cn.com.qmth.examcloud.core.basic.service;
  */
 public interface UserService {
 
+	UserEntity save(UserEntity user);
+
 }

+ 29 - 1
examcloud-core-basic-service/src/main/java/cn/com/qmth/examcloud/core/basic/service/impl/UserServiceImpl.java

@@ -7,6 +7,8 @@ import cn.com.qmth.examcloud.commons.base.exception.StatusException;
 import cn.com.qmth.examcloud.core.basic.dao.UserRepo;
 import cn.com.qmth.examcloud.core.basic.dao.entity.UserEntity;
 import cn.com.qmth.examcloud.core.basic.service.UserService;
+import cn.com.qmth.examcloud.task.api.DataSyncCloudService;
+import cn.com.qmth.examcloud.task.api.request.SyncUserReq;
 
 /**
  * 用户服务类 Created by songyue on 17/1/13.
@@ -17,13 +19,39 @@ public class UserServiceImpl implements UserService {
 	@Autowired
 	UserRepo userRepo;
 
+	@Autowired
+	DataSyncCloudService dataSyncCloudService;
+
 	public UserEntity save(UserEntity user) {
 		UserEntity one = userRepo.findByRootOrgIdAndLoginName(user.getRootOrgId(),
 				user.getLoginName());
 		if (one != null && (!one.getId().equals(user.getId()))) {
 			throw new StatusException("B-150002", "登录名已存在");
 		}
-		return userRepo.save(user);
+
+		long updateTime = 0L;
+		if (null != one && null != one.getUpdateTime()) {
+			updateTime = one.getUpdateTime().getTime();
+		}
+
+		UserEntity saved = userRepo.save(user);
+
+		if (updateTime != saved.getUpdateTime().getTime()) {
+			SyncUserReq r = new SyncUserReq();
+			r.setEnable(saved.getEnable());
+			r.setId(saved.getId());
+			r.setLoginName(saved.getLoginName());
+			r.setName(saved.getName());
+			r.setOrgId(saved.getOrgId());
+			r.setPassword(saved.getPassword());
+			r.setPhoneNumber(saved.getPhoneNumber());
+			r.setRootOrgId(saved.getRootOrgId());
+			r.setSyncType("update");
+
+			dataSyncCloudService.syncUser(r);
+		}
+
+		return saved;
 	}
 
 }