123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777 |
- /*
- package com.huimv.eco.timer;
- import cn.hutool.core.date.DateTime;
- import cn.hutool.core.date.DateUtil;
- import cn.hutool.core.util.ObjectUtil;
- import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
- import com.huimv.eco.entity.*;
- import com.huimv.eco.service.*;
- import com.huimv.eco.sgd.Global;
- import com.huimv.eco.sgd.entity.Item;
- import com.huimv.eco.sgd.entity.Monitory;
- import com.huimv.eco.sgd.entity.MonitoryGetArgs;
- import com.huimv.eco.sgd.entity.MonitoryValue;
- import com.huimv.eco.sgd.fbox.ConsoleLoggerFactory;
- import com.huimv.eco.sgd.fbox.ServerCaller;
- import com.huimv.eco.sgd.fbox.StaticCredentialProvider;
- import com.huimv.eco.sgd.fbox.TokenManager;
- import com.zhenzi.sms.ZhenziSmsClient;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.scheduling.annotation.Scheduled;
- import org.springframework.stereotype.Component;
- import org.springframework.web.client.RestTemplate;
- import java.io.IOException;
- import java.text.DecimalFormat;
- import java.util.*;
- @Component
- public class SgdTimer {
- private static final long SLEEP_TIME = 1000;
- @Autowired
- private IBaseBoxService baseBoxService;
- @Autowired
- private IBaseRoomService baseRoomService;
- @Autowired
- private ISysHumidityService humidityService;
- @Autowired
- private ISysTemperatureService temperatureService;
- @Autowired
- private ISysDayWaterService dayWaterService;
- @Autowired
- private ISysMonthWaterService monthWaterService;
- @Autowired
- private ISysFodderService fodderService;
- @Autowired
- private ISysWarningSetService warningSetService;
- @Autowired
- private IBaseWarningInfoService warningInfoService;
- @Autowired
- private ISysWarningPhoneService warningPhoneService;
- //阈值
- @Autowired
- private ISysThresholdService thresholdService;
- @Autowired
- private RestTemplate restTemplate;
- private Integer hyFarmId = 1;
- String url = "http://120.27.234.126:8010/receiver/receiver/eco/save";
- //更新环境数据
- // @Scheduled(cron = "0 0/3 * * * ?")
- //// @Scheduled(cron = "0 * * * * ?")
- // private void updateEnv(){
- //
- // ConsoleLoggerFactory loggerFactory = new ConsoleLoggerFactory();
- // // 指定连接服务器的凭据参数
- // TokenManager tokenManager = new TokenManager(new StaticCredentialProvider(Global.clientId, Global.clientSecret, Global.username, Global.password), Global.idServerUrl, loggerFactory);
- // ServerCaller apiBaseServer = new ServerCaller(tokenManager, Global.apiBaserUrl, Global.signalrClientId, loggerFactory);
- // Global.apiBaseServer = apiBaseServer;
- // DecimalFormat df = new DecimalFormat("#.00");
- //
- // SysThreshold byId = thresholdService.getById(hyFarmId);
- // String maxHum = byId.getMaxHum();
- // String minHum = byId.getMinHum();
- // String maxTem = byId.getMaxTem();
- // String minTem = byId.getMinTem();
- // try {
- // List<BaseBox> boxes = baseBoxService.list();
- // for (BaseBox box : boxes) {
- // String uid = box.getUid();
- // Monitory[] monitories = apiBaseServer.executeGet("/v2/box/" + uid + "/dmon/grouped", Monitory[].class);
- // List names = new ArrayList();
- // for (Monitory monitory : monitories) {
- // for (Item item : monitory.items) {
- // String name = item.name;
- // if (monitory.name.contains("房间状态") && name != null&& name.startsWith("房舍")) {
- // if (name.contains("平均温度") || name.contains("湿度")) {
- // names.add(name);
- // }
- // }
- // }
- // }
- //
- //
- // if (ObjectUtil.isNotEmpty(names)) {
- // String str = apiBaseServer.executePost("/v2/box/" +uid + "/dmon/value/get", new MonitoryGetArgs(names, null, new ArrayList()), String.class);
- // System.out.println(str);
- // MonitoryValue[] monitoryValues = apiBaseServer.executePost("/v2/box/" +uid + "/dmon/value/get", new MonitoryGetArgs(names, null, new ArrayList()), MonitoryValue[].class);
- // List<SysTemperature> temList = new ArrayList();
- // List<SysHumidity> humList = new ArrayList<>();
- // for (MonitoryValue monitoryValue : monitoryValues) {
- // if (ObjectUtil.isEmpty(monitoryValue)){
- // continue;
- // }
- // String name = monitoryValue.getName();
- // String[] split = name.split("-");
- // BaseRoom room = baseRoomService.getOne(new QueryWrapper<BaseRoom>().eq("room_name", split[0]).eq("box_id", uid));
- // Integer roomId = room.getId();
- // if (split[1].contains("温度")){
- // SysTemperature sysTemperature = new SysTemperature();
- // if (ObjectUtil.isNotEmpty(monitoryValue.getValue())){
- // Double value1 = (Double)monitoryValue.getValue();
- // Double value = value1* 0.1;
- // sysTemperature.setId(monitoryValue.getId());
- // sysTemperature.setFarmId(hyFarmId);
- // sysTemperature.setOriginal(value1);
- // sysTemperature.setRoomId(roomId);
- // if (value != 0.0){
- // sysTemperature.setValue(Double.parseDouble(df.format(value)));
- // }else {
- // sysTemperature.setValue(value);
- // }
- // sysTemperature.setCreateTime(monitoryValue.getTimestamp());
- // temList.add(sysTemperature);
- // }
- //
- // }
- // if (split[1].contains("湿度")){
- // SysHumidity humidity = new SysHumidity();
- // Double value = (Double)monitoryValue.getValue() ;
- // humidity.setId(monitoryValue.getId());
- // humidity.setRoomId(roomId);
- // humidity.setFarmId(hyFarmId);
- // if (ObjectUtil.isNotEmpty(value)){
- // if (value != 0.0){
- // humidity.setValue(Double.parseDouble(df.format(value)));
- // }else{
- // humidity.setValue(value);
- // }
- //
- // humidity.setCreateTime(monitoryValue.getTimestamp());
- // humList.add(humidity);
- // }
- //
- // }
- //
- // }
- // humidityService.saveBatch(humList);
- // temperatureService.saveBatch(temList);
- //
- // humWarning(humList,minHum,maxHum);
- // temWarning(temList,minTem,maxTem);
- //
- // }
- // }
- //
- // } catch (IOException e) {
- // e.printStackTrace();
- // }
- // System.out.println("更新温湿度信息,更新时间------------->"+ new Date());
- // }
- //温度报警
- private void temWarning(List<SysTemperature> temList, String minTem, String maxTem) {
- QueryWrapper<SysWarningSet> wrapper = new QueryWrapper<>();
- wrapper.eq("content","高温报警");
- SysWarningSet maxWarning = warningSetService.getOne(wrapper);
- wrapper.clear();
- wrapper.eq("content","低温报警");
- SysWarningSet minWarning = warningSetService.getOne(wrapper);
- Double min = null;
- Double max = null;
- try {
- min = Double.valueOf(minTem);
- }catch (NumberFormatException e) {
- e.printStackTrace();
- }
- try {
- max = Double.valueOf(maxTem);
- }catch (NumberFormatException e) {
- e.printStackTrace();
- }
- for ( SysTemperature temperature : temList) {
- BaseRoom baseRoom = baseRoomService.getById(temperature.getRoomId());
- Double value = temperature.getValue();
- Date now = new Date();
- if (min != null && value <min) {
- if (minWarning.getFirstLevel() || minWarning.getSecondLevel() || minWarning.getThirdlyLevel()) {
- BaseWarningInfo baseWarningInfo = new BaseWarningInfo();
- baseWarningInfo.setFarmId(hyFarmId);
- baseWarningInfo.setWarningName("低温报警");
- baseWarningInfo.setMsg(baseRoom.getAlias() + baseRoom.getRoomName() + "出现低温报警,温度为:" + value);
- baseWarningInfo.setWarningTime(now);
- baseWarningInfo.setUploadTime(temperature.getCreateTime());
- baseWarningInfo.setAlarmType(8);
- if (minWarning.getFirstLevel()) {
- baseWarningInfo.setLevel(1);
- baseWarningInfo.setLevelName("一级报警");
- }
- if (minWarning.getSecondLevel()) {
- baseWarningInfo.setLevel(2);
- baseWarningInfo.setLevelName("二级报警");
- //这个写短信内容
- send(baseRoom.getAlias(), baseRoom.getRoomName(), value + "℃");
- }
- if (minWarning.getThirdlyLevel()) {
- baseWarningInfo.setLevel(3);
- baseWarningInfo.setLevelName("三级报警");
- //这个写短信内容
- }
- warningInfoService.save(baseWarningInfo);
- }
- }
- if (max != null && value >max){
- if (maxWarning.getFirstLevel() || maxWarning.getSecondLevel() || maxWarning.getThirdlyLevel()) {
- BaseWarningInfo baseWarningInfo = new BaseWarningInfo();
- baseWarningInfo.setFarmId(hyFarmId);
- baseWarningInfo.setWarningName("高温报警");
- baseWarningInfo.setMsg(baseRoom.getAlias() + baseRoom.getRoomName() + "出现高温报警,温度为:" + value);
- baseWarningInfo.setWarningTime(now);
- baseWarningInfo.setUploadTime(temperature.getCreateTime());
- baseWarningInfo.setAlarmType(7);
- if (maxWarning.getFirstLevel()) {
- baseWarningInfo.setLevel(1);
- baseWarningInfo.setLevelName("一级报警");
- }
- if (maxWarning.getSecondLevel()) {
- baseWarningInfo.setLevel(2);
- baseWarningInfo.setLevelName("二级报警");
- //这个写短信内容
- send(baseRoom.getAlias(), baseRoom.getRoomName(), value + "℃");
- }
- if (maxWarning.getThirdlyLevel()) {
- baseWarningInfo.setLevel(3);
- baseWarningInfo.setLevelName("三级报警");
- //这个写短信内容
- }
- warningInfoService.save(baseWarningInfo);
- }
- }
- }
- }
- //湿度报警
- private void humWarning(List<SysHumidity> humList, String minHum, String maxHum) {
- QueryWrapper<SysWarningSet> wrapper = new QueryWrapper<>();
- wrapper.eq("content","高湿度报警");
- SysWarningSet maxWarning = warningSetService.getOne(wrapper);
- wrapper.clear();
- wrapper.eq("content","低湿度报警");
- SysWarningSet minWarning = warningSetService.getOne(wrapper);
- Double min = null;
- Double max = null;
- try {
- min = Double.valueOf(minHum);
- }catch (NumberFormatException e) {
- e.printStackTrace();
- }
- try {
- max = Double.valueOf(maxHum);
- }catch (NumberFormatException e) {
- e.printStackTrace();
- }
- for (SysHumidity humidity : humList) {
- BaseRoom baseRoom = baseRoomService.getById(humidity.getRoomId());
- Double value = humidity.getValue();
- Date now = new Date();
- if (min != null && value <min){
- if (minWarning.getFirstLevel() || minWarning.getSecondLevel()|| minWarning.getThirdlyLevel()){
- BaseWarningInfo baseWarningInfo = new BaseWarningInfo();
- baseWarningInfo.setFarmId(hyFarmId);
- baseWarningInfo.setWarningName("低湿度报警");
- baseWarningInfo.setMsg(baseRoom.getAlias()+baseRoom.getRoomName()+"出现低湿度报警,湿度为:"+value);
- baseWarningInfo.setWarningTime(now);
- baseWarningInfo.setUploadTime(humidity.getCreateTime());
- baseWarningInfo.setAlarmType(10);
- if (minWarning.getFirstLevel()){
- baseWarningInfo.setLevel(1);
- baseWarningInfo.setLevelName("一级报警");
- }
- if (minWarning.getSecondLevel()){
- baseWarningInfo.setLevel(2);
- baseWarningInfo.setLevelName("二级报警");
- //这个写短信内容
- send( baseRoom.getAlias(),baseRoom.getRoomName(),value+"%");
- }
- if (minWarning.getThirdlyLevel()){
- baseWarningInfo.setLevel(3);
- baseWarningInfo.setLevelName("三级报警");
- //这个写短信内容
- }
- warningInfoService.save(baseWarningInfo);
- }
- }
- if (max != null && value >max) {
- if (maxWarning.getFirstLevel() || maxWarning.getSecondLevel() || maxWarning.getThirdlyLevel()) {
- BaseWarningInfo baseWarningInfo = new BaseWarningInfo();
- baseWarningInfo.setFarmId(hyFarmId);
- baseWarningInfo.setWarningName("高湿度报警");
- baseWarningInfo.setMsg(baseRoom.getAlias() + baseRoom.getRoomName() + "出现高湿度报警,湿度为:" + value);
- baseWarningInfo.setWarningTime(now);
- baseWarningInfo.setUploadTime(humidity.getCreateTime());
- baseWarningInfo.setAlarmType(9);
- if (maxWarning.getFirstLevel()) {
- baseWarningInfo.setLevel(1);
- baseWarningInfo.setLevelName("一级报警");
- }
- if (maxWarning.getSecondLevel()) {
- baseWarningInfo.setLevel(2);
- baseWarningInfo.setLevelName("二级报警");
- //这个写短信内容
- send(baseRoom.getAlias(), baseRoom.getRoomName(), value + "%");
- }
- if (maxWarning.getThirdlyLevel()) {
- baseWarningInfo.setLevelName("三级报警");
- baseWarningInfo.setAlarmType(9);
- //这个写短信内容
- }
- warningInfoService.save(baseWarningInfo);
- }
- }
- }
- }
- //更新日用水 9
- @Scheduled(cron = "0 55 8 * * ? ")
- // @Scheduled(cron = "0 * * * * ?")
- private void updateDayWater(){
- ConsoleLoggerFactory loggerFactory = new ConsoleLoggerFactory();
- // 指定连接服务器的凭据参数
- TokenManager tokenManager = new TokenManager(new StaticCredentialProvider(Global.clientId, Global.clientSecret, Global.username, Global.password), Global.idServerUrl, loggerFactory);
- ServerCaller apiBaseServer = new ServerCaller(tokenManager, Global.apiBaserUrl, Global.signalrClientId, loggerFactory);
- Global.apiBaseServer = apiBaseServer;
- DecimalFormat df = new DecimalFormat("#.00");
- try {
- List<BaseBox> boxes = baseBoxService.list();
- for (BaseBox box : boxes) {
- String uid = box.getUid();
- Monitory[] monitories = apiBaseServer.executeGet("/v2/box/" + uid + "/dmon/grouped", Monitory[].class);
- List names = new ArrayList();
- if (ObjectUtil.isEmpty(monitories)){
- continue;
- }
- for (Monitory monitory : monitories) {
- for (Item item : monitory.items) {
- String name = item.name;
- if (monitory.name.contains("房间状态") && name != null&& name.startsWith("房舍")) {
- if (name.contains("日用水量") ) {
- names.add(name);
- }
- }
- }
- }
- if (ObjectUtil.isNotEmpty(names)) {
- MonitoryValue[] monitoryValues = apiBaseServer.executePost("/v2/box/" +uid + "/dmon/value/get", new MonitoryGetArgs(names, null, new ArrayList()), MonitoryValue[].class);
- List<SysDayWater> dayWatersList = new ArrayList();
- for (MonitoryValue monitoryValue : monitoryValues) {
- if (ObjectUtil.isEmpty(monitoryValue)){
- continue;
- }
- String name = monitoryValue.getName();
- String[] split = name.split("-");
- BaseRoom room = baseRoomService.getOne(new QueryWrapper<BaseRoom>().eq("room_name", split[0]).eq("box_id", uid));
- Integer roomId = room.getId();
- SysDayWater dayWater = new SysDayWater();
- Double value = (Double)monitoryValue.getValue();
- dayWater.setId(monitoryValue.getId());
- dayWater.setRoomId(roomId);
- dayWater.setFarmId(hyFarmId);
- if (value == null){
- continue;
- }
- if (0.0 != value){
- String format = df.format(value);
- if (format.length()==3){
- dayWater.setValue(0+format);
- }else {
- dayWater.setValue(format);
- }
- }else {
- dayWater.setValue(value+"");
- }
- dayWater.setCreateTime(monitoryValue.getTimestamp());
- dayWatersList.add(dayWater);
- }
- dayWaterService.saveBatch(dayWatersList);
- HumAndTemDto humAndTemDto = new HumAndTemDto();
- humAndTemDto.setDayWaters(dayWatersList);
- humAndTemDto.setType(0);
- String s = restTemplate.postForObject(url, humAndTemDto, String.class);
- System.out.println(s);
- }
- }
- } catch (IOException e) {
- e.printStackTrace();
- }
- System.out.println("更新日用水信息,更新时间------------->"+ new Date());
- }
- //更新两个小时用水数据
- @Scheduled(cron = "0 59 0,2,4,6,8,10,12,14,16,18,20,22 * * ? ")
- // @Scheduled(cron = "0 0/2 * * * ?")
- private void updateMonthWater(){
- ConsoleLoggerFactory loggerFactory = new ConsoleLoggerFactory();
- // 指定连接服务器的凭据参数
- TokenManager tokenManager = new TokenManager(new StaticCredentialProvider(Global.clientId, Global.clientSecret, Global.username, Global.password), Global.idServerUrl, loggerFactory);
- ServerCaller apiBaseServer = new ServerCaller(tokenManager, Global.apiBaserUrl, Global.signalrClientId, loggerFactory);
- Global.apiBaseServer = apiBaseServer;
- DecimalFormat df = new DecimalFormat("#.00");
- try {
- List<BaseBox> boxes = baseBoxService.list();
- for (BaseBox box : boxes) {
- String uid = box.getUid();
- Monitory[] monitories = apiBaseServer.executeGet("/v2/box/" + uid + "/dmon/grouped", Monitory[].class);
- List names = new ArrayList();
- for (Monitory monitory : monitories) {
- for (Item item : monitory.items) {
- String name = item.name;
- if (monitory.name.contains("房间状态") && name != null&& name.startsWith("房舍")) {
- if (name.contains("日用水量") ) {
- names.add(name);
- }
- }
- }
- }
- if (ObjectUtil.isNotEmpty(names)) {
- MonitoryValue[] monitoryValues = apiBaseServer.executePost("/v2/box/" +uid + "/dmon/value/get", new MonitoryGetArgs(names, null, new ArrayList()), MonitoryValue[].class);
- List<SysMonthWater> dayWatersList = new ArrayList();
- for (MonitoryValue monitoryValue : monitoryValues) {
- if (ObjectUtil.isEmpty(monitoryValue)){
- continue;
- }
- String name = monitoryValue.getName();
- String[] split = name.split("-");
- BaseRoom room = baseRoomService.getOne(new QueryWrapper<BaseRoom>().eq("room_name", split[0]).eq("box_id", uid));
- Integer roomId = room.getId();
- SysMonthWater oldWater = monthWaterService.getOne(
- new QueryWrapper<SysMonthWater>()
- .eq("room_id", roomId)
- .eq("farm_id",hyFarmId)
- .orderByDesc("month_water_id")
- .last("LIMIT 1"));
- SysMonthWater monthWater = new SysMonthWater();
- monthWater.setFarmId(hyFarmId);
- Double newValue = (Double)monitoryValue.getValue();
- Double add ;
- if (newValue == null){
- newValue=0.0;
- }
- if (ObjectUtil.isEmpty(oldWater)){
- if (newValue == null){
- add = 0.0;
- }else {
- add = newValue;
- }
- }else {
- Double oldValue = Double.parseDouble(oldWater.getValue());
- if (newValue >= oldValue){
- add = newValue -oldValue;
- }else {
- add = newValue;
- }
- }
- if (add != 0.0){
- String format = df.format(add);
- if (format.length()==3){
- monthWater.setIncreaseValue(0+format);
- }else {
- monthWater.setIncreaseValue(format);
- }
- }else {
- monthWater.setIncreaseValue(add+"");
- }
- monthWater.setId(monitoryValue.getId());
- monthWater.setRoomId(roomId);
- if (newValue ==null){
- newValue = 0.0;
- }
- if (newValue != 0.0){
- String format = df.format(newValue);
- if (format.length()==3){
- monthWater.setValue(0+format);
- }else {
- monthWater.setValue(format);
- }
- }else {
- monthWater.setValue(newValue+"");
- }
- monthWater.setCreateTime(monitoryValue.getTimestamp());
- dayWatersList.add(monthWater);
- }
- monthWaterService.saveBatch(dayWatersList);
- HumAndTemDto humAndTemDto = new HumAndTemDto();
- humAndTemDto.setMonthWaters(dayWatersList);
- humAndTemDto.setType(0);
- String s = restTemplate.postForObject(url, humAndTemDto, String.class);
- System.out.println(s);
- }
- }
- } catch (IOException e) {
- e.printStackTrace();
- }
- System.out.println("更新月用水信息,更新时间------------->"+ new Date());
- }
- //更新料控
- // @Scheduled(cron = "0 0/6 * * * ? ")
- // @Scheduled(cron = "0 * * * * ?")
- // private void updateFodder() throws IOException {
- // ConsoleLoggerFactory loggerFactory = new ConsoleLoggerFactory();
- // // 指定连接服务器的凭据参数
- // TokenManager tokenManager = new TokenManager(new StaticCredentialProvider(Global.clientId, Global.clientSecret, Global.username, Global.password), Global.idServerUrl, loggerFactory);
- // ServerCaller apiBaseServer = new ServerCaller(tokenManager, Global.apiBaserUrl, Global.signalrClientId, loggerFactory);
- // Global.apiBaseServer = apiBaseServer;
- //
- // List names = new ArrayList();
- // String oneUid = "-1277226674647203111";
- // String twoUid = "-1277176930335980834";
- // String threeUid = "-1277075358654397725";
- // names.add("累计重量");
- //
- // MonitoryValue[] monitoryValues = apiBaseServer.executePost("/v2/box/" + oneUid + "/dmon/value/get", new MonitoryGetArgs(names, null, new ArrayList()), MonitoryValue[].class);
- // for (MonitoryValue monitoryValue : monitoryValues) {
- //
- // System.out.println(monitoryValue);
- // }
- // MonitoryValue monitoryValue = monitoryValues[0];
- // Double value = (Double)monitoryValue.getValue();
- // SysFodder oneFodder = fodderService.getOne(new QueryWrapper<SysFodder>().eq("floor_id", 1).last("ORDER BY fodder_id DESC limit 1"));
- // Double oldVale = oneFodder.getValue();
- //
- // if (oldVale < value){
- // oneFodder.setValue(value);
- // oneFodder.setUpdateTime(new Date());
- // fodderService.updateById(oneFodder);
- // }else if (value < oldVale){
- // SysFodder fodder = new SysFodder();
- // fodder.setValue(value);
- // fodder.setCreateTime(monitoryValue.getTimestamp());
- // fodder.setFloorId(1);
- // fodder.setId(monitoryValue.getId());
- // fodder.setFarmId(hyFarmId);
- // fodder.setUpdateTime(new Date());
- //
- // fodderService.save(fodder);
- //
- // }
- //
- //
- //
- // MonitoryValue[] twoMonitoryValues = apiBaseServer.executePost("/v2/box/" + twoUid + "/dmon/value/get", new MonitoryGetArgs(names, null, new ArrayList()), MonitoryValue[].class);
- // for (MonitoryValue twoMonitoryValue : twoMonitoryValues) {
- // System.out.println(twoMonitoryValue);
- // }
- // MonitoryValue twoMonitoryValue = twoMonitoryValues[0];
- // Double twoValue = (Double)twoMonitoryValue.getValue();
- // SysFodder twoFodder = fodderService.getOne(new QueryWrapper<SysFodder>().eq("floor_id", 2).last("ORDER BY fodder_id DESC limit 1"));
- // Double twoOldVale = twoFodder.getValue();
- // if (twoOldVale < twoValue){
- // twoFodder.setValue(twoValue);
- // twoFodder.setUpdateTime(new Date());
- // fodderService.updateById(twoFodder);
- //// System.out.println("二号楼更新------------>"+twoFodder);
- // }else if (twoValue < twoOldVale){
- // SysFodder fodder = new SysFodder();
- // fodder.setValue(twoValue);
- // fodder.setCreateTime(twoMonitoryValue.getTimestamp());
- // fodder.setFloorId(2);
- // fodder.setId(twoMonitoryValue.getId());
- // fodder.setFarmId(hyFarmId);
- // fodder.setUpdateTime(new Date());
- // fodderService.save(fodder);
- //// System.out.println("二号楼新增------------>"+twoMonitoryValue);
- // }else {
- //// System.out.println("二号楼舍弃------------>"+twoMonitoryValue);
- // }
- //
- //
- // MonitoryValue[] threeMonitoryValues = apiBaseServer.executePost("/v2/box/" + threeUid + "/dmon/value/get", new MonitoryGetArgs(names, null, new ArrayList()), MonitoryValue[].class);
- // for (MonitoryValue threeMonitoryValue : threeMonitoryValues) {
- //
- // System.out.println(threeMonitoryValue);
- // }
- // MonitoryValue threeMonitoryValue = threeMonitoryValues[0];
- // Double threeValue = (Double)threeMonitoryValue.getValue();
- // SysFodder threeFodder = fodderService.getOne(new QueryWrapper<SysFodder>().eq("floor_id", 3).last("ORDER BY fodder_id DESC limit 1"));
- // Double threeOldVale = threeFodder.getValue();
- //
- // if (threeOldVale < threeValue){
- // threeFodder.setValue(threeValue);
- // threeFodder.setUpdateTime(new Date());
- // fodderService.updateById(threeFodder);
- // System.out.println(threeFodder);
- //
- //// System.out.println("三号楼更新------------>"+threeFodder);
- // }else if (threeValue < threeOldVale){
- // SysFodder fodder = new SysFodder();
- // fodder.setValue(threeValue);
- // fodder.setCreateTime(threeMonitoryValue.getTimestamp());
- // fodder.setFloorId(3);
- // fodder.setId(threeMonitoryValue.getId());
- // fodder.setFarmId(hyFarmId);
- // fodder.setUpdateTime(new Date());
- // fodderService.save(fodder);
- //
- // }
- //
- //
- // System.out.println("更新料塔信息,更新时间------------->" + new Date());
- //
- // }
- public void send(String alias, String roomName, String value) {
- ZhenziSmsClient client = new ZhenziSmsClient("https://sms_developer.zhenzikj.com",
- "109928", "2684d129-1946-43fc-9074-93cee1687eb7");
- Map<String, Object> params = new HashMap<String, Object>();
- //从数据库查询
- SysWarningPhone one = warningPhoneService.getOne(new QueryWrapper<SysWarningPhone>().eq("farm_id", hyFarmId).eq("level", 2));
- String[] split = one.getPhone().split(",");
- for (String phone : split) {
- params.put("number",phone);
- params.put("templateId", "7445");
- String[] templateParams = new String[3];
- templateParams[0] = alias;
- templateParams[1] = roomName;
- templateParams[2] = value;
- params.put("templateParams", templateParams);
- try {
- System.out.println(client.send(params));
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- }
- */
- /* //更新盒子,房间信息
- @Scheduled(cron = "0 0 0 1/7 * ?")
- // @Scheduled(cron = "0 0/6 * * * ?")
- private void updateBox(){
- ConsoleLoggerFactory loggerFactory = new ConsoleLoggerFactory();
- // 指定连接服务器的凭据参数
- TokenManager tokenManager = new TokenManager(new StaticCredentialProvider(Global.clientId, Global.clientSecret, Global.username, Global.password), Global.idServerUrl, loggerFactory);
- ServerCaller appServer = new ServerCaller(tokenManager, Global.appServerApiUrl, Global.signalrClientId, loggerFactory);
- ServerCaller apiBaseServer = new ServerCaller(tokenManager, Global.apiBaserUrl, Global.signalrClientId, loggerFactory);
- Global.appServer = appServer;
- Global.apiBaseServer = apiBaseServer;
- try {
- BoxGroup[] boxGroups = appServer.executeGet("api/client/box/grouped", BoxGroup[].class);
- List<BaseBox> boxs = new ArrayList<>();
- List<BaseRoom> rooms = new ArrayList<>();
- for (BoxGroup group : boxGroups) {
- //盒子
- for (BoxReg boxReg : group.boxRegs) {
- String alias = boxReg.alias;
- if (alias.endsWith("层环控系统")) {
- if (alias.startsWith("海盐青莲1号楼")){
- boxs.add( new BaseBox(boxReg.boxUid,alias,1));
- }
- if (alias.startsWith("海盐青莲2号楼")){
- boxs.add( new BaseBox(boxReg.boxUid,alias,2));
- }
- if (alias.startsWith("海盐青莲3号楼")){
- boxs.add( new BaseBox(boxReg.boxUid,alias,3));
- }
- for (int i= 1 ;i <= 6 ;i++){
- BaseRoom baseRoom = new BaseRoom();
- baseRoom.setBoxId(boxReg.boxUid);
- baseRoom.setRoomName("房舍"+i);
- baseRoom.setAlias(alias.substring(4,9));
- rooms.add(baseRoom);
- }
- }
- }
- }
- baseBoxService.remove(null);
- baseBoxService.saveBatch(boxs);
- baseRoomService.remove(null);
- baseRoomService.saveBatch(rooms);
- System.out.println("更新房舍信息,更新时间------------->"+ new Date());
- } catch (IOException e) {
- e.printStackTrace();
- }
- }*//*
- }
- */
|