backend/buisnesslogic/src/main/java/com/plannaplan/repositories/GroupRepository.java

31 lines
1.2 KiB
Java
Raw Normal View History

package com.plannaplan.repositories;
2020-08-08 14:14:42 +02:00
import java.util.List;
import java.util.Optional;
2020-08-08 14:14:42 +02:00
import com.plannaplan.entities.Groups;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository;
@Repository
public interface GroupRepository extends JpaRepository<Groups, Long> {
2020-09-02 16:56:49 +02:00
@Query("FROM Groups WHERE time = ?1 AND room = ?2 AND capacity = ?3")
Optional<Groups> find(@Param("time") int time, @Param("room") String room, @Param("capacity") int capacity);
2020-08-08 14:14:42 +02:00
2020-09-02 16:56:49 +02:00
@Query("FROM Groups WHERE course_id = ?1")
2020-08-08 14:14:42 +02:00
List<Groups> getByCourse(@Param("id") Long id);
2020-11-17 19:36:56 +01:00
// SELECT group_id, COUNT(*) AS assinged_times FROM assignment WHERE
// is_past_assignment=0 GROUP BY group_id HAVING group_id=7;
@Query("SELECT COUNT(*) AS assinged_times FROM Assignment WHERE isPastAssignment=false GROUP BY group HAVING group_id=?1")
Number getAssignedAmount(Long groupId);
// @Query("SELECT group_id, COUNT(*) AS assinged_times FROM assignment WHERE
// is_past_assignment=0 GROUP BY group_id HAVING group_id=7;")
// Number getTmpSqlAssignedAmount(Long groupId);
}