| | |
| | | //å»é 对from_web_analysis_dataæ°æ®åº |
| | | @GetMapping("/search") |
| | | public Result search(String shopname,String value,String begin, String end){ |
| | | Integer count=analysisDataService.search(shopname,value,begin,end); |
| | | return Result.success(count); |
| | | List<AnalysisData> list=analysisDataService.search(shopname,value,begin,end); |
| | | return Result.success(list); |
| | | } |
| | | |
| | | } |
| | |
| | | return Result.success(pageBean); |
| | | } |
| | | |
| | | //è·å¾ä¸åçå¼å¸¸ç±»å |
| | | @GetMapping("/exceptiontype") |
| | | public Result getExceptionType( ){ |
| | | public Result getExceptionType(){ |
| | | List<DustExceptionType> list = fugitiveDustService.getExceptionType(); |
| | | return Result.success(list); |
| | | } |
| | | |
| | | //æ¡ä»¶æ¥è¯¢å¼å¸¸æ°æ® |
| | | @GetMapping("/exceptiondata") |
| | | public Result getExceptionData(@RequestParam(defaultValue = "1") Integer page, |
| | | @RequestParam(defaultValue = "20")Integer pageSize,String siteName,String [] exceptionType,String beginTime, String endTime){ |
| | | PageBean pageBean = fugitiveDustService.getExceptionData(page,pageSize,siteName,exceptionType,beginTime,endTime); |
| | | return Result.success(pageBean); |
| | | } |
| | | //æ¡ä»¶æ¥è¯¢å¼å¸¸æ°æ® ä¸å页 |
| | | @GetMapping("/exceptiondata1") |
| | | public Result getExceptionAllData(String siteName,String [] exceptionType,String beginTime, String endTime){ |
| | | List<DustExceptionData> list = fugitiveDustService.getExceptionAllData(siteName,exceptionType,beginTime,endTime); |
| | | return Result.success(list); |
| | | } |
| | | |
| | | //æ ¹æ®ææ®µæ¶é´å
æä¸ªå¼å¸¸ç±»åæ¥è¯¢å¯¹åºçåºéºåç§°å设å¤ç¼å· |
| | | @GetMapping("/sitenamecode") |
| | | public Result getExceptionSitenameAndCode(String exceptionType,String beginTime, String endTime){ |
| | | List<DustExceptionData> list = fugitiveDustService.getExceptionSitenameAndCode(exceptionType,beginTime,endTime); |
| | | return Result.success(list); |
| | | } |
| | | |
| | | |
| | | // æ ¹æ®æ¶é´è¿å该å¼å¸¸ç±»åçä¸ªæ° |
| | | @GetMapping("/exceptionnum") |
| | | public Result exceptionNum(String exceptionType,String beginTime,String endTime){ |
| | | Integer list = fugitiveDustService.exceptionNum( exceptionType, beginTime, endTime); |
| | | return Result.success(list); |
| | | } |
| | | |
| | | // æ¥è¯¢å岿°æ® ä¸å页 |
| | | @GetMapping("/history") |
| | | public Result conditonQueryHistoryData(String siteName,String beginTime, String endTime ){ |
| | | List<DustSiteData> list= fugitiveDustService.conditonQueryHistoryData(siteName,beginTime,endTime); |
| | | return Result.success(list); |
| | | } |
| | | |
| | | // è¿åå¼å¸¸çåºéºæ»æ° |
| | | @GetMapping("/exceptionsitenum") |
| | | public Result exceptionSiteNum(){ |
| | | List<DustExceptionData> list = fugitiveDustService.exceptionSiteNum(); |
| | | return Result.success(list); |
| | | } |
| | | |
| | | } |
| | |
| | | import org.springframework.stereotype.Controller; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import javax.naming.InsufficientResourcesException; |
| | | import java.util.List; |
| | | |
| | | @Slf4j |
| | |
| | | return Result.success(list); |
| | | } |
| | | |
| | | // æ ¹æ®æ¶é´è¿å该å¼å¸¸ç±»åçä¸ªæ° |
| | | @GetMapping("/exceptionnum") |
| | | public Result exceptionNum(String exceptionType,String beginTime,String endTime){ |
| | | Integer list = vue3FumeService.exceptionNum( exceptionType, beginTime, endTime); |
| | | return Result.success(list); |
| | | } |
| | | |
| | | } |
| | |
| | | @Insert("insert into fm_web_analysis_data values(#{fumeDevId},#{fumeDate},#{fumeDayMin},#{fumeDayMax},#{fumeDayAverage},#{purifierOpenRate},#{fumeMinuteExceedingNum},#{fumeOverStandardRate},#{fumeDataEfficiency},#{dailyOnlineRate},#{noonOnlineRate},#{nightOnlineRate},#{keyOnlineRate},#{noonValidRate},#{nightValidRate},#{keyValidRate},#{noonOpeningCount},#{nightOpeningCount},#{keyOpeningRate},#{noonExceedingNum},#{nightExceedingNum},#{keyExceedingRate})") |
| | | void write(AnalysisData analysisData); |
| | | |
| | | Integer search(String shopname,String value, String begin, String end); |
| | | List<AnalysisData> search(String shopname,String value, String begin, String end); |
| | | |
| | | } |
| | |
| | | package com.job.zsc.mapper; |
| | | |
| | | import com.job.zsc.pojo.AnalysisDustData; |
| | | import com.job.zsc.pojo.DustExceptionData; |
| | | import com.job.zsc.pojo.DustExceptionType; |
| | | import com.job.zsc.pojo.DustSiteData; |
| | | import org.apache.ibatis.annotations.Mapper; |
| | |
| | | |
| | | @Select("select DISTINCT exception,exception_type from dust_exception_data") |
| | | List<DustExceptionType> getExceptionType(); |
| | | |
| | | List<DustExceptionData> getExceptionData(String siteName, @Param("exceptionType")String[] exceptionType, String beginTime, String endTime); |
| | | |
| | | List<DustExceptionData> getExceptionSitenameAndCode(String exceptionType, String beginTime, String endTime); |
| | | |
| | | @Select("select count(*) from dust_exception_data as a join ja_t_dust_site_info as b on a.mn_code = b.mn_code where exception_type = #{exceptionType} and (begin_time between #{beginTime} and #{endTime} or end_time between #{beginTime} and #{endTime})") |
| | | Integer exceptionNum(String exceptionType, String beginTime, String endTime); |
| | | |
| | | List<DustSiteData> conditonQueryHistoryData(String siteName, String beginTime, String endTime); |
| | | |
| | | @Select("select DISTINCT mn_code from dust_exception_data") |
| | | List<DustExceptionData> exceptionSiteNum(); |
| | | } |
| | |
| | | List<FumeHistoryData> shopnamePythonUse(); |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | @Select("select count(*) from abnormal_data where exception_type = #{exceptionType} and (begin_time between #{beginTime} and #{endTime} or end_time between #{beginTime} and #{endTime})") |
| | | Integer exceptionNum(String exceptionType, String beginTime, String endTime); |
| | | |
| | | |
| | | // è¿å设å¤ä¿¡æ¯è¡¨çæ¡æ° |
| | | // @Select("SELECT count(*) from ea_t_device_info") |
| | | // String shopNum(); |
| | |
| | | public class AnalysisData { |
| | | //å
±22ä¸ªå±æ§ |
| | | private String fumeDevId; |
| | | |
| | | private String diName; |
| | | @JsonFormat(pattern = "yyyy-MM-dd") |
| | | private LocalDate fumeDate; |
| | | |
| | |
| | | private LocalDate lst; |
| | | |
| | | private Double dayAvg; |
| | | private Double min; |
| | | private Double max; |
| | | private String dayOnline; |
| | | private String dayValid; |
| | | private String dayExceeding; |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.job.zsc.pojo; |
| | | |
| | | import com.fasterxml.jackson.annotation.JsonFormat; |
| | | import lombok.AllArgsConstructor; |
| | | import lombok.Data; |
| | | import lombok.NoArgsConstructor; |
| | | |
| | | import javax.xml.ws.soap.Addressing; |
| | | |
| | | @Data |
| | | @AllArgsConstructor |
| | | @NoArgsConstructor |
| | | public class DustExceptionData { |
| | | |
| | | private String id; |
| | | private String name; //ç«ç¹åå |
| | | private String mnCode; //设å¤ç¼å· |
| | | private String typename; //åºæ¯ |
| | | private String address; //å°å |
| | | |
| | | private String dutyCompany; //è¿ç»´å |
| | | |
| | | private String exception; |
| | | |
| | | private String exceptionType; |
| | | |
| | | private String region; |
| | | |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
| | | private String beginTime; |
| | | |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
| | | private String endTime; |
| | | |
| | | } |
| | |
| | | @NoArgsConstructor |
| | | public class DustExceptionType { |
| | | private String exception; |
| | | private String exception_type; |
| | | |
| | | private String exceptionType; |
| | | } |
| | |
| | | private String name; |
| | | private String address; |
| | | private String sName; |
| | | private String dutyCompany; |
| | | |
| | | private String mnCode; |
| | | private String typeName; |
| | | private String dustValue; |
| | |
| | | private String id; |
| | | private String devId; //设å¤ç¼å· |
| | | private String diName; //åºéºå |
| | | private String diSupplier; //ä¾åºå |
| | | private String exception; //å¼å¸¸åç±» |
| | | private String exceptionType; //å¼å¸¸ç±»å |
| | | private String region; //å°åº |
| | |
| | | |
| | | void write(AnalysisData analysisData); |
| | | |
| | | Integer search(String shopname, String value,String begin, String end); |
| | | List<AnalysisData> search(String shopname, String value,String begin, String end); |
| | | } |
| | |
| | | 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; |
| | | import com.job.zsc.pojo.*; |
| | | |
| | | import java.util.List; |
| | | |
| | |
| | | PageBean pageAnalysisTime(Integer page, Integer pageSize, String siteName, String beginTime, String endTime); |
| | | |
| | | List<DustExceptionType> getExceptionType(); |
| | | |
| | | |
| | | PageBean getExceptionData(Integer page, Integer pageSize, String siteName, String[] exceptionType, String beginTime, String endTime); |
| | | |
| | | List<DustExceptionData> getExceptionSitenameAndCode(String exceptionType, String beginTime, String endTime); |
| | | |
| | | Integer exceptionNum(String exceptionType, String beginTime, String endTime); |
| | | |
| | | List<DustSiteData> conditonQueryHistoryData(String siteName, String beginTime, String endTime); |
| | | |
| | | List<DustExceptionData> getExceptionAllData(String siteName, String[] exceptionType, String beginTime, String endTime); |
| | | |
| | | List<DustExceptionData> exceptionSiteNum(); |
| | | } |
| | |
| | | |
| | | List<FumeHistoryData> shopnamePythonUse(); |
| | | |
| | | Integer exceptionNum(String exceptionType, String beginTime, String endTime); |
| | | |
| | | |
| | | // String shopNum(); |
| | | } |
| | |
| | | } |
| | | |
| | | @Override |
| | | public Integer search(String shopname, String value ,String begin, String end) { |
| | | Integer count=analysisDataMapper.search(shopname,value,begin,end); |
| | | return count; |
| | | public List<AnalysisData> search(String shopname, String value ,String begin, String end) { |
| | | List<AnalysisData> list=analysisDataMapper.search(shopname,value,begin,end); |
| | | return list; |
| | | } |
| | | |
| | | |
| | |
| | | import com.github.pagehelper.Page; |
| | | 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.pojo.*; |
| | | import com.job.zsc.service.FugitiveDustService; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | |
| | | List<DustExceptionType> list = fugitiveDustMapper.getExceptionType(); |
| | | return list; |
| | | } |
| | | |
| | | @Override |
| | | public PageBean getExceptionData(Integer page, Integer pageSize, String siteName, String[] exceptionType, String beginTime, String endTime) { |
| | | //设置å页忰 |
| | | PageHelper.startPage(page,pageSize); |
| | | |
| | | List<DustExceptionData> infoList = fugitiveDustMapper.getExceptionData(siteName,exceptionType,beginTime,endTime); |
| | | //è·åæ¥è¯¢ç»æ |
| | | Page<DustExceptionData> p=(Page<DustExceptionData>)infoList; |
| | | |
| | | //å°è£
PageBean对象*/ |
| | | PageBean pageBean=new PageBean(p.getTotal(),p.getResult()); |
| | | |
| | | return pageBean; |
| | | } |
| | | |
| | | @Override |
| | | public List<DustExceptionData> getExceptionSitenameAndCode(String exceptionType, String beginTime, String endTime) { |
| | | List<DustExceptionData> list = fugitiveDustMapper.getExceptionSitenameAndCode(exceptionType,beginTime,endTime); |
| | | return list; |
| | | } |
| | | |
| | | @Override |
| | | public Integer exceptionNum(String exceptionType, String beginTime, String endTime) { |
| | | Integer list = fugitiveDustMapper.exceptionNum(exceptionType,beginTime,endTime); |
| | | return list; |
| | | } |
| | | |
| | | @Override |
| | | public List<DustSiteData> conditonQueryHistoryData(String siteName, String beginTime, String endTime) { |
| | | List<DustSiteData> list = fugitiveDustMapper.conditonQueryHistoryData(siteName,beginTime,endTime); |
| | | return list; |
| | | } |
| | | |
| | | @Override |
| | | public List<DustExceptionData> getExceptionAllData(String siteName, String[] exceptionType, String beginTime, String endTime) { |
| | | List<DustExceptionData> list = fugitiveDustMapper.getExceptionData(siteName,exceptionType,beginTime,endTime); |
| | | return list; |
| | | } |
| | | |
| | | @Override |
| | | public List<DustExceptionData> exceptionSiteNum() { |
| | | List<DustExceptionData> list = fugitiveDustMapper.exceptionSiteNum(); |
| | | return list; |
| | | } |
| | | |
| | | |
| | | } |
| | |
| | | return list; |
| | | } |
| | | |
| | | // @Override |
| | | // public String shopNum() { |
| | | // String num = vue3FumeMapper.shopNum(); |
| | | // return num; |
| | | // } |
| | | @Override |
| | | public Integer exceptionNum(String exceptionType, String beginTime, String endTime) { |
| | | Integer list = vue3FumeMapper.exceptionNum(exceptionType,beginTime,endTime); |
| | | return list; |
| | | } |
| | | } |
| | |
| | | |
| | | |
| | | <!-- å»é--> |
| | | <select id="search" resultType="Integer"> |
| | | select count(*) |
| | | <select id="search" resultType="com.job.zsc.pojo.AnalysisData"> |
| | | select a.*,b.DI_Name,b.DI_Supplier |
| | | from fm_web_analysis_data as a join ea_t_device_info as b on a.fume_dev_id = b.DI_Code |
| | | <where> |
| | | <if test="shopname != null and shopname != '' "> |
| | |
| | | a.mn_code as mn_code, |
| | | DATE(a.lst) as lst, |
| | | ROUND(AVG(a.dust_value),3) as day_avg, |
| | | min(a.dust_value) as min, |
| | | max(a.dust_value) as max, |
| | | 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 |
| | |
| | | GROUP BY a.mn_code,DATE(a.lst) |
| | | order by lst asc ) as d on c.mn_code = d.mn_code |
| | | </select> |
| | | |
| | | <!--æ¡ä»¶æ¥è¯¢å¼å¸¸æ°æ®--> |
| | | <select id="getExceptionData" resultType="com.job.zsc.pojo.DustExceptionData"> |
| | | select b.name,b.typename,b.address,b.duty_company,a.* |
| | | from dust_exception_data 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="exceptionType != null and exceptionType != '' "> |
| | | and a.exception_type in |
| | | <foreach item="item" collection="exceptionType" separator="," open="(" close=")"> |
| | | #{item} |
| | | </foreach> |
| | | </if> |
| | | |
| | | <if test="beginTime != null and endTime != null"> |
| | | and (a.begin_time between #{beginTime} and #{endTime} or a.end_time between #{beginTime} and #{endTime}) |
| | | </if> |
| | | </where> |
| | | </select> |
| | | |
| | | |
| | | <!-- æ ¹æ®ææ®µæ¶é´å
æä¸ªå¼å¸¸ç±»åæ¥è¯¢å¯¹åºçåºéºåç§°å设å¤ç¼å·--> |
| | | <select id="getExceptionSitenameAndCode" resultType="com.job.zsc.pojo.DustExceptionData"> |
| | | select DISTINCT b.name,a.mn_code |
| | | from dust_exception_data as a join ja_t_dust_site_info as b on a.mn_code = b.mn_code |
| | | <where> |
| | | <if test="exceptionType !=null and exceptionType != ''"> |
| | | a.exception_type = #{exceptionType} |
| | | </if> |
| | | |
| | | <if test="beginTime != null and endTime != null"> |
| | | and (a.begin_time between #{beginTime} and #{endTime} or a.end_time between #{beginTime} and #{endTime}) |
| | | </if> |
| | | </where> |
| | | </select> |
| | | |
| | | <!-- æ¡ä»¶æ¥è¯¢å岿°æ®--> |
| | | <select id="conditonQueryHistoryData" resultType="com.job.zsc.pojo.DustSiteData"> |
| | | select a.*,b.name,b.duty_Company |
| | | 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> |
| | | order by a.lst asc |
| | | </select> |
| | | </mapper> |
| | |
| | | |
| | | <!-- è¶
æ æ²¹çæ¥è¯¢--> |
| | | <select id="conditionQuery" resultType="com.job.zsc.pojo.FumeHistoryData"> |
| | | select a1.MV_ID,a1.MV_Stat_Code,b.DI_Name,a1.MV_Create_Time,a1.MV_Data_Time,a1.MV_Fume_Concentration2 |
| | | from exceeding_st_data as a1 join ea_t_device_info as b on a1.MV_Stat_Code = b.DI_Code |
| | | SELECT a1.MV_ID, a1.MV_Stat_Code, b.DI_Name,b.DI_Supplier, a1.MV_Create_Time, a1.MV_Data_Time, a1.MV_Fume_Concentration2 |
| | | FROM exceeding_st_data AS a1 |
| | | INNER JOIN ea_t_device_info AS b ON a1.MV_Stat_Code = b.DI_Code |
| | | <where> |
| | | |
| | | <if test="devId != null and devId != '' "> |
| | | and a1.MV_Stat_Code = #{devId} and b.DI_Code = #{devId} |
| | | a1.MV_Stat_Code = #{devId} |
| | | </if> |
| | | |
| | | <if test="beginTime != null and endTime != null"> |
| | | and a1.MV_Data_Time between #{beginTime} and #{endTime} |
| | | </if> |
| | | </where> |
| | | order by MV_Data_Time asc |
| | | order by a1.MV_Data_Time asc |
| | | </select> |
| | | |
| | | <!-- å岿²¹çæ¥è¯¢--> |
| | | <!-- <select id="conditionQueryHistory" resultType="com.job.zsc.pojo.FumeHistoryData">--> |
| | | <!-- SELECT d.DI_Name, c.*--> |
| | | <!-- FROM (--> |
| | | <!-- SELECT a.*--> |
| | | <!-- FROM fd_t_minutevalue as a--> |
| | | <!-- LEFT JOIN fd_t_minutevalue as b ON a.MV_Data_Time = b.MV_Data_Time AND a.MV_Isduplication < b.MV_Isduplication--> |
| | | <!-- WHERE b.MV_ID IS NULL AND a.MV_Stat_Code = #{devId})--> |
| | | <!-- as c join ea_t_device_info as d on c.MV_Stat_Code = d.DI_Code--> |
| | | <!-- <where>--> |
| | | <!-- <if test="devId != null and devId != '' ">--> |
| | | <!-- and c.MV_Stat_Code = #{devId}--> |
| | | <!-- </if>--> |
| | | |
| | | <!-- <if test="beginTime != null and endTime != null">--> |
| | | <!-- AND c.MV_Data_Time between #{beginTime} AND #{endTime}--> |
| | | <!-- </if>--> |
| | | <!-- </where>--> |
| | | <!-- ORDER BY c.MV_Data_Time ASC;--> |
| | | <!-- </select>--> |
| | | <!-- å岿²¹çæ¥è¯¢ ä¿®æ¹äºè¯å¥--> |
| | | <select id="conditionQueryHistory" resultType="com.job.zsc.pojo.FumeHistoryData"> |
| | | SELECT d.DI_Name, c.* |
| | | FROM ( |
| | | SELECT a.* |
| | | FROM fd_t_minutevalue as a |
| | | LEFT JOIN fd_t_minutevalue as b ON a.MV_Data_Time = b.MV_Data_Time AND a.MV_Isduplication < b.MV_Isduplication |
| | | WHERE b.MV_ID IS NULL AND a.MV_Stat_Code = #{devId}) |
| | | as c join ea_t_device_info as d on c.MV_Stat_Code = d.DI_Code |
| | | FROM fd_t_minutevalue AS a |
| | | INNER JOIN ( |
| | | SELECT MV_Stat_Code,MV_Data_Time, MAX(MV_Isduplication) AS Max_Isduplication |
| | | FROM fd_t_minutevalue |
| | | WHERE MV_Stat_Code = #{devId} |
| | | GROUP BY MV_Data_Time |
| | | ) AS b ON a.MV_Data_Time = b.MV_Data_Time AND a.MV_Isduplication = b.Max_Isduplication AND a.MV_Stat_Code = b.MV_Stat_Code |
| | | WHERE a.MV_Stat_Code = #{devId} |
| | | ) AS c |
| | | JOIN ea_t_device_info AS d ON c.MV_Stat_Code = d.DI_Code |
| | | <where> |
| | | <if test="devId != null and devId != '' "> |
| | | and c.MV_Stat_Code = #{devId} |
| | | </if> |
| | | |
| | | <if test="beginTime != null and endTime != null"> |
| | | AND c.MV_Data_Time between #{beginTime} AND #{endTime} |
| | | c.MV_Data_Time >= #{beginTime} AND c.MV_Data_Time <= #{endTime} |
| | | </if> |
| | | </where> |
| | | ORDER BY c.MV_Data_Time ASC; |
| | | </select> |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | <!-- æ¡ä»¶æ¥è¯¢å¼å¸¸è¡¨--> |
| | | <select id="conditonQueryAbnormalData" resultType="com.job.zsc.pojo.FumeAbnormalData"> |
| | |
| | | |
| | | <!-- æ¡ä»¶ç»åæ¥è¯¢å¼å¸¸è¡¨ å¼å¸¸ç±»åé项æ¹ä¸ºå¤é--> |
| | | <select id="conditonQueryAbnormalData2" resultType="com.job.zsc.pojo.FumeAbnormalData"> |
| | | select a1.dev_id,b.DI_Name,a1.exception,a1.exception_type,a1.region,a1.begin_time,a1.end_time |
| | | select a1.dev_id,b.DI_Name,b.DI_Supplier,a1.exception,a1.exception_type,a1.region,a1.begin_time,a1.end_time |
| | | from abnormal_data as a1 join ea_t_device_info as b on a1.dev_id = b.DI_Code |
| | | <where> |
| | | |
| | | <if test="devId != null and devId != '' "> |
| | | and a1.dev_id = #{devId} and b.DI_Code = #{devId} |
| | | and a1.dev_id = #{devId} |
| | | </if> |
| | | |
| | | <if test="exceptionValue != null and exceptionValue != '' "> |