表头排序

This commit is contained in:
zhn
2023-09-07 14:02:11 +08:00
parent 3e729b88b8
commit 353b488b98
2 changed files with 149 additions and 2 deletions
@@ -159,7 +159,7 @@
</foreach>
) temp
<!--<include refid="BaseQuerySql"/>-->
<if test="params.orderByField != null and params.orderByField != ''">
<!--<if test="params.orderByField != null and params.orderByField != ''">
order by temp.${params.orderByField}
<if test="params.orderBy == 1">
asc
@@ -167,7 +167,7 @@
<if test="params.orderBy == 2">
desc
</if>
</if>
</if>-->
<if test="params.orderByField == null or params.orderByField == ''">
order by temp.serial_number desc
</if>
@@ -10406,9 +10406,156 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
}
//条件查询
result = dataParameter(params, result);
//表头排序
heartSort(params, result);
return result;
}
private void heartSort(Map<String, Object> params, List<Map<String, Object>> result) {
Collator comparator = Collator.getInstance(Locale.CHINESE);
if ("title".equals(params.get("orderByField"))) {
if (OrderEnum.POSITIVE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
String e1Field = ObjectUtils.isNotEmpty(e1.get("title")) ? String.valueOf(e1.get("title")) : "";
String e2Field = ObjectUtils.isNotEmpty(e2.get("title")) ? String.valueOf(e2.get("title")) : "";
return comparator.compare(e1Field, e2Field);
});
} else if (OrderEnum.REVERSE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
String e1Field = ObjectUtils.isNotEmpty(e1.get("title")) ? String.valueOf(e1.get("title")) : "";
String e2Field = ObjectUtils.isNotEmpty(e2.get("title")) ? String.valueOf(e2.get("title")) : "";
return comparator.compare(e2Field, e1Field);
});
}
}
if ("lawsName".equals(params.get("orderByField"))) {
if (OrderEnum.POSITIVE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
String e1Field = ObjectUtils.isNotEmpty(e1.get("lawsName")) ? String.valueOf(e1.get("lawsName")) : "";
String e2Field = ObjectUtils.isNotEmpty(e2.get("lawsName")) ? String.valueOf(e2.get("lawsName")) : "";
return comparator.compare(e1Field, e2Field);
});
} else if (OrderEnum.REVERSE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
String e1Field = ObjectUtils.isNotEmpty(e1.get("lawsName")) ? String.valueOf(e1.get("lawsName")) : "";
String e2Field = ObjectUtils.isNotEmpty(e2.get("lawsName")) ? String.valueOf(e2.get("lawsName")) : "";
return comparator.compare(e2Field, e1Field);
});
}
}
if ("projectName".equals(params.get("orderByField"))) {
if (OrderEnum.POSITIVE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
String e1Field = ObjectUtils.isNotEmpty(e1.get("projectName")) ? String.valueOf(e1.get("projectName")) : "";
String e2Field = ObjectUtils.isNotEmpty(e2.get("projectName")) ? String.valueOf(e2.get("projectName")) : "";
return comparator.compare(e1Field, e2Field);
});
} else if (OrderEnum.REVERSE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
String e1Field = ObjectUtils.isNotEmpty(e1.get("projectName")) ? String.valueOf(e1.get("projectName")) : "";
String e2Field = ObjectUtils.isNotEmpty(e2.get("projectName")) ? String.valueOf(e2.get("projectName")) : "";
return comparator.compare(e2Field, e1Field);
});
}
}
if ("problemType_dictText".equals(params.get("orderByField"))) {
if (OrderEnum.POSITIVE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
String e1Field = ObjectUtils.isNotEmpty(e1.get("problemType_dictText")) ? String.valueOf(e1.get("problemType_dictText")) : "";
String e2Field = ObjectUtils.isNotEmpty(e2.get("problemType_dictText")) ? String.valueOf(e2.get("problemType_dictText")) : "";
return comparator.compare(e1Field, e2Field);
});
} else if (OrderEnum.REVERSE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
String e1Field = ObjectUtils.isNotEmpty(e1.get("problemType_dictText")) ? String.valueOf(e1.get("problemType_dictText")) : "";
String e2Field = ObjectUtils.isNotEmpty(e2.get("problemType_dictText")) ? String.valueOf(e2.get("problemType_dictText")) : "";
return comparator.compare(e2Field, e1Field);
});
}
}
if ("dutyTerritory".equals(params.get("orderByField"))) {
if (OrderEnum.POSITIVE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
String e1Field = ObjectUtils.isNotEmpty(e1.get("dutyTerritory")) ? String.valueOf(e1.get("dutyTerritory")) : "";
String e2Field = ObjectUtils.isNotEmpty(e2.get("dutyTerritory")) ? String.valueOf(e2.get("dutyTerritory")) : "";
return comparator.compare(e1Field, e2Field);
});
} else if (OrderEnum.REVERSE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
String e1Field = ObjectUtils.isNotEmpty(e1.get("dutyTerritory")) ? String.valueOf(e1.get("dutyTerritory")) : "";
String e2Field = ObjectUtils.isNotEmpty(e2.get("dutyTerritory")) ? String.valueOf(e2.get("dutyTerritory")) : "";
return comparator.compare(e2Field, e1Field);
});
}
}
if ("createBy".equals(params.get("orderByField"))) {
if (OrderEnum.POSITIVE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
String e1Field = ObjectUtils.isNotEmpty(e1.get("createBy")) ? String.valueOf(e1.get("createBy")) : "";
String e2Field = ObjectUtils.isNotEmpty(e2.get("createBy")) ? String.valueOf(e2.get("createBy")) : "";
return comparator.compare(e1Field, e2Field);
});
} else if (OrderEnum.REVERSE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
String e1Field = ObjectUtils.isNotEmpty(e1.get("createBy")) ? String.valueOf(e1.get("createBy")) : "";
String e2Field = ObjectUtils.isNotEmpty(e2.get("createBy")) ? String.valueOf(e2.get("createBy")) : "";
return comparator.compare(e2Field, e1Field);
});
}
}
if ("problemState".equals(params.get("orderByField"))) {
if (OrderEnum.POSITIVE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
String e1Field = ObjectUtils.isNotEmpty(e1.get("problemState")) ? String.valueOf(e1.get("problemState")) : "";
String e2Field = ObjectUtils.isNotEmpty(e2.get("problemState")) ? String.valueOf(e2.get("problemState")) : "";
return comparator.compare(e1Field, e2Field);
});
} else if (OrderEnum.REVERSE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
String e1Field = ObjectUtils.isNotEmpty(e1.get("problemState")) ? String.valueOf(e1.get("problemState")) : "";
String e2Field = ObjectUtils.isNotEmpty(e2.get("problemState")) ? String.valueOf(e2.get("problemState")) : "";
return comparator.compare(e2Field, e1Field);
});
}
}
if ("createTime".equals(params.get("orderByField"))) {
if (OrderEnum.POSITIVE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
if (e1.get("createTime") == null || e2.get("createTime") == null) {
return 0;
}
return comparator.compare(e1.get("createTime"), e2.get("createTime"));
});
} else if (OrderEnum.REVERSE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
if (e1.get("createTime") == null || e2.get("createTime") == null) {
return 0;
}
return comparator.compare(e2.get("createTime"), e1.get("createTime"));
});
}
}
if ("updateTime".equals(params.get("orderByField"))) {
if (OrderEnum.POSITIVE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
if (e1.get("updateTime") == null || e2.get("updateTime") == null) {
return 0;
}
return comparator.compare(e1.get("updateTime"), e2.get("updateTime"));
});
} else if (OrderEnum.REVERSE.getValue().equals(params.get("orderBy"))) {
Collections.sort(result, (e1, e2) -> {
if (e1.get("updateTime") == null || e2.get("updateTime") == null) {
return 0;
}
return comparator.compare(e2.get("updateTime"), e1.get("updateTime"));
});
}
}
}
@NotNull
private List<Map<String, Object>> getNewData(Map<String, Object> params, String cut) {
//新数据