public void hireEmployee(Employee hiredEmployee, Company toCompany) throws SQLException { Connection connection = oracleCM.getConnection(); try { connection.setAutoCommit(false); employeeDAO.save(hiredEmployee, connection); Company company = companyDAO.find(toCompany.getId(), connection); company.getEmployees().add(hiredEmployee); companyDAO.update(company, connection); connection.commit(); } finally { connection.setAutoCommit(true); connection.close(); } }
public void fireEmployee(Employee firedEmployee, Company fromCompany) throws SQLException { Connection connection = oracleCM.getConnection(); try { connection.setAutoCommit(false); Company company = companyDAO.find(fromCompany.getId(), connection); company.getEmployees().remove(firedEmployee); companyDAO.update(company, connection); employeeDAO.delete(firedEmployee, connection); connection.commit(); } finally { connection.setAutoCommit(true); connection.close(); } }
@Override public boolean createOrUpdateCompany( String electronicShopID, String clientID, String name, String contactPerson, String addressCity, String addressLine, String phoneNumber, String mail, String IBANNumber, String SWIFTCode, String registrationNumber, String VATNumber) { // check if we know that shop if (!ConfigurationProperties.getElectronicShopID().equals(electronicShopID)) { logger.warning("electronicShopID \"" + electronicShopID + "\" not known!"); return false; } List<Client> cl = Client.queryGetByForeignID(clientID, 0, 1); List<Company> cmpnl = null; Client c; if (cl.size() == 0) { c = new Client(); } else { c = cl.get(0); cmpnl = Company.queryGetAll(0, 1, c.getID()); } Company cmpn; if ((cmpnl == null) || (cmpnl.size() == 0)) { cmpn = new Company(); } else { cmpn = cmpnl.get(0); } try { c.setForeignID(clientID); c.setAddressCity(addressCity); c.setAddressLine(addressLine); c.setMail(mail); c.setPhoneNumber(phoneNumber); c.setIBANNumber(IBANNumber); c.setSWIFTCode(SWIFTCode); cmpn.setName(name); cmpn.setContactPerson(contactPerson); cmpn.setRegistrationNumber(registrationNumber); if (!"".equals(VATNumber)) { cmpn.setVATNumber(VATNumber); } c.setCompany(cmpn); c.writeToDB(); } catch (RuntimeException e) { logger.log(Level.WARNING, "Can't write to DB!", e); return false; } return true; }