From d6dd7fca8ee9e0a514c263ce274b7a8d9543ae9d Mon Sep 17 00:00:00 2001 From: purple <purple_lihe@163.com> Date: Fri, 10 Jul 2020 17:05:47 +0800 Subject: [PATCH] =?UTF-8?q?feature=20(=E4=BA=8C=E6=89=8B=E6=88=90=E4=BA=A4?= =?UTF-8?q?=E6=A1=88=E4=BE=8B=E6=95=B0=E6=8D=AE=E5=90=8C=E6=AD=A5)?= =?UTF-8?q?=EF=BC=9A=20=E6=8E=A8=E9=80=81=E4=BD=8F=E5=AE=85=E9=94=80?= =?UTF-8?q?=E5=94=AE=E4=BA=8C=E6=89=8B=E6=88=90=E4=BA=A4=E6=A1=88=E4=BE=8B?= =?UTF-8?q?=E5=88=B0=E8=81=94=E5=9F=8E=E6=95=B0=E5=BA=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...alResidenceSaleClosingCaseServiceImpl.java | 22 ++++++ .../impl/OriginalOfficeCaseServiceImpl.java | 10 +-- ruoyi/src/main/resources/application-dev.yml | 72 +------------------ .../sql-template/copy_ershou_data.sql | 51 +++++++++++++ .../java/com/ruoyi/GenerateTableTests.java | 6 ++ ...idenceSaleClosingCaseServiceImplTests.java | 20 ++++++ 6 files changed, 105 insertions(+), 76 deletions(-) create mode 100644 ruoyi/src/main/resources/sql-template/copy_ershou_data.sql diff --git a/ruoyi/src/main/java/com/ruoyi/project/data/cases/service/impl/DownloadOriginalResidenceSaleClosingCaseServiceImpl.java b/ruoyi/src/main/java/com/ruoyi/project/data/cases/service/impl/DownloadOriginalResidenceSaleClosingCaseServiceImpl.java index 7db5e9219..3b04e821b 100644 --- a/ruoyi/src/main/java/com/ruoyi/project/data/cases/service/impl/DownloadOriginalResidenceSaleClosingCaseServiceImpl.java +++ b/ruoyi/src/main/java/com/ruoyi/project/data/cases/service/impl/DownloadOriginalResidenceSaleClosingCaseServiceImpl.java @@ -10,6 +10,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.jdbc.core.JdbcTemplate; +import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; import java.util.Calendar; @@ -65,6 +66,8 @@ public class DownloadOriginalResidenceSaleClosingCaseServiceImpl { running(tableRoute, originalResidenceSaleClosingCases); after(tableRoute); + + copy2UVData(tableRoute, remoteTableRoute); } @@ -110,4 +113,23 @@ public class DownloadOriginalResidenceSaleClosingCaseServiceImpl { } } + /** + * 拷贝数据到联城数库 + * + * @param tableRoute + * @param remoteTableRoute + */ + @Async + public void copy2UVData(Integer tableRoute, Integer remoteTableRoute) { + try { + String yearMonth = String.format("%d-%02d", remoteTableRoute / 100, remoteTableRoute % 100); + String rawSql = LoadUtil.loadContent("sql-template/copy_ershou_data.sql"); + String sql = rawSql.replace("#tableRoute#", tableRoute.toString()) + .replace("#yearMonth#", yearMonth); + jdbcTemplate.update(sql); + } catch (Exception e) { + logger.error("住宅销售二手成交案例推送到联城数库异常", e); + } + } + } diff --git a/ruoyi/src/main/java/com/ruoyi/project/data/cases/service/impl/OriginalOfficeCaseServiceImpl.java b/ruoyi/src/main/java/com/ruoyi/project/data/cases/service/impl/OriginalOfficeCaseServiceImpl.java index 5675ebf1c..266840891 100644 --- a/ruoyi/src/main/java/com/ruoyi/project/data/cases/service/impl/OriginalOfficeCaseServiceImpl.java +++ b/ruoyi/src/main/java/com/ruoyi/project/data/cases/service/impl/OriginalOfficeCaseServiceImpl.java @@ -54,11 +54,11 @@ public class OriginalOfficeCaseServiceImpl implements IOriginalOfficeCaseService calendar.get(Calendar.MONTH) + 1)); // yearMonth = 202007; -// lastYearMonth = 202006; -// calendar.set(2020, 5, 16); -// startDate = calendar.getTime(); -// calendar.set(2020, 6, 16); -// endDate = calendar.getTime(); +//// lastYearMonth = 202006; +//// calendar.set(2020, 5, 16); +//// startDate = calendar.getTime(); +//// calendar.set(2020, 6, 16); +//// endDate = calendar.getTime(); before(yearMonth, startDate, endDate); running(yearMonth, lastYearMonth); diff --git a/ruoyi/src/main/resources/application-dev.yml b/ruoyi/src/main/resources/application-dev.yml index 1d507d4d5..86fe1314e 100644 --- a/ruoyi/src/main/resources/application-dev.yml +++ b/ruoyi/src/main/resources/application-dev.yml @@ -77,74 +77,4 @@ spring: driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver url: jdbc:sqlserver://139.196.201.83:1433;DatabaseName=TEST username: purple - password: liancheng - -# 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 + password: liancheng \ No newline at end of file diff --git a/ruoyi/src/main/resources/sql-template/copy_ershou_data.sql b/ruoyi/src/main/resources/sql-template/copy_ershou_data.sql new file mode 100644 index 000000000..5e82d5789 --- /dev/null +++ b/ruoyi/src/main/resources/sql-template/copy_ershou_data.sql @@ -0,0 +1,51 @@ +delete from obpm_LianCheng_Data.dbo.TLK_成交案例 where ITEM_YEARMONTH='#yearMonth#'; + +declare @count int + +SELECT @count=max(cast((substring(ITEM_DEALID,2,10) )as int)) FROM dbo.TLK_成交案例 where ITEM_DEALTYPE='二手'; +-- 居住类型 +insert into obpm_LianCheng_Data.dbo.TLK_成交案例(LASTMODIFIED, FORMNAME, AUTHOR, AUTHOR_DEPT_INDEX, CREATED, FORMID, ISTMP, VERSIONS, APPLICATIONID, STATEINT, LASTMODIFIER, DOMAINID, AUDITORLIST, COAUDITORLIST, ID, ITEM_DEALID, ITEM_SECTOR, ITEM_CIRCLEPOSITION, ITEM_DISTRICT, ITEM_RANAME, ITEM_HOUSEADDRESS, ITEM_AREA, ITEM_SUMPRICE, ITEM_UNITPRICE, ITEM_SIGNINGDATA, ITEM_FLOOR, ITEM_ROOMNATURE, ITEM_APARTMENT, ITEM_DEALTYPE, ITEM_REGISTER, ITEM_INTERMEDIARYCOMPANY, ITEM_INTERMEDIARYTYPE, ITEM_SELLERTYPE, ITEM_BUYERTYPE, ITEM_YEARMONTH, ITEM_AIRAID, ITEM_AIUNITID, ITEM_SINGLEID, ITEM_STANDARDSINGLEADDRESS, ITEM_HOUSETYPE, ITEM_IMPORTDATE,ITEM_PROPERTYTYPE) +select getdate(), N'物业信息管理/成交案例', N'PNDbyK6lSFWFGlLJFXj', 'Os6qe4Pmq5viTO8lTnW_3QBGkL7jqDjm2BRk7uJ', getdate(), +N'gTn1hQuxFRdwLakei6q', 0, 1, N'Ts7TykYmuEzzZgWhXHj', 0, N'PNDbyK6lSFWFGlLJFXj', N'BclzHtmfLQoAA5ICTb5', N'{}', +N'{}', newid(), 'b'+cast((row_number() over(order by case_id) + @count) as nvarchar(20)),case_block_name, +case_loopline_name,case_county_name,case_community_name,case_address,case_area,case_total_price,case_unit_price, +case_signing_date,null,case_house_property,case_apartment_layout,'二手',case_register_date,case_agency_name, +case_agency_type,case_seller_type,case_buyer_type,'#yearMonth#',clean_community_id,NULL,clean_condo_id, +clean_condo_address,case_house_type,getdate(),clean_property_type +from uv_compute.dbo.original_residence_sale_closing_case_#tableRoute# + +insert into obpm_LianCheng_Data.dbo.T_DOCUMENT +( + ID + , LASTMODIFIED + , FORMNAME + , AUTHOR + , AUTHOR_DEPT_INDEX + , CREATED + , FORMID + , ISTMP + , VERSIONS + , APPLICATIONID + , LASTMODIFIER + , DOMAINID + , AUDITORLIST + , COAUDITORLIST + , MAPPINGID +) +SELECT ID + , LASTMODIFIED + , FORMNAME + , AUTHOR + , AUTHOR_DEPT_INDEX + , CREATED + , FORMID + , ISTMP + , VERSIONS + , APPLICATIONID + , LASTMODIFIER + , DOMAINID + , AUDITORLIST + , COAUDITORLIST + , ID +FROM obpm_LianCheng_Data.dbo.TLK_成交案例 +where ITEM_YEARMONTH='#yearMonth#' and ITEM_DEALTYPE='二手'; \ No newline at end of file diff --git a/ruoyi/src/test/java/com/ruoyi/GenerateTableTests.java b/ruoyi/src/test/java/com/ruoyi/GenerateTableTests.java index f1c58e3d6..93b435b16 100644 --- a/ruoyi/src/test/java/com/ruoyi/GenerateTableTests.java +++ b/ruoyi/src/test/java/com/ruoyi/GenerateTableTests.java @@ -148,5 +148,11 @@ public class GenerateTableTests { } } + @Test + public void printLoop2(){ + for (int i = 201901; i <= 201912; i++) { + System.out.println(i); + } + } } diff --git a/ruoyi/src/test/java/com/ruoyi/compute/DownloadOriginalResidenceSaleClosingCaseServiceImplTests.java b/ruoyi/src/test/java/com/ruoyi/compute/DownloadOriginalResidenceSaleClosingCaseServiceImplTests.java index 332293a05..8533c7ab5 100644 --- a/ruoyi/src/test/java/com/ruoyi/compute/DownloadOriginalResidenceSaleClosingCaseServiceImplTests.java +++ b/ruoyi/src/test/java/com/ruoyi/compute/DownloadOriginalResidenceSaleClosingCaseServiceImplTests.java @@ -9,6 +9,8 @@ import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.ActiveProfiles; import org.springframework.test.context.junit4.SpringRunner; +import java.util.Arrays; + @RunWith(SpringRunner.class) @SpringBootTest(classes = RuoYiApplication.class) @ActiveProfiles("dev") @@ -20,4 +22,22 @@ public class DownloadOriginalResidenceSaleClosingCaseServiceImplTests { public void testDownload() { downloadOriginalResidenceSaleClosingCaseService.download(202007, 202005); } + + + @Test + public void testLoopDownload() { + // , 201912 +// Arrays.asList(201901, 201902, 201903, 201904, 201905, 201906, 201907, 201908, 201909, 201910, 201911).parallelStream().forEach(i -> { +// downloadOriginalResidenceSaleClosingCaseService.download(i + 1, i); +// }); +// downloadOriginalResidenceSaleClosingCaseService.download(202001, 201912); + downloadOriginalResidenceSaleClosingCaseService.download(202001, 201911); + downloadOriginalResidenceSaleClosingCaseService.download(202002, 201912); + downloadOriginalResidenceSaleClosingCaseService.download(202003, 202001); + downloadOriginalResidenceSaleClosingCaseService.download(202004, 202002); + downloadOriginalResidenceSaleClosingCaseService.download(202005, 202003); + downloadOriginalResidenceSaleClosingCaseService.download(202006, 202004); + downloadOriginalResidenceSaleClosingCaseService.download(202007, 202005); + downloadOriginalResidenceSaleClosingCaseService.download(202008, 202006); + } }