dev add load and download file for moderatuion user
Test Workflow / test (push) Waiting to run

This commit is contained in:
vladp
2026-04-04 17:38:20 +07:00
parent f4fc1f26a7
commit 724e72c71a
12 changed files with 279 additions and 2 deletions
@@ -4,6 +4,7 @@ import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import ru.soune.nocopy.entity.file.moderation.ModerationPassportFile;
import ru.soune.nocopy.repository.ModerationFileRepository;
import ru.soune.nocopy.service.user.moderation.UserVerificationService;
import java.util.List;
import java.util.Map;
@@ -14,6 +15,8 @@ public class ModerationFileService {
private final ModerationFileRepository moderationFileRepository;
private final UserVerificationService userVerificationService;
public void addFiles(Long userId, Map<Integer, String> files) {
List<ModerationPassportFile> moderationFileRepositoryByStatus =
moderationFileRepository.findByStatus(ModerationFileStatus.ACTIVE.getName());
@@ -33,6 +36,8 @@ public class ModerationFileService {
moderationFileRepository.save(moderationFile);
}
userVerificationService.initUserVerification(userId);
}
public List<ModerationPassportFile> getActiveFiles() {
@@ -0,0 +1,66 @@
package ru.soune.nocopy.service.user.moderation;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import ru.soune.nocopy.entity.user.ModerationStatus;
import ru.soune.nocopy.entity.user.User;
import ru.soune.nocopy.entity.user.moderation.UserVerification;
import ru.soune.nocopy.repository.UserRepository;
import ru.soune.nocopy.repository.UserVerificationRepository;
import java.util.List;
@Service
@RequiredArgsConstructor
public class UserVerificationService {
private final UserRepository userRepository;
private final UserVerificationRepository userVerificationRepository;
public void initUserVerification(Long userId) {
User user = userRepository.findById(userId).orElse(null);
if (user == null) return;
UserVerification userVerification = UserVerification.builder()
.moderationStatus(ModerationStatus.VERIFICATION_IN_PROGRESS)
.build();
userVerificationRepository.save(userVerification);
user.setVerificationStatus(ModerationStatus.VERIFICATION_IN_PROGRESS);
userRepository.save(user);
}
public UserVerification verifyUser(Long userId, String message, Long adminId, boolean verified) {
User user = userRepository.findById(userId).orElse(null);
if (user == null) return null;
UserVerification userVerification = userVerificationRepository.findById(userId).orElse(null);
if (userVerification == null) return null;
ModerationStatus moderationStatus = verified ? ModerationStatus.VERIFIED: ModerationStatus.VERIFICATION_FAILED;
userVerification.setModerationStatus(moderationStatus);
if (message != null) userVerification.setMessage(message);
userVerification.setAdminId(adminId);
UserVerification save = userVerificationRepository.save(userVerification);
user.setVerificationStatus(moderationStatus);
userRepository.save(user);
return save;
}
public List<UserVerification> verifications() {
return userVerificationRepository.findAll();
}
}