Summary Table

Categories Total Count
PII 0
URL 0
DNS 0
EKL 0
IP 0
PORT 0
VsID 0
CF 0
AI 0
VPD 0
PL 0
Other 0

File Content

package gov.va.med.ars.dao.ars.impl;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;

import javax.sql.DataSource;

import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Repository;

import gov.va.med.ars.dao.ars.IArsUserRolePermissionsRepository;
import gov.va.med.ars.model.response.UserRolePermissions;

@Repository
public class UserRolePermissionsRepositoryImpl implements IArsUserRolePermissionsRepository {

public static final Logger logger = LogManager.getLogger(UserRolePermissionsRepositoryImpl.class);

private JdbcTemplate jdbcTemplate;
//private NamedParameterJdbcTemplate npJdbcTemplate;

/**
* @param dataSource
*/
@Autowired
public void setJdbcTemplate(DataSource dataSource) {
this.jdbcTemplate = new JdbcTemplate(dataSource);
//this.npJdbcTemplate = new NamedParameterJdbcTemplate(dataSource);
}

@Override
public List<UserRolePermissions> getUserRolePermissions(String roleIds) {
List<UserRolePermissions> userRolePermissionsList = new ArrayList<UserRolePermissions>();
logger.info("getUserRolePermissions() value is : "+roleIds);

// String getPermissionsQuery = "SELECT p.PAGE_NAME, p.PERMISSION_NAME, p.ENABLED, p.PERMISSION_ID FROM ARS_ROLE_PERMISSIONS p WHERE p.ars_role_id in ("+roleIds+")";
String getPermissionsQuery = "SELECT u.ars_role_id,p.PAGE_NAME, p.PERMISSION_NAME, u.ENABLED, p.PERMISSION_ID FROM ARS_OWNER.ARS_ROLE_PERMISSIONS_USAGES u JOIN ARS_OWNER.ARS_ROLE_PERMISSIONS p on u.PERMISSION_ID=p.PERMISSION_ID JOIN ARS_OWNER.ARS_ROLE r on u.ARS_ROLE_ID=r.ARS_ROLE_ID WHERE u.ars_role_id in ("+roleIds+")";
List<Map<String, Object>> rows = jdbcTemplate.queryForList(getPermissionsQuery);
logger.info("getPermissionsQuery is :"+getPermissionsQuery);
logger.info("number of rows selected are : "+rows.size());

for ( Map<String, Object> rs : rows) {
UserRolePermissions userRolePermission = new UserRolePermissions();

logger.info("rs is: "+rs.toString());

userRolePermission.setPageName(((String)rs.get("PAGE_NAME")));
userRolePermission.setPermissionName(((String)rs.get("PERMISSION_NAME")));
String enabled = (String)rs.get("ENABLED");
if( enabled != null && (enabled.equals("Y") || enabled == "Y"))
userRolePermission.setEnabled(Boolean.TRUE);
else
userRolePermission.setEnabled(Boolean.FALSE);

userRolePermissionsList.add(userRolePermission);
}

logger.debug("userRolePermissionsList is :"+userRolePermissionsList);
return userRolePermissionsList;
}

}