|
@@ -246,4 +246,57 @@ public class FeedTimer {
|
|
|
}
|
|
|
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
+ //饲养器状态修改
|
|
|
+ @Scheduled(cron = "0 0/5 * * * ? ")
|
|
|
+ @Transactional
|
|
|
+ public void getFeedEnvStatus() throws Exception {
|
|
|
+ QueryWrapper<FeedArea> queryWrapper = new QueryWrapper<>();
|
|
|
+ queryWrapper.eq("farm_id", 26);
|
|
|
+ List<FeedArea> feedAreas = feedAreaMapper.selectList(queryWrapper);
|
|
|
+ for (FeedArea feedArea : feedAreas) {
|
|
|
+ HashMap<String, String> paramMap = new HashMap<>();
|
|
|
+ JSONObject jsonObject = new JSONObject();
|
|
|
+ jsonObject.put("pageNum", "1");
|
|
|
+ jsonObject.put("pageSize", "20");
|
|
|
+ jsonObject.put("areaId", feedArea.getAreaId());
|
|
|
+ paramMap.put("Content-Type", "application/json;charset=utf-8");
|
|
|
+ paramMap.put("AuthorizationF", getToken());
|
|
|
+ String post = HttpRequest.post("http://znsw.zxkj2006.com/feed/api/api/v1/feeder/pageQry?pageNum=1&pageSize=50").headerMap(paramMap, false).body(jsonObject.toJSONString()).timeout(30 * 1000).execute().body();
|
|
|
+ JSONObject jsonObject1 = JSONObject.parseObject(post);
|
|
|
+ Map map = (Map) jsonObject1.get("data");
|
|
|
+ List<Map<String, Object>> list = (List) map.get("records");
|
|
|
+ for (Map<String, Object> stringMap : list) {
|
|
|
+ QueryWrapper<FeedingEnv> queryWrapper1 = new QueryWrapper<>();
|
|
|
+ queryWrapper1.eq("farm_id", 26).eq("device_code", stringMap.get("qrcode"));
|
|
|
+ if (ObjectUtil.isEmpty(envMapper.selectOne(queryWrapper1))) {
|
|
|
+ FeedingEnv feedingEnv = new FeedingEnv();
|
|
|
+ feedingEnv.setFarmId(26);
|
|
|
+ feedingEnv.setUnitName(feedArea.getName());
|
|
|
+ feedingEnv.setUnitId(Integer.parseInt(feedArea.getUnitId()));
|
|
|
+ feedingEnv.setDeviceType(feedArea.getType());
|
|
|
+ feedingEnv.setDeviceCode(stringMap.get("qrcode").toString());
|
|
|
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm");
|
|
|
+ feedingEnv.setLastTime(dateFormat.parse((String) stringMap.get("createTime")));
|
|
|
+ feedingEnv.setOnlineStatus((Integer) stringMap.get("feedStatus"));
|
|
|
+ envMapper.insert(feedingEnv);
|
|
|
+ } else {
|
|
|
+ if (StringUtils.isNotBlank(stringMap.get("earTag").toString())) {
|
|
|
+ FeedingEnv feedingEnv = envMapper.selectOne(queryWrapper1);
|
|
|
+ feedingEnv.setEartag(stringMap.get("earTag").toString());
|
|
|
+ String status = stringMap.get("swAlram").toString();
|
|
|
+ if ("0".equals(status)) {
|
|
|
+ feedingEnv.setOnlineStatus(0);
|
|
|
+ } else {
|
|
|
+ feedingEnv.setOnlineStatus(1);
|
|
|
+ }
|
|
|
+ envMapper.updateById(feedingEnv);
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|