diff --git a/pom.xml b/pom.xml
index 87e5c46..eeff88c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -134,6 +134,15 @@
org.springframework.boot
spring-boot-maven-plugin
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.8.1
+
+ 1.8
+ 1.8
+
+
LISInterface
diff --git a/src/main/java/com/ann/demo/controller/TestController.java b/src/main/java/com/ann/demo/controller/TestController.java
index d81cbe6..cf03542 100644
--- a/src/main/java/com/ann/demo/controller/TestController.java
+++ b/src/main/java/com/ann/demo/controller/TestController.java
@@ -60,7 +60,6 @@ public class TestController {
objects = client.invoke(interfaceForm.getInterfaceName(), interfaceForm.getParameter(), interfaceForm.getContent());
}
- System.out.println(objects[0]);
} catch (Exception e) {
e.printStackTrace();
}
diff --git a/src/main/java/com/ann/demo/service/AnalysisService.java b/src/main/java/com/ann/demo/service/AnalysisService.java
index 8a85fe6..ff67bc2 100644
--- a/src/main/java/com/ann/demo/service/AnalysisService.java
+++ b/src/main/java/com/ann/demo/service/AnalysisService.java
@@ -61,6 +61,8 @@ public class AnalysisService {
public String getHIPMessageServerResult(String message, Class tClass, String parameter,String webserviceId) throws Exception{
String outContent = "失败", typeCodeValue = "AE";
ArchiveDetail archiveDetail = null;
+ //是否走掉接口
+ boolean interfaceFlag = false;
try {
long startTime = System.currentTimeMillis();
long endTime = 0;
@@ -81,7 +83,6 @@ public class AnalysisService {
if((!ObjectUtils.isEmpty(messageDto.getDeliveryFlag()) )&&
Objects.equals(messageDto.getDeliveryFlag(),"广州金域")){
// 直接下载并生成文件到detail
- //System.out.println(messageDto.getReportAddress());
UUID uuid = UUID.randomUUID();
File pdfFile = FileUtils.createFile("pdfs", messageDto.getInpNo(), messageDto.getVisitId(), uuid.toString(), null);
if(Base64Utils.isBase64(messageDto.getReportAddress())) {
@@ -90,27 +91,29 @@ public class AnalysisService {
textContentTemp = "加密字节流转换pdf失败";
}
}else{
+ interfaceFlag = true;
//不是base64 2023-09-05新增,根据接口下载pdf
boolean downFileFlag = collectCheckService.downFileWithCheck(archiveMasterId,messageDto.getBarCode(),messageDto.getCheckReportId(), messageDto.getReportAddress());
if(!downFileFlag){
textContentTemp = "金域外送base64下载失败";
}
}
- // 查询库中是否存在 如果存在就更新
- archiveDetail = archiveDetailService.isExit(archiveMasterId, messageDto.getType(), messageDto.getSource(), messageDto.getApplyId(),messageDto.getCheckReportId());
- if (archiveDetail == null) {
- archiveDetail = new ArchiveDetail(uuid.toString(),archiveMasterId, new Date(), messageDto.getType(), messageDto.getSource(), messageDto.getApplyId(),
- messageDto.getDetailType(),messageDto.getCheckReportId());
- archiveDetail.setPdfPath(pdfFile.getAbsolutePath());
- archiveDetailService.save(archiveDetail);
- }else{
- archiveDetail.setPdfPath(pdfFile.getAbsolutePath());
- archiveDetailService.save(archiveDetail);
+ if(!interfaceFlag) {
+ // 查询库中是否存在 如果存在就更新
+ archiveDetail = archiveDetailService.isExit(archiveMasterId, messageDto.getType(), messageDto.getSource(), messageDto.getApplyId(), messageDto.getCheckReportId());
+ if (archiveDetail == null) {
+ archiveDetail = new ArchiveDetail(uuid.toString(), archiveMasterId, new Date(), messageDto.getType(), messageDto.getSource(), messageDto.getApplyId(),
+ messageDto.getDetailType(), messageDto.getCheckReportId());
+ archiveDetail.setPdfPath(pdfFile.getAbsolutePath());
+ archiveDetailService.save(archiveDetail);
+ } else {
+ archiveDetail.setPdfPath(pdfFile.getAbsolutePath());
+ archiveDetailService.save(archiveDetail);
+ }
}
// 替换消息的pdf节点
String tempMessage = XMLUtils.replaceXpath(message, pdfFile.getAbsolutePath());
if(!ObjectUtils.isEmpty(tempMessage)){
- //System.out.println(tempMessage);
message = tempMessage;
messageLog.setInputContent(message);
outContent = XMLUtils.generateV3XmlStr("AA", "成功啦~");
@@ -148,8 +151,9 @@ public class AnalysisService {
}
}
}catch (Exception e){
+ e.printStackTrace();
// 报错删掉患者报告详情信息
- if (archiveDetail != null) {
+ if (archiveDetail != null && !interfaceFlag) {
if (archiveDetail.getId() != null) {
archiveDetailService.delete(archiveDetail.getId());
}
diff --git a/src/main/java/com/ann/demo/service/CollectCheckService.java b/src/main/java/com/ann/demo/service/CollectCheckService.java
index 661e194..a4a3bd4 100644
--- a/src/main/java/com/ann/demo/service/CollectCheckService.java
+++ b/src/main/java/com/ann/demo/service/CollectCheckService.java
@@ -58,6 +58,7 @@ public class CollectCheckService {
public boolean downFileWithCheck(String masterId,String hospBarcode,String reportOdd,String fileUrl) {
//登录
String token = getTokenByCheckKey(siteCode, customerCode, collectionLocation);
+ System.out.println("获取token:"+token);
//下载
return downFileWithCheck(masterId,hospBarcode,reportOdd,fileUrl,token);
}
diff --git a/src/main/java/com/ann/demo/service/impl/MessageServiceImpl.java b/src/main/java/com/ann/demo/service/impl/MessageServiceImpl.java
index 878cab5..f96a18c 100644
--- a/src/main/java/com/ann/demo/service/impl/MessageServiceImpl.java
+++ b/src/main/java/com/ann/demo/service/impl/MessageServiceImpl.java
@@ -42,7 +42,6 @@ public class MessageServiceImpl implements MessageService {
@Override
public List findAllMessage() {
List allHaha = messageRepository.findAllHaha();
- System.out.println(allHaha.size());
return allHaha;
}
diff --git a/src/main/java/com/ann/demo/utils/Base64Utils.java b/src/main/java/com/ann/demo/utils/Base64Utils.java
index 6658c04..7c2d2db 100644
--- a/src/main/java/com/ann/demo/utils/Base64Utils.java
+++ b/src/main/java/com/ann/demo/utils/Base64Utils.java
@@ -1,25 +1,44 @@
package com.ann.demo.utils;
-import org.apache.axis.encoding.Base64;
-public class Base64Utils {
- public static String jdkBase64Decode(String src) {
- try {
- src = src.replaceAll("\r\n","");
- byte[] decode = Base64.decode(src);
- return new String(decode);
- } catch (Exception e) {
- e.printStackTrace();
- }
- return null;
- }
+import java.nio.charset.StandardCharsets;
+import java.util.Base64;
+public class Base64Utils {
+ /**
+ * 判断字符串是否为base64编码
+ * @param str
+ * @return
+ * Ascii码说明:共95个可读字符
+ * 0~31及127(共33个)是控制字符或通信专用字符(其余为可显示字符)
+ * 32~126(共95个)是字符(32是空格),其中48~57为0到9十个阿拉伯数字。
+ * 65~90为26个大写英文字母,97~122号为26个小写英文字母,其余为一些标点符号、运算符号等。
+ */
public static boolean isBase64(String str) {
- try {
- Base64.decode(str);
- return true;
- } catch (IllegalArgumentException e) {
+ //使用正则来判断是否符合base64编码的特征(但是无法排除类似于root这种特殊情况)
+ String base64Pattern = "^([A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{4}|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}==)$";
+ Boolean isLegal = str.matches(base64Pattern);
+ if (isLegal) {
+ //对于某些字符可能符合base64编码特征,但是却不是base64编码格式,进行进一步判断,如果解码后含有乱码(即Ascii码不在32~126),
+ //说明虽然符合base64编码特征,但是不是base64编码,如:root
+ try {
+ String decStr = new String(Base64.getDecoder().decode(str.getBytes()), StandardCharsets.UTF_8);
+ char[] passArr = decStr.toCharArray();
+ for (int i = 0; i < passArr.length; i++) {
+ if (charToByteAscii2(passArr[i]) < 32 || charToByteAscii2(passArr[i]) > 126) {
+ return false;
+ }
+ }
+ } catch (Exception e) {
+ return false;
+ }
+ }else {
return false;
}
+ return true;
+ }
+ private static byte charToByteAscii2(char ch){
+ byte byteAscii = (byte)ch;
+ return byteAscii;
}
}
diff --git a/src/main/java/com/ann/demo/utils/DateUtils.java b/src/main/java/com/ann/demo/utils/DateUtils.java
index 1a87a0a..3d4a057 100644
--- a/src/main/java/com/ann/demo/utils/DateUtils.java
+++ b/src/main/java/com/ann/demo/utils/DateUtils.java
@@ -69,7 +69,6 @@ public class DateUtils {
File[] files = file.listFiles();
for (File file1 : files) {
- System.out.println(file1.getName());
}
}
diff --git a/src/main/java/com/ann/demo/utils/FileUtils.java b/src/main/java/com/ann/demo/utils/FileUtils.java
index e148ac9..42c6ec7 100644
--- a/src/main/java/com/ann/demo/utils/FileUtils.java
+++ b/src/main/java/com/ann/demo/utils/FileUtils.java
@@ -137,7 +137,6 @@ public class FileUtils {
String a = address.substring(0, address.indexOf(".pdf"));
String emrPath = a.substring(a.lastIndexOf("_") + 1, a.length());
- System.out.println(emrPath);
}
diff --git a/src/main/java/com/ann/demo/utils/HttpClientUtils.java b/src/main/java/com/ann/demo/utils/HttpClientUtils.java
index c5969c7..6c49b13 100644
--- a/src/main/java/com/ann/demo/utils/HttpClientUtils.java
+++ b/src/main/java/com/ann/demo/utils/HttpClientUtils.java
@@ -220,7 +220,6 @@ public class HttpClientUtils {
HttpResponse response = httpClient.execute(httpPost);
HttpEntity responseEntity = response.getEntity();
String responseBody = EntityUtils.toString(responseEntity);
- System.out.println(responseBody);
return responseBody;
} catch (IOException e) {
e.printStackTrace();
diff --git a/src/main/java/com/ann/demo/utils/JsonUtils.java b/src/main/java/com/ann/demo/utils/JsonUtils.java
index d014649..047728f 100644
--- a/src/main/java/com/ann/demo/utils/JsonUtils.java
+++ b/src/main/java/com/ann/demo/utils/JsonUtils.java
@@ -25,8 +25,5 @@ public class JsonUtils {
String name = getValueByKey(jsonString, "name");
int age = Integer.parseInt(getValueByKey(jsonString, "age"));
-
- System.out.println("Name: " + name);
- System.out.println("Age: " + age);
}
}
diff --git a/src/main/java/com/ann/demo/utils/XMLUtils.java b/src/main/java/com/ann/demo/utils/XMLUtils.java
index 0e2926d..5ee09c7 100644
--- a/src/main/java/com/ann/demo/utils/XMLUtils.java
+++ b/src/main/java/com/ann/demo/utils/XMLUtils.java
@@ -274,7 +274,6 @@ public class XMLUtils {
Node node = x.selectSingleNode(doc);
if (node != null) {
node.setText(replaceContent);
- System.out.println(node.getText());
}
}catch (Exception e){
return null;
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index baf6d9b..6bbc02d 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -12,8 +12,8 @@ spring:
# ddl-auto: update
# show-sql: true
# database-platform: org.hibernate.dialect.MySQL5InnoDBDialect
- #url: jdbc:sqlserver://10.6.1.127:1433;DatabaseName=DB_PrivilegeManagement_GYFY
- url: jdbc:sqlserver://localhost:1433;DatabaseName=zj_record_new
+ url: jdbc:sqlserver://10.6.1.127:1433;DatabaseName=DB_PrivilegeManagement_GYFY
+ #url: jdbc:sqlserver://localhost:1433;DatabaseName=zj_record_new
username: sa
password: docus702
driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
@@ -62,16 +62,16 @@ file:
# 真正部署的时候 这个要改成Z盘
pdfPath: D:/project_js
server:
- port: 8080
+ port: 8885
#################################################
#登录接口
#子公司代码
siteCode: K0101
#客户代码
-customerCode: 44000259-001
+customerCode: 44000259
#收样点代码
-collectionLocation: 44000259-001|001
+collectionLocation: 44000259|003
#loginUrl
loginUrl: https://kmcs.kingmed.com.cn/km-op/cxf/v0.1.0.0/syncInfo2?wsdl
#namespaceURI
@@ -84,4 +84,4 @@ webServiceMethod: login
webServiceDownMethod: downloadPictureInfo
#调下载接口
-downfileUrl: http://192.168.16.85:9292/api/downplatform/report
+downfileUrl: http://10.6.1.127:9291/api/downplatform/report
diff --git a/src/test/java/com/ann/demo/DemoApplicationTests.java b/src/test/java/com/ann/demo/DemoApplicationTests.java
index 30dd2dd..65e7ae8 100644
--- a/src/test/java/com/ann/demo/DemoApplicationTests.java
+++ b/src/test/java/com/ann/demo/DemoApplicationTests.java
@@ -12,7 +12,6 @@ public class DemoApplicationTests {
@Test
public void contextLoads() {
int i = (int)Math.pow(2,3);
- System.out.println(i);
}
}