From 927471c61f5672dfb7080cc5a31117b9583dd112 Mon Sep 17 00:00:00 2001 From: 18650502300 <18650502300@163.com> Date: Sun, 31 Mar 2024 10:07:19 +0800 Subject: [PATCH] =?UTF-8?q?1.=20=E5=9B=BE=E7=89=87=E4=B8=8A=E4=BC=A0?= =?UTF-8?q?=E4=B8=83=E7=89=9B=E4=BA=91=202.=20=E6=A4=8D=E7=89=A9=E8=AF=86?= =?UTF-8?q?=E5=88=AB=E6=97=A5=E5=BF=97=203.=20=E6=A4=8D=E7=89=A9=E8=A7=A3?= =?UTF-8?q?=E6=9E=90=E6=97=A5=E5=BF=97=204.=20=E4=BF=9D=E5=AD=98=E5=AE=9A?= =?UTF-8?q?=E6=97=B6=E5=99=A8=E7=9A=84=E5=90=8C=E6=97=B6=E8=AF=B7=E6=B1=82?= =?UTF-8?q?onenet=E4=BF=9D=E5=AD=98=E5=8F=82=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/common/CommonController.java | 15 +- .../src/main/resources/application-druid.yml | 4 + .../src/main/resources/application.yml | 13 +- AutoSprout-common/pom.xml | 7 + .../common/core/domain/onenet}/Data.java | 2 +- .../core/domain/onenet}/DataPointRes.java | 4 +- .../common/core/domain/onenet}/Datapoint.java | 2 +- .../core/domain/onenet/DatapointValue.java | 64 +++++ .../core/domain/onenet}/Datastream.java | 4 +- .../ruoyi/common/utils/qiniu/QiNiuUtils.java | 37 +++ .../ruoyi/quartz/domain/DatapointValue.java | 212 --------------- .../com/ruoyi/quartz/domain/WateringLog.java | 1 + .../com/ruoyi/quartz/task/IotLogTask.java | 9 +- AutoSprout-ui/src/api/plant/log.js | 44 ++++ AutoSprout-ui/src/views/plant/log/index.vue | 245 ++++++++++++++++++ AutoSprout-ui/src/views/plant/plant/index.vue | 25 +- .../com/ruoyi/device/app/AppController.java | 43 ++- .../AsPlantAnalysisLogController.java | 104 ++++++++ .../AsPlantIdentifyLogController.java | 104 ++++++++ .../device/domain/AsPlantAnalysisLog.java | 40 +++ .../device/domain/AsPlantIdentifyLog.java | 47 ++++ .../mapper/AsPlantAnalysisLogMapper.java | 61 +++++ .../mapper/AsPlantIdentifyLogMapper.java | 61 +++++ .../device/service/IAsArticleService.java | 6 +- .../service/IAsPlantAnalysisLogService.java | 61 +++++ .../service/IAsPlantIdentifyLogService.java | 61 +++++ .../impl/AsPlantAnalysisLogServiceImpl.java | 95 +++++++ .../impl/AsPlantIdentifyLogServiceImpl.java | 95 +++++++ .../service/impl/AsTimerServiceImpl.java | 124 +++++---- .../mapper/article/AsArticleMapper.xml | 2 +- .../mapper/plant/AsPlantAnalysisLogMapper.xml | 67 +++++ .../mapper/plant/AsPlantIdentifyLogMapper.xml | 74 ++++++ 32 files changed, 1446 insertions(+), 287 deletions(-) rename {AutoSprout-quartz/src/main/java/com/ruoyi/quartz/domain => AutoSprout-common/src/main/java/com/ruoyi/common/core/domain/onenet}/Data.java (73%) rename {AutoSprout-quartz/src/main/java/com/ruoyi/quartz/domain => AutoSprout-common/src/main/java/com/ruoyi/common/core/domain/onenet}/DataPointRes.java (68%) rename {AutoSprout-quartz/src/main/java/com/ruoyi/quartz/domain => AutoSprout-common/src/main/java/com/ruoyi/common/core/domain/onenet}/Datapoint.java (71%) create mode 100644 AutoSprout-common/src/main/java/com/ruoyi/common/core/domain/onenet/DatapointValue.java rename {AutoSprout-quartz/src/main/java/com/ruoyi/quartz/domain => AutoSprout-common/src/main/java/com/ruoyi/common/core/domain/onenet}/Datastream.java (55%) create mode 100644 AutoSprout-common/src/main/java/com/ruoyi/common/utils/qiniu/QiNiuUtils.java delete mode 100644 AutoSprout-quartz/src/main/java/com/ruoyi/quartz/domain/DatapointValue.java create mode 100644 AutoSprout-ui/src/api/plant/log.js create mode 100644 AutoSprout-ui/src/views/plant/log/index.vue create mode 100644 AutoSprout-watering/src/main/java/com/ruoyi/device/controller/AsPlantAnalysisLogController.java create mode 100644 AutoSprout-watering/src/main/java/com/ruoyi/device/controller/AsPlantIdentifyLogController.java create mode 100644 AutoSprout-watering/src/main/java/com/ruoyi/device/domain/AsPlantAnalysisLog.java create mode 100644 AutoSprout-watering/src/main/java/com/ruoyi/device/domain/AsPlantIdentifyLog.java create mode 100644 AutoSprout-watering/src/main/java/com/ruoyi/device/mapper/AsPlantAnalysisLogMapper.java create mode 100644 AutoSprout-watering/src/main/java/com/ruoyi/device/mapper/AsPlantIdentifyLogMapper.java create mode 100644 AutoSprout-watering/src/main/java/com/ruoyi/device/service/IAsPlantAnalysisLogService.java create mode 100644 AutoSprout-watering/src/main/java/com/ruoyi/device/service/IAsPlantIdentifyLogService.java create mode 100644 AutoSprout-watering/src/main/java/com/ruoyi/device/service/impl/AsPlantAnalysisLogServiceImpl.java create mode 100644 AutoSprout-watering/src/main/java/com/ruoyi/device/service/impl/AsPlantIdentifyLogServiceImpl.java create mode 100644 AutoSprout-watering/src/main/resources/mapper/plant/AsPlantAnalysisLogMapper.xml create mode 100644 AutoSprout-watering/src/main/resources/mapper/plant/AsPlantIdentifyLogMapper.xml diff --git a/AutoSprout-admin/src/main/java/com/ruoyi/web/controller/common/CommonController.java b/AutoSprout-admin/src/main/java/com/ruoyi/web/controller/common/CommonController.java index 3abea07..e42bccb 100644 --- a/AutoSprout-admin/src/main/java/com/ruoyi/web/controller/common/CommonController.java +++ b/AutoSprout-admin/src/main/java/com/ruoyi/web/controller/common/CommonController.java @@ -6,7 +6,9 @@ import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.utils.file.FileUploadUtils; import com.ruoyi.common.utils.file.FileUtils; +import com.ruoyi.common.utils.qiniu.QiNiuUtils; import com.ruoyi.framework.config.ServerConfig; +import io.swagger.annotations.ApiOperation; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -22,7 +24,7 @@ import java.util.List; /** * 通用请求处理 - * + * * @author ruoyi */ @RestController @@ -41,7 +43,7 @@ public class CommonController /** * 通用下载请求 - * + * * @param fileName 文件名称 * @param delete 是否删除 */ @@ -163,4 +165,13 @@ public class CommonController } } + @ApiOperation("获取七牛云上传信息") + @GetMapping("/qiniu/uploadInfo") + public AjaxResult getQiNiuToken() { + AjaxResult ajax = AjaxResult.success("操作成功"); + ajax.put("token", QiNiuUtils.getToken()); + ajax.put("domain", QiNiuUtils.DOMAIN); + return ajax; + } + } diff --git a/AutoSprout-admin/src/main/resources/application-druid.yml b/AutoSprout-admin/src/main/resources/application-druid.yml index eb99aaf..117e58c 100644 --- a/AutoSprout-admin/src/main/resources/application-druid.yml +++ b/AutoSprout-admin/src/main/resources/application-druid.yml @@ -5,6 +5,10 @@ spring: driverClassName: com.mysql.cj.jdbc.Driver druid: # 主库数据源 +# master: +# url: jdbc:mysql://localhost:3306/autosprout?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 +# username: root +# password: 123456 master: url: jdbc:mysql://localhost:3306/autosprout?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 username: root diff --git a/AutoSprout-admin/src/main/resources/application.yml b/AutoSprout-admin/src/main/resources/application.yml index 3a35498..9e38bd5 100644 --- a/AutoSprout-admin/src/main/resources/application.yml +++ b/AutoSprout-admin/src/main/resources/application.yml @@ -186,4 +186,15 @@ aliyun: signName: 创特物联 # 验证码模版id templateCode: SMS_465342434 - +# 七牛云配置 +qiniu: + # 七牛云key + accessKey: MI4PDg9LYWXJyahzx5ec6-Ih0YNwQhew_BQUhttS + # 七牛云密钥 + secretKey: Lk3fHHEnJuf0jD_Zte1xhtv7BTvjvmaWVCKd7O0J + # 七牛云命名空间 + bucket: autosprout + # 过期时间(秒) + expireSeconds: 600 + # 七牛云GET请求域名 + domain: https://lxnapi.ccttiot.com diff --git a/AutoSprout-common/pom.xml b/AutoSprout-common/pom.xml index e72e98e..4ed7959 100644 --- a/AutoSprout-common/pom.xml +++ b/AutoSprout-common/pom.xml @@ -17,6 +17,13 @@ + + + com.qiniu + qiniu-java-sdk + [7.13.0, 7.13.99] + + diff --git a/AutoSprout-quartz/src/main/java/com/ruoyi/quartz/domain/Data.java b/AutoSprout-common/src/main/java/com/ruoyi/common/core/domain/onenet/Data.java similarity index 73% rename from AutoSprout-quartz/src/main/java/com/ruoyi/quartz/domain/Data.java rename to AutoSprout-common/src/main/java/com/ruoyi/common/core/domain/onenet/Data.java index e238a47..445b808 100644 --- a/AutoSprout-quartz/src/main/java/com/ruoyi/quartz/domain/Data.java +++ b/AutoSprout-common/src/main/java/com/ruoyi/common/core/domain/onenet/Data.java @@ -1,4 +1,4 @@ -package com.ruoyi.quartz.domain; +package com.ruoyi.common.core.domain.onenet; import java.util.List; diff --git a/AutoSprout-quartz/src/main/java/com/ruoyi/quartz/domain/DataPointRes.java b/AutoSprout-common/src/main/java/com/ruoyi/common/core/domain/onenet/DataPointRes.java similarity index 68% rename from AutoSprout-quartz/src/main/java/com/ruoyi/quartz/domain/DataPointRes.java rename to AutoSprout-common/src/main/java/com/ruoyi/common/core/domain/onenet/DataPointRes.java index 6bca915..a81e698 100644 --- a/AutoSprout-quartz/src/main/java/com/ruoyi/quartz/domain/DataPointRes.java +++ b/AutoSprout-common/src/main/java/com/ruoyi/common/core/domain/onenet/DataPointRes.java @@ -1,4 +1,4 @@ -package com.ruoyi.quartz.domain; +package com.ruoyi.common.core.domain.onenet; import com.alibaba.fastjson2.annotation.JSONField; import lombok.Data; @@ -6,7 +6,7 @@ import lombok.Data; @Data public class DataPointRes { private int code; - private com.ruoyi.quartz.domain.Data data; + private com.ruoyi.common.core.domain.onenet.Data data; private String msg; @JSONField(name = "request_id") private String requestId; diff --git a/AutoSprout-quartz/src/main/java/com/ruoyi/quartz/domain/Datapoint.java b/AutoSprout-common/src/main/java/com/ruoyi/common/core/domain/onenet/Datapoint.java similarity index 71% rename from AutoSprout-quartz/src/main/java/com/ruoyi/quartz/domain/Datapoint.java rename to AutoSprout-common/src/main/java/com/ruoyi/common/core/domain/onenet/Datapoint.java index 831b184..2d94ac8 100644 --- a/AutoSprout-quartz/src/main/java/com/ruoyi/quartz/domain/Datapoint.java +++ b/AutoSprout-common/src/main/java/com/ruoyi/common/core/domain/onenet/Datapoint.java @@ -1,4 +1,4 @@ -package com.ruoyi.quartz.domain; +package com.ruoyi.common.core.domain.onenet; import lombok.Data; diff --git a/AutoSprout-common/src/main/java/com/ruoyi/common/core/domain/onenet/DatapointValue.java b/AutoSprout-common/src/main/java/com/ruoyi/common/core/domain/onenet/DatapointValue.java new file mode 100644 index 0000000..a8d10f4 --- /dev/null +++ b/AutoSprout-common/src/main/java/com/ruoyi/common/core/domain/onenet/DatapointValue.java @@ -0,0 +1,64 @@ +package com.ruoyi.common.core.domain.onenet; + +import lombok.Data; + +import java.util.List; + +@Data +public class DatapointValue { + + private List dsArray; + private int jiaoshui_qiangdu; + private nextDs next_ds; + private Mc mc; + private Set set; + private Tr tr; + private int turan_show; + + + // 内部类 Ds + @Data + public static class Ds { + private int hour;//时 + private int min;//分 + private Boolean once; //是否单次,false为循环浇水,true为单次 + private int sec;//秒 + private Boolean sw;// 开关 + private int week;//周转成二进制 bit0位开始为周一 0110 (week&1<<0) 1<<1 1<<2 00000110 + + } + + // 内部类 Mc 脉冲 + @Data + public static class Mc { + private int jg_sec;//间隔时间 + private int js_sec;//启动时间 + private Boolean kaiguan; //开关 普通模式情况下获取的是ds.js_sec的时间 + + } + + // 内部类 Set 设置 + @Data + public static class Set { + private Boolean kaiguan; + private int xp_min; + } + + // 内部类 Tr 土壤 + @Data + public static class Tr { + private int end_sd; + private Boolean kaiguan; + private int start_sd; + + } + + //下次浇水时间 + @Data + private class nextDs { + private int hour; + private int min; + private int sec; + private Boolean sw;//开关 + } +} diff --git a/AutoSprout-quartz/src/main/java/com/ruoyi/quartz/domain/Datastream.java b/AutoSprout-common/src/main/java/com/ruoyi/common/core/domain/onenet/Datastream.java similarity index 55% rename from AutoSprout-quartz/src/main/java/com/ruoyi/quartz/domain/Datastream.java rename to AutoSprout-common/src/main/java/com/ruoyi/common/core/domain/onenet/Datastream.java index 5f25cbc..683fb2f 100644 --- a/AutoSprout-quartz/src/main/java/com/ruoyi/quartz/domain/Datastream.java +++ b/AutoSprout-common/src/main/java/com/ruoyi/common/core/domain/onenet/Datastream.java @@ -1,4 +1,4 @@ -package com.ruoyi.quartz.domain; +package com.ruoyi.common.core.domain.onenet; import lombok.Data; import java.util.List; @@ -6,7 +6,7 @@ import java.util.List; @Data public class Datastream { - private List datapoints; + private List datapoints; private String id; } diff --git a/AutoSprout-common/src/main/java/com/ruoyi/common/utils/qiniu/QiNiuUtils.java b/AutoSprout-common/src/main/java/com/ruoyi/common/utils/qiniu/QiNiuUtils.java new file mode 100644 index 0000000..44b9595 --- /dev/null +++ b/AutoSprout-common/src/main/java/com/ruoyi/common/utils/qiniu/QiNiuUtils.java @@ -0,0 +1,37 @@ +package com.ruoyi.common.utils.qiniu; + +import com.qiniu.util.Auth; +import com.qiniu.util.StringMap; +import com.ruoyi.common.utils.spring.SpringUtils; + +/** + * 七牛云工具类 + * @author wjh + * 2024/3/26 + */ +public class QiNiuUtils { + + public static final String ACCESS_KEY = SpringUtils.getRequiredProperty("qiniu.accessKey"); + public static final String SECRET_KEY = SpringUtils.getRequiredProperty("qiniu.secretKey"); + public static final String BUCKET = SpringUtils.getRequiredProperty("qiniu.bucket"); + public static final Long EXPIRE_SECONDS = Long.parseLong(SpringUtils.getRequiredProperty("qiniu.expireSeconds")); // 过期时间(秒) + public static final String DOMAIN = SpringUtils.getRequiredProperty("qiniu.domain"); // 域名 + + /** + * 获取文件上传的token + * @return token + */ + public static String getToken() { + StringMap putPolicy = new StringMap(); + Auth auth = Auth.create(ACCESS_KEY, SECRET_KEY); + return auth.uploadToken(BUCKET,null, EXPIRE_SECONDS, putPolicy); + } + +// public static void main(String[] args) { +// StringMap putPolicy = new StringMap(); +// Auth auth = Auth.create("MI4PDg9LYWXJyahzx5ec6-Ih0YNwQhew_BQUhttS", "Lk3fHHEnJuf0jD_Zte1xhtv7BTvjvmaWVCKd7O0J"); +// String s = auth.uploadToken("autosprout", null, 600L, putPolicy); +// System.out.println(s); +// } + +} diff --git a/AutoSprout-quartz/src/main/java/com/ruoyi/quartz/domain/DatapointValue.java b/AutoSprout-quartz/src/main/java/com/ruoyi/quartz/domain/DatapointValue.java deleted file mode 100644 index 877ab89..0000000 --- a/AutoSprout-quartz/src/main/java/com/ruoyi/quartz/domain/DatapointValue.java +++ /dev/null @@ -1,212 +0,0 @@ -package com.ruoyi.quartz.domain; - -import com.alibaba.fastjson2.annotation.JSONField; -import lombok.Data; - -@Data -public class DatapointValue { - - private Ds ds; - private int jiaoshui_qiangdu; - private Mc mc; - private Set set; - private Tr tr; - private int turan_show; - - - public Ds getDs() { - return ds; - } - - public void setDs(Ds ds) { - this.ds = ds; - } - - public int getJiaoshui_qiangdu() { - return jiaoshui_qiangdu; - } - - public void setJiaoshui_qiangdu(int jiaoshui_qiangdu) { - this.jiaoshui_qiangdu = jiaoshui_qiangdu; - } - - public Mc getMc() { - return mc; - } - - public void setMc(Mc mc) { - this.mc = mc; - } - - public Set getSet() { - return set; - } - - public void setSet(Set set) { - this.set = set; - } - - public Tr getTr() { - return tr; - } - - public void setTr(Tr tr) { - this.tr = tr; - } - - public int getTuran_show() { - return turan_show; - } - - public void setTuran_show(int turan_show) { - this.turan_show = turan_show; - } - - // 内部类 Ds - public static class Ds { - private int js_sec; - private boolean kaiguan; - private int start_hour; - private int start_min; - - // getters and setters - - @JSONField(name = "js_sec") - public int getJs_sec() { - return js_sec; - } - - @JSONField(name = "js_sec") - public void setJs_sec(int js_sec) { - this.js_sec = js_sec; - } - - public boolean getKaiguan() { - return kaiguan; - } - - public void setKaiguan(boolean kaiguan) { - this.kaiguan = kaiguan; - } - - @JSONField(name = "start_hour") - public int getStart_hour() { - return start_hour; - } - - @JSONField(name = "start_hour") - public void setStart_hour(int start_hour) { - this.start_hour = start_hour; - } - - @JSONField(name = "start_min") - public int getStart_min() { - return start_min; - } - - @JSONField(name = "start_min") - public void setStart_min(int start_min) { - this.start_min = start_min; - } - } - - // 内部类 Mc - public static class Mc { - private int jg_sec; - private int js_sec; - private boolean kaiguan; - - // getters and setters - - @JSONField(name = "jg_sec") - public int getJg_sec() { - return jg_sec; - } - - @JSONField(name = "jg_sec") - public void setJg_sec(int jg_sec) { - this.jg_sec = jg_sec; - } - - @JSONField(name = "js_sec") - public int getJs_sec() { - return js_sec; - } - - @JSONField(name = "js_sec") - public void setJs_sec(int js_sec) { - this.js_sec = js_sec; - } - - public boolean getKaiguan() { - return kaiguan; - } - - public void setKaiguan(boolean kaiguan) { - this.kaiguan = kaiguan; - } - } - - // 内部类 Set - public static class Set { - private boolean kaiguan; - private int xp_min; - - // getters and setters - - public boolean getKaiguan() { - return kaiguan; - } - - public void setKaiguan(boolean kaiguan) { - this.kaiguan = kaiguan; - } - - @JSONField(name = "xp_min") - public int getXp_min() { - return xp_min; - } - - @JSONField(name = "xp_min") - public void setXp_min(int xp_min) { - this.xp_min = xp_min; - } - } - - // 内部类 Tr - public static class Tr { - private int end_sd; - private boolean kaiguan; - private int start_sd; - - // getters and setters - - @JSONField(name = "end_sd") - public int getEnd_sd() { - return end_sd; - } - - @JSONField(name = "end_sd") - public void setEnd_sd(int end_sd) { - this.end_sd = end_sd; - } - - public boolean getKaiguan() { - return kaiguan; - } - - public void setKaiguan(boolean kaiguan) { - this.kaiguan = kaiguan; - } - - @JSONField(name = "start_sd") - public int getStart_sd() { - return start_sd; - } - - @JSONField(name = "start_sd") - public void setStart_sd(int start_sd) { - this.start_sd = start_sd; - } - } -} diff --git a/AutoSprout-quartz/src/main/java/com/ruoyi/quartz/domain/WateringLog.java b/AutoSprout-quartz/src/main/java/com/ruoyi/quartz/domain/WateringLog.java index 126580f..203ccd4 100644 --- a/AutoSprout-quartz/src/main/java/com/ruoyi/quartz/domain/WateringLog.java +++ b/AutoSprout-quartz/src/main/java/com/ruoyi/quartz/domain/WateringLog.java @@ -1,5 +1,6 @@ package com.ruoyi.quartz.domain; +import com.ruoyi.common.core.domain.onenet.DatapointValue; import lombok.Data; @Data diff --git a/AutoSprout-quartz/src/main/java/com/ruoyi/quartz/task/IotLogTask.java b/AutoSprout-quartz/src/main/java/com/ruoyi/quartz/task/IotLogTask.java index d3b274d..bf2dbd0 100644 --- a/AutoSprout-quartz/src/main/java/com/ruoyi/quartz/task/IotLogTask.java +++ b/AutoSprout-quartz/src/main/java/com/ruoyi/quartz/task/IotLogTask.java @@ -2,6 +2,7 @@ package com.ruoyi.quartz.task; import com.alibaba.fastjson2.JSONObject; import com.ruoyi.common.constant.IotConstants; +import com.ruoyi.common.core.domain.onenet.Datapoint; import com.ruoyi.common.utils.DateUtils; import com.ruoyi.common.utils.http.HttpUtils; import com.ruoyi.common.utils.onenet.Token; @@ -9,9 +10,9 @@ import com.ruoyi.device.domain.AsDevice; import com.ruoyi.device.domain.AsWateringRecord; import com.ruoyi.device.mapper.AsDeviceMapper; import com.ruoyi.device.mapper.AsWateringRecordMapper; -import com.ruoyi.quartz.domain.Data; -import com.ruoyi.quartz.domain.DataPointRes; -import com.ruoyi.quartz.domain.Datastream; +import com.ruoyi.common.core.domain.onenet.Data; +import com.ruoyi.common.core.domain.onenet.DataPointRes; +import com.ruoyi.common.core.domain.onenet.Datastream; import com.ruoyi.quartz.domain.WateringLog; import lombok.SneakyThrows; import org.slf4j.Logger; @@ -67,7 +68,7 @@ public class IotLogTask { for (Datastream datastream: datastreams) { if(datastream.getId().equals("jj")){ - List datapoints = datastream.getDatapoints(); + List datapoints = datastream.getDatapoints(); for (Object obj:datapoints) { // String s = JSON.toJSONString(obj); // Datapoint datapoint = JSONObject.parseObject(s, Datapoint.class); diff --git a/AutoSprout-ui/src/api/plant/log.js b/AutoSprout-ui/src/api/plant/log.js new file mode 100644 index 0000000..faf60da --- /dev/null +++ b/AutoSprout-ui/src/api/plant/log.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询植物识别日志列表 +export function listLog(query) { + return request({ + url: '/plant/identify/list', + method: 'get', + params: query + }) +} + +// 查询植物识别日志详细 +export function getLog(id) { + return request({ + url: '/plant/identify/' + id, + method: 'get' + }) +} + +// 新增植物识别日志 +export function addLog(data) { + return request({ + url: '/plant/identify', + method: 'post', + data: data + }) +} + +// 修改植物识别日志 +export function updateLog(data) { + return request({ + url: '/plant/identify', + method: 'put', + data: data + }) +} + +// 删除植物识别日志 +export function delLog(id) { + return request({ + url: '/plant/identify/' + id, + method: 'delete' + }) +} diff --git a/AutoSprout-ui/src/views/plant/log/index.vue b/AutoSprout-ui/src/views/plant/log/index.vue new file mode 100644 index 0000000..83383b3 --- /dev/null +++ b/AutoSprout-ui/src/views/plant/log/index.vue @@ -0,0 +1,245 @@ + + + diff --git a/AutoSprout-ui/src/views/plant/plant/index.vue b/AutoSprout-ui/src/views/plant/plant/index.vue index 32b3bab..d68f6d9 100644 --- a/AutoSprout-ui/src/views/plant/plant/index.vue +++ b/AutoSprout-ui/src/views/plant/plant/index.vue @@ -116,7 +116,7 @@ - +