Просмотр исходного кода

大牧人对接设备掉线情况

Newspaper 1 год назад
Родитель
Сommit
ff0f93a4bf

+ 31 - 29
huimv-farm-datacenter-egg/huimv-farm-environ/src/main/java/com/huimv/environ/eco/service/impl/FeedConsumeServiceImpl.java

@@ -186,39 +186,41 @@ public class FeedConsumeServiceImpl extends ServiceImpl<FeedConsumeMapper, FeedC
 
         ResponseEntity<BaseResultEntity> forEntity = restTemplate.exchange(BASE_URL + CURRENT_LIST+FARM_CODE+"&position=all", HttpMethod.GET, httpEntity,BaseResultEntity.class );
         List<HousVo> data = forEntity.getBody().getData();
-        for (HousVo datum : data) {
-            String stock = "0";
-            FeedUsage feedUsage = new FeedUsage();
-            ResponseEntity<HistoryEntity> todayForEntity = restTemplate.exchange(BASE_URL + HISTORY_LIST+FARM_CODE+"&i="+datum.getI()+"&start="+start+"&end="+end, HttpMethod.GET, httpEntity,HistoryEntity.class );
-            List<HistroyOne> todayData = todayForEntity.getBody().getData();
-            HistroyOne today = todayData.get(todayData.size() - 1);
+        if (data.size() == 9){
+            for (HousVo datum : data) {
+                String stock = "0";
+                FeedUsage feedUsage = new FeedUsage();
+                ResponseEntity<HistoryEntity> todayForEntity = restTemplate.exchange(BASE_URL + HISTORY_LIST+FARM_CODE+"&i="+datum.getI()+"&start="+start+"&end="+end, HttpMethod.GET, httpEntity,HistoryEntity.class );
+                List<HistroyOne> todayData = todayForEntity.getBody().getData();
+                HistroyOne today = todayData.get(todayData.size() - 1);
 
-            Double totalConsume = today.getData().getFt_do_tal_tdy();
-            if (ObjectUtil.isNotEmpty(datum.getData().getQty_re())){
-                stock = datum.getData().getQty_re();
-            }
-            FeedUsage one = feedUsageService.getOne(new QueryWrapper<FeedUsage>().lambda().eq(FeedUsage::getUsedDate, sdf.format(new Date())).eq(FeedUsage::getUnitName, datum.getI() + "舍"));
-            if (ObjectUtil.isNotEmpty(one)){
-                one.setStock(stock);
-                one.setTotalConsume(BigDecimal.valueOf(totalConsume));
-                if ("0".equals(stock)){
-                    one.setSingleConsume(BigDecimal.ZERO);
-                }else {
-                    one.setSingleConsume(BigDecimal.valueOf(totalConsume).multiply(BigDecimal.valueOf(1000)).divide(BigDecimal.valueOf(Double.valueOf(stock)),2,RoundingMode.HALF_UP));
+                Double totalConsume = today.getData().getFt_do_tal_tdy();
+                if (ObjectUtil.isNotEmpty(datum.getData().getQty_re())){
+                    stock = datum.getData().getQty_re();
                 }
-                feedUsageService.updateById(one);
-            }else {
-                feedUsage.setUnitName(datum.getI()+"舍");
-                feedUsage.setAge(datum.getData().getAge());
-                feedUsage.setStock(stock);
-                feedUsage.setUsedDate(sdf.format(new Date()));
-                feedUsage.setTotalConsume(BigDecimal.valueOf(totalConsume));
-                if ("0".equals(stock)){
-                    feedUsage.setSingleConsume(BigDecimal.ZERO);
+                FeedUsage one = feedUsageService.getOne(new QueryWrapper<FeedUsage>().lambda().eq(FeedUsage::getUsedDate, sdf.format(new Date())).eq(FeedUsage::getUnitName, datum.getI() + "舍"));
+                if (ObjectUtil.isNotEmpty(one)){
+                    one.setStock(stock);
+                    one.setTotalConsume(BigDecimal.valueOf(totalConsume));
+                    if ("0".equals(stock)){
+                        one.setSingleConsume(BigDecimal.ZERO);
+                    }else {
+                        one.setSingleConsume(BigDecimal.valueOf(totalConsume).multiply(BigDecimal.valueOf(1000)).divide(BigDecimal.valueOf(Double.valueOf(stock)),2,RoundingMode.HALF_UP));
+                    }
+                    feedUsageService.updateById(one);
                 }else {
-                    feedUsage.setSingleConsume(BigDecimal.valueOf(totalConsume).multiply(BigDecimal.valueOf(1000)).divide(BigDecimal.valueOf(Double.valueOf(stock)),2,RoundingMode.HALF_UP));
+                    feedUsage.setUnitName(datum.getI()+"舍");
+                    feedUsage.setAge(datum.getData().getAge());
+                    feedUsage.setStock(stock);
+                    feedUsage.setUsedDate(sdf.format(new Date()));
+                    feedUsage.setTotalConsume(BigDecimal.valueOf(totalConsume));
+                    if ("0".equals(stock)){
+                        feedUsage.setSingleConsume(BigDecimal.ZERO);
+                    }else {
+                        feedUsage.setSingleConsume(BigDecimal.valueOf(totalConsume).multiply(BigDecimal.valueOf(1000)).divide(BigDecimal.valueOf(Double.valueOf(stock)),2,RoundingMode.HALF_UP));
+                    }
+                    feedUsageService.save(feedUsage);
                 }
-                feedUsageService.save(feedUsage);
             }
         }
 

+ 31 - 29
huimv-farm-datacenter-egg/huimv-farm-environ/src/main/java/com/huimv/environ/eco/timer/FeedConsumeTimer.java

@@ -50,39 +50,41 @@ public class FeedConsumeTimer {
 
         ResponseEntity<BaseResultEntity> forEntity = restTemplate.exchange(BASE_URL + CURRENT_LIST+FARM_CODE+"&position=all", HttpMethod.GET, httpEntity,BaseResultEntity.class );
         List<HousVo> data = forEntity.getBody().getData();
-        for (HousVo datum : data) {
-            String stock = "0";
-            FeedUsage feedUsage = new FeedUsage();
-            ResponseEntity<HistoryEntity> todayForEntity = restTemplate.exchange(BASE_URL + HISTORY_LIST+FARM_CODE+"&i="+datum.getI()+"&start="+start+"&end="+end, HttpMethod.GET, httpEntity,HistoryEntity.class );
-            List<HistroyOne> todayData = todayForEntity.getBody().getData();
-            HistroyOne today = todayData.get(todayData.size() - 1);
+        if (data.size() == 9){
+            for (HousVo datum : data) {
+                String stock = "0";
+                FeedUsage feedUsage = new FeedUsage();
+                ResponseEntity<HistoryEntity> todayForEntity = restTemplate.exchange(BASE_URL + HISTORY_LIST+FARM_CODE+"&i="+datum.getI()+"&start="+start+"&end="+end, HttpMethod.GET, httpEntity,HistoryEntity.class );
+                List<HistroyOne> todayData = todayForEntity.getBody().getData();
+                HistroyOne today = todayData.get(todayData.size() - 1);
 
-            Double totalConsume = today.getData().getFt_do_tal_tdy();
-            if (ObjectUtil.isNotEmpty(datum.getData().getQty_re())){
-                stock = datum.getData().getQty_re();
-            }
-            FeedUsage one = feedUsageService.getOne(new QueryWrapper<FeedUsage>().lambda().eq(FeedUsage::getUsedDate, sdf.format(new Date())).eq(FeedUsage::getUnitName, datum.getI() + "舍"));
-            if (ObjectUtil.isNotEmpty(one)){
-                one.setStock(stock);
-                one.setTotalConsume(BigDecimal.valueOf(totalConsume));
-                if ("0".equals(stock)){
-                    one.setSingleConsume(BigDecimal.ZERO);
-                }else {
-                    one.setSingleConsume(BigDecimal.valueOf(totalConsume).multiply(BigDecimal.valueOf(1000)).divide(BigDecimal.valueOf(Double.valueOf(stock)),2,RoundingMode.HALF_UP));
+                Double totalConsume = today.getData().getFt_do_tal_tdy();
+                if (ObjectUtil.isNotEmpty(datum.getData().getQty_re())){
+                    stock = datum.getData().getQty_re();
                 }
-                feedUsageService.updateById(one);
-            }else {
-                feedUsage.setUnitName(datum.getI()+"舍");
-                feedUsage.setAge(datum.getData().getAge());
-                feedUsage.setStock(stock);
-                feedUsage.setUsedDate(sdf.format(new Date()));
-                feedUsage.setTotalConsume(BigDecimal.valueOf(totalConsume));
-                if ("0".equals(stock)){
-                    feedUsage.setSingleConsume(BigDecimal.ZERO);
+                FeedUsage one = feedUsageService.getOne(new QueryWrapper<FeedUsage>().lambda().eq(FeedUsage::getUsedDate, sdf.format(new Date())).eq(FeedUsage::getUnitName, datum.getI() + "舍"));
+                if (ObjectUtil.isNotEmpty(one)){
+                    one.setStock(stock);
+                    one.setTotalConsume(BigDecimal.valueOf(totalConsume));
+                    if ("0".equals(stock)){
+                        one.setSingleConsume(BigDecimal.ZERO);
+                    }else {
+                        one.setSingleConsume(BigDecimal.valueOf(totalConsume).multiply(BigDecimal.valueOf(1000)).divide(BigDecimal.valueOf(Double.valueOf(stock)),2,RoundingMode.HALF_UP));
+                    }
+                    feedUsageService.updateById(one);
                 }else {
-                    feedUsage.setSingleConsume(BigDecimal.valueOf(totalConsume).multiply(BigDecimal.valueOf(1000)).divide(BigDecimal.valueOf(Double.valueOf(stock)),2,RoundingMode.HALF_UP));
+                    feedUsage.setUnitName(datum.getI()+"舍");
+                    feedUsage.setAge(datum.getData().getAge());
+                    feedUsage.setStock(stock);
+                    feedUsage.setUsedDate(sdf.format(new Date()));
+                    feedUsage.setTotalConsume(BigDecimal.valueOf(totalConsume));
+                    if ("0".equals(stock)){
+                        feedUsage.setSingleConsume(BigDecimal.ZERO);
+                    }else {
+                        feedUsage.setSingleConsume(BigDecimal.valueOf(totalConsume).multiply(BigDecimal.valueOf(1000)).divide(BigDecimal.valueOf(Double.valueOf(stock)),2,RoundingMode.HALF_UP));
+                    }
+                    feedUsageService.save(feedUsage);
                 }
-                feedUsageService.save(feedUsage);
             }
         }
     }