xiatian 2 жил өмнө
parent
commit
9ebe788e29

+ 3 - 0
examcloud-core-questions-api-provider/src/main/java/cn/com/qmth/examcloud/core/questions/api/controller/PaperController.java

@@ -107,6 +107,9 @@ public class PaperController extends ControllerSupport {
     public void audit(@PathVariable String paperId) {
     	User user=getAccessUser();
     	Paper paper = cn.com.qmth.examcloud.core.questions.base.Model.of(paperRepo.findById(paperId));
+    	validateRootOrgIsolation(Long.valueOf(paper.getOrgId()));
+    	paper.setAuditStatus(true);
+    	paperRepo.save(paper);
     	StringBuilder paperInfo=new StringBuilder();
 		paperInfo.append(" 课程:"+paper.getCourse().getName()+"("+paper.getCourse().getCode()+")");
 		paperInfo.append(" 试卷名称:"+paper.getName());

+ 10 - 0
examcloud-core-questions-dao/src/main/java/cn/com/qmth/examcloud/core/questions/dao/entity/Paper.java

@@ -89,6 +89,8 @@ public class Paper extends MongoBaseEntity {
      * 是否已调用:1-已调用,空或者0未调用
      */
     private Integer inUse;
+    
+    private Boolean auditStatus;
 
     public String getName() {
         return name;
@@ -303,6 +305,14 @@ public class Paper extends MongoBaseEntity {
 		this.inUse = inUse;
 	}
 
+	public Boolean getAuditStatus() {
+		return auditStatus;
+	}
+
+	public void setAuditStatus(Boolean auditStatus) {
+		this.auditStatus = auditStatus;
+	}
+
 	
 	
 }

+ 79 - 70
examcloud-core-questions-dao/src/main/java/cn/com/qmth/examcloud/core/questions/dao/entity/PaperSearchInfo.java

@@ -6,101 +6,103 @@ import java.io.Serializable;
 
 public class PaperSearchInfo implements Serializable {
 
-    private static final long serialVersionUID = 1L;
-    
-    private String name;// 试卷名称
+	private static final long serialVersionUID = 1L;
 
-    private String createTime;// 创建时间
+	private String name;// 试卷名称
 
-    private String creator;// 录入员
-    
-    private String lastModifyName;//修改人
+	private String createTime;// 创建时间
 
-    private String courseNo;// 课程代码
+	private String creator;// 录入员
 
-    private String specialtyNo;// 专业代码
+	private String lastModifyName;// 修改人
 
-    private String level;// 层次
+	private String courseNo;// 课程代码
 
-    private String orgId;// 机构Id
+	private String specialtyNo;// 专业代码
 
-    private PaperStatus paperStatus; // 试卷审核状态
+	private String level;// 层次
 
-    private String[] paperIds;
-    
-    private Integer inUse;
+	private String orgId;// 机构Id
 
-    public String getName() {
-        return name;
-    }
+	private PaperStatus paperStatus; // 试卷审核状态
 
-    public void setName(String name) {
-        this.name = name;
-    }
+	private String[] paperIds;
 
-    public String getCreateTime() {
-        return createTime;
-    }
+	private Integer inUse;
 
-    public void setCreateTime(String createTime) {
-        this.createTime = createTime;
-    }
+	private Boolean auditStatus;
 
-    public String getCreator() {
-        return creator;
-    }
+	public String getName() {
+		return name;
+	}
 
-    public void setCreator(String creator) {
-        this.creator = creator;
-    }
+	public void setName(String name) {
+		this.name = name;
+	}
 
-    public String getCourseNo() {
-        return courseNo;
-    }
+	public String getCreateTime() {
+		return createTime;
+	}
 
-    public void setCourseNo(String courseNo) {
-        this.courseNo = courseNo;
-    }
+	public void setCreateTime(String createTime) {
+		this.createTime = createTime;
+	}
 
-    public String[] getPaperIds() {
-        return paperIds;
-    }
+	public String getCreator() {
+		return creator;
+	}
+
+	public void setCreator(String creator) {
+		this.creator = creator;
+	}
+
+	public String getCourseNo() {
+		return courseNo;
+	}
+
+	public void setCourseNo(String courseNo) {
+		this.courseNo = courseNo;
+	}
+
+	public String[] getPaperIds() {
+		return paperIds;
+	}
 
-    public void setPaperIds(String[] paperIds) {
-        this.paperIds = paperIds;
-    }
+	public void setPaperIds(String[] paperIds) {
+		this.paperIds = paperIds;
+	}
 
-    public String getOrgId() {
-        return orgId;
-    }
+	public String getOrgId() {
+		return orgId;
+	}
 
-    public void setOrgId(String orgId) {
-        this.orgId = orgId;
-    }
+	public void setOrgId(String orgId) {
+		this.orgId = orgId;
+	}
 
-    public PaperStatus getPaperStatus() {
-        return paperStatus;
-    }
+	public PaperStatus getPaperStatus() {
+		return paperStatus;
+	}
 
-    public void setPaperStatus(PaperStatus paperStatus) {
-        this.paperStatus = paperStatus;
-    }
+	public void setPaperStatus(PaperStatus paperStatus) {
+		this.paperStatus = paperStatus;
+	}
 
-    public String getSpecialtyNo() {
-        return specialtyNo;
-    }
+	public String getSpecialtyNo() {
+		return specialtyNo;
+	}
 
-    public void setSpecialtyNo(String specialtyNo) {
-        this.specialtyNo = specialtyNo;
-    }
+	public void setSpecialtyNo(String specialtyNo) {
+		this.specialtyNo = specialtyNo;
+	}
 
-    public String getLevel() {
-        return level;
-    }
+	public String getLevel() {
+		return level;
+	}
 
-    public void setLevel(String level) {
-        this.level = level;
-    }
+	public void setLevel(String level) {
+		this.level = level;
+	}
 
 	public String getLastModifyName() {
 		return lastModifyName;
@@ -118,5 +120,12 @@ public class PaperSearchInfo implements Serializable {
 		this.inUse = inUse;
 	}
 
-	
+	public Boolean getAuditStatus() {
+		return auditStatus;
+	}
+
+	public void setAuditStatus(Boolean auditStatus) {
+		this.auditStatus = auditStatus;
+	}
+
 }

+ 3 - 0
examcloud-core-questions-service/src/main/java/cn/com/qmth/examcloud/core/questions/service/impl/GenPaperService.java

@@ -829,6 +829,7 @@ public class GenPaperService {
             allQuesCount += count;
         }
         paper.setUnitCount(allQuesCount);
+        paper.setAuditStatus(false);
         paper = paperRepo.save(paper);
         return paper;
     }
@@ -993,6 +994,7 @@ public class GenPaperService {
             unitRepo.saveAll(paperDetailUnits);
         }
         paper.setDifficultyDegree(paperService.reSetDifficulty(paper, paper.getTotalScore()));
+        paper.setAuditStatus(false);
         paper = paperRepo.save(paper);
         return paper;
     }
@@ -1258,6 +1260,7 @@ public class GenPaperService {
         paper.setUnitCount(0);
         paper.setPaperType(PaperType.GENERATE);
         paper.setDifficultyDegree(0.5);
+        paper.setAuditStatus(false);
         // 数据入库
         paperRepo.save(paper);
         List<PaperDetail> paperDetails = buildPaperDetail(paper, paperStruct);

+ 8 - 0
examcloud-core-questions-service/src/main/java/cn/com/qmth/examcloud/core/questions/service/impl/PaperServiceImpl.java

@@ -404,6 +404,13 @@ public class PaperServiceImpl implements PaperService {
 		if (ud.assertNeedQueryRefIds()) {
 			query.addCriteria(Criteria.where("course.id").in(ud.stringRefIds()));
 		}
+		if(paperSearchInfo.getAuditStatus()!=null) {
+			if(paperSearchInfo.getAuditStatus()) {
+				query.addCriteria(Criteria.where("auditStatus").ne(false));
+			}else {
+				query.addCriteria(Criteria.where("auditStatus").is(false));
+			}
+		}
         query.addCriteria(Criteria.where("paperType").is(PaperType.GENERATE.name()));
         query.addCriteria(Criteria.where("storage").ne(1));
         query.addCriteria(Criteria.where("course.enable").is("true"));
@@ -1260,6 +1267,7 @@ public class PaperServiceImpl implements PaperService {
             oldpaper.setCreator(userId);
             oldpaper.setLastModifyName(userId);
             oldpaper.setPaperType(PaperType.GENERATE);//试卷类型 修改为组卷
+            oldpaper.setAuditStatus(false);
             Paper newPaper = paperRepo.save(oldpaper);
             for (int j = 0; j < paperDetails.size(); j++) {
                 PaperDetail paperDetail = paperDetails.get(j);