Browse Source

remove rabbit server and socket

feature/remove-rabbit
지대한 1 year ago
parent
commit
02e3fe5ca2
  1. 38
      src/main/java/com/palnet/biz/api/ctr/cntrl/controller/SocketReciverController.java
  2. 100
      src/main/java/com/palnet/biz/api/ctr/cntrl/service/SocketReciverService.java
  3. 1
      src/main/java/com/palnet/biz/config/WebSecurityConfig.java
  4. 2
      src/main/java/com/palnet/server/collection/ChannelCollection.java

38
src/main/java/com/palnet/biz/api/ctr/cntrl/controller/SocketReciverController.java

@ -0,0 +1,38 @@
package com.palnet.biz.api.ctr.cntrl.controller;
import com.palnet.biz.api.ctr.cntrl.service.SocketReciverService;
import com.palnet.comn.model.GPModel;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* packageName : com.palnet.biz.api.ctr.cntrl.controller
* fileName : SocketReciverController
* author : dhji
* date : 2023-08-29(029)
* description :
* ===========================================================
* DATE AUTHOR NOTE
* -----------------------------------------------------------
* 2023-08-29(029) dhji 최초 생성
*/
@Slf4j
@RequiredArgsConstructor
@RestController
@RequestMapping("/api/server")
public class SocketReciverController {
private final SocketReciverService socketReciverService;
@PostMapping("/receiver")
public ResponseEntity<?> receiver(@RequestBody GPModel model) {
System.out.println("socket message : " + model);
log.info("socket message : {}", model);
socketReciverService.insert(model);
return ResponseEntity.ok().build();
}
}

100
src/main/java/com/palnet/biz/api/ctr/cntrl/service/SocketReciverService.java

@ -0,0 +1,100 @@
package com.palnet.biz.api.ctr.cntrl.service;
import com.palnet.biz.api.comn.model.ControlGpsDataContext;
import com.palnet.biz.jpa.entity.*;
import com.palnet.biz.jpa.repository.com.ComArcrftBasRepository;
import com.palnet.biz.jpa.repository.com.ComIdntBasRepository;
import com.palnet.biz.jpa.repository.ctr.CtrCntrlBasRepository;
import com.palnet.biz.jpa.repository.ctr.CtrCntrlHstryRepository;
import com.palnet.biz.jpa.repository.flt.FltPlanCtrCntrlRelRepository;
import com.palnet.biz.jpa.repository.flt.FltPlanQueryRepository;
import com.palnet.biz.jpa.repository.pty.PtyDronQueryRepository;
import com.palnet.biz.jpa.service.ctr.CtrCntrlJpaService;
import com.palnet.comn.model.GPDatabaseModel;
import com.palnet.comn.model.GPModel;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
/**
* packageName : com.palnet.biz.api.ctr.cntrl.service
* fileName : SocketReciverService
* author : dhji
* date : 2023-08-29(029)
* description :
* ===========================================================
* DATE AUTHOR NOTE
* -----------------------------------------------------------
* 2023-08-29(029) dhji 최초 생성
*/
@Slf4j
@RequiredArgsConstructor
@Service
public class SocketReciverService {
private final CtrCntrlJpaService ctrCntrlJpaService;
private final PtyDronQueryRepository ptyDronQueryRepository;
private final ComArcrftBasRepository arcrftBasRepository;
private final ComIdntBasRepository idntBasRepository;
private final FltPlanQueryRepository fltPlanQueryRepository;
private final FltPlanCtrCntrlRelRepository ctrCntrlRelRepository;
@Transactional
public void insert(GPModel model) {
GPDatabaseModel dbModel = new GPDatabaseModel();
BeanUtils.copyProperties(model, dbModel);
if("01".equals(model.getTypeCd())) {
String prodNumber = ptyDronQueryRepository.findIdntfNumByProdNumber(model.getObjectId());
dbModel.setProdNumber(prodNumber);
// 비행 이력 생성
CtrCntrlBas ctrCntrlBas = ctrCntrlJpaService.insertCtrCntrlBas(dbModel);
// 비행 이력, 비행 계획서 mapping
if ("PA".equals(model.getObjectId().substring(0,2))) {
FltPlanCtrCntrlRel fltPlanCtrCntrlRel = new FltPlanCtrCntrlRel();
// 1. 식별 번호의 소유자 정보 저장.
ComIdntfBas idntfBas = idntBasRepository.findById(model.getObjectId()).orElse(null);
// 1-1. 식별 번호의 모델 정보 조회
ComArcrftBas arcrftBas = arcrftBasRepository.findById(idntfBas.getArcrftSno()).orElse(null);
if (idntfBas != null && arcrftBas != null) {
fltPlanCtrCntrlRel.setCntrlId(ctrCntrlBas.getCntrlId());
fltPlanCtrCntrlRel.setIdntfNum(ctrCntrlBas.getIdntfNum());
fltPlanCtrCntrlRel.setIdntfCstmrSno(idntfBas.getCstmrSno());
fltPlanCtrCntrlRel.setGroupId(arcrftBas.getGroupId());
}
// 2. 해당 되는 비행계획서 정보 저장.
List<FltPlanBas> planArcrft =
fltPlanQueryRepository.findByFlightPlanArcrft(ctrCntrlBas.getIdntfNum(), dbModel.getServerRcvDt());
if (!planArcrft.isEmpty()) {
for (FltPlanBas plan : planArcrft) {
fltPlanCtrCntrlRel.setPlanSno(plan.getPlanSno());
}
}
// 3. mapping 정보 주입.
if (!fltPlanCtrCntrlRel.getCntrlId().isEmpty()) {
ctrCntrlRelRepository.save(fltPlanCtrCntrlRel);
}
}
}
// Drone인 경우에만 history 생성
CtrCntrlHstry ctrCntrlHstry = ctrCntrlJpaService.insertCtrCntrlHstry(dbModel);
if("01".equals(model.getTypeCd()) || "99".equals(model.getTypeCd())) {
ctrCntrlJpaService.insertCtrCntrlHstryArea(dbModel, ctrCntrlHstry.getHstrySno());
}
}
}

1
src/main/java/com/palnet/biz/config/WebSecurityConfig.java

@ -38,6 +38,7 @@ public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
private final String[] PERMITTED_URL = {
"/api/acnt/**",
"/api/ctr/cntrl/id/**",
"/api/server/**",
/* swagger v2 */
"/v2/api-docs",
"/swagger-resources",

2
src/main/java/com/palnet/server/collection/ChannelCollection.java

@ -1,7 +1,5 @@
package com.palnet.server.collection;
import java.io.Serializable;
import io.netty.channel.Channel;
import io.netty.channel.group.ChannelGroup;
import io.netty.channel.group.DefaultChannelGroup;

Loading…
Cancel
Save