package com.skr.mdm.api.app.service;

import com.skr.mdm.bean.qo.app.AppStrategyQO;
import com.skr.mdm.bean.vo.app.AppStrategyInfoVO;

import java.util.List;

/**
 * @author nfq
 * @date 2023-03-27 10:29
 */
public interface AppStrategyInfoService {

    /**
     * 获取应用策略详情
     * @param appStrategyInfoVO 详情
     * @param strategyId 策略ID
     * @return 详情
     */
    AppStrategyInfoVO setAppStrategyInfoVO(AppStrategyInfoVO appStrategyInfoVO, Integer strategyId);

    /**
     * 应用策略保存
     * @param appStrategyQO 请求对象
     * @param strategyId 策略ID
     */
    void saveAppStrategy(AppStrategyQO appStrategyQO, Integer strategyId);

    /**
     * 应用策略删除
     * @param strategyIdList 策略ID
     */
    void deleteAppStrategy(List<Integer> strategyIdList);

    /**
     * 应用配置引用检查
     * @param appIdList 应用配置ID
     * @param isExit 是否存在
     * @return 是否存在
     */
    boolean checkAppExist(List<Integer> appIdList, boolean isExit);
}
