@@ -66,6 +66,7 @@ public enum MessageCode {
|
|||||||
MESSAGE_IS_REQUIRED_FOR_NOTION(4, "Message is required for notion"),
|
MESSAGE_IS_REQUIRED_FOR_NOTION(4, "Message is required for notion"),
|
||||||
USER_VERIFICATIONS_NOT_FOUND(4, "Verifications not found"),
|
USER_VERIFICATIONS_NOT_FOUND(4, "Verifications not found"),
|
||||||
COMPLAINT_OR_LAW_CASE_IN_WORK(2, "Complaint or lawcase in work"),
|
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");
|
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.register.AuthService;
|
||||||
import ru.soune.nocopy.service.user.UserService;
|
import ru.soune.nocopy.service.user.UserService;
|
||||||
|
|
||||||
|
import java.util.Arrays;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
@@ -58,7 +59,7 @@ public class ComplaintEntityHandler implements RequestHandler {
|
|||||||
userService.getUsersCompanyEmails(user.getCompany().getId());
|
userService.getUsersCompanyEmails(user.getCompany().getId());
|
||||||
|
|
||||||
try {
|
try {
|
||||||
switch (action.toLowerCase()) {
|
switch (action) {
|
||||||
case "create":
|
case "create":
|
||||||
return handleCreate(msgId, complaintRequest);
|
return handleCreate(msgId, complaintRequest);
|
||||||
case "get":
|
case "get":
|
||||||
@@ -102,7 +103,7 @@ public class ComplaintEntityHandler implements RequestHandler {
|
|||||||
|
|
||||||
private BaseResponse handleGetAll(Integer msgId, ComplaintRequest req, List<String> emails) {
|
private BaseResponse handleGetAll(Integer msgId, ComplaintRequest req, List<String> emails) {
|
||||||
Pageable pageable = PageRequest.of(
|
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,
|
req.getSize() != null ? req.getSize() : 5,
|
||||||
Sort.by(Sort.Direction.fromString(req.getSortDirection() != null ? req.getSortDirection() : "desc"),
|
Sort.by(Sort.Direction.fromString(req.getSortDirection() != null ? req.getSortDirection() : "desc"),
|
||||||
req.getSortBy() != null ? req.getSortBy() : "updatedAt"));
|
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.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");
|
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());
|
ComplaintStatus status = ComplaintStatus.valueOf(req.getStatus().toUpperCase());
|
||||||
|
|
||||||
ComplaintResponse response = complaintService.updateComplaintStatus(req.getId(), status);
|
ComplaintResponse response = complaintService.updateComplaintStatus(req.getId(), status);
|
||||||
|
|
||||||
return successResponse(msgId, "Status updated successfully", response);
|
return successResponse(msgId, "Status updated successfully", response);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user