package com.test.dto;
import lombok.Data;
import java.util.List;
@Data
public class ProjectAndScoringTasksDto {
private List<ScoringTasksDto> scoringTaskList;
}
package com.hihonor.it.pur.supinfo.interfaces.dto.comperf;
import lombok.Data;
@Data
public class ScoringTasksDto {
private String supCode;
private String supName;
private String keyElement;
private String keyWeight;
private String secondaryElement;
private int secondaryWeight;
}
public class Test1 {
public static void main(String[] args) throws Exception {
String strJson = "{\n" +
" \"id\": 5603,\n" +
" \"code\": \"63f25127-0e6e-4f36-9ed0-33cd3a8eb010\",\n" +
" \"name\": \"zf1107-1\",\n" +
" \"templateId\": 14015,\n" +
" \"templateName\": \"1101导入L1品类生效模板2\",\n" +
" \"esYear\": \"2022\",\n" +
" \"esPeriod\": \"Next half an annual\",\n" +
" \"originalStatus\": null,\n" +
" \"areaCode\": \"000018\",\n" +
" \"areaName\": \"消费者云业务部\",\n" +
" \"countryCode\": \"CN\",\n" +
" \"countryName\": \"中国\",\n" +
" \"projectRespPerson\": \"zw0035678\",\n" +
" \"projectRespPersonName\": \"zhangfen W0035678\",\n" +
" \"bizGroupCode\": \"100016\",\n" +
" \"bizGroupName\": \"ODM分部\",\n" +
" \"bizGroupCodes\": \"100000/100001/100004/100016\",\n" +
" \"bizGroupNames\": \"采购认证管理部/生产采购认证管理部/生产外包&ODM采购认证部/ODM分部\",\n" +
" \"materialTypeCode\": \"G100004\",\n" +
" \"materialTypeName\": \"生产外包&ODM采购认证部\",\n" +
" \"materialTypeCodes\": \"G100004\",\n" +
" \"materialTypeNames\": \"生产外包&ODM采购认证部\",\n" +
" \"status\": 10,\n" +
" \"signPerson\": null,\n" +
" \"signPersonName\": null,\n" +
" \"approver\": null,\n" +
" \"approverName\": null,\n" +
" \"signRule\": null,\n" +
" \"workflowId\": null,\n" +
" \"creator\": \"zw0035678\",\n" +
" \"creatorName\": \"zhangfen W0035678\",\n" +
" \"createDate\": \"2022-11-07 10:32:12\",\n" +
" \"lastUpdater\": \"zw0035678\",\n" +
" \"lastUpdateDate\": \"2022-11-07 10:32:12\",\n" +
" \"supNames\": \"珠海方正印刷电路板发展有限公司(051025)\",\n" +
" \"submitScoringFlag\": false,\n" +
" \"attachmentList\": [\n" +
" {\n" +
" \"docId\": \"M1T5A245N796324915913748507\",\n" +
" \"docName\": \"2022110700008387.txt\",\n" +
" \"docSize\": \"328\",\n" +
" \"createDate\": \"2022-11-07T10:30:55.000+0800\",\n" +
" \"creator\": \"zw0035678\"\n" +
" }\n" +
" ],\n" +
" \"scoringTaskList\": [\n" +
" {\n" +
" \"id\": 23733,\n" +
" \"projectId\": 5603,\n" +
" \"templateId\": 14015,\n" +
" \"templateItemId\": 14584,\n" +
" \"supCode\": \"051025\",\n" +
" \"supName\": \"珠海方正印刷电路板发展有限公司(051025)\",\n" +
" \"esRespPerson\": \"zw0035678\",\n" +
" \"esRespPersonName\": \"zhangfen W0035678\",\n" +
" \"representation\": null,\n" +
" \"esScore\": null,\n" +
" \"remark\": null,\n" +
" \"keyElement\": \"减分项\",\n" +
" \"keyWeight\": \"减分项10\",\n" +
" \"secondaryElement\": \"减分项10\",\n" +
" \"secondaryWeight\": -10,\n" +
" \"gradeStandard\": \"\",\n" +
" \"gradeRole\": \"98798\",\n" +
" \"orderNum\": 8,\n" +
" \"status\": -1,\n" +
" \"attachmentDtoList\": []\n" +
" },\n" +
" {\n" +
" \"id\": 23735,\n" +
" \"projectId\": 5603,\n" +
" \"templateId\": 14015,\n" +
" \"templateItemId\": 14586,\n" +
" \"supCode\": \"051025\",\n" +
" \"supName\": \"珠海方正印刷电路板发展有限公司(051025)\",\n" +
" \"esRespPerson\": \"zw0035678\",\n" +
" \"esRespPersonName\": \"zhangfen W0035678\",\n" +
" \"representation\": null,\n" +
" \"esScore\": null,\n" +
" \"remark\": null,\n" +
" \"keyElement\": \"减分项0\",\n" +
" \"keyWeight\": \"减分项0\",\n" +
" \"secondaryElement\": \"减分项0\",\n" +
" \"secondaryWeight\": 0,\n" +
" \"gradeStandard\": \"876\\n54345\\n5445\",\n" +
" \"gradeRole\": \"98798\",\n" +
" \"orderNum\": 10,\n" +
" \"status\": -1,\n" +
" \"attachmentDtoList\": []\n" +
" },\n" +
" {\n" +
" \"id\": 23736,\n" +
" \"projectId\": 5603,\n" +
" \"templateId\": 14015,\n" +
" \"templateItemId\": 14587,\n" +
" \"supCode\": \"a051025\",\n" +
" \"supName\": \"珠海方正印刷电路板发展有限公司(051025)\",\n" +
" \"esRespPerson\": \"zw0035678\",\n" +
" \"esRespPersonName\": \"zhangfen W0035678\",\n" +
" \"representation\": null,\n" +
" \"esScore\": null,\n" +
" \"remark\": null,\n" +
" \"keyElement\": \"减分项空\",\n" +
" \"keyWeight\": \"减分项空\",\n" +
" \"secondaryElement\": \"减分项空\",\n" +
" \"secondaryWeight\": 0,\n" +
" \"gradeStandard\": \"\",\n" +
" \"gradeRole\": \"98798\",\n" +
" \"orderNum\": 11,\n" +
" \"status\": -1,\n" +
" \"attachmentDtoList\": []\n" +
" },\n" +
" {\n" +
" \"id\": 23734,\n" +
" \"projectId\": 5603,\n" +
" \"templateId\": 14015,\n" +
" \"templateItemId\": 14585,\n" +
" \"supCode\": \"051025\",\n" +
" \"supName\": \"珠海方正印刷电路板发展有限公司(051025)\",\n" +
" \"esRespPerson\": \"zw0035678\",\n" +
" \"esRespPersonName\": \"zhangfen W0035678\",\n" +
" \"representation\": null,\n" +
" \"esScore\": null,\n" +
" \"remark\": null,\n" +
" \"keyElement\": \"减分项负数\",\n" +
" \"keyWeight\": \"减分项负数\",\n" +
" \"secondaryElement\": \"减分项负数\",\n" +
" \"secondaryWeight\": -100,\n" +
" \"gradeStandard\": \"\",\n" +
" \"gradeRole\": \"98798\",\n" +
" \"orderNum\": 9,\n" +
" \"status\": -1,\n" +
" \"attachmentDtoList\": []\n" +
" },\n" +
" {\n" +
" \"id\": 23726,\n" +
" \"projectId\": 5603,\n" +
" \"templateId\": 14015,\n" +
" \"templateItemId\": 14577,\n" +
" \"supCode\": \"051025\",\n" +
" \"supName\": \"珠海方正印刷电路板发展有限公司(051025)\",\n" +
" \"esRespPerson\": \"zw0035678\",\n" +
" \"esRespPersonName\": \"zhangfen W0035678\",\n" +
" \"representation\": null,\n" +
" \"esScore\": null,\n" +
" \"remark\": null,\n" +
" \"keyElement\": \"凡是\",\n" +
" \"keyWeight\": \"20\",\n" +
" \"secondaryElement\": \"6一天\",\n" +
" \"secondaryWeight\": 20,\n" +
" \"gradeStandard\": \"876\\n54345\\n5445\",\n" +
" \"gradeRole\": \"98798\",\n" +
" \"orderNum\": 1,\n" +
" \"status\": -1,\n" +
" \"attachmentDtoList\": []\n" +
" },\n" +
" {\n" +
" \"id\": 23729,\n" +
" \"projectId\": 5603,\n" +
" \"templateId\": 14015,\n" +
" \"templateItemId\": 14580,\n" +
" \"supCode\": \"051025\",\n" +
" \"supName\": \"珠海方正印刷电路板发展有限公司(051025)\",\n" +
" \"esRespPerson\": \"zw0035678\",\n" +
" \"esRespPersonName\": \"zhangfen W0035678\",\n" +
" \"representation\": null,\n" +
" \"esScore\": null,\n" +
" \"remark\": null,\n" +
" \"keyElement\": \"加分项\",\n" +
" \"keyWeight\": \"10\",\n" +
" \"secondaryElement\": \"10\",\n" +
" \"secondaryWeight\": 10,\n" +
" \"gradeStandard\": \"876\\n54345\\n5445\",\n" +
" \"gradeRole\": \"98798\",\n" +
" \"orderNum\": 4,\n" +
" \"status\": -1,\n" +
" \"attachmentDtoList\": []\n" +
" },\n" +
" {\n" +
" \"id\": 23730,\n" +
" \"projectId\": 5603,\n" +
" \"templateId\": 14015,\n" +
" \"templateItemId\": 14581,\n" +
" \"supCode\": \"b05102\",\n" +
" \"supName\": \"珠海方正印刷电路板发展有限公司(051025)\",\n" +
" \"esRespPerson\": \"zw0035678\",\n" +
" \"esRespPersonName\": \"zhangfen W0035678\",\n" +
" \"representation\": null,\n" +
" \"esScore\": null,\n" +
" \"remark\": null,\n" +
" \"keyElement\": \"加分项+\",\n" +
" \"keyWeight\": \"加分项+\",\n" +
" \"secondaryElement\": \"加分项+\",\n" +
" \"secondaryWeight\": 100,\n" +
" \"gradeStandard\": \"876\\n54345\\n5445\",\n" +
" \"gradeRole\": \"98798\",\n" +
" \"orderNum\": 5,\n" +
" \"status\": -1,\n" +
" \"attachmentDtoList\": []\n" +
" },\n" +
" {\n" +
" \"id\": 23732,\n" +
" \"projectId\": 5603,\n" +
" \"templateId\": 14015,\n" +
" \"templateItemId\": 14583,\n" +
" \"supCode\": \"a05102\",\n" +
" \"supName\": \"珠海方正印刷电路板发展有限公司(051025)\",\n" +
" \"esRespPerson\": \"zw0035678\",\n" +
" \"esRespPersonName\": \"zhangfen W0035678\",\n" +
" \"representation\": null,\n" +
" \"esScore\": null,\n" +
" \"remark\": null,\n" +
" \"keyElement\": \"加分项+\",\n" +
" \"keyWeight\": \"加分项0\",\n" +
" \"secondaryElement\": \"加分项+\",\n" +
" \"secondaryWeight\": 0,\n" +
" \"gradeStandard\": \"876\\n54345\\n5445\",\n" +
" \"gradeRole\": \"98798\",\n" +
" \"orderNum\": 7,\n" +
" \"status\": -1,\n" +
" \"attachmentDtoList\": []\n" +
" },\n" +
" {\n" +
" \"id\": 23731,\n" +
" \"projectId\": 5603,\n" +
" \"templateId\": 14015,\n" +
" \"templateItemId\": 14582,\n" +
" \"supCode\": \"b0009\",\n" +
" \"supName\": \"珠海方正印刷电路板发展有限公司(051025)\",\n" +
" \"esRespPerson\": \"zw0035678\",\n" +
" \"esRespPersonName\": \"zhangfen W0035678\",\n" +
" \"representation\": null,\n" +
" \"esScore\": null,\n" +
" \"remark\": null,\n" +
" \"keyElement\": \"加分项空\",\n" +
" \"keyWeight\": \"加分项空\",\n" +
" \"secondaryElement\": \"加分项空\",\n" +
" \"secondaryWeight\": 0,\n" +
" \"gradeStandard\": \"\",\n" +
" \"gradeRole\": \"98798\",\n" +
" \"orderNum\": 6,\n" +
" \"status\": -1,\n" +
" \"attachmentDtoList\": []\n" +
" },\n" +
" {\n" +
" \"id\": 23728,\n" +
" \"projectId\": 5603,\n" +
" \"templateId\": 14015,\n" +
" \"templateItemId\": 14579,\n" +
" \"supCode\": \"f00056\",\n" +
" \"supName\": \"珠海方正印刷电路板发展有限公司(051025)\",\n" +
" \"esRespPerson\": \"zw0035678\",\n" +
" \"esRespPersonName\": \"zhangfen W0035678\",\n" +
" \"representation\": null,\n" +
" \"esScore\": null,\n" +
" \"remark\": null,\n" +
" \"keyElement\": \"非凡的\",\n" +
" \"keyWeight\": \"80\",\n" +
" \"secondaryElement\": \"版本\",\n" +
" \"secondaryWeight\": 35,\n" +
" \"gradeStandard\": \"\",\n" +
" \"gradeRole\": \"98798\",\n" +
" \"orderNum\": 3,\n" +
" \"status\": -1,\n" +
" \"attachmentDtoList\": []\n" +
" },\n" +
" {\n" +
" \"id\": 23727,\n" +
" \"projectId\": 5603,\n" +
" \"templateId\": 14015,\n" +
" \"templateItemId\": 14578,\n" +
" \"supCode\": \"g051025\",\n" +
" \"supName\": \"珠海方正印刷电路板发展有限公司(051025)\",\n" +
" \"esRespPerson\": \"zw0035678\",\n" +
" \"esRespPersonName\": \"zhangfen W0035678\",\n" +
" \"representation\": null,\n" +
" \"esScore\": null,\n" +
" \"remark\": null,\n" +
" \"keyElement\": \"非凡的\",\n" +
" \"keyWeight\": \"80\",\n" +
" \"secondaryElement\": \"阿里\",\n" +
" \"secondaryWeight\": 45,\n" +
" \"gradeStandard\": \"876\\n54345\\n5445\",\n" +
" \"gradeRole\": \"98798\",\n" +
" \"orderNum\": 2,\n" +
" \"status\": -1,\n" +
" \"attachmentDtoList\": []\n" +
" }\n" +
" ]\n" +
" }";
ProjectAndScoringTasksDto tasksDto = JSON.parseObject(strJson, ProjectAndScoringTasksDto.class);
Comparator<ScoringTasksDto> c1 = (o1, o2) -> Collator.getInstance(Locale.CHINA).compare(o1.getKeyElement(), o2.getKeyElement());
Comparator<ScoringTasksDto> c2 = (o1, o2) -> Collator.getInstance(Locale.CHINA).compare(o1.getSecondaryElement(), o2.getSecondaryElement());
Comparator<ScoringTasksDto> c3 = (o1, o2) -> Collator.getInstance(Locale.CHINA).compare(o1.getSupCode(), o2.getSupCode());
tasksDto.getScoringTaskList().sort(c1.thenComparing(c2.thenComparing(c3)));
tasksDto.getScoringTaskList().forEach(item-> System.out.println(item.getKeyElement()+";"+item.getSecondaryElement()+";"+item.getSupCode()));
}
}