Procházet zdrojové kódy

新增考试控制原卷显示

ting.yin před 4 roky
rodič
revize
58afcdab8c

+ 14 - 0
stmms-biz/src/main/java/cn/com/qmth/stmms/biz/exam/model/Exam.java

@@ -144,6 +144,12 @@ public class Exam implements Serializable {
     @Enumerated(EnumType.STRING)
     private MarkMode markMode;
 
+    /**
+     * 开启/关闭 原卷显示
+     */
+    @Column(name = "sheet_view", nullable = false)
+    private boolean sheetView;
+
     public Integer getId() {
         return id;
     }
@@ -348,4 +354,12 @@ public class Exam implements Serializable {
         this.markMode = markMode;
     }
 
+    public boolean isSheetView() {
+        return sheetView;
+    }
+
+    public void setSheetView(boolean sheetView) {
+        this.sheetView = sheetView;
+    }
+
 }

+ 1 - 1
stmms-biz/src/main/java/cn/com/qmth/stmms/biz/mark/service/Impl/MarkServiceImpl.java

@@ -1494,7 +1494,7 @@ public class MarkServiceImpl implements MarkService {
                         subjectCode, false);
                 // 考生整体状态与总分更新
                 long groupCount = groupDao.countByExamIdAndSubjectCode(examId, subjectCode);
-                if (groupCount == 0 || unGroupQuestionCount >= 0) {
+                if (groupCount == 0 || unGroupQuestionCount > 0) {
                     studentService.updateSubjectiveStatusAndScoreAndInspectorId(examId, subjectCode,
                             SubjectiveStatus.UNMARK, 0, null, null, null);
                 } else {

+ 1 - 0
stmms-web/src/main/java/cn/com/qmth/stmms/admin/exam/ExamController.java

@@ -163,6 +163,7 @@ public class ExamController extends BaseExamController {
             oldExam.setStartTime(exam.getStartTime());
             oldExam.setEndTime(exam.getEndTime());
             oldExam.setMarkMode(exam.getMarkMode());
+            oldExam.setSheetView(exam.isSheetView());
             examService.save(oldExam);
         }
         return "redirect:/admin/exam/list";

+ 3 - 6
stmms-web/src/main/java/cn/com/qmth/stmms/admin/exam/MarkGroupController.java

@@ -271,8 +271,7 @@ public class MarkGroupController extends BaseExamController {
         model.addAttribute("markModeList", MarkMode.values());
         model.addAttribute("scorePolicyList", ScorePolicy.values());
         model.addAttribute("thirdPolicyList", ThirdPolicy.values());
-        Exam exam = examService.findById(examId);
-        model.addAttribute("examType", exam.getType());
+        model.addAttribute("exam", examService.findById(examId));
         model.addAttribute("questionList", questionService.findByExamAndSubjectAndObjective(examId, subjectCode, false));
         return "modules/exam/groupAdd";
     }
@@ -297,8 +296,7 @@ public class MarkGroupController extends BaseExamController {
             model.addAttribute("markModeList", MarkMode.values());
             model.addAttribute("scorePolicyList", ScorePolicy.values());
             model.addAttribute("thirdPolicyList", ThirdPolicy.values());
-            Exam exam = examService.findById(examId);
-            model.addAttribute("examType", exam.getType());
+            model.addAttribute("exam", examService.findById(examId));
             return "modules/exam/groupEditSimple";
         } else {
             redirectAttributes.addAttribute("subjectCode", subjectCode);
@@ -322,8 +320,7 @@ public class MarkGroupController extends BaseExamController {
             model.addAttribute("scorePolicyList", ScorePolicy.values());
             model.addAttribute("thirdPolicyList", ThirdPolicy.values());
             model.addAttribute("subject", subjectService.find(examId, subjectCode));
-            Exam exam = examService.findById(examId);
-            model.addAttribute("examType", exam.getType());
+            model.addAttribute("exam", examService.findById(examId));
             return "modules/exam/groupEditFull";
         } else {
             redirectAttributes.addAttribute("subjectCode", subjectCode);

+ 6 - 0
stmms-web/src/main/webapp/WEB-INF/views/modules/exam/examEdit.jsp

@@ -168,6 +168,12 @@
                        id="configuration" rel="opener">设置</a>
                 </div>
             </div>
+			<div class="control-group">
+		        <label class="control-label">原卷显示</label>
+		        <div class="controls">
+		        <input name="sheetView" type="checkbox" <c:if test="${exam.sheetView}">checked</c:if>/>
+		        </div>
+			</div>
         </c:if>
     </c:if>
     <div class="control-group">

+ 6 - 0
stmms-web/src/main/webapp/WEB-INF/views/modules/exam/examForm.jsp

@@ -156,6 +156,12 @@
             </div>
         </div>
     </c:if>
+	<div class="control-group">
+	        <label class="control-label">原卷显示</label>
+	        <div class="controls">
+	        <input name="sheetView" type="checkbox" <c:if test="${exam.sheetView}">checked</c:if>/>
+	        </div>
+	</div>
     <div class="control-group">
         <label class="control-label">描述</label>
         <div class="controls">

+ 8 - 7
stmms-web/src/main/webapp/WEB-INF/views/modules/exam/groupAdd.jsp

@@ -183,14 +183,15 @@
             </div>
         </div>
     </div>
-    <c:if test="${examType!='MULTI_MEDIA'}">
-        <!--<div class="control-group">
-        <label class="control-label">原卷显示</label>
-        <div class="controls">
-        <input name="sheetView" type="checkbox" <c:if test="${group.sheetView}">checked</c:if>/>
-        </div>
+    <c:if test="${exam.type!='MULTI_MEDIA'}">
+    	<c:if test="${exam.sheetView}">
+        <div class="control-group">
+	        <label class="control-label">原卷显示</label>
+	        <div class="controls">
+	        <input name="sheetView" type="checkbox" <c:if test="${group.sheetView}">checked</c:if>/>
+	        </div>
         </div>
-        -->
+        </c:if>
         <div class="control-group">
             <label class="control-label">启用全零分</label>
             <div class="controls">

+ 8 - 7
stmms-web/src/main/webapp/WEB-INF/views/modules/exam/groupEditFull.jsp

@@ -201,14 +201,15 @@
             </div>
         </div>
     </div>
-    <c:if test="${examType!='MULTI_MEDIA'}">
-        <!--<div class="control-group">
-        <label class="control-label">原卷显示</label>
-        <div class="controls">
-        <input name="sheetView" type="checkbox" <c:if test="${group.sheetView}">checked</c:if>/>
-        </div>
+    <c:if test="${exam.type!='MULTI_MEDIA'}">
+    	<c:if test="${exam.sheetView}">
+        <div class="control-group">
+	        <label class="control-label">原卷显示</label>
+	        <div class="controls">
+	        <input name="sheetView" type="checkbox" <c:if test="${group.sheetView}">checked</c:if>/>
+	        </div>
         </div>
-        -->
+		</c:if>
         <div class="control-group">
             <label class="control-label">启用全零分</label>
             <div class="controls">

+ 8 - 7
stmms-web/src/main/webapp/WEB-INF/views/modules/exam/groupEditSimple.jsp

@@ -130,14 +130,15 @@
     <!-- </div> -->
     <!-- </div> -->
     <!-- </div> -->
-    <c:if test="${examType!='MULTI_MEDIA'}">
-        <!--<div class="control-group">
-        <label class="control-label">原卷显示</label>
-        <div class="controls">
-        <input name="sheetView" type="checkbox" value="1" <c:if test="${group.sheetView}">checked</c:if>/>
-        </div>
+    <c:if test="${exam.type!='MULTI_MEDIA'}">
+   		<c:if test="${exam.sheetView}">
+        <div class="control-group">
+	        <label class="control-label">原卷显示</label>
+	        <div class="controls">
+	        <input name="sheetView" type="checkbox" value="1" <c:if test="${group.sheetView}">checked</c:if>/>
+	        </div>
         </div>
-        -->
+        </c:if>
         <div class="control-group">
             <label class="control-label">启用全零分</label>
             <div class="controls">

+ 9 - 9
stmms-web/src/main/webapp/WEB-INF/views/modules/exam/groupList.jsp

@@ -31,13 +31,13 @@
         &nbsp;
         <input id="btnSubmit" class="btn btn-primary" type="submit" value="查询"/>
         
-        <c:if test="${web_user.schoolAdmin==true}">
-            <c:if test="${examType!='MULTI_MEDIA'}">
-                &nbsp;
-                <a href="${ctx}/admin/exam/group/add?subjectCode=${subject.code}" class="btn">新增</a>
-            </c:if>
-            &nbsp;
-            <a href="${ctx}/admin/exam/group/check-count?subjectCode=${subject.code}" class="btn">数量校对</a>
+        <c:if test="${web_user.schoolAdmin==true || web_user.subjectHeader==true}">
+			<c:if test="${examType!='MULTI_MEDIA'}">
+	            &nbsp;
+	 			<a href="${ctx}/admin/exam/group/add?subjectCode=${subject.code}" class="btn">新增</a>
+			</c:if>
+	            &nbsp;
+	            <a href="${ctx}/admin/exam/group/check-count?subjectCode=${subject.code}" class="btn">数量校对</a>
             &nbsp;
             <input id="btnFinish" class="btn" type="button" value="关闭" onclick="goFinish()"/>
         </c:if>
@@ -89,7 +89,7 @@
                     正在删除
                 </c:if>
                 <c:if test="${result.deleting==false}">
-                    <c:if test="${web_user.schoolAdmin==true && result.status.value!=3}">
+                    <c:if test="${(web_user.schoolAdmin==true ||web_user.subjectHeader==true) && result.status.value!=3}">
                         <c:if test="${result.status.value==1}">
                             <a href="${ctx}/admin/exam/group/changeStatus?subjectCode=${result.subjectCode}&number=${result.number}&status=FORMAL" data-number="${result.number}" class="edit-button"
                                id="statusButton">开始正评</a>
@@ -117,7 +117,7 @@
                         </c:if>
                     </c:if>
                     
-                    <c:if test="${web_user.schoolAdmin==true && result.status.value==3}">
+                    <c:if test="${(web_user.schoolAdmin==true ||web_user.subjectHeader==true)&& result.status.value==3}">
                         &nbsp;
                         <a href="${ctx}/admin/exam/group/changeStatus?subjectCode=${result.subjectCode}&number=${result.number}&status=FORMAL" data-number="${result.number}"
                            class="edit-button">开始正评</a>