@Override public List<Payments> getPaymentsFromClient(Long id) { org.hibernate.Session sess = sessionFactory.getCurrentSession(); sess.enableFetchProfile("clients-with-paymentsFrom"); Clients client = (Clients) sess.get(Clients.class, id); return client.getPaymentsFromClient(); }
@Override public void addClient(Clients client) { List<Documents> temp = client.getDocuments(); List<Payments> temp2 = client.getPaymentsFromClient(); sessionFactory.getCurrentSession().save(client); // add links to documents if (temp != null && temp.size() != 0) { org.hibernate.Session sess = sessionFactory.getCurrentSession(); sess.enableFetchProfile("clients-with-documents"); temp = documentsDAO.getFromProxy(temp); for (Documents doc : temp) { doc.getClients().add(client); documentsDAO.changeDocument(doc); } } if (temp2 != null && temp2.size() != 0) { org.hibernate.Session sess = sessionFactory.getCurrentSession(); sess.enableFetchProfile("clients-with-payments"); temp2 = paymentsDAO.getFromProxy(temp2); for (Payments payment : temp2) { payment.setPayerOfPayment(client); paymentsDAO.changePayment(payment); } } if (client.getPaymentsToClient() != null) { org.hibernate.Session sess = sessionFactory.getCurrentSession(); sess.enableFetchProfile("clients-with-payments"); temp2 = paymentsDAO.getFromProxy(client.getPaymentsToClient()); for (Payments payment : temp2) { payment.setReceiverOfPayment(client); paymentsDAO.changePayment(payment); } } }