/** * @see de.willuhn.jameica.gui.calendar.AppointmentProvider#getAppointments(java.util.Date, * java.util.Date) */ @Override public List<Appointment> getAppointments(Date from, Date to) { if (from == null) { return null; } try { DBIterator list = Einstellungen.getDBService().createList(de.jost_net.JVerein.rmi.Wiedervorlage.class); Calendar cal = Calendar.getInstance(); cal.setTime(from); if (from != null) list.addFilter("datum >= ?", new Object[] {new java.sql.Date(from.getTime())}); list.addFilter("datum <= ?", new Object[] {new java.sql.Date(to.getTime())}); list.setOrder("ORDER BY day(datum)"); List<Appointment> result = new LinkedList<Appointment>(); while (list.hasNext()) { result.add(new MyAppointment((Wiedervorlage) list.next())); } return result; } catch (Exception e) { Logger.error("unable to load data", e); } return null; }
public Part getAbrechungslaeufeList() throws RemoteException { DBService service = Einstellungen.getDBService(); DBIterator abrechnungslaeufe = service.createList(Abrechnungslauf.class); abrechnungslaeufe.setOrder("ORDER BY datum DESC"); if (abrechnungslaufList == null) { abrechnungslaufList = new TablePart(abrechnungslaeufe, null); abrechnungslaufList.addColumn("Nr", "nr"); abrechnungslaufList.addColumn( "Datum", "datum", new DateFormatter(new JVDateFormatTTMMJJJJ())); abrechnungslaufList.addColumn( "Modus", "modus", new AbrechnungsmodusFormatter(), false, Column.ALIGN_LEFT); abrechnungslaufList.addColumn( "Stichtag", "stichtag", new DateFormatter(new JVDateFormatTTMMJJJJ())); abrechnungslaufList.addColumn( "Eingabedatum", "eingabedatum", new DateFormatter(new JVDateFormatTTMMJJJJ())); abrechnungslaufList.addColumn("Zahlungsgrund", "zahlungsgrund"); abrechnungslaufList.addColumn("Zusatzbeträge", "zusatzbetraege", new JaNeinFormatter()); abrechnungslaufList.addColumn("Kursteilnehmer", "kursteilnehmer", new JaNeinFormatter()); abrechnungslaufList.setContextMenu(new AbrechnungslaufMenu()); abrechnungslaufList.setRememberColWidths(true); abrechnungslaufList.setRememberOrder(true); abrechnungslaufList.setSummary(true); } else { abrechnungslaufList.removeAll(); while (abrechnungslaeufe.hasNext()) { abrechnungslaufList.addItem(abrechnungslaeufe.next()); } } return abrechnungslaufList; }
public FamilienbeitragNode() throws RemoteException { this.parent = null; this.type = ROOT; this.children = new ArrayList<FamilienbeitragNode>(); DBIterator it = Einstellungen.getDBService().createList(Beitragsgruppe.class); it.addFilter("beitragsart = ?", new Object[] {ArtBeitragsart.FAMILIE_ZAHLER}); while (it.hasNext()) { Beitragsgruppe bg = (Beitragsgruppe) it.next(); DBIterator it2 = Einstellungen.getDBService().createList(Mitglied.class); it2.addFilter("beitragsgruppe = ?", new Object[] {bg.getID()}); it2.addFilter("austritt is null"); while (it2.hasNext()) { Mitglied m = (Mitglied) it2.next(); FamilienbeitragNode fbn = new FamilienbeitragNode(this, m); children.add(fbn); } } }
private Beitragsgruppe getBeitragsgruppe() throws RemoteException { Beitragsgruppe bg = (Beitragsgruppe) Einstellungen.getDBService().createObject(Beitragsgruppe.class, null); bg.setBezeichnung("Test"); bg.setBetrag(10d); bg.setBetragMonatlich(20d); bg.setBetragVierteljaehrlich(60d); bg.setBetragHalbjaehrlich(120d); bg.setBetragJaehrlich(240d); return bg; }
public FamilienbeitragNode(FamilienbeitragNode parent, Mitglied m) throws RemoteException { this.parent = parent; this.mitglied = m; this.type = ZAHLER; this.children = new ArrayList<FamilienbeitragNode>(); DBIterator it = Einstellungen.getDBService().createList(Mitglied.class); it.addFilter("zahlerid = ?", new Object[] {m.getID()}); it.addFilter("austritt is null"); while (it.hasNext()) { FamilienbeitragNode fbn = new FamilienbeitragNode(this, (Mitglied) it.next(), 1); children.add(fbn); } }
/** @see de.willuhn.jameica.gui.Action#handleAction(java.lang.Object) */ public void handleAction(Object context) { try { DBIterator it = Einstellungen.getDBService().createList(Mitglied.class); if (it.size() > 0) { SimpleDialog dialog = new SimpleDialog(SimpleDialog.POSITION_CENTER); dialog.setTitle("Fehler"); dialog.setText("Datenbank ist nicht leer!"); dialog.open(); return; } // Vom System eingefügte Sätze löschen. Ansonsten gibt es duplicate keys it = Einstellungen.getDBService().createList(Adresstyp.class); while (it.hasNext()) { Adresstyp a = (Adresstyp) it.next(); a.delete(); } } catch (Exception e1) { Logger.error("Fehler: ", e1); } FileDialog fd = new FileDialog(GUI.getShell(), SWT.OPEN); fd.setFileName("jverein-" + new JVDateFormatJJJJMMTT().format(new Date()) + ".xml"); fd.setFilterExtensions(new String[] {"*.xml"}); fd.setText(JVereinPlugin.getI18n().tr("Bitte wählen Sie die Backup-Datei aus")); String f = fd.open(); if (f == null || f.length() == 0) { return; } final File file = new File(f); if (!file.exists()) { return; } Application.getController() .start( new BackgroundTask() { private boolean cancel = false; /** * @see de.willuhn.jameica.system.BackgroundTask#run(de.willuhn.util.ProgressMonitor) */ public void run(ProgressMonitor monitor) throws ApplicationException { monitor.setStatusText(JVereinPlugin.getI18n().tr("Importiere Backup")); Logger.info("importing backup " + file.getAbsolutePath()); final ClassLoader loader = Application.getPluginLoader() .getPlugin(JVereinPlugin.class) .getResources() .getClassLoader(); try { EigenschaftGruppe eg = (EigenschaftGruppe) Einstellungen.getDBService().createObject(EigenschaftGruppe.class, "1"); eg.delete(); } catch (RemoteException e1) { Logger.error("EigenschaftGruppe mit id=1 kann nicht gelöscht werden", e1); } Reader reader = null; try { InputStream is = new BufferedInputStream(new FileInputStream(file)); reader = new XmlReader( is, new ObjectFactory() { public GenericObject create(String type, String id, Map values) throws Exception { AbstractDBObject object = (AbstractDBObject) Einstellungen.getDBService() .createObject(loader.loadClass(type), null); object.setID(id); Iterator<?> i = values.keySet().iterator(); while (i.hasNext()) { String name = (String) i.next(); object.setAttribute(name, values.get(name)); } return object; } }); long count = 1; GenericObject o = null; while ((o = reader.read()) != null) { try { ((AbstractDBObject) o).insert(); } catch (Exception e) { Logger.error( "unable to import " + o.getClass().getName() + ":" + o.getID() + ", skipping", e); monitor.log( JVereinPlugin.getI18n() .tr( " {0} fehlerhaft: {1}, überspringe ", new String[] {BeanUtil.toString(o), e.getMessage()})); } if (count++ % 100 == 0) { monitor.addPercentComplete(1); } } monitor.setStatus(ProgressMonitor.STATUS_DONE); monitor.setStatusText(JVereinPlugin.getI18n().tr("Backup importiert")); monitor.setPercentComplete(100); } catch (Exception e) { Logger.error("error while importing data", e); throw new ApplicationException(e.getMessage()); } finally { if (reader != null) { try { reader.close(); Logger.info("backup imported"); } catch (Exception e) { /* useless */ } } } } /** @see de.willuhn.jameica.system.BackgroundTask#isInterrupted() */ public boolean isInterrupted() { return this.cancel; } /** @see de.willuhn.jameica.system.BackgroundTask#interrupt() */ public void interrupt() { this.cancel = true; } }); }