This commit is contained in:
@@ -10,14 +10,14 @@ import ru.soune.nocopy.dto.MessageCode;
|
||||
import ru.soune.nocopy.dto.monitoring.MonitoringStatusResponse;
|
||||
import ru.soune.nocopy.dto.monitoring.SetMonitoringRequest;
|
||||
import ru.soune.nocopy.entity.monitoring.MonitoringType;
|
||||
import ru.soune.nocopy.entity.tarif.TariffType;
|
||||
import ru.soune.nocopy.entity.user.AuthToken;
|
||||
import ru.soune.nocopy.entity.user.User;
|
||||
import ru.soune.nocopy.repository.TariffRepository;
|
||||
import ru.soune.nocopy.exception.UserNotHavePermission;
|
||||
import ru.soune.nocopy.service.monitoring.FileMonitoringService;
|
||||
import ru.soune.nocopy.service.register.AuthService;
|
||||
import ru.soune.nocopy.service.tariff.TariffService;
|
||||
|
||||
import java.io.FileNotFoundException;
|
||||
import java.util.Arrays;
|
||||
import java.util.Map;
|
||||
|
||||
@Slf4j
|
||||
@@ -31,10 +31,6 @@ public class MonitoringHandler implements RequestHandler {
|
||||
|
||||
private final AuthService authService;
|
||||
|
||||
private final TariffService tariffService;
|
||||
|
||||
private final TariffRepository tariffRepository;
|
||||
|
||||
@Override
|
||||
public BaseResponse handle(BaseRequest request) throws Exception {
|
||||
SetMonitoringRequest setRequest = objectMapper.convertValue(
|
||||
@@ -51,21 +47,33 @@ public class MonitoringHandler implements RequestHandler {
|
||||
|
||||
User user = userAuthToken.getUser();
|
||||
Long userId = user.getId();
|
||||
MonitoringType monitoringType = setRequest.getMonitoringType();
|
||||
String typeStr = setRequest.getMonitoringType();
|
||||
MonitoringType monitoringType;
|
||||
|
||||
monitoringService.setMonitoring(userId, setRequest.getFileId(), monitoringType);
|
||||
try {
|
||||
monitoringType = MonitoringType.valueOf(typeStr);
|
||||
} catch (IllegalArgumentException e) {
|
||||
return new BaseResponse(request.getMsgId(),
|
||||
MessageCode.MONITORING_TYPE_NOT_FOUND.getCode(),
|
||||
MessageCode.MONITORING_TYPE_NOT_FOUND.getDescription(),
|
||||
Map.of("monitoring", Arrays.asList(MonitoringType.values())));
|
||||
}
|
||||
|
||||
try {
|
||||
monitoringService.setMonitoring(userId, setRequest.getFileId(), monitoringType);
|
||||
} catch (UserNotHavePermission e) {
|
||||
return new BaseResponse(request.getMsgId(),
|
||||
MessageCode.USER_NOT_HAD_PERMISSION.getCode(),
|
||||
MessageCode.USER_NOT_HAD_PERMISSION.getDescription(), Map.of("token", authToken));
|
||||
} catch (FileNotFoundException e) {
|
||||
return new BaseResponse(request.getMsgId(),
|
||||
MessageCode.FILE_NOT_FOUND.getCode(),
|
||||
MessageCode.FILE_NOT_FOUND.getDescription(), Map.of("fileId", setRequest.getFileId()));
|
||||
}
|
||||
|
||||
MonitoringStatusResponse status = monitoringService.getMonitoringStatus(setRequest.getFileId(), userId);
|
||||
|
||||
return new BaseResponse(
|
||||
request.getMsgId(),
|
||||
MessageCode.SUCCESS.getCode(),
|
||||
"Monitoring settings updated",
|
||||
status);
|
||||
}
|
||||
//TODO check tokens for apply
|
||||
private boolean checkTokensForMonitoring(User user, MonitoringType monitoringType) {
|
||||
tariffService.getTariffByType(TariffType.valueOf(monitoringType.name()));
|
||||
return true;
|
||||
return new BaseResponse(request.getMsgId(), MessageCode.SUCCESS.getCode(),
|
||||
"Monitoring settings updated", status);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user