Bladeren bron

开放接口新增试卷接口增加分数小数点2位验证;页面分数精度格式化

ting.yin 3 jaren geleden
bovenliggende
commit
cd5e1e293f

+ 9 - 5
stmms-web/src/main/java/cn/com/qmth/stmms/api/controller/CoreController.java

@@ -482,7 +482,7 @@ public class CoreController extends BaseApiController {
     @RequestMapping(value = "/user/external/save", method = RequestMethod.POST)
     @ResponseBody
     @RoleRequire({ Role.SCHOOL_ADMIN, Role.SCHOOL_DEV })
-    public JSONObject subjectSave(HttpServletRequest request, @RequestParam String account,
+    public JSONObject userSave(HttpServletRequest request, @RequestParam String account,
             @RequestParam(required = false) String name, @RequestParam(required = false) String password,
             @RequestParam(required = false) Role role, @RequestParam boolean enable) {
         ApiUser user = RequestUtils.getApiUser(request);
@@ -523,25 +523,25 @@ public class CoreController extends BaseApiController {
         }
         // 客观题更新
         if (paper.getObjective()) {
+            List<ExamQuestion> oList = parseQustionList(paper.getQuestions(), paper.getExamId(),
+                    paper.getSubjectCode(), paper.getPaperType(), paper.getObjective());
             if (0 != questionService.countByExamIdAndSubjectAndObjectiveAndGroupNumberIsNull(paper.getExamId(),
                     subject.getCode(), true)) {
                 questionService.deleteByExamAndSubjectAndObjective(paper.getExamId(), subject.getCode(), true);
             }
-            List<ExamQuestion> oList = parseQustionList(paper.getQuestions(), paper.getExamId(),
-                    paper.getSubjectCode(), paper.getPaperType(), paper.getObjective());
             questionService.save(oList);
             examService.updateObjectiveStatus(paper.getExamId(), ObjectiveStatus.WAITING);
             subjectService.updateScore(paper.getExamId(), subject.getCode(), true,
                     questionService.sumTotalScore(paper.getExamId(), subject.getCode(), true));
         } else {
             List<MarkGroup> groups = groupService.findByExamAndSubject(paper.getExamId(), subject.getCode());
+            List<ExamQuestion> sList = parseQustionList(paper.getQuestions(), paper.getExamId(),
+                    paper.getSubjectCode(), paper.getPaperType(), paper.getObjective());
             if (groups == null || groups.size() == 0) {
                 if (0 != questionService.countByExamIdAndSubjectAndObjectiveAndGroupNumberIsNull(paper.getExamId(),
                         subject.getCode(), false)) {
                     questionService.deleteByExamAndSubjectAndObjective(paper.getExamId(), subject.getCode(), false);
                 }
-                List<ExamQuestion> sList = parseQustionList(paper.getQuestions(), paper.getExamId(),
-                        paper.getSubjectCode(), paper.getPaperType(), paper.getObjective());
                 questionService.save(sList);
                 subjectService.updateScore(paper.getExamId(), subject.getCode(), false,
                         questionService.sumTotalScore(paper.getExamId(), subject.getCode(), false));
@@ -556,6 +556,10 @@ public class CoreController extends BaseApiController {
         List<ExamQuestion> list = new ArrayList<ExamQuestion>();
         for (QuestionDTO dto : questions) {
             ExamQuestion q = dto.transform();
+            int score = (int) (q.getTotalScore() * 100);
+            if ((q.getTotalScore() * 100) - score > 0) {
+                throw ApiException.QUERY_PARAM_ERROR.replaceMessage(":qurstion totalScore invalid");
+            }
             q.setExamId(examId);
             q.setSubjectCode(subjectCode);
             if (StringUtils.isNotBlank(paperType)) {

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

@@ -91,7 +91,7 @@
 		    <td>${item.mainNumber }</td>
 		    <td>${item.subNumber }</td>
 			<td>${item.mainTitle }</td>
-			<td><fmt:formatNumber pattern="###.#" value="${item.totalScore}"/></td>
+			<td><fmt:formatNumber pattern="###.###" value="${item.totalScore}"/></td>
 			<td><c:if test="${item.selective }">选做题</c:if></td>
 			<td><input type="checkbox" name="questionIds" value="${item.id }" <c:if test="${item.groupNumber!=null}"> disabled="disabled"</c:if>></td>
 			</tr>

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

@@ -103,7 +103,7 @@
 		    <td>${item.mainNumber }</td>
 		    <td>${item.subNumber }</td>
 			<td>${item.mainTitle }</td>
-			<td><fmt:formatNumber pattern="###.#" value="${item.totalScore}"/></td>
+			<td><fmt:formatNumber pattern="###.###" value="${item.totalScore}"/></td>
 			<td><input type="checkbox" name="questionIds" value="${item.id }" <c:if test="${item.groupNumber!=null && item.groupNumber!=group.number}"> disabled="disabled"</c:if> <c:if test="${item.groupNumber==group.number}"> checked</c:if>></td>
 			</tr>
 			</c:forEach>

+ 1 - 1
stmms-web/src/main/webapp/WEB-INF/views/modules/exam/inspectedImportList.jsp

@@ -45,7 +45,7 @@
             <td>${result.subjectCode}-${result.subjectName}</td>
             <td>${result.studentCode}</td>
             <td><c:if test="${result.tagValue=='1'}"><i class="icon-star"></i></c:if></td>
-            <td>${result.totalScore}</td>
+            <td><fmt:formatNumber pattern="###.###" value="${result.totalScore}"/></td>
             <td>
             	<c:choose>
             		<c:when test="${result.absent == true || result.upload == false}">

+ 1 - 1
stmms-web/src/main/webapp/WEB-INF/views/modules/exam/inspectedList.jsp

@@ -104,7 +104,7 @@
             <td>${result.subjectiveStatus.name}</td>
             <td>${result.objectiveScoreString}</td>
             <td>${result.subjectiveScoreString}</td>
-            <td>${result.totalScore}</td>
+            <td><fmt:formatNumber pattern="###.###" value="${result.totalScore}"/></td>
             <td>${result.subjectiveScoreList}</td>
             <td><c:if test="${result.inspectorId!=null }">
             ${result.inspector.loginName}

+ 1 - 1
stmms-web/src/main/webapp/WEB-INF/views/modules/exam/libraryList.jsp

@@ -114,7 +114,7 @@
             <td>
                 <c:if test="${result.markerScore!=null}">
                 	<c:if test="${result.markerScore==-1}">未选做</c:if>
-                    <c:if test="${result.markerScore!=-1}"><fmt:formatNumber pattern="###.#" value="${result.markerScore}"/></c:if>
+                    <c:if test="${result.markerScore!=-1}"><fmt:formatNumber pattern="###.###" value="${result.markerScore}"/></c:if>
                 </c:if>
                 <c:if test="${result.markerScore==null}">
                     &nbsp;

+ 1 - 1
stmms-web/src/main/webapp/WEB-INF/views/modules/exam/markInfo.jsp

@@ -74,7 +74,7 @@
 				</td>
 				<td>${result.subject.uploadCount}</td>
 				<td>
-				    <fmt:formatNumber type="number" value="${result.subject.subjectiveScore}" pattern="###.#"/>
+				    <fmt:formatNumber type="number" value="${result.subject.subjectiveScore}" pattern="###.###"/>
 				</td>
 				<td><a href="${ctx}/admin/exam/group?subjectCode=${result.subject.code}">
 					${result.groupCount}</a>

+ 3 - 3
stmms-web/src/main/webapp/WEB-INF/views/modules/exam/paperDetail.jsp

@@ -13,9 +13,9 @@
 		<input name="subjectCode" value="${subject.code}" type="hidden"/>
 		<div>
 			<label>科目:${subject.code}-${subject.name}</label>
-			<label>客观总分:${subject.objectiveScore}</label>
-			<label>主观总分:${subject.subjectiveScore}</label>
-			<label>试卷总分:${subject.totalScore}</label>
+			<label>客观总分:<fmt:formatNumber pattern="###.###" value="${subject.objectiveScore}"/></label>
+			<label>主观总分:<fmt:formatNumber pattern="###.###" value="${subject.subjectiveScore}"/></label>
+			<label>试卷总分:<fmt:formatNumber pattern="###.###" value="${subject.totalScore}"/></label>
 			&nbsp;
 			<select id="type-select" name="objective" class="input-small">
 				<option value="">不限</option>

+ 3 - 3
stmms-web/src/main/webapp/WEB-INF/views/modules/exam/qualityList.jsp

@@ -74,9 +74,9 @@
 		        <c:otherwise>0%</c:otherwise>
 		        </c:choose>
 				</td>
-				<td><fmt:formatNumber pattern="###.##" value="${marker.avgSpeed}"/></td>
-				<td><fmt:formatNumber pattern="###.##" value="${marker.avgScore}"/></td>
-				<td><fmt:formatNumber pattern="###.##" value="${marker.stdevScore}"/></td>
+				<td><fmt:formatNumber pattern="###.###" value="${marker.avgSpeed}"/></td>
+				<td><fmt:formatNumber pattern="###.###" value="${marker.avgScore}"/></td>
+				<td><fmt:formatNumber pattern="###.###" value="${marker.stdevScore}"/></td>
 			</tr>
 		</c:forEach>
 		</tbody>

+ 3 - 3
stmms-web/src/main/webapp/WEB-INF/views/modules/exam/scoreDetail.jsp

@@ -20,9 +20,9 @@
         <label>准考证号:${student.examNumber}</label>
         <label>学号:${student.studentCode}</label>
         <label>科目:${student.subjectCode}-${student.subjectName}</label>
-        <label>客观总分:${student.objectiveScore}</label>
-        <label>主观总分:${student.subjectiveScore}</label>
-        <label>试卷总分:${student.totalScore}</label>
+        <label>客观总分:${student.objectiveScoreString}</label>
+        <label>主观总分:${student.subjectiveScoreString}</label>
+        <label>试卷总分:${student.totalScoreString}</label>
         <br/>
         &nbsp;
         <a class="btn sheet-link" href="##" data-sheet-url="${student.sheetUrlString}" data-answer-url="<c:if test="${student.answerUrl!=null}">${fileServer}${student.answerUrl}</c:if>"

+ 1 - 1
stmms-web/src/main/webapp/WEB-INF/views/modules/exam/selectiveList.jsp

@@ -42,7 +42,7 @@
 			<tr>
 				<td>${question.mainTitle}</td>
 				<td>${question.mainNumber}</td>
-				<td><fmt:formatNumber pattern="###.#" value="${question.totalScore}"/></td>
+				<td><fmt:formatNumber pattern="###.###" value="${question.totalScore}"/></td>
 				<td><input type="checkbox" name="mainNumbers" value = ${question.mainNumber }  <c:if test="${question.selective}"> checked</c:if>/>
 				</td>
 			</tr>

+ 1 - 1
stmms-web/src/main/webapp/WEB-INF/views/modules/exam/trialList.jsp

@@ -79,7 +79,7 @@
              <td>
                 <c:if test="${result.markerScore!=null}">
                 	<c:if test="${result.markerScore==-1}">未选做</c:if>
-                    <c:if test="${result.markerScore!=-1}"><fmt:formatNumber pattern="###.#" value="${result.markerScore}"/></c:if>
+                    <c:if test="${result.markerScore!=-1}"><fmt:formatNumber pattern="###.###" value="${result.markerScore}"/></c:if>
                 </c:if>
                 <c:if test="${result.markerScore==null}">
                     &nbsp;