陕西万众审批项目顺序
This commit is contained in:
parent
8f959cb83b
commit
ef7384281e
|
|
@ -1404,16 +1404,41 @@ public class SalaryAcctExcelServiceImpl extends Service implements SalaryAcctExc
|
|||
throw new SalaryRunTimeException("薪资核算记录不存在,或已被删除");
|
||||
}
|
||||
List<SalarySobItemPO> salarySobItemPOS = getSalarySobItemService(user).listBySalarySobId(salaryAcctRecordPO.getSalarySobId());
|
||||
Map<Long, Integer> sobItemPOMap = SalaryEntityUtil.convert2Map(salarySobItemPOS, SalarySobItemPO::getSalaryItemId, SalarySobItemPO::getShowInWorkflow);
|
||||
List<Long> salaryItemIds = SalaryEntityUtil.properties(salarySobItemPOS, SalarySobItemPO::getSalaryItemId, Collectors.toList());
|
||||
List<SalaryItemPO> itemPOList = getSalaryItemService(user).listByIds(salaryItemIds);
|
||||
List<SalarySobItemPO> sortedSalarySobItemPOS = new ArrayList<>();
|
||||
Map<Long, List<SalarySobItemPO>> sobItemByGroup = SalaryEntityUtil.group2Map(salarySobItemPOS, SalarySobItemPO::getSalarySobItemGroupId);
|
||||
// 给薪资项目排序
|
||||
for (Map.Entry<Long, List<SalarySobItemPO>> entry : sobItemByGroup.entrySet()) {
|
||||
if (CollectionUtils.isNotEmpty(entry.getValue())) {
|
||||
entry.setValue(entry.getValue().stream().sorted(Comparator.comparingInt(SalarySobItemPO::getSortedIndex)).collect(Collectors.toList()));
|
||||
}
|
||||
}
|
||||
// 给分组排序
|
||||
List<SalarySobItemGroupPO> salarySobItemGroupPOS = getSalarySobItemGroupService(user).listBySalarySobId(salaryAcctRecordPO.getSalarySobId());
|
||||
List<Long> sortedGroupIds = salarySobItemGroupPOS.stream().sorted(Comparator.comparingInt(SalarySobItemGroupPO::getSortedIndex)).map(SalarySobItemGroupPO::getId).collect(Collectors.toList());
|
||||
sortedGroupIds.stream().forEach(groupId -> {
|
||||
List<SalarySobItemPO> groupSobItemPOS = sobItemByGroup.get(groupId);
|
||||
if (CollectionUtils.isNotEmpty(groupSobItemPOS)) {
|
||||
sortedSalarySobItemPOS.addAll(groupSobItemPOS);
|
||||
}
|
||||
});
|
||||
List<SalarySobItemPO> salarySobItemPOSNoGroup = sobItemByGroup.get(0L);
|
||||
if (CollectionUtils.isNotEmpty(salarySobItemPOSNoGroup)) {
|
||||
sortedSalarySobItemPOS.addAll(salarySobItemPOSNoGroup);
|
||||
}
|
||||
Map<Long, Integer> sobItemPOMap = SalaryEntityUtil.convert2Map(sortedSalarySobItemPOS, SalarySobItemPO::getSalaryItemId, SalarySobItemPO::getShowInWorkflow);
|
||||
List<Long> salaryItemIds = SalaryEntityUtil.properties(sortedSalarySobItemPOS, SalarySobItemPO::getSalaryItemId, Collectors.toList());
|
||||
Map<Long, SalaryItemPO> itemPOMap = SalaryEntityUtil.convert2Map(getSalaryItemService(user).listByIds(salaryItemIds), SalaryItemPO::getId);
|
||||
List<Map<String, Object>> result = new ArrayList<>();
|
||||
itemPOList.stream().forEach( po -> {
|
||||
Map<String, Object> map = new HashMap<>();
|
||||
map.put("id", po.getId());
|
||||
map.put("name", po.getName());
|
||||
map.put("default",sobItemPOMap.get(po.getId()) == null ? 0 : sobItemPOMap.get(po.getId()));
|
||||
result.add(map);
|
||||
sortedSalarySobItemPOS.stream().forEach( sobItemPO -> {
|
||||
SalaryItemPO po = itemPOMap.get(sobItemPO.getSalaryItemId());
|
||||
if (po != null) {
|
||||
Map<String, Object> map = new HashMap<>();
|
||||
map.put("id", po.getId());
|
||||
map.put("name", po.getName());
|
||||
map.put("default",sobItemPOMap.get(po.getId()) == null ? 0 : sobItemPOMap.get(po.getId()));
|
||||
result.add(map);
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
return result;
|
||||
|
|
|
|||
Loading…
Reference in New Issue