diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/bussiness/PubApiController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/bussiness/PubApiController.java index d8dc549..a80fee7 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/bussiness/PubApiController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/bussiness/PubApiController.java @@ -1,7 +1,11 @@ package com.ruoyi.web.controller.bussiness; +import java.io.Serializable; +import java.text.Collator; import java.util.ArrayList; +import java.util.Comparator; import java.util.List; +import java.util.Locale; import java.util.Map; import org.springframework.beans.factory.annotation.Autowired; @@ -73,15 +77,29 @@ public class PubApiController extends BaseController { return obj.toString(); } + public class PinyinComparator implements Comparator, Serializable { + private static final long serialVersionUID = 1L; + final Collator collator; + + public PinyinComparator() { + this.collator = Collator.getInstance(Locale.CHINESE); + } + + public int compare(String o1, String o2) { + return this.collator.compare(o1, o2); + } + } + @ApiOperation("履职法警列表") @GetMapping("/list_send_police") public AjaxResult listSendPolice(@RequestParam("unit_id") Long unitId) { + PinyinComparator pinyinComparator = new PinyinComparator(); JwSendPoliceQueryReq req = new JwSendPoliceQueryReq(); req.setUnitId(unitId.toString()); req.setState("2"); List results = iSendPoliceTaskStatService.JwSendPoliceCountList(req); - results.sort((u1, u2) -> objectToString(u1.get("remark")).compareTo(objectToString(u2.get("remark")))); + results.sort((u1, u2) -> pinyinComparator.compare(objectToString(u1.get("remark")), objectToString(u2.get("remark")))); return AjaxResult.success(results); } }