From 42ea6bd2079b124cae2247c8ce61195f3ea5d8d0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?dhji=28=EC=A7=80=EB=8C=80=ED=95=9C=29?= Date: Thu, 23 Nov 2023 14:11:08 +0900 Subject: [PATCH 1/2] =?UTF-8?q?=ED=86=B5=EA=B3=84=20serviceType=20?= =?UTF-8?q?=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/MainStatisticsService.java | 26 ++++++++++++++++--- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/pav-server/src/main/java/com/palnet/biz/api/main/statistics/service/MainStatisticsService.java b/pav-server/src/main/java/com/palnet/biz/api/main/statistics/service/MainStatisticsService.java index 9ed2fc78..dffd4f41 100644 --- a/pav-server/src/main/java/com/palnet/biz/api/main/statistics/service/MainStatisticsService.java +++ b/pav-server/src/main/java/com/palnet/biz/api/main/statistics/service/MainStatisticsService.java @@ -297,9 +297,18 @@ public class MainStatisticsService { public List warnStatics(FlightStcsRQ rq, String[] formatParam){ // 권한이 유저권한이 user면 true, user가 아닐 경우 false; - boolean authCheck = jwtTokenUtil.getUserAuthByToken().equals("USER"); + boolean authCheck = jwtTokenUtil.getUserAuthByToken().equals("USER"); + + // SUPER 권한일 경우와 KAC의 기관코드일 경우 전체적으로 모니터링 가능해야한다. 그외는 자신의 기관에 해당하는 데이터 볼 수 있어야 한다. + String serviceType = rq.getServiceType(); + String userAuthByToken = jwtTokenUtil.getUserAuthByToken(); + String cptAuthCodeByToken = jwtTokenUtil.getCptAuthCodeByToken(); + if(!"SUPER".equals(userAuthByToken) && !"KAC".equals(cptAuthCodeByToken)){ + serviceType = cptAuthCodeByToken; + authCheck = false; + } - List resultList = ctrCntrlWarnLogQueryRepository.warnStcs(rq.getCate(), rq.getDate(), rq.getServiceType(), authCheck, formatParam); + List resultList = ctrCntrlWarnLogQueryRepository.warnStcs(rq.getCate(), rq.getDate(), serviceType, authCheck, formatParam); for(FlightStcsValueModel node : resultList){ if(node.getName() == null || node.getName().equals("")) node.setName(" "); @@ -318,9 +327,18 @@ public class MainStatisticsService { public List warnTopStatics(FlightStcsRQ rq, String[] formatParam){ // 권한이 유저권한이 user면 true, user가 아닐 경우 false; - boolean authCheck = jwtTokenUtil.getUserAuthByToken().equals("USER"); + boolean authCheck = jwtTokenUtil.getUserAuthByToken().equals("USER"); + + // SUPER 권한일 경우와 KAC의 기관코드일 경우 전체적으로 모니터링 가능해야한다. 그외는 자신의 기관에 해당하는 데이터 볼 수 있어야 한다. + String serviceType = rq.getServiceType(); + String userAuthByToken = jwtTokenUtil.getUserAuthByToken(); + String cptAuthCodeByToken = jwtTokenUtil.getCptAuthCodeByToken(); + if(!"SUPER".equals(userAuthByToken) && !"KAC".equals(cptAuthCodeByToken)){ + serviceType = cptAuthCodeByToken; + authCheck = false; + } - List resultList = ctrCntrlWarnLogQueryRepository.warnTopStcs(rq.getCate(), rq.getDate(), rq.getServiceType(), authCheck, formatParam); + List resultList = ctrCntrlWarnLogQueryRepository.warnTopStcs(rq.getCate(), rq.getDate(), serviceType, authCheck, formatParam); return resultList; } From 4a93fa0793c717d7bd66e86946106cd80a0038f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?dhji=28=EC=A7=80=EB=8C=80=ED=95=9C=29?= Date: Thu, 23 Nov 2023 14:12:48 +0900 Subject: [PATCH 2/2] =?UTF-8?q?=ED=86=B5=EA=B3=84=20serviceType=20?= =?UTF-8?q?=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/MainStatisticsService.java | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/pav-server/src/main/java/com/palnet/biz/api/main/statistics/service/MainStatisticsService.java b/pav-server/src/main/java/com/palnet/biz/api/main/statistics/service/MainStatisticsService.java index dffd4f41..2b10c43c 100644 --- a/pav-server/src/main/java/com/palnet/biz/api/main/statistics/service/MainStatisticsService.java +++ b/pav-server/src/main/java/com/palnet/biz/api/main/statistics/service/MainStatisticsService.java @@ -223,21 +223,30 @@ public class MainStatisticsService { public List fltTopStatics(FlightStcsRQ rq, String[] formatParam){ // 권한이 유저권한이 user면 true, user가 아닐 경우 false; - boolean authCheck = jwtTokenUtil.getUserAuthByToken().equals("USER"); + boolean authCheck = jwtTokenUtil.getUserAuthByToken().equals("USER"); + + // SUPER 권한일 경우와 KAC의 기관코드일 경우 전체적으로 모니터링 가능해야한다. 그외는 자신의 기관에 해당하는 데이터 볼 수 있어야 한다. + String serviceType = rq.getServiceType(); + String userAuthByToken = jwtTokenUtil.getUserAuthByToken(); + String cptAuthCodeByToken = jwtTokenUtil.getCptAuthCodeByToken(); + if(!"SUPER".equals(userAuthByToken) && !"KAC".equals(cptAuthCodeByToken)){ + serviceType = cptAuthCodeByToken; + authCheck = false; + } List resultList = new ArrayList<>(); switch (rq.getCate()) { case "TIME": - resultList = cntrlQueryRepository.fltTopTimeStcs(rq.getDate(), rq.getServiceType(), authCheck, formatParam); + resultList = cntrlQueryRepository.fltTopTimeStcs(rq.getDate(), serviceType, authCheck, formatParam); break; case "DISTANCE": - resultList = cntrlQueryRepository.fltTopDistanceStcs(rq.getDate(), rq.getServiceType(), authCheck, formatParam); + resultList = cntrlQueryRepository.fltTopDistanceStcs(rq.getDate(), serviceType, authCheck, formatParam); break; case "FLT_COUNT": - resultList = cntrlQueryRepository.fltTopCountStcs(rq.getDate(), rq.getServiceType(), authCheck, formatParam); + resultList = cntrlQueryRepository.fltTopCountStcs(rq.getDate(), serviceType, authCheck, formatParam); break; default : @@ -424,7 +433,6 @@ public class MainStatisticsService { // 권한이 유저권한이 user면 true, user가 아닐 경우 false; boolean authCheck = jwtTokenUtil.getUserAuthByToken().equals("USER"); - // SUPER 권한일 경우와 KAC의 기관코드일 경우 전체적으로 모니터링 가능해야한다. 그외는 자신의 기관에 해당하는 데이터 볼 수 있어야 한다. String serviceType = rq.getServiceType(); String userAuthByToken = jwtTokenUtil.getUserAuthByToken();