From 3be1e7619bdda60d900523e995adb6701dcbcbde Mon Sep 17 00:00:00 2001 From: sanguu Date: Wed, 24 Aug 2022 18:12:14 +0900 Subject: [PATCH] =?UTF-8?q?=EB=B9=84=ED=96=89=EA=B3=84=ED=9A=8D=EC=84=9C(?= =?UTF-8?q?=EC=88=98=EC=A0=95)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 2 +- .../bas/flight/service/BasFlightService.java | 41 ++++++++++--------- 2 files changed, 23 insertions(+), 20 deletions(-) diff --git a/.gitignore b/.gitignore index 549e00a..5eac309 100644 --- a/.gitignore +++ b/.gitignore @@ -30,4 +30,4 @@ build/ !**/src/test/**/build/ ### VS Code ### -.vscode/ +.vscode/ \ No newline at end of file diff --git a/src/main/java/com/palnet/biz/api/bas/flight/service/BasFlightService.java b/src/main/java/com/palnet/biz/api/bas/flight/service/BasFlightService.java index a54b351..6e6c86c 100644 --- a/src/main/java/com/palnet/biz/api/bas/flight/service/BasFlightService.java +++ b/src/main/java/com/palnet/biz/api/bas/flight/service/BasFlightService.java @@ -85,7 +85,7 @@ public class BasFlightService { } return rs; } - + // 비행계획서 등록 public boolean createPlan(BasFlightPlanModel rq) { // 비행계획서 @@ -140,7 +140,6 @@ public class BasFlightService { arcrftEntity.setPlanSno(planSno); arcrftEntity.setCreateUserId(userId); arcrftEntity.setUpdateUserId(userId); - fltPlanArcrftRepository.save(arcrftEntity); } } @@ -163,8 +162,8 @@ public class BasFlightService { if (areaModelList != null && !areaModelList.isEmpty()) { List areaEntityList = fltPlanAreaRepository.findByPlanSnoOrderByPlanAreaSnoAsc(planSno); for (BasFlightPlanAreaModel areaModel : areaModelList) { -// FltPlanArea areaEntity = fltPlanAreaRepository.findById(areaModel.getPlanAreaSno()).orElse(null); - FltPlanArea areaEntity = areaEntityList.stream().filter(fltPlanArea -> fltPlanArea.getPlanAreaSno() == areaModel.getPlanAreaSno()).findFirst().orElse(null); + //FltPlanArea areaEntity = fltPlanAreaRepository.findById(areaModel.getPlanAreaSno()).orElse(null); + FltPlanArea areaEntity = areaEntityList.stream().filter(fltPlanArea -> fltPlanArea.getPlanAreaSno().equals(areaModel.getPlanAreaSno())).findFirst().orElse(null); if (areaEntity == null) { areaEntity = BasFlightMapper.mapper.modelToEntity(areaModel); areaEntity.setCreateUserId(userId); @@ -180,7 +179,7 @@ public class BasFlightService { Integer areaSno = areaModel.getPlanAreaSno(); List coordEntityList = fltPlanAreaCoordRepository.findByPlanAreaSnoOrderByPlanAreaCoordSnoAsc(areaSno); for (BasFlightPlanAreaCoordModel coordModel : coordsModelList) { - FltPlanAreaCoord coordEntity = coordEntityList.stream().filter(fltPlanAreaCoord -> fltPlanAreaCoord.getPlanAreaCoordSno() == coordModel.getPlanAreaCoordSno()).findFirst().orElse(null); + FltPlanAreaCoord coordEntity = coordEntityList.stream().filter(fltPlanAreaCoord -> fltPlanAreaCoord.getPlanAreaCoordSno().equals(coordModel.getPlanAreaCoordSno())).findFirst().orElse(null); if (coordEntity == null) { coordEntity = BasFlightMapper.mapper.modelToEntity(coordModel); coordEntity.setCreateUserId(userId); @@ -219,13 +218,16 @@ public class BasFlightService { if(pilotModelList != null && !pilotModelList.isEmpty()){ List pilotEntityList = fltPlanPilotRepository.findByPlanSnoOrderByPlanPilotSnoAsc(planSno); for(BasFlightPlanPilotModel pilotModel : pilotModelList){ - FltPlanPilot pilotEntity = pilotEntityList.stream().filter(fltPlanPilot -> fltPlanPilot.getPlanPilotSno() == pilotModel.getPlanPilotSno()).findFirst().orElse(null); - if(pilotEntity != null){ - BasFlightMapper.mapper.updateEntityByModel(pilotEntity, pilotModel); + FltPlanPilot pilotEntity = pilotEntityList.stream().filter(fltPlanPilot -> fltPlanPilot.getPlanPilotSno().equals(pilotModel.getPlanPilotSno())).findFirst().orElse(null); + if(pilotEntity == null){ + pilotEntity = BasFlightMapper.mapper.modelToEntity(pilotModel); pilotEntity.setUpdateUserId(userId); // pilotEntity.setCreateUserId(userId); - fltPlanPilotRepository.save(pilotEntity); + + }else { + BasFlightMapper.mapper.updateEntityByModel(pilotEntity, pilotModel); } + fltPlanPilotRepository.save(pilotEntity); } List deletePilotEntity = pilotEntityList.stream().filter(fltPlanPilot -> { for (BasFlightPlanPilotModel pilotModel : pilotModelList) { @@ -242,12 +244,14 @@ public class BasFlightService { if(arcrftModelList != null && !arcrftModelList.isEmpty()){ List arcrftEntityList = fltPlanArcrftRepository.findByPlanSnoOrderByPlanArcrftSnoAsc(planSno); for(BasFlightPlanArcrftModel arcrftModel : arcrftModelList){ - FltPlanArcrft arcrftEntity = arcrftEntityList.stream().filter(fltPlanArcrft -> fltPlanArcrft.getPlanArcrftSno() == arcrftModel.getPlanArcrftSno()).findFirst().orElse(null); - if(arcrftEntity != null){ - BasFlightMapper.mapper.updateEntityByModel(arcrftEntity, arcrftModel); + FltPlanArcrft arcrftEntity = arcrftEntityList.stream().filter(fltPlanArcrft -> fltPlanArcrft.getPlanArcrftSno().equals(arcrftModel.getPlanArcrftSno())).findFirst().orElse(null); + if(arcrftEntity == null){ + arcrftEntity = BasFlightMapper.mapper.modelToEntity(arcrftModel); arcrftEntity.setUpdateUserId(userId); - fltPlanArcrftRepository.save(arcrftEntity); + }else { + BasFlightMapper.mapper.updateEntityByModel(arcrftEntity, arcrftModel); } + fltPlanArcrftRepository.save(arcrftEntity); } List deleteArcrftEntity = arcrftEntityList.stream().filter(fltPlanArcrft -> { for (BasFlightPlanArcrftModel arcrftModel : arcrftModelList) { @@ -309,12 +313,11 @@ public class BasFlightService { for(BasFlightPlanAreaModel area : rq) { if("LINE".equals(area.getAreaType())) { - List convertCoordinates = areaUtils.convertCoordinates(area.getCoordList()); // 객체 타입 변환 - List transCoordList = areaUtils.transform(convertCoordinates, "EPSG:4326", "EPSG:5181"); - - List bufferList = areaUtils.buffer(transCoordList, area.getBufferZone()); // buffer 영역 생성 - List transBufferList = areaUtils.transform(bufferList, "EPSG:5181", "EPSG:4326"); // buffer 영역 좌표계 변환 - List bufferCoordList = areaUtils.convertModel(transBufferList); + List convertCoordinates = areaUtils.convertCoordinates(area.getCoordList()); + + List bufferList = areaUtils.buffer(convertCoordinates, area.getBufferZone()); // buffer 영역 생성 +// boolean overlaps = areaUtils.overlaps(bufferList); // buffer 영역 장애물 포함 여부 체크 + List bufferCoordList = areaUtils.convertModel(bufferList); area.setBufferCoordList(bufferCoordList); }