package com.ruoyi.asset.service;

import java.util.List;
import com.ruoyi.asset.domain.AmsAssetCategory;

/**
 * 资产类别Service接口
 * 
 * @author Yangk
 * @date 2026-06-04
 */
public interface IAmsAssetCategoryService 
{
    /**
     * 查询资产类别
     * 
     * @param categoryId 资产类别主键
     * @return 资产类别
     */
    public AmsAssetCategory selectAmsAssetCategoryByCategoryId(Long categoryId);

    /**
     * 查询资产类别列表
     * 
     * @param amsAssetCategory 资产类别
     * @return 资产类别集合
     */
    public List<AmsAssetCategory> selectAmsAssetCategoryList(AmsAssetCategory amsAssetCategory);

    /**
     * 校验类别编码是否唯一
     *
     * @param amsAssetCategory 资产类别
     * @return 结果
     */
    public boolean checkCategoryCodeUnique(AmsAssetCategory amsAssetCategory);

    /**
     * 新增资产类别
     * 
     * @param amsAssetCategory 资产类别
     * @return 结果
     */
    public int insertAmsAssetCategory(AmsAssetCategory amsAssetCategory);

    /**
     * 修改资产类别
     * 
     * @param amsAssetCategory 资产类别
     * @return 结果
     */
    public int updateAmsAssetCategory(AmsAssetCategory amsAssetCategory);

    /**
     * 批量删除资产类别
     * 
     * @param categoryIds 需要删除的资产类别主键集合
     * @return 结果
     */
    public int deleteAmsAssetCategoryByCategoryIds(String categoryIds);

    /**
     * 删除资产类别信息
     * 
     * @param categoryId 资产类别主键
     * @return 结果
     */
    public int deleteAmsAssetCategoryByCategoryId(Long categoryId);
}
