diff --git a/src/main/java/com/palnet/biz/api/ctr/cntrl/service/CtrCntrlService.java b/src/main/java/com/palnet/biz/api/ctr/cntrl/service/CtrCntrlService.java index 8cdfffd..7237165 100644 --- a/src/main/java/com/palnet/biz/api/ctr/cntrl/service/CtrCntrlService.java +++ b/src/main/java/com/palnet/biz/api/ctr/cntrl/service/CtrCntrlService.java @@ -244,27 +244,32 @@ public class CtrCntrlService { CtrCntrlBas control = cntrlBasRepository.findById(cntrlId).orElse(null); CtrCntrlHstry hisControl = cntrlHstryRepository.findFirstByCntrlIdOrderBySrvrRcvDtDesc(cntrlId).orElse(null); - - if (hisControl != null) { - List flightPlan = this.getFlightPlan(control.getIdntfNum()); - - if (flightPlan != null && !flightPlan.isEmpty()) { - CtrCntrlPlanContainsRq containsRq = new CtrCntrlPlanContainsRq(); - containsRq.setIdntfNum(control.getIdntfNum()); - containsRq.setLat(hisControl.getLat()); - containsRq.setLon(hisControl.getLon()); - containsRq.setPlanList(flightPlan); - - CtrCntrlPlanContainsRs ctrCntrlPlanContainsRs = this.checkPlanContains(containsRq); - model.setControlWarnCd(ctrCntrlPlanContainsRs.isWarning()); - } + List flightPlan = new ArrayList<>(); + if (hisControl != null && control != null) { + flightPlan = this.getFlightPlan(control.getIdntfNum()); + } else { + flightPlan = this.getFlightPlan(hisControl.getTrmnlId()); + } + if (flightPlan != null && !flightPlan.isEmpty()) { + CtrCntrlPlanContainsRq containsRq = new CtrCntrlPlanContainsRq(); + containsRq.setIdntfNum(control.getIdntfNum()); + containsRq.setLat(hisControl.getLat()); + containsRq.setLon(hisControl.getLon()); + containsRq.setPlanList(flightPlan); + + CtrCntrlPlanContainsRs ctrCntrlPlanContainsRs = this.checkPlanContains(containsRq); + model.setControlWarnCd(ctrCntrlPlanContainsRs.isWarning()); } if (model.isControlWarnCd()) { CtrCntrlWarnLog log = new CtrCntrlWarnLog(); - - log.setCntrlId(control.getCntrlId()); - log.setIdntfNum(control.getIdntfNum()); + if(control != null) { + log.setCntrlId(control.getCntrlId()); + log.setIdntfNum(control.getIdntfNum()); + } else { + log.setCntrlId(hisControl.getCntrlId()); + log.setIdntfNum(hisControl.getTrmnlId()); + } log.setOccurDt(hisControl.getSrvrRcvDt()); log.setLat(hisControl.getLat()); log.setLon(hisControl.getLon()); @@ -282,15 +287,20 @@ public class CtrCntrlService { model.setCreateDt(warnLog.getCreateDt()); model.setCreateUserId(warnLog.getCreateUserId()); } + if(control != null) { + model.setCntrlId(control.getCntrlId()); + model.setIdntfNum(control.getIdntfNum()); + model.setWarnCount(warnCount); + result.add(model); + return result; + } + model.setCntrlId(hisControl.getCntrlId()); + model.setIdntfNum(hisControl.getTrmnlId()); + model.setWarnCount(warnCount); - if(control.getCntrlId()!=null) model.setCntrlId(control.getCntrlId()); - if(control.getIdntfNum()!=null) model.setIdntfNum(control.getIdntfNum()); - if(warnCount!=null) model.setWarnCount(warnCount); - result.add(model); } - return result; } diff --git a/src/main/java/com/palnet/biz/message/consumer/MessageConsumer.java b/src/main/java/com/palnet/biz/message/consumer/MessageConsumer.java index b6dfc5f..afb9004 100644 --- a/src/main/java/com/palnet/biz/message/consumer/MessageConsumer.java +++ b/src/main/java/com/palnet/biz/message/consumer/MessageConsumer.java @@ -33,7 +33,7 @@ public class MessageConsumer { GPModel model = objectMapper.readValue(message, GPModel.class); messageService.insert(model); // GPS 정보 DB 동기화 처리 -// channel.queueDeclare(message, true, false, false, null); + channel.basicAck(tag, false); } catch (RuntimeException e) { channel.basicReject(tag, false);