LeeGyoungDo
3 months ago
5 changed files with 205 additions and 6 deletions
@ -0,0 +1,65 @@ |
|||||||
|
package com.palnet.biz.api.comn.file.model; |
||||||
|
|
||||||
|
import lombok.Data; |
||||||
|
import lombok.extern.slf4j.Slf4j; |
||||||
|
|
||||||
|
import java.lang.reflect.Field; |
||||||
|
import java.util.HashMap; |
||||||
|
import java.util.List; |
||||||
|
import java.util.Map; |
||||||
|
|
||||||
|
@Data |
||||||
|
@Slf4j |
||||||
|
public class ValidPdfModel extends PdfBaseModel{ |
||||||
|
|
||||||
|
private String todayDate; |
||||||
|
|
||||||
|
private String todayWeek; |
||||||
|
|
||||||
|
private List<ValidFlighgModel> validFlightList; |
||||||
|
|
||||||
|
public ValidPdfModel (){ |
||||||
|
init(); |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
@Override |
||||||
|
public void init() { |
||||||
|
super.setTemplate("laanc/valid_document"); |
||||||
|
} |
||||||
|
|
||||||
|
@Override |
||||||
|
public Map<String, Object> getParam() { |
||||||
|
Field[] fields = getClass().getDeclaredFields(); |
||||||
|
|
||||||
|
HashMap<String, Object> result = new HashMap<>(); |
||||||
|
|
||||||
|
try { |
||||||
|
for(Field field : fields){ |
||||||
|
Object value = field.get(this); |
||||||
|
String key = field.getName(); |
||||||
|
|
||||||
|
result.put(key, value); |
||||||
|
} |
||||||
|
} catch (IllegalArgumentException e) { |
||||||
|
log.error("",e); |
||||||
|
} catch (IllegalAccessException e){ |
||||||
|
log.error("",e); |
||||||
|
} |
||||||
|
|
||||||
|
return result; |
||||||
|
} |
||||||
|
|
||||||
|
@Data |
||||||
|
public static class ValidFlighgModel{ |
||||||
|
private String applyNm; // 민원인
|
||||||
|
private String addr1; // 행정구역1
|
||||||
|
private String addr2; // 행정구역2
|
||||||
|
private String addr3; // 상세주소
|
||||||
|
private Double bufferZone; // 반경
|
||||||
|
private Double fltElev; // 고도
|
||||||
|
private Double fltElevMax; // 최고비행 해발고도
|
||||||
|
private String rm; // 비고
|
||||||
|
} |
||||||
|
|
||||||
|
} |
@ -0,0 +1,55 @@ |
|||||||
|
<!DOCTYPE html> |
||||||
|
<html lang="ko" xmlns:th="http://www.thymeleaf.org"> |
||||||
|
<head> |
||||||
|
<meta charset="UTF-8"> |
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0"> |
||||||
|
<title>Document</title> |
||||||
|
</head> |
||||||
|
<body> |
||||||
|
<div style="width:100%;max-width:780px;margin:20px auto;"> |
||||||
|
<div style="text-align:center;"> |
||||||
|
<h2 style="margin:20px auto;font-size:20px;border-top:3px solid #0045d4;border-bottom:3px solid #0045d4; |
||||||
|
background:#ebf6f7;padding:8px 0;"> |
||||||
|
관제권 내 초경량비행장치 비행승인 관련 검토 결과 |
||||||
|
</h2> |
||||||
|
</div> |
||||||
|
<div style="text-align:right"> |
||||||
|
<span>[[${todayDate}]]([[${todayWeek}]]) 관제통신과</span> |
||||||
|
</div> |
||||||
|
<div> |
||||||
|
<h4 style="font-size:17px;margin-top:0;">비행승인 관련 검토 결과 <span style="font-size:15px">(검토 구역 : 23개소)</span></h4> |
||||||
|
</div> |
||||||
|
<div> |
||||||
|
<table style="width:100%;border-collapse: collapse"> |
||||||
|
<thead> |
||||||
|
<tr> |
||||||
|
<th style="border:1px solid #777;background:#e0eed1;padding:4px;text-align:center;vertical-align:middle;font-size:15px;height:50px">순번</th> |
||||||
|
<th style="border:1px solid #777;background:#e0eed1;padding:4px;text-align:center;vertical-align:middle;font-size:15px;height:50px">민원인</th> |
||||||
|
<th style="border:1px solid #777;background:#e0eed1;padding:4px;text-align:center;vertical-align:middle;font-size:15px;height:50px">행정구역1</th> |
||||||
|
<th style="border:1px solid #777;background:#e0eed1;padding:4px;text-align:center;vertical-align:middle;font-size:15px;height:50px">행정구역2</th> |
||||||
|
<th style="border:1px solid #777;background:#e0eed1;padding:4px;text-align:center;vertical-align:middle;font-size:15px;height:50px">상세주소</th> |
||||||
|
<th style="border:1px solid #777;background:#e0eed1;padding:4px;text-align:center;vertical-align:middle;font-size:15px;height:50px">반경<br>(m)</th> |
||||||
|
<th style="border:1px solid #777;background:#e0eed1;padding:4px;text-align:center;vertical-align:middle;font-size:15px;height:50px">최고비행<br>해발고도(m)</th> |
||||||
|
<th style="border:1px solid #777;background:#e0eed1;padding:4px;text-align:center;vertical-align:middle;font-size:15px;height:50px">비고</th> |
||||||
|
</tr> |
||||||
|
</thead> |
||||||
|
<tbody> |
||||||
|
<th:block th:each="data:${validFlightList}"> |
||||||
|
<tr> |
||||||
|
<td style="border:1px solid #777;background:#fff;padding:4px;text-align:center;vertical-align:middle;font-size:14px;height:50px"><span th:text="${dataStat.count}"></span></td> |
||||||
|
<td style="border:1px solid #777;background:#fff;padding:4px;text-align:center;vertical-align:middle;font-size:14px;height:50px"><span th:text="${data.applyNm}"></span></td> |
||||||
|
<td style="border:1px solid #777;background:#fff;padding:4px;text-align:center;vertical-align:middle;font-size:14px;height:50px"><span th:text="${data.addr1}"></span></td> |
||||||
|
<td style="border:1px solid #777;background:#fff;padding:4px;text-align:center;vertical-align:middle;font-size:14px;height:50px"><span th:text="${data.addr2}"></span></td> |
||||||
|
<td style="border:1px solid #777;background:#fff;padding:4px;text-align:center;vertical-align:middle;font-size:14px;height:50px"><span th:text="${data.addr3}"></span></td> |
||||||
|
<td style="border:1px solid #777;background:#fff;padding:4px;text-align:center;vertical-align:middle;font-size:14px;height:50px"><span th:text="${data.fltElev}"></span></td> |
||||||
|
<td style="border:1px solid #777;background:#fff;padding:4px;text-align:center;vertical-align:middle;font-size:14px;height:50px"><span th:text="${data.fltElevMax}"></span></td> |
||||||
|
<td style="border:1px solid #777;background:#fff;padding:4px;text-align:center;vertical-align:middle;font-size:14px;height:50px"><span th:text="${data.rm}"></span></td> |
||||||
|
</tr> |
||||||
|
</th:block> |
||||||
|
</tbody> |
||||||
|
</table> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
</body> |
||||||
|
</html> |
Loading…
Reference in new issue