package com.microservices.dms.achievementLibrary.service;

import java.util.List;
import com.microservices.dms.achievementLibrary.domain.AchievementDictData;
import com.microservices.dms.achievementLibrary.domain.KeyValueVo;
import org.apache.ibatis.annotations.Param;

/**
 * 成果相关字典Service接口
 * 
 * @author microservices
 * @date 2025-05-23
 */
public interface IAchievementDictDataService 
{
    /**
     * 查询成果相关字典
     * 
     * @param dictCode 成果相关字典主键
     * @return 成果相关字典
     */
    public AchievementDictData selectAchievementDictDataByDictCode(Long dictCode);

    /**
     * 查询成果相关字典列表
     * 
     * @param achievementDictData 成果相关字典
     * @return 成果相关字典集合
     */
    public List<AchievementDictData> selectAchievementDictDataList(AchievementDictData achievementDictData);

    /**
     * 新增成果相关字典
     * 
     * @param achievementDictData 成果相关字典
     * @return 结果
     */
    public int insertAchievementDictData(AchievementDictData achievementDictData);

    /**
     * 修改成果相关字典
     * 
     * @param achievementDictData 成果相关字典
     * @return 结果
     */
    public int updateAchievementDictData(AchievementDictData achievementDictData);

    /**
     * 批量删除成果相关字典
     * 
     * @param dictCodes 需要删除的成果相关字典主键集合
     * @return 结果
     */
    public int deleteAchievementDictDataByDictCodes(Long[] dictCodes);

    /**
     * 删除成果相关字典信息
     * 
     * @param dictCode 成果相关字典主键
     * @return 结果
     */
    public int deleteAchievementDictDataByDictCode(Long dictCode);

    List<KeyValueVo> selectDictDataByType(String dictType);
}
