[feat][M]: 添加重构接口findWeeksAble,通过UCID查找

master
Romesum 5 years ago
parent c686061831
commit 42d8852410

@ -92,8 +92,9 @@ public class LabTimeController {
@RequestParam("year") String year, @RequestParam("year") String year,
@RequestParam("semester") Integer semester, @RequestParam("semester") Integer semester,
@RequestParam("day") Integer day, @RequestParam("day") Integer day,
@RequestParam("time") Integer time) { @RequestParam("time") Integer time,
List<Integer> weeks = labTimeService.findWeeksAble(lab_id, year, semester, day, time); @RequestParam("uc_id") Integer uc_id) {
List<Integer> weeks = labTimeService.findWeeksAble(lab_id, year, semester, day, time, uc_id);
return ResultVOUtil.success(weeks); return ResultVOUtil.success(weeks);
} }

@ -85,4 +85,24 @@ public interface LabTimeRepository extends JpaRepository<LabTimeBean,String> {
" tb_lab_time.lt_id not in (select lt_id from tb_lab_record where status is not null)" , nativeQuery = true) " tb_lab_time.lt_id not in (select lt_id from tb_lab_record where status is not null)" , nativeQuery = true)
List<LabTimeBean> findWeeksAbleBook(Integer lab_id, String year, Integer semester, Integer day, Integer time) ; List<LabTimeBean> findWeeksAbleBook(Integer lab_id, String year, Integer semester, Integer day, Integer time) ;
@Query(value = "SELECT " +
" tb_lab_time.* " +
"FROM " +
"tb_lab_time LEFT JOIN tb_lab_record ON tb_lab_time.lt_id=tb_lab_record.lt_id " +
"WHERE " +
" tb_lab_time.lab_id = ?1 AND " +
" tb_lab_time.`year` = ?2 AND " +
" tb_lab_time.semester = ?3 AND " +
" tb_lab_time.`day` = ?4 AND " +
" tb_lab_time.time = ?5 AND " +
" tb_lab_time.lt_id not in (select lt_id from tb_lab_record where status is not null)" +
"OR " +
" tb_lab_time.lab_id = ?1 AND " +
" tb_lab_time.`year` = ?2 AND " +
" tb_lab_time.semester = ?3 AND " +
" tb_lab_time.`day` = ?4 AND " +
" tb_lab_time.time = ?5 AND " +
"tb_lab_record.uc_id = ?6" , nativeQuery = true)
List<LabTimeBean> findWeeksAbleBook(Integer lab_id, String year, Integer semester, Integer day, Integer time,Integer uc_id) ;
} }

@ -83,6 +83,14 @@ public interface LabTimeService {
*/ */
List<Integer> findWeeksAble(Integer lab_id,String year,Integer semester, Integer day,Integer time) ; List<Integer> findWeeksAble(Integer lab_id,String year,Integer semester, Integer day,Integer time) ;
/**
* ucid
*author
* @param lab_idyearsemester
* @return List<Integer>
*/
List<Integer> findWeeksAble(Integer lab_id,String year,Integer semester, Integer day,Integer time,Integer uc_id) ;
/** /**
* *
*/ */

@ -119,6 +119,24 @@ public class LabTimeServiceImpl implements LabTimeService {
return weeks; return weeks;
} }
/**
* author
*
* @param lab_idyearsemester
* @param year
* @param semester
* @return
*/
@Override
public List<Integer> findWeeksAble(Integer lab_id, String year, Integer semester, Integer day, Integer time,Integer uc_id) {
List<LabTimeBean> list = labTimeRepository.findWeeksAbleBook(lab_id, year, semester, day, time, uc_id);
List<Integer> weeks = new ArrayList<>();
for (LabTimeBean labtime : list) {
weeks.add(labtime.getWeek());
}
return weeks;
}
@Override @Override
public List<LabTimeBean> findTimes(Integer lab_id, String year, Integer semester, Integer day, Integer time) { public List<LabTimeBean> findTimes(Integer lab_id, String year, Integer semester, Integer day, Integer time) {
return labTimeRepository.findByLabIdAndYearAndSemesterAndDayAndTime(lab_id, year, semester, day, time); return labTimeRepository.findByLabIdAndYearAndSemesterAndDayAndTime(lab_id, year, semester, day, time);

Loading…
Cancel
Save