Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
T
TDLCloud
Project
Project
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
WitCloud
TDLCloud
Commits
fa694a53
Commit
fa694a53
authored
Apr 19, 2018
by
zhuangzhuang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
4.19-增加获取报警信息的接口
parent
5341dd21
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
23 changed files
with
492 additions
and
137 deletions
+492
-137
ca.crt
ca.crt
+16
-16
GWConfigWorker.java
...ain/java/com/example/tdl/callabletask/GWConfigWorker.java
+4
-3
AlarmTermVo.java
src/main/java/com/example/tdl/domain/vo/AlarmTermVo.java
+64
-0
CircuitTransferVo.java
...ain/java/com/example/tdl/domain/vo/CircuitTransferVo.java
+10
-0
ResultAlarmLogVo.java
...main/java/com/example/tdl/domain/vo/ResultAlarmLogVo.java
+64
-0
ResultCityVo.java
src/main/java/com/example/tdl/domain/vo/ResultCityVo.java
+10
-0
AlarmLog.java
src/main/java/com/example/tdl/entity/AlarmLog.java
+23
-1
AlarmLogMapper.java
src/main/java/com/example/tdl/mapper/AlarmLogMapper.java
+3
-4
CircuitMapper.java
src/main/java/com/example/tdl/mapper/CircuitMapper.java
+6
-0
MqttListener.java
src/main/java/com/example/tdl/mqtt/MqttListener.java
+4
-4
AlarmLogService.java
src/main/java/com/example/tdl/service/AlarmLogService.java
+5
-4
CircuitService.java
src/main/java/com/example/tdl/service/CircuitService.java
+12
-0
AlarmLogController.java
src/main/java/com/example/tdl/web/AlarmLogController.java
+51
-1
CircuitController.java
src/main/java/com/example/tdl/web/CircuitController.java
+108
-37
DataController.java
src/main/java/com/example/tdl/web/DataController.java
+1
-2
EquipmentBindingController.java
.../java/com/example/tdl/web/EquipmentBindingController.java
+1
-1
HomePageController.java
src/main/java/com/example/tdl/web/HomePageController.java
+1
-0
application.properties
src/main/resources/application.properties
+2
-2
AlarmLogMapper.xml
src/main/resources/mapper/AlarmLogMapper.xml
+26
-0
CircuitMapper.xml
src/main/resources/mapper/CircuitMapper.xml
+33
-3
CircuitTransferMapper.xml
src/main/resources/mapper/CircuitTransferMapper.xml
+1
-1
witcd.crt
witcd.crt
+21
-32
witcd.pem
witcd.pem
+26
-26
No files found.
ca.crt
View file @
fa694a53
-----BEGIN CERTIFICATE-----
MIIDpzCCAo+gAwIBAgIJA
PSf0joIQuzv
MA0GCSqGSIb3DQEBDQUAMGoxFzAVBgNV
MIIDpzCCAo+gAwIBAgIJA
KFUJxy8GWeR
MA0GCSqGSIb3DQEBDQUAMGoxFzAVBgNV
BAMMDkFuIE1RVFQgYnJva2VyMRYwFAYDVQQKDA1Pd25UcmFja3Mub3JnMRQwEgYD
VQQLDAtnZW5lcmF0ZS1DQTEhMB8GCSqGSIb3DQEJARYSbm9ib2R5QGV4YW1wbGUu
bmV0MB4XDTE
3MTIxODA1NTQyN1oXDTMyMTIxNDA1NTQyN1
owajEXMBUGA1UEAwwO
bmV0MB4XDTE
4MDQxNjAzNDQ1MVoXDTMyMDQxMjAzNDQ1MV
owajEXMBUGA1UEAwwO
QW4gTVFUVCBicm9rZXIxFjAUBgNVBAoMDU93blRyYWNrcy5vcmcxFDASBgNVBAsM
C2dlbmVyYXRlLUNBMSEwHwYJKoZIhvcNAQkBFhJub2JvZHlAZXhhbXBsZS5uZXQw
ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQD
7xqyFWDSb+6nGAE5O++oR
/fRsMoWRI13qUqy1RHQ/P2y+D2jj41m0XKEvoqPwbMKwiOPQXz5CJ9fSc6j2YUuE
r2FVEb78MprvusFpYWHYk9ammBK4AQ2sW+Y6PgsXBmq9uejhlayF9frBZCqvz/Fl
It60ZEKxv5/hHi5T9cIrphbSsJAzXPXL0qhqeaHLcgBzJVZ7/pMxAQYE0XzgHMma
qbUFV4UK8HSilkv5q4OaEkd6vyLPcMRsqx77oksJjXcn2cdJGcbLKKM2y96p/s2I
jxkeSx+Z7mRLMB5mis+ucVWrtLNEjFO1Vry0nJDtX8m6/mubqqo5PZ+NL0puQ8Y1
AgMBAAGjUDBOMB0GA1UdDgQWBB
SJeQbZY2YHxfORj42yZLfU6Ehn0T
AfBgNVHSME
GDAWgB
SJeQbZY2YHxfORj42yZLfU6Ehn0T
AMBgNVHRMEBTADAQH/MA0GCSqGSIb3
DQEBDQUAA4IBAQ
DVQUa2E4DUz3sV4l+PoDd+/pHFpDTfhc0jgwaDZ3Bveu0Bhhhq
5wKQN3CXHZDPkhKeKAeqbLDcqyUccU7pMstpWS/fNNbKkYrMLvRG2aBg51zBa6Nl
h5lHLYwgwL9MBJMKaWyZMXjmOleuw6Sktj2GeJcUoQwjp07CfwoO+sTlZoRSzyfq
B8qzC9oXVAvftwHxr6OI7WzuSm0R3F35SiO+CEdnVdRnyF3GudERCaCkhUdra5ea
uPlJ7jaVG659m0/S14w5qkIserNrIZp2xTNlFET9+AZJwUXO9LvlVy0tdDNqKc5P
Xr1Tewwl0zBr5V19x7MF9kTF24xJMLJj+bEO
ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQD
SfnuPAC7X7PCdesjFUAnA
V0/x745iDaAyzpMFoNhubCumswHXglItU5MuVXbtXGcix2aKfw7DndTA92lRxn9z
llbrrfzniVxyH+4F1/fFNqCzFY38eVGCD1mCYLyd7ekHHJCYRw17rLfmJIU6VKSU
YrX2zdRVe7Dk9EktjWZh7YRDvR7aNMAF4UTPv/KS8E+jTUx6Rutiy/HYGxo+Cj1p
xkSewWaqAvEIl8yhbEhsUqbgrO25jbPXIUrtSG6LMTIpHrg2RwR0HC4MQ3xH1ixu
lkmSJVkibRTAEN2ZI8O3FmPg4SUPxq5ROu2u+1uP9sbQFKICEBKGY0ug8I6oa5Kv
AgMBAAGjUDBOMB0GA1UdDgQWBB
RLl4XcCNJGkjncNvX/qRnm+PnCTj
AfBgNVHSME
GDAWgB
RLl4XcCNJGkjncNvX/qRnm+PnCTj
AMBgNVHRMEBTADAQH/MA0GCSqGSIb3
DQEBDQUAA4IBAQ
BXJPoo7vQTqvuoE7W8zfyN5xSfdIaU+LdXTXrpSt0f3Zkrwo3n
aq9nsU89KWhmBzISDXjpa/Bd3jsCu/iiibsnOK7WsrjWeulai/9rh4cIK+r8q1CF
VEf/PkL6JoTU7lMKDdEIZbata6Tp/Oo5CFggqS4s4W0uM6H1pgiQzue8QLUyMwyi
2V8AOxa6RKFT4Lyp1BoBHE1FRq/zHarsuqKRlomCULAGwxS2UbxuX80py0vBEg6d
Kj6Rmb/0aSYENq99SHiwRn2N52M6YTXBsJ0ftqL7XFwH52nHvPy0kULvmNw57fr3
40EaqX1vgXPFBBmj9/JvWtilDl1AmMuXq7Mj
-----END CERTIFICATE-----
src/main/java/com/example/tdl/callabletask/GWConfigWorker.java
View file @
fa694a53
...
...
@@ -173,9 +173,7 @@ public class GWConfigWorker implements Callable<String>, MqttCallback {
//解析Message消息
RespVo
respVo
=
new
Gson
().
fromJson
(
Message
,
RespVo
.
class
);
if
(
respVo
.
getResponse
().
equals
(
"config"
)){
// logger.info(SN);
// logger.info(Type);
// logger.info(""+respVo.getStatus());
System
.
out
.
print
(
gson
.
toJson
(
respVo
));
//配置回复
configService
.
bindiSuccess
(
SN
,
Type
,
respVo
.
getStatus
());
}
else
{
...
...
@@ -189,12 +187,15 @@ public class GWConfigWorker implements Callable<String>, MqttCallback {
}
mqttAsyncClient
.
disconnect
();
}
catch
(
JsonSyntaxException
e
){
mqttAsyncClient
.
disconnect
();
e
.
printStackTrace
();
System
.
out
.
println
(
"mqttAsyncClient: message "
+
Message
+
" received syntax error."
);
}
catch
(
IllegalStateException
e
){
mqttAsyncClient
.
disconnect
();
e
.
printStackTrace
();
System
.
out
.
println
(
"mqttAsyncClient: "
+
e
);
}
catch
(
Exception
e
){
mqttAsyncClient
.
disconnect
();
e
.
printStackTrace
();
logger
.
info
(
e
.
toString
());
}
...
...
src/main/java/com/example/tdl/domain/vo/AlarmTermVo.java
0 → 100644
View file @
fa694a53
package
com
.
example
.
tdl
.
domain
.
vo
;
public
class
AlarmTermVo
{
private
String
transportationNo
;
private
String
description
;
private
String
startCity
;
private
String
endCity
;
private
Long
startTime
;
private
Long
endTime
;
public
String
getTransportationNo
()
{
return
transportationNo
;
}
public
void
setTransportationNo
(
String
transportationNo
)
{
this
.
transportationNo
=
transportationNo
;
}
public
String
getDescription
()
{
return
description
;
}
public
void
setDescription
(
String
description
)
{
this
.
description
=
description
;
}
public
String
getStartCity
()
{
return
startCity
;
}
public
void
setStartCity
(
String
startCity
)
{
this
.
startCity
=
startCity
;
}
public
String
getEndCity
()
{
return
endCity
;
}
public
void
setEndCity
(
String
endCity
)
{
this
.
endCity
=
endCity
;
}
public
Long
getStartTime
()
{
return
startTime
;
}
public
void
setStartTime
(
Long
startTime
)
{
this
.
startTime
=
startTime
;
}
public
Long
getEndTime
()
{
return
endTime
;
}
public
void
setEndTime
(
Long
endTime
)
{
this
.
endTime
=
endTime
;
}
}
src/main/java/com/example/tdl/domain/vo/CircuitTransferVo.java
View file @
fa694a53
...
...
@@ -3,6 +3,8 @@ package com.example.tdl.domain.vo;
public
class
CircuitTransferVo
{
private
String
city
;
private
String
address
;
private
Long
startTime
;
private
Long
arrivalTime
;
...
...
@@ -17,6 +19,14 @@ public class CircuitTransferVo {
this
.
city
=
city
;
}
public
String
getAddress
()
{
return
address
;
}
public
void
setAddress
(
String
address
)
{
this
.
address
=
address
;
}
public
Long
getStartTime
()
{
return
startTime
;
}
...
...
src/main/java/com/example/tdl/domain/vo/ResultAlarmLogVo.java
0 → 100644
View file @
fa694a53
package
com
.
example
.
tdl
.
domain
.
vo
;
public
class
ResultAlarmLogVo
{
private
String
transportationNo
;
private
String
cargoNo
;
private
String
startCity
;
private
String
endCity
;
private
String
description
;
private
Long
alarmTime
;
public
String
getTransportationNo
()
{
return
transportationNo
;
}
public
void
setTransportationNo
(
String
transportationNo
)
{
this
.
transportationNo
=
transportationNo
;
}
public
String
getCargoNo
()
{
return
cargoNo
;
}
public
void
setCargoNo
(
String
cargoNo
)
{
this
.
cargoNo
=
cargoNo
;
}
public
String
getStartCity
()
{
return
startCity
;
}
public
void
setStartCity
(
String
startCity
)
{
this
.
startCity
=
startCity
;
}
public
String
getEndCity
()
{
return
endCity
;
}
public
void
setEndCity
(
String
endCity
)
{
this
.
endCity
=
endCity
;
}
public
String
getDescription
()
{
return
description
;
}
public
void
setDescription
(
String
description
)
{
this
.
description
=
description
;
}
public
Long
getAlarmTime
()
{
return
alarmTime
;
}
public
void
setAlarmTime
(
Long
alarmTime
)
{
this
.
alarmTime
=
alarmTime
;
}
}
src/main/java/com/example/tdl/domain/vo/ResultCityVo.java
View file @
fa694a53
...
...
@@ -4,6 +4,8 @@ public class ResultCityVo {
private
String
city
;
private
String
address
;
private
Long
time
;
private
String
last
;
...
...
@@ -20,6 +22,14 @@ public class ResultCityVo {
this
.
city
=
city
;
}
public
String
getAddress
()
{
return
address
;
}
public
void
setAddress
(
String
address
)
{
this
.
address
=
address
;
}
public
Long
getTime
()
{
return
time
;
}
...
...
src/main/java/com/example/tdl/entity/AlarmLog.java
View file @
fa694a53
...
...
@@ -6,6 +6,10 @@ public class AlarmLog {
private
String
transportationNo
;
private
String
startCity
;
private
String
endCity
;
private
String
TDLSN
;
private
String
description
;
...
...
@@ -16,8 +20,10 @@ public class AlarmLog {
private
String
classify
;
public
AlarmLog
(
String
transportationNo
,
String
TDLSN
,
String
description
,
Float
data
,
Long
alarmTime
,
String
classify
)
{
public
AlarmLog
(
String
transportationNo
,
String
startCity
,
String
endCity
,
String
TDLSN
,
String
description
,
Float
data
,
Long
alarmTime
,
String
classify
)
{
this
.
transportationNo
=
transportationNo
;
this
.
startCity
=
startCity
;
this
.
endCity
=
endCity
;
this
.
TDLSN
=
TDLSN
;
this
.
description
=
description
;
this
.
data
=
data
;
...
...
@@ -41,6 +47,22 @@ public class AlarmLog {
this
.
transportationNo
=
transportationNo
;
}
public
String
getStartCity
()
{
return
startCity
;
}
public
void
setStartCity
(
String
startCity
)
{
this
.
startCity
=
startCity
;
}
public
String
getEndCity
()
{
return
endCity
;
}
public
void
setEndCity
(
String
endCity
)
{
this
.
endCity
=
endCity
;
}
public
String
getTDLSN
()
{
return
TDLSN
;
}
...
...
src/main/java/com/example/tdl/mapper/AlarmLogMapper.java
View file @
fa694a53
package
com
.
example
.
tdl
.
mapper
;
import
com.example.tdl.domain.vo.AddAlarmLogVo
;
import
com.example.tdl.domain.vo.AlarmLogVo
;
import
com.example.tdl.domain.vo.HistogramData
;
import
com.example.tdl.domain.vo.ResultAlarmLog
;
import
com.example.tdl.domain.vo.*
;
import
com.example.tdl.entity.AlarmLog
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
...
...
@@ -30,4 +27,6 @@ public interface AlarmLogMapper {
List
<
HistogramData
>
getByCount
(
String
time
);
Integer
getByTime
(
@Param
(
"transportationNo"
)
String
transportationNo
,
@Param
(
"startTime"
)
Long
startTime
,
@Param
(
"endTime"
)
Long
endTime
);
List
<
ResultAlarmLogVo
>
getAlarm
(
AlarmTermVo
alarmTermVo
);
}
src/main/java/com/example/tdl/mapper/CircuitMapper.java
View file @
fa694a53
...
...
@@ -17,6 +17,8 @@ public interface CircuitMapper {
int
add
(
Map
<
Object
,
Object
>
map
);
int
endCircuit
(
Map
<
Object
,
Object
>
map
);
int
updateCircuit
(
Map
<
Object
,
Object
>
map
);
int
updateEndTime
(
UpdateCircuitVo
updateCircuitVo
);
...
...
@@ -25,6 +27,8 @@ public interface CircuitMapper {
int
delCircuit
(
String
transportationNo
);
int
deleteCircuit
(
Map
<
Object
,
Object
>
map
);
ResultCircuitVo
getByTransportationNo
(
@Param
(
"transportationNo"
)
String
transportationNo
,
@Param
(
"companyName"
)
String
companyName
);
Integer
getOnRoute
(
@Param
(
"time"
)
String
time
,
@Param
(
"companyName"
)
String
companyName
);
...
...
@@ -37,6 +41,8 @@ public interface CircuitMapper {
ResultCircuitForAppVo
getByTransportationNoForApp
(
@Param
(
"transportationNo"
)
String
transportationNo
,
@Param
(
"companyName"
)
String
companyName
);
ResultCircuitVo
getCircuit
(
String
transportationNo
);
List
<
ResultCircuitVo
>
getByCircuitState
(
@Param
(
"circuitState"
)
Integer
circuitState
,
@Param
(
"companyName"
)
String
companyName
);
int
updateEvaluate
(
UpdateEvaluateVo
updateEvaluateVo
);
...
...
src/main/java/com/example/tdl/mqtt/MqttListener.java
View file @
fa694a53
...
...
@@ -123,6 +123,7 @@ public class MqttListener implements MqttCallback {
@Override
public
void
messageArrived
(
String
topic
,
MqttMessage
mqttMessage
)
throws
Exception
{
String
Message
=
mqttMessage
.
toString
();
System
.
out
.
print
(
Message
);
Long
timestamp
=
System
.
currentTimeMillis
();
String
[]
tmparray
=
topic
.
split
(
"/"
);
String
Type
=
tmparray
[
1
];
...
...
@@ -130,7 +131,7 @@ public class MqttListener implements MqttCallback {
if
(
SN
.
matches
(
"^[0-9]*$"
)){
try
{
Integer
flag
=
parseData
(
Message
,
SN
,
Type
);
// String ConfigData ="{\"action\":\"config\"}"
;
System
.
out
.
print
(
System
.
currentTimeMillis
()+
"------"
+
flag
+
"------"
)
;
String
ConfigData
;
Future
<
String
>
result
=
null
;
GWConfigWorker
gcconfig
=
null
;
...
...
@@ -154,7 +155,6 @@ public class MqttListener implements MqttCallback {
mqttconfig
.
getUsername
(),
mqttconfig
.
getPassword
(),
mqttconfig
.
getQos
(),
mqttconfig
.
getCacrt
(),
mqttconfig
.
getClientkey
(),
mqttconfig
.
getClientcrt
(),
mqttconfig
.
getClientpwd
());
result
=
configthreadPool
.
submit
(
gcconfig
);
// while (result.isDone())
// {
// String respcmd = result.get();
...
...
@@ -186,11 +186,11 @@ public class MqttListener implements MqttCallback {
}
// 有设备信息
ConfigVo
configVo
=
configService
.
getConfig
(
SN
,
Type
);
ConfigCMDVo
configCMDVo
=
new
Gson
().
fromJson
(
configVo
.
getMessage
(),
ConfigCMDVo
.
class
);
if
(
configVo
.
getUntie
()){
if
(
StringUtils
.
isEmpty
(
configVo
.
getMessage
())){
//解绑状态
return
2
;
//解绑
}
ConfigCMDVo
configCMDVo
=
new
Gson
().
fromJson
(
configVo
.
getMessage
(),
ConfigCMDVo
.
class
);
//判断两者的devList是否一致
if
(
configCMDVo
.
getDevList
().
containsAll
(
checkInVo
.
getDevList
())
&&
checkInVo
.
getDevList
().
containsAll
(
configCMDVo
.
getDevList
())
...
...
src/main/java/com/example/tdl/service/AlarmLogService.java
View file @
fa694a53
package
com
.
example
.
tdl
.
service
;
import
com.example.tdl.domain.vo.AddAlarmLogVo
;
import
com.example.tdl.domain.vo.AlarmLogVo
;
import
com.example.tdl.domain.vo.HistogramData
;
import
com.example.tdl.domain.vo.ResultAlarmLog
;
import
com.example.tdl.domain.vo.*
;
import
com.example.tdl.entity.AlarmLog
;
import
com.example.tdl.mapper.AlarmLogMapper
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
@@ -50,5 +47,9 @@ public class AlarmLogService {
return
alarmLogMapper
.
getByTime
(
transportationNo
,
startTime
,
endTime
);
}
public
List
<
ResultAlarmLogVo
>
getAlarm
(
AlarmTermVo
alarmTermVo
){
return
alarmLogMapper
.
getAlarm
(
alarmTermVo
);
}
}
src/main/java/com/example/tdl/service/CircuitService.java
View file @
fa694a53
...
...
@@ -30,6 +30,10 @@ public class CircuitService {
return
circuitMapper
.
add
(
map
);
}
public
int
endCircuit
(
Map
<
Object
,
Object
>
map
){
return
circuitMapper
.
endCircuit
(
map
);
}
public
int
updateCircuit
(
Map
<
Object
,
Object
>
map
){
return
circuitMapper
.
updateCircuit
(
map
);
}
...
...
@@ -47,6 +51,11 @@ public class CircuitService {
return
circuitMapper
.
delCircuit
(
transportationNo
);
}
public
int
deleteCircuit
(
Map
<
Object
,
Object
>
map
){
return
circuitMapper
.
deleteCircuit
(
map
);
}
public
ResultCircuitVo
getByTransportationNo
(
String
transportationNo
,
String
companyName
){
return
circuitMapper
.
getByTransportationNo
(
transportationNo
,
companyName
);
}
...
...
@@ -55,6 +64,9 @@ public class CircuitService {
return
circuitMapper
.
getByTransportationNoForApp
(
transportationNo
,
companyName
);
}
public
ResultCircuitVo
getCircuit
(
String
transportationNo
){
return
circuitMapper
.
getCircuit
(
transportationNo
);
}
public
Integer
getOnRoute
(
String
time
,
String
comapnyName
){
return
circuitMapper
.
getOnRoute
(
time
,
comapnyName
);
}
...
...
src/main/java/com/example/tdl/web/AlarmLogController.java
View file @
fa694a53
...
...
@@ -2,12 +2,17 @@ package com.example.tdl.web;
import
com.example.tdl.domain.dto.CommFeedback
;
import
com.example.tdl.domain.vo.AddAlarmLogVo
;
import
com.example.tdl.domain.vo.AlarmTermVo
;
import
com.example.tdl.domain.vo.ResultCircuit
;
import
com.example.tdl.domain.vo.ResultCircuitVo
;
import
com.example.tdl.entity.AlarmLog
;
import
com.example.tdl.service.AlarmLogService
;
import
com.example.tdl.service.CircuitService
;
import
com.example.tdl.service.GatewayService
;
import
com.google.gson.Gson
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParams
;
import
io.swagger.annotations.ApiOperation
;
import
org.apache.commons.lang3.StringUtils
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
...
...
@@ -33,9 +38,12 @@ public class AlarmLogController {
@Autowired
private
GatewayService
gatewayService
;
@Autowired
private
CircuitService
circuitService
;
//新增报警消息
@ApiOperation
(
value
=
"增加报警"
,
notes
=
"增加报警"
)
@RequestMapping
(
value
=
"/addAlarmLog"
,
method
=
RequestMethod
.
POST
)
public
String
addAlarmLog
(
@RequestBody
String
addAlarmLog
){
logger
.
info
(
addAlarmLog
);
...
...
@@ -65,6 +73,8 @@ public class AlarmLogController {
map
.
put
(
5
,
"未知"
);
//根据gateway的信息获取线路信息
String
transportationNo
=
gatewayService
.
getTransportationNo
(
addAlarmLogVo
.
getGsn
(),
addAlarmLogVo
.
getGtype
());
//获取终点,起点
ResultCircuitVo
resultCircuitVo
=
circuitService
.
getCircuit
(
transportationNo
);
for
(
int
i
=
0
;
i
<
addAlarmLogVo
.
getAlarm
().
size
();
i
++){
String
classify
=
""
;
String
desp
=
""
;
...
...
@@ -89,7 +99,7 @@ public class AlarmLogController {
desp
=
addAlarmLogVo
.
getAlarm
().
get
(
i
).
getTdlsn
()+
"离线"
;
classify
=
"6"
;
}
AlarmLog
alarmLog
=
new
AlarmLog
(
transportationNo
,
addAlarmLogVo
.
getAlarm
().
get
(
i
).
getTdlsn
().
replace
(
"TDL-"
,
""
).
trim
(),
desp
,
addAlarmLogVo
.
getAlarm
().
get
(
i
).
getValue
(),
addAlarmLogVo
.
getAlarm
().
get
(
i
).
getTs
()*
1000
,
classify
);
AlarmLog
alarmLog
=
new
AlarmLog
(
transportationNo
,
resultCircuitVo
.
getStartCity
(),
resultCircuitVo
.
getEndCity
(),
addAlarmLogVo
.
getAlarm
().
get
(
i
).
getTdlsn
().
replace
(
"TDL-"
,
""
).
trim
(),
desp
,
addAlarmLogVo
.
getAlarm
().
get
(
i
).
getValue
(),
addAlarmLogVo
.
getAlarm
().
get
(
i
).
getTs
()*
1000
,
classify
);
int
a
=
alarmLogServcie
.
addAlarmLog
(
alarmLog
);
if
(
a
==
0
){
fb
.
setCode
(
0
);
...
...
@@ -101,4 +111,44 @@ public class AlarmLogController {
}
return
gson
.
toJson
(
fb
);
}
//获取报警信息
@ApiOperation
(
value
=
"获取报警信息"
,
notes
=
"获取报警信息"
+
"transportationNo:运输编号"
+
"description:报警内容"
+
"startCity:启运城市"
+
"endCity:目的城市"
+
"startTime:出发时间(时间戳)"
+
"endTime:结束时间(时间戳)"
+
"返回值: transportationNo:运输编号"
+
"cargoNo:货号"
+
"startCity:启运城市"
+
"endCity:目的城市"
+
"description:报警内容"
+
"alarmTime:报警时间"
)
@ApiImplicitParams
({
@ApiImplicitParam
(
paramType
=
"header"
,
name
=
"Account_token"
,
value
=
"token"
,
required
=
true
,
dataType
=
"String"
),
})
@PostMapping
(
"/getAlarm"
)
public
Object
getAlarm
(
@RequestBody
AlarmTermVo
alarmTermVo
){
if
(
StringUtils
.
isEmpty
(
alarmTermVo
.
getTransportationNo
())){
alarmTermVo
.
setTransportationNo
(
null
);
}
if
(
StringUtils
.
isEmpty
(
alarmTermVo
.
getDescription
())){
alarmTermVo
.
setDescription
(
null
);
}
if
(
StringUtils
.
isEmpty
(
alarmTermVo
.
getEndCity
())){
alarmTermVo
.
setEndCity
(
null
);
}
if
(
StringUtils
.
isEmpty
(
alarmTermVo
.
getStartCity
())){
alarmTermVo
.
setStartCity
(
null
);
}
if
(
alarmTermVo
.
getStartTime
()==
null
){
alarmTermVo
.
setStartTime
(
null
);
}
if
(
alarmTermVo
.
getDescription
()==
null
){
alarmTermVo
.
setEndTime
(
null
);
}
return
alarmLogServcie
.
getAlarm
(
alarmTermVo
);
}
}
src/main/java/com/example/tdl/web/CircuitController.java
View file @
fa694a53
This diff is collapsed.
Click to expand it.
src/main/java/com/example/tdl/web/DataController.java
View file @
fa694a53
...
...
@@ -477,7 +477,7 @@ public class DataController {
List
<
HistoryData
>
historyDataList
=
new
ArrayList
<>();
for
(
List
<
Object
>
value:
values
){
HistoryData
historyData
=
new
HistoryData
();
historyData
.
setTime
(
UTCToCST
(
value
.
get
(
0
).
toString
()));
historyData
.
setTime
(
parseTime
(
value
.
get
(
0
).
toString
()));
historyData
.
setValue
(
value
.
get
(
1
)==
null
?
""
:
value
.
get
(
1
).
toString
());
historyDataList
.
add
(
historyData
);
}
...
...
@@ -686,7 +686,6 @@ public class DataController {
return
historyDataList
;
}
// 根据运输编号获取路线以及设备信息
// @ApiOperation(value = "获取路线以及设备信息",notes = "获取路线以及设备信息" +
// "transportationNo:运输编号" +
...
...
src/main/java/com/example/tdl/web/EquipmentBindingController.java
View file @
fa694a53
...
...
@@ -186,7 +186,7 @@ public class EquipmentBindingController {
map
.
put
(
"gSN"
,
resultTDLDeviceVo
.
getGatewaySN
());
map
.
put
(
"gType"
,
resultTDLDeviceVo
.
getGatewayType
());
map
.
put
(
"message"
,
gson
.
toJson
(
configCMDVo
));
map
.
put
(
"untie"
,
tru
e
);
map
.
put
(
"untie"
,
fals
e
);
map
.
put
(
"TDLSN"
,
TDLSN
);
map
.
put
(
"endTime"
,
System
.
currentTimeMillis
());
configService
.
updateConfig
(
map
);
...
...
src/main/java/com/example/tdl/web/HomePageController.java
View file @
fa694a53
...
...
@@ -91,6 +91,7 @@ public class HomePageController {
UserRedisVo
user
=
gson
.
fromJson
(
datum
,
UserRedisVo
.
class
);
JSONObject
jsonObject
=
JSON
.
parseObject
(
time
);
time
=(
String
)
jsonObject
.
get
(
"time"
);
time
=
time
.
replace
(
"天"
,
""
).
trim
();
//获取数量
HomePageDataVo
dataVo
=
new
HomePageDataVo
();
//获取所有的线路数量
...
...
src/main/resources/application.properties
View file @
fa694a53
spring.datasource.url
=
jdbc:mysql://1
27.0.0.1
:3306/tdlCloud?useUnicode=true&characterEncoding=utf-8&useSSL=false
spring.datasource.url
=
jdbc:mysql://1
92.168.1.16
:3306/tdlCloud?useUnicode=true&characterEncoding=utf-8&useSSL=false
spring.datasource.username
=
root
spring.datasource.password
=
root
spring.datasource.password
=
37774020
spring.datasource.driver-class-name
=
com.mysql.jdbc.Driver
threadpool.corepoolsize
=
30
...
...
src/main/resources/mapper/AlarmLogMapper.xml
View file @
fa694a53
...
...
@@ -24,6 +24,9 @@
values(
null,
#{transportationNo,jdbcType=VARCHAR},
#{startCity,jdbcType=VARCHAR},
#{endCity,jdbcType=VARCHAR},
#{transportationNo,jdbcType=VARCHAR},
#{TDLSN,jdbcType=VARCHAR},
#{description,jdbcType=VARCHAR},
#{data,jdbcType=FLOAT},
...
...
@@ -68,4 +71,27 @@
where transportationNo= #{transportationNo,jdbcType=VARCHAR}
and alarmTime between #{startTime,jdbcType=BIGINT} and #{endTime,jdbcType=BIGINT}
</select>
<select
id=
"getAlarm"
parameterType=
"com.example.tdl.domain.vo.AlarmTermVo"
resultType=
"com.example.tdl.domain.vo.ResultAlarmLogVo"
>
select c.transportationNo,al.startCity,al.endCity,c.cargoNo,al.description,al.alarmTime from alarm_log al,circuit c
where al.transportationNo =c.transportationNo
<if
test=
"transportationNo!=null"
>
AND c.transportationNo = #{transportationNo,jdbcType=VARCHAR}
</if>
<if
test=
"description!=null"
>
AND al.description = #{description,jdbcType=VARCHAR}
</if>
<if
test=
"startCity!=null"
>
AND al.startCity = #{startCity,jdbcType=VARCHAR}
</if>
<if
test=
"endCity!=null"
>
AND al.endCity = #{endCity,jdbcType=VARCHAR}
</if>
<if
test=
"startTime!=null"
>
AND c.startTime
>
= #{startTime,jdbcType=INTEGER}
</if>
<if
test=
"endTime!=null"
>
AND c.endTime
<
= #{endTime,jdbcType=INTEGER}
</if>
</select>
</mapper>
\ No newline at end of file
src/main/resources/mapper/CircuitMapper.xml
View file @
fa694a53
...
...
@@ -196,10 +196,10 @@
<!--延误数量-->
<select
id=
"getDelayCount"
resultType=
"java.lang.Integer"
>
select
GROUP_CONCAT(id),
count(id) from circuit where state =1
select count(id) from circuit where state =1
AND DATE_SUB(CURDATE(), INTERVAL #{time,jdbcType=VARCHAR} DAY)
<
= date(FROM_UNIXTIME(createTime/1000,'%Y-%m-%d %H:%i:%s'))
AND company_id=(SELECT id from company where companyName=
"上海辉度"
)
AND
endtime > compTime or compTime
<
#{compTime,jdbcType=BIGINT}
AND company_id=(SELECT id from company where companyName=
#{companyName,jdbcType=VARCHAR}
)
AND
ifnull(endtime,#{compTime,jdbcType=BIGINT}) > compTime
</select>
<!--总数量-->
...
...
@@ -259,6 +259,36 @@
AND DATE_SUB(CURDATE(), INTERVAL #{time,jdbcType=VARCHAR} DAY)
<
= date(FROM_UNIXTIME(createTime/1000,'%Y-%m-%d %H:%i:%s'))
</select>
<update
id=
"endCircuit"
parameterType=
"java.util.Map"
statementType=
"CALLABLE"
>
<![CDATA[
{
call pro_endCircuit(
#{transportationNo,mode=IN,jdbcType=VARCHAR},
#{gSN,mode=IN,jdbcType=VARCHAR},
#{gType,mode=IN,jdbcType=VARCHAR},
#{message,mode=IN,jdbcType=VARCHAR},
#{endTime,mode=IN,jdbcType=BIGINT},
#{msg,mode=OUT,jdbcType=VARCHAR}
)
}
]]>
</update>
<delete
id=
"deleteCircuit"
parameterType=
"java.util.Map"
statementType=
"CALLABLE"
>
<![CDATA[
{
call pro_delCircuit(
#{transportationNo,mode=IN,jdbcType=VARCHAR},
#{gSN,mode=IN,jdbcType=VARCHAR},
#{gType,mode=IN,jdbcType=VARCHAR},
#{message,mode=IN,jdbcType=VARCHAR},
#{msg,mode=OUT,jdbcType=VARCHAR}
)
}
]]>
</delete>
<!--
<select id="getDistinct" resultType="com.example.tdl.domain.vo.CircuitVo">
SELECT transportationNo,routeName,startLongitude,startLatitude,(select city from city_config where id=r.start_id) startCity,startTime,endLongitude,endLatitude,
...
...
src/main/resources/mapper/CircuitTransferMapper.xml
View file @
fa694a53
...
...
@@ -2,7 +2,7 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.example.tdl.mapper.CircuitTransferMapper"
>
<select
id=
"getCity"
resultType=
"com.example.tdl.domain.vo.CircuitTransferVo"
parameterType=
"String"
>
select c.city,ct.arrivalTime,ct.startTime,ct.sequence from circuit_transfer ct,city c,circuit cr
select c.city,
CONCAT(c.country,c.city,ct.addressDetail) address,
ct.arrivalTime,ct.startTime,ct.sequence from circuit_transfer ct,city c,circuit cr
where c.id=ct.city_id
and ct.circuit_id =cr.id
and cr.transportationNo = #{transportationNo,jdbcType=VARCHAR}
...
...
witcd.crt
View file @
fa694a53
-----BEGIN CERTIFICATE-----
MII
GSTCCBTGgAwIBAgIJAPP+hRKC88uw
MA0GCSqGSIb3DQEBDQUAMGoxFzAVBgNV
MII
ESzCCAzOgAwIBAgIJAPMXBQpqtSoZ
MA0GCSqGSIb3DQEBDQUAMGoxFzAVBgNV
BAMMDkFuIE1RVFQgYnJva2VyMRYwFAYDVQQKDA1Pd25UcmFja3Mub3JnMRQwEgYD
VQQLDAtnZW5lcmF0ZS1DQTEhMB8GCSqGSIb3DQEJARYSbm9ib2R5QGV4YW1wbGUu
bmV0MB4XDTE3MTIxODA1NTQyN1oXDTMyMTIxNDA1NTQyN1owajEXMBUGA1UEAwwO
d2l0aXVtLWNlbnRvczcxFjAUBgNVBAoMDU93blRyYWNrcy5vcmcxFDASBgNVBAsM
C2dlbmVyYXRlLUNBMSEwHwYJKoZIhvcNAQkBFhJub2JvZHlAZXhhbXBsZS5uZXQw
ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDAc33VO+dY4YB1UGwOGHk4
lNQYYmU8OrSgz/Dc4Nf1NBAFCHWmew2b0/73iIVzaVfI08KGVHlVYf+BsKFXiwAM
JFeKfrkBSWdt6JcdxIxY/njVwaqzdwtFELFhGLHHsFVmMul54lkrlIAQM5uYMAEK
E3ddvKhHYdK+ngfQ+RFt3fxgiUlyUyQ3jAqf8O+w3MpPD7W1jSyyhiFyARK26WKI
CC24Ap0Fic+OW1MBvuU9NRwzqejdYSnFCyWew4a6X5f9nYDTBCY+C0/fP3AQlSpy
LPpYJQg9cAPMtegJshmPlKPKW3+P4GjM/ue0HdEjeiBU4HQz5uZ7vCWV3a3vIAL7
AgMBAAGjggLwMIIC7DAMBgNVHRMBAf8EAjAAMBEGCWCGSAGG+EIBAQQEAwIGQDAL
BgNVHQ8EBAMCBeAwIQYJYIZIAYb4QgENBBQWEkJyb2tlciBDZXJ0aWZpY2F0ZTAd
BgNVHQ4EFgQUy9xYX8wztckkL1Fw8szen8pAVfswgZwGA1UdIwSBlDCBkYAUiXkG
2WNmB8XzkY+NsmS31OhIZ9GhbqRsMGoxFzAVBgNVBAMMDkFuIE1RVFQgYnJva2Vy
MRYwFAYDVQQKDA1Pd25UcmFja3Mub3JnMRQwEgYDVQQLDAtnZW5lcmF0ZS1DQTEh
MB8GCSqGSIb3DQEJARYSbm9ib2R5QGV4YW1wbGUubmV0ggkA9J/SOghC7O8wggFQ
BgNVHREEggFHMIIBQ4cErBIAAYcQ/oAAAAAAAAAAQpv//q1FrocErBEAAYcQ/oAA
AAAAAAAAQg7//kQFD4cEwKgBC4cQ/oAAAAAAAAD6562tA4vHX4cQ/oAAAAAAAADE
65D//hNZoIcQ/oAAAAAAAACgNSb//roFHocQ/oAAAAAAAACkPLD//ldR+IcQ/oAA
AAAAAADAuP///tEsvocQ/oAAAAAAAAD097v//uTa/4cQ/oAAAAAAAAAIIFL//jGX
+IcQ/oAAAAAAAABkZo7//m6XZocQ/oAAAAAAAAAI02f//uilgYcQ/oAAAAAAAADM
OWz//pABv4cQ/oAAAAAAAABUINf//j3Wk4cQ/oAAAAAAAAC0Yf7//i6taYcQ/oAA
AAAAAACsmJv//pfBxocEfwAAAYcQAAAAAAAAAAAAAAAAAAAAAYIJbG9jYWxob3N0
MIGGBgNVHSAEfzB9MHsGAysFCDB0MBwGCCsGAQUFBwIBFhBodHRwOi8vbG9jYWxo
b3N0MFQGCCsGAQUFBwICMEgwEBYJT3duVHJhY2tzMAMCAQEaNFRoaXMgQ0EgaXMg
Zm9yIGEgbG9jYWwgTVFUVCBicm9rZXIgaW5zdGFsbGF0aW9uIG9ubHkwDQYJKoZI
hvcNAQENBQADggEBAJAn2SYRfnyJnCiO6gqhQrvBrdhUun85DG7prfa+8pI4+XXi
OGPjwonzKgpnkPWG1JSQJbgeVEnlFoGhDgUrw8NT1aDBrs0KAOiuQqpuJ8aYmIpn
j64tvM5vS8NB4ZfJLk5BCGIQdbtfqBDhAFbNZxVRA7XLDzCfEp7idSL3Wv7fe4q3
lZotb9t0g9tRM2hy+1MBcWwUe4j/H9+JDkn4ijVE8amJraAUPXC+6Gwc+HSoRc8X
BLIt+EwSbZ02UD2EnWaxXh0VdhNe1iNmIgDm62sulcNv0g6RERb2hZarvhbOvw8f
45HTKazDxHgnaw365fk2FxlwpoDUmN+k82/0xr8=
bmV0MB4XDTE4MDQxNjAzNDU1M1oXDTMyMDQxMjAzNDU1M1owGDEWMBQGA1UEAwwN
d2l0aXVtLWNsaWVudDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOiC
56L1L6Z7oJYPiVPw2iKWIsEIRzXSjGOy0Q+ZtqW3aI6WcoFmWVvVrZ7Njcf7nIM2
MCYA3XRMQf4ps/pPVeu6GjU0zLxMhArsRyHqbidZf12G/FavWKHbLeRQiq3+DLsc
NAqDjDhcysp21QcK4EGeuiDF+qra5eJr1f53PNlH6s9GqFF4Hl1XGju4mNGVgWOp
LHzIu39H3K+e3U/BrD3qq6B6p4JRPEggusXTvFjAev2aq9XGz9kpxDQjJFzTP7j6
Wq6o5CiSjJCMgHMSyTcJtZaPHM8mzhJ5R3O2ocXyR3a5Z6mSb0VUNlXZ8l8/1m3r
4ju/sFmWsRqflXh/SHUCAwEAAaOCAUQwggFAMAwGA1UdEwEB/wQCMAAwCQYDVR0R
BAIwADARBglghkgBhvhCAQEEBAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsG
AQUFBwMEMAsGA1UdDwQEAwIDqDAoBglghkgBhvhCAQ0EGxYZQ2xpZW50IEJyb2tl
ciBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQU6Bvas60Q/gytLOCw3V9y4BlfmbgwgZwG
A1UdIwSBlDCBkYAUS5eF3AjSRpI53Db1/6kZ5vj5wk6hbqRsMGoxFzAVBgNVBAMM
DkFuIE1RVFQgYnJva2VyMRYwFAYDVQQKDA1Pd25UcmFja3Mub3JnMRQwEgYDVQQL
DAtnZW5lcmF0ZS1DQTEhMB8GCSqGSIb3DQEJARYSbm9ib2R5QGV4YW1wbGUubmV0
ggkAoVQnHLwZZ5EwDQYJKoZIhvcNAQENBQADggEBAHa1C75lJ49IWUIvQbItg6ji
lXKVfyJzy/KVqB4cWulnSCGcQb/oOYwo3uDsgcsA9xXSK/7rjOTC2nfC2iAVFCwo
rFJ0725PHiaNjt4IXPm6II1YR3yV1QXqg9aWS741RBgxnrp4q6LCGfNR6u1TIHcy
MoL0eg17P1zwyahXPW43DeoeKjDuPXyZXzS1RMpkYdiFVfQeLLfeq296n5mHWcEs
9mJ4+ZK87qvsjp5LVYlDdVgUoHJjzlKanb1oBRCr6lyzaPRLvb58D6Mna5qI4ehP
frzTsWUtuqPWzkHa5Z6uDPpIFNDwmB80GdpEvsTW2FzIq/tFz2dOuy1BkAmElS8=
-----END CERTIFICATE-----
witcd.pem
View file @
fa694a53
-----BEGIN PRIVATE KEY-----
MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQD
Ac33VO+dY4YB1
UGwOGHk4lNQYYmU8OrSgz/Dc4Nf1NBAFCHWmew2b0/73iIVzaVfI08KGVHlVYf+B
sKFXiwAMJFeKfrkBSWdt6JcdxIxY/njVwaqzdwtFELFhGLHHsFVmMul54lkrlIAQ
M5uYMAEKE3ddvKhHYdK+ngfQ+RFt3fxgiUlyUyQ3jAqf8O+w3MpPD7W1jSyyhiFy
ARK26WKICC24Ap0Fic+OW1MBvuU9NRwzqejdYSnFCyWew4a6X5f9nYDTBCY+C0/f
P3AQlSpyLPpYJQg9cAPMtegJshmPlKPKW3+P4GjM/ue0HdEjeiBU4HQz5uZ7vCWV
3a3vIAL7AgMBAAECggEBAI/+2gwOQk+Sipc8kV0KmsjnMrr8BFtIYZZhgAsEgRGK
3uGlLsJeGBScTo3PrGpqS7CMIWR5GD/2j0LucgoaivKKzqVlo+9+iNEH0uoHAiwk
Wy01NxAI5nnKv62y2HJdUciiF2eHIMkm15tHwgfhAyYS4qFUY2TloNXXUGnfslbN
EbkoB1LBnsue6YlI34q8jAv2/zZxz68yfA8Rdy63gQa9HVrCz85nf+MoGFnFeeGo
sYV7bfXYuTszYJ/6B748Eub5bTHaUpZwrbLpdTGXyUr6cDh2EagtGhnHiFEpBF+I
rzIJTeGUjByingsWm+aU+e1aheDLFzB/a2u4R8ljJAECgYEA3+mGR4uJ/ekUhUnS
Uer2YGBBZ0v/wepj6Zy5H0HGh2/Zl6RVcE8KKiU9d1iCzTz76RDtqlzNYScSAuGg
1SlSD0mjwRBZ7NHGPa6wMz7fBh8zLrzKSDAjaHtl1xYj8h2NXfSfGmjQFrvp9xb5
tMVmSArVgk5v6NP6V5pVIVfTcHsCgYEA3AfIIwcWErZOpcQd3DbP2JZPct2nh7hF
vknG99zjSl3AbhEAq7xJZup8Co2+Ydioh313ICc04IHXU+EE1TuUzj9Cy6rRy2jJ
RzZ5RL0YYSlhBbVCA53K5JRma6lvmEV1mi+8xX1r7HzNDEY+vc4GT27rSnaNWzDR
IgTJNE+9b4ECgYAnvrrwHiu7X1EeK7FiixN6nfteC5Z1ZFah1AjkLHfB+K+mBCyK
R+1k98FGWva02ZtZjoCxWdG26gl/a29yBuijAA5KKc3chIvszQJHxmQuIQGjzS0W
zTyrwiOcnzh4NJiwUcigFnTBZE+uZWyjktqJ9Spa+/NPX7kzLZjo1z8X2wKBgDJf
pbY/PRJzonXY/G0aL2OKpg3KKTytN2plQaQlcfPomtGYGus2ZCenr1ZLNTb5fzvl
wYwe7cAoeb++WHjo9xxw5z3xka5cAxjGo+TU1ewIqSnBYaeqTHUgdIJZfC8EV/RA
0Zr1J+wwdlFFE8AoltFAt6WIlrw15OtA5T+QsfIBAoGBAKhkaUbYDCU53KhtetAY
aSdHjuM77tHMDs9eDmwZRUzENBzf30AZTJUrQ8CbYTGCveSm++sRD4Yz8RzOJyGc
CkV/NjysEj8AYwHeDQdYtbA0eZRiB/FjNvcN8dGeGxX/phPP8Z3Zkq2TtWO5inyR
WojHNWuI139lTdbVE/r5BkGT
MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQD
oguei9S+me6CW
D4lT8NoiliLBCEc10oxjstEPmbalt2iOlnKBZllb1a2ezY3H+5yDNjAmAN10TEH+
KbP6T1Xruho1NMy8TIQK7Ech6m4nWX9dhvxWr1ih2y3kUIqt/gy7HDQKg4w4XMrK
dtUHCuBBnrogxfqq2uXia9X+dzzZR+rPRqhReB5dVxo7uJjRlYFjqSx8yLt/R9yv
nt1Pwaw96qugeqeCUTxIILrF07xYwHr9mqvVxs/ZKcQ0IyRc0z+4+lquqOQokoyQ
jIBzEsk3CbWWjxzPJs4SeUdztqHF8kd2uWepkm9FVDZV2fJfP9Zt6+I7v7BZlrEa
n5V4f0h1AgMBAAECggEBAIBnssbTA1K82Y2l3OBnlgAdy+mwyarWsUNqAHzOFglk
xbBhM7F0tYq68dxOhqtXsDLiXSrPtX1Bk/xqSYPGBpxdNZYGp76hvxZNMGdxkQ3Y
JjefkYHJ6nfQlIKPXFcEg0FeLPtVdL23uSKhB7qQ7hIvN3lb/LgYlXY6uX6DmS4g
tMPADHDDrT0rY0k4MpfODSl7owSxb3NkTX4ZLSAgRsvWGwbCzRFGEbwkIYxJ4HCe
xMkArWcROgs0ppr0qOsnrnVSJISSRSRFwrZU988CCRZM7HrT5WcZuyVpepvJ3hh2
4a9jUYCg5iok91GuiqmRdHNmQ1JQHUnlGQGlK0HqYQECgYEA/dpNutEYf0Wj6Veg
zAUeyjVaJAJGaEZ6fKFpwvgLzP2ZRo7h0N3f6ANrHZ397f9yzpzkmVDMzYH3AVnG
PrP+TrGFOmLZ5+1LoRB1gdPPBLbBE00zQzB6i/WXxPGi6/1brupcwuMtWZAXyS2X
STL3ISl0WJWkw+hwZcoX8wbAdjUCgYEA6npjYo6YzRVjwX2ysncV9Fw3FGpvgma6
76x+X1xVXbKoImI2Hn+VVOdLdF5d0X/+Br8ZhL8HZd1LQ5Z8lf0G3ekIDwaBxO/D
q36QdFdm9o5CoV5pu63UbNdIiaoO8Y6GTFb+oKikZf0FW7s+BoRhOT9FKhYBzW0N
LZEJPMCg0UECgYBlWiGqsw0q020sHvZuPqUaas7Ajb/6phkFZZTKaSqc/6uQxj9W
mx9ojOTZgFkACvuVjoKey+nZK0ipW2SRaF/in3Hn68vAk7ecaOvhl+WRpj3ULQCI
lPR4qOedlDROMGvInH3IuddDaQp2IiPC7/xHWzu+mpCcP1OQ8G07dLim+QKBgHEq
bHkOtXSVlDW4gtxbWT88mmDCFdtr1WEDcWJ438J/DWK637/Md7gogWRCfykzitia
tqg4wktJiJ+wK6UAH6ZOZ9NIoqz3wwor5XAhFtJ8SnAzbvhjpxh4tsuqRdgTn4GM
owvLGL0YZtOlBQSEM6A7hxgO0wPgU/HgBANMPNGBAoGBAJJDwEw22EXWAaRTGu8b
kHx3nb8DCNMGSaAIi9JRGrhIkNVwolrGiKGq5D2cwQq/7J8t2hIWcHntXonTTqKF
TGq9CTDIVKKJX9XUJBUgN3bbOoP3vV5ipmDnHRp0j0E5eqJ+f5PGbBNJZqIKELdK
KFgvglTLdoSo+WseOJoRXxF4
-----END PRIVATE KEY-----
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