package com.hzs.activity.recommend.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.hzs.activity.recommend.param.AcRecommendParam;
import com.hzs.activity.recommend.vo.AcRecommendVO;
import com.hzs.common.domain.activity.recommend.AcRepurCouponsRuleConfig;
import com.hzs.system.sys.dto.ApprovalBusinessResultDTO;

/**
 * 直推-复购券规则配置 服务类
 */
public interface IAcRepurCouponsRuleConfigService extends IService<AcRepurCouponsRuleConfig> {

    /**
     * 在线签呈
     *
     * @param recommendParam
     * @return
     */
    Boolean onLinePetition(AcRecommendParam recommendParam);

    /**
     * 查看详情
     *
     * @param activityId 活动ID
     * @return
     */
    AcRecommendVO showDetailInfo(Long activityId, Integer pkCountry);

    /**
     * 删除直推赠送
     *
     * @param activityId 活动ID
     * @return
     */
    Boolean deleteRecommendConfig(Long activityId);

    /**
     * 更新直推赠送
     *
     * @param recommendVO 入参
     * @return Boolean
     */
    Boolean updateRecommendConfig(AcRecommendVO recommendVO);

    /**
     * @param approvalBusinessResultDTO 业务审批操作DTO
     * @return String
     */
    String ApprovalAgree(ApprovalBusinessResultDTO approvalBusinessResultDTO);

    /**
     * @param approvalBusinessResultDTO 业务审批操作DTO
     * @return String
     */
    String ApprovalReject(ApprovalBusinessResultDTO approvalBusinessResultDTO);

    /**
     * 根据活动配置主键删除复购券规则配置
     *
     * @param pkBaseId   活动ID
     * @param pkModifyId 修改人ID
     * @return Boolean
     */
    Boolean deleteCouponsRuleConfigByBaseId(Long pkBaseId, Long pkModifyId);

}

