| ... |
... |
@@ -28,7 +28,7 @@ import fr.ird.observe.persistence.ObserveEntityEnum; |
|
28
|
28
|
import fr.ird.observe.services.binder.BinderEngine;
|
|
29
|
29
|
import fr.ird.observe.services.binder.referential.ReferentialBinderSupport;
|
|
30
|
30
|
import fr.ird.observe.services.dto.reference.ReferentialReference;
|
|
31
|
|
-import fr.ird.observe.services.dto.referential.ReferentialDto;
|
|
|
31
|
+import fr.ird.observe.services.dto.referential.*;
|
|
32
|
32
|
import fr.ird.observe.services.service.LastUpdateDateService;
|
|
33
|
33
|
import fr.ird.observe.services.service.actions.synchro.referential.legacy.UnidirectionalReferentialSynchronizeLocalService;
|
|
34
|
34
|
import fr.ird.observe.services.service.actions.synchro.referential.legacy.UnidirectionalReferentialSynchronizeRequest;
|
| ... |
... |
@@ -145,8 +145,30 @@ public class UnidirectionalReferentialSynchronizeLocalServiceTopia extends Obser |
|
145
|
145
|
|
|
146
|
146
|
DeleteSqlStatementGenerator sqlStatementGenerator = new DeleteSqlStatementGenerator(metadataEntity);
|
|
147
|
147
|
for (String id : request.getReferentialToRemove()) {
|
|
148
|
|
- String sql = sqlStatementGenerator.generateSql(id);
|
|
149
|
|
- result.add(sql);
|
|
|
148
|
+ if (SpeciesDto.class.equals(request.getReferentialName())) {
|
|
|
149
|
+
|
|
|
150
|
+ // also remove ocean_species association
|
|
|
151
|
+ result.add(sqlStatementGenerator.generateAssociationSql("ocean_species","species", id));
|
|
|
152
|
+
|
|
|
153
|
+ // also remove species_specieslist association
|
|
|
154
|
+ result.add(sqlStatementGenerator.generateAssociationSql("species_specieslist","species", id));
|
|
|
155
|
+ }
|
|
|
156
|
+ if (OceanDto.class.equals(request.getReferentialName())) {
|
|
|
157
|
+
|
|
|
158
|
+ // also remove ocean_species association
|
|
|
159
|
+ result.add(sqlStatementGenerator.generateAssociationSql("ocean_species","ocean", id));
|
|
|
160
|
+ }
|
|
|
161
|
+ if (GearDto.class.equals(request.getReferentialName())) {
|
|
|
162
|
+
|
|
|
163
|
+ // also remove gear_gearcaracteristic association
|
|
|
164
|
+ result.add(sqlStatementGenerator.generateAssociationSql("gear_gearcaracteristic","gear", id));
|
|
|
165
|
+ }
|
|
|
166
|
+ if (GearCaracteristicDto.class.equals(request.getReferentialName())) {
|
|
|
167
|
+
|
|
|
168
|
+ // also remove gear_gearcaracteristic association
|
|
|
169
|
+ result.add(sqlStatementGenerator.generateAssociationSql("gear_gearcaracteristic","gearcaracteristic", id));
|
|
|
170
|
+ }
|
|
|
171
|
+ result.add(sqlStatementGenerator.generateSql(id));
|
|
150
|
172
|
}
|
|
151
|
173
|
|
|
152
|
174
|
}
|