diff --git a/src/main/java/com/ydw/bat/wkflow/business_activiti/task/TodoTaskController.java b/src/main/java/com/ydw/bat/wkflow/business_activiti/task/TodoTaskController.java index 70c2ca40..17630a45 100644 --- a/src/main/java/com/ydw/bat/wkflow/business_activiti/task/TodoTaskController.java +++ b/src/main/java/com/ydw/bat/wkflow/business_activiti/task/TodoTaskController.java @@ -881,10 +881,17 @@ public class TodoTaskController extends BaseAction { } JSONObject object3 = JSONObject.parseObject(list.get(0).getMesg()); + + // 对文件排序 + compareFile("FBGBUSS",object3); + compareFile("BZSMBUSS",object3); + compareFile("LSBBBUSS",object3); + compareFile("QTWJBUSS",object3); + JSONArray arr2 = new JSONArray(); object3.put("taskBreak", arr2); processNew.setMesg(object3.toJSONString()); - QueryWrapper wrapper = new QueryWrapper(); + QueryWrapper wrapper = new QueryWrapper<>(); wrapper.eq("TODO_ID",processNew.getId()); wrapper.eq("EXEC_TYPE",2); wrapper.eq("EXEC_STATUS",0); @@ -3317,4 +3324,27 @@ public class TodoTaskController extends BaseAction { return processNew; } + + /** + * 用于对文件字段的文件根据上传时间倒序 + * @param attFileField 文件字段 + * @param object 传输对象 + */ + private void compareFile(String attFileField, JSONObject object) { + String attFileId = object.getString(attFileField); + // 字段不为空并且文件数量大于1,才需要排序 + if (StringUtils.isNotBlank(attFileId) && attFileId.split(",").length > 1) { + ResponseMessage> attInfoByAttIds = lawsUserInfoService.getAttInfoByAttIds(attFileId); + List attFileEOList = attInfoByAttIds.getData(); + attFileEOList.sort(Comparator.comparing(AttFileEO::getCreationTime).reversed()); + List attFileIdList = new ArrayList<>(); + List attFileNameList = new ArrayList<>(); + for (AttFileEO attFileEO : attFileEOList) { + attFileIdList.add(attFileEO.getId()); + attFileNameList.add(attFileEO.getOldFileName()); + } + object.put(attFileField, String.join(",", attFileIdList)); + object.put(attFileField + "Name", String.join(",", attFileNameList)); + } + } } diff --git a/src/main/java/com/ydw/bat/wkflow/business_auth/LawsUserInfoService.java b/src/main/java/com/ydw/bat/wkflow/business_auth/LawsUserInfoService.java index 7b7c7914..599ab5e8 100644 --- a/src/main/java/com/ydw/bat/wkflow/business_auth/LawsUserInfoService.java +++ b/src/main/java/com/ydw/bat/wkflow/business_auth/LawsUserInfoService.java @@ -194,6 +194,9 @@ public interface LawsUserInfoService { @GetMapping("/lawss/SarBussStandAttrInfo/getBussAttrInfo") public Map getBussAttrInfo(@RequestParam("standId") String standId); + @GetMapping("/att/attFile/getMultiFileInfos") + public ResponseMessage> getAttInfoByAttIds(@RequestParam("fileIds") String fileIds); + @PostMapping("/sarStandUnqualified/sar-stand-unqualified/updateBatch") public ResponseMessage updateBatch(@RequestBody List sarStandUnqualified);