From 9376436cdd6e3986cc4af4b4a6aa9e78e2b32de0 Mon Sep 17 00:00:00 2001
From: zmc <zmc_li@foxmail.com>
Date: 星期一, 14 八月 2023 17:09:42 +0800
Subject: [PATCH] 油烟监测系统 SprintBoot代码

---
 src/main/java/com/job/zsc/service/impl/FugitiveDustServiceImpl.java |   27 +++++++++
 src/main/java/com/job/zsc/pojo/AnalysisDustData.java                |    3 
 src/main/java/com/job/zsc/pojo/FumeHistoryData.java                 |    1 
 src/main/java/com/job/zsc/pojo/DustExceptionType.java               |   15 +++++
 src/main/resources/com/job/zsc/mapper/FugitiveDustMapper.xml        |   50 ++++++++++++++++
 src/main/java/com/job/zsc/controller/FugitiveDustController.java    |   22 ++++++-
 src/main/java/com/job/zsc/service/FugitiveDustService.java          |    7 ++
 src/main/java/com/job/zsc/mapper/FugitiveDustMapper.java            |    6 ++
 src/main/resources/com/job/zsc/mapper/Vue3FumeMapper.xml            |    2 
 src/main/resources/application.yml                                  |   12 ++--
 10 files changed, 131 insertions(+), 14 deletions(-)

diff --git a/src/main/java/com/job/zsc/controller/FugitiveDustController.java b/src/main/java/com/job/zsc/controller/FugitiveDustController.java
index 7225986..032f89a 100644
--- a/src/main/java/com/job/zsc/controller/FugitiveDustController.java
+++ b/src/main/java/com/job/zsc/controller/FugitiveDustController.java
@@ -1,10 +1,7 @@
 package com.job.zsc.controller;
 
 
-import com.job.zsc.pojo.AnalysisDustData;
-import com.job.zsc.pojo.DustSiteData;
-import com.job.zsc.pojo.PageBean;
-import com.job.zsc.pojo.Result;
+import com.job.zsc.pojo.*;
 import com.job.zsc.service.FugitiveDustService;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -51,4 +48,21 @@
         List<AnalysisDustData> list = fugitiveDustService.analysisdata(siteName,beginTime,endTime);
         return Result.success(list);
     }
+
+//    鏍规嵁绔欑偣鍚嶅瓧鍜屾椂娈佃繘琛岀粺璁″垎鏋� 鍚庣鍒嗛〉
+    @GetMapping("/analysistime")
+    public Result analysisByTime( @RequestParam(defaultValue = "1") Integer page,
+                                  @RequestParam(defaultValue = "20")Integer pageSize,String siteName,String beginTime, String endTime){
+    PageBean pageBean = fugitiveDustService.pageAnalysisTime(page,pageSize,siteName,beginTime,endTime);
+    return Result.success(pageBean);
+}
+
+    @GetMapping("/exceptiontype")
+    public Result getExceptionType( ){
+        List<DustExceptionType> list = fugitiveDustService.getExceptionType();
+        return Result.success(list);
+    }
+
+
+
 }
diff --git a/src/main/java/com/job/zsc/mapper/FugitiveDustMapper.java b/src/main/java/com/job/zsc/mapper/FugitiveDustMapper.java
index e9eb6ed..9d5432f 100644
--- a/src/main/java/com/job/zsc/mapper/FugitiveDustMapper.java
+++ b/src/main/java/com/job/zsc/mapper/FugitiveDustMapper.java
@@ -1,6 +1,7 @@
 package com.job.zsc.mapper;
 
 import com.job.zsc.pojo.AnalysisDustData;
+import com.job.zsc.pojo.DustExceptionType;
 import com.job.zsc.pojo.DustSiteData;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
@@ -20,4 +21,9 @@
     List<DustSiteData> allSiteName();
 
     List<AnalysisDustData> analysisdata( String siteName,String beginTime, String endTime);
+
+    List<AnalysisDustData> analysisByTime(String siteName, String beginTime, String endTime);
+
+    @Select("select DISTINCT exception,exception_type from dust_exception_data")
+    List<DustExceptionType> getExceptionType();
 }
diff --git a/src/main/java/com/job/zsc/pojo/AnalysisDustData.java b/src/main/java/com/job/zsc/pojo/AnalysisDustData.java
index 6392325..ffa3b8a 100644
--- a/src/main/java/com/job/zsc/pojo/AnalysisDustData.java
+++ b/src/main/java/com/job/zsc/pojo/AnalysisDustData.java
@@ -13,6 +13,7 @@
 public class AnalysisDustData {
 
     private String mnCode;
+    private  String name;
 
     @JsonFormat(pattern = "yyyy-MM-dd")
     private LocalDate lst;
@@ -21,6 +22,4 @@
     private String dayOnline;
     private String dayValid;
     private String  dayExceeding;
-
-
 }
diff --git a/src/main/java/com/job/zsc/pojo/DustExceptionType.java b/src/main/java/com/job/zsc/pojo/DustExceptionType.java
new file mode 100644
index 0000000..dd1ee3a
--- /dev/null
+++ b/src/main/java/com/job/zsc/pojo/DustExceptionType.java
@@ -0,0 +1,15 @@
+package com.job.zsc.pojo;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+//鎵皹鐨勫紓甯哥被鍨嬪疄浣撶被
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class DustExceptionType {
+    private String exception;
+    private String exception_type;
+
+}
diff --git a/src/main/java/com/job/zsc/pojo/FumeHistoryData.java b/src/main/java/com/job/zsc/pojo/FumeHistoryData.java
index 49423c3..c22fbe2 100644
--- a/src/main/java/com/job/zsc/pojo/FumeHistoryData.java
+++ b/src/main/java/com/job/zsc/pojo/FumeHistoryData.java
@@ -14,6 +14,7 @@
 
     private String mvStatCode;          //璁惧缂栧彿
     private String diName;              //搴楅摵鍚嶇О
+    private String diSupplier;          //渚涘簲鍟�
 
 //    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
 //    private LocalDateTime mvCreateTime;        //涓婃姤鏃堕棿
diff --git a/src/main/java/com/job/zsc/service/FugitiveDustService.java b/src/main/java/com/job/zsc/service/FugitiveDustService.java
index 0c38476..32435d7 100644
--- a/src/main/java/com/job/zsc/service/FugitiveDustService.java
+++ b/src/main/java/com/job/zsc/service/FugitiveDustService.java
@@ -1,6 +1,7 @@
 package com.job.zsc.service;
 
 import com.job.zsc.pojo.AnalysisDustData;
+import com.job.zsc.pojo.DustExceptionType;
 import com.job.zsc.pojo.DustSiteData;
 import com.job.zsc.pojo.PageBean;
 
@@ -15,4 +16,10 @@
     List<DustSiteData> allSiteName();
 
     List<AnalysisDustData> analysisdata( String siteName,String beginTime, String endTime);
+
+    List<AnalysisDustData> analysisByTime(String siteName, String beginTime, String endTime);
+
+    PageBean pageAnalysisTime(Integer page, Integer pageSize, String siteName, String beginTime, String endTime);
+
+    List<DustExceptionType> getExceptionType();
 }
diff --git a/src/main/java/com/job/zsc/service/impl/FugitiveDustServiceImpl.java b/src/main/java/com/job/zsc/service/impl/FugitiveDustServiceImpl.java
index 1fd0a83..4b2c3f3 100644
--- a/src/main/java/com/job/zsc/service/impl/FugitiveDustServiceImpl.java
+++ b/src/main/java/com/job/zsc/service/impl/FugitiveDustServiceImpl.java
@@ -4,6 +4,7 @@
 import com.github.pagehelper.PageHelper;
 import com.job.zsc.mapper.FugitiveDustMapper;
 import com.job.zsc.pojo.AnalysisDustData;
+import com.job.zsc.pojo.DustExceptionType;
 import com.job.zsc.pojo.DustSiteData;
 import com.job.zsc.pojo.PageBean;
 import com.job.zsc.service.FugitiveDustService;
@@ -51,4 +52,30 @@
         List<AnalysisDustData> list = fugitiveDustMapper.analysisdata(siteName,beginTime,endTime);
         return list;
     }
+
+    @Override
+    public List<AnalysisDustData> analysisByTime(String siteName, String beginTime, String endTime) {
+        List<AnalysisDustData> list = fugitiveDustMapper.analysisByTime(siteName,beginTime,endTime);
+        return list;
+    }
+
+    @Override
+    public PageBean pageAnalysisTime(Integer page, Integer pageSize, String siteName, String beginTime, String endTime) {
+        //璁剧疆鍒嗛〉鍙傛暟
+        PageHelper.startPage(page,pageSize);
+        //鎵ц鏌ヨ
+        List<AnalysisDustData> infoList=fugitiveDustMapper.analysisByTime(siteName,beginTime,endTime);
+        //鑾峰彇鏌ヨ缁撴灉
+        Page<AnalysisDustData> p=(Page<AnalysisDustData>)infoList;
+
+        //灏佽PageBean瀵硅薄*/
+        PageBean pageBean=new PageBean(p.getTotal(),p.getResult());
+        return  pageBean;
+    }
+
+    @Override
+    public List<DustExceptionType> getExceptionType() {
+        List<DustExceptionType> list = fugitiveDustMapper.getExceptionType();
+        return list;
+    }
 }
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index 44b3b7e..a2eb7ce 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -1,13 +1,13 @@
 spring:
   datasource:
     driver-class-name: com.mysql.cj.jdbc.Driver
-    url: jdbc:mysql://localhost:3306/fume
-    username: fume
-    password: fume_feiyu2023
+#    url: jdbc:mysql://localhost:3306/fume
+#    username: fume
+#    password: fume_feiyu2023
 
-#    url: jdbc:mysql://localhost:3306/qianduan_sql
-#    username: root
-#    password: 1234
+    url: jdbc:mysql://localhost:3306/qianduan_sql
+    username: root
+    password: 1234
 
 mybatis:
   configuration:
diff --git a/src/main/resources/com/job/zsc/mapper/FugitiveDustMapper.xml b/src/main/resources/com/job/zsc/mapper/FugitiveDustMapper.xml
index 1234589..1d320aa 100644
--- a/src/main/resources/com/job/zsc/mapper/FugitiveDustMapper.xml
+++ b/src/main/resources/com/job/zsc/mapper/FugitiveDustMapper.xml
@@ -30,7 +30,7 @@
 
 <!--鍒嗘瀽鏁版嵁-->
     <select id="analysisdata" resultType="com.job.zsc.pojo.AnalysisDustData">
-        select a.* from avg_dust_value as a join ja_t_dust_site_info as b on a.mn_code = b. mn_code
+        select a.* from dust_statistics_value as a join ja_t_dust_site_info as b on a.mn_code = b. mn_code
         <where>
             <if test="siteName !=null and siteName != ''">
                 b.name = #{siteName}
@@ -41,4 +41,52 @@
             </if>
         </where>
     </select>
+
+
+<!--    鏍规嵁绔欑偣鍚嶅瓧鍜屾椂娈佃繘琛岀粺璁″垎鏋�-->
+<!--    <select id="analysisByTime" resultType="com.job.zsc.pojo.AnalysisDustData">-->
+<!--        select-->
+<!--        a.mn_code as mn_code,-->
+<!--        DATE(a.lst) as lst,-->
+<!--        ROUND(AVG(a.dust_value),3)  as day_avg,-->
+<!--        CONCAT(ROUND(COUNT(*)/96*100, 2), '%')  as day_online,-->
+<!--        CONCAT(ROUND(SUM(CASE WHEN a.dust_value >0 THEN 1 ELSE 0 END)/COUNT(*) *100, 2), '%') as day_valid,-->
+<!--        CONCAT(ROUND(SUM(CASE WHEN a.dust_value >= 1  THEN 1 ELSE 0 END)/96*100,2),'%') as  day_exceeding-->
+<!--        from ja_t_dust_site_data_info as a join ja_t_dust_site_info as b on a.mn_code = b.mn_code-->
+<!--        <where>-->
+<!--            <if test="siteName !=null and siteName != ''">-->
+<!--                b.name = #{siteName}-->
+<!--            </if>-->
+
+<!--            <if test="beginTime != null and endTime != null">-->
+<!--              and  a.lst between #{beginTime} and #{endTime}-->
+<!--            </if>-->
+<!--        </where>-->
+<!--        group by a.mn_code,DATE(a.lst)-->
+<!--        order by lst asc-->
+<!--    </select>-->
+    <!--    鏍规嵁绔欑偣鍚嶅瓧鍜屾椂娈佃繘琛岀粺璁″垎鏋�-->
+    <select id="analysisByTime" resultType="com.job.zsc.pojo.AnalysisDustData">
+        select  c.name,d.*
+        from ja_t_dust_site_info as c  join
+        (select
+        a.mn_code as mn_code,
+        DATE(a.lst) as lst,
+        ROUND(AVG(a.dust_value),3)  as day_avg,
+        CONCAT(ROUND(COUNT(*)/96*100, 2), '%')  as day_online,
+        CONCAT(ROUND(SUM(CASE WHEN a.dust_value >0 THEN 1 ELSE 0 END)/COUNT(*) *100, 2), '%') as day_valid,
+        CONCAT(ROUND(SUM(CASE WHEN a.dust_value >= 1  THEN 1 ELSE 0 END)/96*100,2),'%') as  day_exceeding
+        from ja_t_dust_site_data_info as a join ja_t_dust_site_info as b on a.mn_code = b.mn_code
+        <where>
+            <if test="siteName !=null and siteName != ''">
+                b.name = #{siteName}
+            </if>
+
+            <if test="beginTime != null and endTime != null">
+                and  a.lst between #{beginTime} and #{endTime}
+            </if>
+        </where>
+        GROUP BY a.mn_code,DATE(a.lst)
+        order by lst asc ) as d  on c.mn_code = d.mn_code
+    </select>
 </mapper>
\ No newline at end of file
diff --git a/src/main/resources/com/job/zsc/mapper/Vue3FumeMapper.xml b/src/main/resources/com/job/zsc/mapper/Vue3FumeMapper.xml
index 2e8cb91..c3abbaf 100644
--- a/src/main/resources/com/job/zsc/mapper/Vue3FumeMapper.xml
+++ b/src/main/resources/com/job/zsc/mapper/Vue3FumeMapper.xml
@@ -139,7 +139,7 @@
 
     <!-- 澶氶�夊簵閾哄悕 杩斿洖澶氶�夊簵閾烘渶鏂颁竴鏉℃暟鎹�-->
     <select id="findLaststById" resultType="com.job.zsc.pojo.FumeHistoryData">
-        SELECT a.MV_Stat_Code, b.DI_Name, a.MV_Data_Time,a.MV_Fan_Electricity,a.MV_Purifier_Electricity,a.MV_Fume_Concentration2
+        SELECT a.MV_Stat_Code, b.DI_Name, b.DI_Supplier, a.MV_Data_Time,a.MV_Fan_Electricity,a.MV_Purifier_Electricity,a.MV_Fume_Concentration2
         FROM fd_t_minutevalue as a
         JOIN ea_t_device_info  as b ON a.MV_Stat_Code = b.DI_Code
         JOIN (

--
Gitblit v1.9.3