From b642d244b6df736ecd390368a9ffff72ddad56e5 Mon Sep 17 00:00:00 2001
From: ludc <pUXmgxCf6A>
Date: 星期三, 17 五月 2023 21:57:11 +0800
Subject: [PATCH] 以及发布webservice接口功能搭建,将通通用接口移植过来
---
Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/ApplicationContextProvider.java | 99 ++++++++++++++++++++++++
Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/config/AppAutoConfigure.java | 113 ++++++++++++++++++++++++++++
Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/VciBaseUtil.java | 7 +
3 files changed, 219 insertions(+), 0 deletions(-)
diff --git a/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/config/AppAutoConfigure.java b/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/config/AppAutoConfigure.java
index e69de29..c5b2ab7 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/config/AppAutoConfigure.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/config/AppAutoConfigure.java
@@ -0,0 +1,113 @@
+package com.vci.ubcs.starter.web.config;
+
+import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.context.annotation.Configuration;
+
+/**
+ * 搴旂敤淇℃伅閰嶇疆
+ * @author weidy
+ */
+@Configuration
+@ConfigurationProperties(prefix = "app")
+public class AppAutoConfigure {
+ /**
+ * 鎵�灞炵粍缁�
+ */
+ private String group;
+ /**
+ * 搴旂敤鍚嶇О
+ */
+ private String name;
+ /**
+ * 搴旂敤鎻忚堪
+ */
+ private String description;
+ /**
+ * 浣滆��
+ */
+ private String author;
+ /**
+ * 閭欢
+ */
+ private String email;
+ /**
+ * 閾炬帴鍦板潃
+ */
+ private String url;
+
+ /**
+ * 搴旂敤绉侀挜
+ */
+ private String privateTokenKey;
+
+
+
+ public String getGroup() {
+ return group;
+ }
+
+ public void setGroup(String group) {
+ this.group = group;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getDescription() {
+ return description;
+ }
+
+ public void setDescription(String description) {
+ this.description = description;
+ }
+
+ public String getAuthor() {
+ return author;
+ }
+
+ public void setAuthor(String author) {
+ this.author = author;
+ }
+
+ public String getEmail() {
+ return email;
+ }
+
+ public void setEmail(String email) {
+ this.email = email;
+ }
+
+ public String getUrl() {
+ return url;
+ }
+
+ public void setUrl(String url) {
+ this.url = url;
+ }
+
+ public String getPrivateTokenKey() {
+ return privateTokenKey;
+ }
+
+ public void setPrivateTokenKey(String privateTokenKey) {
+ this.privateTokenKey = privateTokenKey;
+ }
+
+ @Override
+ public String toString() {
+ return "AppAutoConfigure{" +
+ "group='" + group + '\'' +
+ ", name='" + name + '\'' +
+ ", description='" + description + '\'' +
+ ", author='" + author + '\'' +
+ ", email='" + email + '\'' +
+ ", url='" + url + '\'' +
+ ", privateTokenKey='" + privateTokenKey + '\'' +
+ '}';
+ }
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/ApplicationContextProvider.java b/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/ApplicationContextProvider.java
index e69de29..7fedeb5 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/ApplicationContextProvider.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/ApplicationContextProvider.java
@@ -0,0 +1,99 @@
+package com.vci.ubcs.starter.web.util;
+
+import com.vci.ubcs.starter.web.config.AppAutoConfigure;
+import org.springblade.core.tool.api.R;
+import org.springframework.beans.BeansException;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.ApplicationContext;
+import org.springframework.context.ApplicationContextAware;
+import org.springframework.context.ConfigurableApplicationContext;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * spring鐨勪笂涓嬫枃宸ュ叿锛�
+ * 娉ㄦ剰springmvc涓殑controller涓嶅簲璇ュ湪杩欓噷鑾峰彇锛屽洜涓簊pringmvc鍙簲璇ヨ鍓嶇璋冪敤
+ * 娌℃湁浣跨敤springboot鐨刴ain鍑芥暟閲岃缃苟鑾峰彇鏄洜涓哄彲鑳戒細璁╁涓湇鍔″悎骞跺埌涓�璧峰惎鍔�
+ * @author weidy
+ * @date 2019/10/31 9:02 AM
+ */
+@RestController
+@RequestMapping("/application")
+public class ApplicationContextProvider implements ApplicationContextAware {
+
+ /**
+ * 鏈嶅姟鐨勯厤缃�
+ */
+ @Autowired
+ private AppAutoConfigure appAutoConfigure;
+
+ /**
+ * 搴旂敤鐨勪笂涓嬫枃
+ */
+ private static ApplicationContext applicationContext ;
+
+ /**
+ * 璁剧疆搴旂敤鐨勪笂涓嬫枃
+ * @param applicationContext 涓婁笅鏂�
+ * @throws BeansException 鍑虹幇閿欒鏃堕渶瑕佹姏鍑哄紓甯哥粰spring瀹瑰櫒
+ */
+ @Override
+ public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
+ ApplicationContextProvider.applicationContext = applicationContext;
+ }
+
+ /**
+ * 鑾峰彇搴旂敤鐨勪笂涓嬫枃
+ * @return 涓婁笅鏂�
+ */
+ public static ApplicationContext getApplicationContext() {
+ return applicationContext;
+ }
+
+ /**
+ * 鑾峰彇瀵硅薄
+ * @param name bean鐨勫悕绉�
+ * @return Object bean鐨勫璞�
+ * @throws BeansException 濡傛灉涓嶅瓨鍦ㄤ細鎶涘嚭寮傚父
+ */
+ public static Object getBean(String name) throws BeansException {
+ return applicationContext.getBean(name);
+ }
+
+ /**
+ * 鑾峰彇瀵硅薄
+ * @param c bean鐨勬帴鍙g被
+ * @param <T> bean鎵�灞炵被鐨勭被鍨�
+ * @return bean瀵硅薄
+ * @throws BeansException 濡傛灉涓嶅瓨鍦ㄤ細鎶涘嚭寮傚父
+ */
+ public static <T> T getBean(Class<T> c) throws BeansException{
+ return applicationContext.getBean(c);
+ }
+
+ /**
+ * 鍏虫満
+ * @return 鎵ц瀹屾垚
+ */
+ @PostMapping("/shutDownContext")
+ public R shutDownContext(String privateKey){
+ if( appAutoConfigure.getPrivateTokenKey().equalsIgnoreCase(privateKey)) {
+ ConfigurableApplicationContext ctx = (ConfigurableApplicationContext) applicationContext;
+ ctx.close();
+ return R.success("鍏抽棴鏈嶅姟鎴愬姛");
+ }else{
+ return R.fail("鎮ㄦ病鏈夋潈闄愬叧闂湇鍔�");
+ }
+ }
+
+ /**
+ * 妫�鏌ユ槸鍚﹀畬鎴�
+ * @return 璋冪敤灏辫鏄庢垚鍔熶簡
+ */
+ @PostMapping("/checkOnline")
+ public R checkOnline(){
+ return R.success("鍚姩瀹屾垚");
+ }
+
+}
diff --git a/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/VciBaseUtil.java b/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/VciBaseUtil.java
index bf83190..a4e1111 100644
--- a/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/VciBaseUtil.java
+++ b/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/VciBaseUtil.java
@@ -87,6 +87,13 @@
return si;
}
}
+ /**
+ * 璁剧疆褰撳墠绾跨▼涓殑鐢ㄦ埛瀵硅薄
+ * @param sessionInfo 鐢ㄦ埛瀵硅薄
+ */
+ public static void setCurrentUserSessionInfo(SessionInfo sessionInfo){
+ WebThreadLocalUtil.getCurrentUserSessionInfoInThread().set(sessionInfo);
+ }
public static long getLong(String s) {
long l = 0L;
if (s == null) {
--
Gitblit v1.9.3