From e457cdf56e33df5651aa8b28985e463a43ece474 Mon Sep 17 00:00:00 2001 From: lzy Date: Wed, 12 Jan 2022 10:30:09 +0800 Subject: [PATCH] =?UTF-8?q?=E6=A2=85=E5=B7=9E=E7=94=B5=E5=AD=90=E7=97=85?= =?UTF-8?q?=E7=90=86=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dataConfig/homeQualitySet.json | 19 +++- .../com/docus/bgts/utils/ResultUtils.java | 96 +++++++++++-------- 2 files changed, 72 insertions(+), 43 deletions(-) diff --git a/dataConfig/homeQualitySet.json b/dataConfig/homeQualitySet.json index 0d741a8..f67d105 100644 --- a/dataConfig/homeQualitySet.json +++ b/dataConfig/homeQualitySet.json @@ -1,4 +1,12 @@ { + //----------响应标签------------- + //外部结构,多层,隔开 + "ResHead":"Response,Result", + //响应代码 + "ResCode":"Code", + //响应消息 + "ResMsg":"Msg", + //唯一键目录结构数组,最高层为前面,最后一层为数据采集层,根节点不填 "directory":["DOCUMENT"], //患者主索引号 @@ -7,7 +15,7 @@ "serialnum":"UNIQUE_ID", //文件标题 "filetitle":"DOCUMENT_TITLE", - //下载地址 + //下载地址,&代表多个选其一 "downurl":"BASE64&ORIGINAL_URL", //分类id "assortid":"OW1PA2SR2Z5XX2JR10KR29SK2OW101", @@ -24,6 +32,15 @@ //可能存在存储基本数据不同情况的标签 "doubleBasic":["TestItemInfo","BioTestInfo"], + //--------------采集操作判断撤销/新增--------------- + //是否开启采集操作判断撤销/新增 0:不开启,1:开启 默认不开启 + "isJudge":"0", + //判断标签存在目录,首个标签不填 + "judgeDirectory":[""], + //判定标签 + "judgeIndex":"", + + //--------撤销配置部分------------ //采集流水号所在位置,根目录不填 "repealDirectory":["DOCUMENT"], diff --git a/src/main/java/com/docus/bgts/utils/ResultUtils.java b/src/main/java/com/docus/bgts/utils/ResultUtils.java index d486949..eccad40 100644 --- a/src/main/java/com/docus/bgts/utils/ResultUtils.java +++ b/src/main/java/com/docus/bgts/utils/ResultUtils.java @@ -2,6 +2,7 @@ package com.docus.bgts.utils; import com.docus.bgts.enums.Codes; +import org.apache.bcel.classfile.Code; import org.apache.commons.lang3.StringUtils; import org.dom4j.Document; import org.dom4j.DocumentHelper; @@ -11,74 +12,85 @@ import org.dom4j.Element; * 返回结果工具类 */ public class ResultUtils { + + private static ResultUtils resultUtils; + + static { + resultUtils = new ResultUtils(); + } + + /** + * 私有化构造函数防止多例 + */ + private ResultUtils() { + } + /** * 通过document对象返回节点对象 + * * @param response * @return */ - public static Element getElement(Document response){ + public static Element getElement(Document response) { Element element = response.getRootElement(); return element; } + private Document set(String code, String msg) { + // 1、创建document对象 + Document document = DocumentHelper.createDocument(); + //2.创建根节点 + String resHead = String.valueOf(FileUtils.getJsonByName("ResHead")); + if (StringUtils.isBlank(resHead)) { + throw new RuntimeException("响应外层xml未设置"); + } + Element response = null; + String[] split = resHead.split(","); + for (int i = 0; i < split.length; i++) { + if (i == 0) { + response = document.addElement(split[i]); + } else { + response = response.addElement(split[i]); + } + } + + //3.生成代码和描述节点 + Element resCode = response.addElement(String.valueOf(FileUtils.getJsonByName("ResCode"))); + Element retCon = response.addElement(String.valueOf(FileUtils.getJsonByName("ResMsg"))); + //赋值 + resCode.setText(code); + retCon.setText(msg); + return document; + } + /** * 成功返回 + * * @return */ - public static Document success(){ - // 1、创建document对象 - Document document= DocumentHelper.createDocument(); - //2.创建根节点 - Element response=document.addElement(Codes.RESPONSE.getMessage()); - // 3、生成子节点及子节点内容 - Element RetInfo = response.addElement(Codes.RET_INFO.getMessage()); - //4.生成代码和描述节点 - Element resCode = RetInfo.addElement(Codes.RET_CODE.getMessage()); - Element retCon = RetInfo.addElement(Codes.RET_CON.getMessage()); - //赋值 - resCode.setText(String.valueOf(Codes.SUCCESS.getCode())); - retCon.setText(Codes.SUCCESS.getMessage()); + public static Document success() { + Document document = resultUtils.set(Codes.SUCCESS.getCode(), Codes.SUCCESS.getMessage()); return document; } /** * 失败返回 + * * @return */ - public static String fail(){ - // 1、创建document对象 - Document document= DocumentHelper.createDocument(); - //2.创建根节点 - Element response=document.addElement(Codes.RESPONSE.getMessage()); - // 3、生成子节点及子节点内容 - Element RetInfo = response.addElement(Codes.RET_INFO.getMessage()); - //4.生成代码和描述节点 - Element resCode = RetInfo.addElement(Codes.RET_CODE.getMessage()); - Element retCon = RetInfo.addElement(Codes.RET_CON.getMessage()); - //赋值 - resCode.setText(String.valueOf(Codes.ERROR.getCode())); - retCon.setText(Codes.ERROR.getMessage()); - return document.asXML(); + public static String fail() { + Document set = resultUtils.set(String.valueOf(Codes.ERROR.getCode()), Codes.ERROR.getMessage()); + return set.asXML(); } /** * 失败返回 + * * @return */ - public static String fail(String message){ - // 1、创建document对象 - Document document= DocumentHelper.createDocument(); - //2.创建根节点 - Element response=document.addElement(Codes.RESPONSE.getMessage()); - // 3、生成子节点及子节点内容 - Element RetInfo = response.addElement(Codes.RET_INFO.getMessage()); - //4.生成代码和描述节点 - Element resCode = RetInfo.addElement(Codes.RET_CODE.getMessage()); - Element retCon = RetInfo.addElement(Codes.RET_CON.getMessage()); - //赋值 - resCode.setText(String.valueOf(Codes.ERROR.getCode())); - retCon.setText(StringUtils.isNotBlank(message)?message: Codes.ERROR.getMessage()); - return document.asXML(); + public static String fail(String message) { + Document set = resultUtils.set(String.valueOf(Codes.ERROR.getCode()), StringUtils.isNotBlank(message) ? message : Codes.ERROR.getMessage()); + return set.asXML(); } }