private int commitBuchungsdaten(final ImportedSheet<BuchungssatzDO> sheet)
{
log.info("Commit Buchungsdaten called");
final Collection<BuchungssatzDO> col = new ArrayList<BuchungssatzDO>();
for (final ImportedElement<BuchungssatzDO> el : sheet.getElements()) {
final BuchungssatzDO satz = el.getValue();
final BuchungssatzDO dbSatz = buchungssatzDao.getBuchungssatz(satz.getYear(), satz.getMonth(), satz.getSatznr());
boolean addSatz = false;
if (dbSatz != null) {
satz.setId(dbSatz.getId());
if (el.isSelected() == true) {
addSatz = true;
}
} else if (el.isSelected() == true) {
addSatz = true;
}
if (addSatz == true) {
final BuchungssatzDO newSatz = new BuchungssatzDO();
newSatz.copyValuesFrom(satz, "konto", "gegenKonto", "kost1", "kost2");
newSatz.setKonto((KontoDO) get(KontoDO.class, satz.getKontoId()));
newSatz.setGegenKonto((KontoDO) get(KontoDO.class, satz.getGegenKontoId()));
newSatz.setKost1((Kost1DO) get(Kost1DO.class, satz.getKost1Id()));
newSatz.setKost2((Kost2DO) get(Kost2DO.class, satz.getKost2Id()));
col.add(newSatz);
}
}
buchungssatzDao.internalSaveOrUpdate(buchungssatzDao, col, BUCHUNGSSATZ_INSERT_BLOCK_SIZE);
return col.size();
}