feat: 관리자 - 환경설정 - 위원회 코드관리 추가 기능 구현
parent
a51af7d97c
commit
b8e28f2b29
|
|
@ -1,6 +1,7 @@
|
|||
package com.dbnt.kcscbackend.admin.config;
|
||||
|
||||
import com.dbnt.kcscbackend.admin.config.entity.TcMenu;
|
||||
import com.dbnt.kcscbackend.admin.config.model.CreateCommitteeCodeManagementVO;
|
||||
import com.dbnt.kcscbackend.admin.config.service.AdminCommitteeCodeManagementService;
|
||||
import com.dbnt.kcscbackend.admin.standardResearch.service.AdminStandardResearchService;
|
||||
import com.dbnt.kcscbackend.commonCode.entity.TcCodeGrp;
|
||||
|
|
@ -402,4 +403,46 @@ public class AdminConfigController extends BaseController {
|
|||
return resultVO;
|
||||
}
|
||||
|
||||
|
||||
@Operation(
|
||||
summary = "'위원회 코드 관리' 페이지에서 위원회 코드 추가하는 API",
|
||||
description = "관리자 단에서 '환경설정' > '위원회코드 관리' 페이지에서 +(추가) 버튼으로 항목 추가하는 API",
|
||||
tags = {"AdminConfigController"}
|
||||
)
|
||||
@ApiResponses(value = {
|
||||
@ApiResponse(responseCode = "200", description = "조회 성공"),
|
||||
@ApiResponse(responseCode = "303", description = "만료된 토큰"),
|
||||
@ApiResponse(responseCode = "403", description = "인가된 사용자가 아님")
|
||||
})
|
||||
@PostMapping(value = "/committee-code-management")
|
||||
public ResultVO createCommitteeCodeManagement(
|
||||
@AuthenticationPrincipal LoginVO user,
|
||||
HttpServletRequest request,
|
||||
CreateCommitteeCodeManagementVO createCommitteeCodeManagementVO
|
||||
) throws Exception {
|
||||
|
||||
ResultVO resultVO = new ResultVO();
|
||||
if(user == null) {
|
||||
resultVO.setResultCode(ResponseCode.TOKEN_EXPIRED.getCode());
|
||||
} else {
|
||||
try {
|
||||
resultVO = adminCommitteeCodeManagementService.createCommitteeCodeManagement(resultVO, request, user, createCommitteeCodeManagementVO);
|
||||
} catch (Exception e) {
|
||||
resultVO.setResultCode(ResponseCode.FAILED.getCode());
|
||||
resultVO.setResultMessage(e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
System.out.println(
|
||||
"\n--------------------------------------------------------------\n" +
|
||||
request.getRequestURI() + " OUT:" +
|
||||
"\n--------------------------------------------------------------\n" +
|
||||
"resultVO.toString():" + "\n" +
|
||||
resultVO.toString() + "\n" +
|
||||
"\n--------------------------------------------------------------\n"
|
||||
);
|
||||
|
||||
return resultVO;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,2 +1,34 @@
|
|||
package com.dbnt.kcscbackend.admin.config.model;public class CreateCommitteeCodeManagementVO {
|
||||
package com.dbnt.kcscbackend.admin.config.model;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Getter;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.Setter;
|
||||
import lombok.ToString;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
@ApiModel(value = "CreateCommitteeCodeManagementVO", description =
|
||||
"관리자 단에서 '환경설정' > '위원회코드 관리' 페이지에서 +(추가) 버튼으로 항목 추가하는 API에 사용된다." + ""
|
||||
)
|
||||
@RequiredArgsConstructor
|
||||
@Getter
|
||||
@Setter
|
||||
@ToString
|
||||
public class CreateCommitteeCodeManagementVO implements Serializable {
|
||||
private static final long serialVersionUID = -603047540959527181L;
|
||||
|
||||
@ApiModelProperty(value = "현재 등록하고 있는 항목의 level이 들어간다. '중앙건설기술심의'인 경우, LV_01이다. '총괄위원회'인 경우, LV_02이다. 이런 식으로 값이 들어간다.")
|
||||
private String paramCodeLevel;
|
||||
|
||||
@ApiModelProperty(value = "현재 등록하고 있는 항목의 상위 코드 값이 들어간다. '중앙건설기술심의'인 경우, 값이 00이다. 하지만 tn_cmt_org table에 cmt_seq 값이 00인 레코드는 존재하지 않는다.")
|
||||
private String paramOrgId;
|
||||
|
||||
@ApiModelProperty(value = "명칭")
|
||||
private String paramOrgNm;
|
||||
|
||||
@ApiModelProperty(value = "위원회 설명")
|
||||
private String paramOrgDesc;
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
package com.dbnt.kcscbackend.admin.config.service;
|
||||
|
||||
import com.dbnt.kcscbackend.admin.config.model.CreateCommitteeCodeManagementVO;
|
||||
import com.dbnt.kcscbackend.admin.standardResearch.model.CreateStandardResearchVO;
|
||||
import com.dbnt.kcscbackend.admin.standardResearch.model.UpdateStandardResearchVO;
|
||||
import com.dbnt.kcscbackend.auth.entity.LoginVO;
|
||||
|
|
@ -12,7 +13,7 @@ import org.springframework.web.multipart.MultipartHttpServletRequest;
|
|||
import javax.servlet.http.HttpServletRequest;
|
||||
|
||||
public interface AdminCommitteeCodeManagementService {
|
||||
public ResultVO createCommitteeCodeManagement(ResultVO resultVO, HttpServletRequest request, LoginVO user, final MultipartHttpServletRequest multiRequest, CreateStandardResearchVO createStandardResearchVO) throws Exception;
|
||||
public ResultVO createCommitteeCodeManagement(ResultVO resultVO, HttpServletRequest request, LoginVO user, CreateCommitteeCodeManagementVO createCommitteeCodeManagementVO) throws Exception;
|
||||
public ResultVO getCommitteeCodeManagement(ResultVO resultVO, HttpServletRequest request, LoginVO user, Long upCmtSeq, String cmtType) throws Exception;
|
||||
public ResultVO setCommitteeCodeManagement(ResultVO resultVO, HttpServletRequest request, LoginVO user, UpdateStandardResearchVO updateStandardResearchVO, Long popupId) throws Exception;
|
||||
public ResultVO deleteCommitteeCodeManagement(ResultVO resultVO, HttpServletRequest request, LoginVO user, Long popupId) throws Exception;
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
package com.dbnt.kcscbackend.admin.config.service.impl;
|
||||
|
||||
import com.dbnt.kcscbackend.admin.config.model.CreateCommitteeCodeManagementVO;
|
||||
import com.dbnt.kcscbackend.admin.config.service.AdminCommitteeCodeManagementService;
|
||||
import com.dbnt.kcscbackend.admin.standardResearch.model.CreateStandardResearchVO;
|
||||
import com.dbnt.kcscbackend.admin.standardResearch.model.UpdateStandardResearchVO;
|
||||
|
|
@ -28,28 +29,68 @@ public class AdminCommitteeCodeManagementServiceImpl extends EgovAbstractService
|
|||
private final TnCmtOrgRepository tnCmtOrgRepository;
|
||||
|
||||
@Override
|
||||
public ResultVO createCommitteeCodeManagement(ResultVO resultVO, HttpServletRequest request, LoginVO user, MultipartHttpServletRequest multiRequest, CreateStandardResearchVO createStandardResearchVO) throws Exception {
|
||||
return null;
|
||||
public ResultVO createCommitteeCodeManagement(ResultVO resultVO, HttpServletRequest request, LoginVO user, CreateCommitteeCodeManagementVO createCommitteeCodeManagementVO) throws Exception {
|
||||
System.out.println(
|
||||
"\n--------------------------------------------------------------\n" +
|
||||
request.getRequestURI() + " IN:" +
|
||||
"\n--------------------------------------------------------------\n" +
|
||||
"user.getEmail():" + "\n" +
|
||||
user.getEmail() + "\n" +
|
||||
"\n--------------------------------------------------------------\n"
|
||||
);
|
||||
|
||||
// 아래 null로 전달 되는 부분 확인하기.
|
||||
// 유효성 검사 실시
|
||||
if(createCommitteeCodeManagementVO.getParamCodeLevel().trim().isEmpty()) {
|
||||
throw new Exception("오류가 발생했습니다. 시스템 담당자에게 문의 바랍니다. paramCodeLevel is empty.");
|
||||
}
|
||||
Integer upCmtSeq = null;
|
||||
if( createCommitteeCodeManagementVO.getParamOrgId().trim().equals("00") == false ) { // 00은 '중앙건설기술심의' 항목의 부모 sequnce이다. 그러나 DB에 실제 00이란 sequence는 존재하지 않는다.
|
||||
upCmtSeq = Integer.parseInt(createCommitteeCodeManagementVO.getParamOrgId());
|
||||
}
|
||||
|
||||
Map<String, Object> response = tnCmtOrgRepository.spAddTnCmtOrg(
|
||||
createCommitteeCodeManagementVO.getParamOrgNm(), // 위원회 이름
|
||||
createCommitteeCodeManagementVO.getParamCodeLevel(), // 위원회 등급
|
||||
createCommitteeCodeManagementVO.getParamOrgDesc(), // 위원회 설명
|
||||
upCmtSeq, // 상위 위원회 sequence
|
||||
1, // 정렬 순서
|
||||
user.getId(),
|
||||
null,
|
||||
null,
|
||||
null,
|
||||
null
|
||||
);
|
||||
|
||||
Map<String, Object> dto = new HashMap<String, Object>();
|
||||
dto.put("id", response.get("_cmt_seq") );
|
||||
|
||||
resultVO.setResult(dto);
|
||||
resultVO.setResultCode(ResponseCode.SUCCESS.getCode());
|
||||
resultVO.setResultMessage(ResponseCode.SUCCESS.getMessage());
|
||||
|
||||
return resultVO;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResultVO getCommitteeCodeManagement(ResultVO resultVO, HttpServletRequest request, LoginVO user, Long upCmtSeq, String cmtType) throws Exception {
|
||||
|
||||
System.out.println(
|
||||
"\n--------------------------------------------------------------\n" +
|
||||
request.getRequestURI() + " IN:" +
|
||||
"\n--------------------------------------------------------------\n" +
|
||||
"user.getEmail():" + "\n" +
|
||||
user.getEmail() + "\n" +
|
||||
"\n--------------------------------------------------------------\n"
|
||||
"\n--------------------------------------------------------------\n" +
|
||||
request.getRequestURI() + " IN:" +
|
||||
"\n--------------------------------------------------------------\n" +
|
||||
"user.getEmail():" + "\n" +
|
||||
user.getEmail() + "\n" +
|
||||
"\n--------------------------------------------------------------\n"
|
||||
);
|
||||
|
||||
List<Map<String, Object>> list = tnCmtOrgRepository.findByUseYnAndUpCmtSeqAndCmtTypeOrderByCmtOrder("Y", upCmtSeq, cmtType).stream()
|
||||
.map(item -> {
|
||||
Map<String, Object> returnMap = new HashMap<>();
|
||||
returnMap.put("orgId", item.getCmtSeq());
|
||||
returnMap.put("orgNm", item.getCmtNm());
|
||||
returnMap.put("orgDesc", item.getCmtDesc());
|
||||
returnMap.put("orgId", item.getCmtSeq());
|
||||
returnMap.put("orgNm", item.getCmtNm());
|
||||
returnMap.put("orgDesc", item.getCmtDesc());
|
||||
returnMap.put("omtOrder", item.getCmtOrder());
|
||||
return returnMap;
|
||||
})
|
||||
.collect(Collectors.toList());
|
||||
|
|
|
|||
|
|
@ -2,12 +2,42 @@ package com.dbnt.kcscbackend.commonCode.repository;
|
|||
|
||||
import com.dbnt.kcscbackend.commonCode.entity.TnCmtOrg;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.data.jpa.repository.Query;
|
||||
import org.springframework.data.repository.query.Param;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
public interface TnCmtOrgRepository extends JpaRepository<TnCmtOrg, TnCmtOrg.TnCmtOrgId> {
|
||||
List<TnCmtOrg> findByUseYnAndUpCmtSeqOrderByCmtOrder(String useYn, Long upCmtSeq);
|
||||
TnCmtOrg findByUseYnAndCmtSeq(String useYn, Long cmtSeq);
|
||||
List<TnCmtOrg> findByUseYnAndUpCmtSeqAndCmtTypeOrderByCmtOrder(String useYn, Long upCmtSeq, String cmtType);
|
||||
|
||||
|
||||
@Query(value = "CALL sp_add_tn_cmt_org (" +
|
||||
":_cmt_nm, " +
|
||||
":_cmt_type, " +
|
||||
":_cmt_desc, " +
|
||||
":_up_cmt_seq, " +
|
||||
":_cmt_order, " +
|
||||
":_modi_id, " +
|
||||
":_cmt_seq, " +
|
||||
":_result_count, " +
|
||||
":_result_code, " +
|
||||
":_error_message)",
|
||||
nativeQuery = true)
|
||||
Map<String, Object> spAddTnCmtOrg(
|
||||
@Param("_cmt_nm") String cmtNm,
|
||||
@Param("_cmt_type") String cmtType,
|
||||
@Param("_cmt_desc") String cmtDesc,
|
||||
@Param("_up_cmt_seq") Integer upCmtSeq,
|
||||
@Param("_cmt_order") Integer cmtOrder,
|
||||
@Param("_modi_id") String modiId,
|
||||
@Param("_cmt_seq") Integer evtSeq,
|
||||
@Param("_result_count") Integer resultCount,
|
||||
@Param("_result_code") String resultCode,
|
||||
@Param("_error_message") String errorMessage
|
||||
);
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue