@@ -28,16 +28,38 @@ public interface UserDAO extends Transactional<UserDAO> {
28
28
@ RegisterBeanMapper (value = User .class , prefix = "u" )
29
29
@ RegisterBeanMapper (value = UserRole .class )
30
30
@ RegisterBeanMapper (value = Institution .class , prefix = "i" )
31
+ @ RegisterBeanMapper (value = LibraryCard .class , prefix = "lc" )
31
32
@ UseRowReducer (UserWithRolesReducer .class )
32
- @ SqlQuery ("SELECT "
33
- + User .QUERY_FIELDS_WITH_U_PREFIX + QUERY_FIELD_SEPARATOR
34
- + Institution .QUERY_FIELDS_WITH_I_PREFIX + QUERY_FIELD_SEPARATOR
35
- + " ur.user_role_id, ur.user_id, ur.role_id, ur.dac_id, r.name "
36
- + " FROM users u "
37
- + " LEFT JOIN user_role ur ON ur.user_id = u.user_id "
38
- + " LEFT JOIN roles r ON r.role_id = ur.role_id "
39
- + " LEFT JOIN institution i ON u.institution_id = i.institution_id"
40
- + " WHERE u.user_id = :userId" )
33
+ @ SqlQuery ("""
34
+ SELECT
35
+ u.user_id as u_user_id,
36
+ u.email as u_email,
37
+ u.display_name as u_display_name,
38
+ u.create_date as u_create_date,
39
+ u.email_preference as u_email_preference,
40
+ u.institution_id as u_institution_id,
41
+ u.era_commons_id as u_era_commons_id,
42
+ i.institution_id as i_id,
43
+ i.institution_name as i_name,
44
+ i.it_director_name as i_it_director_name,
45
+ i.it_director_email as i_it_director_email,
46
+ i.create_date as i_create_date,
47
+ i.update_date as i_update_date,
48
+ ur.user_role_id as ur_user_role_id, ur.user_id as ur_user_id,
49
+ ur.role_id as ur_role_id, ur.dac_id as ur_dac_id, r.name as ur_name,
50
+ lc.id AS lc_id, lc.user_id AS lc_user_id,
51
+ lc.user_name AS lc_user_name, lc.user_email AS lc_user_email,
52
+ lc.create_user_id AS lc_create_user_id, lc.create_date AS lc_create_date,
53
+ lc.update_user_id AS lc_update_user_id,
54
+ ld.daa_id as lc_daa_id
55
+ FROM users u
56
+ LEFT JOIN user_role ur ON ur.user_id = u.user_id
57
+ LEFT JOIN roles r ON r.role_id = ur.role_id
58
+ LEFT JOIN institution i ON u.institution_id = i.institution_id
59
+ LEFT JOIN library_card lc ON lc.user_id = u.user_id
60
+ LEFT JOIN lc_daa ld ON lc.id = ld.lc_id
61
+ WHERE u.user_id = :userId
62
+ """ )
41
63
User findUserById (@ Bind ("userId" ) Integer userId );
42
64
43
65
@ RegisterBeanMapper (value = User .class , prefix = "u" )
@@ -93,17 +115,38 @@ public interface UserDAO extends Transactional<UserDAO> {
93
115
@ RegisterBeanMapper (value = User .class , prefix = "u" )
94
116
@ RegisterBeanMapper (value = UserRole .class , prefix = "ur" )
95
117
@ RegisterBeanMapper (value = Institution .class , prefix = "i" )
118
+ @ RegisterBeanMapper (value = LibraryCard .class , prefix = "lc" )
96
119
@ UseRowReducer (UserWithRolesReducer .class )
97
- @ SqlQuery ("SELECT "
98
- + User .QUERY_FIELDS_WITH_U_PREFIX + QUERY_FIELD_SEPARATOR
99
- + Institution .QUERY_FIELDS_WITH_I_PREFIX + QUERY_FIELD_SEPARATOR
100
- + " ur.user_role_id as ur_user_role_id, ur.user_id as ur_user_id, "
101
- + " ur.role_id as ur_role_id, ur.dac_id as ur_dac_id, r.name as ur_name "
102
- + " FROM users u "
103
- + " LEFT JOIN user_role ur ON ur.user_id = u.user_id "
104
- + " LEFT JOIN roles r ON r.role_id = ur.role_id "
105
- + " LEFT JOIN institution i ON u.institution_id = i.institution_id"
106
- + " WHERE LOWER(u.email) = LOWER(:email)" )
120
+ @ SqlQuery ("""
121
+ SELECT
122
+ u.user_id as u_user_id,
123
+ u.email as u_email,
124
+ u.display_name as u_display_name,
125
+ u.create_date as u_create_date,
126
+ u.email_preference as u_email_preference,
127
+ u.institution_id as u_institution_id,
128
+ u.era_commons_id as u_era_commons_id,
129
+ i.institution_id as i_id,
130
+ i.institution_name as i_name,
131
+ i.it_director_name as i_it_director_name,
132
+ i.it_director_email as i_it_director_email,
133
+ i.create_date as i_create_date,
134
+ i.update_date as i_update_date,
135
+ ur.user_role_id as ur_user_role_id, ur.user_id as ur_user_id,
136
+ ur.role_id as ur_role_id, ur.dac_id as ur_dac_id, r.name as ur_name,
137
+ lc.id AS lc_id, lc.user_id AS lc_user_id,
138
+ lc.user_name AS lc_user_name, lc.user_email AS lc_user_email,
139
+ lc.create_user_id AS lc_create_user_id, lc.create_date AS lc_create_date,
140
+ lc.update_user_id AS lc_update_user_id,
141
+ ld.daa_id as lc_daa_id
142
+ FROM users u
143
+ LEFT JOIN user_role ur ON ur.user_id = u.user_id
144
+ LEFT JOIN roles r ON r.role_id = ur.role_id
145
+ LEFT JOIN institution i ON u.institution_id = i.institution_id
146
+ LEFT JOIN library_card lc ON lc.user_id = u.user_id
147
+ LEFT JOIN lc_daa ld ON lc.id = ld.lc_id
148
+ WHERE LOWER(u.email) = LOWER(:email)
149
+ """ )
107
150
User findUserByEmail (@ Bind ("email" ) String email );
108
151
109
152
@ RegisterBeanMapper (value = User .class , prefix = "u" )
@@ -176,19 +219,6 @@ Integer insertUser(@Bind("email") String email,
176
219
List <User > describeUsersByRoleAndEmailPreference (@ Bind ("roleName" ) String roleName ,
177
220
@ Bind ("emailPreference" ) Boolean emailPreference );
178
221
179
- @ RegisterBeanMapper (value = User .class , prefix = "u" )
180
- @ RegisterBeanMapper (value = UserRole .class )
181
- @ UseRowReducer (UserWithRolesReducer .class )
182
- @ SqlQuery ("SELECT "
183
- + User .QUERY_FIELDS_WITH_U_PREFIX + QUERY_FIELD_SEPARATOR
184
- + " ur.user_role_id, ur.user_id, ur.role_id, ur.dac_id, r.name "
185
- + " FROM users u "
186
- + " LEFT JOIN user_role ur ON ur.user_id = u.user_id "
187
- + " LEFT JOIN roles r ON r.role_id = ur.role_id "
188
- + " WHERE LOWER(u.email) = LOWER(:email) "
189
- + " AND r.role_id = :roleId" )
190
- User findUserByEmailAndRoleId (@ Bind ("email" ) String email , @ Bind ("roleId" ) Integer roleId );
191
-
192
222
@ UseRowMapper (UserWithRolesMapper .class )
193
223
@ SqlQuery ("select du.*, r.role_id, r.name, ur.user_role_id, ur.user_id, ur.role_id, ur.dac_id " +
194
224
" from users du " +
0 commit comments