Commit fe24708c authored by Thomas Huster's avatar Thomas Huster

Merge remote-tracking branch 'origin/master' into f11106

Conflicts:
	bundles/ch.elexis.core.ui.medication/src/ch/elexis/core/ui/medication/views/MedicationComposite.java
	bundles/ch.elexis.core.ui.medication/src/ch/elexis/core/ui/medication/views/MedicationViewHelper.java
	bundles/ch.elexis.core.ui/src/ch/elexis/core/ui/views/controls/StickerComposite.java
	features/ch.elexis.core.application.feature/feature.xml
parents d71ccfe8 92de6f3f
Pipeline #11284 passed with stages
in 4 minutes and 30 seconds
......@@ -250,6 +250,17 @@ public class Artikel extends VerrechenbarAdapter implements IArticle {
set(FLD_EAN, ean);
}
public boolean isVaccination(){
String atcCode = getATC_code();
if (atcCode != null && atcCode.length() > 4) {
if (atcCode.toUpperCase().startsWith("J07")
&& !atcCode.toUpperCase().startsWith("J07AX")) {
return true;
}
}
return false;
}
public String getATC_code(){
String ATC_code = get(FLD_ATC_CODE);
return ATC_code;
......
......@@ -114,8 +114,7 @@ public class Konsultation extends PersistentObject implements Comparable<Konsult
adjusters.add((IVerrechenbarAdjuster) o);
}
} catch (CoreException e) {
// just log the failed instantiation
ExHandler.handle(e);
log.warn("{} [{}]", e.getMessage(), elem.toString());
}
}
}
......
package ch.elexis.data;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import org.apache.commons.lang.StringUtils;
import org.slf4j.LoggerFactory;
import ch.elexis.core.data.events.ElexisEventDispatcher;
import ch.rgw.tools.JdbcLink;
import ch.rgw.tools.JdbcLink.Stm;
import ch.rgw.tools.net.NetTool;
/**
......@@ -32,14 +35,20 @@ public class Trace {
String _action = (StringUtils.isEmpty(action)) ? "" : action;
JdbcLink connection = PersistentObject.getConnection();
Stm statement = connection.getStatement();
String insertStatement = "INSERT INTO " + TABLENAME + " VALUES(?, ?, ?, ?)";
PreparedStatement statement = connection.getPreparedStatement(insertStatement);
try {
statement.exec("INSERT INTO " + TABLENAME + " VALUES("
+ Long.toString(System.currentTimeMillis()) + ", "
+ connection.wrapFlavored(_workstation) + ", " + connection.wrapFlavored(_username)
+ ", " + connection.wrapFlavored(_action) + ")");
statement.setString(1, Long.toString(System.currentTimeMillis()));
statement.setString(2, _workstation);
statement.setString(3, _username);
statement.setString(4, _action);
statement.execute();
} catch (SQLException e) {
LoggerFactory.getLogger(Trace.class).error("Catched this - FIX IT", e);
} finally {
connection.releaseStatement(statement);
connection.releasePreparedStatement(statement);
}
}
......
......@@ -333,4 +333,15 @@ public class TypedArticle extends AbstractIdDeleteModelAdapter<ch.elexis.core.jp
public String getLabel(){
return getName();
}
@Override
public boolean isVaccination() {
String atcCode = getAtcCode();
if (atcCode != null && atcCode.length() > 4) {
if (atcCode.toUpperCase().startsWith("J07") && !atcCode.toUpperCase().startsWith("J07AX")) {
return true;
}
}
return false;
}
}
......@@ -1020,10 +1020,6 @@ public class MedicationComposite extends Composite
this.parentShell = parentShell;
}
private boolean isVaccination(IArticle article){
return article.getAtcCode().startsWith("J07");
}
@Override
public void dropped(List<Object> list, DropTargetEvent e){
for (Object object : list) {
......@@ -1056,6 +1052,10 @@ public class MedicationComposite extends Composite
}
}
private boolean isVaccination(IArticle article){
return article.isVaccination();
}
@Override
public boolean accept(List<Object> list){
for (Object object : list) {
......
......@@ -128,7 +128,7 @@ public class MedicationViewHelper {
List<IPrescription> result = new ArrayList<>();
for (IPrescription p : tmpPrescs) {
if (p.getArticle() != null && p.getArticle().getAtcCode() != null) {
if (p.getArticle().getAtcCode().toUpperCase().startsWith("J07")) {
if (p.getArticle().isVaccination()) {
continue;
}
}
......
......@@ -10,6 +10,7 @@ import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.handlers.HandlerUtil;
import ch.elexis.core.data.activator.CoreHub;
import ch.elexis.core.data.events.ElexisEvent;
import ch.elexis.core.data.events.ElexisEventDispatcher;
import ch.elexis.core.ui.views.textsystem.TextTemplateView;
import ch.elexis.core.ui.views.textsystem.model.TextTemplate;
......@@ -45,7 +46,8 @@ public class CreateMandantTemplateCommand extends AbstractHandler {
new TextTemplate(specTemplate.getBetreff(), "", specTemplate.getMimeType());
specTextTemplate.addFormTemplateReference(specTemplate);
refreshTextTemplateView(specTextTemplate);
ElexisEventDispatcher.getInstance().fire(new ElexisEvent(Brief.class, null,
ElexisEvent.EVENT_RELOAD, ElexisEvent.PRIORITY_NORMAL));
}
}
return null;
......
......@@ -17,7 +17,6 @@ import org.eclipse.ui.handlers.HandlerUtil;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import ch.elexis.core.constants.StringConstants;
import ch.elexis.core.data.activator.CoreHub;
import ch.elexis.core.data.events.ElexisEvent;
import ch.elexis.core.data.events.ElexisEventDispatcher;
......@@ -27,7 +26,6 @@ import ch.elexis.core.ui.text.MimeTypeUtil;
import ch.elexis.core.ui.views.textsystem.TextTemplateView;
import ch.elexis.core.ui.views.textsystem.model.TextTemplate;
import ch.elexis.data.Brief;
import ch.elexis.data.Query;
import ch.rgw.tools.ExHandler;
public class ImportSelectedTemplateCommand extends AbstractHandler {
......@@ -71,16 +69,16 @@ public class ImportSelectedTemplateCommand extends AbstractHandler {
fis.read(contentToStore);
fis.close();
List<Brief> existing = findExistingEquivalentTemplates(
List<Brief> existing = TextTemplate.findExistingTemplates(
textTemplate.isSystemTemplate(),
textTemplate.getName(),
textTemplate.getName(), (String) null,
textTemplate.getMandant() != null ? textTemplate.getMandant().getId() : "");
if(!existing.isEmpty()) {
if (MessageDialog.openQuestion(HandlerUtil.getActiveShell(event),
"Vorlagen existieren",
String.format(
"Sollen die existierenden %s Vorlagen überschrieben werden?",
textTemplate.getName()))) {
"Sollen die (%d) existierenden %s Vorlagen überschrieben werden?",
existing.size(), textTemplate.getName()))) {
for (Brief brief : existing) {
brief.delete();
}
......@@ -120,23 +118,4 @@ public class ImportSelectedTemplateCommand extends AbstractHandler {
}
return null;
}
private List<Brief> findExistingEquivalentTemplates(boolean isSysTemplate, String name, String mandantId){
Query<Brief> qbe = new Query<Brief>(Brief.class);
qbe.add(Brief.FLD_SUBJECT, Query.EQUALS, name);
qbe.add(Brief.FLD_TYPE, Query.EQUALS, Brief.TEMPLATE);
// treat as system template
if (isSysTemplate) {
qbe.startGroup();
qbe.addToken(Brief.FLD_DESTINATION_ID + " is NULL");
qbe.or();
qbe.add(Brief.FLD_DESTINATION_ID, Query.EQUALS, StringConstants.EMPTY);
qbe.endGroup();
} else {
qbe.add(Brief.FLD_DESTINATION_ID, Query.EQUALS, mandantId);
}
return qbe.execute();
}
}
......@@ -15,7 +15,6 @@ import org.eclipse.ui.PlatformUI;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import ch.elexis.core.constants.StringConstants;
import ch.elexis.core.data.activator.CoreHub;
import ch.elexis.core.data.events.ElexisEvent;
import ch.elexis.core.data.events.ElexisEventDispatcher;
......@@ -27,7 +26,6 @@ import ch.elexis.core.ui.views.textsystem.TextTemplateView;
import ch.elexis.core.ui.views.textsystem.model.TextTemplate;
import ch.elexis.data.Brief;
import ch.elexis.data.Mandant;
import ch.elexis.data.Query;
import ch.rgw.tools.ExHandler;
public class ImportTemplatesCommand extends AbstractHandler {
......@@ -75,7 +73,8 @@ public class ImportTemplatesCommand extends AbstractHandler {
// check existence of same template
List<Brief> equivalentTemplates =
findExistingEquivalentTemplates(sysTemplate != null, name, mimeType);
TextTemplate.findExistingTemplates(sysTemplate != null, name, mimeType,
mandantId);
boolean replaceExisting = false;
if (equivalentTemplates != null && !equivalentTemplates.isEmpty()) {
TextTemplateImportConflictDialog ttiConflictDialog =
......@@ -148,26 +147,4 @@ public class ImportTemplatesCommand extends AbstractHandler {
}
return null;
}
private List<Brief> findExistingEquivalentTemplates(boolean isSysTemplate, String name,
String mimeType){
Query<Brief> qbe = new Query<Brief>(Brief.class);
qbe.add(Brief.FLD_SUBJECT, Query.EQUALS, name);
qbe.add(Brief.FLD_MIME_TYPE, Query.EQUALS, mimeType);
qbe.add(Brief.FLD_TYPE, Query.EQUALS, Brief.TEMPLATE);
// treat as system template
if (isSysTemplate) {
qbe.startGroup();
qbe.addToken(Brief.FLD_DESTINATION_ID + " is NULL");
qbe.or();
qbe.add(Brief.FLD_DESTINATION_ID, Query.EQUALS, StringConstants.EMPTY);
qbe.endGroup();
} else {
// treat as form template
qbe.add(Brief.FLD_DESTINATION_ID, Query.EQUALS, mandantId);
}
return qbe.execute();
}
}
......@@ -60,9 +60,9 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import ch.elexis.core.constants.Preferences;
import ch.elexis.core.constants.StringConstants;
import ch.elexis.core.data.activator.CoreHub;
import ch.elexis.core.data.constants.ExtensionPointConstantsData;
import ch.elexis.core.data.events.ElexisEvent;
import ch.elexis.core.data.events.ElexisEventDispatcher;
import ch.elexis.core.data.interfaces.IPersistentObject;
import ch.elexis.core.data.interfaces.text.ITextResolver;
......@@ -79,6 +79,7 @@ import ch.elexis.core.ui.dialogs.DocumentSelectDialog;
import ch.elexis.core.ui.dialogs.KontaktSelektor;
import ch.elexis.core.ui.preferences.TextTemplatePreferences;
import ch.elexis.core.ui.util.SWTHelper;
import ch.elexis.core.ui.views.textsystem.model.TextTemplate;
import ch.elexis.data.Brief;
import ch.elexis.data.Fall;
import ch.elexis.data.Konsultation;
......@@ -180,21 +181,9 @@ public class TextContainer {
}
private Brief loadTemplate(String name){
Query<Brief> qbe = new Query<Brief>(Brief.class);
qbe.add(Brief.FLD_TYPE, Query.EQUALS, Brief.TEMPLATE);
qbe.and();
qbe.add(Brief.FLD_SUBJECT, Query.EQUALS, name);
qbe.startGroup();
qbe.add(Brief.FLD_DESTINATION_ID, Query.EQUALS, CoreHub.actMandant.getId());
qbe.or();
qbe.add(Brief.FLD_DESTINATION_ID, Query.EQUALS, StringTool.leer);
qbe.endGroup();
List<Brief> list = qbe.execute();
if ((list == null) || (list.size() == 0)) {
return null;
}
Brief template = list.get(0);
return template;
Mandant mandator = ElexisEventDispatcher.getSelectedMandator();
return TextTemplate.findExistingTemplate(name,
(mandator != null ? mandator.getId() : null));
}
/**
......@@ -960,6 +949,8 @@ public class TextContainer {
// set sticker for this template if not to ask for addressee
DocumentSelectDialog.setDontAskForAddresseeForThisTemplate(brief,
std.dontShowAddresseeSelection);
ElexisEventDispatcher.getInstance()
.fire(new ElexisEvent(null, Brief.class, ElexisEvent.EVENT_RELOAD));
}
}
......@@ -1105,25 +1096,12 @@ public class TextContainer {
selectedMand = lMands.get(i - 1);
}
}
Query<Brief> qbe = new Query<Brief>(Brief.class);
qbe.add(Brief.FLD_TYPE, Query.EQUALS, Brief.TEMPLATE);
if (selectedMand != null) {
qbe.startGroup();
qbe.add(Brief.FLD_DESTINATION_ID, Query.EQUALS, selectedMand.getId());
qbe.or();
qbe.add(Brief.FLD_DESTINATION_ID, Query.EQUALS, StringTool.leer);
qbe.endGroup();
qbe.and();
}
qbe.add(Brief.FLD_GELOESCHT, Query.NOT_EQUAL, StringConstants.ONE);
qbe.add(Brief.FLD_SUBJECT, Query.EQUALS, title);
List<Brief> l = qbe.execute();
if (l.size() > 0) {
List<Brief> existing = TextTemplate.findExistingTemplates(bSysTemplate, title, null, (selectedMand != null ? selectedMand.getId() : null));
if (existing.size() > 0) {
if (MessageDialog.openQuestion(getShell(),
Messages.TextContainer_TemplateExistsCaption,
Messages.TextContainer_TemplateExistsBody)) {
Brief old = l.get(0);
old.delete();
existing.forEach(b -> b.delete());
} else {
return;
}
......
......@@ -41,6 +41,7 @@ import ch.elexis.core.ui.util.CoreUiUtil;
public class StickerComposite extends Composite {
private FormToolkit toolkit;
private IPatient actPatient;
public StickerComposite(Composite parent, int style, FormToolkit toolkit){
super(parent, style);
......@@ -71,12 +72,13 @@ public class StickerComposite extends Composite {
return stickerComposite;
}
public void setPatient(final IPatient p){
public void setPatient(IPatient p) {
this.actPatient = p;
for (Control cc : getChildren()) {
cc.dispose();
}
this.setVisible(false);
List<ISticker> etis = StickerServiceHolder.get().getStickers(p);
List<ISticker> etis = StickerServiceHolder.get().getStickers(actPatient);
if (etis == null)
return;
if (etis.size() > 0) {
......@@ -92,7 +94,7 @@ public class StickerComposite extends Composite {
stickerForm.setMenu(menu);
stickerForm.setLayoutData(new ColumnLayoutData());
MenuItem miAdd = createMenuItemAdd(p, menu);
MenuItem miAdd = createMenuItemAdd(menu);
final MenuItem miRemove = new MenuItem(menu, SWT.NONE);
miRemove.setData("sticker", et);
miRemove.setText("Sticker entfernen");
......@@ -102,9 +104,9 @@ public class StickerComposite extends Composite {
public void widgetSelected(SelectionEvent e){
MenuItem mi = (MenuItem) e.getSource();
ISticker et = (ISticker) mi.getData("sticker");
StickerServiceHolder.get().removeSticker(et, p);
StickerServiceHolder.get().removeSticker(et, actPatient);
// refresh
setPatient(p);
setPatient(actPatient);
getParent().getParent().layout(true);
}
......@@ -126,12 +128,12 @@ public class StickerComposite extends Composite {
this.setVisible(true);
Menu menu = new Menu(this);
setMenu(menu);
createMenuItemAdd(p, menu);
createMenuItemAdd(menu);
}
layout();
}
private MenuItem createMenuItemAdd(final IPatient p, Menu menu){
private MenuItem createMenuItemAdd(Menu menu) {
final MenuItem miAdd = new MenuItem(menu, SWT.NONE);
miAdd.setText("Sticker hinzufügen");
miAdd.addSelectionListener(new SelectionAdapter() {
......@@ -140,10 +142,10 @@ public class StickerComposite extends Composite {
public void widgetSelected(SelectionEvent e){
AssignStickerDialog assignStickerDialog =
new AssignStickerDialog(getShell(), p);
new AssignStickerDialog(getShell(), actPatient);
if (assignStickerDialog.open() == MessageDialog.OK) {
// refresh
setPatient(p);
setPatient(actPatient);
getParent().getParent().layout(true);
}
}
......
......@@ -42,6 +42,7 @@ import org.eclipse.ui.forms.widgets.Form;
import org.eclipse.ui.forms.widgets.FormText;
import org.eclipse.ui.handlers.IHandlerService;
import org.eclipse.ui.part.ViewPart;
import org.slf4j.LoggerFactory;
import ch.elexis.core.constants.Preferences;
import ch.elexis.core.data.activator.CoreHub;
......@@ -77,17 +78,19 @@ public class TextTemplateView extends ViewPart {
private List<TextTemplate> templates;
private List<TextTemplate> requiredTemplates;
private ElexisUiEventListenerImpl reloadListener =
new ElexisUiEventListenerImpl(Brief.class, ElexisEvent.EVENT_RELOAD) {
@Override
public void runInUi(ElexisEvent ev){
refresh();
}
};
public TextTemplateView(){
initActiveTextPlugin();
loadRequiredAndExistingTemplates();
ElexisEventDispatcher.getInstance()
.addListeners(new ElexisUiEventListenerImpl(Brief.class, ElexisEvent.EVENT_RELOAD) {
@Override
public void runInUi(ElexisEvent ev){
refresh();
}
});
ElexisEventDispatcher.getInstance().addListeners(reloadListener);
}
private void loadRequiredAndExistingTemplates(){
......@@ -530,6 +533,11 @@ public class TextTemplateView extends ViewPart {
// TODO Auto-generated method stub
}
@Override
public void dispose(){
ElexisEventDispatcher.getInstance().removeListeners(reloadListener);
}
private void initActiveTextPlugin(){
if (plugin == null) {
String ExtensionToUse = CoreHub.localCfg.get(Preferences.P_TEXTMODUL, null);
......@@ -591,7 +599,7 @@ public class TextTemplateView extends ViewPart {
}
}
templates = txtTemplates;
if (tableViewer != null) {
if (tableViewer != null && !tableViewer.getControl().isDisposed()) {
tableViewer.setInput(templates);
tableViewer.refresh(true);
}
......
package ch.elexis.core.ui.views.textsystem.model;
import java.util.List;
import org.apache.commons.lang3.StringUtils;
import ch.elexis.core.data.activator.CoreHub;
import ch.elexis.core.data.interfaces.ISticker;
import ch.elexis.core.ui.dialogs.DocumentSelectDialog;
......@@ -8,6 +12,8 @@ import ch.elexis.core.ui.views.textsystem.TextTemplatePrintSettings;
import ch.elexis.data.Brief;
import ch.elexis.data.Kontakt;
import ch.elexis.data.Mandant;
import ch.elexis.data.Query;
import ch.rgw.tools.StringTool;
public class TextTemplate {
private enum UPDATE_TYPE {
......@@ -283,4 +289,80 @@ public class TextTemplate {
setTray(tray);
}
/**
* Find an existing template with matching name. If the mandantId is provided, and a template
* with matching mandantId is found it is preferred to templates without mandantId.
*
* @param name
* @param mandantId
* @return
*/
public static Brief findExistingTemplate(String name, String mandantId){
Query<Brief> qbe = new Query<Brief>(Brief.class);
qbe.add(Brief.FLD_TYPE, Query.EQUALS, Brief.TEMPLATE);
qbe.and();
qbe.add(Brief.FLD_SUBJECT, Query.EQUALS, name);
qbe.startGroup();
if (mandantId != null) {
qbe.add(Brief.FLD_DESTINATION_ID, Query.EQUALS, mandantId);
qbe.or();
}
qbe.add(Brief.FLD_DESTINATION_ID, Query.EQUALS, StringTool.leer);
qbe.endGroup();
List<Brief> list = qbe.execute();
Brief ret = null;
if (list != null && !list.isEmpty()) {
ret = list.get(0);
if (list.size() > 1) {
if (mandantId != null) {
for (Brief brief : list) {
if (mandantId.equals(brief.get(Brief.FLD_DESTINATION_ID))) {
ret = brief;
break;
} else if (ret == null) {
if (StringUtils.isEmpty(brief.get(Brief.FLD_DESTINATION_ID))) {
ret = brief;
}
}
}
}
}
}
return ret;
}
/**
* Find existing templates matching the provided parameters.
*
* @param isSysTemplate
* @param name
* @param mimeType
* @param mandantId
* @return
*/
public static List<Brief> findExistingTemplates(boolean isSysTemplate, String name,
String mimeType, String mandantId){
Query<Brief> qbe = new Query<Brief>(Brief.class);
qbe.add(Brief.FLD_SUBJECT, Query.EQUALS, name);
qbe.add(Brief.FLD_TYPE, Query.EQUALS, Brief.TEMPLATE);
if (mimeType != null) {
qbe.add(Brief.FLD_MIME_TYPE, Query.EQUALS, mimeType);
}
if (isSysTemplate) {
qbe.add(Brief.FLD_KONSULTATION_ID, Query.EQUALS, Brief.SYS_TEMPLATE);
} else {
qbe.add(Brief.FLD_KONSULTATION_ID, Query.NOT_EQUAL, Brief.SYS_TEMPLATE);
}
if (mandantId != null) {
qbe.add(Brief.FLD_DESTINATION_ID, Query.EQUALS, mandantId);
} else {
qbe.startGroup();
qbe.add(Brief.FLD_DESTINATION_ID, Query.EQUALS, StringTool.leer);
qbe.or();
qbe.addToken(Brief.FLD_DESTINATION_ID + " is NULL");
qbe.endGroup();
}
return qbe.execute();
}
}
......@@ -398,6 +398,7 @@
<eOperations name="setCode">
<eParameters name="code" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eOperations>
<eOperations name="isVaccination" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="gtin" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
<eAnnotations source="http://elexis.info/jpa/entity/attribute/mapping">
<details key="attributeName" value="ean"/>
......
......@@ -304,6 +304,7 @@
<genOperations ecoreOperation="model.ecore#//IArticle/setCode">
<genParameters ecoreParameter="model.ecore#//IArticle/setCode/code"/>
</genOperations>
<genOperations ecoreOperation="model.ecore#//IArticle/isVaccination"/>
</genClasses>
<genClasses ecoreClass="model.ecore#//IArticleDefaultSignature">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute model.ecore#//IArticleDefaultSignature/atcCode"/>
......
......@@ -10,10 +10,11 @@
*/
package ch.elexis.core.model;
import java.util.List;
import ch.elexis.core.types.ArticleSubTyp;
import ch.elexis.core.types.ArticleTyp;
import ch.rgw.tools.Money;
import java.util.List;
/**
......@@ -385,4 +386,12 @@ public interface IArticle extends Identifiable, IBillable, Deleteable, WithExtIn
*/
void setCode(String code);
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @model kind="operation"
* @generated
*/
boolean isVaccination();
} // IArticle
......@@ -43,9 +43,7 @@ public interface WithExtInfo {
/**
* <!-- begin-user-doc --> <b>Modifications to the returned map are not persisted.</b> Use
* {@link #setExtInfo(Object, Object)} to handle persistent sets <!-- end-user-doc -->
*
* @model kind="operation" type="ch.elexis.core.types.Map&lt;org.eclipse.emf.ecore.EJavaObject,
* org.eclipse.emf.ecore.EJavaObject&gt;"
* @model kind="operation" type="ch.elexis.core.types.Map&lt;org.eclipse.emf.ecore.EJavaObject, org.eclipse.emf.ecore.EJavaObject&gt;"
* @generated
*/
Map<Object, Object> getMap();
......
......@@ -5368,6 +5368,8 @@ public class ModelPackageImpl extends EPackageImpl implements ModelPackage {
op = addEOperation(iArticleEClass, null, "setCode", 0, 1, IS_UNIQUE, IS_ORDERED);
addEParameter(op, ecorePackage.getEString(), "code", 0, 1, IS_UNIQUE, IS_ORDERED);
addEOperation(iArticleEClass, ecorePackage.getEBoolean(), "isVaccination", 0, 1, IS_UNIQUE, IS_ORDERED);
initEClass(iArticleDefaultSignatureEClass, IArticleDefaultSignature.class, "IArticleDefaultSignature", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getIArticleDefaultSignature_AtcCode(), ecorePackage.getEString(), "atcCode", null, 0, 1, IArticleDefaultSignature.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getIArticleDefaultSignature_Morning(), ecorePackage.getEString(), "morning", null, 0, 1, IArticleDefaultSignature.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
......
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?pde?>
<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
<target name="Elexis" sequenceNumber="1568712453">
<target name="Elexis" sequenceNumber="1568968426">
<locations>
<location includeMode="slicer" includeAllPlatforms="true" includeSource="true" includeConfigurePhase="false" type="InstallableUnit">
<unit id="org.eclipse.swt.nl_de" version="4.8.0.v20190126080931"/>
......@@ -34,7 +34,7 @@
<repository location="https://download.eclipse.org/technology/babel/update-site/R0.16.1/photon/"/>
</location>
<location includeMode="slicer" includeAllPlatforms="true" includeSource="true" includeConfigurePhase="false" type="InstallableUnit">
<unit id="org.eclipse.e4.tools.spies.feature.feature.group" version="0.18.0.v20190808-1809"/>
<unit id="org.eclipse.e4.tools.spies.feature.feature.group" version="0.18.0.v20190917-1740"/>
<repository location="http://download.eclipse.org/e4/snapshots/org.eclipse.e4.tools/latest/"/>
</location>
<location includeMode="slicer" includeAllPlatforms="true" includeSource="true" includeConfigurePhase="false" type="InstallableUnit">
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment