HealthCheckController up
[portal.git] / portal-BE / src / main / java / org / onap / portal / service / BulkUploadUserRolesService.java
1 package org.onap.portal.service;
2
3 import java.util.ArrayList;
4 import java.util.List;
5 import java.util.Optional;
6 import javax.persistence.EntityManager;
7 import javax.transaction.Transactional;
8 import org.onap.portal.domain.dto.transport.BulkUploadRoleFunction;
9 import org.onap.portal.domain.dto.transport.BulkUploadUserRoles;
10 import org.springframework.beans.factory.annotation.Autowired;
11 import org.springframework.stereotype.Service;
12
13 @Service
14 @Transactional
15 class BulkUploadUserRolesService {
16
17     private static final String getBulkUsersForSingleRole = "select fr.role_name as roleName, fu.org_user_id as orgUserId, fa.auth_namespace as appNameSpace from fn_user_role fur "
18         + "left outer join fn_role fr on fr.role_id = fur.role_id "
19         + "left outer join fn_app fa on fa.app_id = fur.app_id "
20         + "left outer join fn_user fu on fu.user_id = fur.user_id "
21         + "where fa.ueb_key =:uebKey and fr.role_id =:roleId";
22
23     private static final String uploadAllRoleFunctions = "select fr.function_cd, fn.function_name from fn_role_function fr "
24         + "left outer join fn_function fn on fr.function_cd = fn.function_cd "
25         + "where role_id =:roleId";
26     
27     private static final String getBulkUserRoles = "select fr.role_name, fu.org_user_id, fa.auth_namespace from fn_user_role fur "
28         + "left outer join fn_role fr on fr.role_id = fur.role_id "
29         + "left outer join fn_app fa on fa.app_id = fur.app_id "
30         + "left outer join fn_user fu on fu.user_id = fur.user_id where fa.ueb_key =:uebKey";
31
32     private static final String uploadPartnerRoleFunctions = "select distinct eprf.function_cd, epfn.function_name "
33         + "from ep_app_role_function eprf "
34         + "left outer join ep_app_function epfn on eprf.function_cd = epfn.function_cd "
35         + "where eprf.role_id =:roleId";
36
37     private final EntityManager entityManager;
38
39     @Autowired
40     public BulkUploadUserRolesService(EntityManager entityManager) {
41         this.entityManager = entityManager;
42     }
43
44     List<BulkUploadUserRoles>  getBulkUsersForSingleRole(final String uebKey, final Long roleId){
45         return Optional.of(entityManager
46             .createQuery(getBulkUsersForSingleRole)
47             .setParameter("uebKey", uebKey)
48             .setParameter("roleId", roleId)
49             .getResultList()).orElse(new ArrayList());
50     }
51
52     List<BulkUploadRoleFunction> uploadAllRoleFunctions(final Long roleId){
53         return Optional.of(entityManager
54             .createQuery(uploadAllRoleFunctions)
55             .setParameter("roleId", roleId)
56             .getResultList()).orElse(new ArrayList());
57     }
58
59     public List<BulkUploadUserRoles> getBulkUserRoles(String uebKey) {
60         return Optional.of(entityManager
61             .createQuery(getBulkUserRoles)
62             .setParameter("uebKey", uebKey)
63             .getResultList()).orElse(new ArrayList());
64     }
65
66     public List<BulkUploadRoleFunction> uploadPartnerRoleFunctions(Long roleId) {
67         return Optional.of(entityManager
68             .createQuery(uploadPartnerRoleFunctions)
69             .setParameter("roleId", roleId)
70             .getResultList()).orElse(new ArrayList());
71     }
72 }