@Transactional public void addStaticPoison() { List<TreePoisonDTO> treePoisonDTOs1 = new ArrayList<TreePoisonDTO>(); List<TreePoisonDTO> treePoisonDTOs2 = new ArrayList<TreePoisonDTO>(); PoisonDTO poisonDTO1 = new PoisonDTO(); poisonDTO1.setName("Эндобациллин"); TreePoisonDTO treePoisonDTO1 = new TreePoisonDTO(); treePoisonDTO1.setPoisonDTO(poisonDTO1); treePoisonDTOs1.add(treePoisonDTO1); PoisonDTO poisonDTO2 = new PoisonDTO(); poisonDTO2.setName("Бионефрин"); TreePoisonDTO treePoisonDTO2 = new TreePoisonDTO(); treePoisonDTO2.setPoisonDTO(poisonDTO2); treePoisonDTOs2.add(treePoisonDTO2); try { poisonService.add(treePoisonDTOs1, new ArrayList<PoisonPestDTO>()); poisonService.add(treePoisonDTOs2, new ArrayList<PoisonPestDTO>()); } catch (ObjectAlreadyExistsException e) { e.printStackTrace(); } // Добавление в TreeDTO зависимости на модель PoisonDTO updateStaticTree(); }
@Transactional public void updateStaticTree() { List<TreePoisonDTO> treePoisons = new ArrayList<TreePoisonDTO>(); List<TreePoisonDTO> poisonTrees = new ArrayList<TreePoisonDTO>(); try { treePoisons = treeService.get(); poisonTrees = poisonService.getTreePoisons(); } catch (NoSuchObjectException e) { e.printStackTrace(); } // Обновляем связи объекта PoisonDTO TreePoisonDTO poisonTreeDTO1 = poisonTrees.get(0); poisonTreeDTO1.setTreeDTO(treePoisons.get(0).getTreeDTO()); poisonTreeDTO1.setPoisonDTO(poisonTrees.get(0).getPoisonDTO()); List<TreePoisonDTO> treePoisonDTOs1 = new ArrayList<TreePoisonDTO>(); treePoisonDTOs1.add(poisonTreeDTO1); TreePoisonDTO poisonTreeDTO2 = poisonTrees.get(1); poisonTreeDTO2.setTreeDTO(treePoisons.get(1).getTreeDTO()); poisonTreeDTO2.setPoisonDTO(poisonTrees.get(1).getPoisonDTO()); List<TreePoisonDTO> treePoisonDTOs2 = new ArrayList<TreePoisonDTO>(); treePoisonDTOs2.add(poisonTreeDTO2); // Обновляем связи объекта TreeDTO TreePoisonDTO treePoisonDTO1 = treePoisons.get(0); treePoisonDTO1.setPoisonDTO(poisonTreeDTO1.getPoisonDTO()); treePoisons.set(0, treePoisonDTO1); TreePoisonDTO treePoisonDTO2 = treePoisons.get(1); treePoisonDTO2.setPoisonDTO(poisonTreeDTO2.getPoisonDTO()); treePoisons.set(1, treePoisonDTO2); try { List<PoisonPestDTO> poisonPestDTOs = new ArrayList<PoisonPestDTO>(); poisonService.update(treePoisonDTOs1, poisonPestDTOs); poisonService.update(treePoisonDTOs2, poisonPestDTOs); } catch (NoSuchObjectException e) { e.printStackTrace(); } try { List<TreePoisonDTO> treePoisons1 = new ArrayList<TreePoisonDTO>(); treePoisons1.add(treePoisons.get(0)); treeService.update(treePoisons1); List<TreePoisonDTO> treePoisons2 = new ArrayList<TreePoisonDTO>(); treePoisons2.add(treePoisons.get(1)); treeService.update(treePoisons2); } catch (NoSuchObjectException e) { e.printStackTrace(); } }