package com.competition.modules.biz.review.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.competition.modules.biz.review.dto.CreatePresetCommentDto;
import com.competition.modules.biz.review.entity.BizPresetComment;

import java.util.List;
import java.util.Map;

public interface IPresetCommentService extends IService<BizPresetComment> {

    BizPresetComment createComment(CreatePresetCommentDto dto, Long judgeId);

    List<Map<String, Object>> findAll(Long contestId, Long judgeId);

    Map<String, Object> findDetail(Long id, Long judgeId);

    BizPresetComment updateComment(Long id, CreatePresetCommentDto dto, Long judgeId);

    void removeComment(Long id, Long judgeId);

    void batchDelete(List<Long> ids, Long judgeId);

    void incrementUseCount(Long id, Long judgeId);

    List<Map<String, Object>> getJudgeContests(Long judgeId);

    Map<String, Object> syncComments(Long sourceContestId, List<Long> targetContestIds, Long judgeId);
}
