From 2e0a915c24c115caff97f68ec073f7a4ae9fa474 Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期四, 31 七月 2025 07:16:18 +0800
Subject: [PATCH] 新增同步工程
---
blade-service/pom.xml | 2
blade-service/blade-qinzhesync/src/main/java/org/springblade/qinzhesync/config/JdbcTemplateConfig.java | 35 +++++++++++
blade-service/blade-qinzhesync/src/main/java/org/springblade/qinzhesync/service/QinzheSyncService.java | 31 ++++++++++
blade-service/blade-qinzhesync/src/main/java/org/springblade/qinzhesync/config/DataSourceConfig.java | 30 ++++++++++
blade-service/blade-qinzhesync/src/main/java/org/springblade/qinzhesync/controller/SyncController.java | 35 +++++++++++
blade-service/blade-mdm/pom.xml | 19 ++++++
6 files changed, 151 insertions(+), 1 deletions(-)
diff --git a/blade-service/blade-mdm/pom.xml b/blade-service/blade-mdm/pom.xml
index 67c5676..d26c14c 100644
--- a/blade-service/blade-mdm/pom.xml
+++ b/blade-service/blade-mdm/pom.xml
@@ -104,7 +104,24 @@
<artifactId>blade-starter-transaction</artifactId>
</dependency>-->
</dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-maven-plugin</artifactId>
+ <configuration>
+ <mainClass>org.springblade.mdm.MdmApplication</mainClass>
+ <layout>ZIP</layout>
+ <includes>
+ <include>
+ <groupId>nothing</groupId>
+ <artifactId>nothing</artifactId>
+ </include>
-
+ </includes>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
</project>
diff --git a/blade-service/blade-qinzhesync/src/main/java/org/springblade/qinzhesync/config/DataSourceConfig.java b/blade-service/blade-qinzhesync/src/main/java/org/springblade/qinzhesync/config/DataSourceConfig.java
new file mode 100644
index 0000000..29c117e
--- /dev/null
+++ b/blade-service/blade-qinzhesync/src/main/java/org/springblade/qinzhesync/config/DataSourceConfig.java
@@ -0,0 +1,30 @@
+package org.springblade.qinzhesync.config;
+
+import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.boot.jdbc.DataSourceBuilder;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Primary;
+
+import javax.sql.DataSource;
+
+@Configuration
+public class DataSourceConfig {
+
+ @Primary
+ @ConfigurationProperties(prefix="spring.datasource")
+ public DataSource dataSource() {
+ return DataSourceBuilder.create().build();
+ }
+ @Bean("mdmDdataSource")
+ @ConfigurationProperties(prefix="spring.datasource.mdm")
+ public DataSource preDataSource() {
+ return DataSourceBuilder.create().build();
+ }
+
+ @Bean("qinzheDataSource")
+ @ConfigurationProperties(prefix="spring.datasource.qinzhe")
+ public DataSource secondaryDataSource() {
+ return DataSourceBuilder.create().build();
+ }
+}
diff --git a/blade-service/blade-qinzhesync/src/main/java/org/springblade/qinzhesync/config/JdbcTemplateConfig.java b/blade-service/blade-qinzhesync/src/main/java/org/springblade/qinzhesync/config/JdbcTemplateConfig.java
new file mode 100644
index 0000000..73c0fb3
--- /dev/null
+++ b/blade-service/blade-qinzhesync/src/main/java/org/springblade/qinzhesync/config/JdbcTemplateConfig.java
@@ -0,0 +1,35 @@
+package org.springblade.qinzhesync.config;
+
+import org.apache.ibatis.session.SqlSessionFactory;
+import org.mybatis.spring.SqlSessionFactoryBean;
+import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Primary;
+import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
+import org.springframework.jdbc.core.JdbcTemplate;
+
+import javax.sql.DataSource;
+
+@Configuration
+public class JdbcTemplateConfig {
+ private String mapper = "classpath:org/springblade/qinzhesync/mapper/*Mapper.xml"; //xml鎵弿璺緞
+ @Primary
+ @Bean
+ public JdbcTemplate primaryJdbcTemplate(@Qualifier("mdmDdataSource") DataSource dataSource) {//
+ return new JdbcTemplate(dataSource);
+ }
+
+ @Bean
+ public JdbcTemplate qingzheJdbcTemplate(@Qualifier("qinzheDataSource") DataSource dataSource) {
+ return new JdbcTemplate(dataSource);
+ }
+
+ @Bean
+ public SqlSessionFactory sqlSessionFactory(@Qualifier("mdmDdataSource") DataSource dataSource) throws Exception {
+ final SqlSessionFactoryBean sqlSessionFactoryBean = new SqlSessionFactoryBean();
+ sqlSessionFactoryBean.setDataSource(dataSource);
+ //sqlSessionFactoryBean.setMapperLocations(new PathMatchingResourcePatternResolver().getResources(mapper));
+ return sqlSessionFactoryBean.getObject();
+ }
+}
diff --git a/blade-service/blade-qinzhesync/src/main/java/org/springblade/qinzhesync/controller/SyncController.java b/blade-service/blade-qinzhesync/src/main/java/org/springblade/qinzhesync/controller/SyncController.java
new file mode 100644
index 0000000..d63be03
--- /dev/null
+++ b/blade-service/blade-qinzhesync/src/main/java/org/springblade/qinzhesync/controller/SyncController.java
@@ -0,0 +1,35 @@
+package org.springblade.qinzhesync.controller;
+
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import lombok.extern.slf4j.Slf4j;
+import org.springblade.core.tool.api.R;
+import org.springblade.qinzhesync.service.QinzheSyncService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+@Slf4j
+@RestController
+@RequestMapping("/test/qinzhe")
+@Tag(name = "涓诲埗鍒嗗伐琛�", description = "涓诲埗鍒嗗伐琛�")
+public class SyncController {
+
+ @Autowired
+ private QinzheSyncService service;
+
+ /**
+ * 鏂板
+ */
+ @GetMapping("/sync")
+ @Operation(summary = "鍚屾", description = "鍚屾鍒嗗伐琛�")
+ public R<Boolean> sync() {
+ try {
+ service.syncData();
+ }catch (Exception e) {
+ log.error("鍚屾澶辫触", e);;
+ return R.fail(e.getMessage());
+ }
+ return R.<Boolean>status(true);
+ }
+
+}
diff --git a/blade-service/blade-qinzhesync/src/main/java/org/springblade/qinzhesync/service/QinzheSyncService.java b/blade-service/blade-qinzhesync/src/main/java/org/springblade/qinzhesync/service/QinzheSyncService.java
new file mode 100644
index 0000000..09489c4
--- /dev/null
+++ b/blade-service/blade-qinzhesync/src/main/java/org/springblade/qinzhesync/service/QinzheSyncService.java
@@ -0,0 +1,31 @@
+package org.springblade.qinzhesync.service;
+
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
+import org.springframework.jdbc.core.JdbcTemplate;
+import org.springframework.stereotype.Service;
+
+import java.util.Map;
+
+/**
+ * 鍕ゅ摬涓诲埗鍒嗗伐琛ㄦ暟鎹悓姝ョ殑鏈嶅姟
+ */
+@Service
+@Slf4j
+public class QinzheSyncService {
+ @Qualifier("primaryJdbcTemplate")
+ @Autowired
+ private JdbcTemplate mdmJdbcTemplate;
+
+ @Qualifier("qingzheJdbcTemplate")
+ @Autowired
+ private JdbcTemplate qingzheJdbcTemplate;
+
+ public void syncData(){
+ Map mmdData = mdmJdbcTemplate.queryForMap("select count(*) n from mdm_machine");
+ log.info("mdm:{}",mmdData);
+ Map qinzheData = qingzheJdbcTemplate.queryForMap("select count(*) n from mdm_machine");
+ log.info("qingzhe:{}",qinzheData);
+ }
+}
diff --git a/blade-service/pom.xml b/blade-service/pom.xml
index 7b3781c..6a76836 100644
--- a/blade-service/pom.xml
+++ b/blade-service/pom.xml
@@ -20,6 +20,8 @@
<module>blade-desk</module>
<module>blade-system</module>
<module>blade-mdm</module>
+ <module>blade-qinzhesync</module>
+
</modules>
<dependencies>
--
Gitblit v1.9.3