From d7d377435e68d67adcd4e0d02acba70173fb7a18 Mon Sep 17 00:00:00 2001 From: republicline <1464474399@qq.com> Date: Wed, 13 Nov 2024 14:09:34 +0800 Subject: [PATCH] =?UTF-8?q?add:=20=E4=B8=80=E6=9C=9F=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../vital/controller/MachineController.java | 260 +++++++++--------- .../src/main/resources/application.yml | 12 +- 2 files changed, 136 insertions(+), 136 deletions(-) diff --git a/upms/upms-biz/src/main/java/com/rax/vital/controller/MachineController.java b/upms/upms-biz/src/main/java/com/rax/vital/controller/MachineController.java index 3c0a5e4..5be4f3d 100644 --- a/upms/upms-biz/src/main/java/com/rax/vital/controller/MachineController.java +++ b/upms/upms-biz/src/main/java/com/rax/vital/controller/MachineController.java @@ -1,130 +1,130 @@ -package com.rax.vital.controller; - -import com.rax.common.core.util.R; -import com.rax.common.security.annotation.Inner; -import com.rax.vital.common.datasource.DynamicDataSource; -import com.rax.vital.entity.VisualBody; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -import java.sql.Connection; -import java.sql.PreparedStatement; -import java.sql.SQLException; -import java.util.concurrent.*; - -/** - * @project_name: rax-remote-v2 - * @time: 2024/11/5 11:05 - * @author: republicline - * @description: 仪器端和服务端通信接口 - */ -@RestController -@RequestMapping("/machine") -public class MachineController { - - // 生命体征表名 - private static final String FEATURE_TABLE_NAME = "featuretable"; - - // 异步入库 - private ExecutorService executorService = Executors.newFixedThreadPool(5); - - // 动态数据源 - private ConcurrentHashMap dynamicDataSources = new ConcurrentHashMap<>(); - - // 仪器端生命体征数据入库 - @PostMapping("/save") - @Inner(value = false) - public R saveVitalBodyData(VisualBody visualBody) { - System.out.println("visualBody = " + visualBody); - - for (String key : dynamicDataSources.keySet()) System.out.println("key = " + key); - - // 校验 - if (visualBody == null) return R.failed("参数不能为空"); - - if (visualBody.getDatabaseName() == null || - visualBody.getPhase() == null || visualBody.getBIS() == null || - visualBody.getHR() == null || visualBody.getSBP() == null || - visualBody.getDBP() == null || visualBody.getST() == null || - visualBody.getTEMP() == null || visualBody.getSP02() == null || - visualBody.getEtCO2() == null || visualBody.getPPG() == null || - visualBody.getABG() == null || visualBody.getTOF() == null || - visualBody.getTIME() == null) { - return R.failed("参数含有空值"); - } - saveVitalBodyDataAsync(visualBody); - return R.ok("success"); - } - - // 关闭数据源 - @PostMapping("/close") - @Inner(value = false) - public R closeDataSource(String databaseName) { - if (databaseName == null) { - return R.failed("参数不能为空"); - } - dynamicDataSources.remove(databaseName); - DynamicDataSource dynamicDataSource = dynamicDataSources.get(databaseName); - if (dynamicDataSource == null) { - return R.failed("数据源不存在"); - } - dynamicDataSource.closeDataSource(); - return R.ok("success"); - } - - private void saveVitalBodyDataAsync(VisualBody visualBody) { - executorService.execute(() -> { - try { - - String databaseName = visualBody.getDatabaseName(); - if (!dynamicDataSources.containsKey(databaseName)) { - // 创建动态数据源 - System.out.println("连接池创建数据源"); - DynamicDataSource dynamicDataSource = new DynamicDataSource(); - dynamicDataSource.createDataSource(databaseName); - dynamicDataSources.put(databaseName, dynamicDataSource); - } - - if (dynamicDataSources.get(databaseName) == null) { - dynamicDataSources.remove(databaseName); - throw new RuntimeException("数据源不存在"); - } - - // 获取连接 - Connection connection = dynamicDataSources.get(databaseName).getConnection(); - - if (connection == null) { - throw new RuntimeException("数据库连接失败"); - } - - // 数据库操作 - String sql = String.format(""" - INSERT INTO %s - (Phase, BIS, HR, SBP, DBP, ST, TEMP, SPO2, EtCO2, PPG, ABG, TOF, `TIME`) - VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?); - """, FEATURE_TABLE_NAME); - PreparedStatement ps = connection.prepareStatement(sql); - ps.setInt(1, visualBody.getPhase()); - ps.setDouble(2, visualBody.getBIS()); - ps.setDouble(3, visualBody.getHR()); - ps.setDouble(4, visualBody.getSBP()); - ps.setDouble(5, visualBody.getDBP()); - ps.setDouble(6, visualBody.getST()); - ps.setDouble(7, visualBody.getTEMP()); - ps.setDouble(8, visualBody.getSP02()); - ps.setDouble(9, visualBody.getEtCO2()); - ps.setDouble(10, visualBody.getPPG()); - ps.setDouble(11, visualBody.getABG()); - ps.setDouble(12, visualBody.getTOF()); - ps.setTimestamp(13, visualBody.getTIME()); - ps.execute(); - } catch (SQLException e) { - throw new RuntimeException(e); - } catch (Exception e) { - throw new RuntimeException(e); - } - - }); - } -} +//package com.rax.vital.controller; +// +//import com.rax.common.core.util.R; +//import com.rax.common.security.annotation.Inner; +//import com.rax.vital.common.datasource.DynamicDataSource; +//import com.rax.vital.entity.VisualBody; +//import org.springframework.web.bind.annotation.PostMapping; +//import org.springframework.web.bind.annotation.RequestMapping; +//import org.springframework.web.bind.annotation.RestController; +// +//import java.sql.Connection; +//import java.sql.PreparedStatement; +//import java.sql.SQLException; +//import java.util.concurrent.*; +// +///** +// * @project_name: rax-remote-v2 +// * @time: 2024/11/5 11:05 +// * @author: republicline +// * @description: 仪器端和服务端通信接口 +// */ +//@RestController +//@RequestMapping("/machine") +//public class MachineController { +// +// // 生命体征表名 +// private static final String FEATURE_TABLE_NAME = "featuretable"; +// +// // 异步入库 +// private ExecutorService executorService = Executors.newFixedThreadPool(5); +// +// // 动态数据源 +// private ConcurrentHashMap dynamicDataSources = new ConcurrentHashMap<>(); +// +// // 仪器端生命体征数据入库 +// @PostMapping("/save") +// @Inner(value = false) +// public R saveVitalBodyData(VisualBody visualBody) { +// System.out.println("visualBody = " + visualBody); +// +// for (String key : dynamicDataSources.keySet()) System.out.println("key = " + key); +// +// // 校验 +// if (visualBody == null) return R.failed("参数不能为空"); +// +// if (visualBody.getDatabaseName() == null || +// visualBody.getPhase() == null || visualBody.getBIS() == null || +// visualBody.getHR() == null || visualBody.getSBP() == null || +// visualBody.getDBP() == null || visualBody.getST() == null || +// visualBody.getTEMP() == null || visualBody.getSP02() == null || +// visualBody.getEtCO2() == null || visualBody.getPPG() == null || +// visualBody.getABG() == null || visualBody.getTOF() == null || +// visualBody.getTIME() == null) { +// return R.failed("参数含有空值"); +// } +// saveVitalBodyDataAsync(visualBody); +// return R.ok("success"); +// } +// +// // 关闭数据源 +// @PostMapping("/close") +// @Inner(value = false) +// public R closeDataSource(String databaseName) { +// if (databaseName == null) { +// return R.failed("参数不能为空"); +// } +// dynamicDataSources.remove(databaseName); +// DynamicDataSource dynamicDataSource = dynamicDataSources.get(databaseName); +// if (dynamicDataSource == null) { +// return R.failed("数据源不存在"); +// } +// dynamicDataSource.closeDataSource(); +// return R.ok("success"); +// } +// +// private void saveVitalBodyDataAsync(VisualBody visualBody) { +// executorService.execute(() -> { +// try { +// +// String databaseName = visualBody.getDatabaseName(); +// if (!dynamicDataSources.containsKey(databaseName)) { +// // 创建动态数据源 +// System.out.println("连接池创建数据源"); +// DynamicDataSource dynamicDataSource = new DynamicDataSource(); +// dynamicDataSource.createDataSource(databaseName); +// dynamicDataSources.put(databaseName, dynamicDataSource); +// } +// +// if (dynamicDataSources.get(databaseName) == null) { +// dynamicDataSources.remove(databaseName); +// throw new RuntimeException("数据源不存在"); +// } +// +// // 获取连接 +// Connection connection = dynamicDataSources.get(databaseName).getConnection(); +// +// if (connection == null) { +// throw new RuntimeException("数据库连接失败"); +// } +// +// // 数据库操作 +// String sql = String.format(""" +// INSERT INTO %s +// (Phase, BIS, HR, SBP, DBP, ST, TEMP, SPO2, EtCO2, PPG, ABG, TOF, `TIME`) +// VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?); +// """, FEATURE_TABLE_NAME); +// PreparedStatement ps = connection.prepareStatement(sql); +// ps.setInt(1, visualBody.getPhase()); +// ps.setDouble(2, visualBody.getBIS()); +// ps.setDouble(3, visualBody.getHR()); +// ps.setDouble(4, visualBody.getSBP()); +// ps.setDouble(5, visualBody.getDBP()); +// ps.setDouble(6, visualBody.getST()); +// ps.setDouble(7, visualBody.getTEMP()); +// ps.setDouble(8, visualBody.getSP02()); +// ps.setDouble(9, visualBody.getEtCO2()); +// ps.setDouble(10, visualBody.getPPG()); +// ps.setDouble(11, visualBody.getABG()); +// ps.setDouble(12, visualBody.getTOF()); +// ps.setTimestamp(13, visualBody.getTIME()); +// ps.execute(); +// } catch (SQLException e) { +// throw new RuntimeException(e); +// } catch (Exception e) { +// throw new RuntimeException(e); +// } +// +// }); +// } +//} diff --git a/upms/upms-biz/src/main/resources/application.yml b/upms/upms-biz/src/main/resources/application.yml index 48eb1e6..7aa2fa3 100644 --- a/upms/upms-biz/src/main/resources/application.yml +++ b/upms/upms-biz/src/main/resources/application.yml @@ -116,8 +116,8 @@ spring: port: 16373 password: rax137839 connect-timeout: 5000 - database: 0 # 二期 -# database: 1 # 一期 +# database: 0 # 二期 + database: 1 # 一期 # 数据库相关配置 datasource: @@ -125,13 +125,13 @@ spring: username: root password: Xg137839 # 一期 -# url: jdbc:mysql://110.41.142.124:3306/rax_backend1?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&allowPublicKeyRetrieval=true&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&allowMultiQueries=true&nullCatalogMeansCurrent=true + url: jdbc:mysql://110.41.142.124:3306/rax_backend1?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&allowPublicKeyRetrieval=true&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&allowMultiQueries=true&nullCatalogMeansCurrent=true # 二期 - url: jdbc:mysql://110.41.142.124:3306/rax_backend?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&allowPublicKeyRetrieval=true&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&allowMultiQueries=true&nullCatalogMeansCurrent=true +# url: jdbc:mysql://110.41.142.124:3306/rax_backend?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&allowPublicKeyRetrieval=true&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&allowMultiQueries=true&nullCatalogMeansCurrent=true server: -# port: 6679 #一期 - port: 6379 #二期 + port: 6679 #一期 +# port: 6379 #二期 servlet: context-path: /admin