package com.yiqi.app.service;

import java.util.List;
import com.baomidou.mybatisplus.extension.service.IService;
import com.yiqi.app.domain.AppCouponType;
import com.yiqi.app.domain.dto.AppCouponTypeDTO;
import com.yiqi.app.domain.vo.AppCouponTypeVO;

/**
 * 优惠券类型Service接口
 *
 * @author xiaohei
 * @date 2023-09-06
 */
public interface IAppCouponTypeService extends IService<AppCouponType> {
    /**
     * 查询优惠券类型
     *
     * @param id 优惠券类型主键
     * @return 优惠券类型
     */
    public AppCouponTypeVO selectAppCouponTypeById(Long id);

    /**
     * 查询优惠券类型列表
     *
     * @param appCouponType 优惠券类型
     * @return 优惠券类型集合
     */
    public List<AppCouponType> selectAppCouponTypeList(AppCouponType appCouponType);

    /**
     * 新增优惠券类型
     *
     * @param appCouponTypeDTO 优惠券类型
     * @return 结果
     */
    public int insertAppCouponType(AppCouponTypeDTO appCouponTypeDTO);

    /**
     * 修改优惠券类型
     *
     * @param appCouponTypeDTO 优惠券类型
     * @return 结果
     */
    public int updateAppCouponType(AppCouponTypeDTO appCouponTypeDTO);

    /**
     * 批量删除优惠券类型
     *
     * @param ids 需要删除的优惠券类型主键集合
     * @return 结果
     */
    public int deleteAppCouponTypeByIds(Long[] ids);

    /**
     * 删除优惠券类型信息
     *
     * @param id 优惠券类型主键
     * @return 结果
     */
    public int deleteAppCouponTypeById(Long id);


    /**
     * 修改优惠券类型状态
     *
     * @param appCouponType 优惠券类型
     * @return 结果
     */
    public int updateAppCouponTypeStatus(AppCouponType appCouponType);

}
