From 415c4b89635e2045e5616ac9aab89fc5d2880e97 Mon Sep 17 00:00:00 2001
From: ALW <850658129@qq.com>
Date: Fri, 15 Apr 2022 14:52:15 +0800
Subject: [PATCH] =?UTF-8?q?1=E3=80=81=E5=BD=92=E6=A1=A3=E7=B3=BB=E7=BB=9F?=
=?UTF-8?q?=E6=8A=A5=E8=A1=A8=E9=87=8C=E4=B8=BB=E7=AE=A1=E5=8C=BB=E7=94=9F?=
=?UTF-8?q?=E8=A6=81=E5=8F=96=E7=94=B5=E5=AD=90=E7=97=85=E5=8E=86=E9=A6=96?=
=?UTF-8?q?=E9=A1=B5=E4=B8=8A=E4=B8=BB=E7=AE=A1=E5=8C=BB=E7=94=9F?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
pom.xml | 10 +
.../entity/interfaceEntity/ArchiveMaster.java | 2 +
.../demo/service/ArchiveMasterService.java | 2 +
.../demo/service/impl/AnalysisService.java | 29 +++
.../impl/ArchiveMasterServiceImpl.java | 4 +
.../com/ann/demo/utils/OracleConnect.java | 189 ++++++++++++++++++
.../com/ann/demo/utils/PropertiesUtils.java | 29 +++
src/main/resources/application.properties | 8 +
8 files changed, 273 insertions(+)
create mode 100644 src/main/java/com/ann/demo/utils/OracleConnect.java
create mode 100644 src/main/java/com/ann/demo/utils/PropertiesUtils.java
create mode 100644 src/main/resources/application.properties
diff --git a/pom.xml b/pom.xml
index 273edd0..3c4005b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -98,12 +98,22 @@
2.5.1
+
+ com.oracle.database.jdbc
+ ojdbc6
+ 11.2.0.4
+
org.springframework.boot
spring-boot-starter-quartz
+
+ com.alibaba
+ druid
+ 1.2.8
+
diff --git a/src/main/java/com/ann/demo/entity/interfaceEntity/ArchiveMaster.java b/src/main/java/com/ann/demo/entity/interfaceEntity/ArchiveMaster.java
index d4b7224..7870693 100644
--- a/src/main/java/com/ann/demo/entity/interfaceEntity/ArchiveMaster.java
+++ b/src/main/java/com/ann/demo/entity/interfaceEntity/ArchiveMaster.java
@@ -153,6 +153,8 @@ public class ArchiveMaster {
private String isScanning = "0";
+ private String ATTENDING_DOCTOR_ID;
+
}
diff --git a/src/main/java/com/ann/demo/service/ArchiveMasterService.java b/src/main/java/com/ann/demo/service/ArchiveMasterService.java
index 6bfab7e..215994a 100644
--- a/src/main/java/com/ann/demo/service/ArchiveMasterService.java
+++ b/src/main/java/com/ann/demo/service/ArchiveMasterService.java
@@ -43,4 +43,6 @@ public interface ArchiveMasterService {
boolean updateArchiveMasterArchiveState(ArchiveMaster archiveMaster);
+
+
}
diff --git a/src/main/java/com/ann/demo/service/impl/AnalysisService.java b/src/main/java/com/ann/demo/service/impl/AnalysisService.java
index 2012a94..f37dec5 100644
--- a/src/main/java/com/ann/demo/service/impl/AnalysisService.java
+++ b/src/main/java/com/ann/demo/service/impl/AnalysisService.java
@@ -8,11 +8,13 @@ import com.ann.demo.entity.interfaceEntity.ArchiveMaster;
import com.ann.demo.entity.interfaceEntity.MessageLog;
import com.ann.demo.entity.normalEntity.OutPara;
import com.ann.demo.service.*;
+import com.ann.demo.utils.OracleConnect;
import com.ann.demo.utils.XMLUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.Date;
+import java.util.List;
import java.util.Objects;
/**
@@ -61,6 +63,8 @@ public class AnalysisService {
String textContentTemp = null;
if (Objects.equals(messageDto.getEntity(), ArchiveMaster.class.getName())) { // 患者信息
ArchiveMaster archiveMaster = JSON.parseObject(messageDto.getObject().toString(), ArchiveMaster.class);
+ //修改主管医生方法
+ setBedManager(archiveMaster,parameter);
//查询患者是否存在
archiveMasterId = archiveMasterService.findArchiveMasterId( archiveMaster.getVisitId(), archiveMaster.getPatientId(),archiveMaster.getInpNo());
if (archiveMasterId != null) {
@@ -92,6 +96,31 @@ public class AnalysisService {
return outContent;
}
+ /**
+ *
+ * @param archiveMaster
+ * @param parameter
+ */
+ private void setBedManager(ArchiveMaster archiveMaster, String parameter) {
+ if (parameter.equals(InterfaceName.BED_MANAGER)){
+ //查主管医生id
+ String inpNo = archiveMaster.getInpNo();
+ String visitId = archiveMaster.getVisitId();
+ String selectSql = "SELECT ATTENDING_DOCTOR_ID FROM DOCUS.LJJ_V_ATTENDING where INP_NO= '"+inpNo+"' and VISIT_ID ='"+visitId+"' ";
+ List counts = null;
+ try {
+ counts = OracleConnect.selectList(selectSql);
+ String s = counts.get(0);
+ archiveMaster.setDoctorInCharge(s);
+ } catch (Exception e) {
+ e.printStackTrace();
+ throw new RuntimeException("审核时查询oracle记录失败");
+ }
+
+ }
+
+ }
+
private String changeArchiveMaster(ArchiveMaster archiveMaster, String changeStatus, String aliasName) throws Exception{
String textContent = null;
try {
diff --git a/src/main/java/com/ann/demo/service/impl/ArchiveMasterServiceImpl.java b/src/main/java/com/ann/demo/service/impl/ArchiveMasterServiceImpl.java
index 0c94e69..d6e1158 100644
--- a/src/main/java/com/ann/demo/service/impl/ArchiveMasterServiceImpl.java
+++ b/src/main/java/com/ann/demo/service/impl/ArchiveMasterServiceImpl.java
@@ -25,6 +25,8 @@ public class ArchiveMasterServiceImpl implements ArchiveMasterService {
@Autowired
private ArchiveMasterRepository archiveMasterRepository;
+
+
@Autowired
private InterfaceHisCacheService interfaceHisCacheService;
@@ -197,5 +199,7 @@ public class ArchiveMasterServiceImpl implements ArchiveMasterService {
return false;
}
+
+
}
diff --git a/src/main/java/com/ann/demo/utils/OracleConnect.java b/src/main/java/com/ann/demo/utils/OracleConnect.java
new file mode 100644
index 0000000..675a03e
--- /dev/null
+++ b/src/main/java/com/ann/demo/utils/OracleConnect.java
@@ -0,0 +1,189 @@
+package com.ann.demo.utils;
+
+import com.alibaba.druid.pool.DruidDataSource;
+
+import java.sql.*;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * Oracle链接数据库对象
+ *
+ * @author ZL
+ *
+ * 2017年7月27日
+ */
+public class OracleConnect {
+ private static DruidDataSource dataSourceTest = null;
+ private static PreparedStatement pst = null;
+ public static ResultSet rs = null;
+
+ private String url = PropertiesUtils.getProperty("oracleUrl");
+ private String userName = PropertiesUtils.getProperty("oracleUserName");
+ private String passWord = PropertiesUtils.getProperty("oraclePassWord");
+ /**
+ * 构造函数完成数据库的连接和连接对象的生成
+ */
+ private OracleConnect() {
+ try {
+ if (dataSourceTest == null) {
+ dataSourceTest = new DruidDataSource();
+ // 设置连接参数
+ dataSourceTest.setUrl("jdbc:oracle:thin:@" + url);
+ dataSourceTest.setDriverClassName("oracle.jdbc.driver.OracleDriver");
+ dataSourceTest.setUsername(userName);
+ dataSourceTest.setPassword(passWord);
+ dataSourceTest.setInitialSize(3);
+ dataSourceTest.setMaxActive(10);
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
+ /**
+ * 取得已经构造生成的数据库连接
+ *
+ * @return 返回数据库连接对象
+ */
+ public Connection getConnect() {
+ try {
+ return dataSourceTest.getConnection();
+ } catch (SQLException e) {
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+ /**
+ * 使用完一定要关闭(释放资源)
+ * @param rs ResultSet
+ * @param stat Statement
+ * @param conn Connection
+ * @throws Exception
+ */
+ private static void CloseConn(ResultSet rs, Statement stat, Connection conn){
+ if (rs != null) {
+ try {
+ rs.close();
+ } catch (SQLException e) {
+ e.printStackTrace();
+ }
+ }
+ if (stat != null) {
+ try {
+ stat.close();
+ } catch (SQLException e) {
+ e.printStackTrace();
+ }
+ }
+ if (conn != null) {
+ try {
+ conn.close();
+ } catch (SQLException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+
+ /**
+ * 查询一条(多条)记录
+ *
+ * @param arg0 查询的sql语句
+ * @return list
+ * @throws Exception
+ */
+ @SuppressWarnings({ "rawtypes", "unchecked" })
+ public static String select(String arg0) throws Exception {
+ String str = "";
+ Connection conn = new OracleConnect().getConnect();
+ pst = conn.prepareStatement(arg0);
+ rs = pst.executeQuery();
+ try {
+ if (rs != null) {
+ while (rs.next()) {
+ str = rs.getString(1);
+ }
+ }
+ } catch (SQLException e) {
+ e.printStackTrace();
+ } finally {
+ OracleConnect.CloseConn(rs, pst, conn);
+ }
+ return str;
+ }
+ public static List selectList(String arg0) throws Exception {
+ List str = new ArrayList<>();
+ Connection conn = new OracleConnect().getConnect();
+ pst = conn.prepareStatement(arg0);
+ rs = pst.executeQuery();
+ try {
+ if (rs != null) {
+ while (rs.next()) {
+ str.add(rs.getString(1));
+ }
+ }
+ } catch (SQLException e) {
+ e.printStackTrace();
+ } finally {
+ OracleConnect.CloseConn(rs, pst, conn);
+ }
+ return str;
+ }
+ public static List