From 4dbab0c9584c923f12c7478131f0996dbb3bb7fe Mon Sep 17 00:00:00 2001 From: zhuguifei <zhuguifei@zhuguifeideiMac.local> Date: 星期一, 25 八月 2025 13:45:31 +0800 Subject: [PATCH] Merge branch 'master' of http://lanpucloud.cn:1111/r/herb --- jeecg-module-dry/jeecg-module-dry-biz/src/main/java/org/jeecg/modules/dry/service/impl/DryRealTimeDataServiceImpl.java | 37 +++++++++++++++++++++++++++++++++++++ 1 files changed, 37 insertions(+), 0 deletions(-) diff --git a/jeecg-module-dry/jeecg-module-dry-biz/src/main/java/org/jeecg/modules/dry/service/impl/DryRealTimeDataServiceImpl.java b/jeecg-module-dry/jeecg-module-dry-biz/src/main/java/org/jeecg/modules/dry/service/impl/DryRealTimeDataServiceImpl.java index 7812901..17a0360 100755 --- a/jeecg-module-dry/jeecg-module-dry-biz/src/main/java/org/jeecg/modules/dry/service/impl/DryRealTimeDataServiceImpl.java +++ b/jeecg-module-dry/jeecg-module-dry-biz/src/main/java/org/jeecg/modules/dry/service/impl/DryRealTimeDataServiceImpl.java @@ -35,6 +35,8 @@ import org.springframework.transaction.annotation.Transactional; import java.text.DecimalFormat; +import java.time.LocalDateTime; +import java.time.ZoneId; import java.util.*; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.locks.ReentrantLock; @@ -230,6 +232,15 @@ orderVo.setTrendVo(trendVo); orderVo.getBellowsTemp().put(realTimeDataVo.getTime3(), realTimeDataVo.getTemp2()); + if (realTimeDataParentVo.getFault() != null) { + if (realTimeDataParentVo.getFault().getError() != null) { + orderVo.setFault(realTimeDataParentVo.getFault().getError()); + } + if (realTimeDataParentVo.getFault().getWarning() != null) { + orderVo.setWarning(realTimeDataParentVo.getFault().getWarning()); + } + } + // 2.3 鏇存柊鍒皉edis缂撳瓨 redisUtil.hset(CacheConstants.RedisKeyEnum.WORK_ORDER.getCode(), realTimeDataVo.getTenantid() + "_" + realTimeDataVo.getMachineid(), orderVo, 60 * 60); @@ -418,6 +429,29 @@ ReentrantLock orderLock = getLock(realTimeDataVo.getTenantid() + "", "order"); orderLock.lock(); try { + //鏍规嵁绉熸埛id 鍜� 鑽潗id 妫�鏌ユ渶杩戞槸鍚﹀瓨鍦ㄥ伐鍗� TODO 楠岃瘉 + LambdaQueryWrapper<DryOrder> queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(DryOrder::getHerbId, herbFormula.getId()); + queryWrapper.eq(DryOrder::getTenantId, realTimeDataVo.getTenantid()); + queryWrapper.orderByDesc(DryOrder::getOrderTime); + queryWrapper.last("LIMIT 1"); + // 1 鏌ヨ鏁版嵁搴� + DryOrder one = dryOrderService.getOne(queryWrapper); + if(one!=null){ + Date orderDate = one.getOrderTime(); + //30S鍐呬笉鍏佽鏂板缓宸ュ崟锛岄伩鍏嶉噸澶� + LocalDateTime orderTime = orderDate.toInstant() + .atZone(ZoneId.systemDefault()) + .toLocalDateTime(); + + LocalDateTime now = LocalDateTime.now(); + long secondsBetween = java.time.Duration.between(orderTime, now).getSeconds(); + boolean b = secondsBetween <= 30; + if(b){ + return BeanUtil.toBean(one, DryOrderVo.class); + } + } + // 鍒涘缓鏂板伐鍗� orderVo = new DryOrderVo(realTimeDataVo); orderVo.setHerbId(herbFormula.getId()); @@ -482,7 +516,10 @@ LambdaQueryWrapper<DryHerbFormula> queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(DryHerbFormula::getTenantId, realTimeDataVo.getTenantid()); queryWrapper.eq(DryHerbFormula::getName, realTimeDataVo.getName()); + queryWrapper.orderByDesc(DryHerbFormula::getCreateTime); + queryWrapper.last("LIMIT 1"); DryHerbFormula one = dryHerbFormulaService.getOne(queryWrapper); + if (one == null) { one = new DryHerbFormula(realTimeDataVo); DryEquipment dryEquipment = equipmentService.selectByTenantIdEquipmentId(realTimeDataVo.getTenantid() + "", realTimeDataVo.getMachineid()); -- Gitblit v1.9.3