앱승인시 예상완료일 항목 추가 & 승인요청 상세 조회시 "진행중"으로 상태변경

This commit is contained in:
eastargh
2026-06-05 15:10:06 +09:00
parent feb4f845a8
commit 480d7dac5a
5 changed files with 92 additions and 5 deletions
@@ -76,4 +76,10 @@ public class PortalApprovalManController extends BaseAnnotationController {
portalApprovalManService.redeploy(id);
return ResponseEntity.ok().build();
}
@PostMapping(value = "/onl/apim/approval/portalApprovalMan.json", params = "cmd=UPDATE")
public ResponseEntity<Void> update(String id, String expectEndDate) {
portalApprovalManService.update(id, expectEndDate);
return ResponseEntity.ok().build();
}
}
@@ -76,6 +76,16 @@ public class PortalApprovalManService extends BaseService {
* 마스킹된 상세 정보 조회
*/
public PortalApprovalUI selectDetail(String id) {
//2026.06.05 관리자가 승인요청을 조회시 심사중으로 상태 변경
//APP 유형이고 REQUESTED 상태인 경우 관리자 조회 시 PROCESSING으로 변경
approvalService.findById(id).ifPresent(approval -> {
if (approval.getApprovalType().equals(ApprovalType.APP)
&& approval.getApprovalStatus() instanceof RequestedState) {
approval.setApprovalStatus(new ProcessingState());
approvalService.save(approval);
}
});
PortalApprovalUI result = getDetailWithMaskOption(id, false);
if (result == null) {
throw new IllegalArgumentException("승인 정보를 찾을 수 없습니다. ID: " + id);
@@ -320,6 +330,13 @@ public class PortalApprovalManService extends BaseService {
sendEvent(id, ApprovalEvent.DENY, options);
}
public void update(String id, String expectEndDate) {
Approval approval = approvalService.findById(id)
.orElseThrow(() -> new IllegalArgumentException("승인 정보를 찾을 수 없습니다. ID: " + id));
approval.setExpectEndDate(expectEndDate);
approvalService.save(approval);
}
public void redeploy(String id) {
Map options = new HashMap<>();
Approval approval = approvalService.findById(id).orElseThrow(() -> new IllegalArgumentException("승인 정보를 찾을 수 없습니다. ID: " + id));
@@ -38,6 +38,8 @@ public class PortalApprovalUI {
@DateTimeFormat(pattern = "yyyyMMddHHmmssSSS")
private String approvalDate;
private String expectEndDate;
public String getApprovalTypeDescription() {
return approvalType != null ? approvalType.getDescription() : "";
}