Revize 26c4caa0
Přidáno uživatelem Vojtěch Danišík před více než 4 roky(ů)
src/main/java/vldc/aswi/service/SqlQueryManager.java | ||
---|---|---|
1 | 1 |
package vldc.aswi.service; |
2 | 2 |
|
3 |
import vldc.aswi.domain.Assembly; |
|
4 |
import vldc.aswi.domain.Configuration; |
|
3 |
import vldc.aswi.domain.parameter.ParameterInConfiguration; |
|
5 | 4 |
import vldc.aswi.model.table.contingencyTable.ContingencyTableRow; |
6 | 5 |
|
7 | 6 |
import java.util.List; |
... | ... | |
13 | 12 |
|
14 | 13 |
/** |
15 | 14 |
* Get list of contingencyTableRow. |
16 |
* @param configuration - configuration from which table will be created. |
|
15 |
* @param sqlQuery |
|
16 |
* @param parameterInConfigurations |
|
17 | 17 |
* @return List of contingencyTableRow. |
18 | 18 |
*/ |
19 |
List<ContingencyTableRow> getContingencyTableRow(Configuration configuration);
|
|
19 |
List<ContingencyTableRow> getContingencyTableRow(String sqlQuery, List<ParameterInConfiguration> parameterInConfigurations);
|
|
20 | 20 |
|
21 | 21 |
/** |
22 | 22 |
* Validate given SQL query. |
src/main/java/vldc/aswi/service/SqlQueryManagerImpl.java | ||
---|---|---|
28 | 28 |
/** Autowired databaseInterface component. */ |
29 | 29 |
@Autowired |
30 | 30 |
private DatabaseInterface databaseInterface; |
31 |
|
|
31 |
|
|
32 | 32 |
/** |
33 | 33 |
* Get list of contingencyTableRow. |
34 |
* @param configuration - configuration from which table will be created. |
|
34 |
* @param sqlQuery |
|
35 |
* @param parameterInConfigurations |
|
35 | 36 |
* @return List of contingencyTableRow. |
36 | 37 |
*/ |
37 | 38 |
@Override |
38 |
public List<ContingencyTableRow> getContingencyTableRow(Configuration configuration) {
|
|
39 |
public List<ContingencyTableRow> getContingencyTableRow(String sqlQuery, List<ParameterInConfiguration> parameterInConfigurations) {
|
|
39 | 40 |
long startTime = System.nanoTime(); |
40 |
Map<String, TableColumn> tableColumns = this.databaseInterface.executeQueryAndReturnTableColumns( |
|
41 |
configuration.getAssembly().getSQLQuery() |
|
42 |
); |
|
41 |
Map<String, TableColumn> tableColumns = this.databaseInterface.executeQueryAndReturnTableColumns(sqlQuery); |
|
43 | 42 |
long stopTime = System.nanoTime(); |
44 | 43 |
System.out.println("Select:" + TimeUnit.MILLISECONDS.convert((stopTime - startTime), TimeUnit.NANOSECONDS)); |
45 | 44 |
List<NameUserName> rowNames = new ArrayList<>(); |
46 | 45 |
List<NameUserName> columnNames = new ArrayList<>(); |
47 | 46 |
List<ValueFunction> valueFunctions = new ArrayList<>(); |
48 | 47 |
|
48 |
// Create a copy of list. |
|
49 |
List<ParameterInConfiguration> copiedParametersInConfiguration = new ArrayList<>(parameterInConfigurations); |
|
50 |
|
|
49 | 51 |
// sort parameters in configuration to have them in order set by user |
50 |
Collections.sort(configuration.getParametersInConfiguration());
|
|
52 |
Collections.sort(copiedParametersInConfiguration);
|
|
51 | 53 |
|
52 | 54 |
// TODO: 28.05.2020 map would be better |
53 |
for(ParameterInConfiguration parameterInConfiguration : configuration.getParametersInConfiguration()) {
|
|
55 |
for(ParameterInConfiguration parameterInConfiguration : copiedParametersInConfiguration) {
|
|
54 | 56 |
if (parameterInConfiguration.getLocation() != null && parameterInConfiguration.getLocation().getName().equals("Řádek")) { |
55 | 57 |
rowNames.add(new NameUserName(parameterInConfiguration.getParameter().getNameOfSelect().toUpperCase(), |
56 | 58 |
parameterInConfiguration.getColumnName())); |
src/main/java/vldc/aswi/web/controller/AssemblyController.java | ||
---|---|---|
15 | 15 |
import vldc.aswi.domain.*; |
16 | 16 |
import vldc.aswi.domain.parameter.Parameter; |
17 | 17 |
import vldc.aswi.domain.parameter.ParameterInConfiguration; |
18 |
import vldc.aswi.model.table.contingencyTable.ContingencyTableRow; |
|
18 | 19 |
import vldc.aswi.service.*; |
19 | 20 |
import vldc.aswi.service.parameter.ParameterManager; |
20 | 21 |
import vldc.aswi.service.parameter.ParameterTypeManager; |
... | ... | |
25 | 26 |
import javax.validation.Valid; |
26 | 27 |
import java.util.ArrayList; |
27 | 28 |
import java.util.Comparator; |
29 |
import java.util.List; |
|
28 | 30 |
import java.util.Set; |
29 | 31 |
import java.util.stream.Collectors; |
30 | 32 |
|
... | ... | |
186 | 188 |
|
187 | 189 |
System.out.println("Generuj tabulku"); |
188 | 190 |
prepareForTable(newConfiguration); |
191 |
|
|
192 |
List<ContingencyTableRow> rows = this.sqlQueryManager.getContingencyTableRow(newConfiguration.getAssembly().getSQLQuery(), |
|
193 |
newConfiguration.getParametersInConfiguration()); |
|
194 |
|
|
189 | 195 |
System.out.println("Generuj tabulku"); |
190 | 196 |
ModelMap modelMap = modelAndView.getModelMap(); |
191 | 197 |
modelMap.addAttribute("configurationID", id); |
192 |
modelMap.addAttribute("contingencyTableRows", this.sqlQueryManager.getContingencyTableRow(newConfiguration));
|
|
198 |
modelMap.addAttribute("contingencyTableRows", rows);
|
|
193 | 199 |
Comparator<ParameterInConfiguration> comparator = Comparator.comparingInt(o -> o.getParameter().getParameterOrder()); |
194 | 200 |
initializeFields(newConfiguration); |
195 | 201 |
|
src/main/java/vldc/aswi/web/controller/ConfigurationController.java | ||
---|---|---|
12 | 12 |
import vldc.aswi.domain.Location; |
13 | 13 |
import vldc.aswi.domain.Operator; |
14 | 14 |
import vldc.aswi.domain.parameter.ParameterInConfiguration; |
15 |
import vldc.aswi.model.table.contingencyTable.ContingencyTableRow; |
|
15 | 16 |
import vldc.aswi.service.AssemblyManager; |
16 | 17 |
import vldc.aswi.service.ConfigurationManager; |
17 | 18 |
import vldc.aswi.service.LocationManager; |
... | ... | |
119 | 120 |
{ |
120 | 121 |
prepareForTable(newConfiguration); |
121 | 122 |
System.out.println("Generuj tabulku"); |
123 |
|
|
124 |
List<ContingencyTableRow> rows = this.sqlQueryManager.getContingencyTableRow(newConfiguration.getAssembly().getSQLQuery(), |
|
125 |
newConfiguration.getParametersInConfiguration()); |
|
126 |
|
|
122 | 127 |
modelMap.addAttribute("configurationID", id); |
123 |
modelMap.addAttribute("contingencyTableRows", this.sqlQueryManager.getContingencyTableRow(newConfiguration));
|
|
128 |
modelMap.addAttribute("contingencyTableRows", rows);
|
|
124 | 129 |
Comparator<ParameterInConfiguration> comparator = Comparator.comparingInt(o -> o.getParameter().getParameterOrder()); |
125 | 130 |
initializeFields(newConfiguration); |
126 | 131 |
modelMap.addAttribute("configuration", newConfiguration); |
Také k dispozici: Unified diff
re #8101 Bad saving changes for configuration.