= 코드 관리 == 개요 그룹 코드를 등록하고 그룹 코드의 공통 코드를 등록하여 추가, 수정 및 삭제를 관리한다. + groupcodes는 그룹 코드를 나타내고, commcodes는 공통 코드를 나타낸다. 그룹 코드가 상위, 공통 코드가 그룹 코드의 하위 개념이다. == Table * 그룹 코드 : TC_CF_COMM_CODE_TYPE * 공통 코드 : TC_CF_COMM_CODE == API .CommCodeController.java . 그룹 코드 목록 조회 + GET /commcode/groupcodes-with-paging + Query ID : selectGroupCodePagingList .. 검색조건에는 코드, 코드명, 설명이 있다. + "그룹 코드 목록 조회(페이징)"을 사용하며 각 조건에 맞게 쿼리를 실행한다. + 특히 코드명은 한글, 영어, 중국어에 상관없이 입력한 값의 대소문자를 가리지 않고 1글자만 입력해도 검색이 된다. .. orderBy는 기본이 COMM_CODE_TYPE_CODE(코드명) 이다. . 그룹 코드 등록 + POST /commcode/groupcodes ** 그룹 코드는 20자 이내로 입력해야 한다. 영문자와 숫자, 특수문자만 사용할 수 있고 한글은 입력이 안 되게 정규식을 사용하여 프론트단에서 유효성 체크를 한다. . 그룹 코드 삭제 + DELETE /commcode/groupcodes/{groupCode} .. 그룹 코드는 TC_CF_COMM_CODE_TYPE.DELETE_YN 컬럼 값을 true로 업데이트 하는 식으로 삭제한다. ... 먼저 그룹 코드에 추가되어 있는 공통 코드의 하위를 전부 조회하여 찾은 후 공통 코드 전부 TC_CF_COMM_CODE.DELETE_YN 컬럼을 true로 업데이트 한다. .... Query ID : updateCommCodeDeleted ... 그 후 그룹 코드의 DELETE_YN 컬럼을 true로 업데이트 하여 삭제한다. .... Query ID : updateGroupCode . 공통 코드 추가 + POST /commcode/groupcodes/{groupCode}/commcodes ** 추가시에 중복체크하고 없으면 등록하는데 TC_CF_COMM_CODE.CODE_ID는 IdGenService를 사용하여 유니크한 ID를 만들어서 등록한다. . 공통 코드 삭제 + DELETE /commcode/groupcodes/{groupCode}/commcodes/{commCodeId} ** 삭제하려는 공통 코드의 자신과 자식들 코드를 조회하여 DELETE_YN 컬럼 값을 true로 업데이트 하는 식으로 삭제한다. *** Query ID : updateCommCodeDeleted == 화면 그룹 코드 및 그룹코드에 대한 공통 코드를 추가, 수정 및 삭제 기능을 수행하여 관리한다. + image::commonCodeList.png[] === 기능별 설명 - 등록 : 코드 정보를 등록하는 화면으로 이동 == 코드 등록 그룹 코드를 등록 + * 영문자와 숫자, '-', '_' 2개의 특수문자만 사용하여 등록 가능하다. image::commonCodeDetail_Reg.png[] === 기능별 설명 - 목록 : 코드 관리 화면으로 이동 - 저장 : 그룹 코드 정보를 저장 == 코드 상세 정보 그룹 코드의 상세 정보를 수정, 삭제하고 그에 대한 공통 코드를 추가, 수정, 삭제하여 관리 image::commonCodeDetail.png[] === 기능별 설명 ==== 그룹코드 정보 - 엑셀다운로드 : 조회 조건과 동일한 조회 결과 값을 담은 엑셀 파일을 다운로드 하는 기능 - 목록 : 코드 관리 화면으로 이동 - 삭제 : 그룹코드를 삭제 - 저장 : 수정된 그룹코드 상세 정보를 수정 ==== 공통코드 목록 - 추가 : 공통코드를 등록하는 Popup 호출 - 수정 : 공통코드를 수정하는 Popup 호출 - 삭제 : 공통코드를 삭제