UAT197条修改,项目库详情-统计-表头排序
This commit is contained in:
+40
@@ -1874,6 +1874,7 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(CollectionUtils.isNotEmpty(dataList)){
|
if(CollectionUtils.isNotEmpty(dataList)){
|
||||||
|
this.projectDetailsStatisticsGroupByTerritoryHearSort(dataList,params);
|
||||||
result.put("dataList",dataList);
|
result.put("dataList",dataList);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
@@ -2035,11 +2036,50 @@ public class ProjectLibraryBaseServiceImpl extends ServiceImpl<ProjectLibraryBas
|
|||||||
dataList.add(dataMap);
|
dataList.add(dataMap);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
this.projectDetailsStatisticsGroupByTerritoryHearSort(dataList,params);
|
||||||
result.put("dataList",dataList);
|
result.put("dataList",dataList);
|
||||||
}
|
}
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 项目库详情统计-根据责任领域分组统计数据-表头排序
|
||||||
|
* @param dataList
|
||||||
|
* @param params
|
||||||
|
*/
|
||||||
|
private void projectDetailsStatisticsGroupByTerritoryHearSort(List<Map<String, Object>> dataList,Map<String,Object> params) {
|
||||||
|
String orderByField = (String) params.get("orderByField");
|
||||||
|
String orderBy = (String) params.get("orderBy");
|
||||||
|
if(CollectionUtils.isNotEmpty(dataList) && StringUtils.isNotEmpty(orderByField) && StringUtils.isNotEmpty(orderBy)){
|
||||||
|
Collator comparator = Collator.getInstance(Locale.CHINESE);
|
||||||
|
Collections.sort(dataList,(data1,data2)->{
|
||||||
|
String param1 = "";
|
||||||
|
String param2 = "";
|
||||||
|
// 一级责任领域名称
|
||||||
|
if("dutyTerritoryName".equals(orderByField)){
|
||||||
|
param1 = StringUtils.isNotEmpty((String) data1.get("dutyTerritoryName")) ? (String) data1.get("dutyTerritoryName") : "";
|
||||||
|
param2 = StringUtils.isNotEmpty((String) data2.get("dutyTerritoryName")) ? (String) data2.get("dutyTerritoryName") : "";
|
||||||
|
}
|
||||||
|
// 数量
|
||||||
|
if("amount".equals(orderByField)){
|
||||||
|
param1 = StringUtils.isNotEmpty(String.valueOf(data1.get("amount"))) ? String.valueOf(data1.get("amount")) : "";
|
||||||
|
param2 = StringUtils.isNotEmpty(String.valueOf(data2.get("amount"))) ? String.valueOf(data2.get("amount")) : "";
|
||||||
|
}
|
||||||
|
// 占比
|
||||||
|
if("percentage".equals(orderByField)){
|
||||||
|
param1 = StringUtils.isNotEmpty((String) data1.get("percentage")) ? (String) data1.get("percentage") : "";
|
||||||
|
param2 = StringUtils.isNotEmpty((String) data2.get("percentage")) ? (String) data2.get("percentage") : "";
|
||||||
|
}
|
||||||
|
if(OrderEnum.POSITIVE.getValue().equals(orderBy)){
|
||||||
|
return comparator.compare(param1,param2);
|
||||||
|
}else if(OrderEnum.REVERSE.getValue().equals(orderBy)){
|
||||||
|
return comparator.compare(param2,param1);
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void exportProjectDetailsStatisticsGroupByTerritoryXls(HttpServletResponse response, HttpServletRequest request, Map<String, Object> params) {
|
public void exportProjectDetailsStatisticsGroupByTerritoryXls(HttpServletResponse response, HttpServletRequest request, Map<String, Object> params) {
|
||||||
Map<String, Object> projectDetailsStatisticsGroupByTerritory = getProjectDetailsStatisticsGroupByTerritory(params);
|
Map<String, Object> projectDetailsStatisticsGroupByTerritory = getProjectDetailsStatisticsGroupByTerritory(params);
|
||||||
|
|||||||
Reference in New Issue
Block a user