From 05e0043f4f143d2a901106958fa67c6a6d0e932b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?dhji=28=EC=A7=80=EB=8C=80=ED=95=9C=29?= Date: Mon, 30 Oct 2023 11:03:10 +0900 Subject: [PATCH] =?UTF-8?q?=EB=B2=95=EC=A0=95=EB=8F=99=20=EC=A0=80?= =?UTF-8?q?=EC=9E=A5(=EB=A1=9C=EC=BB=AC=EC=9A=A9)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../external/service/SunRiseSetService.java | 2 +- .../biz/jpa/entity/ComAdmDistrictBas.java | 8 +- .../temp/TempAdmDistrictService.java | 35 -------- .../palnet/exec/TempAdmDistrictService.java | 84 +++++++++++++++++++ .../exec/TempAdmDistrictServiceTest.java | 18 ++++ 5 files changed, 110 insertions(+), 37 deletions(-) delete mode 100644 pav-server/src/main/java/com/palnet/biz/scheduler/temp/TempAdmDistrictService.java create mode 100644 pav-server/src/main/java/com/palnet/exec/TempAdmDistrictService.java create mode 100644 pav-server/src/test/java/com/palnet/exec/TempAdmDistrictServiceTest.java diff --git a/pav-server/src/main/java/com/palnet/biz/api/external/service/SunRiseSetService.java b/pav-server/src/main/java/com/palnet/biz/api/external/service/SunRiseSetService.java index 18fddd6..3e10cf5 100644 --- a/pav-server/src/main/java/com/palnet/biz/api/external/service/SunRiseSetService.java +++ b/pav-server/src/main/java/com/palnet/biz/api/external/service/SunRiseSetService.java @@ -63,7 +63,7 @@ public class SunRiseSetService { // continue 20240201 List locations = getLocation(); // LocalDate targetDate = LocalDate.now(); - LocalDate targetDate = LocalDate.of(2024, 2, 1); + LocalDate targetDate = LocalDate.of(2024, 3, 1); LocalDate end = targetDate.plusMonths(6); List sunRiseSet = new ArrayList<>(); diff --git a/pav-server/src/main/java/com/palnet/biz/jpa/entity/ComAdmDistrictBas.java b/pav-server/src/main/java/com/palnet/biz/jpa/entity/ComAdmDistrictBas.java index 2fdf317..8eb2b74 100644 --- a/pav-server/src/main/java/com/palnet/biz/jpa/entity/ComAdmDistrictBas.java +++ b/pav-server/src/main/java/com/palnet/biz/jpa/entity/ComAdmDistrictBas.java @@ -1,6 +1,9 @@ package com.palnet.biz.jpa.entity; +import lombok.AllArgsConstructor; +import lombok.Builder; import lombok.Data; +import lombok.NoArgsConstructor; import javax.persistence.Column; import javax.persistence.Entity; @@ -18,8 +21,11 @@ import javax.persistence.Table; * ----------------------------------------------------------- * 2023-10-26(026) dhji 최초 생성 */ -@Entity @Data +@NoArgsConstructor +@AllArgsConstructor +@Builder +@Entity @Table(name = "COM_ADM_DISTRICT_BAS") public class ComAdmDistrictBas { diff --git a/pav-server/src/main/java/com/palnet/biz/scheduler/temp/TempAdmDistrictService.java b/pav-server/src/main/java/com/palnet/biz/scheduler/temp/TempAdmDistrictService.java deleted file mode 100644 index 793983d..0000000 --- a/pav-server/src/main/java/com/palnet/biz/scheduler/temp/TempAdmDistrictService.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.palnet.biz.scheduler.temp; - -import org.springframework.stereotype.Service; - -import java.io.File; - -/** - * packageName : com.palnet.biz.scheduler.temp - * fileName : AdmDistrictInsert - * author : dhji - * date : 2023-10-26(026) - * description : - * =========================================================== - * DATE AUTHOR NOTE - * ----------------------------------------------------------- - * 2023-10-26(026) dhji 최초 생성 - */ -@Service -public class TempAdmDistrictService { - - - - public static void main(String[] args) { - File directory = new File("./document/district_code"); - if(!directory.exists()) return; - - File[] files = directory.listFiles(); - for(File file : files) { - if(!file.isDirectory()) { - - } - } - System.out.println("end..."); - } -} diff --git a/pav-server/src/main/java/com/palnet/exec/TempAdmDistrictService.java b/pav-server/src/main/java/com/palnet/exec/TempAdmDistrictService.java new file mode 100644 index 0000000..0aefeb3 --- /dev/null +++ b/pav-server/src/main/java/com/palnet/exec/TempAdmDistrictService.java @@ -0,0 +1,84 @@ +package com.palnet.exec; + +import com.palnet.biz.jpa.entity.ComAdmDistrictBas; +import com.palnet.biz.jpa.repository.com.ComAdmDistrictBasRepository; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +import java.io.BufferedReader; +import java.io.File; +import java.io.FileReader; +import java.util.ArrayList; +import java.util.List; + +/** + * packageName : com.palnet.biz.scheduler.temp + * fileName : AdmDistrictInsert + * author : dhji + * date : 2023-10-26(026) + * description : + * =========================================================== + * DATE AUTHOR NOTE + * ----------------------------------------------------------- + * 2023-10-26(026) dhji 최초 생성 + */ +@Slf4j +@RequiredArgsConstructor +@Service +public class TempAdmDistrictService { + + private final ComAdmDistrictBasRepository comAdmDistrictBasRepository; + + // 로컬에서만 돌리도록 + @Deprecated + public void readAdmDistrictCode() { +// File directory = new File("./document/district_code"); + File directory = new File("../document/district_code"); + log.info(">>> directory : {}", directory.getPath()); + log.info(">>> directory : {}", directory.getAbsolutePath()); + if (!directory.exists()) return; + File[] files = directory.listFiles(); + for (File file : files) { + if (file.isFile()) { + try (BufferedReader br = new BufferedReader(new FileReader(file))) { + List entities = new ArrayList<>(); + // 첫줄 무시 + String line = br.readLine(); + while ((line = br.readLine()) != null) { +// log.info("line :: {}", line); + String[] row = line.split("\\|"); + String admSectGbn = row[0]; + // admSectGbn가 L만 추출 + if (!"L".equals(admSectGbn)) continue; + if (row.length < 9) continue; +// log.info("row length : {}::{}", row.length, line); +// ADM_SECT_GBN|ADM_CD|ADM_SECT_NM|LOWEST_ADM_SECT_NM|DEL_YMD +// |CHG_BEF_ADM_SECT_GBN|CRE_YMD|CHG_BEF_ADM_SECT_CD|COL_ADM_SECT_CD + ComAdmDistrictBas entity = ComAdmDistrictBas.builder() +// .admSectGbn(row[0]) + .admCd(row[1]) + .admSectNm(row[2]) + .lowestAdmSectNm(row[3]) + .delYmd(row[4]) + .chgBefAdmSectGbn(row[5]) + .creYmd(row[6]) + .chgBefAdmSectCd(row[7]) + .colAdmSectCd(row[8]) + .build(); +// log.info("entity :: {}", entity); + entities.add(entity); + + } + log.info(">>> entities size : {}/{}", entities.get(0).getAdmSectNm(), entities.size()); + comAdmDistrictBasRepository.saveAll(entities); + } catch (Exception e) { + log.error("error : {}||{}", e.getMessage(), file.getName()); + } + + } + } + log.info(">>>> end...."); + } + +} diff --git a/pav-server/src/test/java/com/palnet/exec/TempAdmDistrictServiceTest.java b/pav-server/src/test/java/com/palnet/exec/TempAdmDistrictServiceTest.java new file mode 100644 index 0000000..a3cb8e9 --- /dev/null +++ b/pav-server/src/test/java/com/palnet/exec/TempAdmDistrictServiceTest.java @@ -0,0 +1,18 @@ +package com.palnet.exec; + +import org.junit.jupiter.api.Test; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.ActiveProfiles; + +@ActiveProfiles("local") +@SpringBootTest +class TempAdmDistrictServiceTest { + + @Autowired + private TempAdmDistrictService service; + @Test + void readAdmDistrictCode() { + service.readAdmDistrictCode(); + } +} \ No newline at end of file