1 |
8766d436
|
cagy
|
<html xmlns:th="http://www.thymeleaf.org"
|
2 |
|
|
xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout"
|
3 |
|
|
layout:decorator="~{/layouts/layout}">
|
4 |
cfe48a96
|
cagy
|
|
5 |
f09d9a1f
|
cagy
|
<head>
|
6 |
|
|
<title>Konfigurace</title>
|
7 |
|
|
</head>
|
8 |
|
|
|
9 |
8766d436
|
cagy
|
<div layout:fragment="content">
|
10 |
cfe48a96
|
cagy
|
|
11 |
fb86dc6a
|
cagy
|
<meta th:name="${_csrf.parameterName}" th:content="${_csrf.token}"/>
|
12 |
|
|
|
13 |
8766d436
|
cagy
|
<div class="container">
|
14 |
|
|
<h1>
|
15 |
d50064e0
|
cagy
|
Sestava -
|
16 |
|
|
<span th:if="${configuration.name}" th:text="${configuration.name}"></span>
|
17 |
|
|
<span th:unless="${configuration.name}" th:text="${configuration.assembly.name}"></span>
|
18 |
8766d436
|
cagy
|
</h1>
|
19 |
|
|
<a href="/" class="btn btn-success mb-2">Zpět</a>
|
20 |
|
|
</div>
|
21 |
cfe48a96
|
cagy
|
|
22 |
fb86dc6a
|
cagy
|
<form th:object="${configuration}" method="post" th:action="@{${formAction}}" id="assembly-form">
|
23 |
8766d436
|
cagy
|
<input type="hidden" th:field="*{assembly.id}" th:value="${configuration.assembly?.getId()}"/>
|
24 |
b07f6ea7
|
mlinha
|
<input type="hidden" name="isNotRemoveEmpty"/>
|
25 |
8766d436
|
cagy
|
<div class="container box">
|
26 |
|
|
<div class="col-md-12">
|
27 |
|
|
<div class="col-md-12 form-group row">
|
28 |
f38b6ac8
|
cagy
|
<label th:for="${tableName}" class="name-input-label">Titulek tabulky:</label>
|
29 |
8766d436
|
cagy
|
<input type="text" class="form-control name-input" th:field="*{tableName}"
|
30 |
ea163a4c
|
mlinha
|
th:value="${configuration.tableName}">
|
31 |
8766d436
|
cagy
|
</div>
|
32 |
|
|
<span>Parametry:</span>
|
33 |
|
|
<div class="col-md-9">
|
34 |
|
|
<table class="table">
|
35 |
cfe48a96
|
cagy
|
<thead>
|
36 |
|
|
<tr>
|
37 |
8766d436
|
cagy
|
<th class="col-1">Parametr</th>
|
38 |
|
|
<th class="col-2">Umístění</th>
|
39 |
|
|
<th class="col-3">Filtry</th>
|
40 |
cfe48a96
|
cagy
|
</tr>
|
41 |
|
|
</thead>
|
42 |
8766d436
|
cagy
|
<tbody>
|
43 |
b07f6ea7
|
mlinha
|
<tr th:each="parameterInConfiguration, itemStat : ${configuration.parametersInConfiguration}" class="parameter-row">
|
44 |
|
|
<input type="hidden" class="parameterIndex" th:value="${itemStat.index}">
|
45 |
|
|
<input type="hidden" th:field="${configuration.parametersInConfiguration[__${itemStat.index}__].parameter.id}"/>
|
46 |
cfe48a96
|
cagy
|
<td>
|
47 |
8766d436
|
cagy
|
<span class="select-text-padding parameter-name"
|
48 |
|
|
th:text="${parameterInConfiguration.parameter.name}"></span>
|
49 |
cfe48a96
|
cagy
|
</td>
|
50 |
8766d436
|
cagy
|
<td class="select-action-buttons">
|
51 |
|
|
<optional th:each="location : ${parameterInConfiguration.parameter.locations}">
|
52 |
|
|
<span th:if="${location.name?.equals('Řádek')}"
|
53 |
|
|
th:field="${configuration.parametersInConfiguration[__${itemStat.index}__].location.name}"
|
54 |
|
|
class="select-action-padding select-action-button select-input-action-margin-collapse unselectable row-button"
|
55 |
|
|
th:classappend="(${configuration.parametersInConfiguration[__${itemStat.index}__].location.name?.equals('Řádek')}) ? select-action-headlight" >
|
56 |
|
|
<i class="fas fa-align-justify"></i>
|
57 |
|
|
</span>
|
58 |
|
|
<span th:if="${location.name?.equals('Sloupec')}"
|
59 |
|
|
th:field="${configuration.parametersInConfiguration[__${itemStat.index}__].location.name}"
|
60 |
|
|
class="select-action-padding select-action-button select-input-action-margin-collapse unselectable column-button"
|
61 |
|
|
th:classappend="(${configuration.parametersInConfiguration[__${itemStat.index}__].location.name?.equals('Sloupec')}) ? select-action-headlight">
|
62 |
|
|
<i class="fas fa-align-justify transform"></i>
|
63 |
|
|
</span>
|
64 |
|
|
<span th:if="${location.name?.equals('Hodnota')}"
|
65 |
|
|
th:field="${configuration.parametersInConfiguration[__${itemStat.index}__].location.name}"
|
66 |
|
|
class="select-action-padding select-action-button select-input-action-margin-collapse unselectable value-button"
|
67 |
|
|
th:classappend="(${configuration.parametersInConfiguration[__${itemStat.index}__].location.name?.equals('Hodnota')}) ? select-action-headlight">
|
68 |
|
|
<i class="fas fa-heading"></i>
|
69 |
|
|
</span>
|
70 |
|
|
</optional>
|
71 |
cfe48a96
|
cagy
|
</td>
|
72 |
8766d436
|
cagy
|
<td class="s">
|
73 |
b7cd226e
|
cagy
|
<div th:unless="${configuration.parametersInConfiguration[__${itemStat.index}__].parameter.parameterType.name.equals('Výčet')}" class="col select-filter">
|
74 |
8766d436
|
cagy
|
<select class="form-control"
|
75 |
|
|
th:field="${configuration.parametersInConfiguration[__${itemStat.index}__].operator.name}">
|
76 |
|
|
<option th:value="zadny" selected value> -- Operátor --</option>
|
77 |
|
|
<option th:each="operator : ${parameterInConfiguration.parameter.operators}"
|
78 |
|
|
th:text="${operator.name}" th:value="${operator.name}"></option>
|
79 |
|
|
</select>
|
80 |
f38b6ac8
|
cagy
|
<input type="text" class="form-control select-filter-input"
|
81 |
8766d436
|
cagy
|
th:field="${configuration.parametersInConfiguration[__${itemStat.index}__].operatorValue}">
|
82 |
121f8add
|
cagy
|
|
83 |
|
|
<a class="filter-tooltip" href="#" data-toggle="tooltip" data-placement="right" title="Jako oddělovač hodnot použijte ";"">
|
84 |
|
|
<i class="fas fa-info-circle"></i>
|
85 |
|
|
</a>
|
86 |
|
|
|
87 |
8766d436
|
cagy
|
</div>
|
88 |
b7cd226e
|
cagy
|
<div th:if="${configuration.parametersInConfiguration[__${itemStat.index}__].parameter.parameterType.name.equals('Výčet')}" class="col select-filter">
|
89 |
73291c2e
|
cagy
|
<select class="mbSelect selectpicker assembly-enum-picker" multiple data-live-search="true" title="Nic nevybráno" >
|
90 |
|
|
<option th:each="parameterValue : ${configuration.parametersInConfiguration[__${itemStat.index}__].parameter.parameterValues}" th:value="${parameterValue.id}" th:text="${parameterValue.value}">Hodnota 1</option>
|
91 |
b7cd226e
|
cagy
|
</select>
|
92 |
|
|
</div>
|
93 |
cfe48a96
|
cagy
|
</td>
|
94 |
8766d436
|
cagy
|
|
95 |
74db519b
|
cagy
|
<select class="form-control hidden" th:id="'tmp-function-select-' + ${itemStat.index}" multiple>
|
96 |
8766d436
|
cagy
|
<option th:each="function : ${parameterInConfiguration.parameter.functions}"
|
97 |
|
|
th:text="${function.name}" th:value="${{function.id}}"></option>
|
98 |
|
|
</select>
|
99 |
cfe48a96
|
cagy
|
</tr>
|
100 |
|
|
</tbody>
|
101 |
|
|
</table>
|
102 |
|
|
</div>
|
103 |
|
|
|
104 |
8766d436
|
cagy
|
<div class="selected-input-container">
|
105 |
|
|
<div class="selected-input-box">
|
106 |
|
|
<div class="selected-input-box-icon">
|
107 |
10920ea3
|
Vojtěch Danišík
|
<i class="fas fa-align-justify transform"></i>
|
108 |
8766d436
|
cagy
|
</div>
|
109 |
|
|
<table class="table table-parameter">
|
110 |
|
|
<thead>
|
111 |
|
|
<tr>
|
112 |
|
|
<th class="col-1-p"></th>
|
113 |
|
|
<th class="col-2-p">Vlastní název</th>
|
114 |
|
|
<th class="col-3-p"></th>
|
115 |
|
|
</tr>
|
116 |
|
|
</thead>
|
117 |
10920ea3
|
Vojtěch Danišík
|
<tbody id="column-wrapper" class="sortable">
|
118 |
d9b0bac7
|
cagy
|
<tr th:each="parameterInConfiguration, itemStat : ${configuration.parametersInConfiguration}" th:if="${parameterInConfiguration.location.name?.equals('Sloupec')}" class="column-parameter parameter">
|
119 |
|
|
<input type="hidden" th:field="${configuration.parametersInConfiguration[__${itemStat.index}__].location.id}" value="1">
|
120 |
8766d436
|
cagy
|
<input type="hidden" class="parametr-order" th:field="${configuration.parametersInConfiguration[__${itemStat.index}__].parameterOrder}" th:value="${configuration.parametersInConfiguration[__${itemStat.index}__].parameterOrder}">
|
121 |
|
|
<td>
|
122 |
|
|
<span class="parameter-name" th:text="${parameterInConfiguration.parameter.name}"></span>
|
123 |
|
|
</td>
|
124 |
|
|
<td>
|
125 |
|
|
<input th:field="${configuration.parametersInConfiguration[__${itemStat.index}__].columnName}"
|
126 |
|
|
type="text" class="form-control select-filter-input">
|
127 |
|
|
</td>
|
128 |
|
|
<td>
|
129 |
|
|
<span><i class="fas fa-sort"></i></span>
|
130 |
|
|
</td>
|
131 |
|
|
</tr>
|
132 |
|
|
</tbody>
|
133 |
|
|
</table>
|
134 |
|
|
</div>
|
135 |
|
|
|
136 |
|
|
<div class="selected-input-box">
|
137 |
|
|
<div class="selected-input-box-icon">
|
138 |
10920ea3
|
Vojtěch Danišík
|
<i class="fas fa-align-justify"></i>
|
139 |
8766d436
|
cagy
|
</div>
|
140 |
|
|
<table class="table table-parameter">
|
141 |
|
|
<thead>
|
142 |
|
|
<tr>
|
143 |
|
|
<th class="col-1-p"></th>
|
144 |
|
|
<th class="col-2-p">Vlastní název</th>
|
145 |
|
|
<th class="col-3-p"></th>
|
146 |
|
|
</tr>
|
147 |
|
|
</thead>
|
148 |
10920ea3
|
Vojtěch Danišík
|
<tbody id="row-wrapper" class="sortable">
|
149 |
d9b0bac7
|
cagy
|
<tr th:each="parameterInConfiguration, itemStat : ${configuration.parametersInConfiguration}" th:if="${parameterInConfiguration.location.name?.equals('Řádek')}" class="row-parameter parameter">
|
150 |
|
|
<input type="hidden" th:field="${configuration.parametersInConfiguration[__${itemStat.index}__].location.id}" value="2">
|
151 |
8766d436
|
cagy
|
<input type="hidden" class="parametr-order" th:field="${configuration.parametersInConfiguration[__${itemStat.index}__].parameterOrder}" th:value="${configuration.parametersInConfiguration[__${itemStat.index}__].parameterOrder}">
|
152 |
|
|
<td>
|
153 |
|
|
<span class="parameter-name" th:text="${parameterInConfiguration.parameter.name}"></span>
|
154 |
|
|
</td>
|
155 |
|
|
<td>
|
156 |
|
|
<input th:field="${configuration.parametersInConfiguration[__${itemStat.index}__].columnName}"
|
157 |
f38b6ac8
|
cagy
|
type="text" class="form-control select-filter-input">
|
158 |
8766d436
|
cagy
|
</td>
|
159 |
|
|
<td>
|
160 |
|
|
<span><i class="fas fa-sort"></i></span>
|
161 |
|
|
</td>
|
162 |
|
|
</tr>
|
163 |
|
|
</tbody>
|
164 |
|
|
</table>
|
165 |
cfe48a96
|
cagy
|
</div>
|
166 |
|
|
|
167 |
8766d436
|
cagy
|
<div class="selected-input-box">
|
168 |
|
|
<div class="selected-input-box-icon">
|
169 |
|
|
<i class="fas fa-heading"></i>
|
170 |
|
|
</div>
|
171 |
|
|
<table class="table table-parameter">
|
172 |
|
|
<thead>
|
173 |
|
|
<tr>
|
174 |
|
|
<th class="col-1-p"></th>
|
175 |
|
|
<th class="col-2-p">Funkce</th>
|
176 |
|
|
</tr>
|
177 |
|
|
</thead>
|
178 |
|
|
<tbody id="value-wrapper">
|
179 |
d9b0bac7
|
cagy
|
<tr th:each="parameterInConfiguration, itemStat : ${configuration.parametersInConfiguration}" th:if="${parameterInConfiguration.location.name?.equals('Hodnota')}" class="value-parameter parameter">
|
180 |
8766d436
|
cagy
|
<input type="hidden" th:field="${configuration.parametersInConfiguration[__${itemStat.index}__].location.id}" value="3">
|
181 |
|
|
<input type="hidden" class="parametr-order" th:field="${configuration.parametersInConfiguration[__${itemStat.index}__].parameterOrder}" th:value="${configuration.parametersInConfiguration[__${itemStat.index}__].parameterOrder}">
|
182 |
|
|
<td>
|
183 |
|
|
<span class="parameter-name" th:text="${parameterInConfiguration.parameter.name}"></span>
|
184 |
|
|
</td>
|
185 |
|
|
<td>
|
186 |
|
|
<select class="form-control"
|
187 |
|
|
th:field="${configuration.parametersInConfiguration[__${itemStat.index}__].functions}"
|
188 |
|
|
multiple>
|
189 |
|
|
<option th:each="function : ${parameterInConfiguration.parameter.functions}"
|
190 |
cc39413d
|
mlinha
|
th:text="${function.name}" th:value="${function.id}"></option>
|
191 |
8766d436
|
cagy
|
</select>
|
192 |
|
|
</td>
|
193 |
|
|
</tr>
|
194 |
|
|
</tbody>
|
195 |
|
|
</table>
|
196 |
cfe48a96
|
cagy
|
</div>
|
197 |
|
|
</div>
|
198 |
|
|
|
199 |
|
|
|
200 |
8766d436
|
cagy
|
<div class="col-md-12 form-group row template-input">
|
201 |
f38b6ac8
|
cagy
|
<label th:for="${configuration.name}" class="template-input-label">Vlastní název šablony:</label>
|
202 |
8766d436
|
cagy
|
<div class="">
|
203 |
10920ea3
|
Vojtěch Danišík
|
<input type="text" class="form-control select-filter-input" id="configurationName" th:field="${configuration.name}">
|
204 |
8766d436
|
cagy
|
</div>
|
205 |
cfe48a96
|
cagy
|
|
206 |
10920ea3
|
Vojtěch Danišík
|
<button type="submit" class="btn btn-success mb-2 template-input-submit" name="saveConfiguration" onclick="checkIfConfigurationNameIsNull()">Uložit šablonu</button>
|
207 |
8766d436
|
cagy
|
</div>
|
208 |
cfe48a96
|
cagy
|
|
209 |
abc5c3b0
|
cagy
|
<div class="custom-control custom-switch form-group">
|
210 |
b07f6ea7
|
mlinha
|
<input type="checkbox" class="custom-control-input" id="customSwitch1" th:checked="${isNotRemoveEmpty}" name="isNotRemoveEmpty">
|
211 |
abc5c3b0
|
cagy
|
<label class="custom-control-label" for="customSwitch1">Zobrazovat prázdné řádky</label>
|
212 |
|
|
</div>
|
213 |
cfe48a96
|
cagy
|
|
214 |
8766d436
|
cagy
|
<div class="buttons-wrap">
|
215 |
2111fb8f
|
cagy
|
<button type="submit" class="btn btn-primary mb-2 show-spinner" name="generateTable">Vygenerovat tabulku</button>
|
216 |
d90fc9de
|
Vojtěch Danišík
|
<button type="submit" class="btn btn-primary mb-2 show-spinner" name="exportXlsx">Export do XLSX</button>
|
217 |
2111fb8f
|
cagy
|
<button type="submit" class="btn btn-primary mb-2 show-spinner" name="exportPdf">Export do PDF</button>
|
218 |
8766d436
|
cagy
|
</div>
|
219 |
cfe48a96
|
cagy
|
</div>
|
220 |
2868bb9a
|
Vojtěch Danišík
|
</div>
|
221 |
8766d436
|
cagy
|
</form>
|
222 |
cfe48a96
|
cagy
|
|
223 |
|
|
|
224 |
38882a3e
|
cagy
|
<div th:if="${contingencyTableRows}" class="container box exported-table">
|
225 |
8766d436
|
cagy
|
<div class="col-md-12">
|
226 |
abc5c3b0
|
cagy
|
<table class="tg table table-striped">
|
227 |
8766d436
|
cagy
|
<tr th:each="contingencyTableRow : ${contingencyTableRows}">
|
228 |
|
|
<div class="tg-align" th:if="${contingencyTableRow.isHeader()}">
|
229 |
856636e3
|
mlinha
|
<th class="tg-align-center" th:each="contingencyTableRowCell : ${contingencyTableRow.getCells()}" th:colspan="${contingencyTableRowCell.getColSpan()}">
|
230 |
8766d436
|
cagy
|
<span th:text="${contingencyTableRowCell.getValue()}"></span>
|
231 |
|
|
</th>
|
232 |
|
|
</div>
|
233 |
|
|
<div th:unless="${contingencyTableRow.isHeader()}">
|
234 |
856636e3
|
mlinha
|
<optional th:each="contingencyTableRowCell, iterStat : ${contingencyTableRow.getCells()}">
|
235 |
|
|
<td th:if="${iterStat.index == 0}" class="tg-align-left">
|
236 |
|
|
<span class="tg-left-span" th:text="${contingencyTableRowCell?.getValue()}"></span>
|
237 |
|
|
</td>
|
238 |
|
|
<td th:unless="${iterStat.index == 0}" class="tg-align-center">
|
239 |
|
|
<span th:text="${contingencyTableRowCell?.getValue()}"></span>
|
240 |
|
|
</td>
|
241 |
|
|
</optional>
|
242 |
8766d436
|
cagy
|
</div>
|
243 |
|
|
</tr>
|
244 |
|
|
</table>
|
245 |
|
|
</div>
|
246 |
2868bb9a
|
Vojtěch Danišík
|
</div>
|
247 |
cfe48a96
|
cagy
|
</div>
|
248 |
|
|
|
249 |
8766d436
|
cagy
|
<div layout:fragment="scripts">
|
250 |
|
|
<script type="text/javascript" src="js/assemblyScripts.js"></script>
|
251 |
cfe48a96
|
cagy
|
</div>
|
252 |
|
|
|
253 |
|
|
</html>
|