1 package fr.ifremer.quadrige2.core.dao.administration.program;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 import fr.ifremer.quadrige2.core.dao.administration.user.QuserImpl;
26 import fr.ifremer.quadrige2.core.vo.administration.program.ProgQuserProgPrivVO;
27 import org.apache.commons.lang3.StringUtils;
28 import org.hibernate.SessionFactory;
29 import org.springframework.beans.factory.annotation.Autowired;
30 import org.springframework.context.annotation.Lazy;
31 import org.springframework.stereotype.Repository;
32
33
34
35
36
37
38
39
40 @Repository("progQuserProgPrivDao")
41 @Lazy
42 public class ProgQuserProgPrivDaoImpl
43 extends ProgQuserProgPrivDaoBase
44 {
45
46
47
48
49
50
51 @Autowired
52 public ProgQuserProgPrivDaoImpl(SessionFactory sessionFactory) {
53 super();
54 setSessionFactory(sessionFactory);
55 }
56
57
58 public void toProgQuserProgPrivVO(
59 ProgQuserProgPriv source,
60 ProgQuserProgPrivVO target)
61 {
62 super.toProgQuserProgPrivVO(source, target);
63
64
65 ProgQuserProgPrivPK pk = source.getProgQuserProgPrivPk();
66 if (pk != null) {
67 target.setQuserId(pk.getQuser().getQuserId());
68 target.setProgPrivId(pk.getProgramPrivilege().getProgPrivId());
69 target.setProgCd(pk.getProgram().getProgCd());
70 }
71 }
72
73
74
75
76
77
78 private ProgQuserProgPriv loadProgQuserProgPrivFromProgQuserProgPrivVO(ProgQuserProgPrivVO source)
79 {
80 ProgQuserProgPrivPK pk = new ProgQuserProgPrivPK();
81
82
83 String progCd = source.getProgCd();
84 if (StringUtils.isBlank(progCd) && source.getProgramVO() != null) {
85 progCd = source.getProgramVO().getProgCd();
86 }
87 pk.setProgram(load(ProgramImpl.class, progCd));
88
89 pk.setQuser(load(QuserImpl.class, source.getQuserId()));
90 pk.setProgramPrivilege(load(ProgramPrivilegeImpl.class, source.getProgPrivId()));
91
92 ProgQuserProgPriv target = this.get(pk);
93 if (target == null) {
94 target = ProgQuserProgPriv.Factory.newInstance();
95 target.setProgQuserProgPrivPk(pk);
96 }
97 return target;
98 }
99
100
101 public ProgQuserProgPriv progQuserProgPrivVOToEntity(ProgQuserProgPrivVO progQuserProgPrivVO)
102 {
103 ProgQuserProgPriv entity = this.loadProgQuserProgPrivFromProgQuserProgPrivVO(progQuserProgPrivVO);
104 this.progQuserProgPrivVOToEntity(progQuserProgPrivVO, entity, true);
105 return entity;
106 }
107 }