Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Select an option

  • Save cesarockstar1985/d2526198a0f0870616953ba2efa984e3 to your computer and use it in GitHub Desktop.

Select an option

Save cesarockstar1985/d2526198a0f0870616953ba2efa984e3 to your computer and use it in GitHub Desktop.
try {
StringBuilder querySb = new StringBuilder();
querySb.append(" SELECT c.name as company, u.username, u.full_name, u.document_type, ");
querySb.append(" u.document_number, u.nationality, u.code, p.name as position, u.email, ");
querySb.append(" CASE u.self_assign_pod WHEN 'true' THEN 'Si' ELSE 'No' END self_assign_pod, ");
querySb.append(" CASE u.active WHEN 'true' THEN 'Si' ELSE 'No' END active, ");
querySb.append(" STRING_AGG(DISTINCT CASE WHEN lsz.active = TRUE THEN lsz.description END, ',') AS user_sub_zones ");
querySb.append(" FROM users u ");
querySb.append(" LEFT JOIN company c ON c.id = u.company_id ");
querySb.append(" LEFT JOIN position p ON p.id = u.position_id ");
querySb.append(" LEFT JOIN user_location_sub_zone ulsz ON u.id = ulsz.user_id ");
querySb.append(" LEFT JOIN location_sub_zone lsz ON ulsz.location_sub_zone_id = lsz.id ");
querySb.append(" LEFT JOIN location_zone lz ON lsz.location_zone_id = lz.id ");
if (filtersMap.containsKey("userId")) {
String userId = String.valueOf(filtersMap.getOrDefault("userId", ""));
querySb.append(" JOIN user_location_sub_zone szp ON ulsz.location_sub_zone_id = szp.location_sub_zone_id AND szp.user_id = "+ userId);
}
if(castUser.shouldFilterBySubZone()) {
querySb.append("JOIN user_location_sub_zone szp ON szp.location_sub_zone_id = ulsz.location_sub_zone_id" +
" AND szp.user_id = " + castUser.getId());
}
querySb.append(" WHERE u.deleted IS NOT TRUE ");
//querySb.append(" AND ulsz.deleted = 'FALSE' "); filtro removido a pedido de Johana
querySb.append(" AND u.deleted = 'FALSE' ");
String userName = String.valueOf(filtersMap.getOrDefault("name", ""));
String fullName = String.valueOf(filtersMap.getOrDefault("fullName", ""));
String code = String.valueOf(filtersMap.getOrDefault("code", ""));
String email = String.valueOf(filtersMap.getOrDefault("email", ""));
String documentNumber = String.valueOf(filtersMap.getOrDefault("documentNumber", ""));
String userCompany = String.valueOf(filtersMap.getOrDefault("userCompany", ""));
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment