| ... |
... |
@@ -220,36 +220,71 @@ public class NonTargetSampleUIHandler extends AbstractSampleUIHandler<NonTargetS |
|
220
|
220
|
|
|
221
|
221
|
SpeciesReference species = bean.getSpecies();
|
|
222
|
222
|
log.debug(prefix + "selected species " + species);
|
|
223
|
|
- List<SpeciesReference> availableEspeces;
|
|
|
223
|
+ List<SpeciesReference> availableSpecies;
|
|
224
|
224
|
JComponent requestFocus;
|
|
225
|
|
- Optional<SizeMeasureTypeReference> sizeMeasureType;
|
|
|
225
|
+ Optional<SizeMeasureTypeReference> sizeMeasureType = Optional.empty();
|
|
226
|
226
|
|
|
227
|
227
|
if (create) {
|
|
|
228
|
+
|
|
|
229
|
+ Optional<SizeMeasureTypeReference> defaultSizeMeasureType;
|
|
|
230
|
+
|
|
|
231
|
+ boolean unsetSpecies = true;
|
|
228
|
232
|
if (model.isCreate()) {
|
|
|
233
|
+
|
|
229
|
234
|
// on passe le mode de saisie en count
|
|
230
|
|
- ui.getAcquisitionModeGroup().setSelectedValue(null);
|
|
231
|
|
- ui.getAcquisitionModeGroup().setSelectedValue(AcquisitionMode.byEffectif);
|
|
|
235
|
+ AcquisitionMode acquisitionMode = AcquisitionMode.byEffectif;
|
|
|
236
|
+
|
|
|
237
|
+ if (editingRow > 0) {
|
|
|
238
|
+ unsetSpecies = false;
|
|
|
239
|
+ // get previous row
|
|
|
240
|
+ NonTargetLengthDto editBean = model.getValueAt(editingRow - 1);
|
|
|
241
|
+ // get previous species
|
|
|
242
|
+ species = editBean.getSpecies();
|
|
|
243
|
+ // get previous acquisition mode
|
|
|
244
|
+ acquisitionMode = AcquisitionMode.valueOf(editBean.getAcquisitionMode());
|
|
|
245
|
+ // get previous size measure type
|
|
|
246
|
+ sizeMeasureType = Optional.ofNullable(editBean.getSizeMeasureType());
|
|
|
247
|
+ }
|
|
|
248
|
+
|
|
|
249
|
+ updateAcquisitionMode0(acquisitionMode);
|
|
|
250
|
+
|
|
232
|
251
|
}
|
|
233
|
|
- availableEspeces = getModel().getReferenceCache().getReferentialReferences(NonTargetLengthDto.PROPERTY_SPECIES);
|
|
234
|
|
- // on utilise le code par defaut de l'espèce
|
|
235
|
|
- sizeMeasureType = getSpeciesDefaultSizeMeasureType(species);
|
|
236
|
|
- ui.getModel().setDefaultSizeMeasureType(sizeMeasureType.orElse(null));
|
|
237
|
|
- requestFocus = ui.getSpecies();
|
|
|
252
|
+
|
|
|
253
|
+ availableSpecies = getModel().getReferenceCache().getReferentialReferences(NonTargetLengthDto.PROPERTY_SPECIES);
|
|
|
254
|
+
|
|
|
255
|
+ // get default size measure type
|
|
|
256
|
+ defaultSizeMeasureType = getSpeciesDefaultSizeMeasureType(species);
|
|
|
257
|
+
|
|
|
258
|
+ if (unsetSpecies) {
|
|
|
259
|
+ // unset species (this will not set again species in widget)
|
|
|
260
|
+ species = null;
|
|
|
261
|
+ sizeMeasureType = defaultSizeMeasureType;
|
|
|
262
|
+ requestFocus = ui.getSpecies();
|
|
|
263
|
+ } else {
|
|
|
264
|
+ requestFocus = ui.getLength();
|
|
|
265
|
+ }
|
|
|
266
|
+
|
|
|
267
|
+ // use default size measure type
|
|
|
268
|
+ ui.getModel().setDefaultSizeMeasureType(defaultSizeMeasureType.orElse(null));
|
|
|
269
|
+
|
|
238
|
270
|
} else {
|
|
239
|
271
|
requestFocus = ui.getCount();
|
|
240
|
|
- // on passe le mode de saisie
|
|
241
|
|
- int acquisitionMode = bean.getAcquisitionMode();
|
|
242
|
|
- AcquisitionMode enumValue = AcquisitionMode.valueOf(acquisitionMode);
|
|
243
|
|
- ui.getAcquisitionModeGroup().setSelectedValue(null);
|
|
244
|
|
- ui.getAcquisitionModeGroup().setSelectedValue(enumValue);
|
|
245
|
|
- availableEspeces = Collections.singletonList(species);
|
|
|
272
|
+ updateAcquisitionMode0(AcquisitionMode.valueOf(bean.getAcquisitionMode()));
|
|
|
273
|
+ availableSpecies = Collections.singletonList(species);
|
|
|
274
|
+ species = null;
|
|
246
|
275
|
sizeMeasureType = Optional.ofNullable(bean.getSizeMeasureType());
|
|
247
|
276
|
}
|
|
248
|
277
|
|
|
249
|
278
|
ui.getSizeMeasureType().setSelectedItem(null);
|
|
250
|
|
- sizeMeasureType.ifPresent(sizeMeasureTypeDtoReferentialReference -> ui.getSizeMeasureType().setSelectedItem(sizeMeasureTypeDtoReferentialReference));
|
|
|
279
|
+ sizeMeasureType.ifPresent(ui.getSizeMeasureType()::setSelectedItem);
|
|
|
280
|
+
|
|
|
281
|
+ ui.getSpecies().setData(availableSpecies);
|
|
|
282
|
+ if (species != null) {
|
|
|
283
|
+ log.info(String.format("Will set species : %s", species));
|
|
|
284
|
+ ui.getSpecies().setSelectedItem(null);
|
|
|
285
|
+ ui.getSpecies().setSelectedItem(species);
|
|
|
286
|
+ }
|
|
251
|
287
|
|
|
252
|
|
- ui.getSpecies().setData(availableEspeces);
|
|
253
|
288
|
setFormFocusOwner(requestFocus);
|
|
254
|
289
|
|
|
255
|
290
|
tableEditBean.addPropertyChangeListener(NonTargetLengthDto.PROPERTY_WEIGHT, weightChanged);
|
| ... |
... |
@@ -382,6 +417,10 @@ public class NonTargetSampleUIHandler extends AbstractSampleUIHandler<NonTargetS |
|
382
|
417
|
}
|
|
383
|
418
|
}
|
|
384
|
419
|
|
|
|
420
|
+ private void updateAcquisitionMode0(AcquisitionMode acquisitionMode) {
|
|
|
421
|
+ ui.getAcquisitionModeGroup().setSelectedValue(null);
|
|
|
422
|
+ ui.getAcquisitionModeGroup().setSelectedValue(acquisitionMode);
|
|
|
423
|
+ }
|
|
385
|
424
|
|
|
386
|
425
|
}
|
|
387
|
426
|
|