Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
-
dc95c50b
by Tony Chemit at 2023-11-13T12:19:19+01:00
2 changed files:
- core/persistence/avdth/src/main/java/fr/ird/observe/persistence/avdth/data/ImportReferentialContext.java
- core/persistence/avdth/src/main/java/fr/ird/observe/persistence/avdth/referential/interceptors/VesselActivityInterceptor.java
Changes:
| ... | ... | @@ -539,7 +539,7 @@ public class ImportReferentialContext { |
| 539 | 539 | }
|
| 540 | 540 | |
| 541 | 541 | public VesselActivity getVesselActivity(String code) {
|
| 542 | - String observeVesselActivityCode = VesselActivityInterceptor.CODE_MAPPING.get(code);
|
|
| 542 | + String observeVesselActivityCode = VesselActivityInterceptor.getObserveCode(code);
|
|
| 543 | 543 | VesselActivity result = vesselActivity.get(observeVesselActivityCode);
|
| 544 | 544 | return Objects.requireNonNull(result, String.format("Can't find vessel activity wth code: %s", code));
|
| 545 | 545 | }
|
| ... | ... | @@ -122,14 +122,32 @@ public class VesselActivityInterceptor extends ReferentialInterceptor<VesselActi |
| 122 | 122 | }
|
| 123 | 123 | }
|
| 124 | 124 | |
| 125 | + /**
|
|
| 126 | + * See <a href="https://gitlab.com/ultreiaio/ird-observe/-/issues/2803">2803</a>
|
|
| 127 | + *
|
|
| 128 | + * @param code the avdth code
|
|
| 129 | + * @return the observe code
|
|
| 130 | + */
|
|
| 131 | + public static String getObserveCode(String code) {
|
|
| 132 | + String realCode = CODE_MAPPING.get(code);
|
|
| 133 | + if (realCode == null) {
|
|
| 134 | + // See https://gitlab.com/ultreiaio/ird-observe/-/issues/2803
|
|
| 135 | + int codeAsInteger = Integer.parseInt(code);
|
|
| 136 | + if (codeAsInteger >= 52) {
|
|
| 137 | + realCode = code;
|
|
| 138 | + }
|
|
| 139 | + }
|
|
| 140 | + return Objects.requireNonNull(realCode, String.format("Can't find vessel activity wth code: %s", code));
|
|
| 141 | + }
|
|
| 142 | + |
|
| 125 | 143 | public VesselActivityInterceptor(AvdthReferentialImportContext context) {
|
| 126 | 144 | super(context, VesselActivity.SPI);
|
| 127 | 145 | }
|
| 128 | 146 | |
| 129 | 147 | @Override
|
| 130 | 148 | protected VesselActivity read(Map<String, VesselActivity> existingIndex, String code) {
|
| 131 | - String realCode = CODE_MAPPING.get(code);
|
|
| 132 | - VesselActivity entity = super.read(existingIndex, Objects.requireNonNull(realCode));
|
|
| 149 | + String realCode = getObserveCode(code);
|
|
| 150 | + VesselActivity entity = super.read(existingIndex, realCode);
|
|
| 133 | 151 | entity.setCode(code);
|
| 134 | 152 | return entity;
|
| 135 | 153 | }
|