package com.red.circle.console.app.service.app.team;


import com.red.circle.console.app.dto.clienobject.team.TeamPolicyManagerCO;
import com.red.circle.other.inner.model.cmd.team.TeamPolicyManagerBackQryCmd;
import com.red.circle.other.inner.model.cmd.team.TeamPolicyManagerCmd;
import java.util.List;

/**
 * 团队策略.
 *
 * @author pengshigang on 2022/12/12
 */
public interface TeamPolicyManagerBackService {

  /**
   * 策略历史列表.
   *
   * @return 策略
   */
  List<TeamPolicyManagerCO> historyReleases(TeamPolicyManagerBackQryCmd query);

  /**
   * 根据区域，类型查询.
   *
   * @return 策略
   */
  TeamPolicyManagerCO getByRegionByType(TeamPolicyManagerBackQryCmd query);

  /**
   * 获取指定系统区域政策.
   */
  List<TeamPolicyManagerCO> listTeamPolicy(String sysOrigin, String region);

  /**
   * 添加策略.
   */
  void add(TeamPolicyManagerCmd policyManager);

  /**
   * 删除策略.
   *
   * @param id id.
   */
  void deleteById(Long id);

}
