Project

General

Profile

1

    
2
package eu.dnetlib.goldoa.service;
3

    
4
import eu.dnetlib.goldoa.domain.Budget;
5
import eu.dnetlib.goldoa.domain.Organization;
6
import eu.dnetlib.goldoa.domain.OrganizationManagerException;
7
import eu.dnetlib.goldoa.domain.Vocabulary;
8
//import eu.dnetlib.goldoa.service.dao.BudgetDAO;
9
import eu.dnetlib.goldoa.service.dao.OrganizationDAO;
10
import org.apache.commons.codec.digest.DigestUtils;
11
import org.springframework.beans.factory.annotation.Autowired;
12
import org.springframework.dao.EmptyResultDataAccessException;
13
import org.springframework.stereotype.Service;
14
import org.springframework.transaction.annotation.Transactional;
15

    
16
import java.util.ArrayList;
17
import java.util.List;
18

    
19

    
20
/**
21
 * Created by antleb on 3/3/15.
22
 */
23
@Service
24
@Transactional
25
public class OrganizationManagerImpl implements OrganizationManager {
26

    
27
	@Autowired
28
	private OrganizationDAO organizationDAO;
29

    
30
	/*@Autowired
31
	BudgetDAO budgetDAO;*/
32

    
33
	@Override
34
	public List<Vocabulary> search(String term) {
35
		return organizationDAO.search(term);
36
	}
37

    
38
	@Override
39
	public Organization getById(String organizationId) throws OrganizationManagerException {
40
		try {
41
			return organizationDAO.getOrganization(organizationId);
42
		} catch (EmptyResultDataAccessException e) {
43
			throw new OrganizationManagerException(OrganizationManagerException.ErrorCause.NOT_EXISTS);
44
		}
45
	}
46

    
47
	@Override
48
	public List<Organization> getAffiliatedWithUser(String userId) {
49
		return organizationDAO.getAffiliatedWithUser(userId);
50
	}
51

    
52
	@Override
53
	public String saveOrganization(final Organization organization) throws OrganizationManagerException {
54
		if (organization.getId() == null) {
55
			organization.setId("portal::" + DigestUtils.md5Hex(organization.getName()));
56
			organization.setSource("portal");
57
		}
58
		organizationDAO.saveOrganization(organization);
59
		/*
60
		organizationDAO.deleteOrganizationBudgets(organization);
61
		organizationDAO.insertOrganizationBudgets(organization);
62
        */
63
		return organization.getId();
64
	}
65
}
66

    
(16-16/29)