package com.yiqi.app.service;

import java.util.List;

import com.baomidou.mybatisplus.extension.service.IService;
import com.yiqi.app.domain.AppCouponTypeApplyCloth;
import com.yiqi.app.domain.AppUserWelfare;
import com.yiqi.app.domain.dto.AppCouponTypeApplyClothDTO;
import com.yiqi.app.domain.vo.AppCouponTypeApplyClothVO;
import com.yiqi.core.domain.dto.ClothItemDTO;

/**
 * 优惠券可使用衣物Service接口
 *
 * @author xiaohei
 * @date 2023-09-20
 */
public interface IAppCouponTypeApplyClothService extends IService<AppCouponTypeApplyCloth> {
    /**
     * 查询优惠券可使用衣物
     *
     * @param id 优惠券可使用衣物主键
     * @return 优惠券可使用衣物
     */
    public AppCouponTypeApplyCloth selectAppCouponTypeApplyClothById(Long id);

    /**
     * 查询优惠券可使用衣物列表
     *
     * @param clothItemDTO 优惠券可使用衣物
     * @return 优惠券可使用衣物集合
     */
    public List<AppCouponTypeApplyClothVO> selectAppCouponTypeApplyClothList(ClothItemDTO clothItemDTO);

    /**
     * 新增优惠券可使用衣物
     *
     * @param appCouponTypeApplyCloth 优惠券可使用衣物
     * @return 结果
     */
    public int insertAppCouponTypeApplyCloth(AppCouponTypeApplyClothDTO appCouponTypeApplyClothDTO);

    /**
     * 修改优惠券可使用衣物
     *
     * @param appCouponTypeApplyCloth 优惠券可使用衣物
     * @return 结果
     */
    public int updateAppCouponTypeApplyCloth(AppCouponTypeApplyCloth appCouponTypeApplyCloth);

    /**
     * 批量删除优惠券可使用衣物
     *
     * @param ids 需要删除的优惠券可使用衣物主键集合
     * @return 结果
     */
    public int deleteAppCouponTypeApplyClothByIds(Long[] ids);

    /**
     * 删除优惠券可使用衣物信息
     *
     * @param id 优惠券可使用衣物主键
     * @return 结果
     */
    public int deleteAppCouponTypeApplyClothById(Long id);


    /**
     * 会员福利金Service接口
     *
     * @author ruoyi
     * @date 2024-08-09
     */
    interface IAppUserWelfareService extends IService<AppUserWelfare> {

        //<editor-folder desc="基础函数">

        /**
         * 查询会员福利金
         *
         * @param id 会员福利金主键
         * @return 会员福利金
         */
        public AppUserWelfare selectAppUserWelfareById(Long id);

        /**
         * 查询会员福利金列表
         *
         * @param appUserWelfare 会员福利金
         * @return 会员福利金集合
         */
        public List<AppUserWelfare> selectAppUserWelfareList(AppUserWelfare appUserWelfare);

        /**
         * 新增会员福利金
         *
         * @param appUserWelfare 会员福利金
         * @return 结果
         */
        public int insertAppUserWelfare(AppUserWelfare appUserWelfare);

        /**
         * 修改会员福利金
         *
         * @param appUserWelfare 会员福利金
         * @return 结果
         */
        public int updateAppUserWelfare(AppUserWelfare appUserWelfare);

        /**
         * 批量删除会员福利金
         *
         * @param ids 需要删除的会员福利金主键集合
         * @return 结果
         */
        public int deleteAppUserWelfareByIds(Long[] ids);

        /**
         * 删除会员福利金信息
         *
         * @param id 会员福利金主键
         * @return 结果
         */
        public int deleteAppUserWelfareById(Long id);


        /**
         * 修改会员福利金状态
         *
         * @param appUserWelfare 会员福利金
         * @return 结果
         */
        public int updateAppUserWelfareStatus(AppUserWelfare appUserWelfare);
        //</editor-folder>
    }
}
