package com.red.circle.other.inner.endpoint.team.target.api;

import com.red.circle.framework.dto.ResultResponse;
import com.red.circle.other.inner.model.cmd.team.TeamNoticeCmd;
import com.red.circle.other.inner.model.dto.agency.agency.TeamNoticeDTO;
import java.util.List;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;

/**
 * 团队通知.
 *
 * @author pengliang on 2023/5/26
 */
public interface TeamNoticeClientApi {

  String API_PREFIX = "/team/notice/client";


  /**
   * 查询团队通知记录.
   */
  @GetMapping("/listByTeamId")
  ResultResponse<List<TeamNoticeDTO>> listByTeamId(@RequestParam("teamId") Long teamId);

  /**
   * 发送通知
   */
  @PostMapping("/sendNotice")
  ResultResponse<Void> sendNotice(@RequestBody TeamNoticeCmd cmd);

  /**
   * 删除团队通知
   */
  @PostMapping("/deleteById")
  ResultResponse<Void> deleteById(@RequestParam("/id") Long id);
}
