Thủ tục cấp Giấy phép xây dựng đối với công trình tôn giáo; công trình trong khu vực bảo vệ di tích lịch sử - văn hóa; công trình tượng đài, tranh hoành tráng
Thủ tục hành chính
Thủ tục cấp Giấy phép xây dựng đối với công trình tôn giáo; công trình trong khu vực bảo vệ di tích lịch sử - văn hóa; công trình tượng đài, tranh hoành tráng
Có lỗi xảy ra trong quá trình xử lý biểu mẫu.
Java method "com.sun.proxy.$Proxy461.getArticle(long, String)" threw an exception when invoked on com.sun.proxy.$Proxy461 object "com.liferay.journal.service.impl.JournalArticleLocalServiceImpl@7b882bcb"; see cause exception in the Java stack trace. ---- FTL stack trace ("~" means nesting-related): - Failed at: articleobj = journalLocalService.getA... [in template "20115#20151#44261" at line 20, column 5] - Reached through: #assign-container [in template "20115#20151#44261" at line 19, column 1] ----
1<style scoped>
2.field-title{
3 font-weight: bold;
4}
5.row{
6 border-bottom: thin dotted rgba(0, 0, 0, 0.08);
7 margin-bottom: 5px;
8}
9.container{
10 font-size: 14px;
11 width: 100%;
12}
13.file{
14 border-bottom: thin dotted rgba(0, 0, 0, 0.08);
15 margin-bottom: 7px;
16}
17</style>
18<#assign HttpUtil = staticUtil["com.liferay.portal.kernel.util.HttpUtil"] />
19<#assign journalLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")
20 articleobj = journalLocalService.getArticle(getterUtil.getLong(scopeGroupId), .vars["reserved-article-id"].data)
21 articlePrimKey = articleobj.getResourcePrimKey()
22 catLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService")
23 articleCates = catLocalService.getCategories("com.liferay.journal.model.JournalArticle", getterUtil.getLong(articlePrimKey))
24 listName = ""
25 assetVocabularyLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetVocabularyLocalService")
26 listVocab = assetVocabularyLocalService.getGroupVocabularies(groupId)
27 linhVuc = ""
28/>
29<#list articleCates as aCate>
30 <#assign listName = listName + "," + aCate.getName() />
31</#list>
32
33<#list listVocab as vocab>
34 <#-- 43826: id vocabulary cua linh vuc -->
35 <#if vocab.getVocabularyId() == 43826>
36 <#list vocab.getCategories() as cate>
37 <#if listName?contains(cate.getName())>
38 <#assign linhVuc = cate.getName()>
39 </#if>
40 </#list>
41 </#if>
42</#list>
43
44
45<div class="container">
46<div class="row">
47 <div class="col-md-12 field-title">
48 Lĩnh vực:
49 </div>
50 <div class="col-md-12">
51 ${linhVuc}
52 </div>
53</div>
54<div class="row">
55 <div class="col-md-12 field-title">
56 Trình tự thực hiện:
57 </div>
58 <div class="col-md-12">
59 <#if validator.isNotNull(executionOrder.getData())>
60 ${executionOrder.getData()}
61 </#if>
62 </div>
63</div>
64<div class="row">
65 <div class="col-md-12 field-title">
66 Cách thực hiện:
67 </div>
68 <div class="col-md-12">
69 <#if validator.isNotNull(executionMethod.getData())>
70 ${executionMethod.getData()}
71 </#if>
72 </div>
73</div>
74<div class="row">
75 <div class="col-md-12 field-title">
76 Hồ sơ:
77 </div>
78 <div class="col-md-12">
79 <#if validator.isNotNull(file.getData())>
80 ${file.getData()}
81 </#if>
82 </div>
83</div>
84<div class="row">
85 <div class="col-md-12 field-title">
86 Thời gian giải quyết:
87 </div>
88 <div class="col-md-12">
89 <#if validator.isNotNull(executionTime.getData())>
90 ${executionTime.getData()}
91 </#if>
92 </div>
93</div>
94<div class="row">
95 <div class="col-md-12 field-title">
96 Đối tượng:
97 </div>
98 <div class="col-md-12">
99 <#if validator.isNotNull(target.getData())>
100 ${target.getData()}
101 </#if>
102 </div>
103</div>
104<div class="row">
105 <div class="col-md-12 field-title">
106 Cơ quan ban hành:
107 </div>
108 <div class="col-md-12">
109
110 </div>
111</div>
112<div class="row">
113 <div class="col-md-12 field-title">
114 Kết quả:
115 </div>
116 <div class="col-md-12">
117 <#if validator.isNotNull(result.getData())>
118 ${result.getData()}
119 </#if>
120 </div>
121</div>
122<div class="row">
123 <div class="col-md-12 field-title">
124 Phí, lệ phí
125 </div>
126 <div class="col-md-12">
127 <#if validator.isNotNull(fees.getData())>
128 ${fees.getData()}
129 </#if>
130 </div>
131</div>
132<div class="row">
133 <div class="col-md-12 field-title">
134 Tên mẫu đơn:
135 </div>
136 <div class="col-md-12">
137 <#if validator.isNotNull(form.getData())>
138 ${form.getData()}
139 </#if>
140 </div>
141</div>
142<div class="row">
143 <div class="col-md-12 field-title">
144 Yêu cầu, điều kiện thực hiện:
145 </div>
146 <div class="col-md-12">
147 </div>
148</div>
149<div class="row">
150 <div class="col-md-12 field-title">
151 Cơ sở pháp lý:
152 </div>
153 <div class="col-md-12">
154 <#if validator.isNotNull(legalBasis.getData())>
155 ${legalBasis.getData()}
156 </#if>
157 </div>
158</div>
159
160 <div class="doc-gen-row doc-gen-row-bttom doc-gen-font-bold">
161 Tài liệu đính kèm:
162 </div>
163 <div class="row">
164 <#assign extensionsImg =".jpg_.jpeg_.bmp_.gif_.png">
165 <#assign urlIconAttachment = "" >
166 <#assign pathToDownloadAll = "" />
167 <#assign iconDownloadall = "" />
168 <#if validator.isNotNull(attachment.getData())>
169 <#list attachment.getSiblings() as file>
170 <#assign isPDF = false >
171 <#assign arrString = file.getData()?string?split("/")/>
172 <#assign filename = arrString[4] />
173 <#assign pathToDownloadAll = pathToDownloadAll +"'" + file.getData() + "'" + "," />
174
175 <#if (filename?lower_case)?contains(".doc")>
176 <#assign urlIconAttachment = themeDisplay.getPathThemeRoot() + "/images/imageVanBan/WORD.png" >
177 <#elseif (filename?lower_case)?contains(".rtf")>
178 <#assign urlIconAttachment = themeDisplay.getPathThemeRoot() + "/images/imageVanBan/WORD.png" >
179 <#elseif (filename?lower_case)?contains(".pdf")>
180 <#assign isPDF = true >
181 <#assign urlIconAttachment = themeDisplay.getPathThemeRoot() + "/images/imageVanBan/PDF.png" >
182 <#elseif (filename?lower_case)?contains(".xls")>
183 <#assign urlIconAttachment = themeDisplay.getPathThemeRoot() + "/images/imageVanBan/EXCEL.png" >
184 <#else>
185 <#assign urlIconAttachment = themeDisplay.getPathThemeRoot() + "/images/imageVanBan/OTHER.png" >
186 <!--Kiem tra co phai la img khong-->
187 <#list extensionsImg?split("_") as x>
188 <#if (filename?lower_case)?contains(x)>
189 <#assign isPDF = true >
190 </#if>
191 </#list>
192 </#if>
193
194 <#assign iconDownloadall = themeDisplay.getPathThemeRoot() + "/images/imageVanBan/vb-download.png" >
195 <#assign iconVBDownload = themeDisplay.getPathThemeRoot() + "/images/imageVanBan/vb-download.png" >
196 <#assign iconVBReview = themeDisplay.getPathThemeRoot() + "/images/imageVanBan/vb-review.png" >
197 <div class="col-xs-12 file">
198 <div class="col-xs-12 col-sm-8 doc-gen-padd-no doc-gen-row-bttom-mobile style-padding-bottom-attachFile">
199 <a href="${file.getData()}"><img src="${urlIconAttachment}"></a>
200 <span style="word-wrap: break-word;">${HttpUtil.decodeURL(filename,true)}</span>
201 </div>
202
203 <div class="col-xs-12 col-sm-4 doc-gen-file-dk">
204 <a class="col-xs-6 col-sm-6 doc-gen-padd-no" href="${file.getData()}" download>
205 <img src="${iconVBDownload}">
206 Tải về
207 </a>
208 <#if isPDF>
209 <a class="col-xs-6 col-sm-6 doc-gen-padd-no" href="${file.getData()}" target="_blank">
210 <img src="${iconVBReview}" />
211 Xem trước
212 </a>
213 </#if>
214 </div> </div>
215 </#list>
216 <#assign pathToDownloadAll = "javascript:downloadAllFiles(" + .vars['reserved-article-author-id'].data + ", [" + pathToDownloadAll + "])" />
217 <#if (attachment.getSiblings()?size >1) >
218 <div class="hidden-xs col-sm-8 doc-gen-padd-no doc-gen-row-bttom-mobile style-padding-bottom-attachFile">
219 </div>
220 <div class="col-xs-12 col-sm-4 doc-gen-file-dk">
221 <a href="${pathToDownloadAll}"><img src="${iconDownloadall}"></a>
222 <span style="word-wrap: break-word;">Tải về tất cả tài liệu</span>
223 </div>
224 </#if>
225 <#else>
226 <div class="doc-gen-no-file-dk">
227 Không có tài liệu đính kèm
228 </div>
229 </#if>
230 </div>
231</div>
232
233
234<a id="hiddenDownload" style="display: none;"></a>
235
236<script type="text/javascript">
237 /** Perform download all files of the selected record. */
238 function downloadAllFiles(id, urls) {
239 zipFiles(id, urls);
240 }
241
242 function zipFiles(id, urls) {
243 var jszip = new JSZip();
244 doZip(jszip, urls, 0);
245 }
246
247 function doZip(jszip, urls, index) {
248 var fileName = urls[index].split('/')[4];
249
250 JSZipUtils.getBinaryContent(urls[index], function(err, data) {
251 if (!err) {
252 jszip.file(fileName, data, {
253 binary : true
254 });
255
256 if (++index == urls.length) {
257 jszip.generateAsync({
258 type : "blob"
259 }).then(function(content) {
260 var a = $("#hiddenDownload");
261 a.attr("download", "tailieudinhkem");
262 a.attr("href", URL.createObjectURL(content));
263 document.getElementById("hiddenDownload").click();
264 });
265 } else {
266 doZip(jszip, urls, index);
267 }
268 }
269 });
270 }
271
272</script>