xiatian 1 год назад
Родитель
Сommit
afbc677011

+ 13 - 0
examcloud-core-examwork-api/src/main/java/cn/com/qmth/examcloud/examwork/api/bean/ExamBean.java

@@ -2,6 +2,7 @@ package cn.com.qmth.examcloud.examwork.api.bean;
 
 import java.util.Date;
 
+import cn.com.qmth.examcloud.api.commons.enums.CallType;
 import cn.com.qmth.examcloud.api.commons.enums.ExamSpecialSettingsType;
 import cn.com.qmth.examcloud.api.commons.exchange.JsonSerializable;
 
@@ -85,6 +86,8 @@ public class ExamBean implements JsonSerializable {
 	 * 特殊设置类型
 	 */
 	private ExamSpecialSettingsType specialSettingsType;
+	
+	private CallType callType;
 
 	public Long getId() {
 		return id;
@@ -197,4 +200,14 @@ public class ExamBean implements JsonSerializable {
 	public void setSpecialSettingsType(ExamSpecialSettingsType specialSettingsType) {
 		this.specialSettingsType = specialSettingsType;
 	}
+
+	public CallType getCallType() {
+		return callType;
+	}
+
+	public void setCallType(CallType callType) {
+		this.callType = callType;
+	}
+	
+	
 }

+ 23 - 0
examcloud-core-examwork-api/src/main/java/cn/com/qmth/examcloud/examwork/api/request/SaveExamReq.java

@@ -1,6 +1,7 @@
 package cn.com.qmth.examcloud.examwork.api.request;
 
 import java.util.Date;
+import java.util.List;
 import java.util.Map;
 
 import cn.com.qmth.examcloud.api.commons.enums.CallType;
@@ -81,6 +82,12 @@ public class SaveExamReq extends BaseRequest {
 	
 	@ApiModelProperty(value = "抽题模式(WHOLE_SET:成套调用;RANDOM_PAPER:随机抽题)", example = "WHOLE_SET", required = false)
 	private CallType callType;
+	
+	@ApiModelProperty(value = "是否定点交卷", example = "true", required = false)
+	private Boolean enableTimingEnd;
+	
+	@ApiModelProperty(value = "ip白名单", example = "[\"xxx.xxx.xxx.xxx\",\"xxx.xxx.xxx.xxx\"]", required = false)
+	private List<String> ipWhitelist;
 
 	private Map<String, String> properties;
 
@@ -204,4 +211,20 @@ public class SaveExamReq extends BaseRequest {
 		this.callType = callType;
 	}
 
+	public Boolean getEnableTimingEnd() {
+		return enableTimingEnd;
+	}
+
+	public void setEnableTimingEnd(Boolean enableTimingEnd) {
+		this.enableTimingEnd = enableTimingEnd;
+	}
+
+	public List<String> getIpWhitelist() {
+		return ipWhitelist;
+	}
+
+	public void setIpWhitelist(List<String> ipWhitelist) {
+		this.ipWhitelist = ipWhitelist;
+	}
+
 }

+ 7 - 0
examcloud-core-questions-api-client/src/main/java/cn/com/qmth/examcloud/core/questions/api/client/ExtractConfigCloudServiceClient.java

@@ -9,12 +9,14 @@ import cn.com.qmth.examcloud.core.questions.api.request.GetQuestionAnswerReq;
 import cn.com.qmth.examcloud.core.questions.api.request.GetQuestionListReq;
 import cn.com.qmth.examcloud.core.questions.api.request.GetQuestionReq;
 import cn.com.qmth.examcloud.core.questions.api.request.GetRandomPaperReq;
+import cn.com.qmth.examcloud.core.questions.api.request.SaveRandomPaperExtractConfigReq;
 import cn.com.qmth.examcloud.core.questions.api.response.GetBasePaperResp;
 import cn.com.qmth.examcloud.core.questions.api.response.GetPaperResp;
 import cn.com.qmth.examcloud.core.questions.api.response.GetQuestionAnswerResp;
 import cn.com.qmth.examcloud.core.questions.api.response.GetQuestionListResp;
 import cn.com.qmth.examcloud.core.questions.api.response.GetQuestionResp;
 import cn.com.qmth.examcloud.core.questions.api.response.GetRandomPaperResp;
+import cn.com.qmth.examcloud.core.questions.api.response.SaveRandomPaperExtractConfigResp;
 
 /**
  * @author weiwenhai
@@ -68,4 +70,9 @@ public class ExtractConfigCloudServiceClient extends AbstractCloudClientSupport
 	public GetRandomPaperResp getRandomPaper(GetRandomPaperReq req) {
 		return post("extract_config/randompaper", req, GetRandomPaperResp.class);
 	}
+
+	@Override
+	public SaveRandomPaperExtractConfigResp saveRandomPaperExtractConfig(SaveRandomPaperExtractConfigReq req) {
+		return post("extract_config/randompaper/save", req, SaveRandomPaperExtractConfigResp.class);
+	}
 }

+ 5 - 0
examcloud-core-questions-api/src/main/java/cn/com/qmth/examcloud/core/questions/api/ExtractConfigCloudService.java

@@ -7,12 +7,14 @@ import cn.com.qmth.examcloud.core.questions.api.request.GetQuestionAnswerReq;
 import cn.com.qmth.examcloud.core.questions.api.request.GetQuestionListReq;
 import cn.com.qmth.examcloud.core.questions.api.request.GetQuestionReq;
 import cn.com.qmth.examcloud.core.questions.api.request.GetRandomPaperReq;
+import cn.com.qmth.examcloud.core.questions.api.request.SaveRandomPaperExtractConfigReq;
 import cn.com.qmth.examcloud.core.questions.api.response.GetBasePaperResp;
 import cn.com.qmth.examcloud.core.questions.api.response.GetPaperResp;
 import cn.com.qmth.examcloud.core.questions.api.response.GetQuestionAnswerResp;
 import cn.com.qmth.examcloud.core.questions.api.response.GetQuestionListResp;
 import cn.com.qmth.examcloud.core.questions.api.response.GetQuestionResp;
 import cn.com.qmth.examcloud.core.questions.api.response.GetRandomPaperResp;
+import cn.com.qmth.examcloud.core.questions.api.response.SaveRandomPaperExtractConfigResp;
 
 /**
  * @author 		weiwenhai
@@ -77,4 +79,7 @@ public interface ExtractConfigCloudService extends CloudService{
 	 * @return
 	 */
 	GetRandomPaperResp getRandomPaper(GetRandomPaperReq req);
+	
+	SaveRandomPaperExtractConfigResp saveRandomPaperExtractConfig(SaveRandomPaperExtractConfigReq req);
+	
 }

+ 55 - 0
examcloud-core-questions-api/src/main/java/cn/com/qmth/examcloud/core/questions/api/request/SaveRandomPaperExtractConfigReq.java

@@ -0,0 +1,55 @@
+package cn.com.qmth.examcloud.core.questions.api.request;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+import io.swagger.annotations.ApiModelProperty;
+
+public class SaveRandomPaperExtractConfigReq extends BaseRequest{
+
+	private static final long serialVersionUID = -2086228074459123588L;
+	
+	private Long rootOrgId;
+
+	@ApiModelProperty(value = "考试编码(不传时取考试名称)", example = "xxxxxx", required = true)
+	private String examCode;
+
+	@ApiModelProperty(value = "考试名称", example = "2018年6月期末考试", required = true)
+	private String examName;
+
+	@ApiModelProperty(value = " 课程代码", example = "xxxxxx", required = true)
+	private String courseCode;
+
+	public String getExamCode() {
+		return examCode;
+	}
+
+	public void setExamCode(String examCode) {
+		this.examCode = examCode;
+	}
+
+	public String getExamName() {
+		return examName;
+	}
+
+	public void setExamName(String examName) {
+		this.examName = examName;
+	}
+
+	public String getCourseCode() {
+		return courseCode;
+	}
+
+	public void setCourseCode(String courseCode) {
+		this.courseCode = courseCode;
+	}
+
+	public Long getRootOrgId() {
+		return rootOrgId;
+	}
+
+	public void setRootOrgId(Long rootOrgId) {
+		this.rootOrgId = rootOrgId;
+	}
+
+
+	
+}

+ 18 - 0
examcloud-core-questions-api/src/main/java/cn/com/qmth/examcloud/core/questions/api/response/SaveRandomPaperExtractConfigResp.java

@@ -0,0 +1,18 @@
+package cn.com.qmth.examcloud.core.questions.api.response;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+
+public class SaveRandomPaperExtractConfigResp extends BaseResponse {
+
+	private static final long serialVersionUID = 405436023397864070L;
+	private String extractConfigId;
+
+	public String getExtractConfigId() {
+		return extractConfigId;
+	}
+
+	public void setExtractConfigId(String extractConfigId) {
+		this.extractConfigId = extractConfigId;
+	}
+
+}

+ 12 - 0
examcloud-exchange-api/src/main/java/cn/com/qmth/examcloud/exchange/outer/api/ExtractConfigOuterService.java

@@ -0,0 +1,12 @@
+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.OuterSaveExtractConfigReq;
+import cn.com.qmth.examcloud.exchange.outer.api.response.OuterSaveExtractConfigResp;
+
+public interface ExtractConfigOuterService extends EnterpriseService {
+
+	OuterSaveExtractConfigResp saveRandomPaperExtractConfig(OuterSaveExtractConfigReq req);
+
+
+}

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

@@ -1,6 +1,7 @@
 package cn.com.qmth.examcloud.exchange.outer.api.request;
 
 import java.util.Date;
+import java.util.List;
 import java.util.Map;
 
 import cn.com.qmth.examcloud.api.commons.enums.CallType;
@@ -54,6 +55,12 @@ public class OuterSaveExamReq extends EnterpriseRequest {
 	
 	@ApiModelProperty(value = "抽题模式(WHOLE_SET:成套调用;RANDOM_PAPER:随机抽题)", example = "WHOLE_SET", required = false)
 	private CallType callType;
+	
+	@ApiModelProperty(value = "是否定点交卷", example = "true", required = false)
+	private Boolean enableTimingEnd;
+	
+	@ApiModelProperty(value = "ip白名单", example = "[\"xxx.xxx.xxx.xxx\",\"xxx.xxx.xxx.xxx\"]", required = false)
+	private List<String> ipWhitelist;
 
 	@ApiModelProperty(value = "扩展属性", example = "{\"IS_FACE_ENABLE\":\"false\"}", required = true)
 	private Map<String, String> properties;
@@ -162,4 +169,20 @@ public class OuterSaveExamReq extends EnterpriseRequest {
 		this.callType = callType;
 	}
 
+	public Boolean getEnableTimingEnd() {
+		return enableTimingEnd;
+	}
+
+	public void setEnableTimingEnd(Boolean enableTimingEnd) {
+		this.enableTimingEnd = enableTimingEnd;
+	}
+
+	public List<String> getIpWhitelist() {
+		return ipWhitelist;
+	}
+
+	public void setIpWhitelist(List<String> ipWhitelist) {
+		this.ipWhitelist = ipWhitelist;
+	}
+
 }

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

@@ -0,0 +1,46 @@
+package cn.com.qmth.examcloud.exchange.outer.api.request;
+
+import cn.com.qmth.examcloud.api.commons.exchange.EnterpriseRequest;
+import io.swagger.annotations.ApiModelProperty;
+
+public class OuterSaveExtractConfigReq extends EnterpriseRequest {
+
+	private static final long serialVersionUID = 8298816850875139485L;
+	
+	@ApiModelProperty(value = "考试编码(不传时取考试名称)", example = "xxxxxx", required = true)
+	private String examCode;
+
+	@ApiModelProperty(value = "考试名称", example = "2018年6月期末考试", required = true)
+	private String examName;
+
+	@ApiModelProperty(value = " 课程代码", example = "xxxxxx", required = true)
+	private String courseCode;
+
+	public String getExamCode() {
+		return examCode;
+	}
+
+	public void setExamCode(String examCode) {
+		this.examCode = examCode;
+	}
+
+	public String getExamName() {
+		return examName;
+	}
+
+	public void setExamName(String examName) {
+		this.examName = examName;
+	}
+
+	public String getCourseCode() {
+		return courseCode;
+	}
+
+	public void setCourseCode(String courseCode) {
+		this.courseCode = courseCode;
+	}
+
+
+
+	
+}

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

@@ -0,0 +1,22 @@
+package cn.com.qmth.examcloud.exchange.outer.api.response;
+
+import cn.com.qmth.examcloud.api.commons.exchange.EnterpriseResponse;
+import io.swagger.annotations.ApiModelProperty;
+
+public class OuterSaveExtractConfigResp extends EnterpriseResponse {
+
+	private static final long serialVersionUID = -8997559197584414927L;
+
+	@ApiModelProperty(value = "调卷规则ID", example = "xxxxxxxx", required = true)
+	private String extractConfigId;
+
+	public String getExtractConfigId() {
+		return extractConfigId;
+	}
+
+	public void setExtractConfigId(String extractConfigId) {
+		this.extractConfigId = extractConfigId;
+	}
+
+
+}