mirror of
https://codeup.aliyun.com/64f7d6b8ce01efaafef1e678/coal/coal.git
synced 2026-01-25 07:46:40 +08:00
优化衡器宝数据监听
This commit is contained in:
@@ -138,11 +138,16 @@ public class WeightListener {
|
||||
ArrayNode nodes = (ArrayNode) jsonNode;
|
||||
var flowNumbers =
|
||||
StreamSupport.stream(nodes.spliterator(), false)
|
||||
.map(x -> x.get("流水号").asText())
|
||||
.map(x -> x.get("序号") + ":" + x.get("流水号").asText() + ":" + x.get("更新时间").asText())
|
||||
.toList();
|
||||
logEntity.setContent(StringUtils.join(flowNumbers, ","));
|
||||
|
||||
Map<String, WeightDeviceDataEntity> flowNumberMap =
|
||||
var seqNumbers =
|
||||
StreamSupport.stream(nodes.spliterator(), false)
|
||||
.map(x -> x.get("序号").asInt())
|
||||
.collect(Collectors.toList());
|
||||
|
||||
Map<String, WeightDeviceDataEntity> seqNumberMap =
|
||||
weightDeviceDataService
|
||||
.findAll(
|
||||
(Specification<WeightDeviceDataEntity>)
|
||||
@@ -152,7 +157,7 @@ public class WeightListener {
|
||||
root.get("device")
|
||||
.get("id"),
|
||||
device.getId()),
|
||||
root.get("flowNumber").in(flowNumbers)))
|
||||
root.get("sequenceNumber").in(seqNumbers)))
|
||||
.stream()
|
||||
.collect(
|
||||
Collectors.toMap(
|
||||
@@ -162,9 +167,11 @@ public class WeightListener {
|
||||
x -> {
|
||||
WeightDeviceDataEntity deviceData = new WeightDeviceDataEntity();
|
||||
var flowNumber = x.get("流水号").asText();
|
||||
if (flowNumberMap.containsKey(flowNumber)) {
|
||||
log.info("data already exists: {} {}", flowNumber, device.getId());
|
||||
deviceData = flowNumberMap.get(flowNumber);
|
||||
var seqNumber = x.get("序号").asText();
|
||||
log.info("data from weight20: {} {} {} {} ", seqNumber, flowNumber, x.get("更新时间").asText() ,device.getId());
|
||||
if (seqNumberMap.containsKey(seqNumber)) {
|
||||
log.info("data already exists: {} {} {}", seqNumber, flowNumber, device.getId());
|
||||
deviceData = seqNumberMap.get(seqNumber);
|
||||
}
|
||||
// log.info(x.toPrettyString());
|
||||
|
||||
|
||||
Reference in New Issue
Block a user