package com.mzl.flower.mapper.film;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.mzl.flower.dto.request.film.FilmWorksQueryDTO;
import com.mzl.flower.dto.response.film.FilmLocationNameDTO;
import com.mzl.flower.dto.response.film.FilmWorksVO;
import com.mzl.flower.entity.film.FilmWorks;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.MapKey;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
import java.util.Map;
/**
*
* 影视作品信息表 Mapper 接口
*
*
* @author generator@Fang
* @since 2025-05-19
*/
public interface FilmWorksMapper extends BaseMapper {
@Select("select * from film_works where deleted = '0' and user_type = 'admin'")
List getFilmWorksAll();
List queryPage(@Param("dto") FilmWorksQueryDTO dto, Page page);
FilmWorksVO selectInfoById(@Param("id") Long id, @Param("userId") String userId);
//获取权重最高的数据
@Select("select * from film_works where sticky_weight = (select max(sticky_weight) from film_works) limit 1")
FilmWorks getTopStickyWeight();
@Select("select * from film_works where deleted = '0' and status = 'pending_create'")
List pendingCreate();
@Select("")
@MapKey("id")
List getFilmWorksByIds(@Param("list") List ids);
@Select("select * from film_works where deleted = '0' and name_cn = #{nameCn} and type = #{type} and release_year = #{releaseYear} limit 1")
FilmWorks getFilmWorksByName(@Param("nameCn") String nameCn, @Param("type")String type, @Param("releaseYear") String releaseYear);
}