Files
SR-SYSTEM/backend/src/main/java/com/srsystem/exception/ErrorCode.java
T
2026-06-02 13:50:39 +09:00

39 lines
2.6 KiB
Java

package com.srsystem.exception;
import lombok.Getter;
import org.springframework.http.HttpStatus;
@Getter
public enum ErrorCode {
RESIGNED_EMPLOYEE(HttpStatus.BAD_REQUEST, "EMP_ERR_001", "퇴사 처리된 직원 정보는 수정할 수 없습니다"),
LOCKED_REPORT(HttpStatus.BAD_REQUEST, "RPT_ERR_001", "결재 완료 보고서는 수정/삭제할 수 없습니다"),
FUTURE_REPORT_DATE(HttpStatus.BAD_REQUEST, "RPT_ERR_002", "미래 날짜의 업무 보고는 작성할 수 없습니다"),
CLOSED_TICKET_MOD(HttpStatus.BAD_REQUEST, "TCK_ERR_001", "종료된 티켓은 댓글/수정이 불가능합니다"),
ASSIGNEE_REQUIRED(HttpStatus.BAD_REQUEST, "TCK_ERR_002", "담당자 미배정 티켓은 IN_PROGRESS 전환 불가"),
EQUIP_NOT_AVAILABLE(HttpStatus.BAD_REQUEST, "EQP_ERR_001", "지급 가능한 재고 상태가 아닙니다"),
INVALID_ASSIGNEE(HttpStatus.BAD_REQUEST, "EQP_ERR_002", "재직 중인 직원에게만 장비 지급 가능"),
SYSTEM_CONCURRENCY(HttpStatus.CONFLICT, "SYS_ERR_001", "동시성 충돌 - 다시 시도해 주세요"),
DUPLICATE_LOGIN_ID(HttpStatus.CONFLICT, "EMP_ERR_002", "이미 사용 중인 로그인 ID 입니다"),
INVALID_CREDENTIALS(HttpStatus.UNAUTHORIZED, "AUTH_ERR_001", "아이디 또는 비밀번호가 일치하지 않습니다"),
EMPLOYEE_NOT_FOUND(HttpStatus.NOT_FOUND, "EMP_ERR_003", "직원을 찾을 수 없습니다"),
TICKET_NOT_FOUND(HttpStatus.NOT_FOUND, "TCK_ERR_003", "티켓을 찾을 수 없습니다"),
PROJECT_NOT_FOUND(HttpStatus.NOT_FOUND, "PRJ_ERR_001", "프로젝트를 찾을 수 없습니다"),
EQUIPMENT_NOT_FOUND(HttpStatus.NOT_FOUND, "EQP_ERR_003", "장비를 찾을 수 없습니다"),
REPORT_NOT_FOUND(HttpStatus.NOT_FOUND, "RPT_ERR_003", "보고서를 찾을 수 없습니다"),
INVALID_ROLE(HttpStatus.FORBIDDEN, "AUTH_ERR_002", "권한이 없습니다"),
DISPATCH_NOT_FOUND(HttpStatus.NOT_FOUND, "DSP_ERR_001", "파견 이력을 찾을 수 없습니다"),
AUTH_INVALID_CREDENTIALS(HttpStatus.BAD_REQUEST, "AUTH_ERR_003", "현재 비밀번호가 일치하지 않습니다"),
CODE_NOT_FOUND(HttpStatus.NOT_FOUND, "COD_ERR_001", "공통코드를 찾을 수 없습니다"),
PLAN_NOT_FOUND(HttpStatus.NOT_FOUND, "PLN_ERR_001", "주간 계획을 찾을 수 없습니다");
private final HttpStatus httpStatus;
private final String errorCode;
private final String message;
ErrorCode(HttpStatus httpStatus, String errorCode, String message) {
this.httpStatus = httpStatus;
this.errorCode = errorCode;
this.message = message;
}
}