瀏覽代碼

恩泽:手术知情同意书解析更改

wangsy 4 年之前
父節點
當前提交
82995d740e

+ 13 - 7
structure-center/src/main/java/com/lantone/structure/facade/tran/OperationInformedConsentDocTran.java

@@ -34,29 +34,32 @@ public class OperationInformedConsentDocTran extends TargetTran {
         Map<String, String> sourceMap = Maps.newHashMap();
         List<String> titles = CommonAnalysisUtil.sortTitles(
                 Lists.newArrayList("二、您的主刀医师是", "三、术前诊断", "拟实施手术名称", "手术指征", "四、医师会用通俗易懂的语言向您解释", "(1)告知可能发生的意外、并发症或风险",
-                        "(2)告知手术后可能出现 的意外和并发症", "3.特殊风险或主要高危因素", "针对上述情况医师将采取的防范措施", "五、替代治疗方案及优缺点", "患者及家属要求手术治疗,并签字为证",
-                        "七、医师声明", "书写者签名", "主刀医师签名", "八、患方意见", "患者(代理人)签名"),
+                        "(2)告知手术后可能出现 的意外和并发症", "(2)告知手术后可能出现的意外和并发症", "3.特殊风险或主要高危因素", "针对上述情况医师将采取的防范措施", "五、替代治疗方案及优缺点", "患者及家属要求手术治疗,并签字为证",
+                        "七、医师声明", "书写者签名", "主刀医师签名", "八、患方意见", "患者(代理人)签名","患方签名"),
                 text
         );
         CommonAnalysisUtil.cutByTitles(text, titles, 0, sourceMap);
         if (sourceMap != null) {
             disDate(sourceMap, "书写者签名", "签名时间");
             disDate(sourceMap, "患者(代理人)签名", "签名时间");
+            disDate(sourceMap, "患方签名", "签名时间");
             disDate(sourceMap, "患者及家属要求手术治疗,并签字为证", "七、医师声明");
             disDate(sourceMap, "主刀医师签名", "八、患方意见");
             disDate(sourceMap, "主刀医师签名", "签名时间");
-
-            CommonAnalysisUtil.removeKey(sourceMap, "二、您的主刀医师是", "四、医师会用通俗易懂的语言向您解释","3.特殊风险或主要高危因素");
+            if (sourceMap.containsKey("五、替代治疗方案及优缺点") && sourceMap.get("五、替代治疗方案及优缺点").contains("六、医学是一门科学")) {
+                sourceMap.put("五、替代治疗方案及优缺点", sourceMap.get("五、替代治疗方案及优缺点").substring(0, sourceMap.get("五、替代治疗方案及优缺点").indexOf("六、医学是一门科学")));
+            }
+            CommonAnalysisUtil.removeKey(sourceMap, "二、您的主刀医师是", "四、医师会用通俗易懂的语言向您解释", "3.特殊风险或主要高危因素", "针对上述情况医师将采取的防范措施");
         }
         return sourceMap;
     }
 
     private void disDate(Map sourceMap, String... args) {
         Map<String, String> sourceMap_ = MapUtil.copyMap(sourceMap);
-        if(sourceMap.containsKey(args[0]) && sourceMap_.get(args[0]).contains(args[1])){
+        if (sourceMap.containsKey(args[0]) && sourceMap_.get(args[0]).contains(args[1])) {
             int index = sourceMap_.get(args[0]).indexOf(args[1]);
-            sourceMap.put(args[0],sourceMap_.get(args[0]).substring(0,index));
-            sourceMap.put(args[0]+args[1],sourceMap_.get(args[0]).substring(index).replace(args[1],"").replaceAll("[::]",""));
+            sourceMap.put(args[0], sourceMap_.get(args[0]).substring(0, index));
+            sourceMap.put(args[0] + args[1], sourceMap_.get(args[0]).substring(index).replace(args[1], "").replaceAll("[::]", ""));
         }
     }
 
@@ -66,13 +69,16 @@ public class OperationInformedConsentDocTran extends TargetTran {
             "拟实施手术名称=拟实施手术及操作日期时间",
             "(1)告知可能发生的意外、并发症或风险=手术中可能出现的意外及风险",
             "(2)告知手术后可能出现的意外和并发症=手术后可能出现的意外及并发症",
+            "(2)告知手术后可能出现 的意外和并发症=手术后可能出现的意外及并发症",
             "五、替代治疗方案及优缺点=替代方案",
             "患者(代理人)签名=患者签名",
+            "患方签名=患者签名",
             "患者(代理人)签名=法定代理人签名",
             "主刀医师签名=手术者签名",
             "书写者签名=经治医师签名",
             "书写者签名签名时间=医师签名日期时间",
             "患者(代理人)签名签名时间=患者/法定代理人签名日期时间",
+            "患方签名签名时间=患者/法定代理人签名日期时间",
             "七、医师声明=医疗机构意见",
             "患者及家属要求手术治疗,并签字为证七、医师声明=医疗机构意见",
             "主刀医师签名八、患方意见=患者/法定代理人意见",