SUPPORT-8937:add recruitment-sort for combik
This commit is contained in:
parent
546c0c4cd4
commit
99359431b9
2 changed files with 16 additions and 4 deletions
|
|
@ -31,11 +31,17 @@ public class RecruitmentDao {
|
|||
var recruitmentHierarchy = DSL.name("recruitment_hierarchy");
|
||||
|
||||
var cte = dslContext.withRecursive(recruitmentHierarchy).as(
|
||||
dslContext.select(Recruitment.RECRUITMENT.IDM_ID)
|
||||
dslContext.select(
|
||||
Recruitment.RECRUITMENT.IDM_ID,
|
||||
DSL.inline(1).as("depth")
|
||||
)
|
||||
.from(Recruitment.RECRUITMENT)
|
||||
.where(DSL.field(field).eq(value))
|
||||
.unionAll(
|
||||
dslContext.select(Recruitment.RECRUITMENT.IDM_ID)
|
||||
dslContext.select(
|
||||
Recruitment.RECRUITMENT.IDM_ID,
|
||||
DSL.field(DSL.name("recruitment_hierarchy", "depth"), Integer.class).add(1)
|
||||
)
|
||||
.from(Recruitment.RECRUITMENT)
|
||||
.join(DSL.table(recruitmentHierarchy))
|
||||
.on(Recruitment.RECRUITMENT.PARENT_ID.eq(
|
||||
|
|
@ -48,6 +54,7 @@ public class RecruitmentDao {
|
|||
return cte
|
||||
.select(DSL.field(DSL.name("recruitment_hierarchy", "idm_id"), String.class))
|
||||
.from(DSL.table(recruitmentHierarchy))
|
||||
.orderBy(DSL.field(DSL.name("recruitment_hierarchy", "depth")).asc())
|
||||
.fetchInto(String.class);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -90,8 +90,13 @@ public class RecruitmentComboBoxService extends ComboBoxServiceImpl {
|
|||
loadOptions.addSortField(this.displayColumn, SortOrder.ASC);
|
||||
}
|
||||
|
||||
List<TableRow> loadedData = this.loadDao.load(this.getColumnsToLoad(), loadOptions);
|
||||
return loadedData.stream()
|
||||
Map<String, TableRow> dataMap = this.loadDao.load(this.getColumnsToLoad(), loadOptions)
|
||||
.stream()
|
||||
.collect(Collectors.toMap(row -> (String)row.get(this.businessIdColumn), row -> row));
|
||||
|
||||
return recruitmentIds.stream()
|
||||
.map(dataMap::get)
|
||||
.filter(Objects::nonNull)
|
||||
.map(this::convertToComboBoxModel)
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue