From 5e17c28bf4d0d3f834ec01fb6783371704f3f3c4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?qkr7828=28=EB=B0=95=EC=9E=AC=EC=9A=B0=29?= <박재우@DESKTOP-EF7ECBO> Date: Fri, 7 Oct 2022 15:09:16 +0900 Subject: [PATCH] =?UTF-8?q?slmt=20=EB=A1=9C=EC=A7=81=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../anls/smlt/service/AnlsSmltService.java | 51 +++++++++---------- 1 file changed, 25 insertions(+), 26 deletions(-) diff --git a/src/main/java/com/palnet/biz/api/anls/smlt/service/AnlsSmltService.java b/src/main/java/com/palnet/biz/api/anls/smlt/service/AnlsSmltService.java index 26d2f4c..db81b8d 100644 --- a/src/main/java/com/palnet/biz/api/anls/smlt/service/AnlsSmltService.java +++ b/src/main/java/com/palnet/biz/api/anls/smlt/service/AnlsSmltService.java @@ -64,27 +64,24 @@ public class AnlsSmltService { String appAuth = jwtTokenUtil.getUserAuthByToken(); List groupAuth = jwtTokenUtil.getGroupAuthByToken(); int cstmrSno = jwtTokenUtil.getCstmrSnoByToken(); - List groupAdminList = new ArrayList<>(); - for(JwtGroupModel list : groupAuth) { - if(list.getGroupAuthCd().equals("MASTER") || list.getGroupAuthCd().equals("LEADER")) { - groupAdminList.add(list); - } - } + List resultList = new ArrayList<>(); if(appAuth.equals("SUPER")||appAuth.equals("ADMIN")) { // App 권한이 수퍼 / 어드민일 경우 목록 전부 표출 resultList = query.listCntrlBas(rq); - } else if(groupAdminList.size()>0) { // App 권한은 user이지만 group 권한이 LEADER / MASTER인 그룹이 있는 경우 해당 그룹의 비행 이력 목록 표출 - for (JwtGroupModel list : groupAdminList) { - List result = query.cntrlBasAuthList(rq, list.getGroupId()); - if (result.size() > 0) { - resultList.addAll(result); - } - } - } + } - if (resultList == null || resultList.size() == 0) { /* App 권한이 유저이면서 group 권한도 모두 NORMAL인 ID인 경우 본인이 생성한 - 기체만 조회 */ + if(appAuth.equals("USER") || appAuth.equals("ROLE_USER")) { // App 권한은 user이지만 group 권한이 LEADER / MASTER인 그룹이 있는 경우 해당 그룹의 비행 이력 목록 표출 + for (JwtGroupModel list : groupAuth) { + if(list.getGroupAuthCd().equals("MASTER") || list.getGroupAuthCd().equals("LEADER")) { + List result = query.cntrlBasAuthList(rq, list.getGroupId()); + if (result.size() > 0) { + resultList.addAll(result); + } + } + } + } + if ( resultList.size() < 1) { /* App 권한이 유저이면서 group 권한도 모두 NORMAL인 ID인 경우 본인이 생성한 기체만 조회 */ List idntfList = comIdntBasRepository.findIdntfNumber(cstmrSno); if (idntfList.size() > 0) { for (ComIdntfBas list : idntfList) { @@ -105,18 +102,20 @@ public class AnlsSmltService { for (FltPlanPilot list : pilotResult) { resultList.addAll(query.cntrlBasNormalPlanList(rq, list.getPlanSno())); } + + Comparator comparator = (o1, o2) -> { + if (DateUtils.diffSecond(o1.getCntrlStDt(), o2.getCntrlStDt()) < 0) { + return 1; + } else if(DateUtils.diffSecond(o1.getCntrlStDt(), o2.getCntrlStDt()) > 0) { + return -1; + } + return 0; + }; - } - Comparator comparator = (o1, o2) -> { - if (DateUtils.diffSecond(o1.getCntrlStDt(), o2.getCntrlStDt()) < 0) { - return 1; - } else if(DateUtils.diffSecond(o1.getCntrlStDt(), o2.getCntrlStDt()) > 0) { - return -1; - } - return 0; - }; + Collections.sort(resultList, comparator); - Collections.sort(resultList, comparator); + } + return resultList; }