인사시스템 정보 연동 시 코드 생성 오류 수정.
parent
267f1c7b93
commit
c85587b70f
|
|
@ -99,22 +99,16 @@ public class CodeMgtService{
|
|||
public String searchCodeToCategoryAndValue(String categoryCd, String value){
|
||||
CodeMgt code = codeMgtRepository.findByCategoryCdAndItemValue(categoryCd, value).orElse(null);
|
||||
if(code==null){
|
||||
List<CodeMgt> codeList = codeMgtRepository.findByCategoryCdOrderByItemCdAsc(categoryCd);
|
||||
Integer codeNum = 1;
|
||||
String itemCd="";
|
||||
for(CodeMgt savedCode : codeList){
|
||||
if(!savedCode.getItemValue().equals("기타") && !savedCode.getItemValue().equals("직접입력")){
|
||||
codeNum = Integer.parseInt(savedCode.getItemCd().replace(categoryCd, ""));
|
||||
}
|
||||
if(codeNum==1){
|
||||
itemCd = savedCode.getItemCd().replace(categoryCd, "").replace("1", "");
|
||||
}
|
||||
CodeMgt lastCode = codeMgtRepository.findTop1ByCategoryCdOrderByItemCdDesc(categoryCd).orElse(null);
|
||||
String lastCodeSeq = "1";
|
||||
if(lastCode!=null){
|
||||
lastCodeSeq = lastCode.getItemCd().replace(lastCode.getCategoryCd(), "");
|
||||
}
|
||||
codeNum++;
|
||||
itemCd = categoryCd+(itemCd.substring((int)Math.log10((double)codeNum)))+codeNum;
|
||||
String tempItemCd = "000" + (Integer.parseInt(lastCodeSeq)+1);
|
||||
|
||||
CodeMgt newCode = new CodeMgt();
|
||||
newCode.setCategoryCd(categoryCd);
|
||||
newCode.setItemCd(itemCd);
|
||||
newCode.setItemCd(categoryCd+(tempItemCd.substring(tempItemCd.length() - 3)));
|
||||
newCode.setItemValue(value);
|
||||
newCode.setUseChk("T");
|
||||
codeMgtRepository.save(newCode);
|
||||
|
|
|
|||
Loading…
Reference in New Issue