diff --git a/ai-analytic-center-biz/src/main/java/com/volvo/ai/analytic/center/service/impl/ClaimVerificationServiceImpl.java b/ai-analytic-center-biz/src/main/java/com/volvo/ai/analytic/center/service/impl/ClaimVerificationServiceImpl.java index 9b9ffc9..c6c45c4 100644 --- a/ai-analytic-center-biz/src/main/java/com/volvo/ai/analytic/center/service/impl/ClaimVerificationServiceImpl.java +++ b/ai-analytic-center-biz/src/main/java/com/volvo/ai/analytic/center/service/impl/ClaimVerificationServiceImpl.java @@ -187,47 +187,53 @@ public class ClaimVerificationServiceImpl implements ClaimVerificationService { List claimVerificationFiles = claimVerificationFileAnalysisDTO.getClaimVerificationFiles(); List resultFiles = new ArrayList<>(); for (ClaimVerificationFile claimVerificationFile : claimVerificationFiles) { - List fileObsPath = new ArrayList<>(); - fileObsPath.add(claimVerificationFile.getFileObsPath()); - List> fileIds = new ArrayList<>(); - log.info("文件分类文件ID:{}", fileObsPath); - //上传所有文件到dify - uploadFileToObs(fileObsPath, fileIds, fileClassifyToken); + try { + List fileObsPath = new ArrayList<>(); + fileObsPath.add(claimVerificationFile.getFileObsPath()); + List> fileIds = new ArrayList<>(); + log.info("文件分类文件ID:{}", fileObsPath); + //上传所有文件到dify + uploadFileToObs(fileObsPath, fileIds, fileClassifyToken); - //组装文件分析workflow入参 - JSONArray files = new JSONArray(); - for (HashMap fileToDifyDTO : fileIds) { - JSONObject object = new JSONObject(); - object.put(ClaimVerificationConstant.UPLOAD_FILE_ID, fileToDifyDTO.get(ClaimVerificationConstant.ID)); - object.put(ClaimVerificationConstant.TYPE, fileToDifyDTO.get(ClaimVerificationConstant.TYPE)); - object.put(ClaimVerificationConstant.TRANSFER_METHOD, ClaimVerificationConstant.LOCAL_FILE); - files.add(object); - } - //构建入参 - JSONObject fileToDifyDTO = new JSONObject(); - fileToDifyDTO.put("files", files); - //根据aiAnalysisRequestId更新请求日志表的difyRequest字段 - syncUpdateDiFyRequest(fileToDifyDTO.toString(), aiAnalysisRequestId); - DiFyReq diFyReq = new DiFyReq(); - diFyReq.setUser(BusinessTypeEnum.CLAIM_VERIFICATION.getCode()); - diFyReq.setFlowId(fileClassifyToken); - diFyReq.setInputs(fileToDifyDTO); - //调用dify 工作流 - JSONObject classifyDiFyObject = (JSONObject) diFyService.getDiFyObject(diFyReq); - - //处理结果 - if (classifyDiFyObject == null) { - log.error(" 售后索赔检核文件分类dify返回结果为空"); - saveException("售后索赔检核文件分类dify返回结果为空", aiAnalysisRequestId, null); - } else { - //解析dify返回结果 - String fileType = diFyObject.getString("fileBusinessType"); - //判断字符串那个是不为空的然后进行处理 - if (StringUtils.isNotBlank(fileType)) { - claimVerificationFile.setFileType(fileType); - } else { - claimVerificationFile.setFileType("0"); + //组装文件分析workflow入参 + JSONArray files = new JSONArray(); + for (HashMap fileToDifyDTO : fileIds) { + JSONObject object = new JSONObject(); + object.put(ClaimVerificationConstant.UPLOAD_FILE_ID, fileToDifyDTO.get(ClaimVerificationConstant.ID)); + object.put(ClaimVerificationConstant.TYPE, fileToDifyDTO.get(ClaimVerificationConstant.TYPE)); + object.put(ClaimVerificationConstant.TRANSFER_METHOD, ClaimVerificationConstant.LOCAL_FILE); + files.add(object); } + //构建入参 + JSONObject fileToDifyDTO = new JSONObject(); + fileToDifyDTO.put("files", files); + //根据aiAnalysisRequestId更新请求日志表的difyRequest字段 + syncUpdateDiFyRequest(fileToDifyDTO.toString(), aiAnalysisRequestId); + DiFyReq diFyReq = new DiFyReq(); + diFyReq.setUser(BusinessTypeEnum.CLAIM_VERIFICATION.getCode()); + diFyReq.setFlowId(fileClassifyToken); + diFyReq.setInputs(fileToDifyDTO); + //调用dify 工作流 + JSONObject classifyDiFyObject = (JSONObject) diFyService.getDiFyObject(diFyReq); + + //处理结果 + if (classifyDiFyObject == null) { + log.error(" 售后索赔检核文件分类dify返回结果为空"); + saveException("售后索赔检核文件分类dify返回结果为空", aiAnalysisRequestId, null); + } else { + //解析dify返回结果 + String fileType = classifyDiFyObject.getString("fileBusinessType"); + //判断字符串那个是不为空的然后进行处理 + if (StringUtils.isNotBlank(fileType)) { + claimVerificationFile.setFileType(fileType); + } else { + claimVerificationFile.setFileType("3"); + } + resultFiles.add(claimVerificationFile); + } + } catch (Exception e) { + log.error("文件分类异常:{}", e.getMessage()); + claimVerificationFile.setFileType("3"); resultFiles.add(claimVerificationFile); } }