履职法警列表使用拼音序代替默认unicode序

This commit is contained in:
lightming7 2026-01-29 10:27:19 +08:00
parent 4093cddd6b
commit 56fa23b570

View File

@ -1,7 +1,11 @@
package com.ruoyi.web.controller.bussiness; package com.ruoyi.web.controller.bussiness;
import java.io.Serializable;
import java.text.Collator;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Comparator;
import java.util.List; import java.util.List;
import java.util.Locale;
import java.util.Map; import java.util.Map;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@ -73,15 +77,29 @@ public class PubApiController extends BaseController {
return obj.toString(); return obj.toString();
} }
public class PinyinComparator implements Comparator<String>, 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("履职法警列表") @ApiOperation("履职法警列表")
@GetMapping("/list_send_police") @GetMapping("/list_send_police")
public AjaxResult listSendPolice(@RequestParam("unit_id") Long unitId) public AjaxResult listSendPolice(@RequestParam("unit_id") Long unitId)
{ {
PinyinComparator pinyinComparator = new PinyinComparator();
JwSendPoliceQueryReq req = new JwSendPoliceQueryReq(); JwSendPoliceQueryReq req = new JwSendPoliceQueryReq();
req.setUnitId(unitId.toString()); req.setUnitId(unitId.toString());
req.setState("2"); req.setState("2");
List<Map> results = iSendPoliceTaskStatService.JwSendPoliceCountList(req); List<Map> 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); return AjaxResult.success(results);
} }
} }