package com.iailab.module.system.service.dict; import com.iailab.framework.common.pojo.PageResult; import com.iailab.module.system.controller.admin.dict.vo.data.DictDataPageReqVO; import com.iailab.module.system.controller.admin.dict.vo.data.DictDataSaveReqVO; import com.iailab.module.system.dal.dataobject.dict.DictDataDO; import org.springframework.lang.Nullable; import java.util.Collection; import java.util.List; /** * å—å…¸æ•°æ® Service æŽ¥å£ * * @author ruoyi */ public interface DictDataService { /** * 创建å—å…¸æ•°æ® * * @param createReqVO å—典数æ®ä¿¡æ¯ * @return å—典数æ®ç¼–å· */ Long createDictData(DictDataSaveReqVO createReqVO); /** * æ›´æ–°å—å…¸æ•°æ® * * @param updateReqVO å—典数æ®ä¿¡æ¯ */ void updateDictData(DictDataSaveReqVO updateReqVO); /** * åˆ é™¤å—å…¸æ•°æ® * * @param id å—典数æ®ç¼–å· */ void deleteDictData(Long id); /** * 获得å—典数æ®åˆ—表 * * @param status çŠ¶æ€ * @param dictType å—典类型 * @return å—典数æ®å…¨åˆ—表 */ List<DictDataDO> getDictDataList(@Nullable Integer status, @Nullable String dictType); /** * 获得å—典数æ®åˆ†é¡µåˆ—表 * * @param pageReqVO 分页请求 * @return å—典数æ®åˆ†é¡µåˆ—表 */ PageResult<DictDataDO> getDictDataPage(DictDataPageReqVO pageReqVO); /** * 获得å—典数æ®è¯¦æƒ… * * @param id å—典数æ®ç¼–å· * @return å—å…¸æ•°æ® */ DictDataDO getDictData(Long id); /** * 获得指定å—å…¸ç±»åž‹çš„æ•°æ®æ•°é‡ * * @param dictType å—典类型 * @return æ•°æ®æ•°é‡ */ long getDictDataCountByDictType(String dictType); /** * æ ¡éªŒå—典数æ®ä»¬æ˜¯å¦æœ‰æ•ˆã€‚å¦‚ä¸‹æƒ…å†µï¼Œè§†ä¸ºæ— æ•ˆï¼š * 1. å—典数æ®ä¸å˜åœ¨ * 2. å—典数æ®è¢«ç¦ç”¨ * * @param dictType å—典类型 * @param values å—典数æ®å€¼çš„æ•°ç»„ */ void validateDictDataList(String dictType, Collection<String> values); /** * 获得指定的å—å…¸æ•°æ® * * @param dictType å—典类型 * @param value å—典数æ®å€¼ * @return å—å…¸æ•°æ® */ DictDataDO getDictData(String dictType, String value); /** * è§£æžèŽ·å¾—æŒ‡å®šçš„å—典数æ®ï¼Œä»Žç¼“å˜ä¸ * * @param dictType å—典类型 * @param label å—å…¸æ•°æ®æ ‡ç¾ * @return å—å…¸æ•°æ® */ DictDataDO parseDictData(String dictType, String label); /** * 获得指定数æ®ç±»åž‹çš„å—典数æ®åˆ—表 * * @param dictType å—典类型 * @return å—典数æ®åˆ—表 */ List<DictDataDO> getDictDataListByDictType(String dictType); }