개발 무지렁이

[Spring Boot] extra필드에 GenFile 담기 (순서대로) 본문

Backend/스프링부트

[Spring Boot] extra필드에 GenFile 담기 (순서대로)

Gaejirang-e 2023. 1. 6. 15:43

[GenFileService.java]

@Service
@RequiredArgsConstructor
public class GenFileService {
    private final GenFileRepository genFileRepository;

    public Map<String, GenFile> getRelGenFileMap(Article article) {
        List<GenFile> genFiles = genFileRepository.findByRelTypeCodeAndRelIdOrderByTypeCodeAscType2CodeAscFileNoAsc("article", article.getId());
        return genFiles
            .stream()
            .collect(Collectors.toMap(
                genFile -> genFile.getTypeCode() + "__" + genFile.getType2Code() + "__" + genFile.getFileNo(),
                genFile -> genFile,
                (genFile1, genFile2) -> genFile1,
                LinkedHashMap::new
    }    
}    

[ArticleService.java]

@Service
@RequiredArgsConstructor
public class ArticleService {
    private final ArticleRepository articleRepository;
    private final GenFileService genFileService;

    public Article getForPrintArticleById(Long id) {
        Article article = getArticleById(id);

        Map<String, GenFile> genFileMap = genFileService.getRelGenFileMap(article);
        article.getExtra().put("genFileMap", genFileMap);
        return article;
    }
}    
Comments