uoa-orcid-service/src/main/java/eu/dnetlib/uoaorcidservice/services/WorkService.java

47 lines
1.4 KiB
Java

package eu.dnetlib.uoaorcidservice.services;
import eu.dnetlib.uoaorcidservice.dao.WorkDAO;
import eu.dnetlib.uoaorcidservice.entities.Work;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class WorkService {
private final Logger log = LogManager.getLogger(this.getClass());
@Autowired
private WorkDAO workDAO;
public List<Work> getAllWorks() {
return workDAO.findAll();
}
public List<Work> getWorks(String[] pids, String orcid) {
// return workDAO.findByPidsContainingAndOrcid(pid, orcid);
return workDAO.findByPidsInAndOrcid(pids, orcid);
}
public void saveWork(Work work) {
log.debug("Save in DB work with pids: "+work.getPids() + " - for ORCID iD: "+work.getOrcid());
workDAO.save(work);
}
public void deleteWork(String putCode) {
log.debug("Delete from DB work with putCode: "+putCode);
workDAO.deleteByPutCode(putCode);
}
public List<Work> getLocalWorks(String orcid) {
return workDAO.findByOrcidOrderByCreationDateDesc(orcid);
// return workDAO.findByOrcid(orcid);
}
public Work getLocalWorkByPutCode(String puutCode) {
return workDAO.findByPutCode(puutCode);
}
}