|
@@ -27,7 +27,7 @@ import java.util.regex.Pattern;
|
|
|
public class TzXmlUtil {
|
|
|
|
|
|
/**
|
|
|
- * getText()获取当前节点的文本内容,getStringValue()获取所有子节点拼接后的文本内容
|
|
|
+ * getText()获取当前节点的文本内容,getStringValue()获取所有子节点拼接后的文本内容
|
|
|
*
|
|
|
* @param xml
|
|
|
* @return
|
|
@@ -38,24 +38,28 @@ public class TzXmlUtil {
|
|
|
try {
|
|
|
Document doc = DocumentHelper.parseText(XmlUtil.xmlErrorCorrection(xml));
|
|
|
List<Element> emrTermElements = doc.getRootElement().element("TermList").elements("EMR-TERM");
|
|
|
- emrTermElements.forEach(emrTermElement -> {
|
|
|
- if(retMap == null || StringUtil.isEmpty(retMap.get(StringUtil.removeBlank(emrTermElement.attributeValue("ename"))))){
|
|
|
- retMap.put(
|
|
|
- StringUtil.removeBlank(emrTermElement.attributeValue("ename")),
|
|
|
- emrTermElement.getStringValue().trim()
|
|
|
- );
|
|
|
+ String ename, setnomark, text;
|
|
|
+ for (Element emrTermElement : emrTermElements) {
|
|
|
+ ename = StringUtil.removeBlank(emrTermElement.attributeValue("ename"));
|
|
|
+ setnomark = emrTermElement.attributeValue("setnomark");
|
|
|
+ text = emrTermElement.getStringValue().trim();
|
|
|
+ if (retMap == null || StringUtil.isEmpty(retMap.get(ename))) {
|
|
|
+ if (StringUtil.isBlank(text)) {
|
|
|
+ retMap.put(ename, setnomark);
|
|
|
+ } else {
|
|
|
+ retMap.put(ename, text);
|
|
|
+ }
|
|
|
}
|
|
|
- });
|
|
|
+ }
|
|
|
} catch (Exception e) {
|
|
|
e.printStackTrace();
|
|
|
}
|
|
|
return XmlUtil.correctMapOfXml(retMap);
|
|
|
}
|
|
|
|
|
|
-
|
|
|
/**
|
|
|
- * getText()获取当前节点的文本内容,getStringValue()获取所有子节点拼接后的文本内容
|
|
|
- * 需要转义
|
|
|
+ * getText()获取当前节点的文本内容,getStringValue()获取所有子节点拼接后的文本内容
|
|
|
+ * 需要转义
|
|
|
*
|
|
|
* @param xml
|
|
|
* @return
|
|
@@ -63,9 +67,9 @@ public class TzXmlUtil {
|
|
|
|
|
|
public static Map<String, String> getXmlToMapForTZWithReplace(String xml) {
|
|
|
Map<String, Object> res = getReplace(xml);
|
|
|
- String contentReplace = (String)res.get("content");
|
|
|
+ String contentReplace = (String) res.get("content");
|
|
|
Map<String, String> sourceMap = TzXmlUtil.getXmlToMapForTZ(contentReplace);
|
|
|
- Boolean replace = (Boolean)res.get("repFlag"); // 获取是否要替换的标识
|
|
|
+ Boolean replace = (Boolean) res.get("repFlag"); // 获取是否要替换的标识
|
|
|
if (replace) {
|
|
|
Map<String, String> map = (Map) res.get("replaceMap");
|
|
|
for (String key : sourceMap.keySet()) {
|
|
@@ -83,7 +87,6 @@ public class TzXmlUtil {
|
|
|
|
|
|
|
|
|
/**
|
|
|
- *
|
|
|
* @param content
|
|
|
* @return
|
|
|
*/
|
|
@@ -102,7 +105,7 @@ public class TzXmlUtil {
|
|
|
|
|
|
// 现在创建 matcher 对象
|
|
|
Matcher m = r.matcher(content);
|
|
|
- while(m.find()) {
|
|
|
+ while (m.find()) {
|
|
|
String msg = m.group();
|
|
|
if (!msg.contains("=")) {
|
|
|
cutWord.add(msg);
|
|
@@ -137,6 +140,7 @@ public class TzXmlUtil {
|
|
|
|
|
|
/**
|
|
|
* 测试入口
|
|
|
+ *
|
|
|
* @param args
|
|
|
*/
|
|
|
public static void main(String[] args) {
|
|
@@ -149,12 +153,12 @@ public class TzXmlUtil {
|
|
|
Statement st = connection.createStatement();
|
|
|
ResultSet rs = null;
|
|
|
//执行查询
|
|
|
- String sql = "select mode_id, origin_text from qc_model_mapping where case_number='" + case_number + "' and mode_id='" + mode_id + "' order by id" ;
|
|
|
+ String sql = "select mode_id, origin_text from qc_model_mapping where case_number='" + case_number + "' and mode_id='" + mode_id + "' order by id";
|
|
|
rs = st.executeQuery(sql);
|
|
|
//遍历
|
|
|
- while(rs.next()) {
|
|
|
+ while (rs.next()) {
|
|
|
String context = rs.getString("origin_text");
|
|
|
-// Map<String, String> sourceMap = CxXmlUtil.firstLevelNodeValue(nodePath, context);
|
|
|
+ // Map<String, String> sourceMap = CxXmlUtil.firstLevelNodeValue(nodePath, context);
|
|
|
Map<String, String> sourceMap = TzXmlUtil.getXmlToMapForTZ(context);
|
|
|
for (String key : sourceMap.keySet()) {
|
|
|
System.out.println("\"" + key + "=\",");
|