package com.gkhy.fourierSpecialGasMonitor.domain.sysAdmin.repository.jpa;
|
|
import com.gkhy.fourierSpecialGasMonitor.domain.sysAdmin.entity.MenuItem;
|
import org.springframework.data.jpa.repository.JpaRepository;
|
import org.springframework.data.jpa.repository.Modifying;
|
import org.springframework.data.jpa.repository.Query;
|
|
import java.util.List;
|
|
public interface MenuItemRepository extends JpaRepository<MenuItem, Long> {
|
|
@Query(value = "select m from MenuItem m where m.id = :menuItemId and m.visiable = true and m.del = 0")
|
MenuItem findVisiableById(Long menuItemId);
|
|
@Query(value = "select m from MenuItem m where m.id = :menuId and m.visiable = false and m.del = 0")
|
MenuItem findDisVisiableById(Long menuId);
|
|
@Modifying
|
@Query(value = "update MenuItem m set m.del = 1 where m.id = :menuItemId")
|
Integer logicDeleteMenuItem(Long menuItemId);
|
|
@Modifying
|
@Query(value = "delete from MenuItem m where m.id = :menuItemId")
|
Integer deleteByMenuItemId(Long menuItemId);
|
|
@Modifying
|
@Query(value = "update MenuItem m set m.visiable = true where m.id = :menuItemId and m.visiable = false and m.del = 0")
|
Integer setMenuItemVisiabel(Long menuItemId);
|
|
@Modifying
|
@Query(value = "update MenuItem m set m.visiable = false where m.id = :menuItemId and m.visiable = true and m.del = 0")
|
Integer setMenuItemDisVisiabel(Long menuItemId);
|
|
@Query(value = "select m from MenuItem m where m.del = 0 order by m.priority asc ")
|
List findAllActive();
|
|
@Query(value = "select m from MenuItem m where m.del = 0 and m.visiable = true order by m.priority asc ")
|
List findAllVisiable();
|
|
@Query(value = "select m from MenuItem m where m.id in :idList and m.del = 0 order by m.priority asc ")
|
List<MenuItem> findAllActiveByIdIn(List<Long> idList);
|
|
@Query(value = "select m from MenuItem m where m.id in :idList and m.del = 0 and m.visiable = :visiable order by m.priority asc ")
|
List<MenuItem> findAllByIdInAndVisiable(List<Long> idList,Boolean visiable);
|
|
|
@Query(value = "select m from MenuItem m where m.type = 1 and m.del = 0 order by m.priority asc")
|
List<MenuItem> findAllActivePublicMenuItems();
|
|
@Query("select count(m) from MenuItem m where m.parentId = :parentId")
|
Integer countSubMenuItems(Long parentId);
|
}
|