Revize 15c7afbe
Přidáno uživatelem Vojtěch Danišík před téměř 4 roky(ů)
src/main/java/vldc/aswi/service/parameter/ParameterManagerImpl.java | ||
---|---|---|
102 | 102 |
* @param parameterValuesList - Parameter values. |
103 | 103 |
*/ |
104 | 104 |
@Override |
105 |
public void addParameters(Long assemblyId, List<Parameter> parameterValuesList) {
|
|
105 |
public ArrayList<Parameter> addParameters(Long assemblyId, List<Parameter> parameterValuesList) {
|
|
106 | 106 |
Assembly assembly = this.assemblyRepository.getById(assemblyId); |
107 |
if (parameterValuesList == null) return;
|
|
107 |
ArrayList<Parameter> newParameters = new ArrayList<>();
|
|
108 | 108 |
|
109 | 109 |
for (Parameter parameterValues : parameterValuesList) { |
110 | 110 |
// Create new parameter and assign him all values. |
... | ... | |
159 | 159 |
parameter.setOperators(operatorList); |
160 | 160 |
|
161 | 161 |
// Insert parameter into database. |
162 |
this.parameterRepository.save(parameter); |
|
162 |
Parameter newParameter = this.parameterRepository.save(parameter); |
|
163 |
newParameters.add(newParameter); |
|
163 | 164 |
} |
165 |
return newParameters; |
|
164 | 166 |
} |
165 | 167 |
|
166 | 168 |
/** |
... | ... | |
193 | 195 |
newAssemblyParametersUpdated.retainAll(currentAssemblyParametersUpdated); |
194 | 196 |
|
195 | 197 |
// If no parameter has been deleted or added, then updating is unnecessary. |
196 |
if (newAssemblyParametersNew.size() == 0 && currentAssemblyParametersDeleted.size() == 0 && newAssemblyParametersUpdated.size() == 0) |
|
198 |
if (newAssemblyParametersNew.size() == 0 && currentAssemblyParametersDeleted.size() == 0 && newAssemblyParametersUpdated.size() == 0) {
|
|
197 | 199 |
return; |
200 |
} |
|
198 | 201 |
|
199 |
// Remove deleted parameters. |
|
200 |
for (Parameter parameterWithValues : currentAssemblyParametersDeleted) { |
|
201 |
deleteParameter(parameterWithValues.getId()); |
|
202 |
if (currentAssemblyParametersDeleted.size() > 0) { |
|
203 |
// Remove deleted parameters. |
|
204 |
for (Parameter parameterWithValues : currentAssemblyParametersDeleted) { |
|
205 |
deleteParameter(parameterWithValues.getId()); |
|
206 |
} |
|
202 | 207 |
} |
203 | 208 |
|
204 |
// Update rest parameters. |
|
205 |
updateParameters(newAssemblyParametersUpdated); |
|
209 |
if (newAssemblyParametersUpdated.size() > 0) { |
|
210 |
// Update rest parameters. |
|
211 |
updateParameters(newAssemblyParametersUpdated); |
|
212 |
} |
|
213 |
|
|
214 |
if (newAssemblyParametersNew.size() > 0) { |
|
215 |
// Add new parameters. |
|
216 |
ArrayList<Parameter> newParameters = addParameters(assemblyId, newAssemblyParametersNew); |
|
217 |
|
|
218 |
// Create new parameters in configuration in all configurations, which are created from current assembly. |
|
219 |
this.parameterInConfigurationManager.addParameterIntoConfigurations(assemblyId, newParameters); |
|
220 |
} |
|
206 | 221 |
|
207 |
// Add new parameters
|
|
208 |
addParameters(assemblyId, newAssemblyParametersNew);
|
|
222 |
List<Parameter> newParameters = this.parameterRepository.getByAssemblyId(assemblyId);
|
|
223 |
assembly.setParameters(newParameters);
|
|
209 | 224 |
|
210 |
assembly.setParameters(this.parameterRepository.getByAssemblyId(assemblyId));
|
|
225 |
this.parameterInConfigurationManager.updateParameterInConfigurationsOrder(newParameters);
|
|
211 | 226 |
} |
212 | 227 |
} |
213 | 228 |
|
Také k dispozici: Unified diff
re #8153 Assembly -> Configuration synchronization