From 7d536d24aa867e9dd4304db39f267373679a6480 Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期三, 13 三月 2024 10:54:18 +0800 Subject: [PATCH] 解决定时器启动计算数据时报错 --- src/main/java/com/lf/server/controller/show/OneMapController.java | 14 ++++++++++++++ src/main/java/com/lf/server/service/data/FmeService.java | 4 ++-- src/main/java/com/lf/server/config/ScheduleConfig.java | 10 ++++++++++ src/main/java/com/lf/server/service/show/OneMapService.java | 32 +++++++++++++++++--------------- 4 files changed, 43 insertions(+), 17 deletions(-) diff --git a/src/main/java/com/lf/server/config/ScheduleConfig.java b/src/main/java/com/lf/server/config/ScheduleConfig.java index 5bf3fad..e1e615a 100644 --- a/src/main/java/com/lf/server/config/ScheduleConfig.java +++ b/src/main/java/com/lf/server/config/ScheduleConfig.java @@ -6,9 +6,11 @@ import com.lf.server.service.all.ScheduleService; import com.lf.server.service.all.WebSocketService; import com.lf.server.service.show.AutoQueryService; +import com.lf.server.service.show.OneMapService; import com.lf.server.service.sys.AttachService; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import org.apache.ibatis.annotations.Result; import org.springframework.scheduling.annotation.EnableScheduling; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; @@ -32,6 +34,9 @@ @Resource AutoQueryService autoQueryService; + @Resource + OneMapService oneMapService; + private static boolean isBusy = false; private static final Log log = LogFactory.getLog(ScheduleConfig.class); @@ -41,6 +46,11 @@ autoQueryService.autoQuery(); } + @Scheduled(cron = "0 0 2 * * ?") + public void calcData() { + oneMapService.calcData(); + } + @Scheduled(fixedRate = 15 * 1000) public void pushMonitorInfo() { try { diff --git a/src/main/java/com/lf/server/controller/show/OneMapController.java b/src/main/java/com/lf/server/controller/show/OneMapController.java index afd71f3..a7ad681 100644 --- a/src/main/java/com/lf/server/controller/show/OneMapController.java +++ b/src/main/java/com/lf/server/controller/show/OneMapController.java @@ -403,4 +403,18 @@ return fail(ex.getMessage()); } } + + @SysLog() + @ApiOperation(value = "鏌ヨ璁$畻鏁版嵁") + @GetMapping("/selectCalcData") + public ResponseMsg<Object> selectCalcData(){ + try { + String rs = oneMapService.calcData(); + + return success(rs); + }catch (Exception ex){ + log.error(ex.getMessage(), ex); + return fail(ex.getMessage()); + } + } } diff --git a/src/main/java/com/lf/server/service/data/FmeService.java b/src/main/java/com/lf/server/service/data/FmeService.java index 4af356a..3376889 100644 --- a/src/main/java/com/lf/server/service/data/FmeService.java +++ b/src/main/java/com/lf/server/service/data/FmeService.java @@ -322,8 +322,8 @@ /** * f.璁$畻闈㈢Н */ - public String calcArea(String sjfl, String id, String wjlj, HttpServletRequest req) { - String url = getUrl("datax/task/run/鏁版嵁鍗犲湴闈㈢Н璁$畻", req); + public String calcArea(String sjfl, String id, String wjlj) { + String url = getUrl("datax/task/run/鏁版嵁鍗犲湴闈㈢Н璁$畻"); List<NameValueEntity> list = new ArrayList<>(); list.add(new NameValueEntity("_name", String.format("%s_%s", "鏁版嵁鍗犲湴闈㈢Н璁$畻", StringHelper.YMDHMS2_FORMAT.format(new Date())))); diff --git a/src/main/java/com/lf/server/service/show/OneMapService.java b/src/main/java/com/lf/server/service/show/OneMapService.java index f1e7a6e..5beb4bd 100644 --- a/src/main/java/com/lf/server/service/show/OneMapService.java +++ b/src/main/java/com/lf/server/service/show/OneMapService.java @@ -418,26 +418,28 @@ */ public String calcData() { Integer rows = selectLineBuffer(); - List<Map<String, Object>> list = selectMetaByType(); if (null != list && list.size() > 0) { - HttpServletRequest req = WebHelper.getRequest(); - String rootPath = pathHelper.getUploadFullPath(); - for (Map<String, Object> map : list) { - String sjfl = map.get("type").toString(); - String id = map.get("id").toString(); - String wjlj = rootPath + File.separator + map.get("path").toString(); + try { + String rootPath = pathHelper.getConfig().getUploadPath(); + for (Map<String, Object> map : list) { + String sjfl = map.get("type").toString(); + String id = map.get("id").toString(); + String wjlj = rootPath + File.separator + map.get("path").toString(); - File file = new File(wjlj); - if (!file.exists() || file.isDirectory()) { - continue; - } + File file = new File(wjlj); + if (!file.exists() || file.isDirectory()) { + continue; + } - String str = fmeService.calcArea(sjfl, id, wjlj, req); - if (null != str) { - System.out.println(str); + String str = fmeService.calcArea(sjfl, id, wjlj); + if (null != str) { + System.out.println(str); + } + rows++; } - rows++; + } catch (Exception ex) { + log.error(ex.getMessage(), ex); } } -- Gitblit v1.9.3