WANG 5 年之前
父节点
当前提交
94ece57d4a

+ 90 - 0
examcloud-exchange-outer-api-provider/src/main/java/cn/com/qmth/examcloud/exchange/outer/api/provider/ExamStudentOuterServiceProvider.java

@@ -13,17 +13,24 @@ import com.google.common.collect.Lists;
 import cn.com.qmth.examcloud.commons.exception.StatusException;
 import cn.com.qmth.examcloud.examwork.api.ExamStudentCloudService;
 import cn.com.qmth.examcloud.examwork.api.bean.ExamStudentBean;
+import cn.com.qmth.examcloud.examwork.api.bean.ExamStudentBean4Reset;
+import cn.com.qmth.examcloud.examwork.api.request.ResetExamStudentReq;
 import cn.com.qmth.examcloud.examwork.api.request.SaveExamStudentReq;
 import cn.com.qmth.examcloud.examwork.api.request.UpdateExamStudentStatusReq;
+import cn.com.qmth.examcloud.examwork.api.response.ResetExamStudentResp;
 import cn.com.qmth.examcloud.examwork.api.response.SaveExamStudentResp;
 import cn.com.qmth.examcloud.exchange.outer.api.ExamStudentOuterService;
 import cn.com.qmth.examcloud.exchange.outer.api.bean.ExamStudent4BatchBean;
 import cn.com.qmth.examcloud.exchange.outer.api.bean.ExamStudentStatus4BatchBean;
+import cn.com.qmth.examcloud.exchange.outer.api.bean.OuterExamStudent4ResetBean;
 import cn.com.qmth.examcloud.exchange.outer.api.bean.OuterExamStudentBean;
+import cn.com.qmth.examcloud.exchange.outer.api.bean.OuterExamStudentBean4Reset;
 import cn.com.qmth.examcloud.exchange.outer.api.request.OuterBatchSaveExamStudentReq;
+import cn.com.qmth.examcloud.exchange.outer.api.request.OuterResetExamStudentReq;
 import cn.com.qmth.examcloud.exchange.outer.api.request.OuterSaveExamStudentReq;
 import cn.com.qmth.examcloud.exchange.outer.api.request.OuterUpdateExamStudentStatusReq;
 import cn.com.qmth.examcloud.exchange.outer.api.response.OuterBatchSaveExamStudentResp;
+import cn.com.qmth.examcloud.exchange.outer.api.response.OuterResetExamStudentResp;
 import cn.com.qmth.examcloud.exchange.outer.api.response.OuterSaveExamStudentResp;
 import cn.com.qmth.examcloud.exchange.outer.api.response.OuterUpdateExamStudentStatusResp;
 import cn.com.qmth.examcloud.web.support.ControllerSupport;
@@ -220,4 +227,87 @@ public class ExamStudentOuterServiceProvider extends ControllerSupport
 		return resp;
 	}
 
+	@ApiOperation(value = "重置考生", httpMethod = "POST")
+	@ApiResponses({
+			@ApiResponse(code = 200, message = "成功", response = OuterResetExamStudentResp.class),
+			@ApiResponse(code = 500, message = "系统异常(异常信息见响应体)", response = StatusResponse.class)})
+	@PostMapping("resetExamStudent")
+	@Override
+	public OuterResetExamStudentResp resetExamStudent(
+			@RequestBody @ApiParam(required = true) OuterResetExamStudentReq req) {
+
+		if (!getEnterpriseRootOrgId().equals(req.getRootOrgId())) {
+			throw new StatusException("1000001", "rootOrgId is wrong");
+		}
+
+		ResetExamStudentReq resReq = new ResetExamStudentReq();
+		resReq.setExamCode(req.getExamCode());
+		resReq.setExamId(req.getExamId());
+		resReq.setIdentityNumber(req.getIdentityNumber());
+		resReq.setRootOrgId(req.getRootOrgId());
+		resReq.setStudentCode(req.getStudentCode());
+		resReq.setStudentName(req.getStudentName());
+
+		List<ExamStudentBean4Reset> examStudentList = Lists.newArrayList();
+		resReq.setExamStudentList(examStudentList);
+
+		List<OuterExamStudentBean4Reset> outerExamStudentList = req.getExamStudentList();
+		for (OuterExamStudentBean4Reset cur : outerExamStudentList) {
+			ExamStudentBean4Reset b = new ExamStudentBean4Reset();
+			examStudentList.add(b);
+
+			b.setCourseCode(cur.getCourseCode());
+			b.setCourseLevel(cur.getCourseLevel());
+			b.setCourseName(cur.getCourseName());
+			b.setExamSite(cur.getExamSite());
+			b.setExt1(cur.getExt1());
+			b.setExt2(cur.getExt2());
+			b.setExt3(cur.getExt3());
+			b.setExt4(cur.getExt4());
+			b.setExt5(cur.getExt5());
+			b.setGrade(cur.getGrade());
+			b.setInfoCollector(cur.getInfoCollector());
+			b.setPaperType(cur.getPaperType());
+			b.setRemark(cur.getRemark());
+			b.setSpecialtyName(cur.getSpecialtyName());
+		}
+
+		ResetExamStudentResp resResp = examStudentCloudService.resetExamStudent(resReq);
+
+		List<ExamStudentBean> savedExamStudentList = resResp.getExamStudentList();
+
+		List<OuterExamStudent4ResetBean> outerList = Lists.newArrayList();
+
+		for (ExamStudentBean cur : savedExamStudentList) {
+			OuterExamStudent4ResetBean b = new OuterExamStudent4ResetBean();
+			outerList.add(b);
+
+			b.setCourseCode(cur.getCourseCode());
+			b.setCourseId(cur.getCourseId());
+			b.setCourseLevel(cur.getCourseLevel());
+			b.setCourseName(cur.getCourseName());
+			b.setExamId(cur.getExamId());
+			b.setExamName(cur.getExamName());
+			b.setExamSite(cur.getExamSite());
+			b.setGrade(cur.getGrade());
+			b.setId(cur.getId());
+			b.setIdentityNumber(cur.getIdentityNumber());
+			b.setInfoCollector(cur.getInfoCollector());
+			b.setOrgCode(cur.getOrgCode());
+			b.setOrgId(cur.getOrgId());
+			b.setOrgName(cur.getOrgName());
+			b.setPaperType(cur.getPaperType());
+			b.setRemark(cur.getRemark());
+			b.setRootOrgId(cur.getRootOrgId());
+			b.setSpecialtyName(cur.getSpecialtyName());
+			b.setStudentCode(cur.getStudentCode());
+			b.setStudentId(cur.getStudentId());
+			b.setStudentName(cur.getStudentName());
+
+		}
+		OuterResetExamStudentResp resp = new OuterResetExamStudentResp();
+		resp.setExamStudentList(outerList);
+		return resp;
+	}
+
 }

+ 11 - 0
examcloud-exchange-outer-api/src/main/java/cn/com/qmth/examcloud/exchange/outer/api/ExamStudentOuterService.java

@@ -2,9 +2,11 @@ package cn.com.qmth.examcloud.exchange.outer.api;
 
 import cn.com.qmth.examcloud.api.commons.EnterpriseService;
 import cn.com.qmth.examcloud.exchange.outer.api.request.OuterBatchSaveExamStudentReq;
+import cn.com.qmth.examcloud.exchange.outer.api.request.OuterResetExamStudentReq;
 import cn.com.qmth.examcloud.exchange.outer.api.request.OuterSaveExamStudentReq;
 import cn.com.qmth.examcloud.exchange.outer.api.request.OuterUpdateExamStudentStatusReq;
 import cn.com.qmth.examcloud.exchange.outer.api.response.OuterBatchSaveExamStudentResp;
+import cn.com.qmth.examcloud.exchange.outer.api.response.OuterResetExamStudentResp;
 import cn.com.qmth.examcloud.exchange.outer.api.response.OuterSaveExamStudentResp;
 import cn.com.qmth.examcloud.exchange.outer.api.response.OuterUpdateExamStudentStatusResp;
 
@@ -22,4 +24,13 @@ public interface ExamStudentOuterService extends EnterpriseService {
 	OuterBatchSaveExamStudentResp batchSaveExamStudent(OuterBatchSaveExamStudentReq req);
 
 	OuterUpdateExamStudentStatusResp updateExamStudentStatus(OuterUpdateExamStudentStatusReq req);
+
+	/**
+	 * 重置考生
+	 *
+	 * @author WANGWEI
+	 * @param req
+	 * @return
+	 */
+	OuterResetExamStudentResp resetExamStudent(OuterResetExamStudentReq req);
 }

+ 278 - 0
examcloud-exchange-outer-api/src/main/java/cn/com/qmth/examcloud/exchange/outer/api/bean/OuterExamStudent4ResetBean.java

@@ -0,0 +1,278 @@
+package cn.com.qmth.examcloud.exchange.outer.api.bean;
+
+import cn.com.qmth.examcloud.api.commons.exchange.JsonSerializable;
+
+public class OuterExamStudent4ResetBean implements JsonSerializable {
+	private static final long serialVersionUID = 2079003980099252759L;
+
+	private Long id;
+
+	/**
+	 * 学生ID
+	 */
+	private Long studentId;
+
+	/**
+	 * 机构ID
+	 */
+	private Long orgId;
+
+	/**
+	 * 机构名称
+	 */
+	private String orgName;
+
+	/**
+	 * 机构编码
+	 */
+	private String orgCode;
+
+	/**
+	 * 顶级机构ID
+	 */
+	private Long rootOrgId;
+
+	/**
+	 * 考试ID
+	 */
+	private Long examId;
+
+	/**
+	 * 考试名称
+	 */
+	private String examName;
+
+	/**
+	 * 学生姓名
+	 */
+	private String studentName;
+
+	/**
+	 * 学生学号
+	 */
+	private String studentCode;
+
+	/**
+	 * 学生身份证号
+	 */
+	private String identityNumber;
+
+	/**
+	 * 考试课程名称
+	 */
+	private String courseName;
+
+	/**
+	 * 考试课程code
+	 */
+	private String courseCode;
+
+	/**
+	 * 考试课程level
+	 */
+	private String courseLevel;
+
+	/**
+	 * 试卷类型
+	 */
+	private String paperType;
+
+	/**
+	 * 专业名称
+	 */
+	private String specialtyName;
+
+	/**
+	 * 课程ID
+	 */
+	private Long courseId;
+
+	/**
+	 * 年级
+	 */
+	private String grade;
+
+	/**
+	 * 备注
+	 */
+	private String remark;
+
+	/**
+	 * 考点
+	 */
+	private String examSite;
+
+	/**
+	 * 信息采集人
+	 */
+	private String infoCollector;
+
+	public Long getId() {
+		return id;
+	}
+
+	public void setId(Long id) {
+		this.id = id;
+	}
+
+	public Long getRootOrgId() {
+		return rootOrgId;
+	}
+
+	public void setRootOrgId(Long rootOrgId) {
+		this.rootOrgId = rootOrgId;
+	}
+
+	public Long getExamId() {
+		return examId;
+	}
+
+	public void setExamId(Long examId) {
+		this.examId = examId;
+	}
+
+	public String getExamName() {
+		return examName;
+	}
+
+	public void setExamName(String examName) {
+		this.examName = examName;
+	}
+
+	public String getStudentName() {
+		return studentName;
+	}
+
+	public void setStudentName(String studentName) {
+		this.studentName = studentName;
+	}
+
+	public String getStudentCode() {
+		return studentCode;
+	}
+
+	public void setStudentCode(String studentCode) {
+		this.studentCode = studentCode;
+	}
+
+	public String getIdentityNumber() {
+		return identityNumber;
+	}
+
+	public void setIdentityNumber(String identityNumber) {
+		this.identityNumber = identityNumber;
+	}
+
+	public String getCourseName() {
+		return courseName;
+	}
+
+	public void setCourseName(String courseName) {
+		this.courseName = courseName;
+	}
+
+	public String getCourseCode() {
+		return courseCode;
+	}
+
+	public void setCourseCode(String courseCode) {
+		this.courseCode = courseCode;
+	}
+
+	public String getCourseLevel() {
+		return courseLevel;
+	}
+
+	public void setCourseLevel(String courseLevel) {
+		this.courseLevel = courseLevel;
+	}
+
+	public String getPaperType() {
+		return paperType;
+	}
+
+	public void setPaperType(String paperType) {
+		this.paperType = paperType;
+	}
+
+	public Long getStudentId() {
+		return studentId;
+	}
+
+	public void setStudentId(Long studentId) {
+		this.studentId = studentId;
+	}
+
+	public Long getOrgId() {
+		return orgId;
+	}
+
+	public void setOrgId(Long orgId) {
+		this.orgId = orgId;
+	}
+
+	public String getOrgName() {
+		return orgName;
+	}
+
+	public void setOrgName(String orgName) {
+		this.orgName = orgName;
+	}
+
+	public String getOrgCode() {
+		return orgCode;
+	}
+
+	public void setOrgCode(String orgCode) {
+		this.orgCode = orgCode;
+	}
+
+	public String getSpecialtyName() {
+		return specialtyName;
+	}
+
+	public void setSpecialtyName(String specialtyName) {
+		this.specialtyName = specialtyName;
+	}
+
+	public Long getCourseId() {
+		return courseId;
+	}
+
+	public void setCourseId(Long courseId) {
+		this.courseId = courseId;
+	}
+
+	public String getGrade() {
+		return grade;
+	}
+
+	public void setGrade(String grade) {
+		this.grade = grade;
+	}
+
+	public String getRemark() {
+		return remark;
+	}
+
+	public void setRemark(String remark) {
+		this.remark = remark;
+	}
+
+	public String getExamSite() {
+		return examSite;
+	}
+
+	public void setExamSite(String examSite) {
+		this.examSite = examSite;
+	}
+
+	public String getInfoCollector() {
+		return infoCollector;
+	}
+
+	public void setInfoCollector(String infoCollector) {
+		this.infoCollector = infoCollector;
+	}
+
+}

+ 191 - 0
examcloud-exchange-outer-api/src/main/java/cn/com/qmth/examcloud/exchange/outer/api/bean/OuterExamStudentBean4Reset.java

@@ -0,0 +1,191 @@
+package cn.com.qmth.examcloud.exchange.outer.api.bean;
+
+import cn.com.qmth.examcloud.api.commons.exchange.JsonSerializable;
+
+public class OuterExamStudentBean4Reset implements JsonSerializable {
+
+	private static final long serialVersionUID = 2079003980099252759L;
+
+	/**
+	 * 考试课程名称
+	 */
+	private String courseName;
+
+	/**
+	 * 考试课程code
+	 */
+	private String courseCode;
+
+	/**
+	 * 考试课程level
+	 */
+	private String courseLevel;
+
+	/**
+	 * 试卷类型
+	 */
+	private String paperType;
+
+	/**
+	 * 信息采集人
+	 */
+	private String infoCollector;
+
+	/**
+	 * 考点
+	 */
+	private String examSite;
+
+	/**
+	 * 专业名称
+	 */
+	private String specialtyName;
+
+	/**
+	 * 年级
+	 */
+	private String grade;
+
+	/**
+	 * 备注
+	 */
+	private String remark;
+
+	/**
+	 * 扩展属性1
+	 */
+	private String ext1;
+
+	/**
+	 * 扩展属性2
+	 */
+	private String ext2;
+
+	/**
+	 * 扩展属性3
+	 */
+	private String ext3;
+
+	/**
+	 * 扩展属性4
+	 */
+	private String ext4;
+
+	/**
+	 * 扩展属性5
+	 */
+	private String ext5;
+
+	public String getCourseName() {
+		return courseName;
+	}
+
+	public void setCourseName(String courseName) {
+		this.courseName = courseName;
+	}
+
+	public String getCourseCode() {
+		return courseCode;
+	}
+
+	public void setCourseCode(String courseCode) {
+		this.courseCode = courseCode;
+	}
+
+	public String getCourseLevel() {
+		return courseLevel;
+	}
+
+	public void setCourseLevel(String courseLevel) {
+		this.courseLevel = courseLevel;
+	}
+
+	public String getPaperType() {
+		return paperType;
+	}
+
+	public void setPaperType(String paperType) {
+		this.paperType = paperType;
+	}
+
+	public String getInfoCollector() {
+		return infoCollector;
+	}
+
+	public void setInfoCollector(String infoCollector) {
+		this.infoCollector = infoCollector;
+	}
+
+	public String getExamSite() {
+		return examSite;
+	}
+
+	public void setExamSite(String examSite) {
+		this.examSite = examSite;
+	}
+
+	public String getSpecialtyName() {
+		return specialtyName;
+	}
+
+	public void setSpecialtyName(String specialtyName) {
+		this.specialtyName = specialtyName;
+	}
+
+	public String getGrade() {
+		return grade;
+	}
+
+	public void setGrade(String grade) {
+		this.grade = grade;
+	}
+
+	public String getRemark() {
+		return remark;
+	}
+
+	public void setRemark(String remark) {
+		this.remark = remark;
+	}
+
+	public String getExt1() {
+		return ext1;
+	}
+
+	public void setExt1(String ext1) {
+		this.ext1 = ext1;
+	}
+
+	public String getExt2() {
+		return ext2;
+	}
+
+	public void setExt2(String ext2) {
+		this.ext2 = ext2;
+	}
+
+	public String getExt3() {
+		return ext3;
+	}
+
+	public void setExt3(String ext3) {
+		this.ext3 = ext3;
+	}
+
+	public String getExt4() {
+		return ext4;
+	}
+
+	public void setExt4(String ext4) {
+		this.ext4 = ext4;
+	}
+
+	public String getExt5() {
+		return ext5;
+	}
+
+	public void setExt5(String ext5) {
+		this.ext5 = ext5;
+	}
+
+}

+ 91 - 0
examcloud-exchange-outer-api/src/main/java/cn/com/qmth/examcloud/exchange/outer/api/request/OuterResetExamStudentReq.java

@@ -0,0 +1,91 @@
+package cn.com.qmth.examcloud.exchange.outer.api.request;
+
+import java.util.List;
+
+import cn.com.qmth.examcloud.api.commons.exchange.EnterpriseRequest;
+import cn.com.qmth.examcloud.exchange.outer.api.bean.OuterExamStudentBean4Reset;
+
+public class OuterResetExamStudentReq extends EnterpriseRequest {
+
+	private static final long serialVersionUID = 3633974018347041831L;
+
+	private Long rootOrgId;
+
+	private Long examId;
+
+	private String examCode;
+
+	/**
+	 * 学生姓名
+	 */
+	private String studentName;
+
+	/**
+	 * 学生学号
+	 */
+	private String studentCode;
+
+	/**
+	 * 学生身份证号
+	 */
+	private String identityNumber;
+
+	private List<OuterExamStudentBean4Reset> examStudentList;
+
+	public Long getRootOrgId() {
+		return rootOrgId;
+	}
+
+	public void setRootOrgId(Long rootOrgId) {
+		this.rootOrgId = rootOrgId;
+	}
+
+	public Long getExamId() {
+		return examId;
+	}
+
+	public void setExamId(Long examId) {
+		this.examId = examId;
+	}
+
+	public String getExamCode() {
+		return examCode;
+	}
+
+	public void setExamCode(String examCode) {
+		this.examCode = examCode;
+	}
+
+	public String getStudentName() {
+		return studentName;
+	}
+
+	public void setStudentName(String studentName) {
+		this.studentName = studentName;
+	}
+
+	public String getStudentCode() {
+		return studentCode;
+	}
+
+	public void setStudentCode(String studentCode) {
+		this.studentCode = studentCode;
+	}
+
+	public String getIdentityNumber() {
+		return identityNumber;
+	}
+
+	public void setIdentityNumber(String identityNumber) {
+		this.identityNumber = identityNumber;
+	}
+
+	public List<OuterExamStudentBean4Reset> getExamStudentList() {
+		return examStudentList;
+	}
+
+	public void setExamStudentList(List<OuterExamStudentBean4Reset> examStudentList) {
+		this.examStudentList = examStudentList;
+	}
+
+}

+ 22 - 0
examcloud-exchange-outer-api/src/main/java/cn/com/qmth/examcloud/exchange/outer/api/response/OuterResetExamStudentResp.java

@@ -0,0 +1,22 @@
+package cn.com.qmth.examcloud.exchange.outer.api.response;
+
+import java.util.List;
+
+import cn.com.qmth.examcloud.api.commons.exchange.EnterpriseResponse;
+import cn.com.qmth.examcloud.exchange.outer.api.bean.OuterExamStudent4ResetBean;
+
+public class OuterResetExamStudentResp extends EnterpriseResponse {
+
+	private static final long serialVersionUID = 840523082568831570L;
+
+	private List<OuterExamStudent4ResetBean> examStudentList;
+
+	public List<OuterExamStudent4ResetBean> getExamStudentList() {
+		return examStudentList;
+	}
+
+	public void setExamStudentList(List<OuterExamStudent4ResetBean> examStudentList) {
+		this.examStudentList = examStudentList;
+	}
+
+}