@Override public AbstractSecuredBasePage afterSaveOrUpdate() { if (getData() != null && getData().getId() != null) { for (final Kost2Art art : form.kost2Arts) { if (art.isExistsAlready() == false && art.isSelected() == true) { final Kost2DO kost2 = new Kost2DO(); kost2Dao.setProjekt(kost2, getData().getId()); kost2Dao.setKost2Art(kost2, art.getId()); kost2Dao.save(kost2); } } } return null; }
final TaskTree taskTree = taskDao.getTaskTree(); final Kost2DO kost2a = kost2Dao .getById(kost2Dao.save(new Kost2DO().setNummernkreis(1).setBereich(137).setTeilbereich(05).setKost2Art( new Kost2ArtDO().withId(1)))); // Kost2: 1.137.05.01 final Kost2DO kost2b = kost2Dao .getById(kost2Dao.save(new Kost2DO().setNummernkreis(1).setBereich(137).setTeilbereich(05).setKost2Art( new Kost2ArtDO().withId(2)))); // Kost2: 1.137.05.02 final Kost2DO kost2c = kost2Dao .getById(kost2Dao.save(new Kost2DO().setNummernkreis(2).setBereich(423).setTeilbereich(12).setKost2Art( new Kost2ArtDO().withId(1)))); // Kost2: 2.423.12.01 final TaskDO task = initTestDB.addTask("kost2test2", "root");
assertNull(list); final Kost2DO kost2a = kost2Dao .getById(kost2Dao.save(new Kost2DO().setNummernkreis(4).setBereich(137).setTeilbereich(05).setProjekt( projekt).setKost2Art(new Kost2ArtDO().withId(1)))); // Kost2: 4.137.05.01 final Kost2DO kost2b = kost2Dao .getById(kost2Dao.save(new Kost2DO().setNummernkreis(4).setBereich(137).setTeilbereich(05).setProjekt( projekt).setKost2Art(new Kost2ArtDO().withId(2)))); // Kost2: 4.137.05.02 list = taskTree.getKost2List(task.getId()); assertKost2(kost2b, list.get(1)); final Kost2DO kost2c = kost2Dao .getById(kost2Dao.save(new Kost2DO().setNummernkreis(4).setBereich(137).setTeilbereich(05).setProjekt( projekt).setKost2Art(new Kost2ArtDO().withId(3)))); // Kost2: 4.137.05.03 final Kost2DO kost2d = kost2Dao .getById(kost2Dao.save(new Kost2DO().setNummernkreis(4).setBereich(137).setTeilbereich(05).setProjekt( projekt).setKost2Art(new Kost2ArtDO().withId(4)))); // Kost2: 4.137.05.04 list = taskTree.getKost2List(task.getId());
public ProjektDO addProjekt(final KundeDO kunde, final Integer projektNummer, final String projektName, final Integer... kost2ArtIds) { final ProjektDO projekt = new ProjektDO(); projekt.setNummer(projektNummer); projekt.setName(projektName); if (kunde != null) { projektDao.setKunde(projekt, kunde.getId()); } projektDao.save(projekt); if (kost2ArtIds != null) { for (final Integer id : kost2ArtIds) { final Kost2DO kost2 = new Kost2DO(); kost2.setProjekt(projekt); kost2.setNummernkreis(5); if (kunde != null) { kost2.setBereich(kunde.getId()); } kost2.setTeilbereich(projekt.getNummer()); kost2Dao.setKost2Art(kost2, id); kost2Dao.save(kost2); } } return projekt; }
@Test public void checkAccess() { logon(TEST_ADMIN_USER); final TaskDO task = initTestDB.addTask("checkAccessTestTask", "root"); initTestDB.addGroup("checkAccessTestGroup", new String[] { TEST_USER }); initTestDB.createGroupTaskAccess(getGroup("checkAccessTestGroup"), getTask("checkAccessTestTask"), AccessType.TASKS, true, true, true, true); logon(TEST_FINANCE_USER); final Kost2ArtDO kost2Art = new Kost2ArtDO(); kost2Art.setId(42); kost2Art.setName("Test"); kost2ArtDao.save(kost2Art); final Kost2DO kost2 = new Kost2DO(); kost2.setNummernkreis(3); kost2.setBereich(0); kost2.setTeilbereich(42); kost2.setKost2Art(kost2Art); kost2Dao.save(kost2); final ProjektDO projekt = new ProjektDO(); projekt.setInternKost2_4(123); projekt.setName("Testprojekt"); projektDao.save(projekt); checkAccess(TEST_ADMIN_USER, task.getId(), projekt, kost2); checkAccess(TEST_USER, task.getId(), projekt, kost2); }