package com.dxhy.jxpt.baseService.config.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.dxhy.api.model.config.sys.SysDictdetaEntity;
import com.dxhy.common.utils.PageUtils;

import java.util.List;
import java.util.Map;

/**
 * 数据字典
 *
 * @author jiaohongyang
 */
public interface SysDictdetaService extends IService<SysDictdetaEntity> {
    /**
     * 字典分页
     * 
     * @param params
     *            查询条件
     * @return 分页信息
     */
    PageUtils queryPage(Map<String, Object> params);

    /**
     * 根据id 查询字典数据
     * 
     * @param id
     *            字典id
     * @return 字典信息
     */
    Long queryDictDetaId(Long id);

    /**
     * 查询字典数量
     * 
     * @param dicttypecode
     *            字典主信息编码
     * @param dictcode
     *            字典明细编码
     * @param dictDetaId
     *            字典id
     * @return 字典数据
     */
    Integer queryDictDetaCode(String dicttypecode, String dictcode, Long dictDetaId);

    /**
     * 保存redis
     * 
     * @param dict
     *            字典信息
     * @return 返回
     */
    List<SysDictdetaEntity> saveRedis(SysDictdetaEntity dict);

    /**
     * 删除redis中字典信息
     * 
     * @param ids
     *            字典id
     */
    void deleteRedis(Long[] ids);

    /**
     * 根据id查询业务字典信息
     * 
     * @param id
     *            字典id
     * @return 业务字典信息
     */
    SysDictdetaEntity queryDiceDeta(Long id);

    /**
     * 保存业务字典
     * 
     * @param dict
     *            字典信息
     */
    void saveDictDeta(SysDictdetaEntity dict);

    /**
     * 修改业务字典
     * 
     * @param dict
     *            业务字典信息
     */
    void updateDictDeta(SysDictdetaEntity dict);

    /**
     * 删除业务字典
     * 
     * @param ids
     *            字典值id
     */
    void deleteDictIds(List<Long> ids);

    /**
     * 刷新环翠
     * 
     * @return 是否陈宫
     */
    boolean refreshCache();
}
