67 lines
2.1 KiB
Java
67 lines
2.1 KiB
Java
package com.dbnt.faisp.codeMgt.service;
|
|
|
|
import com.dbnt.faisp.codeMgt.model.CodeCatg;
|
|
import com.dbnt.faisp.codeMgt.model.CodeMgt;
|
|
import com.dbnt.faisp.codeMgt.repository.CodeCatgRepository;
|
|
import com.dbnt.faisp.codeMgt.repository.CodeMgtRepository;
|
|
import lombok.RequiredArgsConstructor;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
import java.util.ArrayList;
|
|
import java.util.HashMap;
|
|
import java.util.List;
|
|
import java.util.Map;
|
|
|
|
@Service
|
|
@RequiredArgsConstructor
|
|
public class CodeMgtService{
|
|
|
|
private final CodeMgtRepository codeMgtRepository;
|
|
private final CodeCatgRepository codeCatgRepository;
|
|
|
|
@Transactional
|
|
public String saveCode(List<CodeCatg> codeMgtList){
|
|
for(CodeCatg codeCatg: codeMgtList){
|
|
codeCatgRepository.save(codeCatg);
|
|
if (codeCatg.getItemList().size()>0){
|
|
codeItemSave(codeCatg.getItemList());
|
|
}
|
|
}
|
|
return "";
|
|
}
|
|
|
|
private void codeItemSave(List<CodeMgt> itemList){
|
|
codeMgtRepository.saveAll(itemList);
|
|
}
|
|
|
|
public List<CodeCatg> selectCodeCatgAndChild() {
|
|
List<CodeCatg> codeCatgList = codeCatgRepository.findAll();
|
|
for(CodeCatg codeCatg: codeCatgList){
|
|
codeCatg.setItemList(codeMgtRepository.findByCategoryCdOrderByItemCdAsc(codeCatg.getCategoryCd()));
|
|
}
|
|
return codeCatgList;
|
|
}
|
|
|
|
public Map<String, List<CodeMgt>> getCommonCode() {
|
|
//return codeMgtRepository.findByUseChkOrderByItemCdAsc("T");
|
|
List<CodeCatg> categoryList = codeCatgRepository.findAll();
|
|
List<CodeMgt> codeList = codeMgtRepository.findByOrderByItemCdAsc();
|
|
Map<String, List<CodeMgt>> categoryMap = new HashMap<>();
|
|
for(CodeCatg category: categoryList){
|
|
List<CodeMgt> childList = new ArrayList<>();
|
|
for(CodeMgt code: codeList){
|
|
if(code.getCategoryCd().equals(category.getCategoryCd())){
|
|
childList.add(code);
|
|
}
|
|
}
|
|
categoryMap.put(category.getCategoryCd(), childList);
|
|
}
|
|
return categoryMap;
|
|
}
|
|
|
|
public List<CodeMgt> selectCodeMgtList(String categoryCd) {
|
|
return codeMgtRepository.findByCategoryCdAndUseChkOrderByItemCdAsc(categoryCd, "T");
|
|
}
|
|
}
|