@@ -66,6 +66,7 @@ public enum MessageCode {
|
||||
MESSAGE_IS_REQUIRED_FOR_NOTION(4, "Message is required for notion"),
|
||||
USER_VERIFICATIONS_NOT_FOUND(4, "Verifications not found"),
|
||||
COMPLAINT_OR_LAW_CASE_IN_WORK(2, "Complaint or lawcase in work"),
|
||||
NOT_VALID_STATUS(2, "Not valid status"),
|
||||
ADMIN_USER_NOT_FOUND(4, "Verifications ,user or admin not found");
|
||||
|
||||
|
||||
|
||||
@@ -19,6 +19,7 @@ import ru.soune.nocopy.service.complaint.ComplaintEntityService;
|
||||
import ru.soune.nocopy.service.register.AuthService;
|
||||
import ru.soune.nocopy.service.user.UserService;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@@ -58,7 +59,7 @@ public class ComplaintEntityHandler implements RequestHandler {
|
||||
userService.getUsersCompanyEmails(user.getCompany().getId());
|
||||
|
||||
try {
|
||||
switch (action.toLowerCase()) {
|
||||
switch (action) {
|
||||
case "create":
|
||||
return handleCreate(msgId, complaintRequest);
|
||||
case "get":
|
||||
@@ -102,7 +103,7 @@ public class ComplaintEntityHandler implements RequestHandler {
|
||||
|
||||
private BaseResponse handleGetAll(Integer msgId, ComplaintRequest req, List<String> emails) {
|
||||
Pageable pageable = PageRequest.of(
|
||||
req.getPage() != null ? req.getPage() - 1 : 0,
|
||||
req.getPage() != null && req.getPage() > 0 ? req.getPage() - 1 : 1,
|
||||
req.getSize() != null ? req.getSize() : 5,
|
||||
Sort.by(Sort.Direction.fromString(req.getSortDirection() != null ? req.getSortDirection() : "desc"),
|
||||
req.getSortBy() != null ? req.getSortBy() : "updatedAt"));
|
||||
@@ -135,8 +136,16 @@ public class ComplaintEntityHandler implements RequestHandler {
|
||||
if (req.getId() == null) return errorResponse(msgId, MessageCode.NOT_FOUND.getCode(), "id is required");
|
||||
if (req.getStatus() == null) return errorResponse(msgId, MessageCode.NOT_FOUND.getCode(), "status is required");
|
||||
|
||||
List<String> statuses = Arrays.stream(ComplaintStatus.values()).map(ComplaintStatus::name).toList();
|
||||
|
||||
if (statuses.stream().noneMatch(status -> status.equals(req.getStatus().toUpperCase()))) {
|
||||
return errorResponse(msgId, MessageCode.NOT_VALID_STATUS.getCode(), "Valid statuses: " + statuses);
|
||||
}
|
||||
|
||||
ComplaintStatus status = ComplaintStatus.valueOf(req.getStatus().toUpperCase());
|
||||
|
||||
ComplaintResponse response = complaintService.updateComplaintStatus(req.getId(), status);
|
||||
|
||||
return successResponse(msgId, "Status updated successfully", response);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user