Merge remote-tracking branch 'origin/zcc'
This commit is contained in:
@@ -179,6 +179,12 @@ public class ClassController {
|
|||||||
return R.ok().put("result",classEntityService.getClassInfo(params));
|
return R.ok().put("result",classEntityService.getClassInfo(params));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//同一小班未开班小班
|
||||||
|
@RequestMapping("/getNoOpenClassSameClass")
|
||||||
|
public R getNoOpenClassSameClass(@RequestBody Map<String,Object> params){
|
||||||
|
return R.ok().put("result",classEntityService.getNoOpenClassSameClass(params));
|
||||||
|
}
|
||||||
|
|
||||||
//查询未加入小班
|
//查询未加入小班
|
||||||
@RequestMapping("/getClassNoUser")
|
@RequestMapping("/getClassNoUser")
|
||||||
public R getClassNoUser(){
|
public R getClassNoUser(){
|
||||||
|
|||||||
@@ -50,7 +50,7 @@ public class ClassExamController {
|
|||||||
while (it.hasNext()) {
|
while (it.hasNext()) {
|
||||||
Map.Entry<String, String> entry = it.next();
|
Map.Entry<String, String> entry = it.next();
|
||||||
String pos = entry.getKey();
|
String pos = entry.getKey();
|
||||||
String rowNo = pos.substring(1);
|
String rowNo = pos.replaceAll("[a-zA-Z]", "");
|
||||||
count = Integer.parseInt(rowNo);
|
count = Integer.parseInt(rowNo);
|
||||||
// System.out.println(pos + ";" + entry.getValue());
|
// System.out.println(pos + ";" + entry.getValue());
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -41,6 +41,8 @@ public interface ClassEntityService extends IService<ClassEntity> {
|
|||||||
|
|
||||||
List<ClassEntity> getClassNoUser();
|
List<ClassEntity> getClassNoUser();
|
||||||
|
|
||||||
|
ClassEntity getNoOpenClassSameClass(Map<String,Object> params);
|
||||||
|
|
||||||
List<ClassEntity> getClassByCourseIdNoUser(Map<String ,Object> params);
|
List<ClassEntity> getClassByCourseIdNoUser(Map<String ,Object> params);
|
||||||
|
|
||||||
ClassEntity getClassByUser(Map<String, Object> params);
|
ClassEntity getClassByUser(Map<String, Object> params);
|
||||||
|
|||||||
@@ -302,11 +302,9 @@ public class ClassEntityServiceImpl extends ServiceImpl<ClassEntityDao, ClassEnt
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
classEntity.setState("1");
|
classEntity.setState("1");
|
||||||
Date startTime = new Date();
|
Date startTime = new Date();
|
||||||
classEntity.setStartTime(startTime);
|
classEntity.setStartTime(startTime);
|
||||||
classEntity.setEndTime(DateUtils.addDateDays(startTime,classModelDao.selectById(classEntity.getModelId()).getDays()));
|
|
||||||
this.getBaseMapper().updateById(classEntity);
|
this.getBaseMapper().updateById(classEntity);
|
||||||
if (classModel.getIsExam()==1){
|
if (classModel.getIsExam()==1){
|
||||||
//根据设置的天数将班级状态从进行中设置成考试中
|
//根据设置的天数将班级状态从进行中设置成考试中
|
||||||
@@ -318,6 +316,19 @@ public class ClassEntityServiceImpl extends ServiceImpl<ClassEntityDao, ClassEnt
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
}else {
|
}else {
|
||||||
|
//结班限制
|
||||||
|
int classExamUsers = classExamUserDao.selectCount(new LambdaQueryWrapper<ClassExamUser>()
|
||||||
|
.eq(ClassExamUser::getClassId,classEntity.getId())
|
||||||
|
.eq(ClassExamUser::getScoreSuccess,0));
|
||||||
|
if (classExamUsers>0){
|
||||||
|
return R.error("有学员正在考试,请稍后再试");
|
||||||
|
}
|
||||||
|
int replys = classTaskAndQuesReplyDao.selectCount(new LambdaQueryWrapper<ClassTaskAndQuesReply>()
|
||||||
|
.eq(ClassTaskAndQuesReply::getClassId,classEntity.getId())
|
||||||
|
.eq(ClassTaskAndQuesReply::getScoreSuccess,0));
|
||||||
|
if (replys>0){
|
||||||
|
return R.error("学员打分未完成,请完成打分后结班");
|
||||||
|
}
|
||||||
classEntity.setState("2");
|
classEntity.setState("2");
|
||||||
classEntity.setEndTime(new Date());
|
classEntity.setEndTime(new Date());
|
||||||
this.getBaseMapper().updateById(classEntity);
|
this.getBaseMapper().updateById(classEntity);
|
||||||
@@ -577,6 +588,14 @@ public class ClassEntityServiceImpl extends ServiceImpl<ClassEntityDao, ClassEnt
|
|||||||
return this.baseMapper.selectList(wrapper);
|
return this.baseMapper.selectList(wrapper);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public ClassEntity getNoOpenClassSameClass(Map<String,Object> params) {
|
||||||
|
ClassEntity classEntity = this.baseMapper.selectOne(new LambdaQueryWrapper<ClassEntity>()
|
||||||
|
.eq(ClassEntity::getModelId,params.get("modelId"))
|
||||||
|
.eq(ClassEntity::getState,"0"));
|
||||||
|
return classEntity;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<ClassEntity> getClassByCourseIdNoUser(Map<String, Object> params) {
|
public List<ClassEntity> getClassByCourseIdNoUser(Map<String, Object> params) {
|
||||||
MPJLambdaWrapper<ClassEntity> wrapper = new MPJLambdaWrapper<>();
|
MPJLambdaWrapper<ClassEntity> wrapper = new MPJLambdaWrapper<>();
|
||||||
@@ -1009,11 +1028,7 @@ public class ClassEntityServiceImpl extends ServiceImpl<ClassEntityDao, ClassEnt
|
|||||||
questionWrapper.leftJoin(ClassEntity.class,ClassEntity::getModelId,ClassModel::getId);
|
questionWrapper.leftJoin(ClassEntity.class,ClassEntity::getModelId,ClassModel::getId);
|
||||||
questionWrapper.selectAll(ClassTaskAndQuesReply.class);
|
questionWrapper.selectAll(ClassTaskAndQuesReply.class);
|
||||||
questionWrapper.eq(ClassEntity::getId,classEntity.getId());
|
questionWrapper.eq(ClassEntity::getId,classEntity.getId());
|
||||||
if (params.containsKey("userId")){
|
questionWrapper.eq(ClassTaskAndQuesReply::getUserId,params.get("userId"));
|
||||||
questionWrapper.eq(ClassTaskAndQuesReply::getUserId,params.get("userId"));
|
|
||||||
}else {
|
|
||||||
questionWrapper.eq(ClassTaskAndQuesReply::getUserId,ShiroUtils.getUId());
|
|
||||||
}
|
|
||||||
questionWrapper.eq(ClassTaskAndQuesReply::getClassId,classEntity.getId());
|
questionWrapper.eq(ClassTaskAndQuesReply::getClassId,classEntity.getId());
|
||||||
List<ClassTaskAndQuesReply> questionReplys = classTaskAndQuesReplyDao.selectList(questionWrapper);
|
List<ClassTaskAndQuesReply> questionReplys = classTaskAndQuesReplyDao.selectList(questionWrapper);
|
||||||
if (questionReplys.size() > 0) {
|
if (questionReplys.size() > 0) {
|
||||||
@@ -1032,7 +1047,7 @@ public class ClassEntityServiceImpl extends ServiceImpl<ClassEntityDao, ClassEnt
|
|||||||
task0wrapper.selectAll(ClassTaskAndQuesReply.class);
|
task0wrapper.selectAll(ClassTaskAndQuesReply.class);
|
||||||
task0wrapper.eq(ClassTask::getClassId,classEntity.getId());
|
task0wrapper.eq(ClassTask::getClassId,classEntity.getId());
|
||||||
task0wrapper.eq(ClassTask::getType,"0");
|
task0wrapper.eq(ClassTask::getType,"0");
|
||||||
task0wrapper.eq(ClassTaskAndQuesReply::getUserId,ShiroUtils.getUId());
|
task0wrapper.eq(ClassTaskAndQuesReply::getUserId,params.get("userId"));
|
||||||
List<ClassTaskAndQuesReply> task0Replys = classTaskAndQuesReplyDao.selectList(task0wrapper);
|
List<ClassTaskAndQuesReply> task0Replys = classTaskAndQuesReplyDao.selectList(task0wrapper);
|
||||||
if (task0Replys.size() > 0) {
|
if (task0Replys.size() > 0) {
|
||||||
for (ClassTaskAndQuesReply reply : task0Replys) {
|
for (ClassTaskAndQuesReply reply : task0Replys) {
|
||||||
@@ -1050,7 +1065,7 @@ public class ClassEntityServiceImpl extends ServiceImpl<ClassEntityDao, ClassEnt
|
|||||||
task1wrapper.selectAll(ClassTaskAndQuesReply.class);
|
task1wrapper.selectAll(ClassTaskAndQuesReply.class);
|
||||||
task1wrapper.eq(ClassTask::getClassId,classEntity.getId());
|
task1wrapper.eq(ClassTask::getClassId,classEntity.getId());
|
||||||
task1wrapper.eq(ClassTask::getType,"1");
|
task1wrapper.eq(ClassTask::getType,"1");
|
||||||
task1wrapper.eq(ClassTaskAndQuesReply::getUserId,ShiroUtils.getUId());
|
task1wrapper.eq(ClassTaskAndQuesReply::getUserId,params.get("userId"));
|
||||||
List<ClassTaskAndQuesReply> task1Replys = classTaskAndQuesReplyDao.selectList(task1wrapper);
|
List<ClassTaskAndQuesReply> task1Replys = classTaskAndQuesReplyDao.selectList(task1wrapper);
|
||||||
if (task1Replys.size() > 0) {
|
if (task1Replys.size() > 0) {
|
||||||
for (ClassTaskAndQuesReply reply : task1Replys) {
|
for (ClassTaskAndQuesReply reply : task1Replys) {
|
||||||
@@ -1064,7 +1079,7 @@ public class ClassEntityServiceImpl extends ServiceImpl<ClassEntityDao, ClassEnt
|
|||||||
if (classModel.getIsExperience()==1){
|
if (classModel.getIsExperience()==1){
|
||||||
double experienceScore = 0;
|
double experienceScore = 0;
|
||||||
MPJLambdaWrapper<ClassTask> experiencewrapper = new MPJLambdaWrapper<>();
|
MPJLambdaWrapper<ClassTask> experiencewrapper = new MPJLambdaWrapper<>();
|
||||||
experiencewrapper.eq(ClassTask::getUserId,ShiroUtils.getUId());
|
experiencewrapper.eq(ClassTask::getUserId,params.get("userId"));
|
||||||
experiencewrapper.eq(ClassTask::getClassId,classEntity.getId());
|
experiencewrapper.eq(ClassTask::getClassId,classEntity.getId());
|
||||||
experiencewrapper.eq(ClassTask::getType,"2");
|
experiencewrapper.eq(ClassTask::getType,"2");
|
||||||
List<ClassTask> experiences = classTaskDao.selectList(experiencewrapper);
|
List<ClassTask> experiences = classTaskDao.selectList(experiencewrapper);
|
||||||
@@ -1077,108 +1092,117 @@ public class ClassEntityServiceImpl extends ServiceImpl<ClassEntityDao, ClassEnt
|
|||||||
}
|
}
|
||||||
map.put("experienceScore",experienceScore);
|
map.put("experienceScore",experienceScore);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//处理分数占比
|
||||||
|
if (classModel.getIsExam()==1){
|
||||||
|
List<Map<String,Object>> classExamUsers = classExamUserDao.selectMaps(new MPJLambdaWrapper<ClassExamUser>()
|
||||||
|
.eq(ClassExamUser::getUserId,params.get("userId").toString())
|
||||||
|
.eq(ClassExamUser::getClassId,classEntity.getId())
|
||||||
|
.eq(ClassExamUser::getScoreSuccess,1)
|
||||||
|
.selectAs(ClassExamUser::getId,"id")
|
||||||
|
.selectAs(ClassExamUser::getScore,"score")
|
||||||
|
.orderByAsc(ClassExamUser::getStartTime));
|
||||||
|
int examScore = 0;
|
||||||
|
if (classExamUsers.size() > 0){
|
||||||
|
for (Map<String,Object> classExamUser:classExamUsers){
|
||||||
|
if ((int)classExamUser.get("score")>examScore){
|
||||||
|
examScore = (int)classExamUser.get("score");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
map.put("examScore",examScore);
|
||||||
|
map.put("classExamUsers",classExamUsers);
|
||||||
|
}
|
||||||
|
BigDecimal usualScore = new BigDecimal(0);
|
||||||
|
BigDecimal userScore = new BigDecimal(0);
|
||||||
|
double staticScore = 2.5;
|
||||||
|
if(classModel.getIsExam()==1){
|
||||||
|
BigDecimal examScore = new BigDecimal(map.get("examScore").toString());
|
||||||
|
map.put("examScore",examScore);
|
||||||
|
userScore = userScore.add(examScore);
|
||||||
|
}
|
||||||
|
if(classModel.getIsQuestion()==1){
|
||||||
|
BigDecimal questionScore = new BigDecimal(map.get("questionScore").toString());
|
||||||
|
if (questionScore.compareTo(new BigDecimal(0))!=0){
|
||||||
|
MPJLambdaWrapper<CourseCatalogueChapterEntity> wrapper = new MPJLambdaWrapper();
|
||||||
|
wrapper.leftJoin(ClassCourse.class,ClassCourse::getCourseId,CourseCatalogueChapterEntity::getCourseId);
|
||||||
|
wrapper.leftJoin(ClassModel.class,ClassModel::getId,ClassCourse::getModelId);
|
||||||
|
wrapper.eq(ClassModel::getId,classModel.getId());
|
||||||
|
wrapper.ne(CourseCatalogueChapterEntity::getQuestions,"");
|
||||||
|
int count = courseCatalogueChapterDao.selectCount(wrapper);
|
||||||
|
BigDecimal totalScore = new BigDecimal(staticScore*count);
|
||||||
|
questionScore = questionScore.divide(totalScore);
|
||||||
|
questionScore = questionScore.multiply(new BigDecimal(classModel.getQuestionScore()));
|
||||||
|
questionScore = questionScore.setScale(2,RoundingMode.HALF_UP);
|
||||||
|
map.put("questionScore",questionScore);
|
||||||
|
usualScore = usualScore.add(questionScore);
|
||||||
|
userScore = userScore.add(questionScore);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(classModel.getIsTask()==1){
|
||||||
|
BigDecimal task0Score = new BigDecimal(map.get("task0Score").toString());
|
||||||
|
if (task0Score.compareTo(new BigDecimal(0))!=0){
|
||||||
|
MPJLambdaWrapper<ClassTask> wrapper = new MPJLambdaWrapper();
|
||||||
|
wrapper.eq(ClassTask::getClassId,classEntity.getId());
|
||||||
|
wrapper.eq(ClassTask::getType,"0");
|
||||||
|
int count = classTaskDao.selectCount(wrapper);
|
||||||
|
BigDecimal totalScore = new BigDecimal(staticScore*count);
|
||||||
|
task0Score = task0Score.divide(totalScore);
|
||||||
|
task0Score = task0Score.multiply(new BigDecimal(classModel.getTaskScore()));
|
||||||
|
task0Score = task0Score.setScale(2,RoundingMode.HALF_UP);
|
||||||
|
map.put("task0Score",task0Score);
|
||||||
|
usualScore = usualScore.add(task0Score);
|
||||||
|
userScore = userScore.add(task0Score);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(classModel.getIsMedicalcase()==1){
|
||||||
|
BigDecimal task1Score = new BigDecimal(map.get("task1Score").toString());
|
||||||
|
if (task1Score.compareTo(new BigDecimal(0))!=0){
|
||||||
|
MPJLambdaWrapper<ClassTask> wrapper = new MPJLambdaWrapper();
|
||||||
|
wrapper.eq(ClassTask::getClassId,classEntity.getId());
|
||||||
|
wrapper.eq(ClassTask::getType,"1");
|
||||||
|
int count = classTaskDao.selectCount(wrapper);
|
||||||
|
BigDecimal totalScore = new BigDecimal(staticScore*count);
|
||||||
|
task1Score = task1Score.divide(totalScore);
|
||||||
|
task1Score = task1Score.multiply(new BigDecimal(classModel.getMedicalcaseScore()));
|
||||||
|
task1Score = task1Score.setScale(2,RoundingMode.HALF_UP);
|
||||||
|
map.put("task1Score",task1Score);
|
||||||
|
usualScore = usualScore.add(task1Score);
|
||||||
|
userScore = userScore.add(task1Score);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(classModel.getIsExperience()==1){
|
||||||
|
BigDecimal experienceScore = new BigDecimal(map.get("experienceScore").toString());
|
||||||
|
if (experienceScore.compareTo(new BigDecimal(classModel.getExperienceScore()))>-1){
|
||||||
|
experienceScore = new BigDecimal(classModel.getExperienceScore());
|
||||||
|
}
|
||||||
|
map.put("experienceScore",experienceScore);
|
||||||
|
usualScore = usualScore.add(experienceScore);
|
||||||
|
userScore = userScore.add(experienceScore);
|
||||||
|
}
|
||||||
|
map.put("usualScore",usualScore);
|
||||||
|
map.put("userScore",userScore);
|
||||||
|
|
||||||
return map;
|
return map;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List userScoreList(Map<String, Object> params) {
|
public List userScoreList(Map<String, Object> params) {
|
||||||
ClassEntity classEntity = this.getBaseMapper().selectById(params.get("classId").toString());
|
ClassEntity classEntity = this.getBaseMapper().selectById(params.get("classId").toString());
|
||||||
ClassModel classModel = classModelDao.selectById(classEntity.getModelId());
|
|
||||||
List<ClassUser> classUsers = classUserDao.selectList(new LambdaQueryWrapper<ClassUser>()
|
List<ClassUser> classUsers = classUserDao.selectList(new LambdaQueryWrapper<ClassUser>()
|
||||||
.eq(ClassUser::getClassId,classEntity.getId()).eq(ClassUser::getRole,"0"));
|
.eq(ClassUser::getClassId,classEntity.getId()).eq(ClassUser::getRole,"0"));
|
||||||
List<Map<String,Object>> resultList = new ArrayList<>();
|
List<Map<String,Object>> resultList = new ArrayList<>();
|
||||||
if (classUsers.size() > 0){
|
if (classUsers.size() > 0){
|
||||||
for (ClassUser classUser:classUsers){
|
for (ClassUser classUser:classUsers){
|
||||||
params.put("userId",classUser.getUserId());
|
params.put("userId",classUser.getUserId());
|
||||||
Map<String,Object> map = getUserScore(params);
|
Map<String, Object> map = getUserScore(params);
|
||||||
map.put("user",myUserDao.selectById(classUser.getUserId()));
|
map.put("user",myUserDao.selectById(classUser.getUserId()));
|
||||||
if (classModel.getIsExam()==1){
|
|
||||||
List<Map<String,Object>> classExamUsers = classExamUserDao.selectMaps(new MPJLambdaWrapper<ClassExamUser>()
|
|
||||||
.eq(ClassExamUser::getUserId,classUser.getUserId())
|
|
||||||
.eq(ClassExamUser::getClassId,classEntity.getId())
|
|
||||||
.eq(ClassExamUser::getScoreSuccess,1)
|
|
||||||
.selectAs(ClassExamUser::getId,"id")
|
|
||||||
.selectAs(ClassExamUser::getScore,"score")
|
|
||||||
.orderByAsc(ClassExamUser::getStartTime));
|
|
||||||
int examScore = 0;
|
|
||||||
if (classExamUsers.size() > 0){
|
|
||||||
for (Map<String,Object> classExamUser:classExamUsers){
|
|
||||||
if ((int)classExamUser.get("score")>examScore){
|
|
||||||
examScore = (int)classExamUser.get("score");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
map.put("examScore",examScore);
|
|
||||||
map.put("classExamUsers",classExamUsers);
|
|
||||||
}
|
|
||||||
//处理分数占比
|
|
||||||
BigDecimal userScore = new BigDecimal(0);;
|
|
||||||
double staticScore = 2.5;
|
|
||||||
if(classModel.getIsExam()==1){
|
|
||||||
BigDecimal examScore = new BigDecimal(map.get("examScore").toString());
|
|
||||||
map.put("examScore",examScore);
|
|
||||||
userScore = userScore.add(examScore);
|
|
||||||
}
|
|
||||||
if(classModel.getIsQuestion()==1){
|
|
||||||
BigDecimal questionScore = new BigDecimal(map.get("questionScore").toString());
|
|
||||||
MPJLambdaWrapper<CourseCatalogueChapterEntity> wrapper = new MPJLambdaWrapper();
|
|
||||||
wrapper.leftJoin(ClassCourse.class,ClassCourse::getCourseId,CourseCatalogueChapterEntity::getCourseId);
|
|
||||||
wrapper.leftJoin(ClassModel.class,ClassModel::getId,ClassCourse::getModelId);
|
|
||||||
wrapper.eq(ClassModel::getId,classModel.getId());
|
|
||||||
wrapper.ne(CourseCatalogueChapterEntity::getQuestions,"");
|
|
||||||
int count = courseCatalogueChapterDao.selectCount(wrapper);
|
|
||||||
BigDecimal totalScore = new BigDecimal(staticScore*count);
|
|
||||||
questionScore = questionScore.divide(totalScore);
|
|
||||||
questionScore = questionScore.multiply(new BigDecimal(classModel.getQuestionScore()));
|
|
||||||
questionScore = questionScore.setScale(2,RoundingMode.HALF_UP);
|
|
||||||
map.put("questionScore",questionScore);
|
|
||||||
userScore = userScore.add(questionScore);
|
|
||||||
}
|
|
||||||
if(classModel.getIsTask()==1){
|
|
||||||
BigDecimal task0Score = new BigDecimal(map.get("task0Score").toString());
|
|
||||||
MPJLambdaWrapper<ClassTask> wrapper = new MPJLambdaWrapper();
|
|
||||||
wrapper.eq(ClassTask::getClassId,classEntity.getId());
|
|
||||||
wrapper.eq(ClassTask::getType,"0");
|
|
||||||
int count = classTaskDao.selectCount(wrapper);
|
|
||||||
BigDecimal totalScore = new BigDecimal(staticScore*count);
|
|
||||||
task0Score = task0Score.divide(totalScore);
|
|
||||||
task0Score = task0Score.multiply(new BigDecimal(classModel.getTaskScore()));
|
|
||||||
task0Score = task0Score.setScale(2,RoundingMode.HALF_UP);
|
|
||||||
map.put("task0Score",task0Score);
|
|
||||||
userScore = userScore.add(task0Score);
|
|
||||||
}
|
|
||||||
if(classModel.getIsMedicalcase()==1){
|
|
||||||
BigDecimal task1Score = new BigDecimal(map.get("task1Score").toString());
|
|
||||||
MPJLambdaWrapper<ClassTask> wrapper = new MPJLambdaWrapper();
|
|
||||||
wrapper.eq(ClassTask::getClassId,classEntity.getId());
|
|
||||||
wrapper.eq(ClassTask::getType,"1");
|
|
||||||
int count = classTaskDao.selectCount(wrapper);
|
|
||||||
BigDecimal totalScore = new BigDecimal(staticScore*count);
|
|
||||||
task1Score = task1Score.divide(totalScore);
|
|
||||||
task1Score = task1Score.multiply(new BigDecimal(classModel.getMedicalcaseScore()));
|
|
||||||
task1Score = task1Score.setScale(2,RoundingMode.HALF_UP);
|
|
||||||
map.put("task1Score",task1Score);
|
|
||||||
userScore = userScore.add(task1Score);
|
|
||||||
}
|
|
||||||
if(classModel.getIsExperience()==1){
|
|
||||||
BigDecimal experienceScore = new BigDecimal(map.get("experienceScore").toString());
|
|
||||||
if (experienceScore.compareTo(new BigDecimal(classModel.getExperienceScore()))>-1){
|
|
||||||
experienceScore = new BigDecimal(classModel.getExperienceScore());
|
|
||||||
}
|
|
||||||
map.put("experienceScore",experienceScore);
|
|
||||||
userScore = userScore.add(experienceScore);
|
|
||||||
}
|
|
||||||
map.put("userScore",userScore);
|
|
||||||
resultList.add(map);
|
resultList.add(map);
|
||||||
}
|
}
|
||||||
Collections.sort(resultList, new Comparator<Map<String,Object>>() {
|
Collections.sort(resultList, new Comparator<Map<String,Object>>() {
|
||||||
@Override
|
@Override
|
||||||
public int compare(Map<String,Object> m1, Map<String,Object> m2) {
|
public int compare(Map<String,Object> m1, Map<String,Object> m2) {
|
||||||
if((double)(m2.get("userScore")) > (double)(m1.get("userScore"))){
|
return ((BigDecimal)m2.get("userScore")).compareTo((BigDecimal)m1.get("userScore"));
|
||||||
return 1;
|
|
||||||
}else {
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -157,10 +157,10 @@ public class ClassExamServiceImpl extends ServiceImpl<ClassExamDao, ClassExam> i
|
|||||||
List<Map<String,Object>> sList = new ArrayList<>();
|
List<Map<String,Object>> sList = new ArrayList<>();
|
||||||
List<Map<String,Object>> mList = new ArrayList<>();
|
List<Map<String,Object>> mList = new ArrayList<>();
|
||||||
if (courseList.size() > 0) {
|
if (courseList.size() > 0) {
|
||||||
// int stotal = 60;//单选题总数
|
int stotal = 60;//单选题总数
|
||||||
// int mtotal = 40;//多选题总数
|
int mtotal = 40;//多选题总数
|
||||||
int stotal = 5;//单选题总数
|
// int stotal = 5;//单选题总数
|
||||||
int mtotal = 5;//多选题总数
|
// int mtotal = 5;//多选题总数
|
||||||
int snum = (int)Math.floor(stotal/courseList.size());
|
int snum = (int)Math.floor(stotal/courseList.size());
|
||||||
int mnum = (int)Math.floor(mtotal/courseList.size());
|
int mnum = (int)Math.floor(mtotal/courseList.size());
|
||||||
for (ClassCourse classCourse:courseList){
|
for (ClassCourse classCourse:courseList){
|
||||||
@@ -229,7 +229,7 @@ public class ClassExamServiceImpl extends ServiceImpl<ClassExamDao, ClassExam> i
|
|||||||
DelayQueueConfig.COMMON_EXCHANGE,
|
DelayQueueConfig.COMMON_EXCHANGE,
|
||||||
DelayQueueConfig.COMMON_ROUTING_KEY,
|
DelayQueueConfig.COMMON_ROUTING_KEY,
|
||||||
"examSubmit"+","+classExamUser.getId(),
|
"examSubmit"+","+classExamUser.getId(),
|
||||||
messagePostProcessor(60*60*1000+10000)//10秒延迟
|
messagePostProcessor(2*60*60*1000+3000)//3秒延迟
|
||||||
);
|
);
|
||||||
return R.ok().put("examPaper",resultList).put("id",classExamUser.getId()).put("startTime",classExamUser.getStartTime());
|
return R.ok().put("examPaper",resultList).put("id",classExamUser.getId()).put("startTime",classExamUser.getStartTime());
|
||||||
|
|
||||||
|
|||||||
@@ -315,11 +315,11 @@ public class AliPayServiceImpl implements AliPayService {
|
|||||||
}
|
}
|
||||||
return "success";
|
return "success";
|
||||||
}
|
}
|
||||||
log.info(">>>>>>>>>>验签失败");
|
log.error(">>>>>>>>>>验签失败 params = {}", params.toString());
|
||||||
return "fail";
|
return "fail";
|
||||||
|
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
log.info(">>>>>>>>>>订单回调异常: 订单号 = {}, msg = {}", params.get("out_trade_no"), e.getMessage());
|
log.error(">>>>>>>>>>订单回调异常: 订单号 = {}, msg = {}", params.toString(), e.getMessage());
|
||||||
return "fail";
|
return "fail";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user