1
0
Prechádzať zdrojové kódy

双评生成补偿机制;多媒体value做text处理

ting.yin 5 rokov pred
rodič
commit
affc079a4e

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

@@ -953,6 +953,7 @@ public class MarkServiceImpl implements MarkService {
             library.setTaskNumber(1);
             library.setStatus(LibraryStatus.WAITING);
             libraryDao.save(library);
+            group.setLibraryCount(group.getLibraryCount() + 1);
             // 开启双评时需要判断是否生成第二份评卷任务
             if (group.getDoubleRate() != null && group.getDoubleRate() > 0) {
                 boolean needDouble = false;
@@ -960,16 +961,17 @@ public class MarkServiceImpl implements MarkService {
                     needDouble = true;
                 } else {
                     double studentCount = subject.getUploadCount();
-                    // double libraryCount = group.getLibraryCount();
+                    double libraryCount = group.getLibraryCount();
                     double doubleCount = libraryDao.countByExamIdAndSubjectCodeAndGroupNumberAndTaskNumber(
                             group.getExamId(), group.getSubjectCode(), group.getNumber(), 2);
                     int expectCount = (int) (studentCount * group.getDoubleRate());
                     // 随机数判断加入当前已经生成双评任务的比例加权
-                    // needDouble = doubleCount < expectCount
-                    // && ((studentCount - libraryCount + doubleCount) <=
-                    // (expectCount - doubleCount) || Math
-                    // .random() < group.getDoubleRate());
-                    needDouble = doubleCount < expectCount && Math.random() < group.getDoubleRate();
+                    // 实际双评任务数小于理论生成数 && (剩余未生成双评的数量小于剩余应生成的数量||随机比例)
+                    needDouble = doubleCount < expectCount
+                            && ((studentCount - libraryCount + doubleCount) <= (expectCount - doubleCount) || Math
+                                    .random() < group.getDoubleRate());
+                    // needDouble = doubleCount < expectCount && Math.random() <
+                    // group.getDoubleRate();
                 }
                 if (needDouble) {
                     library = new MarkLibrary();
@@ -982,6 +984,8 @@ public class MarkServiceImpl implements MarkService {
                     library.setTaskNumber(2);
                     library.setStatus(LibraryStatus.WAITING);
                     libraryDao.save(library);
+                    group.setLibraryCount(group.getLibraryCount() + 1);
+
                 }
             }
         }

+ 1 - 1
stmms-web/src/main/webapp/static/rich-text/js/render.js

@@ -31,7 +31,7 @@ function renderBlock(block, inline) {
                 }
             })
         }
-        container.innerHTML = block.value;
+        container.textContent = block.value;
     } else if (block.type === 'image') {
         type = 'image loading';
         if (inline === true) {