|
@@ -1,20 +1,11 @@
|
|
|
package cn.com.qmth.examcloud.task.api.provider;
|
|
|
|
|
|
-import java.util.List;
|
|
|
-
|
|
|
-import org.apache.commons.collections.CollectionUtils;
|
|
|
-import org.apache.commons.lang3.StringUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.web.bind.annotation.PostMapping;
|
|
|
import org.springframework.web.bind.annotation.RequestBody;
|
|
|
import org.springframework.web.bind.annotation.RequestMapping;
|
|
|
import org.springframework.web.bind.annotation.RestController;
|
|
|
|
|
|
-import cn.com.qmth.examcloud.commons.api.HandleSyncCloudService;
|
|
|
-import cn.com.qmth.examcloud.commons.base.exception.StatusException;
|
|
|
-import cn.com.qmth.examcloud.commons.base.util.JsonUtil;
|
|
|
-import cn.com.qmth.examcloud.commons.base.util.PropertiesUtil;
|
|
|
-import cn.com.qmth.examcloud.commons.base.util.RegExpUtil;
|
|
|
import cn.com.qmth.examcloud.commons.web.support.ControllerSupport;
|
|
|
import cn.com.qmth.examcloud.task.api.DataSyncCloudService;
|
|
|
import cn.com.qmth.examcloud.task.api.request.SyncCourseReq;
|
|
@@ -29,8 +20,7 @@ import cn.com.qmth.examcloud.task.api.response.SyncExamStudentResp;
|
|
|
import cn.com.qmth.examcloud.task.api.response.SyncOrgResp;
|
|
|
import cn.com.qmth.examcloud.task.api.response.SyncSpecialtyResp;
|
|
|
import cn.com.qmth.examcloud.task.api.response.SyncStudentResp;
|
|
|
-import cn.com.qmth.examcloud.task.dao.DataSyncRepo;
|
|
|
-import cn.com.qmth.examcloud.task.dao.entity.DataSyncEntity;
|
|
|
+import cn.com.qmth.examcloud.task.service.DataSyncService;
|
|
|
|
|
|
/**
|
|
|
* 数据同步
|
|
@@ -45,13 +35,10 @@ public class DataSyncCloudServiceProvider extends ControllerSupport
|
|
|
implements
|
|
|
DataSyncCloudService {
|
|
|
|
|
|
- @Autowired
|
|
|
- DataSyncRepo dataSyncRepo;
|
|
|
+ private static final long serialVersionUID = -2880611326177571371L;
|
|
|
|
|
|
@Autowired
|
|
|
- HandleSyncCloudService handleSyncCloudService;
|
|
|
-
|
|
|
- private static final long serialVersionUID = -2880611326177571371L;
|
|
|
+ DataSyncService dataSyncService;
|
|
|
|
|
|
@PostMapping("syncCourse")
|
|
|
@Override
|
|
@@ -71,47 +58,22 @@ public class DataSyncCloudServiceProvider extends ControllerSupport
|
|
|
@Override
|
|
|
public SyncStudentResp syncStudent(@RequestBody SyncStudentReq req) {
|
|
|
|
|
|
- String group = PropertiesUtil.getString("$sync.syncStudent.group");
|
|
|
- if (StringUtils.isBlank(group)) {
|
|
|
- throw new StatusException("T-001001", "group is not configured");
|
|
|
- }
|
|
|
-
|
|
|
- List<String> componentList = RegExpUtil.findAll(group, "[^\\,]+");
|
|
|
-
|
|
|
- if (CollectionUtils.isEmpty(componentList)) {
|
|
|
- throw new StatusException("T-001001", "no component");
|
|
|
- }
|
|
|
-
|
|
|
- cn.com.qmth.examcloud.commons.api.request.SyncStudentReq request = new cn.com.qmth.examcloud.commons.api.request.SyncStudentReq();
|
|
|
- request.setEnable(req.getEnable());
|
|
|
- request.setId(req.getId());
|
|
|
- request.setIdentityNumber(req.getIdentityNumber());
|
|
|
- request.setName(req.getName());
|
|
|
- request.setOrgCode(req.getOrgCode());
|
|
|
- request.setOrgId(req.getOrgId());
|
|
|
- request.setOrgName(req.getOrgName());
|
|
|
- request.setPhoneNumber(req.getPhoneNumber());
|
|
|
- request.setPhotoPath(req.getPhotoPath());
|
|
|
- request.setRootOrgId(req.getRootOrgId());
|
|
|
- request.setSecurityPhone(req.getSecurityPhone());
|
|
|
- request.setStudentCode(req.getStudentCode());
|
|
|
- request.setSyncType(req.getSyncType());
|
|
|
-
|
|
|
- for (String component : componentList) {
|
|
|
- String url = PropertiesUtil.getString("$sync.syncStudent.component." + component);
|
|
|
- request.setUrl(url);
|
|
|
- try {
|
|
|
- handleSyncCloudService.syncStudent(request);
|
|
|
- } catch (Exception e) {
|
|
|
- DataSyncEntity entity = new DataSyncEntity();
|
|
|
- entity.setMethodName("syncCourse");
|
|
|
- entity.setParamType(
|
|
|
- cn.com.qmth.examcloud.commons.api.request.SyncStudentReq.class.getName());
|
|
|
- entity.setSyncNum(0);
|
|
|
- entity.setParamJson(JsonUtil.toJson(request));
|
|
|
- dataSyncRepo.saveAndFlush(entity);
|
|
|
- }
|
|
|
- }
|
|
|
+ cn.com.qmth.examcloud.commons.api.request.SyncStudentReq r = new cn.com.qmth.examcloud.commons.api.request.SyncStudentReq();
|
|
|
+ r.setEnable(req.getEnable());
|
|
|
+ r.setId(req.getId());
|
|
|
+ r.setIdentityNumber(req.getIdentityNumber());
|
|
|
+ r.setName(req.getName());
|
|
|
+ r.setOrgCode(req.getOrgCode());
|
|
|
+ r.setOrgId(req.getOrgId());
|
|
|
+ r.setOrgName(req.getOrgName());
|
|
|
+ r.setPhoneNumber(req.getPhoneNumber());
|
|
|
+ r.setPhotoPath(req.getPhotoPath());
|
|
|
+ r.setRootOrgId(req.getRootOrgId());
|
|
|
+ r.setSecurityPhone(req.getSecurityPhone());
|
|
|
+ r.setStudentCode(req.getStudentCode());
|
|
|
+ r.setSyncType(req.getSyncType());
|
|
|
+
|
|
|
+ dataSyncService.syncStudent(r);
|
|
|
|
|
|
SyncStudentResp resp = new SyncStudentResp();
|
|
|
return resp;
|
|
@@ -133,7 +95,12 @@ public class DataSyncCloudServiceProvider extends ControllerSupport
|
|
|
@PostMapping("syncExamStudent")
|
|
|
@Override
|
|
|
public SyncExamStudentResp syncExamStudent(@RequestBody SyncExamStudentReq req) {
|
|
|
- return null;
|
|
|
+ cn.com.qmth.examcloud.commons.api.request.SyncExamStudentReq r = new cn.com.qmth.examcloud.commons.api.request.SyncExamStudentReq();
|
|
|
+ r.setSyncType(req.getSyncType());
|
|
|
+
|
|
|
+ dataSyncService.syncExamStudent(r);
|
|
|
+ SyncExamStudentResp resp = new SyncExamStudentResp();
|
|
|
+ return resp;
|
|
|
}
|
|
|
|
|
|
}
|