正在显示
6 个修改的文件
包含
36 行增加
和
34 行删除
@@ -19,9 +19,6 @@ public class MyWebMvcConfigurer implements WebMvcConfigurer { | @@ -19,9 +19,6 @@ public class MyWebMvcConfigurer implements WebMvcConfigurer { | ||
19 | @Override | 19 | @Override |
20 | public void addResourceHandlers(ResourceHandlerRegistry registry) { | 20 | public void addResourceHandlers(ResourceHandlerRegistry registry) { |
21 | registry.addResourceHandler("/exit/**").addResourceLocations("file:" + dir + "/"); | 21 | registry.addResourceHandler("/exit/**").addResourceLocations("file:" + dir + "/"); |
22 | -// registry.addResourceHandler("/exit/excel/**").addResourceLocations("file:excel/"); | ||
23 | -// registry.addResourceHandler("/exit/downExcel/**").addResourceLocations("file:excel/"); | ||
24 | -// registry.addResourceHandler("/exit/delete/**").addResourceLocations("file:excel/"); | ||
25 | WebMvcConfigurer.super.addResourceHandlers(registry); | 22 | WebMvcConfigurer.super.addResourceHandlers(registry); |
26 | } | 23 | } |
27 | 24 |
@@ -154,7 +154,7 @@ public class NmsController { | @@ -154,7 +154,7 @@ public class NmsController { | ||
154 | String resultJs = GsonUtils.toJsonStr(resultWs); | 154 | String resultJs = GsonUtils.toJsonStr(resultWs); |
155 | sendMsgByWebsocket(resultJs, sid); | 155 | sendMsgByWebsocket(resultJs, sid); |
156 | } | 156 | } |
157 | - index = index + i - 1; | 157 | + index = index + i; |
158 | //完成一次,就等待。每次减1,为0的时候往下执行 | 158 | //完成一次,就等待。每次减1,为0的时候往下执行 |
159 | latch.await(); | 159 | latch.await(); |
160 | } | 160 | } |
@@ -182,7 +182,6 @@ public class NmsController { | @@ -182,7 +182,6 @@ public class NmsController { | ||
182 | log.error("获取数据出错", e); | 182 | log.error("获取数据出错", e); |
183 | } | 183 | } |
184 | final String endTime = sdf.format(new Date()); | 184 | final String endTime = sdf.format(new Date()); |
185 | - log.info("出港信息,获取完毕,index的值为:" + index); | ||
186 | log.info("结束时间:" + endTime); | 185 | log.info("结束时间:" + endTime); |
187 | String resultJs = GsonUtils.toJsonStr(new ResultWs("获取数据,完成", resultList, "200", resultList.size(), resultList.size())); | 186 | String resultJs = GsonUtils.toJsonStr(new ResultWs("获取数据,完成", resultList, "200", resultList.size(), resultList.size())); |
188 | sendMsgByWebsocket(resultJs, sid); | 187 | sendMsgByWebsocket(resultJs, sid); |
@@ -251,18 +250,18 @@ public class NmsController { | @@ -251,18 +250,18 @@ public class NmsController { | ||
251 | result.setAimStation(pm.get(0).getDestinationStation()); | 250 | result.setAimStation(pm.get(0).getDestinationStation()); |
252 | } | 251 | } |
253 | /** | 252 | /** |
254 | - * //获取数据仓库的对应数据 | ||
255 | - | ||
256 | - // if (result.getWaybillNoMaster() != null && result.getWaybillNoMaster() != "") {} | ||
257 | - ResultExitData dataWareHouseInfo=new ResultExitData(); | ||
258 | - dataWareHouseInfo = getDataWareHouseFeign.getInfo(result.getWaybillNoMaster()); | ||
259 | - //设置体积 | ||
260 | - result.setVolumeMeasure(dataWareHouseInfo.getVolumeMeasure()); | ||
261 | - //设置计费重量 | ||
262 | - result.setTotalGrossWeightMeasure(dataWareHouseInfo.getTotalGrossWeightMeasure()); | 253 | + * 获取数据仓库的对应数据 |
263 | */ | 254 | */ |
255 | + ResultExitData dataWareHouseInfo = new ResultExitData(); | ||
256 | + dataWareHouseInfo = getDataWareHouseFeign.getInfo(result.getWaybillNoMaster()); | ||
257 | + //设置体积 | ||
258 | + result.setVolumeMeasure(dataWareHouseInfo.getVolumeMeasure()); | ||
259 | + //设置计费重量 | ||
260 | + result.setTotalGrossWeightMeasure(dataWareHouseInfo.getTotalGrossWeightMeasure()); | ||
264 | 261 | ||
265 | - //获取运输工具的对应数据 | 262 | + /** |
263 | + * 获取运输工具的对应数据 | ||
264 | + */ | ||
266 | ResultExitData transportInfo = new ResultExitData(); | 265 | ResultExitData transportInfo = new ResultExitData(); |
267 | transportInfo = getTransportFeign.getInfo(result.getFlightNo(), result.getFlightDate()); | 266 | transportInfo = getTransportFeign.getInfo(result.getFlightNo(), result.getFlightDate()); |
268 | //设置航班公司 | 267 | //设置航班公司 |
@@ -278,7 +277,9 @@ public class NmsController { | @@ -278,7 +277,9 @@ public class NmsController { | ||
278 | //设置航班计划时间 | 277 | //设置航班计划时间 |
279 | result.setFlightPlanTime(transportInfo.getFlightPlanTime()); | 278 | result.setFlightPlanTime(transportInfo.getFlightPlanTime()); |
280 | 279 | ||
281 | - //获取代理人的相关数据 | 280 | + /** |
281 | + * 获取代理人的相关数据 | ||
282 | + */ | ||
282 | ResultExitData asmInfo = new ResultExitData(); | 283 | ResultExitData asmInfo = new ResultExitData(); |
283 | asmInfo = getCgoAsmFeign.getInfo(result.getWaybillNoMaster()); | 284 | asmInfo = getCgoAsmFeign.getInfo(result.getWaybillNoMaster()); |
284 | //设置结算代理人 | 285 | //设置结算代理人 |
@@ -17,11 +17,15 @@ import javax.annotation.Resource; | @@ -17,11 +17,15 @@ import javax.annotation.Resource; | ||
17 | @RequestMapping("exit") | 17 | @RequestMapping("exit") |
18 | @RestController | 18 | @RestController |
19 | public class DeleteExcel { | 19 | public class DeleteExcel { |
20 | + | ||
20 | @Resource | 21 | @Resource |
21 | private DeleteExpiredFile deleteExpiredFile; | 22 | private DeleteExpiredFile deleteExpiredFile; |
22 | 23 | ||
23 | - | ||
24 | - // @Scheduled(cron="0 48 18 * * ? ") | 24 | + /** |
25 | + * 每天凌晨4点,执行定时任务,删除缓存的文件 | ||
26 | + * | ||
27 | + * @return | ||
28 | + */ | ||
25 | @Scheduled(cron = "0 0 4 * * ? ") | 29 | @Scheduled(cron = "0 0 4 * * ? ") |
26 | @GetMapping("/delete") | 30 | @GetMapping("/delete") |
27 | public ResultJson deleteExcel() { | 31 | public ResultJson deleteExcel() { |
@@ -30,7 +30,6 @@ public class DeleteExpiredFile { | @@ -30,7 +30,6 @@ public class DeleteExpiredFile { | ||
30 | long timeInterval; | 30 | long timeInterval; |
31 | 31 | ||
32 | public void deleteExpiredFileTask() { | 32 | public void deleteExpiredFileTask() { |
33 | - //File.separator | ||
34 | String path = dir + "/"; | 33 | String path = dir + "/"; |
35 | File file = new File(path); | 34 | File file = new File(path); |
36 | deleteExpiredFile(file); | 35 | deleteExpiredFile(file); |
@@ -70,7 +69,7 @@ public class DeleteExpiredFile { | @@ -70,7 +69,7 @@ public class DeleteExpiredFile { | ||
70 | // 当前时间的时间戳 | 69 | // 当前时间的时间戳 |
71 | long currentTime = System.currentTimeMillis(); | 70 | long currentTime = System.currentTimeMillis(); |
72 | // 设置时间范围 | 71 | // 设置时间范围 |
73 | -// long timeInterval = 7 * 24 * 60 * 60 * 1000; | 72 | + // long timeInterval = 7 * 24 * 60 * 60 * 1000; |
74 | // 删除七天(一周)前的所有文件 | 73 | // 删除七天(一周)前的所有文件 |
75 | if (currentTime - lastModifiedTime > timeInterval) { | 74 | if (currentTime - lastModifiedTime > timeInterval) { |
76 | file.delete(); | 75 | file.delete(); |
@@ -15,7 +15,7 @@ public class ExitThreadPoolFactory { | @@ -15,7 +15,7 @@ public class ExitThreadPoolFactory { | ||
15 | public static ThreadPoolExecutor instance() { | 15 | public static ThreadPoolExecutor instance() { |
16 | if (threadPool == null) { | 16 | if (threadPool == null) { |
17 | ExitThreadFactory exitThreadFactory = new ExitThreadFactory("exit"); | 17 | ExitThreadFactory exitThreadFactory = new ExitThreadFactory("exit"); |
18 | - threadPool = new ThreadPoolExecutor(10, 100, | 18 | + threadPool = new ThreadPoolExecutor(20, 100, |
19 | 0L, TimeUnit.MILLISECONDS, | 19 | 0L, TimeUnit.MILLISECONDS, |
20 | new LinkedBlockingQueue<Runnable>(1024), | 20 | new LinkedBlockingQueue<Runnable>(1024), |
21 | exitThreadFactory, | 21 | exitThreadFactory, |
1 | package com.sunyo.wlpt.cgonms.provide.websocket; | 1 | package com.sunyo.wlpt.cgonms.provide.websocket; |
2 | 2 | ||
3 | 3 | ||
4 | - | ||
5 | import cn.hutool.log.Log; | 4 | import cn.hutool.log.Log; |
6 | import cn.hutool.log.LogFactory; | 5 | import cn.hutool.log.LogFactory; |
7 | import com.sunyo.wlpt.cgonms.provide.controller.NmsController; | 6 | import com.sunyo.wlpt.cgonms.provide.controller.NmsController; |
@@ -29,13 +28,17 @@ public class WebSocketServer { | @@ -29,13 +28,17 @@ public class WebSocketServer { | ||
29 | 28 | ||
30 | static Log log = LogFactory.get(WebSocketServer.class); | 29 | static Log log = LogFactory.get(WebSocketServer.class); |
31 | 30 | ||
32 | - //静态变量,用来记录当前在线连接数。应该把它设计成线程安全的。 | 31 | + /** |
32 | + * 静态变量,用来记录当前在线连接数。应该把它设计成线程安全的。 | ||
33 | + */ | ||
33 | private static int onlineCount = 0; | 34 | private static int onlineCount = 0; |
34 | 35 | ||
35 | //concurrent包的线程安全Set,用来存放每个客户端对应的MyWebSocket对象。 | 36 | //concurrent包的线程安全Set,用来存放每个客户端对应的MyWebSocket对象。 |
36 | private static CopyOnWriteArraySet<WebSocketServer> webSocketSet = new CopyOnWriteArraySet<WebSocketServer>(); | 37 | private static CopyOnWriteArraySet<WebSocketServer> webSocketSet = new CopyOnWriteArraySet<WebSocketServer>(); |
37 | 38 | ||
38 | - //与某个客户端的连接会话,需要通过它来给客户端发送数据 | 39 | + /** |
40 | + * 与某个客户端的连接会话,需要通过它来给客户端发送数据 | ||
41 | + */ | ||
39 | private Session session; | 42 | private Session session; |
40 | 43 | ||
41 | //接收sid | 44 | //接收sid |
@@ -47,8 +50,10 @@ public class WebSocketServer { | @@ -47,8 +50,10 @@ public class WebSocketServer { | ||
47 | @OnOpen | 50 | @OnOpen |
48 | public void onOpen(Session session, @PathParam("sid") String sid) { | 51 | public void onOpen(Session session, @PathParam("sid") String sid) { |
49 | this.session = session; | 52 | this.session = session; |
50 | - webSocketSet.add(this); //加入set中 | ||
51 | - addOnlineCount(); //在线数加1 | 53 | + //加入set中 |
54 | + webSocketSet.add(this); | ||
55 | + //在线数加1 | ||
56 | + addOnlineCount(); | ||
52 | log.info("有新窗口开始监听:" + sid + ",当前在线人数为" + getOnlineCount()); | 57 | log.info("有新窗口开始监听:" + sid + ",当前在线人数为" + getOnlineCount()); |
53 | this.sid = sid; | 58 | this.sid = sid; |
54 | try { | 59 | try { |
@@ -64,8 +69,10 @@ public class WebSocketServer { | @@ -64,8 +69,10 @@ public class WebSocketServer { | ||
64 | */ | 69 | */ |
65 | @OnClose | 70 | @OnClose |
66 | public void onClose() { | 71 | public void onClose() { |
67 | - webSocketSet.remove(this); //从set中删除 | ||
68 | - subOnlineCount(); //在线数减1 | 72 | + //从set中删除 |
73 | + webSocketSet.remove(this); | ||
74 | + //在线数减1 | ||
75 | + subOnlineCount(); | ||
69 | log.info("有一连接关闭!当前在线人数为" + getOnlineCount()); | 76 | log.info("有一连接关闭!当前在线人数为" + getOnlineCount()); |
70 | } | 77 | } |
71 | 78 | ||
@@ -76,11 +83,6 @@ public class WebSocketServer { | @@ -76,11 +83,6 @@ public class WebSocketServer { | ||
76 | */ | 83 | */ |
77 | @OnMessage | 84 | @OnMessage |
78 | public void onMessage(String message, Session session) { | 85 | public void onMessage(String message, Session session) { |
79 | -// JSONObject jsonObj = new JSONObject(message); | ||
80 | -// String flightNo = jsonObj.get("flightNo").toString(); | ||
81 | -// String flightDate = jsonObj.get("flightDate").toString(); | ||
82 | - | ||
83 | -// nmsController.getData() | ||
84 | log.info("收到来自窗口" + sid + "的信息:" + message); | 86 | log.info("收到来自窗口" + sid + "的信息:" + message); |
85 | //群发消息 | 87 | //群发消息 |
86 | for (WebSocketServer item : webSocketSet) { | 88 | for (WebSocketServer item : webSocketSet) { |
@@ -114,7 +116,6 @@ public class WebSocketServer { | @@ -114,7 +116,6 @@ public class WebSocketServer { | ||
114 | * 群发自定义消息 | 116 | * 群发自定义消息 |
115 | */ | 117 | */ |
116 | public static void sendInfo(String message, @PathParam("sid") String sid) throws IOException { | 118 | public static void sendInfo(String message, @PathParam("sid") String sid) throws IOException { |
117 | - //log.info("推送消息到窗口"+sid+",推送内容:"+message); | ||
118 | for (WebSocketServer item : webSocketSet) { | 119 | for (WebSocketServer item : webSocketSet) { |
119 | try { | 120 | try { |
120 | //这里可以设定只推送给这个sid的,为null则全部推送 | 121 | //这里可以设定只推送给这个sid的,为null则全部推送 |
-
请 注册 或 登录 后发表评论