package com.sptg.ad.biz.service;

import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.service.IService;
import com.sptg.ad.api.dto.AdTypeDto;
import com.sptg.ad.api.entity.AdType;
import com.sptg.common.core.beans.ResultBean;

import java.util.List;

/**
 * title: AdTypeServiceInterface
 * package: com.sptg.ad.biz.security
 * description: 广告类型-服务层接口
 *
 *               
 *                 
 */
public interface AdTypeServiceInterface extends IService<AdType> {
    /**
     *  查询广告类型列表(分页)
     * @param adTypeDto
     * @return
     */
    Page<AdType> showAdTypeList(AdTypeDto adTypeDto);

    /**
     * 功能描述:新增/编辑
     * @param adType
     * @return
     *               
     *                      
     */
    ResultBean<Boolean> addAdType(AdType adType);
    /**
     * 功能描述:软删除
     * @param ids
     * @return 
     *               
     *                      
     */
    ResultBean<Boolean> deleteAdType(String ids);
    /**
     * 功能描述:获取所属广告分类
     * @param rootOrgId
     * @return 
     *               
     *                       
     */
    ResultBean<AdType> getAdTypeList(Long rootOrgId);
    /**
     * 功能描述: 检查名字重复
     * @param adType
     * @return
     *               
     *                       
     */
    ResultBean<Boolean> checkAdTypeName(AdType adType);
    /**
     * 功能描述:根据广告分类id获取分类--从缓存中获取
     * @param id
     * @return
     *               
     *                       
     */
    AdType getAdTypeById(Long id);

    /**
     * 功能描述:获取广告分类数量
     * @param adTypeDto
     * @return Integer
     *                
     *                      
     */
    Integer getAdTypeCount(AdTypeDto adTypeDto);
}
