Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
mqttsnet
thinglinks
提交
56dcc586
thinglinks
项目概览
mqttsnet
/
thinglinks
通知
1
Star
2
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
thinglinks
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
56dcc586
编写于
1月 04, 2022
作者:
xiaonannet
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
tdengine消费产品超级表创建
上级
b5be6748
变更
17
隐藏空白更改
内联
并排
Showing
17 changed file
with
182 addition
and
21 deletion
+182
-21
thinglinks-api/pom.xml
thinglinks-api/pom.xml
+1
-0
thinglinks-api/thinglinks-api-monitor/pom.xml
thinglinks-api/thinglinks-api-monitor/pom.xml
+1
-1
thinglinks-api/thinglinks-api-tdengine/pom.xml
thinglinks-api/thinglinks-api-tdengine/pom.xml
+28
-0
thinglinks-api/thinglinks-api-tdengine/src/main/java/com/mqttsnet/thinglinks/tdengine/api/domain/model/ProductSuperTableModel.java
...nks/tdengine/api/domain/model/ProductSuperTableModel.java
+40
-0
thinglinks-api/thinglinks-api-tdengine/src/main/java/com/mqttsnet/thinglinks/tdengine/api/domain/model/Weather.java
...qttsnet/thinglinks/tdengine/api/domain/model/Weather.java
+1
-1
thinglinks-api/thinglinks-api-tdengine/src/main/resources/META-INF/spring.factories
...api-tdengine/src/main/resources/META-INF/spring.factories
+1
-0
thinglinks-modules/thinglinks-modules-tdengine/pom.xml
thinglinks-modules/thinglinks-modules-tdengine/pom.xml
+7
-0
thinglinks-modules/thinglinks-modules-tdengine/src/main/java/com/mqttsnet/thinglinks/tdengine/consumer/ProductCreateSuperTableMessageConsumer.java
...gine/consumer/ProductCreateSuperTableMessageConsumer.java
+11
-7
thinglinks-modules/thinglinks-modules-tdengine/src/main/java/com/mqttsnet/thinglinks/tdengine/controller/WeatherController.java
...net/thinglinks/tdengine/controller/WeatherController.java
+1
-1
thinglinks-modules/thinglinks-modules-tdengine/src/main/java/com/mqttsnet/thinglinks/tdengine/mapper/ProductSuperTableCreateOrUpdateMapper.java
...dengine/mapper/ProductSuperTableCreateOrUpdateMapper.java
+1
-1
thinglinks-modules/thinglinks-modules-tdengine/src/main/java/com/mqttsnet/thinglinks/tdengine/mapper/ProductSuperTableCreateOrUpdateMapper.xml
...tdengine/mapper/ProductSuperTableCreateOrUpdateMapper.xml
+30
-0
thinglinks-modules/thinglinks-modules-tdengine/src/main/java/com/mqttsnet/thinglinks/tdengine/mapper/WeatherMapper.java
...om/mqttsnet/thinglinks/tdengine/mapper/WeatherMapper.java
+1
-1
thinglinks-modules/thinglinks-modules-tdengine/src/main/java/com/mqttsnet/thinglinks/tdengine/mapper/WeatherMapper.xml
...com/mqttsnet/thinglinks/tdengine/mapper/WeatherMapper.xml
+4
-4
thinglinks-modules/thinglinks-modules-tdengine/src/main/java/com/mqttsnet/thinglinks/tdengine/service/ProductSuperTableCreateOrUpdateService.java
...ngine/service/ProductSuperTableCreateOrUpdateService.java
+3
-3
thinglinks-modules/thinglinks-modules-tdengine/src/main/java/com/mqttsnet/thinglinks/tdengine/service/WeatherService.java
.../mqttsnet/thinglinks/tdengine/service/WeatherService.java
+2
-1
thinglinks-modules/thinglinks-modules-tdengine/src/main/java/com/mqttsnet/thinglinks/tdengine/service/impl/ProductSuperTableCreateOrUpdateServiceImpl.java
...vice/impl/ProductSuperTableCreateOrUpdateServiceImpl.java
+49
-0
thinglinks-modules/thinglinks-modules-tdengine/src/main/java/com/mqttsnet/thinglinks/tdengine/service/impl/WeatherServiceImpl.java
.../thinglinks/tdengine/service/impl/WeatherServiceImpl.java
+1
-1
未找到文件。
thinglinks-api/pom.xml
浏览文件 @
56dcc586
...
...
@@ -12,6 +12,7 @@
<module>
thinglinks-api-system
</module>
<module>
thinglinks-api-link
</module>
<module>
thinglinks-api-monitor
</module>
<module>
thinglinks-api-tdengine
</module>
</modules>
<artifactId>
thinglinks-api
</artifactId>
...
...
thinglinks-api/thinglinks-api-monitor/pom.xml
浏览文件 @
56dcc586
...
...
@@ -5,7 +5,7 @@
<parent>
<artifactId>
thinglinks-api
</artifactId>
<groupId>
com.mqttsnet
</groupId>
<version>
1.0.0-RELEASE
</version>
<version>
${thinglinks.version}
</version>
</parent>
<modelVersion>
4.0.0
</modelVersion>
...
...
thinglinks-api/thinglinks-api-tdengine/pom.xml
0 → 100644
浏览文件 @
56dcc586
<?xml version="1.0" encoding="UTF-8"?>
<project
xmlns=
"http://maven.apache.org/POM/4.0.0"
xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation=
"http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
>
<parent>
<artifactId>
thinglinks-api
</artifactId>
<groupId>
com.mqttsnet
</groupId>
<version>
${thinglinks.version}
</version>
</parent>
<modelVersion>
4.0.0
</modelVersion>
<artifactId>
thinglinks-api-tdengine
</artifactId>
<dependencies>
<!-- thinglinks Common Core-->
<dependency>
<groupId>
com.mqttsnet
</groupId>
<artifactId>
thinglinks-common-core
</artifactId>
<version>
${thinglinks.version}
</version>
</dependency>
<dependency>
<groupId>
org.projectlombok
</groupId>
<artifactId>
lombok
</artifactId>
</dependency>
</dependencies>
</project>
\ No newline at end of file
thinglinks-api/thinglinks-api-tdengine/src/main/java/com/mqttsnet/thinglinks/tdengine/api/domain/model/ProductSuperTableModel.java
0 → 100644
浏览文件 @
56dcc586
package
com.mqttsnet.thinglinks.tdengine.api.domain.model
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
lombok.Data
;
import
java.sql.Timestamp
;
import
java.util.HashMap
;
import
java.util.Optional
;
/**
* @Description: 产品超级表模型
* @Author: ShiHuan SUN
* @E-mail: 13733918655@163.com
* @Website: http://thinglinks.mqttsnet.com
* @CreateDate: 2022/1/1$ 19:37$
* @UpdateUser: ShiHuan SUN
* @UpdateDate: 2022/1/1$ 19:37$
* @UpdateRemark: 修改内容
* @Version: V1.0
*/
@Data
public
class
ProductSuperTableModel
{
private
static
final
long
serialVersionUID
=
1L
;
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss.SSS"
,
timezone
=
"GMT+8"
)
private
Timestamp
ts
;
private
String
superTableName
;
/**
* columnsName,columnsProperty
*/
private
HashMap
<
Optional
,
Optional
>
columns
;
/**
* tagsName,tagsProperty
*/
private
HashMap
<
Optional
,
Optional
>
tags
;
}
thinglinks-
modules/thinglinks-modules-tdengine/src/main/java/com/mqttsnet/thinglinks/tdengine/domain
/Weather.java
→
thinglinks-
api/thinglinks-api-tdengine/src/main/java/com/mqttsnet/thinglinks/tdengine/api/domain/model
/Weather.java
浏览文件 @
56dcc586
package
com.mqttsnet.thinglinks.tdengine.
domain
;
package
com.mqttsnet.thinglinks.tdengine.
api.domain.model
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
...
...
thinglinks-api/thinglinks-api-tdengine/src/main/resources/META-INF/spring.factories
0 → 100644
浏览文件 @
56dcc586
org.springframework.boot.autoconfigure.EnableAutoConfiguration=
thinglinks-modules/thinglinks-modules-tdengine/pom.xml
浏览文件 @
56dcc586
...
...
@@ -97,6 +97,13 @@
<version>
${thinglinks.version}
</version>
</dependency>
<!-- thinglinks Api Tdengine -->
<dependency>
<groupId>
com.mqttsnet
</groupId>
<artifactId>
thinglinks-api-tdengine
</artifactId>
<version>
${thinglinks.version}
</version>
</dependency>
</dependencies>
<!--<build>
...
...
thinglinks-modules/thinglinks-modules-tdengine/src/main/java/com/mqttsnet/thinglinks/tdengine/co
mmon/rockermq/consumer/
CreateSuperTableMessageConsumer.java
→
thinglinks-modules/thinglinks-modules-tdengine/src/main/java/com/mqttsnet/thinglinks/tdengine/co
nsumer/Product
CreateSuperTableMessageConsumer.java
浏览文件 @
56dcc586
package
com.mqttsnet.thinglinks.tdengine.co
mmon.rockermq.co
nsumer
;
package
com.mqttsnet.thinglinks.tdengine.consumer
;
import
com.alibaba.fastjson.JSONObject
;
import
com.mqttsnet.thinglinks.tdengine.service.SuperTableCreateOrUpdateService
;
import
com.mqttsnet.thinglinks.tdengine.service.
Product
SuperTableCreateOrUpdateService
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.rocketmq.spring.annotation.RocketMQMessageListener
;
import
org.apache.rocketmq.spring.core.RocketMQListener
;
...
...
@@ -21,21 +21,25 @@ import org.springframework.stereotype.Component;
*/
@Slf4j
@Component
@RocketMQMessageListener
(
consumerGroup
=
"thinglinks-tdengine"
,
topic
=
"
s
uperTable-createOrUpdate"
)
public
class
CreateSuperTableMessageConsumer
implements
RocketMQListener
{
@RocketMQMessageListener
(
consumerGroup
=
"thinglinks-tdengine"
,
topic
=
"
productS
uperTable-createOrUpdate"
)
public
class
Product
CreateSuperTableMessageConsumer
implements
RocketMQListener
{
@Autowired
private
SuperTableCreateOrUpdateService
s
uperTableCreateOrUpdateService
;
private
ProductSuperTableCreateOrUpdateService
productS
uperTableCreateOrUpdateService
;
/**
* 超级表创建及修改处理
* @param message
*/
@Override
public
void
onMessage
(
Object
message
)
{
assert
message
!=
null
;
JSONObject
stableMessage
=
JSONObject
.
parseObject
(
String
.
valueOf
(
message
));
log
.
info
(
"TDengine消费{}超级表消息:{}"
+
stableMessage
.
get
(
"type"
)+
stableMessage
.
get
(
"msg"
));
if
(
"create"
.
equals
(
stableMessage
.
get
(
"type"
))){
superTableCreateOrUpdateService
.
creat
e
(
String
.
valueOf
(
stableMessage
.
get
(
"msg"
)));
productSuperTableCreateOrUpdateService
.
createProductSuperTabl
e
(
String
.
valueOf
(
stableMessage
.
get
(
"msg"
)));
}
else
if
(
"update"
.
equals
(
stableMessage
.
get
(
"type"
))){
superTableCreateOrUpdateService
.
updat
e
(
String
.
valueOf
(
stableMessage
.
get
(
"msg"
)));
productSuperTableCreateOrUpdateService
.
updateProductSuperTabl
e
(
String
.
valueOf
(
stableMessage
.
get
(
"msg"
)));
}
}
...
...
thinglinks-modules/thinglinks-modules-tdengine/src/main/java/com/mqttsnet/thinglinks/tdengine/controller/WeatherController.java
浏览文件 @
56dcc586
package
com.mqttsnet.thinglinks.tdengine.controller
;
import
com.mqttsnet.thinglinks.tdengine.api.domain.model.Weather
;
import
com.mqttsnet.thinglinks.tdengine.service.WeatherService
;
import
com.mqttsnet.thinglinks.tdengine.domain.Weather
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
...
...
thinglinks-modules/thinglinks-modules-tdengine/src/main/java/com/mqttsnet/thinglinks/tdengine/mapper/SuperTableCreateOrUpdateMapper.java
→
thinglinks-modules/thinglinks-modules-tdengine/src/main/java/com/mqttsnet/thinglinks/tdengine/mapper/
Product
SuperTableCreateOrUpdateMapper.java
浏览文件 @
56dcc586
...
...
@@ -14,7 +14,7 @@ import org.apache.ibatis.annotations.Mapper;
* @Version: 1.0
*/
@Mapper
public
interface
SuperTableCreateOrUpdateMapper
{
public
interface
Product
SuperTableCreateOrUpdateMapper
{
void
dropDB
();
...
...
thinglinks-modules/thinglinks-modules-tdengine/src/main/java/com/mqttsnet/thinglinks/tdengine/mapper/SuperTableCreateOrUpdateMapper.xml
→
thinglinks-modules/thinglinks-modules-tdengine/src/main/java/com/mqttsnet/thinglinks/tdengine/mapper/
Product
SuperTableCreateOrUpdateMapper.xml
浏览文件 @
56dcc586
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.mqttsnet.thinglinks.tdengine.mapper.SuperTableCreateOrUpdateMapper"
>
<mapper
namespace=
"com.mqttsnet.thinglinks.tdengine.mapper.
Product
SuperTableCreateOrUpdateMapper"
>
<update
id=
"dropDB"
>
drop
...
...
@@ -13,17 +13,17 @@
database if not exists thinglinks
</update>
<update
id=
"createSuperTable"
parameterType=
"
HashMap
"
>
create table if not exists thinglinks.${
S
uperTableName}(
<update
id=
"createSuperTable"
parameterType=
"
com.mqttsnet.thinglinks.tdengine.api.domain.model.ProductSuperTableModel
"
>
create table if not exists thinglinks.${
s
uperTableName}(
<foreach
collection=
"columns"
item=
"
item"
open=
"("
separator=
","
close=
")
"
>
#{
item,jdbcType=VARBINARY
}
<foreach
collection=
"columns"
item=
"
value"
index=
"key"
separator=
",
"
>
#{
key} #{value
}
</foreach>
)
tags(
<foreach
collection=
"tags"
item=
"
item"
open=
"("
separator=
","
close=
")
"
>
#{
item,jdbcType=VARBINARY
}
<foreach
collection=
"tags"
item=
"
value"
index=
"key"
separator=
",
"
>
#{
key} #{value
}
</foreach>
)
</update>
...
...
thinglinks-modules/thinglinks-modules-tdengine/src/main/java/com/mqttsnet/thinglinks/tdengine/mapper/WeatherMapper.java
浏览文件 @
56dcc586
package
com.mqttsnet.thinglinks.tdengine.mapper
;
import
com.mqttsnet.thinglinks.tdengine.
domain
.Weather
;
import
com.mqttsnet.thinglinks.tdengine.
api.domain.model
.Weather
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
...
...
thinglinks-modules/thinglinks-modules-tdengine/src/main/java/com/mqttsnet/thinglinks/tdengine/mapper/WeatherMapper.xml
浏览文件 @
56dcc586
...
...
@@ -3,7 +3,7 @@
<mapper
namespace=
"com.mqttsnet.thinglinks.tdengine.mapper.WeatherMapper"
>
<resultMap
id=
"BaseResultMap"
type=
"com.mqttsnet.thinglinks.tdengine.
domain
.Weather"
>
<resultMap
id=
"BaseResultMap"
type=
"com.mqttsnet.thinglinks.tdengine.
api.domain.model
.Weather"
>
<id
column=
"ts"
jdbcType=
"TIMESTAMP"
property=
"ts"
/>
<result
column=
"temperature"
jdbcType=
"FLOAT"
property=
"temperature"
/>
<result
column=
"humidity"
jdbcType=
"FLOAT"
property=
"humidity"
/>
...
...
@@ -45,7 +45,7 @@
), groupId int)
</update>
<update
id=
"createTable"
parameterType=
"com.mqttsnet.thinglinks.tdengine.
domain
.Weather"
>
<update
id=
"createTable"
parameterType=
"com.mqttsnet.thinglinks.tdengine.
api.domain.model
.Weather"
>
create table if not exists thinglinks.t#{groupId} using thinglinks.weather tags
(
#{location},
...
...
@@ -63,7 +63,7 @@
</if>
</select>
<insert
id=
"insert"
parameterType=
"com.mqttsnet.thinglinks.tdengine.
domain
.Weather"
>
<insert
id=
"insert"
parameterType=
"com.mqttsnet.thinglinks.tdengine.
api.domain.model
.Weather"
>
insert into thinglinks.t#{groupId} (ts, temperature, humidity, note)
values (#{ts}, ${temperature}, ${humidity}, #{note})
</insert>
...
...
@@ -78,7 +78,7 @@
from thinglinks.weather
</select>
<resultMap
id=
"avgResultSet"
type=
"com.mqttsnet.thinglinks.tdengine.
domain
.Weather"
>
<resultMap
id=
"avgResultSet"
type=
"com.mqttsnet.thinglinks.tdengine.
api.domain.model
.Weather"
>
<id
column=
"ts"
jdbcType=
"TIMESTAMP"
property=
"ts"
/>
<result
column=
"avg(temperature)"
jdbcType=
"FLOAT"
property=
"temperature"
/>
<result
column=
"avg(humidity)"
jdbcType=
"FLOAT"
property=
"humidity"
/>
...
...
thinglinks-modules/thinglinks-modules-tdengine/src/main/java/com/mqttsnet/thinglinks/tdengine/service/SuperTableCreateOrUpdateService.java
→
thinglinks-modules/thinglinks-modules-tdengine/src/main/java/com/mqttsnet/thinglinks/tdengine/service/
Product
SuperTableCreateOrUpdateService.java
浏览文件 @
56dcc586
...
...
@@ -11,7 +11,7 @@ package com.mqttsnet.thinglinks.tdengine.service;
* @UpdateRemark: 修改内容
* @Version: 1.0
*/
public
interface
SuperTableCreateOrUpdateService
{
public
interface
Product
SuperTableCreateOrUpdateService
{
/**
* @Author: ShiHuan Sun
...
...
@@ -24,7 +24,7 @@ public interface SuperTableCreateOrUpdateService {
* @return
*/
void
create
(
String
msg
);
void
create
ProductSuperTable
(
String
msg
);
/**
* @Author: ShiHuan Sun
...
...
@@ -36,5 +36,5 @@ public interface SuperTableCreateOrUpdateService {
* msg 产品模型信息
* @return
*/
void
update
(
String
msg
);
void
update
ProductSuperTable
(
String
msg
);
}
thinglinks-modules/thinglinks-modules-tdengine/src/main/java/com/mqttsnet/thinglinks/tdengine/service/WeatherService.java
浏览文件 @
56dcc586
package
com.mqttsnet.thinglinks.tdengine.service
;
import
com.mqttsnet.thinglinks.tdengine.domain.Weather
;
import
com.mqttsnet.thinglinks.tdengine.api.domain.model.Weather
;
import
java.util.List
;
...
...
thinglinks-modules/thinglinks-modules-tdengine/src/main/java/com/mqttsnet/thinglinks/tdengine/service/impl/SuperTableCreateOrUpdateServiceImpl.java
→
thinglinks-modules/thinglinks-modules-tdengine/src/main/java/com/mqttsnet/thinglinks/tdengine/service/impl/
Product
SuperTableCreateOrUpdateServiceImpl.java
浏览文件 @
56dcc586
package
com.mqttsnet.thinglinks.tdengine.service.impl
;
import
com.mqttsnet.thinglinks.tdengine.mapper.SuperTableCreateOrUpdateMapper
;
import
com.mqttsnet.thinglinks.tdengine.service.SuperTableCreateOrUpdateService
;
import
com.mqttsnet.thinglinks.tdengine.api.domain.model.ProductSuperTableModel
;
import
com.mqttsnet.thinglinks.tdengine.mapper.ProductSuperTableCreateOrUpdateMapper
;
import
com.mqttsnet.thinglinks.tdengine.service.ProductSuperTableCreateOrUpdateService
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.sql.Timestamp
;
/**
* @Description: java类作用描述
* @Author: ShiHuan Sun
...
...
@@ -19,22 +22,28 @@ import org.springframework.stereotype.Service;
*/
@Service
@Slf4j
public
class
SuperTableCreateOrUpdateServiceImpl
implements
SuperTableCreateOrUpdateService
{
public
class
ProductSuperTableCreateOrUpdateServiceImpl
implements
Product
SuperTableCreateOrUpdateService
{
@Autowired
private
SuperTableCreateOrUpdateMapper
s
uperTableCreateOrUpdateMapper
;
private
ProductSuperTableCreateOrUpdateMapper
productS
uperTableCreateOrUpdateMapper
;
@Override
public
void
create
(
String
msg
)
{
public
void
create
ProductSuperTable
(
String
msg
)
{
//TODO 创建超级表逻辑处理
superTableCreateOrUpdateMapper
.
createDB
();
superTableCreateOrUpdateMapper
.
createSuperTable
();
productSuperTableCreateOrUpdateMapper
.
createDB
();
productSuperTableCreateOrUpdateMapper
.
createSuperTable
();
ProductSuperTableModel
productSuperTableModel
=
new
ProductSuperTableModel
();
//ts时间处理
long
ts
=
System
.
currentTimeMillis
();
long
thirtySec
=
1000
*
30
;
productSuperTableModel
.
setTs
(
new
Timestamp
(
ts
+
(
thirtySec
)));
}
@Override
public
void
update
(
String
msg
)
{
public
void
update
ProductSuperTable
(
String
msg
)
{
}
}
thinglinks-modules/thinglinks-modules-tdengine/src/main/java/com/mqttsnet/thinglinks/tdengine/service/impl/WeatherServiceImpl.java
浏览文件 @
56dcc586
package
com.mqttsnet.thinglinks.tdengine.service.impl
;
import
com.mqttsnet.thinglinks.tdengine.api.domain.model.Weather
;
import
com.mqttsnet.thinglinks.tdengine.mapper.WeatherMapper
;
import
com.mqttsnet.thinglinks.tdengine.domain.Weather
;
import
com.mqttsnet.thinglinks.tdengine.service.WeatherService
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录