SubscribeLivingDao.java 1.34 KB
package com.wd.room.dao;

import androidx.room.Dao;
import androidx.room.Insert;
import androidx.room.OnConflictStrategy;
import androidx.room.Query;
import com.wd.room.entity.SubscribeLivingModel;
import java.util.List;

/**
 * 我的预约直播列表中直播中状态缓存数据
 * @author baozhaoxin
 * @version [V1.0.0, 2023/10/18]
 * @since V1.0.0
 */
@Dao
public interface SubscribeLivingDao {

    /**
     * 插入models
     * @param models
     */
    @Insert(onConflict = OnConflictStrategy.REPLACE)
    void insert(SubscribeLivingModel... models);

    /**
     * 根据userId删除数据
     * */
    @Query("DELETE FROM tb_subscribe_living WHERE userId=:userId")
    void deleteByUserId(String userId);

    /**
     * 根据userId和keys删除数据
     * */
    @Query("DELETE FROM tb_subscribe_living WHERE keys=:keys")
    void deleteByKeys(String keys);

    /**
     * 根据userId查所有数据
     * @param userId
     * @return
     */
    @Query("SELECT * FROM tb_subscribe_living WHERE userId=:userId")
    List<SubscribeLivingModel> getAllByUserId(String userId);

    /**
     * 根据userId和keys查数据
     * @param userId
     * @param keys
     * @return
     */
    @Query("SELECT * FROM tb_subscribe_living WHERE userId=:userId And keys =:keys")
    SubscribeLivingModel getModelByUserIdAndKeys(String userId,String keys);

}