Commit 1eab11c7 authored by 李博今's avatar 李博今

周视图修改

parent e746c5c6
...@@ -120,5 +120,9 @@ public interface BSlScheduleRepository extends BaseMapper<BSlSchedule> { ...@@ -120,5 +120,9 @@ public interface BSlScheduleRepository extends BaseMapper<BSlSchedule> {
"\tb_sl_schedule.business_id = #{businessId}") "\tb_sl_schedule.business_id = #{businessId}")
@ResultMap(value = "DetailResultMap") @ResultMap(value = "DetailResultMap")
ScheduleDetail queryDetail(String businessId); ScheduleDetail queryDetail(String businessId);
@Select("select count(distinct(edu_class_code)) from b_sl_schedule \n" +
"where start_day between #{0} and #{1} and sub_agency_id = #{2}")
int getNumOfEduClass(String minTime,String maxTime,String subAgencyId);
} }
...@@ -81,4 +81,8 @@ public class BSLData { ...@@ -81,4 +81,8 @@ public class BSLData {
break; break;
} }
} }
public boolean hasClasses(){
return this.classes.innerObjectList.size() != 0;
}
} }
...@@ -17,7 +17,7 @@ public class ScheduleResult2 { ...@@ -17,7 +17,7 @@ public class ScheduleResult2 {
private String weekNum; private String weekNum;
private Map<String,BSLData> bSlSchedules; private List<BSLData> bSlSchedules;
private List<BCourseCode> bCourseCodes; private List<BCourseCode> bCourseCodes;
......
...@@ -240,7 +240,7 @@ public class BSlScheduleServiceImpl implements BSlScheduleService { ...@@ -240,7 +240,7 @@ public class BSlScheduleServiceImpl implements BSlScheduleService {
@Override @Override
public ScheduleResult2 queryMoreBSlSchedules2(String week, String termCode1, String subAgencyId) { public ScheduleResult2 queryMoreBSlSchedules2(String week, String termCode1, String subAgencyId) {
Map<String,BSLData> resultMap = new HashMap<>(); List<BSLData> resultList = new ArrayList<>();
ScheduleResult2 scheduleResult = new ScheduleResult2(); ScheduleResult2 scheduleResult = new ScheduleResult2();
BTerm bTerm = bTermRepository.queryBtermByCode(termCode1).get(0); BTerm bTerm = bTermRepository.queryBtermByCode(termCode1).get(0);
//获取课程时间列表 //获取课程时间列表
...@@ -279,15 +279,32 @@ public class BSlScheduleServiceImpl implements BSlScheduleService { ...@@ -279,15 +279,32 @@ public class BSlScheduleServiceImpl implements BSlScheduleService {
maxCal.add(Calendar.DATE, 1); maxCal.add(Calendar.DATE, 1);
} }
SimpleDateFormat format0 = new SimpleDateFormat("yyyy-MM-dd"); SimpleDateFormat format0 = new SimpleDateFormat("yyyy-MM-dd");
int classNum = bSlScheduleRepository.getNumOfEduClass(
format0.format(minCal.getTime()),
format0.format(maxCal.getTime()),
subAgencyId);
for(int i = 0 ; i < classNum * bCourseCodeList.size() ; i++){
resultList.add(new BSLData());
//当是班级数 * 每日课程数的倍数时,添加一条空记录,方便前台分割
if((i + 1) % bCourseCodeList.size() == 0){
resultList.add(new BSLData());
}
}
//会多出一行,移除
resultList.remove(resultList.size() - 1);
List<BSlSchedule> list = bSlScheduleRepository.queryMoreBSlSchedules( List<BSlSchedule> list = bSlScheduleRepository.queryMoreBSlSchedules(
format0.format(minCal.getTime()), format0.format(minCal.getTime()),
format0.format(maxCal.getTime()), format0.format(maxCal.getTime()),
subAgencyId); subAgencyId);
//需要向前推进的量
int post = 0;
for(BSlSchedule bSlSchedule : list){ for(BSlSchedule bSlSchedule : list){
int i = list.indexOf(bSlSchedule);
if(i != 0 && i % bCourseCodeList.size() == 0)
post++;
//判断这里是否有此班级,此时间的记录 //判断这里是否有此班级,此时间的记录
BSLData bslData = resultMap.get(bSlSchedule.getEduClassCode() + "," + bSlSchedule.getSeq()); BSLData bslData = (BSLData) resultList.get(i + post);
if(bslData == null){ if(!bslData.hasClasses()){
bslData = new BSLData();
bslData.addDetail(bSlSchedule.getEduClassCode(),bSlSchedule.getBEduClass().getClassName(),"classes"); bslData.addDetail(bSlSchedule.getEduClassCode(),bSlSchedule.getBEduClass().getClassName(),"classes");
BCourseCode bCourseCode1 = bCourseCodeList.get(Integer.valueOf(bSlSchedule.getSeq()) - 1); BCourseCode bCourseCode1 = bCourseCodeList.get(Integer.valueOf(bSlSchedule.getSeq()) - 1);
bslData.addDetail(bSlSchedule.getSeq(),bCourseCode1.getStartDate() + "-" + bCourseCode1.getEndDate(),"section"); bslData.addDetail(bSlSchedule.getSeq(),bCourseCode1.getStartDate() + "-" + bCourseCode1.getEndDate(),"section");
...@@ -302,7 +319,7 @@ public class BSlScheduleServiceImpl implements BSlScheduleService { ...@@ -302,7 +319,7 @@ public class BSlScheduleServiceImpl implements BSlScheduleService {
bslData.addDetail(bSlSchedule.getTeaCode(),bSlSchedule.getTeacherName(),DAY_OF_WEEK); bslData.addDetail(bSlSchedule.getTeaCode(),bSlSchedule.getTeacherName(),DAY_OF_WEEK);
bslData.addDetail(bSlSchedule.getRoomCode(),bSlSchedule.getBRooms().getClassroomName(),DAY_OF_WEEK); bslData.addDetail(bSlSchedule.getRoomCode(),bSlSchedule.getBRooms().getClassroomName(),DAY_OF_WEEK);
bslData.addDetail(bSlSchedule.getBusinessId(),"businessId",DAY_OF_WEEK); bslData.addDetail(bSlSchedule.getBusinessId(),"businessId",DAY_OF_WEEK);
resultMap.put(bSlSchedule.getEduClassCode() + "," + bSlSchedule.getSeq(),bslData); // resultMap.put(bSlSchedule.getEduClassCode() + "," + bSlSchedule.getSeq(),bslData);
}else{ }else{
//判断星期几 //判断星期几
Calendar calendar = Calendar.getInstance(); Calendar calendar = Calendar.getInstance();
...@@ -317,7 +334,7 @@ public class BSlScheduleServiceImpl implements BSlScheduleService { ...@@ -317,7 +334,7 @@ public class BSlScheduleServiceImpl implements BSlScheduleService {
bslData.addDetail(bSlSchedule.getBusinessId(),"businessId",DAY_OF_WEEK); bslData.addDetail(bSlSchedule.getBusinessId(),"businessId",DAY_OF_WEEK);
} }
} }
scheduleResult.setBSlSchedules(resultMap); scheduleResult.setBSlSchedules(resultList);
scheduleResult.setBCourseCodes(bCourseCodeList); scheduleResult.setBCourseCodes(bCourseCodeList);
return scheduleResult; return scheduleResult;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment