From d31730476c2f68caa601e49b9b41b49a7485470c Mon Sep 17 00:00:00 2001 From: mjkhan21 Date: Thu, 23 Jan 2025 17:27:49 +0900 Subject: [PATCH] =?UTF-8?q?ChongnoTaskProcessor=20=EC=A0=95=EC=9D=98=20?= =?UTF-8?q?=EB=B0=8F=20=EC=A0=81=EC=9A=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../fims/chongno/ChongnoTaskProcessor.java | 64 +++++++++++++++++++ .../xit/fims/chongno/MainApplication.java | 10 ++- 2 files changed, 72 insertions(+), 2 deletions(-) create mode 100644 src/main/java/cokr/xit/fims/chongno/ChongnoTaskProcessor.java diff --git a/src/main/java/cokr/xit/fims/chongno/ChongnoTaskProcessor.java b/src/main/java/cokr/xit/fims/chongno/ChongnoTaskProcessor.java new file mode 100644 index 0000000..6abcde6 --- /dev/null +++ b/src/main/java/cokr/xit/fims/chongno/ChongnoTaskProcessor.java @@ -0,0 +1,64 @@ +package cokr.xit.fims.chongno; + +import java.util.List; + +import javax.annotation.Resource; + +import cokr.xit.fims.crdn.Crdn; +import cokr.xit.fims.crdn.CrdnQuery; +import cokr.xit.fims.levy.LevyQuery; +import cokr.xit.fims.levy.dao.LevyMapper; +import cokr.xit.fims.mngt.service.bean.TaskProcessor; +import cokr.xit.foundation.data.DataObject; + +public class ChongnoTaskProcessor extends TaskProcessor { + private static final String TASK_SE_CD = "RVS"; + + @Override + public String getVltnCdGrp(String taskSeCd) { + if (TASK_SE_CD.equals(taskSeCd)) + return "FIM090"; + return super.getVltnCdGrp(taskSeCd); + } + + @Override + public String[] getExtraCdGrps(String taskSeCd) { + if (TASK_SE_CD.equals(taskSeCd)) + return new String[] {"FIM002"}; + return super.getExtraCdGrps(taskSeCd); + } + + @Resource(name = "levyMapper") + private LevyMapper levyMapper; + + @Override + public int[] getBasicAmt(Crdn crdn) { + String taskSeCd = crdn.getTaskSeCd(); + if (TASK_SE_CD.equals(taskSeCd)) { + String crdnYmd = crdn.getCrdnYmd(); + String sggCd = crdn.getSggCd(); + List levies = levyMapper.selectPrevLevyList( + new LevyQuery() + .setSchVhrno(crdn.getVhrno()) + .setSchVltnCd(crdn.getVltnCd()) + .setRtpyrId(crdn.getRtpyrId()) + .setDate(crdnYmd) + .setSggCd(sggCd) + .setTaskSeCd(taskSeCd) + ); + String vcount = "0" + Math.min(levies.size() + 1, 3); // 위반횟수 + + CrdnQuery query = new CrdnQuery() + .setAplcnYmd(crdnYmd) + .setAmtDcsnCdGroupId("FIM090") + .setAmtDcsnCd("01") + .setDtlAmtDcsnGroupId("FIM091") + .setDtlAmtDcsnCd(vcount) + .setTaskSeCd(taskSeCd) + .setSggCd(sggCd); + int amt = toInt(crdnStngMapper.selectBasicAmt(query)); + return new int[] {amt, amt}; + } + return super.getBasicAmt(crdn); + } +} \ No newline at end of file diff --git a/src/main/java/cokr/xit/fims/chongno/MainApplication.java b/src/main/java/cokr/xit/fims/chongno/MainApplication.java index da22dc8..77c7aab 100644 --- a/src/main/java/cokr/xit/fims/chongno/MainApplication.java +++ b/src/main/java/cokr/xit/fims/chongno/MainApplication.java @@ -5,17 +5,18 @@ import java.util.List; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.ImportAutoConfiguration; +import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.ComponentScan; import cokr.xit.base.ServletCustomizer; import cokr.xit.fims.FimsConf; import cokr.xit.fims.SpringBootApplicationBridge; +import cokr.xit.fims.mngt.service.bean.TaskProcessor; import cokr.xit.fims.task.TaskMvcConfig; @ImportAutoConfiguration({ServletCustomizer.class,TaskMvcConfig.class}) @ComponentScan(basePackageClasses = cokr.xit.applib.HttpStatusCodeExceptionControllerAdvice.class) public class MainApplication extends SpringBootApplicationBridge { - public static void main(String[] args) { allowRestrictedHeaders(); System.setProperty("sgg", FimsConf.get().getSgg()); @@ -41,4 +42,9 @@ public class MainApplication extends SpringBootApplicationBridge { } System.setProperty("jdk.httpclient.allowRestrictedHeaders", allowRestrictedHeaders); } -} + + @Bean("taskProcessor") + public TaskProcessor taskProcessor() { + return ChongnoTaskProcessor.get(ChongnoTaskProcessor::new); + } +} \ No newline at end of file