Skip to content

Commit a0ee4ca

Browse files
committed
[26983] remove ElexisEventDispatcher from GlobalActions
1 parent e6ad55a commit a0ee4ca

7 files changed

Lines changed: 114 additions & 116 deletions

File tree

bundles/ch.elexis.core.data/src/ch/elexis/core/data/events/CoreElexisClassToModelInterfaceContribution.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,9 @@
2020
import ch.elexis.core.model.IPerson;
2121
import ch.elexis.core.model.IPrescription;
2222
import ch.elexis.core.model.IReminder;
23+
import ch.elexis.core.model.ISickCertificate;
2324
import ch.elexis.core.model.IUser;
25+
import ch.elexis.data.AUF;
2426
import ch.elexis.data.AccountTransaction;
2527
import ch.elexis.data.Anwender;
2628
import ch.elexis.data.Brief;
@@ -81,6 +83,8 @@ public Optional<Class<?>> getCoreModelInterfaceForElexisClass(Class<?> elexisCla
8183
return Optional.of(IOrganization.class);
8284
} else if (elexisClazz == Labor.class) {
8385
return Optional.of(ILaboratory.class);
86+
} else if (elexisClazz == AUF.class) {
87+
return Optional.of(ISickCertificate.class);
8488
}
8589
return Optional.empty();
8690
}

bundles/ch.elexis.core.services/src/ch/elexis/core/services/CoverageService.java

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,9 @@
1616
import ch.elexis.core.model.IContact;
1717
import ch.elexis.core.model.ICoverage;
1818
import ch.elexis.core.model.IEncounter;
19+
import ch.elexis.core.model.IInvoice;
1920
import ch.elexis.core.model.IPatient;
21+
import ch.elexis.core.model.ISickCertificate;
2022
import ch.elexis.core.model.ModelPackage;
2123
import ch.elexis.core.model.builder.ICoverageBuilder;
2224
import ch.elexis.core.model.ch.BillingLaw;
@@ -302,4 +304,17 @@ public Optional<ICoverage> getCoverageWithLaw(IPatient patient, BillingLaw... la
302304
}
303305
return Optional.ofNullable(bestMatch);
304306
}
307+
308+
@Override
309+
public boolean canDelete(ICoverage element) {
310+
if (element != null) {
311+
IQuery<ISickCertificate> sickCertQuery = CoreModelServiceHolder.get().getQuery(ISickCertificate.class)
312+
.and("fall", COMPARATOR.EQUALS, element);
313+
IQuery<IInvoice> invoiceQuery = CoreModelServiceHolder.get().getQuery(IInvoice.class)
314+
.and("fall", COMPARATOR.EQUALS, element);
315+
return element.getEncounters().isEmpty() && sickCertQuery.execute().isEmpty()
316+
&& invoiceQuery.execute().isEmpty();
317+
}
318+
return false;
319+
}
305320
}

bundles/ch.elexis.core.services/src/ch/elexis/core/services/EncounterService.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -425,4 +425,12 @@ public Result<IEncounter> setEncounterDate(IEncounter encounter, LocalDate newDa
425425
}
426426
return ret;
427427
}
428+
429+
@Override
430+
public boolean canDelete(IEncounter element) {
431+
if (element != null) {
432+
return element.getBilled().isEmpty() && element.getDiagnoses().isEmpty();
433+
}
434+
return false;
435+
}
428436
}

0 commit comments

Comments
 (0)