package com.starry.admin.modules.system.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.starry.admin.modules.system.module.entity.SysDictDataEntity;
import com.starry.admin.modules.system.vo.SysDictDataVo;
import java.util.List;

/**
 * 字典数据表Service接口
 *
 * @author admin
 */
public interface ISysDictDataService extends IService<SysDictDataEntity> {
    /**
     * 查询字典数据表
     *
     * @param dictDataId
     *            字典数据表主键
     * @return 字典数据表
     */
    SysDictDataEntity selectXlDictDataByDictDataId(Long dictDataId);

    /**
     * 查询字典数据表列表
     *
     * @param sysDictDataEntity
     *            字典数据表
     * @return 字典数据表集合
     */
    IPage<SysDictDataEntity> selectXlDictDataList(SysDictDataVo sysDictDataEntity);

    /**
     * 新增字典数据表
     *
     * @param sysDictDataEntity
     *            字典数据表
     * @return 结果
     */
    boolean create(SysDictDataEntity sysDictDataEntity);

    /**
     * 修改字典数据表
     *
     * @param sysDictDataEntity
     *            字典数据表
     * @return 结果
     */
    boolean update(SysDictDataEntity sysDictDataEntity);

    /**
     * 批量删除字典数据表
     *
     * @param dictDataIds
     *            需要删除的字典数据表主键集合
     * @return 结果
     */
    int deleteXlDictDataByDictDataIds(Long[] dictDataIds);

    /**
     * 删除字典数据表信息
     *
     * @param dictDataId
     *            字典数据表主键
     * @return 结果
     */
    int deleteXlDictDataByDictDataId(Long dictDataId);

    /**
     * 根据字典类型查询字典数据
     *
     * @param dictType
     *            字典类型
     * @return 字典数据集合信息
     */
    List<SysDictDataEntity> selectDictDataByType(String dictType);
}
