瀏覽代碼

fix 将低电量改为低输注报警

A17404李放 3 年之前
父節點
當前提交
6688a6e293

+ 6 - 2
nb-system/src/main/java/com/nb/bus/hospital/config/HospitalFunctionExtraConfigHandler.java

@@ -2,12 +2,14 @@ package com.nb.bus.hospital.config;
 
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.nb.bus.entity.BusDeviceAlarmEntity;
+import com.nb.bus.enums.FlowStatusEnum;
 import com.nb.bus.hospital.config.bean.FunctionExtraConfig;
 import com.nb.bus.entity.BusDeviceRunningEntity;
 import com.nb.bus.entity.BusInfusionHistoryEntity;
 import com.nb.bus.enums.DeviceStatusEnum;
 import com.nb.bus.enums.DeviceTypeEnum;
 import com.nb.bus.hospital.enums.ConfigHandlerEnums;
+import com.nb.bus.registry.constant.DeviceKeyConstant;
 import com.nb.bus.registry.device.DeviceRegistry;
 import com.nb.bus.service.LocalBusDeviceAlarmService;
 import com.nb.bus.service.LocalBusInfusionHistoryService;
@@ -210,9 +212,11 @@ public class HospitalFunctionExtraConfigHandler  extends  AbstractHospitalConfig
             return;
         }
         infusionHistoryService.update(new UpdateWrapper<BusInfusionHistoryEntity>().lambda().eq(BusInfusionHistoryEntity::getId, infusionHistory.getId())
-                .set(BusInfusionHistoryEntity::getWarnLowBattery, true));
+                .set(BusInfusionHistoryEntity::getWarnFlow, FlowStatusEnum.Lowest));
         //报警/提醒缓存重置
-        deviceRegistry.getOperator(deviceId).setAlarmOrWarn(null);
+        deviceRegistry.getOperator(deviceId)
+                .getCache()
+                .remove(DeviceKeyConstant.ALARM);
         //低输注报警
         Date uploadTime=new Date(source.getTimestamp().getTime()+source.getUnit().toMillis(source.getTimeout()));
         BusDeviceAlarmEntity alarm = BusDeviceAlarmEntity.lowInfusion(source.getDeviceId(),source.getInfusionId(),source.getHistoryId(),source.getTenantId(),uploadTime);

+ 5 - 3
nb-system/src/main/java/com/nb/bus/registry/Operator.java

@@ -2,7 +2,9 @@ package com.nb.bus.registry;
 
 
 import com.nb.common.cache.value.Value;
-import org.redisson.api.RMap;
+import org.redisson.api.RMapCache;
+
+import java.util.concurrent.TimeUnit;
 
 /**
  * @author lifang
@@ -18,7 +20,7 @@ public interface Operator {
      */
     long DEFAULT_TTL=2;
 
-    RMap<String, Value> getCache();
+    RMapCache<String, Value> getCache();
 
     default Value wrapperValue(Object value){
         return Value.simple(value);
@@ -36,6 +38,6 @@ public interface Operator {
     }
 
     default void put(String key,Value value){
-        getCache().put(key,value);
+        getCache().put(key,value,DEFAULT_TTL,TimeUnit.HOURS);
     }
 }

+ 4 - 2
nb-system/src/main/java/com/nb/bus/registry/device/ClusterDeviceOperator.java

@@ -12,6 +12,8 @@ import com.nb.bus.service.LocalBusInfusionHistoryService;
 import com.nb.common.cache.value.Value;
 import com.nb.common.util.RedissonUtil;
 import org.redisson.api.RMap;
+import org.redisson.api.RMapCache;
+
 import java.math.BigDecimal;
 import java.util.Date;
 
@@ -25,7 +27,7 @@ import java.util.Date;
 public class ClusterDeviceOperator implements DeviceOperator {
 
     private final String deviceId;
-    private final RMap<String, Value> mapCache;
+    private final RMapCache<String, Value> mapCache;
     private final LocalBusDeviceService deviceService;
     private final LocalBusInfusionHistoryService infusionHistoryService;
 
@@ -38,7 +40,7 @@ public class ClusterDeviceOperator implements DeviceOperator {
     }
 
     @Override
-    public RMap<String, Value> getCache() {
+    public RMapCache<String, Value> getCache() {
         return mapCache;
     }
 

+ 3 - 2
nb-system/src/main/java/com/nb/bus/registry/patient/ClusterPatientOperator.java

@@ -11,6 +11,7 @@ import com.nb.bus.service.LocalBusPatientService;
 import com.nb.common.cache.value.Value;
 import com.nb.common.util.RedissonUtil;
 import org.redisson.api.RMap;
+import org.redisson.api.RMapCache;
 
 /**
  * @author lifang
@@ -22,7 +23,7 @@ import org.redisson.api.RMap;
 public class ClusterPatientOperator implements PatientOperator {
     private final String patientCode;
     private final String hospitalId;
-    private final RMap<String, Value> mapCache;
+    private final RMapCache<String, Value> mapCache;
     private final LocalBusPatientService patientService;
     private final LocalBusInfusionHistoryService infusionHistoryService;
 
@@ -36,7 +37,7 @@ public class ClusterPatientOperator implements PatientOperator {
 
 
     @Override
-    public RMap<String, Value> getCache() {
+    public RMapCache<String, Value> getCache() {
         return mapCache;
     }
 

+ 1 - 0
nb-system/src/main/java/com/nb/bus/websocket/listener/DeviceInfoListener.java

@@ -174,6 +174,7 @@ public class DeviceInfoListener {
                 && Boolean.FALSE.equals(device.isNewInfusion())){
             BigDecimal lastContinueDose = deviceOperator.getContinueDose();
             if(lastContinueDose==null){
+                device.setWarnFlow(null);
                 log.warn("设备【{}】流速在缓存中不存在",device.getContinueDose());
             }else {
                 if(CompareUtil.compare(device.getContinueDose(),lastContinueDose)>0){