From 44d94189613f8410c6f38494704cd9f051e1b800 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B0=95=EC=84=9D=20=EC=B5=9C?= Date: Fri, 19 May 2023 18:40:04 +0900 Subject: [PATCH] =?UTF-8?q?=EA=B5=AD=EC=A0=9C=EB=B2=94=EC=A3=84=EA=B2=80?= =?UTF-8?q?=EA=B1=B0=ED=98=84=ED=99=A9=20=ED=86=B5=EA=B3=84=EB=AA=A8?= =?UTF-8?q?=EB=8B=AC=20=EC=B6=94=EA=B0=80.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../InternationalCrimeArrestController.java | 27 +++++ .../InternationalCrimeArrestMapper.java | 7 +- .../model/IcaStatistics.java | 27 +++++ .../InternationalCrimeArrestService.java | 25 +++++ .../InternationalCrimeArrestMapper.xml | 41 ++++++++ .../faStatistics/internationalCrimeArrest.js | 29 +++++- .../icaStatisticsModal.html | 99 +++++++++++++++++++ .../internationalCrimeArrest.html | 26 ++++- .../internationalCrimeArrestEditModal.html | 1 - .../internationalCrimeArrestViewModal.html | 2 +- 10 files changed, 274 insertions(+), 10 deletions(-) create mode 100644 src/main/java/com/dbnt/faisp/main/faStatistics/internationalCrimeArrest/model/IcaStatistics.java create mode 100644 src/main/resources/templates/faStatistics/internationalCrimeArrest/icaStatisticsModal.html diff --git a/src/main/java/com/dbnt/faisp/main/faStatistics/internationalCrimeArrest/InternationalCrimeArrestController.java b/src/main/java/com/dbnt/faisp/main/faStatistics/internationalCrimeArrest/InternationalCrimeArrestController.java index a30a7768..bed8735e 100644 --- a/src/main/java/com/dbnt/faisp/main/faStatistics/internationalCrimeArrest/InternationalCrimeArrestController.java +++ b/src/main/java/com/dbnt/faisp/main/faStatistics/internationalCrimeArrest/InternationalCrimeArrestController.java @@ -1,6 +1,7 @@ package com.dbnt.faisp.main.faStatistics.internationalCrimeArrest; import com.dbnt.faisp.main.authMgt.service.AuthMgtService; +import com.dbnt.faisp.main.faStatistics.internationalCrimeArrest.model.IcaStatistics; import com.dbnt.faisp.main.faStatistics.internationalCrimeArrest.model.IcaSubInfo; import com.dbnt.faisp.main.faStatistics.internationalCrimeArrest.model.InternationalCrimeArrest; import com.dbnt.faisp.main.faStatistics.internationalCrimeArrest.repository.IcaSuspectInfoRepository; @@ -18,6 +19,7 @@ import org.springframework.web.servlet.ModelAndView; import javax.servlet.http.HttpServletResponse; import java.io.IOException; +import java.time.LocalDate; import java.time.LocalDateTime; import java.util.ArrayList; import java.util.List; @@ -84,6 +86,31 @@ public class InternationalCrimeArrestController { return mav; } + @GetMapping("/icaStatisticsModal") + public ModelAndView icaStatisticsModal(@AuthenticationPrincipal UserInfo loginUser, IcaStatistics icaStatistics){ + ModelAndView mav = new ModelAndView("faStatistics/internationalCrimeArrest/icaStatisticsModal"); + if(Utils.isEmpty(icaStatistics.getOrgan())){ + icaStatistics.setOrgan(loginUser.getOgCd()); + } + if(Utils.isEmpty(icaStatistics.getYear())){ + icaStatistics.setYear(LocalDate.now().getYear()); + } + if(Utils.isEmpty(icaStatistics.getMonth())){ + icaStatistics.setMonth(LocalDate.now().getMonthValue()); + } + List icaStatisticsList = internationalCrimeArrestService.selectIcaStatistics(icaStatistics); + mav.addObject("total", internationalCrimeArrestService.getIcaStatisticsTotal(icaStatisticsList)); + mav.addObject("icaStatisticsList", icaStatisticsList); + List yearList = internationalCrimeArrestService.selectYearOptionList(icaStatistics.getOrgan()); + if(yearList.size()==0){ + yearList.add(icaStatistics.getYear()); + } + mav.addObject("yearOptionList", yearList); + mav.addObject("searchParams", icaStatistics); + mav.addObject("mgtOrganList", loginUser.getDownOrganCdList()); + return mav; + } + @PostMapping("/saveInternationalCrimeArrest") public Integer saveInternationalCrimeArrest(@AuthenticationPrincipal UserInfo loginUser, InternationalCrimeArrest internationalCrimeArrest){ diff --git a/src/main/java/com/dbnt/faisp/main/faStatistics/internationalCrimeArrest/mapper/InternationalCrimeArrestMapper.java b/src/main/java/com/dbnt/faisp/main/faStatistics/internationalCrimeArrest/mapper/InternationalCrimeArrestMapper.java index 109f0c6f..e0723987 100644 --- a/src/main/java/com/dbnt/faisp/main/faStatistics/internationalCrimeArrest/mapper/InternationalCrimeArrestMapper.java +++ b/src/main/java/com/dbnt/faisp/main/faStatistics/internationalCrimeArrest/mapper/InternationalCrimeArrestMapper.java @@ -1,6 +1,7 @@ package com.dbnt.faisp.main.faStatistics.internationalCrimeArrest.mapper; +import com.dbnt.faisp.main.faStatistics.internationalCrimeArrest.model.IcaStatistics; import com.dbnt.faisp.main.faStatistics.internationalCrimeArrest.model.InternationalCrimeArrest; import com.dbnt.faisp.util.ParamMap; @@ -10,6 +11,8 @@ import java.util.List; @Mapper public interface InternationalCrimeArrestMapper{ - List selectInternationalCrimeArrestList(InternationalCrimeArrest internationalCrimeArrest); - Integer selectInternationalCrimeArrestListCnt(InternationalCrimeArrest internationalCrimeArrest); + List selectInternationalCrimeArrestList(InternationalCrimeArrest internationalCrimeArrest); + Integer selectInternationalCrimeArrestListCnt(InternationalCrimeArrest internationalCrimeArrest); + List selectIcaStatistics(IcaStatistics icaStatistics); + List selectYearOptionList(String organ); } diff --git a/src/main/java/com/dbnt/faisp/main/faStatistics/internationalCrimeArrest/model/IcaStatistics.java b/src/main/java/com/dbnt/faisp/main/faStatistics/internationalCrimeArrest/model/IcaStatistics.java new file mode 100644 index 00000000..1d970e46 --- /dev/null +++ b/src/main/java/com/dbnt/faisp/main/faStatistics/internationalCrimeArrest/model/IcaStatistics.java @@ -0,0 +1,27 @@ +package com.dbnt.faisp.main.faStatistics.internationalCrimeArrest.model; + + +import lombok.Getter; +import lombok.NoArgsConstructor; +import lombok.Setter; + +@Getter +@Setter +@NoArgsConstructor +public class IcaStatistics { + private String crimeType; + private String violationType; + private Integer caseCnt = 0; + private Integer suspectCnt = 0; + private Integer arrestCnt = 0; + private Integer arrestSuspectCnt = 0; + private Integer pcr001Cnt = 0; + private Integer pcr002Cnt = 0; + private Integer pcr003Cnt = 0; + private Integer pcr004Cnt = 0; + private Integer pcr005Cnt = 0; + + private String organ; + private Integer year; + private Integer month; +} diff --git a/src/main/java/com/dbnt/faisp/main/faStatistics/internationalCrimeArrest/service/InternationalCrimeArrestService.java b/src/main/java/com/dbnt/faisp/main/faStatistics/internationalCrimeArrest/service/InternationalCrimeArrestService.java index ebf0415c..8435c3c9 100644 --- a/src/main/java/com/dbnt/faisp/main/faStatistics/internationalCrimeArrest/service/InternationalCrimeArrestService.java +++ b/src/main/java/com/dbnt/faisp/main/faStatistics/internationalCrimeArrest/service/InternationalCrimeArrestService.java @@ -3,6 +3,7 @@ package com.dbnt.faisp.main.faStatistics.internationalCrimeArrest.service; import com.dbnt.faisp.config.BaseService; import com.dbnt.faisp.main.faStatistics.internationalCrimeArrest.mapper.InternationalCrimeArrestMapper; +import com.dbnt.faisp.main.faStatistics.internationalCrimeArrest.model.IcaStatistics; import com.dbnt.faisp.main.faStatistics.internationalCrimeArrest.model.IcaSubInfo; import com.dbnt.faisp.main.faStatistics.internationalCrimeArrest.model.InternationalCrimeArrest; import com.dbnt.faisp.main.faStatistics.internationalCrimeArrest.model.IcaSuspectInfo; @@ -85,4 +86,28 @@ public class InternationalCrimeArrestService extends BaseService { internationalCrimeArrestRepository.bulkModifyingByIcaKeyToStatus(internationalCrimeArrest.getIcaKey(), "DST008"); } + + public List selectIcaStatistics(IcaStatistics icaStatistics) { + return internationalCrimeArrestMapper.selectIcaStatistics(icaStatistics); + } + + public List selectYearOptionList(String organ) { + return internationalCrimeArrestMapper.selectYearOptionList(organ); + } + + public IcaStatistics getIcaStatisticsTotal(List icaStatisticsList) { + IcaStatistics total = new IcaStatistics(); + for(IcaStatistics statistics : icaStatisticsList){ + total.setCaseCnt(total.getCaseCnt()+statistics.getCaseCnt()); + total.setSuspectCnt(total.getSuspectCnt()+statistics.getSuspectCnt()); + total.setArrestCnt(total.getArrestCnt()+statistics.getArrestCnt()); + total.setArrestSuspectCnt(total.getArrestSuspectCnt()+statistics.getArrestSuspectCnt()); + total.setPcr001Cnt(total.getPcr001Cnt()+statistics.getPcr001Cnt()); + total.setPcr002Cnt(total.getPcr002Cnt()+statistics.getPcr002Cnt()); + total.setPcr003Cnt(total.getPcr003Cnt()+statistics.getPcr003Cnt()); + total.setPcr004Cnt(total.getPcr004Cnt()+statistics.getPcr004Cnt()); + total.setPcr005Cnt(total.getPcr005Cnt()+statistics.getPcr005Cnt()); + } + return total; + } } diff --git a/src/main/resources/mybatisMapper/InternationalCrimeArrestMapper.xml b/src/main/resources/mybatisMapper/InternationalCrimeArrestMapper.xml index 131a1fbc..34372831 100644 --- a/src/main/resources/mybatisMapper/InternationalCrimeArrestMapper.xml +++ b/src/main/resources/mybatisMapper/InternationalCrimeArrestMapper.xml @@ -105,4 +105,45 @@ WHERE s.ica_key = #{icaKey} + + + \ No newline at end of file diff --git a/src/main/resources/static/js/faStatistics/internationalCrimeArrest.js b/src/main/resources/static/js/faStatistics/internationalCrimeArrest.js index b03a137e..8cc5faf8 100644 --- a/src/main/resources/static/js/faStatistics/internationalCrimeArrest.js +++ b/src/main/resources/static/js/faStatistics/internationalCrimeArrest.js @@ -9,8 +9,16 @@ $(function(){ language: "ko", autoclose: true }); + + getStatisticsModal(); }); +$(document).on('click', '#statisticsModalBtn', function (){ + getStatisticsModal(); +}) +$(document).on('click', '#statisticsSearchBtn', function (){ + getStatisticsModal($('#organ').val(), $('#year').val(), $('#month').val()) +}) $(document).on('click', '#icaAddBtn', function () { getIcaEditModal(null); @@ -189,7 +197,6 @@ function saveInternationalCrimeArrest(status){ formData.append("suspectInfoList["+idx+"].processResult", spi.find('.processResult').val()); }); formData.append("caseOverview", CrossEditor.GetBodyValue()); - debugger $.ajax({ type : 'POST', data : formData, @@ -219,6 +226,26 @@ function contentCheck(status){ return flag; } +function getStatisticsModal(organ, year, month){ + $.ajax({ + url: '/faStatistics/icaStatisticsModal', + data: { + organ: organ, + year: year, + month: month, + }, + type: 'GET', + dataType:"html", + success: function(html){ + $("#icaStatisticsBody").empty().append(html) + $("#icaStatisticsModal").modal('show'); + }, + error:function(e){ + ajaxErrorAction(e); + } + }); +} + $(document).on('click', '#icaExcelDownBtn', function (){ debugger exportExcel('국제범죄검거현황', 'icaTable') diff --git a/src/main/resources/templates/faStatistics/internationalCrimeArrest/icaStatisticsModal.html b/src/main/resources/templates/faStatistics/internationalCrimeArrest/icaStatisticsModal.html new file mode 100644 index 00000000..1a58fa81 --- /dev/null +++ b/src/main/resources/templates/faStatistics/internationalCrimeArrest/icaStatisticsModal.html @@ -0,0 +1,99 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/templates/faStatistics/internationalCrimeArrest/internationalCrimeArrest.html b/src/main/resources/templates/faStatistics/internationalCrimeArrest/internationalCrimeArrest.html index a61304d2..a0a5e85e 100644 --- a/src/main/resources/templates/faStatistics/internationalCrimeArrest/internationalCrimeArrest.html +++ b/src/main/resources/templates/faStatistics/internationalCrimeArrest/internationalCrimeArrest.html @@ -32,11 +32,20 @@
- +
+
+ +
+
+
+
+ +
+
@@ -285,6 +294,13 @@ +
+ diff --git a/src/main/resources/templates/faStatistics/internationalCrimeArrest/internationalCrimeArrestEditModal.html b/src/main/resources/templates/faStatistics/internationalCrimeArrest/internationalCrimeArrestEditModal.html index a5101b7b..9d35fb17 100644 --- a/src/main/resources/templates/faStatistics/internationalCrimeArrest/internationalCrimeArrestEditModal.html +++ b/src/main/resources/templates/faStatistics/internationalCrimeArrest/internationalCrimeArrestEditModal.html @@ -421,7 +421,6 @@ -