|
@@ -9,14 +9,22 @@ import org.springframework.web.bind.annotation.RestController;
|
|
|
|
|
|
import cn.com.qmth.examcloud.commons.base.exception.StatusException;
|
|
|
import cn.com.qmth.examcloud.commons.web.support.ControllerSupport;
|
|
|
+import cn.com.qmth.examcloud.core.examwork.base.enums.ExamProperty;
|
|
|
+import cn.com.qmth.examcloud.core.examwork.dao.ExamPropertyRepo;
|
|
|
import cn.com.qmth.examcloud.core.examwork.dao.ExamRepo;
|
|
|
import cn.com.qmth.examcloud.core.examwork.dao.entity.Exam;
|
|
|
+import cn.com.qmth.examcloud.core.examwork.dao.entity.ExamPropertyEntity;
|
|
|
import cn.com.qmth.examcloud.core.examwork.dao.enums.ExamType;
|
|
|
import cn.com.qmth.examcloud.core.examwork.service.impl.ExamService;
|
|
|
import cn.com.qmth.examcloud.examwork.api.ExamCloudService;
|
|
|
+import cn.com.qmth.examcloud.examwork.api.request.GetExamPropertyReq;
|
|
|
import cn.com.qmth.examcloud.examwork.api.request.GetExamReq;
|
|
|
import cn.com.qmth.examcloud.examwork.api.request.SaveExamReq;
|
|
|
+import cn.com.qmth.examcloud.examwork.api.request.SetExamPropertyReq;
|
|
|
+import cn.com.qmth.examcloud.examwork.api.response.GetExamPropertyResp;
|
|
|
import cn.com.qmth.examcloud.examwork.api.response.GetExamResp;
|
|
|
+import cn.com.qmth.examcloud.examwork.api.response.SaveExamResp;
|
|
|
+import cn.com.qmth.examcloud.examwork.api.response.SetExamPropertyResp;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
|
|
|
/**
|
|
@@ -37,10 +45,13 @@ public class ExamCloudServiceProvider extends ControllerSupport implements ExamC
|
|
|
@Autowired
|
|
|
ExamRepo examRepo;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ ExamPropertyRepo examPropertyRepo;
|
|
|
+
|
|
|
@ApiOperation(value = "新增考试批次", notes = "新增")
|
|
|
- @PostMapping
|
|
|
+ @PostMapping("saveExam")
|
|
|
@Override
|
|
|
- public void saveExam(@RequestBody SaveExamReq req) {
|
|
|
+ public SaveExamResp saveExam(@RequestBody SaveExamReq req) {
|
|
|
Exam exam = new Exam();
|
|
|
exam.setEnable(true);
|
|
|
exam.setName(req.getName());
|
|
@@ -54,11 +65,15 @@ public class ExamCloudServiceProvider extends ControllerSupport implements ExamC
|
|
|
if (!examService.checkExamName(exam)) {
|
|
|
throw new StatusException("E-002001", "考试名称已存在,请重新填写");
|
|
|
}
|
|
|
- examService.insertExam(exam, null);
|
|
|
+ Exam saved = examService.insertExam(exam);
|
|
|
+
|
|
|
+ SaveExamResp resp = new SaveExamResp();
|
|
|
+ resp.setExamId(saved.getId());
|
|
|
+ return resp;
|
|
|
}
|
|
|
|
|
|
@ApiOperation(value = "根据名称和机构ID查询考试", notes = "根据名称和机构ID查询考试")
|
|
|
- @PostMapping("/findExam")
|
|
|
+ @PostMapping("getExam")
|
|
|
@Override
|
|
|
public GetExamResp getExam(@RequestBody GetExamReq req) {
|
|
|
Long id = req.getId();
|
|
@@ -90,4 +105,45 @@ public class ExamCloudServiceProvider extends ControllerSupport implements ExamC
|
|
|
return examResp;
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public SetExamPropertyResp setExamProperty(@RequestBody SetExamPropertyReq req) {
|
|
|
+ Long examId = req.getExamId();
|
|
|
+ String key = req.getKey();
|
|
|
+ String value = req.getValue();
|
|
|
+
|
|
|
+ ExamProperty prop = ExamProperty.valueOf(key);
|
|
|
+
|
|
|
+ ExamPropertyEntity entity = new ExamPropertyEntity();
|
|
|
+ entity.setExamId(examId);
|
|
|
+ entity.setKeyId(prop.getKeyId());
|
|
|
+ entity.setValue(value);
|
|
|
+
|
|
|
+ ExamPropertyEntity saved = examPropertyRepo.save(entity);
|
|
|
+
|
|
|
+ SetExamPropertyResp resp = new SetExamPropertyResp();
|
|
|
+ resp.setPropertyId(saved.getId());
|
|
|
+ return resp;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public GetExamPropertyResp getExamProperty(@RequestBody GetExamPropertyReq req) {
|
|
|
+ Long examId = req.getExamId();
|
|
|
+ String key = req.getKey();
|
|
|
+
|
|
|
+ ExamProperty prop = ExamProperty.valueOf(key);
|
|
|
+
|
|
|
+ ExamPropertyEntity entity = examPropertyRepo.findByexamIdAndKeyId(examId, prop.getKeyId());
|
|
|
+
|
|
|
+ GetExamPropertyResp resp = new GetExamPropertyResp();
|
|
|
+ if (null != entity) {
|
|
|
+ resp.setExisting(true);
|
|
|
+ resp.setKey(key);
|
|
|
+ resp.setPropertyId(entity.getId());
|
|
|
+ resp.setValue(entity.getValue());
|
|
|
+ } else {
|
|
|
+ resp.setExisting(false);
|
|
|
+ }
|
|
|
+ return resp;
|
|
|
+ }
|
|
|
+
|
|
|
}
|