课程查询前问题

This commit is contained in:
daihh
2022-11-03 23:07:57 +08:00
parent 747a5cf1f3
commit 550a3e45ff

View File

@@ -5,7 +5,9 @@ import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.transaction.Transactional;
@@ -425,6 +427,7 @@ public class StudyCourseServiceImpl implements IStudyCourseService{
List<Object[]> clist= studyCourseDao.findListFields(courseHql,studyCourseQuery.getIds());
List<Object[]> slist= studyCourseDao.findListFields(studyHql,studyCourseQuery.getAids(),studyCourseQuery.getIds());
//数据数量一般不会太多不超过20条所以直接使用嵌套循环
Map<String,Object> map=new HashMap<String,Object>();
for(Object[] sobjs : slist) {
StudyCourseSimple sc=new StudyCourseSimple();
sc.setCourseId(ConvertUtil.toStr(sobjs[0]));
@@ -449,6 +452,32 @@ public class StudyCourseServiceImpl implements IStudyCourseService{
}
rs.add(sc);
}
//检查针对于没有学习记录的课程
for(Object[] cobjs : clist) {
String cid=ConvertUtil.toStr(cobjs[0]);
boolean has=false;
for(StudyCourseSimple scs : rs) {
if(scs.getCourseId().equals(cid)) {
has=true;
break;
}
}
if(!has) {
StudyCourseSimple sc=new StudyCourseSimple();
sc.setCourseId(cid);
sc.setProgress(0f);
sc.setAid("");
sc.setCourseImage(ConvertUtil.toStr(cobjs[1]));
sc.setLastScore(ConvertUtil.toFloat(cobjs[2]));//课程分数,使用此值来承载
sc.setCourseName(ConvertUtil.toStr(cobjs[3]));
sc.setSysType1(ConvertUtil.toStr(cobjs[4]));
sc.setSysType2(ConvertUtil.toStr(cobjs[5]));
sc.setSysType3(ConvertUtil.toStr(cobjs[6]));
rs.add(sc);
}
}
}catch(Exception e) {
log.error("查询错误",e);
e.printStackTrace();