/decodeDetail接口中进行数据升序排序
标准解读流程的汇总详情
This commit is contained in:
@@ -1775,28 +1775,57 @@ public class TodoTaskController extends BaseAction {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private Double itemNumPro(String str){
|
||||
String temp="";
|
||||
Boolean flag=true;
|
||||
if(str==null||str.isEmpty())return -1.0;
|
||||
for (int i = 0; i < str.length(); i++) {
|
||||
if(str.charAt(i)>='0'&&str.charAt(i)<='9'){
|
||||
temp+=str.charAt(i);
|
||||
}else if(flag && str.charAt(i)=='.'){
|
||||
temp+=str.charAt(i);
|
||||
flag=false;
|
||||
}
|
||||
}
|
||||
if(temp.isEmpty()){
|
||||
return Double.MAX_VALUE;
|
||||
}
|
||||
return Double.valueOf(temp);
|
||||
}
|
||||
@ApiOperation(value = "解读流程汇总详情")
|
||||
@GetMapping("/decodeDetail")
|
||||
public BusProcessNew Detail(String taskIds, String pId) {
|
||||
QueryWrapper<BusProcessNew> q=new QueryWrapper<>();
|
||||
Map<String,JSONObject> msgData =new HashMap<>();
|
||||
List<String> nameData=new ArrayList<>();
|
||||
List<String> idData=new ArrayList<>();
|
||||
List<BusProcessNew> listData = iBusProcessNewService.list(q.eq("P_ID", pId));
|
||||
for (BusProcessNew bpn:listData) {
|
||||
|
||||
String mesg = bpn.getMesg();
|
||||
JSONObject object = JSONObject.parseObject(mesg);
|
||||
String resolveFlag = object.getString("resolveFlag");
|
||||
|
||||
if(bpn.getTaskInfo().equals("审核")&&resolveFlag.equals("1")){
|
||||
nameData.add(bpn.getUserId());
|
||||
msgData.put(bpn.getUserId(),JSONObject.parseObject(bpn.getMesg()));
|
||||
idData.add(bpn.getTaskId());
|
||||
msgData.put(bpn.getTaskId(),object);
|
||||
}
|
||||
}
|
||||
JSONArray jsonArray=new JSONArray();
|
||||
for (String name:nameData) {
|
||||
jsonArray.addAll(msgData.get(name).getJSONArray("itemList"));
|
||||
for (String id:idData) {
|
||||
jsonArray.addAll(msgData.get(id).getJSONArray("itemList"));
|
||||
}
|
||||
boolean f=false;
|
||||
for (int i = 0; i < jsonArray.size()-1; i++) {
|
||||
for (int j = 0; j < jsonArray.size()-1-i; j++) {
|
||||
Double itemNum = itemNumPro(jsonArray.getJSONObject(j).getString("itemsNum"));
|
||||
Double itemNumN= itemNumPro(jsonArray.getJSONObject(j+1).getString("itemsNum"));
|
||||
if(itemNum>itemNumN){
|
||||
JSONObject temp=jsonArray.getJSONObject(j);
|
||||
jsonArray.set(j,jsonArray.getJSONObject(j+1));
|
||||
jsonArray.set(j+1,temp);
|
||||
f=true;
|
||||
}
|
||||
}
|
||||
if(!f){break;}
|
||||
}
|
||||
List<String> taskIdList = new ArrayList<>(Arrays.asList(taskIds.split(",")));
|
||||
List<BusProcessNew> list = iBusProcessNewService.findNoExecuteBusProcessNewForEnd(taskIdList);
|
||||
|
||||
Reference in New Issue
Block a user