|
@@ -1,24 +1,35 @@
|
|
|
package cn.com.qmth.examcloud.exchange.outer.api.provider;
|
|
|
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.List;
|
|
|
+
|
|
|
import io.swagger.annotations.Api;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
import io.swagger.annotations.ApiResponse;
|
|
|
import io.swagger.annotations.ApiResponses;
|
|
|
|
|
|
+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.base.exception.StatusException;
|
|
|
import cn.com.qmth.examcloud.commons.web.support.ControllerSupport;
|
|
|
import cn.com.qmth.examcloud.commons.web.support.StatusResponse;
|
|
|
import cn.com.qmth.examcloud.core.oe.admin.api.ExamScoreDataCloudService;
|
|
|
+import cn.com.qmth.examcloud.core.oe.admin.api.bean.ScoreDataBean;
|
|
|
import cn.com.qmth.examcloud.core.oe.admin.api.request.GetScoreDataReq;
|
|
|
+import cn.com.qmth.examcloud.core.oe.admin.api.request.QueryScoreDataReq;
|
|
|
import cn.com.qmth.examcloud.core.oe.admin.api.response.GetScoreDataResp;
|
|
|
+import cn.com.qmth.examcloud.core.oe.admin.api.response.QueryScoreDataResp;
|
|
|
import cn.com.qmth.examcloud.exchange.outer.api.GetScoreDataService;
|
|
|
+import cn.com.qmth.examcloud.exchange.outer.api.bean.OuterScoreDataBean;
|
|
|
import cn.com.qmth.examcloud.exchange.outer.api.request.OuterGetScoreDataReq;
|
|
|
+import cn.com.qmth.examcloud.exchange.outer.api.request.OuterQueryScoreDataReq;
|
|
|
import cn.com.qmth.examcloud.exchange.outer.api.response.OuterGetScoreDataResp;
|
|
|
+import cn.com.qmth.examcloud.exchange.outer.api.response.OuterQueryScoreDataResp;
|
|
|
|
|
|
@Api("获取成绩服务")
|
|
|
@RestController
|
|
@@ -33,31 +44,89 @@ public class GetScoreDataServiceProvider extends ControllerSupport implements Ge
|
|
|
@Autowired
|
|
|
private ExamScoreDataCloudService examScoreDataCloudService;
|
|
|
|
|
|
- @ApiOperation(value = "获取成绩数据", httpMethod = "GET")
|
|
|
+ @ApiOperation(value = "获取成绩数据", httpMethod = "POST")
|
|
|
@ApiResponses({@ApiResponse(code = 200, message = "成功", response = OuterGetScoreDataResp.class),
|
|
|
@ApiResponse(code = 500, message = "系统异常(异常信息见响应体)", response = StatusResponse.class)})
|
|
|
@PostMapping("/getScoreData")
|
|
|
@Override
|
|
|
public OuterGetScoreDataResp getScoreData(@RequestBody OuterGetScoreDataReq req) {
|
|
|
+ if (!getSecurityRootOrgId().equals(req.getRootOrgId())) {
|
|
|
+ throw new StatusException("EX-1000001", "rootOrgId is wrong");
|
|
|
+ }
|
|
|
+ if (req.getExamRecordDataId()==null) {
|
|
|
+ throw new StatusException("EX-1000002", "examRecordDataId is null");
|
|
|
+ }
|
|
|
GetScoreDataReq getScoreDataReq = new GetScoreDataReq();
|
|
|
getScoreDataReq.setExamRecordDataId(req.getExamRecordDataId());
|
|
|
GetScoreDataResp scoreDataResp = examScoreDataCloudService.getScoreData(getScoreDataReq);
|
|
|
|
|
|
OuterGetScoreDataResp outerGetScoreDataResp = new OuterGetScoreDataResp();
|
|
|
- outerGetScoreDataResp.setExamRecordDataId(scoreDataResp.getExamRecordDataId());
|
|
|
- outerGetScoreDataResp.setStudentCode(scoreDataResp.getStudentCode());
|
|
|
- outerGetScoreDataResp.setStudentName(scoreDataResp.getStudentName());
|
|
|
- outerGetScoreDataResp.setIdentityNumber(scoreDataResp.getIdentityNumber());
|
|
|
- outerGetScoreDataResp.setCourseCode(scoreDataResp.getCourseCode());
|
|
|
- outerGetScoreDataResp.setCourseName(scoreDataResp.getCourseName());
|
|
|
- outerGetScoreDataResp.setStartTime(scoreDataResp.getStartTime());
|
|
|
- outerGetScoreDataResp.setEndTime(scoreDataResp.getEndTime());
|
|
|
- outerGetScoreDataResp.setTotalScore(scoreDataResp.getTotalScore());
|
|
|
- outerGetScoreDataResp.setIsWarn(scoreDataResp.getIsWarn());
|
|
|
- outerGetScoreDataResp.setIsAudit(scoreDataResp.getIsAudit());
|
|
|
- outerGetScoreDataResp.setIsIllegality(scoreDataResp.getIsIllegality());
|
|
|
-
|
|
|
+ OuterScoreDataBean outerScoreDataBean = new OuterScoreDataBean();
|
|
|
+ outerScoreDataBean.setExamRecordDataId(scoreDataResp.getExamRecordDataId());
|
|
|
+ outerScoreDataBean.setStudentCode(scoreDataResp.getStudentCode());
|
|
|
+ outerScoreDataBean.setStudentName(scoreDataResp.getStudentName());
|
|
|
+ outerScoreDataBean.setIdentityNumber(scoreDataResp.getIdentityNumber());
|
|
|
+ outerScoreDataBean.setCourseCode(scoreDataResp.getCourseCode());
|
|
|
+ outerScoreDataBean.setCourseName(scoreDataResp.getCourseName());
|
|
|
+ outerScoreDataBean.setStartTime(scoreDataResp.getStartTime());
|
|
|
+ outerScoreDataBean.setEndTime(scoreDataResp.getEndTime());
|
|
|
+ outerScoreDataBean.setTotalScore(scoreDataResp.getTotalScore());
|
|
|
+ outerScoreDataBean.setIsWarn(scoreDataResp.getIsWarn());
|
|
|
+ outerScoreDataBean.setIsAudit(scoreDataResp.getIsAudit());
|
|
|
+ outerScoreDataBean.setIsIllegality(scoreDataResp.getIsIllegality());
|
|
|
+ outerGetScoreDataResp.setOuterScoreDataBean(outerScoreDataBean);
|
|
|
return outerGetScoreDataResp;
|
|
|
}
|
|
|
+
|
|
|
+ @ApiOperation(value = "按考试名称,rootOrgId,courseCode,身份证号或学号获取成绩数据", httpMethod = "POST")
|
|
|
+ @ApiResponses({@ApiResponse(code = 200, message = "成功", response = OuterQueryScoreDataResp.class),
|
|
|
+ @ApiResponse(code = 500, message = "系统异常(异常信息见响应体)", response = StatusResponse.class)})
|
|
|
+ @PostMapping("/queryScoreData")
|
|
|
+ @Override
|
|
|
+ public OuterQueryScoreDataResp queryScoreData(@RequestBody OuterQueryScoreDataReq req) {
|
|
|
+ if (!getSecurityRootOrgId().equals(req.getRootOrgId())) {
|
|
|
+ throw new StatusException("EX-1000001", "rootOrgId is wrong");
|
|
|
+ }
|
|
|
+ if(StringUtils.isBlank(req.getExamName())){
|
|
|
+ throw new StatusException("EX-1000005", "考试名称不能为空");
|
|
|
+ }
|
|
|
+ if(StringUtils.isBlank(req.getCourseCode())){
|
|
|
+ throw new StatusException("EX-1000005", "课程code不能为空");
|
|
|
+ }
|
|
|
+ if(req.getRootOrgId() == null){
|
|
|
+ throw new StatusException("EX-1000005", "rootOrgId不能为空");
|
|
|
+ }
|
|
|
+ if(StringUtils.isBlank(req.getIdentityNumber()) && StringUtils.isBlank(req.getStudentCode())){
|
|
|
+ throw new StatusException("EX-1000005", "身份证号和学号不能都为空");
|
|
|
+ }
|
|
|
+ QueryScoreDataReq queryScoreDataReq = new QueryScoreDataReq();
|
|
|
+ queryScoreDataReq.setCourseCode(req.getCourseCode());
|
|
|
+ queryScoreDataReq.setExamName(req.getExamName());
|
|
|
+ queryScoreDataReq.setIdentityNumber(req.getIdentityNumber());
|
|
|
+ queryScoreDataReq.setRootOrgId(req.getRootOrgId());
|
|
|
+ queryScoreDataReq.setStudentCode(req.getStudentCode());
|
|
|
+ QueryScoreDataResp queryScoreDataResp = examScoreDataCloudService.queryScoreData(queryScoreDataReq);
|
|
|
+ List<ScoreDataBean> scoreDataBeanList = queryScoreDataResp.getScoreDataBeanList();
|
|
|
+ List<OuterScoreDataBean> outerScoreDataBeanList = new ArrayList<OuterScoreDataBean>();
|
|
|
+ for(ScoreDataBean scoreDataBean:scoreDataBeanList){
|
|
|
+ OuterScoreDataBean outerScoreDataBean = new OuterScoreDataBean();
|
|
|
+ outerScoreDataBean.setCourseCode(scoreDataBean.getCourseCode());
|
|
|
+ outerScoreDataBean.setCourseName(scoreDataBean.getCourseName());
|
|
|
+ outerScoreDataBean.setEndTime(scoreDataBean.getEndTime());
|
|
|
+ outerScoreDataBean.setExamRecordDataId(scoreDataBean.getExamRecordDataId());
|
|
|
+ outerScoreDataBean.setIdentityNumber(scoreDataBean.getIdentityNumber());
|
|
|
+ outerScoreDataBean.setIsAudit(scoreDataBean.getIsAudit());
|
|
|
+ outerScoreDataBean.setIsWarn(scoreDataBean.getIsAudit());
|
|
|
+ outerScoreDataBean.setIsIllegality(scoreDataBean.getIsIllegality());
|
|
|
+ outerScoreDataBean.setStartTime(scoreDataBean.getStartTime());
|
|
|
+ outerScoreDataBean.setStudentCode(scoreDataBean.getStudentCode());
|
|
|
+ outerScoreDataBean.setStudentName(scoreDataBean.getStudentName());
|
|
|
+ outerScoreDataBean.setTotalScore(scoreDataBean.getTotalScore());
|
|
|
+ outerScoreDataBeanList.add(outerScoreDataBean);
|
|
|
+ }
|
|
|
+ OuterQueryScoreDataResp outerQueryScoreDataResp = new OuterQueryScoreDataResp();
|
|
|
+ outerQueryScoreDataResp.setOuterScoreDataBeanList(outerScoreDataBeanList);
|
|
|
+ return outerQueryScoreDataResp;
|
|
|
+ }
|
|
|
|
|
|
}
|