|
|
|
@ -1,11 +1,8 @@
|
|
|
|
|
package com.palnet.biz.jpa.repository.flt; |
|
|
|
|
|
|
|
|
|
import java.time.Instant; |
|
|
|
|
import java.util.Date; |
|
|
|
|
import java.util.List; |
|
|
|
|
|
|
|
|
|
import com.palnet.biz.api.acnt.jwt.utils.JwtTokenUtil; |
|
|
|
|
|
|
|
|
|
import org.springframework.cache.annotation.Cacheable; |
|
|
|
|
import org.springframework.data.domain.PageImpl; |
|
|
|
|
import org.springframework.data.domain.Pageable; |
|
|
|
@ -18,6 +15,7 @@ import com.palnet.biz.api.bas.flight.model.BasFlightPlanListRq;
|
|
|
|
|
import com.palnet.biz.api.bas.flight.model.BasFlightPlanModel; |
|
|
|
|
import com.palnet.biz.api.bas.flight.model.BasFlightPlanPilotModel; |
|
|
|
|
import com.palnet.biz.api.bas.flight.model.BasFlightScheduleRs; |
|
|
|
|
import com.palnet.biz.api.main.dash.model.MainDashStcsModel; |
|
|
|
|
import com.palnet.biz.jpa.entity.FltPlanBas; |
|
|
|
|
import com.palnet.biz.jpa.entity.QComArcrftBas; |
|
|
|
|
import com.palnet.biz.jpa.entity.QComIdntfBas; |
|
|
|
@ -33,11 +31,13 @@ import com.palnet.biz.jpa.entity.QPtyGroupBas;
|
|
|
|
|
import com.palnet.comn.utils.DateUtils; |
|
|
|
|
import com.querydsl.core.BooleanBuilder; |
|
|
|
|
import com.querydsl.core.group.GroupBy; |
|
|
|
|
import com.querydsl.core.types.ConstantImpl; |
|
|
|
|
import com.querydsl.core.types.ExpressionUtils; |
|
|
|
|
import com.querydsl.core.types.Projections; |
|
|
|
|
import com.querydsl.core.types.dsl.CaseBuilder; |
|
|
|
|
import com.querydsl.core.types.dsl.DateTemplate; |
|
|
|
|
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; |
|
|
|
|
|
|
|
|
@ -666,4 +666,53 @@ public class FltPlanQueryRepository {
|
|
|
|
|
|
|
|
|
|
return result; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 김포공항, 비행승인 통계 API |
|
|
|
|
* @param yyyymm |
|
|
|
|
* @return |
|
|
|
|
*/ |
|
|
|
|
public List<MainDashStcsModel> mainKacStcsPlanAllow(String yyyymm, String[] formatParam){ |
|
|
|
|
|
|
|
|
|
QFltPlanBas bas = QFltPlanBas.fltPlanBas; |
|
|
|
|
|
|
|
|
|
StringTemplate formattedDate = Expressions.stringTemplate( |
|
|
|
|
"DATE_FORMAT({0}, {1})" |
|
|
|
|
, bas.schFltStDt |
|
|
|
|
, ConstantImpl.create(formatParam[0])); |
|
|
|
|
|
|
|
|
|
StringTemplate formattedDate2 = Expressions.stringTemplate( |
|
|
|
|
"DATE_FORMAT({0}, {1})" |
|
|
|
|
, bas.schFltStDt |
|
|
|
|
, ConstantImpl.create(formatParam[1])); |
|
|
|
|
|
|
|
|
|
BooleanBuilder builder = new BooleanBuilder(); |
|
|
|
|
builder.and(bas.aprvlYn.eq("Y")); |
|
|
|
|
if(yyyymm != null && yyyymm.length() > 0) builder.and(formattedDate.eq(yyyymm)); |
|
|
|
|
|
|
|
|
|
List<MainDashStcsModel> result = query |
|
|
|
|
.select( |
|
|
|
|
Projections.bean( |
|
|
|
|
MainDashStcsModel.class , |
|
|
|
|
formattedDate2.as("typeCd"), |
|
|
|
|
bas.count().as("count") |
|
|
|
|
) |
|
|
|
|
) |
|
|
|
|
.from(bas) |
|
|
|
|
.where(builder) |
|
|
|
|
.groupBy(formattedDate2) |
|
|
|
|
.fetch(); |
|
|
|
|
|
|
|
|
|
if(result.size() <= 0){ |
|
|
|
|
|
|
|
|
|
MainDashStcsModel node = new MainDashStcsModel(); |
|
|
|
|
node.setCount(0); |
|
|
|
|
node.setTypeCd("NoData"); |
|
|
|
|
|
|
|
|
|
result.add(node); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return result; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} |