From d94165fc6947da99cef1770c0296236e258a7295 Mon Sep 17 00:00:00 2001 From: mjkhan21 Date: Mon, 7 Aug 2023 17:37:32 +0900 Subject: [PATCH] =?UTF-8?q?Violation=20constructor=20=EB=B3=80=EA=B2=BD,?= =?UTF-8?q?=20=EC=9C=A0=ED=8B=B8=EB=A6=AC=ED=8B=B0=20=EB=A9=94=EC=86=8C?= =?UTF-8?q?=EB=93=9C=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cokr/xit/interfaces/smg/Petition.java | 31 +++++++++++++++++-- 1 file changed, 28 insertions(+), 3 deletions(-) diff --git a/src/main/java/cokr/xit/interfaces/smg/Petition.java b/src/main/java/cokr/xit/interfaces/smg/Petition.java index 797b736..b082ba7 100644 --- a/src/main/java/cokr/xit/interfaces/smg/Petition.java +++ b/src/main/java/cokr/xit/interfaces/smg/Petition.java @@ -661,11 +661,13 @@ public class Petition extends AbstractEntity { private String reason; - /**새 Violation을(를) 생성한다. + /**민원 수신 파일의 내용을 설정한다. * @param reason 민원 수신 파일의 내용 + * @return 현재 Violation */ - public Violation (String reason) { - this.reason = reason; + public Violation setReason(String reason) { + this.reason = reason; + return this; } /**민원 수신 파일의 내용에서 단속 차량, 단속 일시 정보를 추출한다. @@ -723,6 +725,23 @@ public class Petition extends AbstractEntity { return found; } + /**동/읍/면 이름을 추출한다. + * @param location 위치 + * @return 동/읍/면 이름 + */ + public String getDong(String location) { + if (Assert.isEmpty(location)) return ""; + + String[] suffix = {"동", "읍", "면"}; + for (String token: location.split(" ")) { + for (String tail: suffix) { + if (token.endsWith(tail)) + return token; + } + } + return ""; + } + /**민원 수신 파일의 제목에서 사고 내역 정보를 추출한다. * @param title 민원 수신 파일의 제목 * @return 사고 내역 정보 @@ -762,4 +781,10 @@ public class Petition extends AbstractEntity { } } + public static void main(String[] args) { + String[] locations = {"경기도 파주시 금촌동 798", "경기도 파주시 문산읍 당동리 892", "경기도 파주시 월롱면 덕은리 1300"}; + Violation v = new Violation(); + for (String loc: locations) + System.out.println(v.getDong(loc)); + } } \ No newline at end of file