package com.ruoyi.common.context.system;

import java.util.List;

/**
 * 系统相关上下文接口，在system模块实现，用于某些模块不能引用system模块时，通过此方式调用system相关功能
 *
 * @author
 * @date
 */
public interface SystemContext {


    /**
     * 根据字典类型获取字典的code值
     *
     * @param dictTypes 字典类型编码值
     * @return 字典的code值
     * @author xuyuxiang
     * @date 2020/8/9 14:18
     */
    List<String> getDictCodesByDictTypes(String... dictTypes);


    /**
     * 校验某个表中，某一列是否存在重复的值
     * <p>
     * 一般用于唯一code校验
     *
     * @param uniqueValidateParam 被校验的参数
     * @return true-是唯一的值，false-不是唯一的
     * @author xuyuxiang
     * @date 2020/8/9 21:41
     */
    boolean tableUniValueFlag(UniqueValidateParam uniqueValidateParam);
}
