|
|
|
@ -1457,6 +1457,24 @@ public class FltPlanQueryRepository {
|
|
|
|
|
if(serviceType != null && !(serviceType.equals(""))) builder.and(qFltPlanBas.serviceType.eq(serviceType)); |
|
|
|
|
if(authCheck) builder.and(qFltPlanBas.cstmrSno.eq(jwtTokenUtil.getCstmrSnoByToken())); |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 비행계획서 고유번호[planSno]가 있는지, |
|
|
|
|
* 각항별 타입[serviceType] 조건, |
|
|
|
|
* 회원고유번호[cstmrSno]조건인지 확인하여 조회하는 SQL 기능입니다. |
|
|
|
|
* |
|
|
|
|
* SELECT |
|
|
|
|
* FPCCR.IDNTF_NUM AS 'name', |
|
|
|
|
* COUNT(DISTINCT FPCCR.PLAN_SNO) AS count |
|
|
|
|
* FROM FLT_PLAN_CTR_CNTRL_REL FPCCR |
|
|
|
|
* LEFT OUTER JOIN FLT_PLAN_BAS FPB |
|
|
|
|
* ON FPCCR.PLAN_SNO = FPB.PLAN_SNO |
|
|
|
|
* WHERE FPCCR.PLAN_SNO IS NOT NULL |
|
|
|
|
* AND FPB.SERVICE_TYPE = #{serviceType} |
|
|
|
|
* AND FPB.CSTMR_SNO = #{cstmrSno} -- 권한이 유저인경우 |
|
|
|
|
* GROUP BY FPCCR.IDNTF_NUM |
|
|
|
|
* ORDER BY count DESC |
|
|
|
|
* LIMIT 1; |
|
|
|
|
*/ |
|
|
|
|
List<FlightStcsValueModel> queryResult = query |
|
|
|
|
.select( |
|
|
|
|
Projections.bean(FlightStcsValueModel.class, |
|
|
|
@ -1495,7 +1513,13 @@ public class FltPlanQueryRepository {
|
|
|
|
|
return result; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 비행실적 데이터, top 1 [일일] |
|
|
|
|
* @param idntfNum |
|
|
|
|
* @param authCheck |
|
|
|
|
* @param serviceType |
|
|
|
|
* @return |
|
|
|
|
*/ |
|
|
|
|
private Long getFltResultDay(String idntfNum, boolean authCheck, String serviceType){ |
|
|
|
|
|
|
|
|
|
QFltPlanCtrCntrlRel qFltPlanCtrCntrlRel = QFltPlanCtrCntrlRel.fltPlanCtrCntrlRel; |
|
|
|
@ -1511,6 +1535,24 @@ public class FltPlanQueryRepository {
|
|
|
|
|
builder.and(Expressions.stringTemplate("DATE_FORMAT({0}, {1})", qFltPlanBas.createDt, dateFormat) |
|
|
|
|
.eq(LocalDate.now().toString())); |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 비행계획서 고유번호[planSno]가 있는지, |
|
|
|
|
* 각항별 타입[serviceType] 조건, |
|
|
|
|
* 기체 식별번호[idntfNum] 조건, |
|
|
|
|
* 비행계획서 생성일시[createDt] 조건, |
|
|
|
|
* 회원고유번호[cstmrSno]조건인지 확인하여 조회하는 SQL 기능입니다. |
|
|
|
|
* |
|
|
|
|
* SELECT |
|
|
|
|
* COUNT(DISTINCT FPCCR.PLAN_SNO) AS count |
|
|
|
|
* FROM FLT_PLAN_CTR_CNTRL_REL FPCCR |
|
|
|
|
* LEFT OUTER JOIN FLT_PLAN_BAS FPB |
|
|
|
|
* ON FPCCR.PLAN_SNO = FPB.PLAN_SNO |
|
|
|
|
* WHERE FPCCR.PLAN_SNO IS NOT NULL |
|
|
|
|
* AND FPB.SERVICE_TYPE = #{serviceType} |
|
|
|
|
* AND FPB.CSTMR_SNO = #{cstmrSno} -- 권한이 유저인경우 |
|
|
|
|
* AND FPCCR.IDNTF_NUM = #{idntfNum} |
|
|
|
|
* AND DATE_FORMAT(CCB.CREATE_DT, #{dateForamt}) = NOW() |
|
|
|
|
*/ |
|
|
|
|
return query |
|
|
|
|
.select( |
|
|
|
|
qFltPlanCtrCntrlRel.planSno.countDistinct() // 결과 객체의 프로퍼티 이름을 지정
|
|
|
|
@ -1522,6 +1564,13 @@ public class FltPlanQueryRepository {
|
|
|
|
|
.fetchOne(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 비행실적 데이터, top 1 [월] |
|
|
|
|
* @param idntfNum |
|
|
|
|
* @param authCheck |
|
|
|
|
* @param serviceType |
|
|
|
|
* @return |
|
|
|
|
*/ |
|
|
|
|
private Long getFltResultMonth(String idntfNum, boolean authCheck, String serviceType){ |
|
|
|
|
QFltPlanCtrCntrlRel qFltPlanCtrCntrlRel = QFltPlanCtrCntrlRel.fltPlanCtrCntrlRel; |
|
|
|
|
QFltPlanBas qFltPlanBas = QFltPlanBas.fltPlanBas; |
|
|
|
@ -1534,6 +1583,25 @@ public class FltPlanQueryRepository {
|
|
|
|
|
if(serviceType != null && !(serviceType.equals(""))) builder.and(qFltPlanBas.serviceType.eq(serviceType)); |
|
|
|
|
if(authCheck) builder.and(qFltPlanBas.cstmrSno.eq(jwtTokenUtil.getCstmrSnoByToken())); |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 비행계획서 고유번호[planSno]가 있는지, |
|
|
|
|
* 각항별 타입[serviceType] 조건, |
|
|
|
|
* 기체 식별번호[idntfNum] 조건, |
|
|
|
|
* 비행계획서 생성일시[createDt] 조건, |
|
|
|
|
* 회원고유번호[cstmrSno]조건인지 확인하여 조회하는 SQL 기능입니다. |
|
|
|
|
* |
|
|
|
|
* SELECT |
|
|
|
|
* COUNT(DISTINCT FPCCR.PLAN_SNO) AS count |
|
|
|
|
* FROM FLT_PLAN_CTR_CNTRL_REL FPCCR |
|
|
|
|
* LEFT OUTER JOIN FLT_PLAN_BAS FPB |
|
|
|
|
* ON FPCCR.PLAN_SNO = FPB.PLAN_SNO |
|
|
|
|
* WHERE FPCCR.PLAN_SNO IS NOT NULL |
|
|
|
|
* AND FPB.SERVICE_TYPE = #{serviceType} |
|
|
|
|
* AND FPB.CSTMR_SNO = #{cstmrSno} -- 권한이 유저인경우 |
|
|
|
|
* AND FPCCR.IDNTF_NUM = #{idntfNum} |
|
|
|
|
* AND FPB.CREATE_DT >= '한달전 오늘' |
|
|
|
|
* AND FPB.CREATE_DT <= '오늘' |
|
|
|
|
*/ |
|
|
|
|
return query |
|
|
|
|
.select( |
|
|
|
|
qFltPlanCtrCntrlRel.planSno.countDistinct() // 결과 객체의 프로퍼티 이름을 지정
|
|
|
|
@ -1545,6 +1613,13 @@ public class FltPlanQueryRepository {
|
|
|
|
|
.fetchOne(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 비행실적 데이터, top 1 [년] |
|
|
|
|
* @param idntfNum |
|
|
|
|
* @param authCheck |
|
|
|
|
* @param serviceType |
|
|
|
|
* @return |
|
|
|
|
*/ |
|
|
|
|
private Long getFltResultYear(String idntfNum, boolean authCheck, String serviceType){ |
|
|
|
|
QFltPlanCtrCntrlRel qFltPlanCtrCntrlRel = QFltPlanCtrCntrlRel.fltPlanCtrCntrlRel; |
|
|
|
|
QFltPlanBas qFltPlanBas = QFltPlanBas.fltPlanBas; |
|
|
|
@ -1557,6 +1632,25 @@ public class FltPlanQueryRepository {
|
|
|
|
|
if(serviceType != null && !(serviceType.equals(""))) builder.and(qFltPlanBas.serviceType.eq(serviceType)); |
|
|
|
|
if(authCheck) builder.and(qFltPlanBas.cstmrSno.eq(jwtTokenUtil.getCstmrSnoByToken())); |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 비행계획서 고유번호[planSno]가 있는지, |
|
|
|
|
* 각항별 타입[serviceType] 조건, |
|
|
|
|
* 기체 식별번호[idntfNum] 조건, |
|
|
|
|
* 비행계획서 생성일시[createDt] 조건, |
|
|
|
|
* 회원고유번호[cstmrSno]조건인지 확인하여 조회하는 SQL 기능입니다. |
|
|
|
|
* |
|
|
|
|
* SELECT |
|
|
|
|
* COUNT(DISTINCT FPCCR.PLAN_SNO) AS count |
|
|
|
|
* FROM FLT_PLAN_CTR_CNTRL_REL FPCCR |
|
|
|
|
* LEFT OUTER JOIN FLT_PLAN_BAS FPB |
|
|
|
|
* ON FPCCR.PLAN_SNO = FPB.PLAN_SNO |
|
|
|
|
* WHERE FPCCR.PLAN_SNO IS NOT NULL |
|
|
|
|
* AND FPB.SERVICE_TYPE = #{serviceType} |
|
|
|
|
* AND FPB.CSTMR_SNO = #{cstmrSno} -- 권한이 유저인경우 |
|
|
|
|
* AND FPCCR.IDNTF_NUM = #{idntfNum} |
|
|
|
|
* AND FPB.CREATE_DT >= '일년전 오늘' |
|
|
|
|
* AND FPB.CREATE_DT <= '오늘' |
|
|
|
|
*/ |
|
|
|
|
return query |
|
|
|
|
.select( |
|
|
|
|
qFltPlanCtrCntrlRel.planSno.countDistinct() // 결과 객체의 프로퍼티 이름을 지정
|
|
|
|
@ -1583,6 +1677,21 @@ public class FltPlanQueryRepository {
|
|
|
|
|
if(serviceType != null && !(serviceType.equals(""))) builder.and(qFltPlanBas.serviceType.eq(serviceType)); |
|
|
|
|
if(authCheck) builder.and(qFltPlanBas.cstmrSno.eq(jwtTokenUtil.getCstmrSnoByToken())); |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 각항별 타입[serviceType] 조건, |
|
|
|
|
* 회원고유번호[cstmrSno]조건인지 확인하여 조회하는 SQL 입니다. |
|
|
|
|
* |
|
|
|
|
* SELECT |
|
|
|
|
* FPA.IDNTF_NUM |
|
|
|
|
* FROM FLT_PLAN_ARCRFT FPA |
|
|
|
|
* LEFT OUTER JOIN FLT_PLAN_BAS FPB |
|
|
|
|
* ON FPB.PLAN_SNO = FPA.PLAN_SNO |
|
|
|
|
* WHERE FPB.SERVICE_TYPE = #{serviceType} |
|
|
|
|
* AND FPB.CSTMR_SNO = #{cstmrSno} -- 권한이 유저인경우 |
|
|
|
|
* GROUP BY FPA.IDNTF_NUM |
|
|
|
|
* ORDER BY COUNT(FPA.PLAN_SNO) DESC |
|
|
|
|
* LIMIT 1 |
|
|
|
|
*/ |
|
|
|
|
List<FlightStcsValueModel> queryResult = query |
|
|
|
|
.select( |
|
|
|
|
Projections.bean(FlightStcsValueModel.class, |
|
|
|
@ -1590,6 +1699,7 @@ public class FltPlanQueryRepository {
|
|
|
|
|
) |
|
|
|
|
) |
|
|
|
|
.from(qFltPlanArcrft) |
|
|
|
|
.where(builder) |
|
|
|
|
.leftJoin(qFltPlanBas) |
|
|
|
|
.on(qFltPlanArcrft.planSno.eq(qFltPlanBas.planSno)) |
|
|
|
|
.groupBy(qFltPlanArcrft.idntfNum) |
|
|
|
@ -1620,6 +1730,13 @@ public class FltPlanQueryRepository {
|
|
|
|
|
return result; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 비행계획에 많이 기용된 기체 데이터, top 1[일일] |
|
|
|
|
* @param idntfNum |
|
|
|
|
* @param authCheck |
|
|
|
|
* @param serviceType |
|
|
|
|
* @return |
|
|
|
|
*/ |
|
|
|
|
private Long getFltPlanDay(String idntfNum, boolean authCheck, String serviceType){ |
|
|
|
|
QFltPlanArcrft bas = QFltPlanArcrft.fltPlanArcrft; |
|
|
|
|
QFltPlanBas qFltPlanBas = QFltPlanBas.fltPlanBas; |
|
|
|
@ -1633,6 +1750,21 @@ public class FltPlanQueryRepository {
|
|
|
|
|
builder.and(Expressions.stringTemplate("DATE_FORMAT({0}, {1})", bas.createDt, dateFormat) |
|
|
|
|
.eq(LocalDate.now().toString())); |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 생성일시[createDt] 조건, |
|
|
|
|
* 각항별 타입[serviceType] 조건, |
|
|
|
|
* 회원고유번호[cstmrSno]조건인지 확인하여 조회하는 SQL 입니다. |
|
|
|
|
* |
|
|
|
|
* SELECT |
|
|
|
|
* COUNT(FPA.PLAN_SNO) |
|
|
|
|
* FROM FLT_PLAN_ARCRFT FPA |
|
|
|
|
* LEFT OUTER JOIN FLT_PLAN_BAS FPB |
|
|
|
|
* ON FPB.PLAN_SNO = FPA.PLAN_SNO |
|
|
|
|
* WHERE FPB.SERVICE_TYPE = #{serviceType} |
|
|
|
|
* AND FPB.CSTMR_SNO = #{cstmrSno} -- 권한이 유저인경우 |
|
|
|
|
* AND FPA.IDNTF_NUM = #{idntfNum} |
|
|
|
|
* AND DATE_FORMAT(FPA.CREATE_DT, #{dateForamt}) = NOW() |
|
|
|
|
*/ |
|
|
|
|
return query |
|
|
|
|
.select( |
|
|
|
|
bas.planSno.count() // 결과 객체의 프로퍼티 이름을 지정
|
|
|
|
@ -1644,6 +1776,13 @@ public class FltPlanQueryRepository {
|
|
|
|
|
.fetchOne(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 비행계획에 많이 기용된 기체 데이터, top 1[월] |
|
|
|
|
* @param idntfNum |
|
|
|
|
* @param authCheck |
|
|
|
|
* @param serviceType |
|
|
|
|
* @return |
|
|
|
|
*/ |
|
|
|
|
private Long getFltPlanMonth(String idntfNum, boolean authCheck, String serviceType){ |
|
|
|
|
QFltPlanArcrft bas = QFltPlanArcrft.fltPlanArcrft; |
|
|
|
|
QFltPlanBas qFltPlanBas = QFltPlanBas.fltPlanBas; |
|
|
|
@ -1655,6 +1794,21 @@ public class FltPlanQueryRepository {
|
|
|
|
|
if(serviceType != null && !(serviceType.equals(""))) builder.and(qFltPlanBas.serviceType.eq(serviceType)); |
|
|
|
|
if(authCheck) builder.and(qFltPlanBas.cstmrSno.eq(jwtTokenUtil.getCstmrSnoByToken())); |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 생성일시[createDt] 조건, |
|
|
|
|
* 각항별 타입[serviceType] 조건, |
|
|
|
|
* 회원고유번호[cstmrSno]조건인지 확인하여 조회하는 SQL 입니다. |
|
|
|
|
* |
|
|
|
|
* SELECT |
|
|
|
|
* COUNT(FPA.PLAN_SNO) |
|
|
|
|
* FROM FLT_PLAN_ARCRFT FPA |
|
|
|
|
* LEFT OUTER JOIN FLT_PLAN_BAS FPB |
|
|
|
|
* ON FPB.PLAN_SNO = FPA.PLAN_SNO |
|
|
|
|
* WHERE FPB.SERVICE_TYPE = #{serviceType} |
|
|
|
|
* AND FPB.CSTMR_SNO = #{cstmrSno} -- 권한이 유저인경우 |
|
|
|
|
* AND FPA.CREATE_DT >= '한달전 오늘' |
|
|
|
|
* AND FPA.CREATE_DT <= '오늘' |
|
|
|
|
*/ |
|
|
|
|
return query |
|
|
|
|
.select( |
|
|
|
|
bas.planSno.count() // 결과 객체의 프로퍼티 이름을 지정
|
|
|
|
@ -1666,6 +1820,13 @@ public class FltPlanQueryRepository {
|
|
|
|
|
.fetchOne(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 비행계획에 많이 기용된 기체 데이터, top 1[년] |
|
|
|
|
* @param idntfNum |
|
|
|
|
* @param authCheck |
|
|
|
|
* @param serviceType |
|
|
|
|
* @return |
|
|
|
|
*/ |
|
|
|
|
private Long getFltPlanYear(String idntfNum, boolean authCheck, String serviceType){ |
|
|
|
|
QFltPlanArcrft bas = QFltPlanArcrft.fltPlanArcrft; |
|
|
|
|
QFltPlanBas qFltPlanBas = QFltPlanBas.fltPlanBas; |
|
|
|
@ -1677,6 +1838,21 @@ public class FltPlanQueryRepository {
|
|
|
|
|
if(serviceType != null && !(serviceType.equals(""))) builder.and(qFltPlanBas.serviceType.eq(serviceType)); |
|
|
|
|
if(authCheck) builder.and(qFltPlanBas.cstmrSno.eq(jwtTokenUtil.getCstmrSnoByToken())); |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 생성일시[createDt] 조건, |
|
|
|
|
* 각항별 타입[serviceType] 조건, |
|
|
|
|
* 회원고유번호[cstmrSno]조건인지 확인하여 조회하는 SQL 입니다. |
|
|
|
|
* |
|
|
|
|
* SELECT |
|
|
|
|
* COUNT(FPA.PLAN_SNO) |
|
|
|
|
* FROM FLT_PLAN_ARCRFT FPA |
|
|
|
|
* LEFT OUTER JOIN FLT_PLAN_BAS FPB |
|
|
|
|
* ON FPB.PLAN_SNO = FPA.PLAN_SNO |
|
|
|
|
* WHERE FPB.SERVICE_TYPE = #{serviceType} |
|
|
|
|
* AND FPB.CSTMR_SNO = #{cstmrSno} -- 권한이 유저인경우 |
|
|
|
|
* AND FPA.CREATE_DT >= '일년전 오늘' |
|
|
|
|
* AND FPA.CREATE_DT <= '오늘' |
|
|
|
|
*/ |
|
|
|
|
return query |
|
|
|
|
.select( |
|
|
|
|
bas.planSno.count() |
|
|
|
@ -1706,7 +1882,22 @@ public class FltPlanQueryRepository {
|
|
|
|
|
if(serviceType != null && !(serviceType.equals(""))) builder.and(qFltPlanBas.serviceType.eq(serviceType)); |
|
|
|
|
if(authCheck) builder.and(qFltPlanBas.cstmrSno.eq(jwtTokenUtil.getCstmrSnoByToken())); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 각항별 타입[serviceType] 조건, |
|
|
|
|
* 회원고유번호[cstmrSno]조건, |
|
|
|
|
* 승인여부[aprvlYn] 값이 'Y' 데이터를 조회하는 SQL 입니다. |
|
|
|
|
* |
|
|
|
|
* SELECT |
|
|
|
|
* FPA.IDNTF_NUM |
|
|
|
|
* FROM FLT_PLAN_ARCRFT FPA |
|
|
|
|
* LEFT OUTER JOIN FLT_PLAN_BAS FPB |
|
|
|
|
* ON FPB.PLAN_SNO = FPB.PLAN_SNO |
|
|
|
|
* WHERE FPB.SERVICE_TYPE = #{serviceType} |
|
|
|
|
* AND FPB.CSTMR_SNO = #{cstmrSno} -- 권한이 유저인경우 |
|
|
|
|
* AND FPB.APRVL_YN = 'Y' |
|
|
|
|
* GROUP BY FPA.IDNTF_NUM |
|
|
|
|
* ORDER BY COUNT(FPA.PLAN_SNO) DESC |
|
|
|
|
*/ |
|
|
|
|
List<FlightStcsValueModel> queryResult = query |
|
|
|
|
.select( |
|
|
|
|
Projections.bean(FlightStcsValueModel.class, |
|
|
|
@ -1744,6 +1935,13 @@ public class FltPlanQueryRepository {
|
|
|
|
|
return result; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 비행승인 많은 기체 데이터, top 1 [일일] |
|
|
|
|
* @param idntfNum |
|
|
|
|
* @param authCheck |
|
|
|
|
* @param serviceType |
|
|
|
|
* @return |
|
|
|
|
*/ |
|
|
|
|
private Long getFltPlanAprvnDay(String idntfNum, boolean authCheck, String serviceType){ |
|
|
|
|
QFltPlanArcrft qFltPlanArcrft = QFltPlanArcrft.fltPlanArcrft; |
|
|
|
|
QFltPlanBas qFltPlanBas = QFltPlanBas.fltPlanBas; |
|
|
|
@ -1758,6 +1956,23 @@ public class FltPlanQueryRepository {
|
|
|
|
|
builder.and(Expressions.stringTemplate("DATE_FORMAT({0}, {1})", qFltPlanBas.createDt, dateFormat) |
|
|
|
|
.eq(LocalDate.now().toString())); |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 각항별 타입[serviceType] 조건, |
|
|
|
|
* 회원고유번호[cstmrSno]조건, |
|
|
|
|
* 승인여부[aprvlYn] 값이 'Y' 인지, |
|
|
|
|
* 비행계획서 생성일시[createDt] 값 조건이지 확인하여 조회하는 SQL 입니다. |
|
|
|
|
* |
|
|
|
|
* SELECT |
|
|
|
|
* COUNT(FPA.PLAN_SNO ) |
|
|
|
|
* FROM FLT_PLAN_ARCRFT FPA |
|
|
|
|
* LEFT OUTER JOIN FLT_PLAN_BAS FPB |
|
|
|
|
* ON FPB.PLAN_SNO = FPB.PLAN_SNO |
|
|
|
|
* WHERE FPB.SERVICE_TYPE = #{serviceType} |
|
|
|
|
* AND FPB.CSTMR_SNO = #{cstmrSno} -- 권한이 유저인경우 |
|
|
|
|
* AND FPB.APRVL_YN = 'Y' |
|
|
|
|
* AND FPA.IDNTF_NUM = #{idntfNum} |
|
|
|
|
* AND DATE_FORMAT(FPB.CREATE_DT, #{dateForamt}) = NOW () |
|
|
|
|
*/ |
|
|
|
|
return query |
|
|
|
|
.select( |
|
|
|
|
qFltPlanArcrft.planSno.count() // 결과 객체의 프로퍼티 이름을 지정
|
|
|
|
@ -1769,6 +1984,13 @@ public class FltPlanQueryRepository {
|
|
|
|
|
.fetchOne(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 비행승인 많은 기체 데이터, top 1 [월] |
|
|
|
|
* @param idntfNum |
|
|
|
|
* @param authCheck |
|
|
|
|
* @param serviceType |
|
|
|
|
* @return |
|
|
|
|
*/ |
|
|
|
|
private Long getFltPlanAprvnMonth(String idntfNum, boolean authCheck, String serviceType){ |
|
|
|
|
|
|
|
|
|
QFltPlanArcrft qFltPlanArcrft = QFltPlanArcrft.fltPlanArcrft; |
|
|
|
@ -1782,6 +2004,24 @@ public class FltPlanQueryRepository {
|
|
|
|
|
if(serviceType != null && !(serviceType.equals(""))) builder.and(qFltPlanBas.serviceType.eq(serviceType)); |
|
|
|
|
if(authCheck) builder.and(qFltPlanBas.cstmrSno.eq(jwtTokenUtil.getCstmrSnoByToken())); |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 각항별 타입[serviceType] 조건, |
|
|
|
|
* 회원고유번호[cstmrSno]조건, |
|
|
|
|
* 승인여부[aprvlYn] 값이 'Y' 인지, |
|
|
|
|
* 비행계획서 생성일시[createDt] 값 조건이지 확인하여 조회하는 SQL 입니다. |
|
|
|
|
* |
|
|
|
|
* SELECT |
|
|
|
|
* COUNT(FPA.PLAN_SNO ) |
|
|
|
|
* FROM FLT_PLAN_ARCRFT FPA |
|
|
|
|
* LEFT OUTER JOIN FLT_PLAN_BAS FPB |
|
|
|
|
* ON FPB.PLAN_SNO = FPB.PLAN_SNO |
|
|
|
|
* WHERE FPB.SERVICE_TYPE = #{serviceType} |
|
|
|
|
* AND FPB.CSTMR_SNO = #{cstmrSno} -- 권한이 유저인경우 |
|
|
|
|
* AND FPB.APRVL_YN = 'Y' |
|
|
|
|
* AND FPA.IDNTF_NUM = #{idntfNum} |
|
|
|
|
* AND FPB.CREATE_DT >= '한달전 오늘' |
|
|
|
|
* AND FPB.CREATE_DT <= '오늘' |
|
|
|
|
*/ |
|
|
|
|
return query |
|
|
|
|
.select( |
|
|
|
|
qFltPlanArcrft.planSno.count() // 결과 객체의 프로퍼티 이름을 지정
|
|
|
|
@ -1793,6 +2033,13 @@ public class FltPlanQueryRepository {
|
|
|
|
|
.fetchOne(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 비행승인 많은 기체 데이터, top 1 [년] |
|
|
|
|
* @param idntfNum |
|
|
|
|
* @param authCheck |
|
|
|
|
* @param serviceType |
|
|
|
|
* @return |
|
|
|
|
*/ |
|
|
|
|
private Long getFltPlanAprvnYear(String idntfNum, boolean authCheck, String serviceType){ |
|
|
|
|
QFltPlanArcrft qFltPlanArcrft = QFltPlanArcrft.fltPlanArcrft; |
|
|
|
|
QFltPlanBas qFltPlanBas = QFltPlanBas.fltPlanBas; |
|
|
|
@ -1805,6 +2052,24 @@ public class FltPlanQueryRepository {
|
|
|
|
|
if(serviceType != null && !(serviceType.equals(""))) builder.and(qFltPlanBas.serviceType.eq(serviceType)); |
|
|
|
|
if(authCheck) builder.and(qFltPlanBas.cstmrSno.eq(jwtTokenUtil.getCstmrSnoByToken())); |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 각항별 타입[serviceType] 조건, |
|
|
|
|
* 회원고유번호[cstmrSno]조건, |
|
|
|
|
* 승인여부[aprvlYn] 값이 'Y' 인지, |
|
|
|
|
* 비행계획서 생성일시[createDt] 값 조건이지 확인하여 조회하는 SQL 입니다. |
|
|
|
|
* |
|
|
|
|
* SELECT |
|
|
|
|
* COUNT(FPA.PLAN_SNO ) |
|
|
|
|
* FROM FLT_PLAN_ARCRFT FPA |
|
|
|
|
* LEFT OUTER JOIN FLT_PLAN_BAS FPB |
|
|
|
|
* ON FPB.PLAN_SNO = FPB.PLAN_SNO |
|
|
|
|
* WHERE FPB.SERVICE_TYPE = #{serviceType} |
|
|
|
|
* AND FPB.CSTMR_SNO = #{cstmrSno} -- 권한이 유저인경우 |
|
|
|
|
* AND FPB.APRVL_YN = 'Y' |
|
|
|
|
* AND FPA.IDNTF_NUM = #{idntfNum} |
|
|
|
|
* AND FPB.CREATE_DT >= '일년전 오늘' |
|
|
|
|
* AND FPB.CREATE_DT <= '오늘' |
|
|
|
|
*/ |
|
|
|
|
return query |
|
|
|
|
.select( |
|
|
|
|
qFltPlanArcrft.planSno.count() // 결과 객체의 프로퍼티 이름을 지정
|
|
|
|
@ -1843,6 +2108,22 @@ public class FltPlanQueryRepository {
|
|
|
|
|
if(serviceType != null && !(serviceType.equals(""))) builder.and(qFltPlanBas.serviceType.eq(serviceType)); |
|
|
|
|
if(authCheck) builder.and(qFltPlanBas.cstmrSno.eq(jwtTokenUtil.getCstmrSnoByToken())); |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 비행계획서 생성일시[createDt] 조건, |
|
|
|
|
* 각항별 타입[serviceType] 조건, |
|
|
|
|
* 회원고유번호[cstmrSno]조건과 맞는지 확인하여 조회하는 SQL 입니다. |
|
|
|
|
* |
|
|
|
|
* SELECT |
|
|
|
|
* DATE_FORMAT(FPB.CREATE_DT, #{formatParam[1}) AS 'name', |
|
|
|
|
* COUNT(DISTINCT FPCCR.PLAN_SNO) AS 'value' |
|
|
|
|
* FROM FLT_PLAN_CTR_CNTRL_REL FPCCR |
|
|
|
|
* LEFT OUTER JOIN FLT_PLAN_BAS FPB |
|
|
|
|
* ON FPCCR.PLAN_SNO = FPB.PLAN_SNO |
|
|
|
|
* WHERE DATE_FORMAT(CCWL.CREATE_DT, #{formatParam[0}) |
|
|
|
|
* AND FPB.SERVICE_TYPE = #{serviceType} |
|
|
|
|
* AND FPB.CSTMR_SNO = #{cstmrSno} -- 권한이 유저인경우 |
|
|
|
|
* GROUP BY DATE_FORMAT(FPB.CREATE_DT, #{formatParam[1}) |
|
|
|
|
*/ |
|
|
|
|
List<FlightStcsValueModel> result = query |
|
|
|
|
.select( |
|
|
|
|
Projections.bean( |
|
|
|
@ -1894,6 +2175,20 @@ public class FltPlanQueryRepository {
|
|
|
|
|
if(serviceType != null && !(serviceType.equals(""))) builder.and(qFltPlanBas.serviceType.eq(serviceType)); |
|
|
|
|
if(authCheck) builder.and(qFltPlanBas.cstmrSno.eq(jwtTokenUtil.getCstmrSnoByToken())); |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 비행계획서 생성일시[createDt] 조건, |
|
|
|
|
* 각항별 타입[serviceType] 조건, |
|
|
|
|
* 회원고유번호[cstmrSno]조건과 맞는지 확인하여 조회하는 SQL 입니다. |
|
|
|
|
* |
|
|
|
|
* SELECT |
|
|
|
|
* DATE_FORMAT(FPB.CREATE_DT, #{formatParam[1}) AS 'name', |
|
|
|
|
* COUNT(FPB.PLAN_SNO) AS 'value' |
|
|
|
|
* FROM FLT_PLAN_BAS FPB |
|
|
|
|
* WHERE DATE_FORMAT(CCWL.CREATE_DT, #{formatParam[0}) |
|
|
|
|
* AND FPB.SERVICE_TYPE = #{serviceType} |
|
|
|
|
* AND FPB.CSTMR_SNO = #{cstmrSno} -- 권한이 유저인경우 |
|
|
|
|
* GROUP BY DATE_FORMAT(FPB.CREATE_DT, #{formatParam[1}) |
|
|
|
|
*/ |
|
|
|
|
List<FlightStcsValueModel> result = query |
|
|
|
|
.select( |
|
|
|
|
Projections.bean( |
|
|
|
@ -1946,6 +2241,22 @@ public class FltPlanQueryRepository {
|
|
|
|
|
if(serviceType != null && !(serviceType.equals(""))) builder.and(qFltPlanBas.serviceType.eq(serviceType)); |
|
|
|
|
if(authCheck) builder.and(qFltPlanBas.cstmrSno.eq(jwtTokenUtil.getCstmrSnoByToken())); |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 승인여부가 'Y'인지, |
|
|
|
|
* 비행계획서 생성일시[createDt] 조건, |
|
|
|
|
* 각항별 타입[serviceType] 조건, |
|
|
|
|
* 회원고유번호[cstmrSno]조건과 맞는지 확인하여 조회하는 SQL 입니다. |
|
|
|
|
* |
|
|
|
|
* SELECT |
|
|
|
|
* DATE_FORMAT(FPB.CREATE_DT, #{formatParam[1}) AS 'name', |
|
|
|
|
* COUNT(FPB.PLAN_SNO) AS 'value' |
|
|
|
|
* FROM FLT_PLAN_BAS FPB |
|
|
|
|
* WHERE DATE_FORMAT(CCWL.CREATE_DT, #{formatParam[0}) |
|
|
|
|
* AND FPB.APRVL_YN = 'Y' |
|
|
|
|
* AND FPB.SERVICE_TYPE = #{serviceType} |
|
|
|
|
* AND FPB.CSTMR_SNO = #{cstmrSno} -- 권한이 유저인경우 |
|
|
|
|
* GROUP BY DATE_FORMAT(FPB.CREATE_DT, #{formatParam[1}) |
|
|
|
|
*/ |
|
|
|
|
List<FlightStcsValueModel> result = query |
|
|
|
|
.select( |
|
|
|
|
Projections.bean( |
|
|
|
@ -1992,6 +2303,24 @@ public class FltPlanQueryRepository {
|
|
|
|
|
if(serviceType != null && !(serviceType.equals(""))) builder.and(qFltPlanBas.serviceType.eq(serviceType)); |
|
|
|
|
if(authCheck) builder.and(qFltPlanBas.cstmrSno.eq(jwtTokenUtil.getCstmrSnoByToken())); |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 비행계획서 생성일시[createDt] 조건, |
|
|
|
|
* 각항별 타입[serviceType] 조건, |
|
|
|
|
* 회원고유번호[cstmrSno]조건과 맞는지 확인하여 조회하는 SQL 입니다. |
|
|
|
|
* |
|
|
|
|
* SELECT |
|
|
|
|
* FPCCR.IDNTF_NUM AS 'name', |
|
|
|
|
* COUNT(DISTINCT FPCCR.PLAN_SNO) AS 'value' |
|
|
|
|
* FROM FLT_PLAN_CTR_CNTRL_REL FPCCR |
|
|
|
|
* LEFT OUTER JOIN FLT_PLAN_BAS FPB |
|
|
|
|
* ON FPCCR.PLAN_SNO = FPB.PLAN_SNO |
|
|
|
|
* WHERE DATE_FORMAT(CCWL.CREATE_DT, #{formatParam[0}) |
|
|
|
|
* AND FPB.SERVICE_TYPE = #{serviceType} |
|
|
|
|
* AND FPB.CSTMR_SNO = #{cstmrSno} -- 권한이 유저인경우 |
|
|
|
|
* GROUP BY FPCCR.IDNTF_NUM |
|
|
|
|
* ORDER BY COUNT(DISTINCT FPCCR.PLAN_SNO) DESC |
|
|
|
|
* LIMIT 5 |
|
|
|
|
*/ |
|
|
|
|
List<FlightStcsValueModel> result = query |
|
|
|
|
.select( |
|
|
|
|
Projections.bean(FlightStcsValueModel.class, |
|
|
|
@ -2041,6 +2370,24 @@ public class FltPlanQueryRepository {
|
|
|
|
|
if(serviceType != null && !(serviceType.equals(""))) builder.and(qFltPlanBas.serviceType.eq(serviceType)); |
|
|
|
|
if(authCheck) builder.and(qFltPlanBas.cstmrSno.eq(jwtTokenUtil.getCstmrSnoByToken())); |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 비행계획서 생성일시[createDt] 조건, |
|
|
|
|
* 각항별 타입[serviceType] 조건, |
|
|
|
|
* 회원고유번호[cstmrSno]조건과 맞는지 확인하여 조회하는 SQL 입니다. |
|
|
|
|
* |
|
|
|
|
* SELECT |
|
|
|
|
* FPA.IDNTF_NUM AS 'name', |
|
|
|
|
* COUNT(DISTINCT FPA.PLAN_SNO) AS 'value' |
|
|
|
|
* FROM FLT_PLAN_BAS FPB |
|
|
|
|
* LEFT OUTER JOIN FLT_PLAN_ARCRFT FPA |
|
|
|
|
* ON FPA.PLAN_SNO = FPB.PLAN_SNO |
|
|
|
|
* WHERE DATE_FORMAT(CCWL.CREATE_DT, #{formatParam[0}) |
|
|
|
|
* AND FPB.SERVICE_TYPE = #{serviceType} |
|
|
|
|
* AND FPB.CSTMR_SNO = #{cstmrSno} -- 권한이 유저인경우 |
|
|
|
|
* GROUP BY FPA.IDNTF_NUM |
|
|
|
|
* ORDER BY COUNT(DISTINCT FPA.PLAN_SNO) DESC |
|
|
|
|
* LIMIT 5 |
|
|
|
|
*/ |
|
|
|
|
List<FlightStcsValueModel> result = query |
|
|
|
|
.select( |
|
|
|
|
Projections.bean(FlightStcsValueModel.class, |
|
|
|
@ -2091,6 +2438,26 @@ public class FltPlanQueryRepository {
|
|
|
|
|
if(authCheck) builder.and(qFltPlanBas.cstmrSno.eq(jwtTokenUtil.getCstmrSnoByToken())); |
|
|
|
|
if(serviceType != null && !(serviceType.equals(""))) builder.and(qFltPlanBas.serviceType.eq(serviceType)); |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 비행계획서 생성일시[createDt] 조건, |
|
|
|
|
* 승인여부[aprvlYn] 조건, |
|
|
|
|
* 각항별 타입[serviceType] 조건, |
|
|
|
|
* 회원고유번호[cstmrSno]조건과 맞는지 확인하여 조회하는 SQL 입니다. |
|
|
|
|
* |
|
|
|
|
* SELECT |
|
|
|
|
* FPA.IDNTF_NUM AS 'name', |
|
|
|
|
* COUNT(DISTINCT FPA.PLAN_SNO) AS 'value' |
|
|
|
|
* FROM FLT_PLAN_BAS FPB |
|
|
|
|
* LEFT OUTER JOIN FLT_PLAN_ARCRFT FPA |
|
|
|
|
* ON FPA.PLAN_SNO = FPB.PLAN_SNO |
|
|
|
|
* WHERE DATE_FORMAT(CCWL.CREATE_DT, #{formatParam[0}) |
|
|
|
|
* AND FPB.SERVICE_TYPE = #{serviceType} |
|
|
|
|
* AND FPB.CSTMR_SNO = #{cstmrSno} -- 권한이 유저인경우 |
|
|
|
|
* AND FPB.APRVL_YN = 'Y' |
|
|
|
|
* GROUP BY FPA.IDNTF_NUM |
|
|
|
|
* ORDER BY COUNT(DISTINCT FPA.PLAN_SNO) DESC |
|
|
|
|
* LIMIT 5 |
|
|
|
|
*/ |
|
|
|
|
List<FlightStcsValueModel> result = query |
|
|
|
|
.select( |
|
|
|
|
Projections.bean(FlightStcsValueModel.class, |
|
|
|
|