Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
H
hnxtbaboot
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
杨亮
hnxtbaboot
Commits
c58e397d
Commit
c58e397d
authored
May 31, 2021
by
wuchengwu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
采集设备授权:添加设备状态监控页面
parent
3ec4281b
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
205 additions
and
7 deletions
+205
-7
src/main/java/com/founder/cjqx/controller/SysClientVpController.java
+27
-0
src/main/java/com/founder/cjqx/service/impl/SysClientVpServiceImpl.java
+10
-1
src/main/java/com/founder/config/DefaultViewConfig.java
+1
-0
src/main/java/com/founder/model/SysClientVp.java
+10
-0
src/main/java/com/founder/utils/DateUtil.java
+19
-4
src/main/java/com/founder/utils/SysUitl.java
+115
-0
src/main/resources/mapper/SysClientVpMapper.xml
+9
-0
src/main/resources/templates/cjqx/frame.html
+3
-0
src/main/resources/templates/cjqx/sbjkglform.html
+11
-2
src/main/resources/templates/cjqx/sbztjkform.html
+0
-0
No files found.
src/main/java/com/founder/cjqx/controller/SysClientVpController.java
View file @
c58e397d
...
@@ -59,6 +59,33 @@ public class SysClientVpController {
...
@@ -59,6 +59,33 @@ public class SysClientVpController {
}
}
/*
/*
获取设备list
*/
@GetMapping
(
"/sysClientVpZtlist"
)
@ResponseBody
public
ResultMap
sysClientVpZtlist
(
Model
model
,
SysClientVp
sysClientVp
,
HttpServletRequest
request
){
ResultMap
resultMap
=
new
ResultMap
();
User
user
=(
User
)
request
.
getSession
().
getAttribute
(
"User"
);
// //设备审批管理 默认查询本单位
// if(sysClientVp.getCjsblxcode()!=null&&sysClientVp.getCjsblxcode().equals("1")){
// sysClientVp.setSsdwcode(user.getUnitcode());
// }
//我的设备管理 默认查询本人采集
if
(
sysClientVp
.
getCjsblxcode
()!=
null
&&
sysClientVp
.
getCjsblxcode
().
equals
(
"2"
)){
sysClientVp
.
setZrmjjh
(
user
.
getPolicemanid
());
}
//ip mac 加密 查询条件加密
if
(
sysClientVp
.
getIp
()!=
null
&&!
sysClientVp
.
getIp
().
equals
(
""
)){
sysClientVp
.
setIp
(
xzxtencode
(
sysClientVp
.
getIp
()));
}
if
(
sysClientVp
.
getMac
()!=
null
&&!
sysClientVp
.
getMac
().
equals
(
""
)){
sysClientVp
.
setMac
(
xzxtencode
(
sysClientVp
.
getMac
()));
}
resultMap
=
sysClientVpService
.
ClientVpAll
(
sysClientVp
);
return
resultMap
;
}
/*
获取设备信息
获取设备信息
*/
*/
@GetMapping
(
"/getSysClientVp"
)
@GetMapping
(
"/getSysClientVp"
)
...
...
src/main/java/com/founder/cjqx/service/impl/SysClientVpServiceImpl.java
View file @
c58e397d
...
@@ -7,6 +7,8 @@ import com.founder.model.ResultMap;
...
@@ -7,6 +7,8 @@ import com.founder.model.ResultMap;
import
com.founder.model.SysClientVp
;
import
com.founder.model.SysClientVp
;
import
com.founder.model.User
;
import
com.founder.model.User
;
import
com.founder.model.XzxtRestResult
;
import
com.founder.model.XzxtRestResult
;
import
com.founder.utils.DateUtil
;
import
com.founder.utils.SysUitl
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.StringUtils
;
import
org.springframework.util.StringUtils
;
...
@@ -32,7 +34,7 @@ public class SysClientVpServiceImpl implements SysClientVpService {
...
@@ -32,7 +34,7 @@ public class SysClientVpServiceImpl implements SysClientVpService {
@Override
@Override
public
ResultMap
ClientVpAll
(
SysClientVp
sysClientVp
)
{
public
ResultMap
ClientVpAll
(
SysClientVp
sysClientVp
)
{
List
<
SysClientVp
>
sysClientVplist
=
sysClientVpMapper
.
selectPageList
(
sysClientVp
);
List
<
SysClientVp
>
sysClientVplist
=
sysClientVpMapper
.
selectPageList
(
sysClientVp
);
ResultMap
resultMap
=
new
ResultMap
();
ResultMap
resultMap
=
new
ResultMap
();
if
(!
StringUtils
.
isEmpty
(
sysClientVplist
))
{
if
(!
StringUtils
.
isEmpty
(
sysClientVplist
))
{
//解密
//解密
...
@@ -49,6 +51,13 @@ public class SysClientVpServiceImpl implements SysClientVpService {
...
@@ -49,6 +51,13 @@ public class SysClientVpServiceImpl implements SysClientVpService {
if
(
sysClient
.
getMac
()!=
null
&&
sysClient
.
getMac
().
length
()>=
24
){
if
(
sysClient
.
getMac
()!=
null
&&
sysClient
.
getMac
().
length
()>=
24
){
sysClient
.
setMac
(
xzxtdecode
(
sysClient
.
getMac
()));
sysClient
.
setMac
(
xzxtdecode
(
sysClient
.
getMac
()));
}
}
Date
date
=
new
Date
();
int
hour
=
DateUtil
.
differentDaysByMillisecond
(
sysClient
.
getGxsj
(),
date
);
if
(
hour
<=
2
){
sysClient
.
setSbztstr
(
"启用"
);
}
else
{
sysClient
.
setSbztstr
(
"禁用"
);
}
}
}
int
totals
=
sysClientVpMapper
.
selectPageCount
(
sysClientVp
);
int
totals
=
sysClientVpMapper
.
selectPageCount
(
sysClientVp
);
resultMap
.
setCount
(
totals
);
resultMap
.
setCount
(
totals
);
...
...
src/main/java/com/founder/config/DefaultViewConfig.java
View file @
c58e397d
...
@@ -63,6 +63,7 @@ public class DefaultViewConfig implements WebMvcConfigurer {
...
@@ -63,6 +63,7 @@ public class DefaultViewConfig implements WebMvcConfigurer {
registry
.
addViewController
(
"/frame"
).
setViewName
(
"cjqx/frame"
);
registry
.
addViewController
(
"/frame"
).
setViewName
(
"cjqx/frame"
);
registry
.
addViewController
(
"/files"
).
setViewName
(
"cjqx/files"
);
registry
.
addViewController
(
"/files"
).
setViewName
(
"cjqx/files"
);
registry
.
addViewController
(
"/sbcsglform"
).
setViewName
(
"cjqx/sbcsglform"
);
registry
.
addViewController
(
"/sbcsglform"
).
setViewName
(
"cjqx/sbcsglform"
);
registry
.
addViewController
(
"/sbztjkform"
).
setViewName
(
"cjqx/sbztjkform"
);
registry
.
setOrder
(
Ordered
.
HIGHEST_PRECEDENCE
);
registry
.
setOrder
(
Ordered
.
HIGHEST_PRECEDENCE
);
WebMvcConfigurer
.
super
.
addViewControllers
(
registry
);
WebMvcConfigurer
.
super
.
addViewControllers
(
registry
);
}
}
...
...
src/main/java/com/founder/model/SysClientVp.java
View file @
c58e397d
...
@@ -109,6 +109,8 @@ public class SysClientVp extends PageBean{
...
@@ -109,6 +109,8 @@ public class SysClientVp extends PageBean{
private
Date
gxsj
;
private
Date
gxsj
;
private
String
gxsjStr
;
private
String
sprjh
;
private
String
sprjh
;
private
String
sprxm
;
private
String
sprxm
;
...
@@ -125,6 +127,14 @@ public class SysClientVp extends PageBean{
...
@@ -125,6 +127,14 @@ public class SysClientVp extends PageBean{
private
int
yycsstr
;
private
int
yycsstr
;
public
void
setGxsjStr
(
String
gxsjStr
)
{
this
.
gxsjStr
=
gxsjStr
;
}
public
String
getGxsjStr
()
{
return
gxsjStr
;
}
public
String
getYysjstr
()
{
public
String
getYysjstr
()
{
return
yysjstr
;
return
yysjstr
;
}
}
...
...
src/main/java/com/founder/utils/DateUtil.java
View file @
c58e397d
...
@@ -360,10 +360,24 @@ public class DateUtil {
...
@@ -360,10 +360,24 @@ public class DateUtil {
return
convertStringToDate
(
"yyyy-MM-dd"
,
todayAsString
);
return
convertStringToDate
(
"yyyy-MM-dd"
,
todayAsString
);
}
}
/**
* 通过时间秒毫秒数判断两个时间的间隔相差多少天
* @param date1
* @param date2
* @return
*/
public
static
int
differentDaysByMillisecond
(
Date
date1
,
Date
date2
)
{
int
days
=
(
int
)
((
date2
.
getTime
()
-
date1
.
getTime
())
/
(
1000
*
3600
*
24
));
return
days
;
}
public
static
void
main
(
String
[]
args
)
{
public
static
void
main
(
String
[]
args
)
{
String
a
=
getDatePattern
();
String
flrsj
=
DateUtil
.
beforeDate
(
3
);
System
.
out
.
println
(
differentDaysByMillisecond
(
commonStringToDate
(
"2021-03-15 15:49:11"
),
new
Date
()));
flrsj
=
flrsj
.
substring
(
0
,
10
);
// String a = getDatePattern();
System
.
out
.
println
(
flrsj
);
// String flrsj = DateUtil.beforeDate(3);
// flrsj=flrsj.substring(0,10);
// System.out.println(flrsj);
}
}
}
}
\ No newline at end of file
src/main/java/com/founder/utils/SysUitl.java
View file @
c58e397d
...
@@ -4,6 +4,8 @@ import javax.servlet.http.HttpServletRequest;
...
@@ -4,6 +4,8 @@ import javax.servlet.http.HttpServletRequest;
import
java.io.*
;
import
java.io.*
;
import
java.net.*
;
import
java.net.*
;
import
java.util.*
;
import
java.util.*
;
import
java.util.regex.Matcher
;
import
java.util.regex.Pattern
;
public
class
SysUitl
{
public
class
SysUitl
{
...
@@ -190,6 +192,119 @@ public class SysUitl {
...
@@ -190,6 +192,119 @@ public class SysUitl {
}
}
/**
* 根据ip判断当前ip是否能够ping通
*
* @param ip
* @return
*/
public
static
boolean
IsIpReachable
(
String
ips
)
{
boolean
isIpReachable
=
false
;
InetAddress
address
;
try
{
address
=
InetAddress
.
getByName
(
ips
);
isIpReachable
=
address
.
isReachable
(
100
);
System
.
out
.
println
(
"Name: "
+
address
.
getHostName
());
System
.
out
.
println
(
"Addr: "
+
address
.
getHostAddress
());
System
.
out
.
println
(
"isIpReachable: "
+
isIpReachable
);
}
catch
(
UnknownHostException
e
)
{
e
.
printStackTrace
();
}
catch
(
IOException
e
)
{
e
.
printStackTrace
();
}
return
isIpReachable
;
}
/**
* 根据ip判断当前ip是否能够ping通
*
* @param ip
* @return
*/
public
static
boolean
isConnect
(
String
ip
)
{
boolean
bool
=
false
;
Runtime
runtime
=
Runtime
.
getRuntime
();
try
{
Process
process
=
runtime
.
exec
(
"ping "
+
ip
);
InputStream
is
=
process
.
getInputStream
();
InputStreamReader
isr
=
new
InputStreamReader
(
is
);
BufferedReader
br
=
new
BufferedReader
(
isr
);
String
line
=
null
;
StringBuffer
sb
=
new
StringBuffer
();
while
((
line
=
br
.
readLine
())
!=
null
)
{
sb
.
append
(
line
);
// 优化速度
if
(
line
.
indexOf
(
"请求超时"
)
>=
0
)
{
// System.out.println(ip + "网络断开,时间 " + new Date());
return
false
;
}
}
is
.
close
();
isr
.
close
();
br
.
close
();
if
(
null
!=
sb
&&
!
sb
.
toString
().
equals
(
""
))
{
if
(
sb
.
toString
().
indexOf
(
"TTL"
)
>
0
)
{
// 网络畅通
// System.out.println(ip + "网络正常 ,时间" + new Date());
bool
=
true
;
}
else
{
// 网络不畅通
// System.out.println(ip + "网络断开,时间 " + new Date());
bool
=
false
;
}
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
return
bool
;
}
public
static
boolean
isPing
(
String
ip
,
int
pingTimes
,
int
timeOut
)
{
if
(
ip
==
null
){
return
false
;
}
BufferedReader
in
=
null
;
try
{
Process
pro
=
Runtime
.
getRuntime
().
exec
(
"ping "
+
ip
+
" -n "
+
pingTimes
+
" -W "
+
timeOut
+
""
);
//GB2312 解决InputStreamReader乱码问题
in
=
new
BufferedReader
(
new
InputStreamReader
(
pro
.
getInputStream
(),
"GB2312"
));
//逐行检查输出,计算类似出现=23ms TTL=62字样的次数
int
connectedCount
=
0
;
String
line
=
null
;
while
((
line
=
in
.
readLine
())
!=
null
){
connectedCount
+=
getCheckResult
(
line
);
// 如果出现类似=23ms TTL=62这样的字样,出现的次数=测试次数则返回真
}
return
connectedCount
==
5
;
}
catch
(
Exception
ex
)
{
ex
.
printStackTrace
();
// 出现异常则返回假
return
false
;
}
finally
{
try
{
in
.
close
();
}
catch
(
IOException
e
){
e
.
printStackTrace
();
}
}
}
//若line含有=18ms TTL=16字样,说明已经ping通,返回1,否則返回0.
private
static
int
getCheckResult
(
String
line
)
{
// System.out.println("控制台输出的结果为:"+line);
Pattern
pattern
=
Pattern
.
compile
(
"(\\d+ms)(\\s+)(TTL=\\d+)"
,
Pattern
.
CASE_INSENSITIVE
);
Matcher
matcher
=
pattern
.
matcher
(
line
);
while
(
matcher
.
find
())
{
return
1
;
}
return
0
;
}
public
static
void
main
(
String
[]
args
)
throws
UnknownHostException
,
SocketException
{
public
static
void
main
(
String
[]
args
)
throws
UnknownHostException
,
SocketException
{
String
ip
=
"192.168.0.103"
;
String
ip
=
"192.168.0.103"
;
...
...
src/main/resources/mapper/SysClientVpMapper.xml
View file @
c58e397d
...
@@ -84,6 +84,15 @@
...
@@ -84,6 +84,15 @@
<if
test=
"sbztstr!=null and sbztstr !=''"
>
AND sbztstr = #{sbztstr}
</if>
<if
test=
"sbztstr!=null and sbztstr !=''"
>
AND sbztstr = #{sbztstr}
</if>
<if
test=
"zrmjjh!=null and zrmjjh !=''"
>
AND zrmjjh = #{zrmjjh}
</if>
<if
test=
"zrmjjh!=null and zrmjjh !=''"
>
AND zrmjjh = #{zrmjjh}
</if>
<if
test=
"ssdwcode!=null and ssdwcode !=''"
>
AND SSDW_CODE = #{ssdwcode}
</if>
<if
test=
"ssdwcode!=null and ssdwcode !=''"
>
AND SSDW_CODE = #{ssdwcode}
</if>
<if
test=
"gxsjStr!=null and gxsjStr==1"
>
AND GXSJ BETWEEN SYSDATE-1 and SYSDATE
</if>
<if
test=
"gxsjStr!=null and gxsjStr==2"
>
AND GXSJ BETWEEN SYSDATE-2 and SYSDATE
</if>
<if
test=
"gxsjStr!=null and gxsjStr==3"
>
AND (to_date(to_char(sysdate,'yyyy-MM-dd HH24:mi:ss'),'yyyy-MM-dd HH24:mi:ss')-(to_date(to_char(GXSJ,'yyyy-MM-dd HH24:mi:ss'),'yyyy-MM-dd HH24:mi:ss'))
<![CDATA[ >= ]]>
7)
</if>
AND SCBZ='0'
AND SCBZ='0'
</where>
</where>
</sql>
</sql>
...
...
src/main/resources/templates/cjqx/frame.html
View file @
c58e397d
...
@@ -80,6 +80,9 @@
...
@@ -80,6 +80,9 @@
<li>
<li>
<a
href=
"javascript:void(0)"
onclick=
"menuCAClick('sbjkglform',this,'page30001')"
><i
class=
"iconfont icon-kehu left"
></i><font>
设备监控管理
</font></a>
<a
href=
"javascript:void(0)"
onclick=
"menuCAClick('sbjkglform',this,'page30001')"
><i
class=
"iconfont icon-kehu left"
></i><font>
设备监控管理
</font></a>
</li>
</li>
<li>
<a
href=
"javascript:void(0)"
onclick=
"menuCAClick('sbztjkform',this,'page60001')"
><i
class=
"iconfont icon-kehu left"
></i><font>
设备状态监控
</font></a>
</li>
<!--<li>
<!--<li>
<a href="javascript:void(0)" onclick="menuCAClick('newShebcs',this,'page50001')"><i class="iconfont icon-kehu left"></i><font>新增设备厂商</font></a>
<a href="javascript:void(0)" onclick="menuCAClick('newShebcs',this,'page50001')"><i class="iconfont icon-kehu left"></i><font>新增设备厂商</font></a>
</li>-->
</li>-->
...
...
src/main/resources/templates/cjqx/sbjkglform.html
View file @
c58e397d
...
@@ -127,7 +127,15 @@
...
@@ -127,7 +127,15 @@
<
input
type
=
"checkbox"
checked
=
""
name
=
"open"
lay
-
skin
=
"switch"
lay
-
filter
=
"switchTest"
lay
-
text
=
"ON|OFF"
disabled
>
<
input
type
=
"checkbox"
checked
=
""
name
=
"open"
lay
-
skin
=
"switch"
lay
-
filter
=
"switchTest"
lay
-
text
=
"ON|OFF"
disabled
>
{{
#
}
}}
{{
#
}
}}
</script>
</script>
<script
type=
"text/html"
id=
"ifspzt"
>
{{
#
if
(
d
.
spzt
==
'1'
){
}}
<
span
class
=
"layui-badge layui-bg-green"
>
通
过
<
/span
>
{{
#
}
else
if
(
d
.
spzt
==
'2'
){
}}
<
span
class
=
"layui-badge"
>
退
回
<
/span
>
{{
#
}
else
{
}}
<
span
class
=
"layui-badge layui-bg-green"
>
未审批
<
/span
>
{{
#
}
}}
</script>
<script
src=
"/static/layui/layui.js"
charset=
"utf-8"
></script>
<script
src=
"/static/layui/layui.js"
charset=
"utf-8"
></script>
<script
src=
"/static/layui/layui.all.js"
charset=
"utf-8"
></script>
<script
src=
"/static/layui/layui.all.js"
charset=
"utf-8"
></script>
...
@@ -152,7 +160,8 @@
...
@@ -152,7 +160,8 @@
,{
field
:
'gxsj'
,
title
:
'最后一次采集时间'
,
align
:
'center'
,
width
:
'15%'
,
templet
:
"<div>{{layui.util.toDateString(d.lrsj, 'yyyy-MM-dd HH:mm:ss')}}</div>"
}
,{
field
:
'gxsj'
,
title
:
'最后一次采集时间'
,
align
:
'center'
,
width
:
'15%'
,
templet
:
"<div>{{layui.util.toDateString(d.lrsj, 'yyyy-MM-dd HH:mm:ss')}}</div>"
}
,{
field
:
'ssdwname'
,
title
:
'隶属单位'
,
align
:
'center'
,
width
:
'15%'
}
,{
field
:
'ssdwname'
,
title
:
'隶属单位'
,
align
:
'center'
,
width
:
'15%'
}
,{
field
:
'zrmjname'
,
title
:
'负责人'
,
align
:
'center'
,
width
:
'15%'
}
,{
field
:
'zrmjname'
,
title
:
'负责人'
,
align
:
'center'
,
width
:
'15%'
}
,{
field
:
'sbztstr'
,
title
:
'设备状态'
,
align
:
'center'
,
width
:
'15%'
,
templet
:
'#ifsbzt'
}
// ,{field:'sbztstr', title:'设备状态',align:'center', width:'15%',templet: '#ifsbzt'}
,{
field
:
'spzt'
,
title
:
'审批状态'
,
align
:
'center'
,
width
:
'15%'
,
templet
:
'#ifspzt'
}
/* ,{field: 'right', title:'操作',align:'center', toolbar: '#barDemo', width:140}
/* ,{field: 'right', title:'操作',align:'center', toolbar: '#barDemo', width:140}
,{field: 'right', title:'操作',align:'center', toolbar: '#barDemo4', width:140}*/
,{field: 'right', title:'操作',align:'center', toolbar: '#barDemo4', width:140}*/
]
]
...
...
src/main/resources/templates/cjqx/sbztjkform.html
0 → 100644
View file @
c58e397d
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment