|
@@ -26,6 +26,7 @@ import com.qmth.teachcloud.mark.enums.ScorePolicy;
|
|
|
import com.qmth.teachcloud.mark.lock.LockService;
|
|
|
import com.qmth.teachcloud.mark.mapper.MarkGroupMapper;
|
|
|
import com.qmth.teachcloud.mark.service.*;
|
|
|
+import com.qmth.teachcloud.mark.utils.Calculator;
|
|
|
import org.apache.commons.codec.digest.DigestUtils;
|
|
|
import org.apache.commons.collections4.CollectionUtils;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
@@ -179,7 +180,7 @@ public class MarkGroupServiceImpl extends MppServiceImpl<MarkGroupMapper, MarkGr
|
|
|
|
|
|
int totalCount = markStudentService.countByExamIdAndPaperNumberAndMarkStatus(examId, paperNumber, null);
|
|
|
int markedCount = markStudentService.countByExamIdAndPaperNumberAndMarkStatus(examId, paperNumber, SubjectiveStatus.MARKED);
|
|
|
- markGroupTotalProgressDto.setPercent(markTaskService.calcPercent(markedCount, totalCount));
|
|
|
+ markGroupTotalProgressDto.setPercent(Calculator.divide2String(Calculator.multiply(markedCount, 100), Double.valueOf(totalCount), 2));
|
|
|
markGroupSummaryProgressDto.setTotalInfo(markGroupTotalProgressDto);
|
|
|
|
|
|
// groupInfo
|
|
@@ -197,7 +198,7 @@ public class MarkGroupServiceImpl extends MppServiceImpl<MarkGroupMapper, MarkGr
|
|
|
markGroupProgressDto.setMarkedCount(markGroup.getMarkedCount());
|
|
|
markGroupProgressDto.setLeftCount(markGroupProgressDto.getTaskCount() - markGroupProgressDto.getMarkedCount());
|
|
|
markGroupProgressDto.setCurrentCount(markService.applyCurrentCount(markGroup));
|
|
|
- markGroupProgressDto.setPercent(markTaskService.calcPercent(markGroupProgressDto.getMarkedCount(), markGroupProgressDto.getTaskCount()));
|
|
|
+ markGroupProgressDto.setPercent(Calculator.divide2String(Calculator.multiply(markGroupProgressDto.getMarkedCount(), 100), Double.valueOf(markGroupProgressDto.getTaskCount()), 2));
|
|
|
markGroupProgressDto.setArbitrateCount(markArbitrateHistoryService.waitArbitrateCount(examId, paperNumber, markGroup.getNumber(), null));
|
|
|
markGroupProgressDtoList.add(markGroupProgressDto);
|
|
|
}
|
|
@@ -238,7 +239,7 @@ public class MarkGroupServiceImpl extends MppServiceImpl<MarkGroupMapper, MarkGr
|
|
|
markGroupClassProgressDto.setMarkedCount(markTaskService.markedCount(totalMarkTaskList));
|
|
|
markGroupClassProgressDto.setLeftCount(markGroupClassProgressDto.getTaskCount() - markGroupClassProgressDto.getMarkedCount());
|
|
|
markGroupClassProgressDto.setCurrentCount(count);
|
|
|
- markGroupClassProgressDto.setPercent(markTaskService.calcPercent(markGroupClassProgressDto.getMarkedCount(), markGroupClassProgressDto.getTaskCount()));
|
|
|
+ markGroupClassProgressDto.setPercent(Calculator.divide2String(Calculator.multiply(markGroupClassProgressDto.getMarkedCount(), 100), Double.valueOf(markGroupClassProgressDto.getTaskCount()), 2));
|
|
|
markGroupClassProgressDto.setArbitrateCount(arbitrateCount);
|
|
|
}
|
|
|
return markGroupClassProgressDtoIPage;
|
|
@@ -294,8 +295,7 @@ public class MarkGroupServiceImpl extends MppServiceImpl<MarkGroupMapper, MarkGr
|
|
|
if (markGroupDto.getScorePolicy() == null) {
|
|
|
throw ExceptionResultEnum.ERROR.exception("开启双评,合分规则必填");
|
|
|
}
|
|
|
- String format = new DecimalFormat("####.##").format(markGroupDto.getDoubleRate());
|
|
|
- markGroup.setDoubleRate(Double.parseDouble(format));
|
|
|
+ markGroup.setDoubleRate(Calculator.round(markGroupDto.getDoubleRate(), 2));
|
|
|
markGroup.setArbitrateThreshold(markGroupDto.getArbitrateThreshold());
|
|
|
markGroup.setScorePolicy(markGroupDto.getScorePolicy());
|
|
|
} else {
|