diff --git a/os-ems/src/main/java/com/os/ems/record/controller/RecordIotenvInstantController.java b/os-ems/src/main/java/com/os/ems/record/controller/RecordIotenvInstantController.java index 66eb046..4f8a875 100644 --- a/os-ems/src/main/java/com/os/ems/record/controller/RecordIotenvInstantController.java +++ b/os-ems/src/main/java/com/os/ems/record/controller/RecordIotenvInstantController.java @@ -1,5 +1,6 @@ package com.os.ems.record.controller; +import java.text.ParseException; import java.util.Date; import java.util.List; import javax.servlet.http.HttpServletResponse; @@ -35,10 +36,9 @@ public class RecordIotenvInstantController extends BaseController */ @PreAuthorize("@ss.hasPermi('ems/record:recordIotenvInstant:list')") @GetMapping("/list") - public TableDataInfo list(RecordIotenvInstant recordIotenvInstant) + public TableDataInfo list (RecordIotenvInstant recordIotenvInstant)throws ParseException { startPage(); - List list = recordIotenvInstantService.selectRecordIotenvInstantList(recordIotenvInstant); return getDataTable(list); } @@ -50,7 +50,7 @@ public class RecordIotenvInstantController extends BaseController @PreAuthorize("@ss.hasPermi('ems/record:recordIotenvInstant:export')") @Log(title = "物联网数据", businessType = BusinessType.EXPORT) @PostMapping("/export") - public void export(HttpServletResponse response, RecordIotenvInstant recordIotenvInstant) + public void export(HttpServletResponse response, RecordIotenvInstant recordIotenvInstant)throws ParseException { List list = recordIotenvInstantService.selectRecordIotenvInstantList(recordIotenvInstant); ExcelUtil util = new ExcelUtil(RecordIotenvInstant.class); diff --git a/os-ems/src/main/java/com/os/ems/record/mapper/RecordIotenvInstantMapper.java b/os-ems/src/main/java/com/os/ems/record/mapper/RecordIotenvInstantMapper.java index b2acb74..319c9cb 100644 --- a/os-ems/src/main/java/com/os/ems/record/mapper/RecordIotenvInstantMapper.java +++ b/os-ems/src/main/java/com/os/ems/record/mapper/RecordIotenvInstantMapper.java @@ -81,7 +81,7 @@ public interface RecordIotenvInstantMapper * @return 物联网数据集合 */ List selectRecordIotenvInstantListFromTables(@Param("tableNames") List tableNames, - @Param("record") RecordIotenvInstant recordIotenvInstant); + @Param("recordIotenvInstant") RecordIotenvInstant recordIotenvInstant); Integer checkTableExists(Map params); diff --git a/os-ems/src/main/java/com/os/ems/record/service/IRecordIotenvInstantService.java b/os-ems/src/main/java/com/os/ems/record/service/IRecordIotenvInstantService.java index bd54ca6..3956752 100644 --- a/os-ems/src/main/java/com/os/ems/record/service/IRecordIotenvInstantService.java +++ b/os-ems/src/main/java/com/os/ems/record/service/IRecordIotenvInstantService.java @@ -1,5 +1,6 @@ package com.os.ems.record.service; +import java.text.ParseException; import java.util.Date; import java.util.List; import com.os.ems.record.domain.RecordIotenvInstant; @@ -26,7 +27,7 @@ public interface IRecordIotenvInstantService * @param recordIotenvInstant 物联网数据 * @return 物联网数据集合 */ - public List selectRecordIotenvInstantList(RecordIotenvInstant recordIotenvInstant); + public List selectRecordIotenvInstantList(RecordIotenvInstant recordIotenvInstant) throws ParseException; /** diff --git a/os-ems/src/main/java/com/os/ems/record/service/impl/RecordIotenvInstantServiceImpl.java b/os-ems/src/main/java/com/os/ems/record/service/impl/RecordIotenvInstantServiceImpl.java index 469401e..c03006b 100644 --- a/os-ems/src/main/java/com/os/ems/record/service/impl/RecordIotenvInstantServiceImpl.java +++ b/os-ems/src/main/java/com/os/ems/record/service/impl/RecordIotenvInstantServiceImpl.java @@ -1,5 +1,6 @@ package com.os.ems.record.service.impl; +import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.*; @@ -47,12 +48,10 @@ public class RecordIotenvInstantServiceImpl implements IRecordIotenvInstantServi // return recordIotenvInstantMapper.selectRecordIotenvInstantList(recordIotenvInstant); // } @Override - public List selectRecordIotenvInstantList(RecordIotenvInstant recordIotenvInstant) { + public List selectRecordIotenvInstantList(RecordIotenvInstant recordIotenvInstant) throws ParseException { Map params = recordIotenvInstant.getParams(); // 检查是否有时间范围参数 - if (params != null && params.containsKey("beginRecordTime") && params.containsKey("endRecordTime")) { - try { // 获取开始和结束时间 String beginTimeStr = params.get("beginRecordTime").toString(); String endTimeStr = params.get("endRecordTime").toString(); @@ -67,16 +66,8 @@ public class RecordIotenvInstantServiceImpl implements IRecordIotenvInstantServi if (tableNames.isEmpty()) { return new ArrayList<>(); } - // 执行分表查询 return recordIotenvInstantMapper.selectRecordIotenvInstantListFromTables(tableNames, recordIotenvInstant); - } catch (Exception e) { - e.printStackTrace(); - } - } - - // 如果没有时间范围或发生异常,则使用原始查询方法 - return recordIotenvInstantMapper.selectRecordIotenvInstantList(recordIotenvInstant); } /** @@ -135,7 +126,7 @@ public class RecordIotenvInstantServiceImpl implements IRecordIotenvInstantServi * @param endDate 结束日期 * @return 表名列表 */ - private List getTableNamesByDateRange(Date beginDate, Date endDate) { + private List getTableNamesByDateRange(Date beginDate, Date endDate) throws ParseException { List tableNames = new ArrayList<>(); // 如果开始日期晚于结束日期,则返回空列表 if (beginDate.after(endDate)) { @@ -144,7 +135,7 @@ public class RecordIotenvInstantServiceImpl implements IRecordIotenvInstantServi // 设置日期格式 SimpleDateFormat tableFormat = new SimpleDateFormat("yyyyMMdd"); SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); - try { + // 获取开始日期和结束日期(不含时间部分) String beginDateStr = dateFormat.format(beginDate); String endDateStr = dateFormat.format(endDate); @@ -164,12 +155,10 @@ public class RecordIotenvInstantServiceImpl implements IRecordIotenvInstantServi } for (String tableName : tableNames){ if (!isTableExists(tableName)){ - throw new ServiceException(tableName + "分表不存在"); + throw new ServiceException(tableName + "分表不存在,未记录数据"); } } - } catch (Exception e) { - e.printStackTrace(); - } + return tableNames; } @@ -181,14 +170,11 @@ public class RecordIotenvInstantServiceImpl implements IRecordIotenvInstantServi * @return 是否存在 */ private boolean isTableExists(String tableName) { - try { // 查询数据库中是否存在该表 Map params = new HashMap<>(); params.put("tableName", tableName); Integer count = recordIotenvInstantMapper.checkTableExists(params); return count != null && count > 0; - } catch (Exception e) { - return false; - } } + }