Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
mqttsnet
thinglinks
提交
90654adc
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,发现更多精彩内容 >>
提交
90654adc
编写于
5月 09, 2022
作者:
xiaonannet
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'release/1.0.0' into main
上级
710303f0
6cb635ac
变更
7
展开全部
显示空白变更内容
内联
并排
Showing
7 changed file
with
668 addition
and
462 deletion
+668
-462
node_modules/.package-lock.json
node_modules/.package-lock.json
+6
-0
package-lock.json
package-lock.json
+6
-0
package.json
package.json
+1
-0
thinglinks-modules/thinglinks-modules-link/src/main/java/com/mqttsnet/thinglinks/link/service/device/impl/DeviceServiceImpl.java
...hinglinks/link/service/device/impl/DeviceServiceImpl.java
+1
-1
thinglinks-ui/public/index.html
thinglinks-ui/public/index.html
+402
-22
thinglinks-ui/src/App.vue
thinglinks-ui/src/App.vue
+6
-0
thinglinks-ui/src/views/link/device/index.vue
thinglinks-ui/src/views/link/device/index.vue
+246
-439
未找到文件。
node_modules/.package-lock.json
0 → 100644
浏览文件 @
90654adc
{
"name"
:
"thinglinks"
,
"lockfileVersion"
:
2
,
"requires"
:
true
,
"packages"
:
{}
}
package-lock.json
0 → 100644
浏览文件 @
90654adc
{
"name"
:
"thinglinks"
,
"lockfileVersion"
:
2
,
"requires"
:
true
,
"packages"
:
{}
}
package.json
0 → 100644
浏览文件 @
90654adc
{}
thinglinks-modules/thinglinks-modules-link/src/main/java/com/mqttsnet/thinglinks/link/service/device/impl/DeviceServiceImpl.java
浏览文件 @
90654adc
...
...
@@ -293,7 +293,7 @@ public class DeviceServiceImpl implements DeviceService {
//更新数据库设备状态
Device
device
=
new
Device
();
device
.
setId
(
oneByClientId
.
getId
());
device
.
setConnectStatus
(
DeviceConnectStatus
.
INIT
.
getValue
());
device
.
setConnectStatus
(
DeviceConnectStatus
.
OFFLINE
.
getValue
());
device
.
setUpdateTime
(
DateUtils
.
getNowDate
());
deviceMapper
.
updateByPrimaryKeySelective
(
device
);
}
...
...
thinglinks-ui/public/index.html
浏览文件 @
90654adc
<!DOCTYPE html>
<html>
<head>
<head>
<meta
charset=
"utf-8"
>
<meta
http-equiv=
"X-UA-Compatible"
content=
"IE=edge,chrome=1"
>
<meta
name=
"renderer"
content=
"webkit"
>
<meta
name=
"viewport"
content=
"width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no"
>
<link
rel=
"icon"
href=
"<%= BASE_URL %>favicon.ico"
>
<title><
%=
webpackConfig.name
%
></title>
<title>
<
%=
webpackConfig.name
%
>
</title>
<!--[if lt IE 11]><script>window.location.href='/html/ie.html';</script><![endif]-->
<style
lang=
"scss"
>
<!--
<style lang="scss">
html,
body,
#app {
...
...
@@ -193,16 +196,393 @@
color: #FFF;
opacity: 0.5;
}
</style>
</head>
<body>
</style> -->
</head>
<style
lang=
"scss"
scoped
>
@import
url(https://fonts.googleapis.com/css?family=Archivo+Narrow)
;
.cube-folding
{
width
:
50px
;
height
:
50px
;
display
:
inline-block
;
-webkit-transform
:
rotate
(
45deg
);
-moz-transform
:
rotate
(
45deg
);
transform
:
rotate
(
45deg
);
font-size
:
0
;
}
.cube-folding
span
{
position
:
relative
;
width
:
25px
;
height
:
25px
;
-webkit-transform
:
scale
(
1.1
);
-moz-transform
:
scale
(
1.1
);
transform
:
scale
(
1.1
);
display
:
inline-block
;
}
.cube-folding
span
::before
{
content
:
""
;
background-color
:
white
;
position
:
absolute
;
left
:
0
;
top
:
0
;
display
:
block
;
width
:
25px
;
height
:
25px
;
-moz-transform-origin
:
100%
100%
;
-ms-transform-origin
:
100%
100%
;
-webkit-transform-origin
:
100%
100%
;
transform-origin
:
100%
100%
;
-webkit-animation
:
folding
2.5s
infinite
linear
both
;
-moz-animation
:
folding
2.5s
infinite
linear
both
;
animation
:
folding
2.5s
infinite
linear
both
;
}
.cube-folding
.leaf2
{
-webkit-transform
:
rotateZ
(
90deg
)
scale
(
1.1
);
-moz-transform
:
rotateZ
(
90deg
)
scale
(
1.1
);
transform
:
rotateZ
(
90deg
)
scale
(
1.1
);
}
.cube-folding
.leaf2
::before
{
-webkit-animation-delay
:
0.3s
;
animation-delay
:
0.3s
;
background-color
:
#f2f2f2
;
}
.cube-folding
.leaf3
{
-webkit-transform
:
rotateZ
(
270deg
)
scale
(
1.1
);
-moz-transform
:
rotateZ
(
270deg
)
scale
(
1.1
);
transform
:
rotateZ
(
270deg
)
scale
(
1.1
);
}
.cube-folding
.leaf3
::before
{
-webkit-animation-delay
:
0.9s
;
animation-delay
:
0.9s
;
background-color
:
#f2f2f2
;
}
.cube-folding
.leaf4
{
-webkit-transform
:
rotateZ
(
180deg
)
scale
(
1.1
);
-moz-transform
:
rotateZ
(
180deg
)
scale
(
1.1
);
transform
:
rotateZ
(
180deg
)
scale
(
1.1
);
}
.cube-folding
.leaf4
::before
{
-webkit-animation-delay
:
0.6s
;
animation-delay
:
0.6s
;
background-color
:
#e6e6e6
;
}
@-webkit-keyframes
folding
{
0
%,
10
%
{
-webkit-transform
:
perspective
(
140px
)
rotateX
(
-180deg
);
-moz-transform
:
perspective
(
140px
)
rotateX
(
-180deg
);
transform
:
perspective
(
140px
)
rotateX
(
-180deg
);
-webkit-opacity
:
0
;
-moz-opacity
:
0
;
opacity
:
0
;
}
25
%,
75
%
{
-webkit-transform
:
perspective
(
140px
)
rotateX
(
0deg
);
-moz-transform
:
perspective
(
140px
)
rotateX
(
0deg
);
transform
:
perspective
(
140px
)
rotateX
(
0deg
);
-webkit-opacity
:
1
;
-moz-opacity
:
1
;
opacity
:
1
;
}
90
%,
100
%
{
-webkit-transform
:
perspective
(
140px
)
rotateY
(
180deg
);
-moz-transform
:
perspective
(
140px
)
rotateY
(
180deg
);
transform
:
perspective
(
140px
)
rotateY
(
180deg
);
-webkit-opacity
:
0
;
-moz-opacity
:
0
;
opacity
:
0
;
}
}
@-moz-keyframes
folding
{
0
%,
10
%
{
-webkit-transform
:
perspective
(
140px
)
rotateX
(
-180deg
);
-moz-transform
:
perspective
(
140px
)
rotateX
(
-180deg
);
transform
:
perspective
(
140px
)
rotateX
(
-180deg
);
-webkit-opacity
:
0
;
-moz-opacity
:
0
;
opacity
:
0
;
}
25
%,
75
%
{
-webkit-transform
:
perspective
(
140px
)
rotateX
(
0deg
);
-moz-transform
:
perspective
(
140px
)
rotateX
(
0deg
);
transform
:
perspective
(
140px
)
rotateX
(
0deg
);
-webkit-opacity
:
1
;
-moz-opacity
:
1
;
opacity
:
1
;
}
90
%,
100
%
{
-webkit-transform
:
perspective
(
140px
)
rotateY
(
180deg
);
-moz-transform
:
perspective
(
140px
)
rotateY
(
180deg
);
transform
:
perspective
(
140px
)
rotateY
(
180deg
);
-webkit-opacity
:
0
;
-moz-opacity
:
0
;
opacity
:
0
;
}
}
@-ms-keyframes
folding
{
0
%,
10
%
{
-webkit-transform
:
perspective
(
140px
)
rotateX
(
-180deg
);
-moz-transform
:
perspective
(
140px
)
rotateX
(
-180deg
);
transform
:
perspective
(
140px
)
rotateX
(
-180deg
);
-webkit-opacity
:
0
;
-moz-opacity
:
0
;
opacity
:
0
;
}
25
%,
75
%
{
-webkit-transform
:
perspective
(
140px
)
rotateX
(
0deg
);
-moz-transform
:
perspective
(
140px
)
rotateX
(
0deg
);
transform
:
perspective
(
140px
)
rotateX
(
0deg
);
-webkit-opacity
:
1
;
-moz-opacity
:
1
;
opacity
:
1
;
}
90
%,
100
%
{
-webkit-transform
:
perspective
(
140px
)
rotateY
(
180deg
);
-moz-transform
:
perspective
(
140px
)
rotateY
(
180deg
);
transform
:
perspective
(
140px
)
rotateY
(
180deg
);
-webkit-opacity
:
0
;
-moz-opacity
:
0
;
opacity
:
0
;
}
}
@keyframes
folding
{
0
%,
10
%
{
-webkit-transform
:
perspective
(
140px
)
rotateX
(
-180deg
);
-moz-transform
:
perspective
(
140px
)
rotateX
(
-180deg
);
transform
:
perspective
(
140px
)
rotateX
(
-180deg
);
-webkit-opacity
:
0
;
-moz-opacity
:
0
;
opacity
:
0
;
}
25
%,
75
%
{
-webkit-transform
:
perspective
(
140px
)
rotateX
(
0deg
);
-moz-transform
:
perspective
(
140px
)
rotateX
(
0deg
);
transform
:
perspective
(
140px
)
rotateX
(
0deg
);
-webkit-opacity
:
1
;
-moz-opacity
:
1
;
opacity
:
1
;
}
90
%,
100
%
{
-webkit-transform
:
perspective
(
140px
)
rotateY
(
180deg
);
-moz-transform
:
perspective
(
140px
)
rotateY
(
180deg
);
transform
:
perspective
(
140px
)
rotateY
(
180deg
);
-webkit-opacity
:
0
;
-moz-opacity
:
0
;
opacity
:
0
;
}
}
.cube-wrapper
{
position
:
fixed
;
left
:
50%
;
top
:
50%
;
margin-top
:
-50px
;
margin-left
:
-50px
;
width
:
100px
;
height
:
100px
;
text-align
:
center
;
}
.cube-wrapper
:after
{
content
:
""
;
position
:
absolute
;
left
:
0
;
right
:
0
;
bottom
:
-20px
;
margin
:
auto
;
width
:
90px
;
height
:
6px
;
z-index
:
1
;
background-color
:
rgba
(
0
,
0
,
0
,
0.1
);
-webkit-filter
:
blur
(
2px
);
filter
:
blur
(
2px
);
-webkit-border-radius
:
100%
;
-moz-border-radius
:
100%
;
border-radius
:
100%
;
-webkit-animation
:
shadow
0.5s
ease
infinite
alternate
;
-moz-animation
:
shadow
0.5s
ease
infinite
alternate
;
animation
:
shadow
0.5s
ease
infinite
alternate
;
}
.cube-wrapper
.loading
{
font-size
:
12px
;
letter-spacing
:
0.1em
;
display
:
block
;
color
:
white
;
position
:
relative
;
top
:
25px
;
z-index
:
2
;
-webkit-animation
:
text
0.5s
ease
infinite
alternate
;
-moz-animation
:
text
0.5s
ease
infinite
alternate
;
animation
:
text
0.5s
ease
infinite
alternate
;
}
@-webkit-keyframes
text
{
100
%
{
top
:
35px
;
}
}
@-moz-keyframes
text
{
100
%
{
top
:
35px
;
}
}
@-ms-keyframes
text
{
100
%
{
top
:
35px
;
}
}
@keyframes
text
{
100
%
{
top
:
35px
;
}
}
@-webkit-keyframes
shadow
{
100
%
{
bottom
:
-18px
;
width
:
100px
;
}
}
@-moz-keyframes
shadow
{
100
%
{
bottom
:
-18px
;
width
:
100px
;
}
}
@-ms-keyframes
shadow
{
100
%
{
bottom
:
-18px
;
width
:
100px
;
}
}
@keyframes
shadow
{
100
%
{
bottom
:
-18px
;
width
:
100px
;
}
}
html
,
body
{
min-height
:
100%
;
}
body
{
/* fallback for old browsers */
/* Chrome 10-25, Safari 5.1-6 */
background
:
linear-gradient
(
to
left
,
#00c6ff
,
#0072ff
);
/* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
font-family
:
arial
;
}
h1
{
font-size
:
26px
;
display
:
block
;
text-align
:
center
;
color
:
#fff
;
padding
:
50px
20px
;
font-weight
:
300
;
font-family
:
"Archivo Narrow"
,
sans-serif
;
}
.made-with-love
{
position
:
fixed
;
left
:
0
;
width
:
100%
;
bottom
:
10px
;
text-align
:
center
;
font-size
:
10px
;
z-index
:
9999
;
font-family
:
arial
;
color
:
#fff
;
}
.made-with-love
i
{
font-style
:
normal
;
color
:
#f50057
;
font-size
:
14px
;
position
:
relative
;
top
:
2px
;
}
.made-with-love
a
{
color
:
#fff
;
text-decoration
:
none
;
}
.made-with-love
a
:hover
{
text-decoration
:
underline
;
}
/*# sourceMappingURL=index.css.map */
</style>
<body>
<div
id=
"app"
>
<div
id=
"loader-wrapper"
>
<!--
<div id="loader-wrapper">
<div id="loader"></div>
<div class="loader-section section-left"></div>
<div class="loader-section section-right"></div>
<div class="load_title">正在加载ThingLinks系统资源,请耐心等待</div>
</div> -->
<h1>
ThingLinks Iot Integrated Platform
</h1>
<div
class=
"cube-wrapper"
>
<div
class=
"cube-folding"
>
<span
class=
"leaf1"
></span>
<span
class=
"leaf2"
></span>
<span
class=
"leaf3"
></span>
<span
class=
"leaf4"
></span>
</div>
<span
class=
"loading"
data-name=
"Loading"
>
Loading
</span>
</div>
</body>
<!-- follow me template -->
<div
class=
"made-with-love"
>
<a
target=
"_blank"
href=
"http://thinglinks.mqttsnet.com"
>
@ThingLinks
</a>
</div>
</div>
</body>
</html>
\ No newline at end of file
thinglinks-ui/src/App.vue
浏览文件 @
90654adc
...
...
@@ -17,3 +17,9 @@ export default {
}
}
</
script
>
<
style
>
body
{
background
:
white
;
margin
:
0
;
}
</
style
>
\ No newline at end of file
thinglinks-ui/src/views/link/device/index.vue
浏览文件 @
90654adc
此差异已折叠。
点击以展开。
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录