All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.github.wslxm.springbootplus2.manage.sys.service.SysDictService Maven / Gradle / Ivy

package io.github.wslxm.springbootplus2.manage.sys.service;


import com.baomidou.mybatisplus.extension.service.IService;
import io.github.wslxm.springbootplus2.manage.sys.model.dto.SysDictDTO;
import io.github.wslxm.springbootplus2.manage.sys.model.entity.SysDict;
import io.github.wslxm.springbootplus2.manage.sys.model.query.SysDictQuery;
import io.github.wslxm.springbootplus2.manage.sys.model.vo.next.SysDictCodeGroupVO;
import io.github.wslxm.springbootplus2.manage.sys.model.vo.SysDictVO;

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

/**
 * 数据字典
 *
 * @author wangsong
 * @WX-QQ 1720696548
 * @date Sun Nov 24 11:23:12 CST 2019
 */
public interface SysDictService extends IService {

    /**
     * 列表查询, 根据code查询数据+ 下级所有层级数据(无限递归),先根据 Sort排序,在根据 Code排序
     *
     * @param query query
     * @return java.util.List
     * @date 2020/7/12 0012 19:22
     */
    List tree(SysDictQuery query);

    /**
     * 添加
     *
     * @param dto dto
     * @return java.lang.String
     * @author wangsong
     * @date 2021/12/27 16:43
     * @version 1.0.0
     */
    String insert(SysDictDTO dto);

    /**
     * 编辑
     *
     * @param id  id
     * @param dto dto
     * @return Boolean
     */
    Boolean upd(String id, SysDictDTO dto);


    /**
     * id删除,并删除下级数据
     *
     * @param id id
     * @return java.lang.Boolean
     * @author wangsong
     * @date 2021/12/27 16:43
     * @version 1.0.0
     */
    Boolean del(String id);

    /**
     * 分组查询-key-value数据 (前端尽量缓存该数据) ----  缓存获取
     * 

* key-value 形式,因为所有添加下层数据是引用。每一个key下的value 数据依然有所有的层级关系数据 *

* * @return java.util.Map * @author wangsong * @date 2020/8/8 0008 1:07 * @version 1.0.1 */ Map> findCodeGroup(); /** * 通过字典code 查询当前字典下的所有可选数据 * * @param code 父级code * @return java.util.List * @author wangsong * @date 2021/12/27 16:45 * @version 1.0.0 */ List findByCode(String code); /** * 通过字典code + 字典值 获取字典具体的数据 (包括禁用数据) * * @param code 父 code, 不传默认为顶层 * @param nextCode 子 code = 字典值 * @return java.util.List * @author wangsong * @date 2021/12/27 16:45 * @version 1.0.0 */ SysDictVO findByCodeNext(String code, String nextCode); /** * 生成枚举 (生成 Enum 的java 类和 生成js findCodeGroup查询数据的key ) * * @param pid 父级id * @return java.util.Map * @author wangsong * @date 2021/12/27 16:45 * @version 1.0.0 */ Map generateEnum(String pid); }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy