package ru.soune.nocopy.handler; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; import ru.soune.nocopy.dto.BaseRequest; import ru.soune.nocopy.dto.BaseResponse; import ru.soune.nocopy.dto.MessageCode; import ru.soune.nocopy.dto.statistic.ViolationStatisticResponse; import ru.soune.nocopy.service.statistic.ViolationStatisticService; @Component @RequiredArgsConstructor @Slf4j public class StatisticViolationHandler implements RequestHandler { private final ViolationStatisticService statisticService; @Override public BaseResponse handle(BaseRequest request) throws Exception { log.debug("Handling violation statistic request, msgId: {}", request.getMsgId()); ViolationStatisticResponse statistics = statisticService.getViolationStatistics(); return new BaseResponse( request.getMsgId(), MessageCode.SUCCESS.getCode(), MessageCode.SUCCESS.getDescription(), statistics ); } }