package com.oying.modules.system.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.oying.modules.system.domain.Menu; import com.oying.modules.system.domain.dto.MenuQueryCriteria; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; import java.util.LinkedHashSet; import java.util.List; import java.util.Set; /** * @author Z * @date 2023-06-20 */ @Mapper public interface MenuMapper extends BaseMapper { List findAll(@Param("criteria") MenuQueryCriteria criteria); LinkedHashSet findByRoleIdsAndTypeNot(@Param("roleIds") Set roleIds, @Param("type") Integer type); List findByPidIsNullOrderByMenuSort(); List findByPidOrderByMenuSort(@Param("pid") Long pid); @Select("SELECT menu_id id FROM sys_menu WHERE title = #{title}") Menu findByTitle(@Param("title") String title); @Select("SELECT menu_id id FROM sys_menu WHERE name = #{name}") Menu findByComponentName(@Param("name") String name); @Select("SELECT count(*) FROM sys_menu WHERE pid = #{pid}") int countByPid(@Param("pid") Long pid); @Select("update sys_menu set sub_count = #{count} where menu_id = #{menuId} ") void updateSubCntById(@Param("count") int count, @Param("menuId") Long menuId); }