Menu Content/Inhalt
Startseite arrow Architecture arrow How 2 Be A Service Plugin
How 2 Be A Service Plugin Drucken
A service plugin provides the possibility to account a service of any kind to the client. A service plugin must know local tariffs and regulations, and should also be able to output bills.

You might want to use elexis-privatrechnung as a template for your own service plugin.
A service plugin can manage one or more different types of services.
For every type it should:

  • define a class that implements ch.elexis.data.IVerrechenbar. This class represents the service itself.
  • define a class that extends ch.elexis.data.PersistentObjectFactory. This class allows Elexis to store and retrieve objects of classes managed by this plugin "by reference".
  • (otionally) define a class that extends ImporterPage. This class is needed to import data for the plugin.
  • (optionally) define a class that implements ch.elexis.util.IOptifier. This class will be used to verify and optimize the user's input.
  • (optionally) define a class that implements ch.elexis.util.IRnOutputter. This class will be used to output bills created with services of this plugin to different destinations (printer, file, internet site, mail address)
  • define a class that extends ch.elexis.views.codesystems.CodeSelectorFactory. This class will be used to let the user select services out of this plugin's list.
  • define a class that implements ch.elexis.views.IDetailDisplay. An Object of this class will be used to show the user detailed information of a selected service.

  • connect to the extension points ch.elexis.PersistentReference.  Use your PersistentObjectFactory as "Class" for this point.
  • connect to the extension point ch.elexis.Verrechnungscode and create an extension of type "Leistung"
    • "ElementFactory" is (again) your PersistentObjectFactory class
    • OptifierClass is your Optifier (if any)
    • ComparatorClass is a class that implements java.util.Comparator and that will be used to sort Services on the bill.
    • MandantFilter is a class that implements org.eclipse.jface.viewers.IFilter. This will be used to decide, wether a given mandant can account for a specific service.
    • "CodeDetailDisplay" is your IDetailDisplay
    • "CodeSelectorFactory" is your CodeSelectorFactory (as you might have guessed)
    • "ImporterClass" is ... you'll guess it.
  • connect to the extension point ch.elexis.RechnungsManager and create one or more extensions of the type "Rechnung". Use an IRnOutputter to create an output destination for the bills of this plugin.

... and you're done




 
< zurück   weiter >