WANG 6 jaren geleden
bovenliggende
commit
3f85b013d7

+ 8 - 6
examcloud-core-basic-api-provider/src/main/java/cn/com/qmth/examcloud/core/basic/api/controller/CourseController.java

@@ -466,14 +466,15 @@ public class CourseController extends ControllerSupport {
 		List<Long> courseIds = Stream.of(ids.split(",")).map(s -> Long.parseLong(s.trim()))
 				.collect(Collectors.toList());
 
+		List<CourseEntity> savedList = Lists.newArrayList();
 		for (Long courseId : courseIds) {
 			CourseEntity course = GlobalHelper.getEntity(courseRepo, courseId, CourseEntity.class);
 			course.setEnable(false);
-			courseRepo.save(course);
+			CourseEntity saved = courseRepo.saveAndFlush(course);
+			savedList.add(saved);
 		}
 
-		for (Long courseId : courseIds) {
-			CourseEntity ce = GlobalHelper.getEntity(courseRepo, courseId, CourseEntity.class);
+		for (CourseEntity ce : savedList) {
 			SyncCourseReq req = new SyncCourseReq();
 			req.setCode(ce.getCode());
 			req.setEnable(ce.getEnable());
@@ -501,14 +502,15 @@ public class CourseController extends ControllerSupport {
 		List<Long> courseIds = Stream.of(ids.split(",")).map(s -> Long.parseLong(s.trim()))
 				.collect(Collectors.toList());
 
+		List<CourseEntity> savedList = Lists.newArrayList();
 		for (Long courseId : courseIds) {
 			CourseEntity course = GlobalHelper.getEntity(courseRepo, courseId, CourseEntity.class);
 			course.setEnable(true);
-			courseRepo.save(course);
+			CourseEntity saved = courseRepo.saveAndFlush(course);
+			savedList.add(saved);
 		}
 
-		for (Long courseId : courseIds) {
-			CourseEntity ce = GlobalHelper.getEntity(courseRepo, courseId, CourseEntity.class);
+		for (CourseEntity ce : savedList) {
 			SyncCourseReq req = new SyncCourseReq();
 			req.setCode(ce.getCode());
 			req.setEnable(ce.getEnable());

+ 19 - 2
examcloud-core-basic-service/src/main/java/cn/com/qmth/examcloud/core/basic/service/impl/OrgServiceImpl.java

@@ -109,6 +109,7 @@ public class OrgServiceImpl implements OrgService {
 			enable = true;
 		}
 
+		long updateTime = 0L;
 		OrgEntity orgEntity = orgRepo.findByParentIdIsNullAndCode(code);
 		if (null == orgEntity) {
 			OrgEntity tmp = new OrgEntity();
@@ -121,6 +122,10 @@ public class OrgServiceImpl implements OrgService {
 			if (!orgEntity.getId().equals(orgEntity.getRootId())) {
 				throw new StatusException("150003", "数据错误");
 			}
+
+			if (null != orgEntity.getUpdateTime()) {
+				updateTime = orgEntity.getUpdateTime().getTime();
+			}
 		}
 
 		orgEntity.setRootId(orgEntity.getId());
@@ -131,7 +136,19 @@ public class OrgServiceImpl implements OrgService {
 		orgEntity.setDomainName(domainName);
 		orgEntity.setRemark(remark);
 
-		OrgEntity saved = orgRepo.save(orgEntity);
+		OrgEntity saved = orgRepo.saveAndFlush(orgEntity);
+
+		// 同步操作
+		if (updateTime != saved.getUpdateTime().getTime()) {
+			SyncOrgReq req = new SyncOrgReq();
+			req.setEnable(saved.getEnable());
+			req.setId(saved.getId());
+			req.setName(saved.getName());
+			req.setParentId(saved.getParentId());
+			req.setRootId(saved.getRootId());
+			req.setSyncType("update");
+			dataSyncCloudService.syncOrg(req);
+		}
 
 		Map<DynamicEnum, String> map = checkAndGetOrgProperties(properties);
 		for (Entry<DynamicEnum, String> entry : map.entrySet()) {
@@ -227,7 +244,7 @@ public class OrgServiceImpl implements OrgService {
 		orgEntity.setTelephone(telephone);
 		orgEntity.setRemark(remark);
 
-		OrgEntity saved = orgRepo.save(orgEntity);
+		OrgEntity saved = orgRepo.saveAndFlush(orgEntity);
 
 		// 同步操作
 		if (updateTime != saved.getUpdateTime().getTime()) {

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

@@ -34,7 +34,7 @@ public class UserServiceImpl implements UserService {
 			updateTime = one.getUpdateTime().getTime();
 		}
 
-		UserEntity saved = userRepo.save(user);
+		UserEntity saved = userRepo.saveAndFlush(user);
 
 		if (updateTime != saved.getUpdateTime().getTime()) {
 			SyncUserReq r = new SyncUserReq();