zmc
2023-08-14 9376436cdd6e3986cc4af4b4a6aa9e78e2b32de0
油烟监测系统 SprintBoot代码
已修改9个文件
已添加1个文件
145 ■■■■■ 文件已修改
src/main/java/com/job/zsc/controller/FugitiveDustController.java 22 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/job/zsc/mapper/FugitiveDustMapper.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/job/zsc/pojo/AnalysisDustData.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/job/zsc/pojo/DustExceptionType.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/job/zsc/pojo/FumeHistoryData.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/job/zsc/service/FugitiveDustService.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/job/zsc/service/impl/FugitiveDustServiceImpl.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/application.yml 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/com/job/zsc/mapper/FugitiveDustMapper.xml 50 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/com/job/zsc/mapper/Vue3FumeMapper.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
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);
    }
}
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();
}
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;
}
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;
}
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;        //上报时间
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();
}
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;
    }
}
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:
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>
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 (