1 package de.dlr.shepard.neo4Core.services;
2
3 import java.util.List;
4
5 import de.dlr.shepard.neo4Core.dao.BasicReferenceDAO;
6 import de.dlr.shepard.neo4Core.dao.UserDAO;
7 import de.dlr.shepard.neo4Core.entities.BasicReference;
8 import de.dlr.shepard.util.DateHelper;
9 import de.dlr.shepard.util.QueryParamHelper;
10 import lombok.extern.slf4j.Slf4j;
11
12 @Slf4j
13 public class BasicReferenceService {
14
15 private BasicReferenceDAO basicReferenceDAO = new BasicReferenceDAO();
16 private UserDAO userDAO = new UserDAO();
17 private DateHelper dateHelper = new DateHelper();
18
19
20
21
22
23
24
25
26 public BasicReference getReferenceByShepardId(long shepardId) {
27 BasicReference basicReference = basicReferenceDAO.findByShepardId(shepardId);
28 if (basicReference == null || basicReference.isDeleted()) {
29 log.error("Basic Reference with id {} is null or deleted", shepardId);
30 return null;
31 }
32 return basicReference;
33 }
34
35
36
37
38
39
40
41
42 public List<BasicReference> getAllBasicReferencesByDataObjectShepardId(long dataObjectShepardId,
43 QueryParamHelper params) {
44 var references = basicReferenceDAO.findByDataObjectShepardId(dataObjectShepardId, params);
45 return references;
46 }
47
48
49
50
51
52
53
54
55 public boolean deleteReferenceByShepardId(long basicReferenceShepardId, String username) {
56 var user = userDAO.find(username);
57
58 var basicReference = basicReferenceDAO.findByShepardId(basicReferenceShepardId);
59 basicReference.setDeleted(true);
60 basicReference.setUpdatedAt(dateHelper.getDate());
61 basicReference.setUpdatedBy(user);
62
63 basicReferenceDAO.createOrUpdate(basicReference);
64 return true;
65 }
66
67 }