From 517f42edf5720807c5289ec499bbe827a3846df1 Mon Sep 17 00:00:00 2001 From: purple Date: Tue, 9 Jun 2020 19:28:45 +0800 Subject: [PATCH] =?UTF-8?q?1.=20=E5=8A=9E=E5=85=AC=E5=9F=BA=E4=BB=B7?= =?UTF-8?q?=E4=BD=9C=E4=BB=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../data/price/ComputeResidenceRentPrice.vue | 6 +- .../data/price/UltimateOfficeBasePrice.vue | 9 + ruoyi/pom.xml | 13 +- .../main/java/com/ruoyi/RuoYiApplication.java | 5 +- .../ruoyi/framework/config/DruidConfig.java | 234 +++++++++--------- .../framework/config/HikariCPConfig.java | 131 ++++++++++ .../UltimateOfficeBasePriceServiceImpl.java | 4 - .../src/main/resources/application-druid.yml | 176 +++++++------ .../data/UltimateOfficeBasePriceMapper.xml | 44 ++-- .../com/uvaluation/longtime/SqlTests.java | 57 +++++ 10 files changed, 452 insertions(+), 227 deletions(-) create mode 100644 ruoyi/src/main/java/com/ruoyi/framework/config/HikariCPConfig.java create mode 100644 ruoyi/src/test/java/com/uvaluation/longtime/SqlTests.java diff --git a/ruoyi-ui/src/views/data/price/ComputeResidenceRentPrice.vue b/ruoyi-ui/src/views/data/price/ComputeResidenceRentPrice.vue index 066625f35..e9e8c0ed3 100644 --- a/ruoyi-ui/src/views/data/price/ComputeResidenceRentPrice.vue +++ b/ruoyi-ui/src/views/data/price/ComputeResidenceRentPrice.vue @@ -354,8 +354,8 @@ export default { return ""; }, /** 查询办公基价列表 */ - getList(formName) { - this.$refs[formName].validate(valid => { + getList() { + this.$refs['queryForm'].validate(valid => { if (valid) { this.loading = true; list(this.queryParams).then(response => { @@ -381,7 +381,7 @@ export default { /** 搜索按钮操作 */ handleQuery() { this.queryParams.pageIndex = 1; - this.getList("queryForm"); + this.getList(); }, /** 重置按钮操作 */ resetQuery() { diff --git a/ruoyi-ui/src/views/data/price/UltimateOfficeBasePrice.vue b/ruoyi-ui/src/views/data/price/UltimateOfficeBasePrice.vue index 554039405..94b277c43 100644 --- a/ruoyi-ui/src/views/data/price/UltimateOfficeBasePrice.vue +++ b/ruoyi-ui/src/views/data/price/UltimateOfficeBasePrice.vue @@ -64,6 +64,15 @@ v-hasPermi="['system:user:import']" >导入 + + 基价变化一览 + diff --git a/ruoyi/pom.xml b/ruoyi/pom.xml index dea31a826..81ac0aa3b 100644 --- a/ruoyi/pom.xml +++ b/ruoyi/pom.xml @@ -26,7 +26,7 @@ 1.3.2 1.2.5 1.2.68 - 1.1.14 + 2.5 1.3.3 1.19 @@ -99,6 +99,7 @@ com.microsoft.sqlserver mssql-jdbc runtime + 7.4.0.jre8 @@ -116,11 +117,11 @@ - - com.alibaba - druid-spring-boot-starter - ${druid.version} - + + + + + diff --git a/ruoyi/src/main/java/com/ruoyi/RuoYiApplication.java b/ruoyi/src/main/java/com/ruoyi/RuoYiApplication.java index c36474715..1212f5f06 100644 --- a/ruoyi/src/main/java/com/ruoyi/RuoYiApplication.java +++ b/ruoyi/src/main/java/com/ruoyi/RuoYiApplication.java @@ -1,6 +1,6 @@ package com.ruoyi; -import com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure; +//import com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure; import com.github.pagehelper.autoconfigure.PageHelperAutoConfiguration; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @@ -11,7 +11,8 @@ import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; * * @author ruoyi */ -@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class, DruidDataSourceAutoConfigure.class, +@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class, +// DruidDataSourceAutoConfigure.class, PageHelperAutoConfiguration.class}) public class RuoYiApplication { public static void main(String[] args) { diff --git a/ruoyi/src/main/java/com/ruoyi/framework/config/DruidConfig.java b/ruoyi/src/main/java/com/ruoyi/framework/config/DruidConfig.java index 5050f9576..27960b06f 100644 --- a/ruoyi/src/main/java/com/ruoyi/framework/config/DruidConfig.java +++ b/ruoyi/src/main/java/com/ruoyi/framework/config/DruidConfig.java @@ -1,125 +1,125 @@ -package com.ruoyi.framework.config; - -import java.io.IOException; -import java.util.HashMap; -import java.util.Map; -import javax.servlet.Filter; -import javax.servlet.FilterChain; -import javax.servlet.ServletException; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import javax.sql.DataSource; -import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; -import org.springframework.boot.context.properties.ConfigurationProperties; -import org.springframework.boot.web.servlet.FilterRegistrationBean; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; -import org.springframework.context.annotation.Primary; -import com.alibaba.druid.pool.DruidDataSource; -import com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceBuilder; -import com.alibaba.druid.spring.boot.autoconfigure.properties.DruidStatProperties; -import com.alibaba.druid.util.Utils; -import com.ruoyi.common.utils.spring.SpringUtils; -import com.ruoyi.framework.aspectj.lang.enums.DataSourceType; -import com.ruoyi.framework.datasource.DynamicDataSource; - -/** - * druid 配置多数据源 - * - * @author ruoyi - */ -@Configuration -public class DruidConfig -{ -// @Bean -// @ConfigurationProperties("spring.datasource.druid.master") -// public DataSource masterDataSource(DruidProperties druidProperties) -// { -// DruidDataSource dataSource = DruidDataSourceBuilder.create().build(); -// return druidProperties.dataSource(dataSource); -// } +//package com.ruoyi.framework.config; // -// @Bean -// @ConfigurationProperties("spring.datasource.druid.slave") -// @ConditionalOnProperty(prefix = "spring.datasource.druid.slave", name = "enabled", havingValue = "true") -// public DataSource slaveDataSource(DruidProperties druidProperties) -// { -// DruidDataSource dataSource = DruidDataSourceBuilder.create().build(); -// return druidProperties.dataSource(dataSource); -// } +//import java.io.IOException; +//import java.util.HashMap; +//import java.util.Map; +//import javax.servlet.Filter; +//import javax.servlet.FilterChain; +//import javax.servlet.ServletException; +//import javax.servlet.ServletRequest; +//import javax.servlet.ServletResponse; +//import javax.sql.DataSource; +//import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; +//import org.springframework.boot.context.properties.ConfigurationProperties; +//import org.springframework.boot.web.servlet.FilterRegistrationBean; +//import org.springframework.context.annotation.Bean; +//import org.springframework.context.annotation.Configuration; +//import org.springframework.context.annotation.Primary; +//import com.alibaba.druid.pool.DruidDataSource; +//import com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceBuilder; +//import com.alibaba.druid.spring.boot.autoconfigure.properties.DruidStatProperties; +//import com.alibaba.druid.util.Utils; +//import com.ruoyi.common.utils.spring.SpringUtils; +//import com.ruoyi.framework.aspectj.lang.enums.DataSourceType; +//import com.ruoyi.framework.datasource.DynamicDataSource; // -// @Bean(name = "dynamicDataSource") -// @Primary -// public DynamicDataSource dataSource(DataSource masterDataSource) -// { -// Map targetDataSources = new HashMap<>(); -// targetDataSources.put(DataSourceType.MASTER.name(), masterDataSource); -// setDataSource(targetDataSources, DataSourceType.SLAVE.name(), "slaveDataSource"); -// return new DynamicDataSource(masterDataSource, targetDataSources); -// } +///** +// * druid 配置多数据源 +// * +// * @author ruoyi +// */ +//@Configuration +//public class DruidConfig +//{ +//// @Bean +//// @ConfigurationProperties("spring.datasource.druid.master") +//// public DataSource masterDataSource(DruidProperties druidProperties) +//// { +//// DruidDataSource dataSource = DruidDataSourceBuilder.create().build(); +//// return druidProperties.dataSource(dataSource); +//// } +//// +//// @Bean +//// @ConfigurationProperties("spring.datasource.druid.slave") +//// @ConditionalOnProperty(prefix = "spring.datasource.druid.slave", name = "enabled", havingValue = "true") +//// public DataSource slaveDataSource(DruidProperties druidProperties) +//// { +//// DruidDataSource dataSource = DruidDataSourceBuilder.create().build(); +//// return druidProperties.dataSource(dataSource); +//// } +//// +//// @Bean(name = "dynamicDataSource") +//// @Primary +//// public DynamicDataSource dataSource(DataSource masterDataSource) +//// { +//// Map targetDataSources = new HashMap<>(); +//// targetDataSources.put(DataSourceType.MASTER.name(), masterDataSource); +//// setDataSource(targetDataSources, DataSourceType.SLAVE.name(), "slaveDataSource"); +//// return new DynamicDataSource(masterDataSource, targetDataSources); +//// } +//// +//// /** +//// * 设置数据源 +//// * +//// * @param targetDataSources 备选数据源集合 +//// * @param sourceName 数据源名称 +//// * @param beanName bean名称 +//// */ +//// public void setDataSource(Map targetDataSources, String sourceName, String beanName) +//// { +//// try +//// { +//// DataSource dataSource = SpringUtils.getBean(beanName); +//// targetDataSources.put(sourceName, dataSource); +//// } +//// catch (Exception e) +//// { +//// } +//// } // // /** -// * 设置数据源 -// * -// * @param targetDataSources 备选数据源集合 -// * @param sourceName 数据源名称 -// * @param beanName bean名称 +// * 去除监控页面底部的广告 // */ -// public void setDataSource(Map targetDataSources, String sourceName, String beanName) +// @SuppressWarnings({ "rawtypes", "unchecked" }) +// @Bean +// @ConditionalOnProperty(name = "spring.datasource.druid.statViewServlet.enabled", havingValue = "true") +// public FilterRegistrationBean removeDruidFilterRegistrationBean(DruidStatProperties properties) // { -// try +// // 获取web监控页面的参数 +// DruidStatProperties.StatViewServlet config = properties.getStatViewServlet(); +// // 提取common.js的配置路径 +// String pattern = config.getUrlPattern() != null ? config.getUrlPattern() : "/druid/*"; +// String commonJsPattern = pattern.replaceAll("\\*", "js/common.js"); +// final String filePath = "support/http/resources/js/common.js"; +// // 创建filter进行过滤 +// Filter filter = new Filter() // { -// DataSource dataSource = SpringUtils.getBean(beanName); -// targetDataSources.put(sourceName, dataSource); -// } -// catch (Exception e) -// { -// } +// @Override +// public void init(javax.servlet.FilterConfig filterConfig) throws ServletException +// { +// } +// @Override +// public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) +// throws IOException, ServletException +// { +// chain.doFilter(request, response); +// // 重置缓冲区,响应头不会被重置 +// response.resetBuffer(); +// // 获取common.js +// String text = Utils.readFromResource(filePath); +// // 正则替换banner, 除去底部的广告信息 +// text = text.replaceAll("
", ""); +// text = text.replaceAll("powered.*?shrek.wang", ""); +// response.getWriter().write(text); +// } +// @Override +// public void destroy() +// { +// } +// }; +// FilterRegistrationBean registrationBean = new FilterRegistrationBean(); +// registrationBean.setFilter(filter); +// registrationBean.addUrlPatterns(commonJsPattern); +// return registrationBean; // } - - /** - * 去除监控页面底部的广告 - */ - @SuppressWarnings({ "rawtypes", "unchecked" }) - @Bean - @ConditionalOnProperty(name = "spring.datasource.druid.statViewServlet.enabled", havingValue = "true") - public FilterRegistrationBean removeDruidFilterRegistrationBean(DruidStatProperties properties) - { - // 获取web监控页面的参数 - DruidStatProperties.StatViewServlet config = properties.getStatViewServlet(); - // 提取common.js的配置路径 - String pattern = config.getUrlPattern() != null ? config.getUrlPattern() : "/druid/*"; - String commonJsPattern = pattern.replaceAll("\\*", "js/common.js"); - final String filePath = "support/http/resources/js/common.js"; - // 创建filter进行过滤 - Filter filter = new Filter() - { - @Override - public void init(javax.servlet.FilterConfig filterConfig) throws ServletException - { - } - @Override - public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) - throws IOException, ServletException - { - chain.doFilter(request, response); - // 重置缓冲区,响应头不会被重置 - response.resetBuffer(); - // 获取common.js - String text = Utils.readFromResource(filePath); - // 正则替换banner, 除去底部的广告信息 - text = text.replaceAll("
", ""); - text = text.replaceAll("powered.*?shrek.wang", ""); - response.getWriter().write(text); - } - @Override - public void destroy() - { - } - }; - FilterRegistrationBean registrationBean = new FilterRegistrationBean(); - registrationBean.setFilter(filter); - registrationBean.addUrlPatterns(commonJsPattern); - return registrationBean; - } -} +//} diff --git a/ruoyi/src/main/java/com/ruoyi/framework/config/HikariCPConfig.java b/ruoyi/src/main/java/com/ruoyi/framework/config/HikariCPConfig.java new file mode 100644 index 000000000..ae1c62fcd --- /dev/null +++ b/ruoyi/src/main/java/com/ruoyi/framework/config/HikariCPConfig.java @@ -0,0 +1,131 @@ +package com.ruoyi.framework.config; + + +import java.io.IOException; +import java.util.HashMap; +import java.util.Map; +import javax.servlet.Filter; +import javax.servlet.FilterChain; +import javax.servlet.ServletException; +import javax.servlet.ServletRequest; +import javax.servlet.ServletResponse; +import javax.sql.DataSource; + +import com.zaxxer.hikari.HikariConfig; +import com.zaxxer.hikari.HikariDataSource; +import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.boot.web.servlet.FilterRegistrationBean; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Primary; +//import com.alibaba.druid.pool.DruidDataSource; +//import com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceBuilder; +//import com.alibaba.druid.spring.boot.autoconfigure.properties.DruidStatProperties; +//import com.alibaba.druid.util.Utils; +import com.ruoyi.common.utils.spring.SpringUtils; +import com.ruoyi.framework.aspectj.lang.enums.DataSourceType; +import com.ruoyi.framework.datasource.DynamicDataSource; + +/** + * druid 配置多数据源 + * + * @author ruoyi + */ +@Configuration +public class HikariCPConfig { +// @Bean +// @ConfigurationProperties("spring.datasource.druid.master") +// public DataSource masterDataSource(HikariConfig hikariConfig) { +// HikariDataSource hikariDataSource = new HikariDataSource(hikariConfig); +// +// return hikariDataSource; +// +//// DruidDataSource dataSource = DruidDataSourceBuilder.create().build(); +//// return druidProperties.dataSource(dataSource); +// } +// +// @Bean +// @ConfigurationProperties("spring.datasource.druid.slave") +// @ConditionalOnProperty(prefix = "spring.datasource.druid.slave", name = "enabled", havingValue = "true") +// public DataSource slaveDataSource(DruidProperties druidProperties) +// { +// DruidDataSource dataSource = DruidDataSourceBuilder.create().build(); +// return druidProperties.dataSource(dataSource); +// } +// +// @Bean(name = "dynamicDataSource") +// @Primary +// public DynamicDataSource dataSource(DataSource masterDataSource) +// { +// Map targetDataSources = new HashMap<>(); +// targetDataSources.put(DataSourceType.MASTER.name(), masterDataSource); +// setDataSource(targetDataSources, DataSourceType.SLAVE.name(), "slaveDataSource"); +// return new DynamicDataSource(masterDataSource, targetDataSources); +// } +// +// /** +// * 设置数据源 +// * +// * @param targetDataSources 备选数据源集合 +// * @param sourceName 数据源名称 +// * @param beanName bean名称 +// */ +// public void setDataSource(Map targetDataSources, String sourceName, String beanName) +// { +// try +// { +// DataSource dataSource = SpringUtils.getBean(beanName); +// targetDataSources.put(sourceName, dataSource); +// } +// catch (Exception e) +// { +// } +// } + + /** + * 去除监控页面底部的广告 + */ +// @SuppressWarnings({ "rawtypes", "unchecked" }) +// @Bean +// @ConditionalOnProperty(name = "spring.datasource.druid.statViewServlet.enabled", havingValue = "true") +// public FilterRegistrationBean removeDruidFilterRegistrationBean(DruidStatProperties properties) +// { +// // 获取web监控页面的参数 +// DruidStatProperties.StatViewServlet config = properties.getStatViewServlet(); +// // 提取common.js的配置路径 +// String pattern = config.getUrlPattern() != null ? config.getUrlPattern() : "/druid/*"; +// String commonJsPattern = pattern.replaceAll("\\*", "js/common.js"); +// final String filePath = "support/http/resources/js/common.js"; +// // 创建filter进行过滤 +// Filter filter = new Filter() +// { +// @Override +// public void init(javax.servlet.FilterConfig filterConfig) throws ServletException +// { +// } +// @Override +// public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) +// throws IOException, ServletException +// { +// chain.doFilter(request, response); +// // 重置缓冲区,响应头不会被重置 +// response.resetBuffer(); +// // 获取common.js +// String text = Utils.readFromResource(filePath); +// // 正则替换banner, 除去底部的广告信息 +// text = text.replaceAll("
", ""); +// text = text.replaceAll("powered.*?shrek.wang", ""); +// response.getWriter().write(text); +// } +// @Override +// public void destroy() +// { +// } +// }; +// FilterRegistrationBean registrationBean = new FilterRegistrationBean(); +// registrationBean.setFilter(filter); +// registrationBean.addUrlPatterns(commonJsPattern); +// return registrationBean; +// } +} diff --git a/ruoyi/src/main/java/com/ruoyi/project/data/price/service/impl/UltimateOfficeBasePriceServiceImpl.java b/ruoyi/src/main/java/com/ruoyi/project/data/price/service/impl/UltimateOfficeBasePriceServiceImpl.java index 6d6d14b1a..aef68e6ce 100644 --- a/ruoyi/src/main/java/com/ruoyi/project/data/price/service/impl/UltimateOfficeBasePriceServiceImpl.java +++ b/ruoyi/src/main/java/com/ruoyi/project/data/price/service/impl/UltimateOfficeBasePriceServiceImpl.java @@ -5,7 +5,6 @@ import java.util.*; import com.ruoyi.common.exception.CustomException; import com.ruoyi.common.utils.StringUtils; -import com.ruoyi.common.utils.file.FileUtils; import com.ruoyi.framework.config.UVConfig; import com.ruoyi.project.common.UVResponse; import com.ruoyi.project.common.VueSelectModel; @@ -17,10 +16,7 @@ import com.ruoyi.project.system.service.impl.SysUserServiceImpl; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; import org.springframework.web.client.RestTemplate; /** diff --git a/ruoyi/src/main/resources/application-druid.yml b/ruoyi/src/main/resources/application-druid.yml index 6f4d33ff9..d1da7a494 100644 --- a/ruoyi/src/main/resources/application-druid.yml +++ b/ruoyi/src/main/resources/application-druid.yml @@ -1,72 +1,108 @@ # 数据源配置 spring: - datasource: - druid: - statViewServlet: - enabled: true - # 设置白名单,不填则允许所有访问 - allow: - url-pattern: /druid/* - # 控制台管理用户名和密码 - login-username: - login-password: - dynamic: - druid: - # 初始连接数 - initialSize: 5 - # 最小连接池数量 - minIdle: 10 - # 最大连接池数量 - maxActive: 20 - # 配置获取连接等待超时的时间 - maxWait: 60000 - # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 - timeBetweenEvictionRunsMillis: 60000 - # 配置一个连接在池中最小生存的时间,单位是毫秒 - minEvictableIdleTimeMillis: 300000 - # 配置一个连接在池中最大生存的时间,单位是毫秒 - maxEvictableIdleTimeMillis: 900000 - # 配置检测连接是否有效 - validationQuery: SELECT 1 - testWhileIdle: true - testOnBorrow: false - testOnReturn: false - webStatFilter: - enabled: true - filters: stat,wall - wall: - multiStatementAllow: true - stat: - log-slow-sql: true - slow-sql-millis: 1000 - merge-sql: true - primary: master - datasource: - # 主库数据源 - master: - driver-class-name: com.mysql.jdbc.Driver - url: jdbc:mysql://172.16.30.243:6060/ruoyi?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 - username: root - password: LOLm2dI2UQF#RxOf - # 从库数据源 -# slave: -# # 从数据源开关/默认关闭 -# enabled: false -# url: -# username: -# password: - teemlink: - driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver - url: jdbc:sqlserver://172.16.30.233:1433;DatabaseName=obpm_LianCheng_Data - username: sa - password: Lcdatacenter_888 - compute: - driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver - url: jdbc:sqlserver://172.16.30.233:1433;DatabaseName=uv_compute - username: sa - password: Lcdatacenter_888 - clean: - driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver - url: jdbc:sqlserver://172.16.30.233:1433;DatabaseName=uv_clean - username: sa - password: Lcdatacenter_888 \ No newline at end of file + datasource: + dynamic: + primary: master + hikari: + connection-timeout: 30000 + validation-timeout: 30000 + idle-timeout: 30000 + max-lifetime: 30000 + max-pool-size: 30 + min-idle: 10 + initialization-fail-timeout: 30000 + connection-init-sql: select 1 + connection-test-query: select 1 + is-auto-commit: true + is-read-only: false + datasource: + master: + driver-class-name: com.mysql.jdbc.Driver + url: jdbc:mysql://172.16.30.243:6060/ruoyi?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 + username: root + password: LOLm2dI2UQF#RxOf + teemlink: + driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver + url: jdbc:sqlserver://172.16.30.233:1433;DatabaseName=obpm_LianCheng_Data + username: sa + password: Lcdatacenter_888 + compute: + driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver + url: jdbc:sqlserver://172.16.30.233:1433;DatabaseName=uv_compute + username: sa + password: Lcdatacenter_888 + clean: + driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver + url: jdbc:sqlserver://172.16.30.233:1433;DatabaseName=uv_clean + username: sa + password: Lcdatacenter_888 + +# druid: +# statViewServlet: +# enabled: true +# # 设置白名单,不填则允许所有访问 +# allow: +# url-pattern: /druid/* +# # 控制台管理用户名和密码 +# login-username: +# login-password: +# dynamic: +# druid: +# # 初始连接数 +# initialSize: 5 +# # 最小连接池数量 +# minIdle: 10 +# # 最大连接池数量 +# maxActive: 20 +# # 配置获取连接等待超时的时间 +# maxWait: 60000 +# # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 +# timeBetweenEvictionRunsMillis: 60000 +# # 配置一个连接在池中最小生存的时间,单位是毫秒 +# minEvictableIdleTimeMillis: 300000 +# # 配置一个连接在池中最大生存的时间,单位是毫秒 +# maxEvictableIdleTimeMillis: 900000 +# # 配置检测连接是否有效 +# validationQuery: SELECT 1 +# testWhileIdle: true +# testOnBorrow: false +# testOnReturn: false +## webStatFilter: +## enabled: true +## filters: stat,wall +## wall: +## multiStatementAllow: true +# stat: +# log-slow-sql: true +# slow-sql-millis: 1000 +# merge-sql: true +# primary: master +# datasource: +# # 主库数据源 +# master: +# driver-class-name: com.mysql.jdbc.Driver +# url: jdbc:mysql://172.16.30.243:6060/ruoyi?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 +# username: root +# password: LOLm2dI2UQF#RxOf +# # 从库数据源 +## slave: +## # 从数据源开关/默认关闭 +## enabled: false +## url: +## username: +## password: +# teemlink: +# driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver +# url: jdbc:sqlserver://172.16.30.233:1433;DatabaseName=obpm_LianCheng_Data +# username: sa +# password: Lcdatacenter_888 +# compute: +# driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver +# url: jdbc:sqlserver://172.16.30.233:1433;DatabaseName=uv_compute +# username: sa +# password: Lcdatacenter_888 +# clean: +# driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver +# url: jdbc:sqlserver://172.16.30.233:1433;DatabaseName=uv_clean +# username: sa +# password: Lcdatacenter_888 \ No newline at end of file diff --git a/ruoyi/src/main/resources/mybatis/data/UltimateOfficeBasePriceMapper.xml b/ruoyi/src/main/resources/mybatis/data/UltimateOfficeBasePriceMapper.xml index a74b7ef75..6b00e4238 100644 --- a/ruoyi/src/main/resources/mybatis/data/UltimateOfficeBasePriceMapper.xml +++ b/ruoyi/src/main/resources/mybatis/data/UltimateOfficeBasePriceMapper.xml @@ -54,36 +54,30 @@ ,a.Status ,a.BuildingStd ,a.AdjEvd - ,b.AreaCoff - ,b.YearCoff - ,b.BuildingCoff - ,b.ProjectName - ,b.ProjectAddr - ,b.BuildingAddr - ,b.County - ,b.Loop - ,b.Block - ,b.Street - ,b.Year - ,b.AvgArea - ,b.TotalFloorSum - ,b.UpperFloorSum - ,b.OfficeClass - ,b.Grade - ,c.MainPrice AS mainPrice_1 - ,c.MainPriceRent as mainPriceRent_1 + ,a.AreaCoff + ,a.YearCoff + ,a.BuildingCoff + ,a.ProjectName + ,a.ProjectAddr + ,a.BuildingAddr + ,a.County + ,a.Loop + ,a.Block + ,a.Street + ,a.Year + ,a.AvgArea + ,a.TotalFloorSum + ,a.UpperFloorSum + ,a.OfficeClass + ,a.Grade + ,a.mainPrice_1 + ,a.mainPriceRent_1 , ${yearMonth} as yearMonth FROM ODS_OFFICE_BUILDING_PRICE_INFO_${yearMonth} a - left join DIM_OFFICE_PROJECT_BUILDING_201909 b on a.BuildingID_P=b.BuildingID_P - left join ODS_OFFICE_BUILDING_PRICE_INFO_${lastYearMonth} c on a.BuildingID_P = c.BuildingID_P - WHERE b.EffDate getdate() AND b.ExpirDate ]]> getdate() AND c.Status=1