Browse Source

Merge pull request 'feature/main/drone-flight-statistics' (#6) from feature/main/drone-flight-statistics into develop

Reviewed-on: #6
pull/7/head
lkd9125 1 year ago
parent
commit
728095f32e
  1. 38
      pav-server/src/main/java/com/palnet/biz/api/main/dash/controller/MainDashController.java
  2. 25
      pav-server/src/main/java/com/palnet/biz/api/main/dash/service/MainDashService.java
  3. 53
      pav-server/src/main/java/com/palnet/biz/jpa/repository/ctr/CtrCntrlQueryRepository.java
  4. 2
      pav-server/src/main/java/com/palnet/biz/jpa/repository/flt/FltPlanQueryRepository.java

38
pav-server/src/main/java/com/palnet/biz/api/main/dash/controller/MainDashController.java

@ -13,6 +13,7 @@ import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.palnet.biz.api.comn.response.BasicResponse;
@ -164,7 +165,7 @@ public class MainDashController {
@ApiOperation(value = "김포공항, 비행실적 통계")
@Tag(name = "메인화면 컨트롤러", description = "메인화면 관련 API")
@ApiImplicitParam(name = "date",value = "날짜", dataTypeClass = String.class)
public ResponseEntity<? extends BasicResponse> kacDateStatistics(String date, @PathVariable String type){
public ResponseEntity<? extends BasicResponse> flightStatistics(String date, @PathVariable String type){
String[] formatParam = null;
@ -194,7 +195,7 @@ public class MainDashController {
@ApiOperation(value = "김포공항, 비행승인 통계")
@Tag(name = "메인화면 컨트롤러", description = "메인화면 관련 API")
@ApiImplicitParam(name = "date",value = "날짜", dataTypeClass = String.class)
public ResponseEntity<? extends BasicResponse> kacPlanAllowStatistics(String date ,@PathVariable String type){
public ResponseEntity<? extends BasicResponse> planAllowStatistics(String date ,@PathVariable String type){
String[] formatParam = null;
@ -209,7 +210,38 @@ public class MainDashController {
List<MainDashStcsModel> result = null;
try {
result = service.mainKacStcsPlanAllow(date,formatParam);
result = service.mainStcsPlanAllow(date,formatParam);
} catch (Exception e) {
log.error("IGNORE : {}", e);
return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR)
.body(new ErrorResponse("Server Error", "-1"));
}
return ResponseEntity.ok().body(new SuccessResponse<List<MainDashStcsModel>>(result));
}
@GetMapping("/stcs/drone-flight/date/{type}")
@ApiOperation(value = "김포공항, 드론별 비행 통계")
@Tag(name = "메인화면 컨트롤러", description = "메인화면 관련 API")
@ApiImplicitParam(name = "date",value = "날짜", dataTypeClass = String.class)
public ResponseEntity<? extends BasicResponse> droneFlightStatistics(String date, @RequestParam(required = true) String idntfNum, @PathVariable String type){
log.info("idntfNum -> {}", idntfNum);
String[] formatParam = null;
try {
if(date == null) date = "";
formatParam = service.paramCheck(date,type);
} catch (NumberFormatException e) {
return ResponseEntity.status(HttpStatus.OK)
.body(new ErrorResponse(RSErrorCode.ER_PARAM));
}
List<MainDashStcsModel> result = null;
try {
result = service.mainStcsDroneFlight(date,idntfNum,formatParam);
} catch (Exception e) {
log.error("IGNORE : {}", e);

25
pav-server/src/main/java/com/palnet/biz/api/main/dash/service/MainDashService.java

@ -104,7 +104,7 @@ public class MainDashService {
*/
public List<MainDashStcsModel> mainKacDashStcsDay(String date, String[] formatParam){
List<MainDashStcsModel> resultList = query.mainKacDashStcsDay(date, formatParam);
List<MainDashStcsModel> resultList = query.mainStcsFlight(date, null, formatParam);
return resultList;
}
@ -114,9 +114,23 @@ public class MainDashService {
* @param yyyymm
* @return
*/
public List<MainDashStcsModel> mainKacStcsPlanAllow(String date, String[] formatParam){
public List<MainDashStcsModel> mainStcsPlanAllow(String date, String[] formatParam){
List<MainDashStcsModel> resultList = fltPlanQueryRepository.mainKacStcsPlanAllow(date, formatParam);
List<MainDashStcsModel> resultList = fltPlanQueryRepository.mainStcsPlanAllow(date, formatParam);
return resultList;
}
/**
* 드론별 비행실적 리스트
* @param idntfNum
* @param date
* @param formatParam
* @return
*/
public List<MainDashStcsModel> mainStcsDroneFlight(String date, String idntfNum, String[] formatParam){
List<MainDashStcsModel> resultList = query.mainStcsFlight(date, idntfNum, formatParam);
return resultList;
}
@ -187,9 +201,4 @@ public class MainDashService {
return result;
}
}

53
pav-server/src/main/java/com/palnet/biz/jpa/repository/ctr/CtrCntrlQueryRepository.java

@ -1,5 +1,19 @@
package com.palnet.biz.jpa.repository.ctr;
import java.time.Duration;
import java.time.Instant;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cache.annotation.Cacheable;
import org.springframework.data.domain.PageImpl;
import org.springframework.data.domain.Pageable;
import org.springframework.stereotype.Repository;
import com.palnet.biz.api.acnt.jwt.model.JwtGroupModel;
import com.palnet.biz.api.acnt.jwt.utils.JwtTokenUtil;
import com.palnet.biz.api.anls.hstry.model.AnlsHstryDetailModel;
@ -13,7 +27,22 @@ import com.palnet.biz.api.ctr.cntrl.model.CtrCntrlEndModel;
import com.palnet.biz.api.ctr.cntrl.model.CtrCntrlGroupArcrftModel;
import com.palnet.biz.api.ctr.cntrl.model.CtrCntrlGroupModel;
import com.palnet.biz.api.main.dash.model.MainDashStcsModel;
import com.palnet.biz.jpa.entity.*;
import com.palnet.biz.jpa.entity.ComArcrftBas;
import com.palnet.biz.jpa.entity.ComIdntfBas;
import com.palnet.biz.jpa.entity.CtrCntrlHstry;
import com.palnet.biz.jpa.entity.CtrCntrlHstryArea;
import com.palnet.biz.jpa.entity.FltPlanArea;
import com.palnet.biz.jpa.entity.FltPlanBas;
import com.palnet.biz.jpa.entity.QComArcrftBas;
import com.palnet.biz.jpa.entity.QComIdntfBas;
import com.palnet.biz.jpa.entity.QCtrCntrlBas;
import com.palnet.biz.jpa.entity.QCtrCntrlHstry;
import com.palnet.biz.jpa.entity.QCtrCntrlHstryArea;
import com.palnet.biz.jpa.entity.QFltPlanArea;
import com.palnet.biz.jpa.entity.QFltPlanBas;
import com.palnet.biz.jpa.entity.QFltPlanCtrCntrlRel;
import com.palnet.biz.jpa.entity.QPtyCstmrGroup;
import com.palnet.biz.jpa.entity.QPtyGroupBas;
import com.palnet.comn.model.GPHistoryModel;
import com.palnet.comn.utils.DateUtils;
import com.palnet.comn.utils.InstantUtils;
@ -24,22 +53,9 @@ import com.querydsl.core.types.dsl.Expressions;
import com.querydsl.core.types.dsl.StringTemplate;
import com.querydsl.jpa.JPAExpressions;
import com.querydsl.jpa.impl.JPAQueryFactory;
import lombok.RequiredArgsConstructor;
import lombok.extern.log4j.Log4j2;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cache.annotation.Cacheable;
import org.springframework.data.domain.PageImpl;
import org.springframework.data.domain.Pageable;
import org.springframework.stereotype.Repository;
import java.text.SimpleDateFormat;
import java.time.Duration;
import java.time.Instant;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
@Log4j2
@Repository
@ -1672,11 +1688,11 @@ public List<AnlsHstryDetailModel> listCntrlHstry(String id){
}
/**
* 김포공항, 날짜별 통계 API
* 김포공항, 비행실적 통계 API
* @param yyyymm
* @return
*/
public List<MainDashStcsModel> mainKacDashStcsDay(String date, String[] formatParam){
public List<MainDashStcsModel> mainStcsFlight(String date, String idntfNum, String[] formatParam){
QCtrCntrlBas bas = QCtrCntrlBas.ctrCntrlBas;
StringTemplate formattedDate = Expressions.stringTemplate(
@ -1692,6 +1708,9 @@ public List<AnlsHstryDetailModel> listCntrlHstry(String id){
BooleanBuilder builder = new BooleanBuilder();
builder.and(bas.statusCd.eq("99"));
if(date != null && date.length() > 0) builder.and(formattedDate.eq(date));
if(idntfNum != null) builder.and(bas.idntfNum.eq(idntfNum));
log.info("builder -> {}", builder);
List<MainDashStcsModel> result = query
.select(

2
pav-server/src/main/java/com/palnet/biz/jpa/repository/flt/FltPlanQueryRepository.java

@ -672,7 +672,7 @@ public class FltPlanQueryRepository {
* @param date
* @return
*/
public List<MainDashStcsModel> mainKacStcsPlanAllow(String date, String[] formatParam){
public List<MainDashStcsModel> mainStcsPlanAllow(String date, String[] formatParam){
QFltPlanBas bas = QFltPlanBas.fltPlanBas;

Loading…
Cancel
Save