瀏覽代碼

定时器

Newspaper 1 年之前
父節點
當前提交
11539431c6

+ 131 - 129
snowy-web-app/src/main/java/vip/xiaonuo/Timer/ProEnergyData.java

@@ -98,147 +98,149 @@ public class ProEnergyData implements CommonTimerTaskRunner {
                     .eq(WarningRemind::getWarningTypeId, envWarning.getId())
                     .eq(WarningRemind::getOrgId, orgId).eq(WarningRemind::getUnitId, pigpenId));
 
+
             if (ObjectUtil.isNotEmpty(warningRemind)) {
-                if (warningRemind.getTodayNoRemind() != 1) {
-                    EnergyThreshold energyThreshold = energyThresholdMapper.selectOne(new QueryWrapper<EnergyThreshold>().lambda().eq(EnergyThreshold::getOrgId, orgId).eq(EnergyThreshold::getUnitId, pigpenId).eq(EnergyThreshold::getIsEnable, 1));
-                    if (ObjectUtil.isNotEmpty(energyThreshold)) {
-                        BigDecimal waterLower = energyThreshold.getWaterLower();
-                        if (water.compareTo(waterLower) < 0) {
-                            WarningInfo warningInfo = new WarningInfo();
-                            warningInfo.setWarningContent("用水" + water + "吨低于阈值");
-                            warningInfo.setUnitId(pigpenId);
-                            warningInfo.setWarningTime(now);
-                            warningInfo.setOrgId(orgId);
-                            warningInfo.setWarningTypeId(envWarning.getId());
-                            WarningManager warningManager = warningManagerMapper.selectOne(new QueryWrapper<WarningManager>().lambda().eq(WarningManager::getOrgId, orgId).eq(WarningManager::getType, 1));
-                            if (ObjectUtil.isNotEmpty(warningManager)){
-                                warningInfo.setWarningNotifierId(warningManager.getSecondManagerId());
-                            }
-                            warningInfoMapper.insert(warningInfo);
-                            this.generateInspection(warningManager,warningInfo,orgId);
-                        }
-                        BigDecimal waterUpper = energyThreshold.getWaterUpper();
-                        if (water.compareTo(waterUpper) > 0) {
-                            WarningInfo warningInfo = new WarningInfo();
-                            warningInfo.setWarningContent("用水" + water + "吨高于阈值");
-                            warningInfo.setUnitId(pigpenId);
-                            warningInfo.setWarningTime(now);
-                            warningInfo.setOrgId(orgId);
-                            warningInfo.setWarningTypeId(envWarning.getId());
-                            WarningManager warningManager = warningManagerMapper.selectOne(new QueryWrapper<WarningManager>().lambda().eq(WarningManager::getOrgId, orgId).eq(WarningManager::getType, 1));
-                            if (ObjectUtil.isNotEmpty(warningManager)){
-                                warningInfo.setWarningNotifierId(warningManager.getSecondManagerId());
-                            }
-                            warningInfoMapper.insert(warningInfo);
-                            this.generateInspection(warningManager,warningInfo,orgId);
-                        }
-                        BigDecimal electricityLower = energyThreshold.getElectricityLower();
-                        if (ele.compareTo(electricityLower) < 0) {
-                            WarningInfo warningInfo = new WarningInfo();
-                            warningInfo.setWarningContent("用电" + ele + "kw·h低于阈值");
-                            warningInfo.setUnitId(pigpenId);
-                            warningInfo.setWarningTime(now);
-                            warningInfo.setOrgId(orgId);
-                            warningInfo.setWarningTypeId(envWarning.getId());
-                            WarningManager warningManager = warningManagerMapper.selectOne(new QueryWrapper<WarningManager>().lambda().eq(WarningManager::getOrgId, orgId).eq(WarningManager::getType, 1));
-                            if (ObjectUtil.isNotEmpty(warningManager)){
-                                warningInfo.setWarningNotifierId(warningManager.getSecondManagerId());
-                            }
-                            warningInfoMapper.insert(warningInfo);
-                            this.generateInspection(warningManager,warningInfo,orgId);
-                        }
-                        BigDecimal electricityUpper = energyThreshold.getElectricityUpper();
-                        if (ele.compareTo(electricityUpper) > 0) {
-                            WarningInfo warningInfo = new WarningInfo();
-                            warningInfo.setWarningContent("用电" + ele + "kw·h高于阈值");
-                            warningInfo.setUnitId(pigpenId);
-                            warningInfo.setWarningTime(now);
-                            warningInfo.setOrgId(orgId);
-                            warningInfo.setWarningTypeId(envWarning.getId());
-                            WarningManager warningManager = warningManagerMapper.selectOne(new QueryWrapper<WarningManager>().lambda().eq(WarningManager::getOrgId, orgId).eq(WarningManager::getType, 1));
-                            if (ObjectUtil.isNotEmpty(warningManager)){
-                                warningInfo.setWarningNotifierId(warningManager.getSecondManagerId());
-                            }
-                            warningInfoMapper.insert(warningInfo);
-                            this.generateInspection(warningManager,warningInfo,orgId);
-                        }
-                        BigDecimal sevenDayEleTotal = electricityMapper.getSevenDayTotal(orgId, pigpenId);
-                        BigDecimal sevenDayWaterTotal = waterMapper.getSevenDayTotal(orgId, pigpenId);
-
-                        BigDecimal sevenDayWaterLower = energyThreshold.getSevenDayWaterLower();
-                        if (sevenDayWaterTotal.compareTo(sevenDayWaterLower) < 0) {
-                            WarningInfo warningInfo = new WarningInfo();
-                            warningInfo.setWarningContent("七日用水" + sevenDayWaterTotal + "吨低于阈值");
-                            warningInfo.setUnitId(pigpenId);
-                            warningInfo.setWarningTime(now);
-                            warningInfo.setOrgId(orgId);
-                            warningInfo.setWarningTypeId(envWarning.getId());
-                            WarningManager warningManager = warningManagerMapper.selectOne(new QueryWrapper<WarningManager>().lambda().eq(WarningManager::getOrgId, orgId).eq(WarningManager::getType, 1));
-                            if (ObjectUtil.isNotEmpty(warningManager)){
-                                warningInfo.setWarningNotifierId(warningManager.getSecondManagerId());
-                            }
-                            warningInfoMapper.insert(warningInfo);
-                            this.generateInspection(warningManager,warningInfo,orgId);
-                        }
-                        BigDecimal sevenDayWaterUpper = energyThreshold.getSevenDayWaterUpper();
-                        if (sevenDayWaterTotal.compareTo(sevenDayWaterUpper) > 0) {
-                            WarningInfo warningInfo = new WarningInfo();
-                            warningInfo.setWarningContent("七日用水" + sevenDayWaterTotal + "吨高于阈值");
-                            warningInfo.setUnitId(pigpenId);
-                            warningInfo.setWarningTime(now);
-                            warningInfo.setOrgId(orgId);
-                            warningInfo.setWarningTypeId(envWarning.getId());
-                            WarningManager warningManager = warningManagerMapper.selectOne(new QueryWrapper<WarningManager>().lambda().eq(WarningManager::getOrgId, orgId).eq(WarningManager::getType, 1));
-                            if (ObjectUtil.isNotEmpty(warningManager)){
-                                warningInfo.setWarningNotifierId(warningManager.getSecondManagerId());
-                            }
-                            warningInfoMapper.insert(warningInfo);
-                            this.generateInspection(warningManager,warningInfo,orgId);
-                        }
-                        BigDecimal sevenDayElectricityLower = energyThreshold.getSevenDayElectricityLower();
-                        if (sevenDayEleTotal.compareTo(sevenDayElectricityLower) < 0) {
-                            WarningInfo warningInfo = new WarningInfo();
-                            warningInfo.setWarningContent("七日用电" + sevenDayEleTotal + "kw·h低于阈值");
-                            warningInfo.setUnitId(pigpenId);
-                            warningInfo.setWarningTime(now);
-                            warningInfo.setOrgId(orgId);
-                            warningInfo.setWarningTypeId(envWarning.getId());
-                            WarningManager warningManager = warningManagerMapper.selectOne(new QueryWrapper<WarningManager>().lambda().eq(WarningManager::getOrgId, orgId).eq(WarningManager::getType, 1));
-                            if (ObjectUtil.isNotEmpty(warningManager)){
-                                warningInfo.setWarningNotifierId(warningManager.getSecondManagerId());
-                            }
-                            warningInfoMapper.insert(warningInfo);
-                            this.generateInspection(warningManager,warningInfo,orgId);
-                        }
-
-                        BigDecimal sevenDayElectricityUpper = energyThreshold.getSevenDayElectricityUpper();
-                        if (sevenDayEleTotal.compareTo(sevenDayElectricityUpper) > 0) {
-                            WarningInfo warningInfo = new WarningInfo();
-                            warningInfo.setWarningContent("七日用电" + sevenDayEleTotal + "kw·h高于阈值");
-                            warningInfo.setUnitId(pigpenId);
-                            warningInfo.setWarningTime(now);
-                            warningInfo.setOrgId(orgId);
-                            warningInfo.setWarningTypeId(envWarning.getId());
-                            WarningManager warningManager = warningManagerMapper.selectOne(new QueryWrapper<WarningManager>().lambda().eq(WarningManager::getOrgId, orgId).eq(WarningManager::getType, 1));
-                            if (ObjectUtil.isNotEmpty(warningManager)){
-                                warningInfo.setWarningNotifierId(warningManager.getSecondManagerId());
-                            }
-                            warningInfoMapper.insert(warningInfo);
-                            this.generateInspection(warningManager,warningInfo,orgId);
-                        }
+                if (warningRemind.getTodayNoRemind() == 1) {
+                    continue;
+                }
+            }
 
+            EnergyThreshold energyThreshold = energyThresholdMapper.selectOne(new QueryWrapper<EnergyThreshold>().lambda().eq(EnergyThreshold::getOrgId, orgId).eq(EnergyThreshold::getUnitId, pigpenId).eq(EnergyThreshold::getIsEnable, 1));
+            if (ObjectUtil.isNotEmpty(energyThreshold)) {
+                BigDecimal waterLower = energyThreshold.getWaterLower();
+                if (water.compareTo(waterLower) < 0) {
+                    WarningInfo warningInfo = new WarningInfo();
+                    warningInfo.setWarningContent("用水" + water + "吨低于阈值");
+                    warningInfo.setUnitId(pigpenId);
+                    warningInfo.setWarningTime(now);
+                    warningInfo.setOrgId(orgId);
+                    warningInfo.setWarningTypeId(envWarning.getId());
+                    WarningManager warningManager = warningManagerMapper.selectOne(new QueryWrapper<WarningManager>().lambda().eq(WarningManager::getOrgId, orgId).eq(WarningManager::getType, 1));
+                    if (ObjectUtil.isNotEmpty(warningManager)) {
+                        warningInfo.setWarningNotifierId(warningManager.getSecondManagerId());
+                    }
+                    warningInfoMapper.insert(warningInfo);
+                    this.generateInspection(warningManager, warningInfo, orgId);
+                }
+                BigDecimal waterUpper = energyThreshold.getWaterUpper();
+                if (water.compareTo(waterUpper) > 0) {
+                    WarningInfo warningInfo = new WarningInfo();
+                    warningInfo.setWarningContent("用水" + water + "吨高于阈值");
+                    warningInfo.setUnitId(pigpenId);
+                    warningInfo.setWarningTime(now);
+                    warningInfo.setOrgId(orgId);
+                    warningInfo.setWarningTypeId(envWarning.getId());
+                    WarningManager warningManager = warningManagerMapper.selectOne(new QueryWrapper<WarningManager>().lambda().eq(WarningManager::getOrgId, orgId).eq(WarningManager::getType, 1));
+                    if (ObjectUtil.isNotEmpty(warningManager)) {
+                        warningInfo.setWarningNotifierId(warningManager.getSecondManagerId());
+                    }
+                    warningInfoMapper.insert(warningInfo);
+                    this.generateInspection(warningManager, warningInfo, orgId);
+                }
+                BigDecimal electricityLower = energyThreshold.getElectricityLower();
+                if (ele.compareTo(electricityLower) < 0) {
+                    WarningInfo warningInfo = new WarningInfo();
+                    warningInfo.setWarningContent("用电" + ele + "kw·h低于阈值");
+                    warningInfo.setUnitId(pigpenId);
+                    warningInfo.setWarningTime(now);
+                    warningInfo.setOrgId(orgId);
+                    warningInfo.setWarningTypeId(envWarning.getId());
+                    WarningManager warningManager = warningManagerMapper.selectOne(new QueryWrapper<WarningManager>().lambda().eq(WarningManager::getOrgId, orgId).eq(WarningManager::getType, 1));
+                    if (ObjectUtil.isNotEmpty(warningManager)) {
+                        warningInfo.setWarningNotifierId(warningManager.getSecondManagerId());
+                    }
+                    warningInfoMapper.insert(warningInfo);
+                    this.generateInspection(warningManager, warningInfo, orgId);
+                }
+                BigDecimal electricityUpper = energyThreshold.getElectricityUpper();
+                if (ele.compareTo(electricityUpper) > 0) {
+                    WarningInfo warningInfo = new WarningInfo();
+                    warningInfo.setWarningContent("用电" + ele + "kw·h高于阈值");
+                    warningInfo.setUnitId(pigpenId);
+                    warningInfo.setWarningTime(now);
+                    warningInfo.setOrgId(orgId);
+                    warningInfo.setWarningTypeId(envWarning.getId());
+                    WarningManager warningManager = warningManagerMapper.selectOne(new QueryWrapper<WarningManager>().lambda().eq(WarningManager::getOrgId, orgId).eq(WarningManager::getType, 1));
+                    if (ObjectUtil.isNotEmpty(warningManager)) {
+                        warningInfo.setWarningNotifierId(warningManager.getSecondManagerId());
                     }
+                    warningInfoMapper.insert(warningInfo);
+                    this.generateInspection(warningManager, warningInfo, orgId);
+                }
+                BigDecimal sevenDayEleTotal = electricityMapper.getSevenDayTotal(orgId, pigpenId);
+                BigDecimal sevenDayWaterTotal = waterMapper.getSevenDayTotal(orgId, pigpenId);
+
+                BigDecimal sevenDayWaterLower = energyThreshold.getSevenDayWaterLower();
+                if (sevenDayWaterTotal.compareTo(sevenDayWaterLower) < 0) {
+                    WarningInfo warningInfo = new WarningInfo();
+                    warningInfo.setWarningContent("七日用水" + sevenDayWaterTotal + "吨低于阈值");
+                    warningInfo.setUnitId(pigpenId);
+                    warningInfo.setWarningTime(now);
+                    warningInfo.setOrgId(orgId);
+                    warningInfo.setWarningTypeId(envWarning.getId());
+                    WarningManager warningManager = warningManagerMapper.selectOne(new QueryWrapper<WarningManager>().lambda().eq(WarningManager::getOrgId, orgId).eq(WarningManager::getType, 1));
+                    if (ObjectUtil.isNotEmpty(warningManager)) {
+                        warningInfo.setWarningNotifierId(warningManager.getSecondManagerId());
+                    }
+                    warningInfoMapper.insert(warningInfo);
+                    this.generateInspection(warningManager, warningInfo, orgId);
+                }
+                BigDecimal sevenDayWaterUpper = energyThreshold.getSevenDayWaterUpper();
+                if (sevenDayWaterTotal.compareTo(sevenDayWaterUpper) > 0) {
+                    WarningInfo warningInfo = new WarningInfo();
+                    warningInfo.setWarningContent("七日用水" + sevenDayWaterTotal + "吨高于阈值");
+                    warningInfo.setUnitId(pigpenId);
+                    warningInfo.setWarningTime(now);
+                    warningInfo.setOrgId(orgId);
+                    warningInfo.setWarningTypeId(envWarning.getId());
+                    WarningManager warningManager = warningManagerMapper.selectOne(new QueryWrapper<WarningManager>().lambda().eq(WarningManager::getOrgId, orgId).eq(WarningManager::getType, 1));
+                    if (ObjectUtil.isNotEmpty(warningManager)) {
+                        warningInfo.setWarningNotifierId(warningManager.getSecondManagerId());
+                    }
+                    warningInfoMapper.insert(warningInfo);
+                    this.generateInspection(warningManager, warningInfo, orgId);
+                }
+                BigDecimal sevenDayElectricityLower = energyThreshold.getSevenDayElectricityLower();
+                if (sevenDayEleTotal.compareTo(sevenDayElectricityLower) < 0) {
+                    WarningInfo warningInfo = new WarningInfo();
+                    warningInfo.setWarningContent("七日用电" + sevenDayEleTotal + "kw·h低于阈值");
+                    warningInfo.setUnitId(pigpenId);
+                    warningInfo.setWarningTime(now);
+                    warningInfo.setOrgId(orgId);
+                    warningInfo.setWarningTypeId(envWarning.getId());
+                    WarningManager warningManager = warningManagerMapper.selectOne(new QueryWrapper<WarningManager>().lambda().eq(WarningManager::getOrgId, orgId).eq(WarningManager::getType, 1));
+                    if (ObjectUtil.isNotEmpty(warningManager)) {
+                        warningInfo.setWarningNotifierId(warningManager.getSecondManagerId());
+                    }
+                    warningInfoMapper.insert(warningInfo);
+                    this.generateInspection(warningManager, warningInfo, orgId);
+                }
 
+                BigDecimal sevenDayElectricityUpper = energyThreshold.getSevenDayElectricityUpper();
+                if (sevenDayEleTotal.compareTo(sevenDayElectricityUpper) > 0) {
+                    WarningInfo warningInfo = new WarningInfo();
+                    warningInfo.setWarningContent("七日用电" + sevenDayEleTotal + "kw·h高于阈值");
+                    warningInfo.setUnitId(pigpenId);
+                    warningInfo.setWarningTime(now);
+                    warningInfo.setOrgId(orgId);
+                    warningInfo.setWarningTypeId(envWarning.getId());
+                    WarningManager warningManager = warningManagerMapper.selectOne(new QueryWrapper<WarningManager>().lambda().eq(WarningManager::getOrgId, orgId).eq(WarningManager::getType, 1));
+                    if (ObjectUtil.isNotEmpty(warningManager)) {
+                        warningInfo.setWarningNotifierId(warningManager.getSecondManagerId());
+                    }
+                    warningInfoMapper.insert(warningInfo);
+                    this.generateInspection(warningManager, warningInfo, orgId);
                 }
+
             }
 
 
         }
     }
 
-    private void generateInspection(WarningManager warningManager, WarningInfo warningInfo,String orgId){
+    private void generateInspection(WarningManager warningManager, WarningInfo warningInfo, String orgId) {
         TaskInspection taskInspection = new TaskInspection();
-        if (ObjectUtil.isNotEmpty(warningManager)){
+        if (ObjectUtil.isNotEmpty(warningManager)) {
             taskInspection.setNotifierId(warningManager.getSecondManagerId());
             taskInspection.setWarningId(warningInfo.getId());
             taskInspection.setOrgId(orgId);

+ 2 - 1
snowy-web-app/src/main/java/vip/xiaonuo/Timer/ProEnvData.java

@@ -132,7 +132,8 @@ public class ProEnvData implements CommonTimerTaskRunner {
             }
 
 
-            EnvThreshold envThreshold = envThresholdMapper.selectOne(new QueryWrapper<EnvThreshold>().lambda().eq(EnvThreshold::getUnitId, pigpenId));
+            EnvThreshold envThreshold = envThresholdMapper.selectOne(new QueryWrapper<EnvThreshold>().lambda()
+                    .eq(EnvThreshold::getUnitId, pigpenId));
             if (ObjectUtil.isNotEmpty(envThreshold)){
                 if (envThreshold.getIsEnable() == 0){
                     continue;

+ 99 - 97
snowy-web-app/src/main/java/vip/xiaonuo/Timer/ProFeedingData.java

@@ -109,111 +109,113 @@ public class ProFeedingData implements CommonTimerTaskRunner {
                     .eq(WarningRemind::getWarningTypeId, feedWarning.getId())
                     .eq(WarningRemind::getOrgId, orgId).eq(WarningRemind::getUnitId, unitId));
 
-            if (ObjectUtil.isNotEmpty(warningRemind)){
-                if (warningRemind.getTodayNoRemind() != 1){
-                    BigDecimal waterValue = new BigDecimal(water);
-                    BigDecimal feedingValue = new BigDecimal(feeding);
-
-                    FeedingThreshold fatFhreshold = feedingThresholdMapper.selectOne(new QueryWrapper<FeedingThreshold>().lambda().eq(FeedingThreshold::getOrgId, orgId).eq(FeedingThreshold::getThresholdType, 1));
-                    if (ObjectUtil.isNotEmpty(fatFhreshold)){
-                        BigDecimal feedLower,feedUpper,waterLower,waterUpper;
-                        if ("1".equals(feedingEnv.getType())) {
-                            feedLower = new BigDecimal(fatFhreshold.getFatFeedLower());
-                            feedUpper = new BigDecimal(fatFhreshold.getFatFeedUpper());
-                            waterLower = new BigDecimal(fatFhreshold.getFatWaterLower());
-                            waterUpper = new BigDecimal(fatFhreshold.getFatWaterUpper());
-                        }else {
-                            feedLower = new BigDecimal(fatFhreshold.getFeedLower());
-                            feedUpper = new BigDecimal(fatFhreshold.getFeedUpper());
-                            waterLower = new BigDecimal(fatFhreshold.getWaterLower());
-                            waterUpper = new BigDecimal(fatFhreshold.getWaterUpper());
-                        }
-
-                        if (feedingValue.compareTo(feedLower) < 0){
-                            WarningInfo warningInfo = new WarningInfo();
-                            warningInfo.setWarningTypeId(feedWarning.getId());
-                            warningInfo.setOrgId(orgId);
-                            warningInfo.setUnitId(unitId);
-                            warningInfo.setWarningTime(now);
-                            warningInfo.setWarningContent("耳标号"+feedingEnv.getEartagNum()+"采食"+feedValue+"Kg低于阈值");
-                            WarningManager warningManager = warningManagerMapper.selectOne(new QueryWrapper<WarningManager>().eq("type", 2).eq("org_id", orgId));
-                            if (ObjectUtil.isNotEmpty(warningManager)){
-                                warningInfo.setWarningNotifierId(warningManager.getSecondManagerId());
-                            }
-                            warningInfoMapper.insert(warningInfo);
-                            this.generateInspection(warningManager,warningInfo,orgId);
-                        }
-                        if (feedingValue.compareTo(feedUpper) > 0){
-                            WarningInfo warningInfo = new WarningInfo();
-                            warningInfo.setWarningTypeId(feedWarning.getId());
-                            warningInfo.setOrgId(orgId);
-                            warningInfo.setUnitId(unitId);
-                            warningInfo.setWarningTime(now);
-                            warningInfo.setWarningContent("耳标号"+feedingEnv.getEartagNum()+"采食"+feedValue+"Kg高于阈值");
-                            WarningManager warningManager = warningManagerMapper.selectOne(new QueryWrapper<WarningManager>().eq("type", 2).eq("org_id", orgId));
-                            if (ObjectUtil.isNotEmpty(warningManager)){
-                                warningInfo.setWarningNotifierId(warningManager.getSecondManagerId());
-                            }
-                            warningInfoMapper.insert(warningInfo);
-                            this.generateInspection(warningManager,warningInfo,orgId);
-                        }
-                        if (waterValue.compareTo(waterLower) < 0){
-                            WarningInfo warningInfo = new WarningInfo();
-                            warningInfo.setWarningTypeId(feedWarning.getId());
-                            warningInfo.setOrgId(orgId);
-                            warningInfo.setUnitId(unitId);
-                            warningInfo.setWarningTime(now);
-                            warningInfo.setWarningContent("耳标号"+feedingEnv.getEartagNum()+"饮水"+waterValue+"Kg低于阈值");
-                            WarningManager warningManager = warningManagerMapper.selectOne(new QueryWrapper<WarningManager>().eq("type", 2).eq("org_id", orgId));
-                            if (ObjectUtil.isNotEmpty(warningManager)){
-                                warningInfo.setWarningNotifierId(warningManager.getSecondManagerId());
-                            }
-                            warningInfoMapper.insert(warningInfo);
-                            this.generateInspection(warningManager,warningInfo,orgId);
-                        }
-                        if (waterValue.compareTo(waterUpper) > 0){
-                            WarningInfo warningInfo = new WarningInfo();
-                            warningInfo.setWarningTypeId(feedWarning.getId());
-                            warningInfo.setOrgId(orgId);
-                            warningInfo.setUnitId(unitId);
-                            warningInfo.setWarningTime(now);
-                            warningInfo.setWarningContent("耳标号"+feedingEnv.getEartagNum()+"饮水"+waterValue+"Kg高于阈值");
-                            WarningManager warningManager = warningManagerMapper.selectOne(new QueryWrapper<WarningManager>().eq("type", 2).eq("org_id", orgId));
-                            if (ObjectUtil.isNotEmpty(warningManager)){
-                                warningInfo.setWarningNotifierId(warningManager.getSecondManagerId());
-                            }
-                            warningInfoMapper.insert(warningInfo);
-                            this.generateInspection(warningManager,warningInfo,orgId);
-                        }
-                    }
+            if (ObjectUtil.isNotEmpty(warningRemind)) {
+                if (warningRemind.getTodayNoRemind() == 1) {
+                    continue;
+                }
+            }
+            BigDecimal waterValue = new BigDecimal(water);
+            BigDecimal feedingValue = new BigDecimal(feeding);
+
+            FeedingThreshold fatFhreshold = feedingThresholdMapper.selectOne(new QueryWrapper<FeedingThreshold>().lambda().eq(FeedingThreshold::getOrgId, orgId).eq(FeedingThreshold::getThresholdType, 1));
+            if (ObjectUtil.isNotEmpty(fatFhreshold)) {
+                BigDecimal feedLower, feedUpper, waterLower, waterUpper;
+                if ("1".equals(feedingEnv.getType())) {
+                    feedLower = new BigDecimal(fatFhreshold.getFatFeedLower());
+                    feedUpper = new BigDecimal(fatFhreshold.getFatFeedUpper());
+                    waterLower = new BigDecimal(fatFhreshold.getFatWaterLower());
+                    waterUpper = new BigDecimal(fatFhreshold.getFatWaterUpper());
+                } else {
+                    feedLower = new BigDecimal(fatFhreshold.getFeedLower());
+                    feedUpper = new BigDecimal(fatFhreshold.getFeedUpper());
+                    waterLower = new BigDecimal(fatFhreshold.getWaterLower());
+                    waterUpper = new BigDecimal(fatFhreshold.getWaterUpper());
+                }
 
-                    FeedingThreshold feedingThreshold = feedingThresholdMapper.selectOne(new QueryWrapper<FeedingThreshold>().lambda().eq(FeedingThreshold::getFeedingUnitId, unitId).eq(FeedingThreshold::getOrgId, orgId));
-                    if (ObjectUtil.isNotEmpty(feedingThreshold)){
-                        BigDecimal marginValue = new BigDecimal(feedingThreshold.getMarginValue());
-                        BigDecimal marginFeedValue = new BigDecimal(feedValue);
-                        if (marginFeedValue.compareTo(marginValue) < 0){
-                            WarningInfo warningInfo = new WarningInfo();
-                            warningInfo.setWarningTypeId(feedWarning.getId());
-                            warningInfo.setOrgId(orgId);
-                            warningInfo.setUnitId(unitId);
-                            warningInfo.setWarningTime(now);
-                            warningInfo.setWarningContent(feedingEnv.getUnitName()+"余料"+ marginFeedValue +"Kg低于阈值");
-                            WarningManager warningManager = warningManagerMapper.selectOne(new QueryWrapper<WarningManager>().eq("type", 2).eq("org_id", orgId));
-                            if (ObjectUtil.isNotEmpty(warningManager)){
-                                warningInfo.setWarningNotifierId(warningManager.getSecondManagerId());
-                            }
-                            warningInfoMapper.insert(warningInfo);
-                            this.generateInspection(warningManager,warningInfo,orgId);
-                        }
+                if (feedingValue.compareTo(feedLower) < 0) {
+                    WarningInfo warningInfo = new WarningInfo();
+                    warningInfo.setWarningTypeId(feedWarning.getId());
+                    warningInfo.setOrgId(orgId);
+                    warningInfo.setUnitId(unitId);
+                    warningInfo.setWarningTime(now);
+                    warningInfo.setWarningContent("耳标号" + feedingEnv.getEartagNum() + "采食" + feedValue + "Kg低于阈值");
+                    WarningManager warningManager = warningManagerMapper.selectOne(new QueryWrapper<WarningManager>().eq("type", 2).eq("org_id", orgId));
+                    if (ObjectUtil.isNotEmpty(warningManager)) {
+                        warningInfo.setWarningNotifierId(warningManager.getSecondManagerId());
+                    }
+                    warningInfoMapper.insert(warningInfo);
+                    this.generateInspection(warningManager, warningInfo, orgId);
+                }
+                if (feedingValue.compareTo(feedUpper) > 0) {
+                    WarningInfo warningInfo = new WarningInfo();
+                    warningInfo.setWarningTypeId(feedWarning.getId());
+                    warningInfo.setOrgId(orgId);
+                    warningInfo.setUnitId(unitId);
+                    warningInfo.setWarningTime(now);
+                    warningInfo.setWarningContent("耳标号" + feedingEnv.getEartagNum() + "采食" + feedValue + "Kg高于阈值");
+                    WarningManager warningManager = warningManagerMapper.selectOne(new QueryWrapper<WarningManager>().eq("type", 2).eq("org_id", orgId));
+                    if (ObjectUtil.isNotEmpty(warningManager)) {
+                        warningInfo.setWarningNotifierId(warningManager.getSecondManagerId());
+                    }
+                    warningInfoMapper.insert(warningInfo);
+                    this.generateInspection(warningManager, warningInfo, orgId);
+                }
+                if (waterValue.compareTo(waterLower) < 0) {
+                    WarningInfo warningInfo = new WarningInfo();
+                    warningInfo.setWarningTypeId(feedWarning.getId());
+                    warningInfo.setOrgId(orgId);
+                    warningInfo.setUnitId(unitId);
+                    warningInfo.setWarningTime(now);
+                    warningInfo.setWarningContent("耳标号" + feedingEnv.getEartagNum() + "饮水" + waterValue + "Kg低于阈值");
+                    WarningManager warningManager = warningManagerMapper.selectOne(new QueryWrapper<WarningManager>().eq("type", 2).eq("org_id", orgId));
+                    if (ObjectUtil.isNotEmpty(warningManager)) {
+                        warningInfo.setWarningNotifierId(warningManager.getSecondManagerId());
+                    }
+                    warningInfoMapper.insert(warningInfo);
+                    this.generateInspection(warningManager, warningInfo, orgId);
+                }
+                if (waterValue.compareTo(waterUpper) > 0) {
+                    WarningInfo warningInfo = new WarningInfo();
+                    warningInfo.setWarningTypeId(feedWarning.getId());
+                    warningInfo.setOrgId(orgId);
+                    warningInfo.setUnitId(unitId);
+                    warningInfo.setWarningTime(now);
+                    warningInfo.setWarningContent("耳标号" + feedingEnv.getEartagNum() + "饮水" + waterValue + "Kg高于阈值");
+                    WarningManager warningManager = warningManagerMapper.selectOne(new QueryWrapper<WarningManager>().eq("type", 2).eq("org_id", orgId));
+                    if (ObjectUtil.isNotEmpty(warningManager)) {
+                        warningInfo.setWarningNotifierId(warningManager.getSecondManagerId());
                     }
+                    warningInfoMapper.insert(warningInfo);
+                    this.generateInspection(warningManager, warningInfo, orgId);
+                }
+            }
 
+            FeedingThreshold feedingThreshold = feedingThresholdMapper.selectOne(new QueryWrapper<FeedingThreshold>().lambda().eq(FeedingThreshold::getFeedingUnitId, unitId).eq(FeedingThreshold::getOrgId, orgId));
+            if (ObjectUtil.isNotEmpty(feedingThreshold)) {
+                BigDecimal marginValue = new BigDecimal(feedingThreshold.getMarginValue());
+                BigDecimal marginFeedValue = new BigDecimal(feedValue);
+                if (marginFeedValue.compareTo(marginValue) < 0) {
+                    WarningInfo warningInfo = new WarningInfo();
+                    warningInfo.setWarningTypeId(feedWarning.getId());
+                    warningInfo.setOrgId(orgId);
+                    warningInfo.setUnitId(unitId);
+                    warningInfo.setWarningTime(now);
+                    warningInfo.setWarningContent(feedingEnv.getUnitName() + "余料" + marginFeedValue + "Kg低于阈值");
+                    WarningManager warningManager = warningManagerMapper.selectOne(new QueryWrapper<WarningManager>().eq("type", 2).eq("org_id", orgId));
+                    if (ObjectUtil.isNotEmpty(warningManager)) {
+                        warningInfo.setWarningNotifierId(warningManager.getSecondManagerId());
+                    }
+                    warningInfoMapper.insert(warningInfo);
+                    this.generateInspection(warningManager, warningInfo, orgId);
                 }
             }
+
+
         }
     }
 
-    private void generateInspection(WarningManager warningManager, WarningInfo warningInfo,String orgId){
-        if (ObjectUtil.isNotEmpty(warningManager)){
+    private void generateInspection(WarningManager warningManager, WarningInfo warningInfo, String orgId) {
+        if (ObjectUtil.isNotEmpty(warningManager)) {
             TaskInspection taskInspection = new TaskInspection();
             taskInspection.setNotifierId(warningManager.getSecondManagerId());
             taskInspection.setWarningId(warningInfo.getId());

+ 9 - 7
snowy-web-app/src/main/java/vip/xiaonuo/modular/warning/warningInfo/service/impl/WarningInfoServiceImpl.java

@@ -137,13 +137,15 @@ public class WarningInfoServiceImpl extends ServiceImpl<WarningInfoMapper, Warni
         Page<WarningInfo> warningInfoPage = this.page(page, queryWrapper);
         List<WarningInfo> warningInfoList = warningInfoPage.getRecords();
         for (WarningInfo warningInfo : warningInfoList) {
-            String[] split = warningInfo.getWarningNotifierId().split(",");
-            for (String s : split) {
-                String name = sysUserMapper.selectById(s).getName();
-                if (ObjectUtil.isNotEmpty(warningInfo.getWarningNotifierName())){
-                    warningInfo.setWarningNotifierName(warningInfo.getWarningNotifierName() + "," + name);
-                }else {
-                    warningInfo.setWarningNotifierName(name);
+            if (ObjectUtil.isNotEmpty(warningInfo.getWarningNotifierId())){
+                String[] split = warningInfo.getWarningNotifierId().split(",");
+                for (String s : split) {
+                    String name = sysUserMapper.selectById(s).getName();
+                    if (ObjectUtil.isNotEmpty(warningInfo.getWarningNotifierName())){
+                        warningInfo.setWarningNotifierName(warningInfo.getWarningNotifierName() + "," + name);
+                    }else {
+                        warningInfo.setWarningNotifierName(name);
+                    }
                 }
             }
         }