diff --git a/http/server/server.http b/http/server/server.http index f4635318..7e5e862f 100644 --- a/http/server/server.http +++ b/http/server/server.http @@ -66,6 +66,7 @@ Authorization: {{accessToken}} GET {{appHost}}/api/bas/dos/plan ?searchStDt=2023-06-29 &searchEndDt=2024-06-29 +# &limitZoneCd= # &reviewedProcType=W # &applyNo=T201118-3010 # &reviewedType=W @@ -78,8 +79,8 @@ Authorization: {{accessToken}} const {planSno, applyNo, areaList} = d; console.log(`planSno: ${planSno}, applyNo: ${applyNo}`); areaList.forEach(a => { - const {planAreaSno, zoneNo, reviewedType, reviewedProcType, approvalCd} = a; - console.log(`planAreaSno: ${planAreaSno}, zoneNo: ${zoneNo}, reviewedType: ${reviewedType}, reviewedProcType: ${reviewedProcType}, approvalCd: ${approvalCd}`); + const {planAreaSno, zoneNo, reviewedType, reviewedProcType, approvalCd, limitZoneCd} = a; + console.log(`planAreaSno: ${planAreaSno}, zoneNo: ${zoneNo}, reviewedType: ${reviewedType}, reviewedProcType: ${reviewedProcType}, approvalCd: ${approvalCd}, limitZoneCd: ${limitZoneCd}`); }) }); diff --git a/pav-server/src/main/java/com/palnet/biz/api/bas/dos/model/BasDosPlanRq.java b/pav-server/src/main/java/com/palnet/biz/api/bas/dos/model/BasDosPlanRq.java index 319dffbc..74e98fa7 100644 --- a/pav-server/src/main/java/com/palnet/biz/api/bas/dos/model/BasDosPlanRq.java +++ b/pav-server/src/main/java/com/palnet/biz/api/bas/dos/model/BasDosPlanRq.java @@ -45,4 +45,7 @@ public class BasDosPlanRq { @Schema(description = "검토유형(관제과)", example = "W", implementation = ReviewedProcType.class) private ReviewedProcType reviewedProcType; + + @Schema(description = "장애물제한표면(C(원추), H(수평), null(모두)", example = "C", implementation = LimitZoneType.class) + private LimitZoneType limitZoneCd; } diff --git a/pav-server/src/main/java/com/palnet/biz/api/bas/dos/service/BasDosService.java b/pav-server/src/main/java/com/palnet/biz/api/bas/dos/service/BasDosService.java index 909c02ca..5c6322e5 100644 --- a/pav-server/src/main/java/com/palnet/biz/api/bas/dos/service/BasDosService.java +++ b/pav-server/src/main/java/com/palnet/biz/api/bas/dos/service/BasDosService.java @@ -76,7 +76,6 @@ public class BasDosService { private final DosFltPlanDroneRepository dosFltPlanDroneRepository; private final DosFltPlanPilotRepository dosFltPlanPilotRepository; private final DronOneStopService dronOneStopService; - private final ComnCoordinateService comnCoordinateService; private final AreaUtils areaUtils; private final PdfUtils pdfUtils; private final JwtTokenUtil jwtTokenUtil; @@ -468,7 +467,7 @@ public class BasDosService { } for (DosFltPlanArea area : planAreaList) { - if(area.getReviewedProcType() == ReviewedProcType.SUCCESS) { + if (area.getReviewedProcType() == ReviewedProcType.SUCCESS) { log.warn("reviewedProcType is not changed because status is SUCCESS: area:{}/rq:{}", area.getReviewedProcType(), rq.getReviewedProcType()); continue; } diff --git a/pav-server/src/main/java/com/palnet/biz/config/WebMvcConfig.java b/pav-server/src/main/java/com/palnet/biz/config/WebMvcConfig.java index 294da7ba..f1500447 100644 --- a/pav-server/src/main/java/com/palnet/biz/config/WebMvcConfig.java +++ b/pav-server/src/main/java/com/palnet/biz/config/WebMvcConfig.java @@ -1,9 +1,6 @@ package com.palnet.biz.config; -import com.palnet.biz.config.convert.CodeToFltPurposeBinding; -import com.palnet.biz.config.convert.CodeToReviewdProcTypeConverter; -import com.palnet.biz.config.convert.CodeToReviewdTypeConverter; -import com.palnet.biz.config.convert.StringToInstantBinding; +import com.palnet.biz.config.convert.*; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.format.FormatterRegistry; @@ -17,11 +14,11 @@ import org.springframework.web.servlet.resource.ResourceUrlEncodingFilter; import java.time.format.DateTimeFormatter; @Configuration -public class WebMvcConfig implements WebMvcConfigurer{ +public class WebMvcConfig implements WebMvcConfigurer { - private static final String dateFormat = "yyyy-MM-dd"; - private static final String timeFormat = "HH:mm:ss"; - private static final String dateTimeFormat = "yyyy-MM-dd HH:mm:ss"; + private static final String dateFormat = "yyyy-MM-dd"; + private static final String timeFormat = "HH:mm:ss"; + private static final String dateTimeFormat = "yyyy-MM-dd HH:mm:ss"; /*@Autowired AccsUUIDcheckInterceptor accsUUIDcheckInterceptor;*/ @@ -37,7 +34,7 @@ public class WebMvcConfig implements WebMvcConfigurer{ // converters.add(escapingConverter()); // } - public void addResourceHandlers(final ResourceHandlerRegistry registry) { + public void addResourceHandlers(final ResourceHandlerRegistry registry) { /*registry.addResourceHandler("/web/**").addResourceLocations("/web/") .setCacheControl(CacheControl.maxAge(10, TimeUnit.DAYS)).resourceChain(true) // .setCacheControl(CacheControl.noStore()).resourceChain(true) @@ -45,20 +42,20 @@ public class WebMvcConfig implements WebMvcConfigurer{ .addContentVersionStrategy("/**")) .addTransformer(new AppCacheManifestTransformer());*/ - // html 가능 하게 설정 - /*registry.addResourceHandler("/**").addResourceLocations("/web/hcws/html/");*/ - } + // html 가능 하게 설정 + /*registry.addResourceHandler("/**").addResourceLocations("/web/hcws/html/");*/ + } - @Bean - public ResourceUrlEncodingFilter resourceUrlEncodingFilter() { - return new ResourceUrlEncodingFilter(); - } + @Bean + public ResourceUrlEncodingFilter resourceUrlEncodingFilter() { + return new ResourceUrlEncodingFilter(); + } - @Override - public void addCorsMappings(CorsRegistry registry) { - //임시로 크로스오리진 전체를 품 - registry.addMapping("/**").allowedOrigins("*").allowedMethods("GET", "POST", "PUT", "DELETE", "PATCH", "OPTIONS"); - } + @Override + public void addCorsMappings(CorsRegistry registry) { + //임시로 크로스오리진 전체를 품 + registry.addMapping("/**").allowedOrigins("*").allowedMethods("GET", "POST", "PUT", "DELETE", "PATCH", "OPTIONS"); + } // // @Bean @@ -97,6 +94,7 @@ public class WebMvcConfig implements WebMvcConfigurer{ registry.addConverter(new CodeToFltPurposeBinding()); registry.addConverter(new CodeToReviewdTypeConverter()); registry.addConverter(new CodeToReviewdProcTypeConverter()); + registry.addConverter(new CodeToLimitZoneTypeConverter()); /* ISO 타입. registrar.setUseIsoFormat(true); @@ -105,10 +103,10 @@ public class WebMvcConfig implements WebMvcConfigurer{ } - @Override - public void addInterceptors(InterceptorRegistry registry) { + @Override + public void addInterceptors(InterceptorRegistry registry) { - //접근고유ID 체크 Interceptor + //접근고유ID 체크 Interceptor /*registry.addInterceptor(accsUUIDcheckInterceptor) .addPathPatterns("/sendbox/") .addPathPatterns("/sendbox/index");*/ @@ -138,5 +136,5 @@ public class WebMvcConfig implements WebMvcConfigurer{ .excludePathPatterns("/rest/**"); */ - } + } } diff --git a/pav-server/src/main/java/com/palnet/biz/config/convert/CodeToLimitZoneTypeConverter.java b/pav-server/src/main/java/com/palnet/biz/config/convert/CodeToLimitZoneTypeConverter.java new file mode 100644 index 00000000..c4bf9717 --- /dev/null +++ b/pav-server/src/main/java/com/palnet/biz/config/convert/CodeToLimitZoneTypeConverter.java @@ -0,0 +1,11 @@ +package com.palnet.biz.config.convert; + +import com.palnet.biz.api.bas.dos.model.LimitZoneType; +import org.springframework.core.convert.converter.Converter; + +public class CodeToLimitZoneTypeConverter implements Converter { + @Override + public LimitZoneType convert(String s) { + return LimitZoneType.fromCode(s); + } +} diff --git a/pav-server/src/main/java/com/palnet/biz/jpa/repository/dos/DosFltPlanQueryRepository.java b/pav-server/src/main/java/com/palnet/biz/jpa/repository/dos/DosFltPlanQueryRepository.java index cc8c5dfe..df89860d 100644 --- a/pav-server/src/main/java/com/palnet/biz/jpa/repository/dos/DosFltPlanQueryRepository.java +++ b/pav-server/src/main/java/com/palnet/biz/jpa/repository/dos/DosFltPlanQueryRepository.java @@ -98,6 +98,10 @@ public class DosFltPlanQueryRepository { if (rq.getReviewedProcType() != null) { builder.and(qDosFltPlanArea.reviewedProcType.eq(rq.getReviewedProcType())); } + // 장애물 제한 표면 + if (rq.getLimitZoneCd() != null) { + builder.and(qDosFltPlanArea.limitZone.eq(rq.getLimitZoneCd().getCode())); + } return query .select(qDosFltPlanArea)