Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
T
traffic-signal-platform
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
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
signal
traffic-signal-platform
Commits
44b1bd2b
Commit
44b1bd2b
authored
Dec 30, 2024
by
zhouleilei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
步进/取消步进、锁相/解锁、恢复固定配置、临时方案下发等下发失败时,后台恢复
parent
c6314d4e
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
282 additions
and
20 deletions
+282
-20
StaticInfoController.java
...et/wanji/utc/hisense/controller/StaticInfoController.java
+1
-1
ControlCommandServiceImpl.java
...i/utc/hisense/service/impl/ControlCommandServiceImpl.java
+26
-16
StaticInfoServiceImpl.java
...wanji/utc/hisense/service/impl/StaticInfoServiceImpl.java
+1
-1
ControlCommandStrategyServiceImpl.java
...rvice/control/impl/ControlCommandStrategyServiceImpl.java
+13
-2
CommandFaildTask.java
...ce/src/main/java/net/wanji/utc/task/CommandFaildTask.java
+241
-0
No files found.
signal-utc-hisense-service/src/main/java/net/wanji/utc/hisense/controller/StaticInfoController.java
View file @
44b1bd2b
...
...
@@ -123,7 +123,7 @@ public class StaticInfoController {
if
(
ObjectUtils
.
isNotEmpty
(
crossSchemeRings
))
{
return
JsonViewObject
.
newInstance
().
success
(
crossSchemeRings
);
}
else
{
return
JsonViewObject
.
newInstance
().
fail
(
"
获取
方案环图请求 失败"
);
return
JsonViewObject
.
newInstance
().
fail
(
"
请求海信
方案环图请求 失败"
);
}
}
...
...
signal-utc-hisense-service/src/main/java/net/wanji/utc/hisense/service/impl/ControlCommandServiceImpl.java
View file @
44b1bd2b
...
...
@@ -93,6 +93,7 @@ public class ControlCommandServiceImpl implements ControlCommandService {
}
//相位驻留
String
xmlPost
=
OkHttpClientUtil
.
xmlPost
(
hisenseUrl
,
document
.
asXML
());
log
.
info
(
"第一次锁相/解锁 海信返回msg:{}"
,
xmlPost
);
/*String xmlPost = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" +
"<systemScription System=\"TCIP\" Version=\"1.0\">\n" +
" <subSystem>Hisense</subSystem>\n" +
...
...
@@ -118,14 +119,21 @@ public class ControlCommandServiceImpl implements ControlCommandService {
Integer
duration
=
commandVO
.
getDuration
();
Thread
.
sleep
(
duration
*
1000
);
messageContent
.
selectSingleNode
(
HttpConstants
.
COMMAND
).
setText
(
"0"
);
OkHttpClientUtil
.
xmlPost
(
hisenseUrl
,
document
.
asXML
());
boolean
isOk
=
sendMesIsOk
(
document
.
asXML
());
if
(
isOk
)
{
return
jsonViewObject
.
success
(
"相位锁定/解锁 - 控制成功"
);
}
else
{
return
jsonViewObject
.
fail
(
"相位锁定/解锁 - 控制失败 - 相位锁定成功,但解锁失败 "
);
}
}
return
jsonViewObject
.
success
(
"相位锁定/解锁 - 控制成功"
);
}
else
{
return
jsonViewObject
.
fail
(
"相位锁定/解锁 - 控制失败"
);
return
jsonViewObject
.
fail
(
"相位锁定/解锁 - 控制失败
- 第一次给海信下发指令失败
"
);
}
}
else
{
return
jsonViewObject
.
fail
(
"相位锁定/解锁 - 控制失败 - 第一次给海信下发指令失败"
);
}
return
jsonViewObject
.
fail
(
"相位锁定/解锁 - 控制失败"
);
//
return jsonViewObject.fail("相位锁定/解锁 - 控制失败");
}
@Override
...
...
@@ -163,7 +171,7 @@ public class ControlCommandServiceImpl implements ControlCommandService {
long
start
=
System
.
currentTimeMillis
();
String
xmlPost
=
OkHttpClientUtil
.
xmlPost
(
hisenseUrl
,
document
.
asXML
());
long
end
=
System
.
currentTimeMillis
();
log
.
info
(
"相位驻留 耗时: {} ms
"
,
end
-
star
t
);
log
.
info
(
"相位驻留 耗时: {} ms
,msg:{}"
,
end
-
start
,
xmlPos
t
);
/*String xmlPost = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" +
"<systemScription System=\"TCIP\" Version=\"1.0\">\n" +
" <subSystem>Hisense</subSystem>\n" +
...
...
@@ -192,7 +200,7 @@ public class ControlCommandServiceImpl implements ControlCommandService {
long
s
=
System
.
currentTimeMillis
();
String
post
=
OkHttpClientUtil
.
xmlPost
(
hisenseUrl
,
document
.
asXML
());
long
e
=
System
.
currentTimeMillis
();
log
.
info
(
"相位步进 耗时: {} ms
"
,
e
-
s
);
log
.
info
(
"相位步进 耗时: {} ms
,msg:{}"
,
e
-
s
,
post
);
/*String post = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" +
"<systemScription System=\"TCIP\" Version=\"1.0\">\n" +
" <subSystem>Hisense</subSystem>\n" +
...
...
@@ -227,9 +235,9 @@ public class ControlCommandServiceImpl implements ControlCommandService {
// boolean isOk = true;
if
(
isOk
)
{
return
jsonViewObject
.
fail
(
"相位步进失败,取消步进成功,路口号: "
+
code
);
return
jsonViewObject
.
fail
(
"
第 "
+
i
+
1
+
" 次
相位步进失败,取消步进成功,路口号: "
+
code
);
}
else
{
return
jsonViewObject
.
fail
(
"相位步进失败,取消步进失败,路口号: "
+
code
);
return
jsonViewObject
.
fail
(
"
第 "
+
i
+
1
+
" 次
相位步进失败,取消步进失败,路口号: "
+
code
);
}
}
//停顿10ms
...
...
@@ -240,13 +248,13 @@ public class ControlCommandServiceImpl implements ControlCommandService {
long
s1
=
System
.
currentTimeMillis
();
boolean
isOk
=
sendMesIsOk
(
document
.
asXML
());
long
e1
=
System
.
currentTimeMillis
();
log
.
info
(
"取消 相位步进 耗时: {} ms
"
,
e1
-
s1
);
log
.
info
(
"取消 相位步进 耗时: {} ms
,isOK:{}"
,
e1
-
s1
,
isOk
);
// boolean isOk = true;
if
(
isOk
)
{
return
jsonViewObject
.
fail
(
"
相位步进失败,
取消步进成功,路口号: "
+
code
);
return
jsonViewObject
.
fail
(
"
第 "
+
i
+
1
+
" 次相位步进失败,但
取消步进成功,路口号: "
+
code
);
}
else
{
return
jsonViewObject
.
fail
(
"相位步进失败,取消步进失败,路口号: "
+
code
);
return
jsonViewObject
.
fail
(
"
第 "
+
i
+
1
+
" 次
相位步进失败,取消步进失败,路口号: "
+
code
);
}
}
...
...
@@ -256,20 +264,22 @@ public class ControlCommandServiceImpl implements ControlCommandService {
long
s1
=
System
.
currentTimeMillis
();
boolean
isOk
=
sendMesIsOk
(
document
.
asXML
());
long
e1
=
System
.
currentTimeMillis
();
log
.
info
(
"取消 相位步进 耗时: {} ms
"
,
e1
-
s1
);
log
.
info
(
"取消 相位步进 耗时: {} ms
,isOK:{}"
,
e1
-
s1
,
isOk
);
// boolean isOk = true;
if
(
isOk
)
{
return
jsonViewObject
.
success
(
"相位步进成功,
,
路口号: "
+
code
);
return
jsonViewObject
.
success
(
"相位步进成功,路口号: "
+
code
);
}
else
{
return
jsonViewObject
.
fail
(
"相位步进成功,但取消步进失败,路口号: "
+
code
);
}
}
else
{
return
jsonViewObject
.
fail
(
"相位步进 - 控制失败 - 相位驻留失败"
);
}
}
else
{
return
jsonViewObject
.
fail
(
"相位步进 - 控制失败"
);
return
jsonViewObject
.
fail
(
"相位步进 - 控制失败
- 相位驻留失败
"
);
}
}
return
jsonViewObject
.
fail
(
"相位步进 - 控制失败"
);
return
jsonViewObject
.
fail
(
"相位步进 - 控制失败
- 第一次请求海信接口报错
"
);
}
...
...
@@ -420,8 +430,8 @@ public class ControlCommandServiceImpl implements ControlCommandService {
"</systemScription>";*/
JsonViewObject
jsonViewObject
=
JsonViewObject
.
newInstance
();
if
(
StringUtils
.
isBlank
(
post
))
{
log
.
error
(
"
5.10.
手动方案控制- 恢复固定配时 失败"
);
return
jsonViewObject
.
fail
(
"
5.10.
手动方案控制- 恢复固定配时 失败"
);
log
.
error
(
" 手动方案控制- 恢复固定配时 失败"
);
return
jsonViewObject
.
fail
(
" 手动方案控制- 恢复固定配时 失败"
);
}
Document
postResult
=
DocumentHelper
.
parseText
(
post
);
String
result
=
postResult
.
selectSingleNode
(
HttpConstants
.
SYSTEMSCRIPTION_RESULT
).
getText
();
...
...
signal-utc-hisense-service/src/main/java/net/wanji/utc/hisense/service/impl/StaticInfoServiceImpl.java
View file @
44b1bd2b
...
...
@@ -821,7 +821,7 @@ public class StaticInfoServiceImpl implements StaticInfoService {
//给海信发送http请求
String
post
=
OkHttpClientUtil
.
xmlPost
(
hisenseUrl
,
document
.
asXML
());
if
(
StringUtils
.
isBlank
(
post
))
{
log
.
error
(
"请求 5.15.根据方案号获取配时方案环图 失败"
);
log
.
error
(
"请求 5.15.根据方案号获取配时方案环图 失败
,
"
);
return
null
;
}
Document
postResult
=
DocumentHelper
.
parseText
(
post
);
...
...
signal-utc-service/src/main/java/net/wanji/utc/service/control/impl/ControlCommandStrategyServiceImpl.java
View file @
44b1bd2b
package
net
.
wanji
.
utc
.
service
.
control
.
impl
;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONObject
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
lombok.RequiredArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
net.wanji.common.framework.rest.JsonViewObject
;
...
...
@@ -65,6 +67,7 @@ public class ControlCommandStrategyServiceImpl implements ControlCommandStrategy
private
final
CrossLightsMapper
crossLightsMapper
;
private
final
CrossPhaseLightsMapper
crossPhaseLightsMapper
;
private
final
SignalCommandLogPOMapper
signalCommandLogPOMapper
;
private
final
SignalCommandPOMapper
signalCommandPOMapper
;
private
final
CrossPhaseDirTurnCache
crossPhaseDirTurnCache
;
private
final
CrossSchemePhaseTimeCountCache
crossSchemePhaseTimeCountCache
;
...
...
@@ -287,7 +290,6 @@ public class ControlCommandStrategyServiceImpl implements ControlCommandStrategy
* @Param jsonObject 参数
* @return void
**/
public
void
insertCommandLog
(
String
queryTime
,
JsonViewObject
jsonViewObject
,
JSONObject
jsonObject
,
int
commandType
){
SignalCommandLogPO
signalCommandLogPO
=
new
SignalCommandLogPO
();
signalCommandLogPO
.
setCrossId
(
jsonObject
.
getString
(
"crossId"
));
...
...
@@ -313,12 +315,21 @@ public class ControlCommandStrategyServiceImpl implements ControlCommandStrategy
String
runMode
=
lightsStatusVO2
.
getRunMode
();
String
lampTime
=
lightsStatusVO2
.
getTimeStamp
();
//时间转换
lampTime
=
LocalDateTimeUtil
.
formatTimeStamp
(
Long
.
valueOf
(
lampTime
),
LocalDateTimeUtil
.
TIMEFORMATTER
);
//
lampTime = LocalDateTimeUtil.formatTimeStamp(Long.valueOf(lampTime), LocalDateTimeUtil.TIMEFORMATTER);
signalCommandLogPO
.
setRunMode
(
runMode
);
signalCommandLogPO
.
setLampTime
(
lampTime
);
}
}
signalCommandLogPOMapper
.
insert
(
signalCommandLogPO
);
//排除查询环图接口
if
(
commandType
!=
10
){
LambdaQueryWrapper
<
SignalCommandPO
>
lambdaQueryWrapper
=
new
LambdaQueryWrapper
<>();
lambdaQueryWrapper
.
eq
(
SignalCommandPO:
:
getCrossId
,
jsonObject
.
getString
(
"crossId"
));
signalCommandPOMapper
.
delete
(
lambdaQueryWrapper
);
SignalCommandPO
signalCommandPO
=
new
SignalCommandPO
();
BeanUtil
.
copyProperties
(
signalCommandLogPO
,
signalCommandPO
);
signalCommandPOMapper
.
insert
(
signalCommandPO
);
}
}
@Override
...
...
signal-utc-service/src/main/java/net/wanji/utc/task/CommandFaildTask.java
0 → 100644
View file @
44b1bd2b
package
net
.
wanji
.
utc
.
task
;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONObject
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
lombok.extern.slf4j.Slf4j
;
import
net.wanji.common.framework.rest.JsonViewObject
;
import
net.wanji.common.utils.tool.LocalDateTimeUtil
;
import
net.wanji.databus.dao.entity.SignalCommandLogPO
;
import
net.wanji.databus.dao.entity.SignalCommandPO
;
import
net.wanji.databus.dao.mapper.SignalCommandLogPOMapper
;
import
net.wanji.databus.dao.mapper.SignalCommandPOMapper
;
import
net.wanji.databus.vo.ControlCommandVO
;
import
net.wanji.databus.vo.LightsStatusVO2
;
import
net.wanji.utc.cache.CrossInfoCache
;
import
net.wanji.utc.common.typeenum.BasicEnum
;
import
net.wanji.utc.service.control.ControlCommandService
;
import
net.wanji.utc.service.control.ControlCommandStrategyService
;
import
net.wanji.utc.util.StringUtils
;
import
org.springframework.scheduling.annotation.Scheduled
;
import
org.springframework.stereotype.Component
;
import
javax.annotation.Resource
;
import
java.util.List
;
import
java.util.concurrent.ConcurrentHashMap
;
/**
* 定时同步方案等静态信息
*
* @author zhouleilei
* @date 2024/12/30 14:01
*/
@Component
@Slf4j
@SuppressWarnings
(
"all"
)
public
class
CommandFaildTask
{
@Resource
private
SignalCommandPOMapper
signalCommandPOMapper
;
@Resource
private
ControlCommandStrategyService
controlCommandStrategyService
;
@Resource
(
name
=
"hkControlCommandService"
)
ControlCommandService
hkControlCommandService
;
@Resource
(
name
=
"wanJiControlCommandService"
)
ControlCommandService
wanJiControlCommandService
;
@Resource
private
CrossInfoCache
crossInfoCache
;
@Resource
private
SignalCommandLogPOMapper
signalCommandLogPOMapper
;
@Scheduled
(
cron
=
"0/5 * * * * ?"
)
public
void
commandFaildTask
()
throws
Exception
{
LambdaQueryWrapper
<
SignalCommandPO
>
lambdaQueryWrapper
=
new
LambdaQueryWrapper
<>();
lambdaQueryWrapper
.
eq
(
SignalCommandPO:
:
getCommandResult
,
2
);
List
<
SignalCommandPO
>
crossInfoPOList
=
signalCommandPOMapper
.
selectList
(
lambdaQueryWrapper
);
if
(
ObjectUtil
.
isNotEmpty
(
crossInfoPOList
))
{
for
(
SignalCommandPO
signalCommandPO
:
crossInfoPOList
)
{
String
crossId
=
signalCommandPO
.
getCrossId
();
Integer
commandType
=
signalCommandPO
.
getCommandType
();
Integer
updateCount
=
signalCommandPO
.
getUpdateCount
();
if
(
ObjectUtil
.
isNull
(
updateCount
)){
updateCount
=
0
;
}
//处理数据
handlerCommand
(
crossId
,
commandType
,
updateCount
);
}
}
}
/**
* @return void
* @Description 处理数据
* @Param crossId 路口编号
* @Param commandType 控制模式
**/
private
void
handlerCommand
(
String
crossId
,
Integer
commandType
,
int
updateCount
)
{
switch
(
commandType
)
{
//1-步进控制/恢复(公用);2-恢复时间表(公用);3-相位锁定/解锁(公用);4-临时方案下发(公用);5-下发命令失败,程序下发恢复指令;10-查询环图失败记录',
case
1
:
//恢复步进
recoverStepControlStrategy
(
crossId
,
updateCount
,
commandType
);
break
;
case
2
:
//恢复时间表
recoverScheduleStrategy
(
crossId
,
updateCount
,
commandType
);
break
;
case
3
:
//相位解锁
recoverLockControlStrategy
(
crossId
,
updateCount
,
commandType
);
break
;
case
4
:
//恢复 临时方案下发
recoverScheduleStrategy
(
crossId
,
updateCount
,
commandType
);
break
;
default
:
log
.
error
(
"commandType有误,crossId={},commandType={}"
,
crossId
,
commandType
);
break
;
}
}
/**
* @return void
* @Description 恢复步进
* @Param crossId
**/
private
void
recoverStepControlStrategy
(
String
crossId
,
int
updateCount
,
int
commandType
)
{
String
now
=
LocalDateTimeUtil
.
formatNow
(
LocalDateTimeUtil
.
TIMEFORMATTER
);
JsonViewObject
jsonViewObject
;
try
{
String
manufacturerIdCode
=
crossInfoCache
.
getManufacturerCodeByCrossId
(
crossId
);
if
(
StringUtils
.
equals
(
BasicEnum
.
ManufacturerEnum
.
HK
.
getCode
(),
manufacturerIdCode
))
{
jsonViewObject
=
hkControlCommandService
.
stepControl
(
crossId
,
0
,
0
);
}
else
{
jsonViewObject
=
wanJiControlCommandService
.
stepControl
(
crossId
,
0
,
0
);
}
}
catch
(
Exception
e
)
{
jsonViewObject
=
JsonViewObject
.
newInstance
().
fail
(
e
.
getMessage
());
}
JSONObject
jsonObject
=
new
JSONObject
();
jsonObject
.
put
(
"crossId"
,
crossId
);
jsonObject
.
put
(
"command"
,
0
);
jsonObject
.
put
(
"stepNum"
,
0
);
//插入命令操作日志
insertCommandLog
(
now
,
jsonViewObject
,
jsonObject
,
commandType
,
updateCount
);
}
/**
* @return void
* @Description 恢复时间表
* @Param crossId
**/
private
void
recoverScheduleStrategy
(
String
crossId
,
int
updateCount
,
int
commandType
)
{
try
{
String
now
=
LocalDateTimeUtil
.
formatNow
(
LocalDateTimeUtil
.
TIMEFORMATTER
);
JsonViewObject
jsonViewObject
=
JsonViewObject
.
newInstance
();
String
manufacturerIdCode
=
crossInfoCache
.
getManufacturerCodeByCrossId
(
crossId
);
if
(
StringUtils
.
equals
(
BasicEnum
.
ManufacturerEnum
.
HK
.
getCode
(),
manufacturerIdCode
))
{
jsonViewObject
=
hkControlCommandService
.
recoverSchedule
(
crossId
);
}
else
{
jsonViewObject
=
wanJiControlCommandService
.
recoverSchedule
(
crossId
);
}
JSONObject
jsonObject
=
new
JSONObject
();
jsonObject
.
put
(
"crossId"
,
crossId
);
//插入命令操作日志
insertCommandLog
(
now
,
jsonViewObject
,
jsonObject
,
commandType
,
updateCount
);
}
catch
(
Exception
e
)
{
log
.
error
(
"定时任务 恢复时间表出错,crossId={}"
,
crossId
);
throw
new
RuntimeException
(
e
);
}
}
/**
* @return void
* @Description 相位解锁
* @Param crossId
**/
private
void
recoverLockControlStrategy
(
String
crossId
,
int
updateCount
,
int
commandType
)
{
String
now
=
LocalDateTimeUtil
.
formatNow
(
LocalDateTimeUtil
.
TIMEFORMATTER
);
JsonViewObject
jsonViewObject
;
ControlCommandVO
commandVO
=
new
ControlCommandVO
();
commandVO
.
setCrossCode
(
crossId
);
commandVO
.
setCommand
(
0
);
commandVO
.
setDuration
(
0
);
try
{
String
manufacturerIdCode
=
crossInfoCache
.
getManufacturerCodeByCrossId
(
commandVO
.
getCrossCode
());
if
(
StringUtils
.
equals
(
BasicEnum
.
ManufacturerEnum
.
HK
.
getCode
(),
manufacturerIdCode
))
{
jsonViewObject
=
hkControlCommandService
.
lockControl
(
commandVO
);
}
else
{
jsonViewObject
=
wanJiControlCommandService
.
lockControl
(
commandVO
);
}
}
catch
(
Exception
e
)
{
jsonViewObject
=
JsonViewObject
.
newInstance
().
fail
(
e
.
getMessage
());
}
JSONObject
jsonObject
=
JSONObject
.
parseObject
(
JSON
.
toJSONString
(
commandVO
));
jsonObject
.
put
(
"crossId"
,
commandVO
.
getCrossCode
());
//插入命令操作日志
insertCommandLog
(
now
,
jsonViewObject
,
jsonObject
,
commandType
,
updateCount
);
}
/**
* @return void
* @Description 插入命令日志
* @Param nowTime 请求时间戳
* @Param jsonViewObject 操作结果
* @Param jsonObject 参数
**/
public
void
insertCommandLog
(
String
queryTime
,
JsonViewObject
jsonViewObject
,
JSONObject
jsonObject
,
int
commandType
,
int
updateCount
)
{
updateCount
=
updateCount
+
1
;
SignalCommandLogPO
signalCommandLogPO
=
new
SignalCommandLogPO
();
signalCommandLogPO
.
setCrossId
(
jsonObject
.
getString
(
"crossId"
));
signalCommandLogPO
.
setDataInfo
(
jsonObject
.
toJSONString
());
signalCommandLogPO
.
setCommandType
(
5
);
signalCommandLogPO
.
setQueryTime
(
queryTime
);
signalCommandLogPO
.
setUpdateCount
(
updateCount
);
Integer
code
=
jsonViewObject
.
getCode
();
String
ip
=
"localhost"
;
signalCommandLogPO
.
setIp
(
ip
);
if
(
code
==
200
)
{
signalCommandLogPO
.
setCommandResult
(
1
);
signalCommandLogPO
.
setUpdateCount
(
0
);
}
else
{
if
(
updateCount
>=
24
){
//如果两分钟更新失败,则将状态设置为3
signalCommandLogPO
.
setCommandResult
(
3
);
}
else
{
signalCommandLogPO
.
setCommandResult
(
2
);
}
}
signalCommandLogPO
.
setResultMessage
(
jsonViewObject
.
getMessage
());
ConcurrentHashMap
<
String
,
List
<
LightsStatusVO2
>>
produceListMap
=
SignalStatusTask
.
produceListMap
;
if
(!
produceListMap
.
isEmpty
())
{
List
<
LightsStatusVO2
>
list
=
produceListMap
.
get
(
jsonObject
.
get
(
"crossId"
));
if
(
ObjectUtil
.
isNotEmpty
(
list
))
{
LightsStatusVO2
lightsStatusVO2
=
list
.
get
(
0
);
String
runMode
=
lightsStatusVO2
.
getRunMode
();
String
lampTime
=
lightsStatusVO2
.
getTimeStamp
();
//时间转换
// lampTime = LocalDateTimeUtil.formatTimeStamp(Long.valueOf(lampTime), LocalDateTimeUtil.TIMEFORMATTER);
signalCommandLogPO
.
setRunMode
(
runMode
);
signalCommandLogPO
.
setLampTime
(
lampTime
);
}
}
//插入日志表
signalCommandLogPOMapper
.
insert
(
signalCommandLogPO
);
SignalCommandPO
signalCommandPO
=
new
SignalCommandPO
();
BeanUtil
.
copyProperties
(
signalCommandLogPO
,
signalCommandPO
);
signalCommandPO
.
setCommandType
(
commandType
);
//更新状态表
LambdaQueryWrapper
<
SignalCommandPO
>
lambdaQueryWrapper
=
new
LambdaQueryWrapper
<>();
lambdaQueryWrapper
.
eq
(
SignalCommandPO:
:
getCrossId
,
jsonObject
.
getString
(
"crossId"
));
signalCommandPOMapper
.
update
(
signalCommandPO
,
lambdaQueryWrapper
);
}
}
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