Commit 6da8d508cfa0212f169d2bb350726d5852eded70

Authored by 王通
1 parent 7e22204c

1.加入灾备平台信创链路

src/main/java/com/bsth/controller/realcontrol/AdminUtilsController.java
1   -package com.bsth.controller.realcontrol;
2   -
3   -import java.lang.reflect.Field;
4   -import java.lang.reflect.Modifier;
5   -import java.util.*;
6   -
7   -import com.bsth.data.BasicData;
8   -import com.bsth.security.SsoConfig;
9   -import com.bsth.service.SectionService;
10   -import com.bsth.service.StationService;
11   -import com.bsth.data.directive.DayOfDirectives;
12   -import com.bsth.data.directive.DirectivesPstThread;
13   -import com.bsth.data.directive.GatewayHttpUtils;
14   -import com.bsth.data.gpsdata_v2.cache.GeoCacheData;
15   -import com.bsth.data.gpsdata_v2.handlers.overspeed.OverspeedProcess;
16   -import com.bsth.data.gpsdata_v2.load.GatewayHttpLoader;
17   -import com.bsth.data.gpsdata_v2.load.SocketClientLoader;
18   -import com.bsth.data.gpsdata_v2.rfid.RfidHttpLoader;
19   -import com.bsth.data.gpsdata_v2.thread.GpsDataLoaderThread;
20   -import com.bsth.data.msg_queue.DirectivePushQueue;
21   -import com.bsth.data.msg_queue.WebSocketPushQueue;
22   -import com.bsth.data.pilot80.PilotReport;
23   -import com.bsth.data.schedule.DayOfSchedule;
24   -import com.bsth.entity.realcontrol.ScheduleRealInfo;
25   -import com.bsth.filter.SQLInjectFilter;
26   -import com.bsth.service.SystemParamService;
27   -import com.bsth.service.schedule.utils.SpringUtils;
28   -import com.bsth.util.MailUtils;
29   -import com.fasterxml.jackson.core.JsonProcessingException;
30   -import com.fasterxml.jackson.databind.ObjectMapper;
31   -import com.fasterxml.jackson.databind.SerializationFeature;
32   -import org.slf4j.Logger;
33   -import org.slf4j.LoggerFactory;
34   -import org.springframework.beans.factory.annotation.Autowired;
35   -import org.springframework.web.bind.annotation.RequestMapping;
36   -import org.springframework.web.bind.annotation.RequestParam;
37   -import org.springframework.web.bind.annotation.RestController;
38   -
39   -import com.bsth.common.ResponseCode;
40   -import com.bsth.websocket.handler.SendUtils;
41   -
42   -import ch.qos.logback.classic.Level;
43   -import ch.qos.logback.classic.LoggerContext;
44   -
45   -/**
46   - * Created by panzhao on 2017/4/14.
47   - */
48   -@RestController
49   -@RequestMapping("adminUtils")
50   -public class AdminUtilsController {
51   -
52   -
53   - Logger logger = LoggerFactory.getLogger(this.getClass());
54   -
55   - @Autowired
56   - private ObjectMapper objectMapper;
57   -
58   - @Autowired
59   - DayOfSchedule dayOfSchedule;
60   -
61   - @Autowired
62   - GeoCacheData geoCacheData;
63   -
64   - @Autowired
65   - DayOfDirectives dayOfDirectives;
66   -
67   - @Autowired
68   - SendUtils sendUtils;
69   -
70   - @Autowired
71   - PilotReport pilotReport;
72   -
73   - @Autowired
74   - private MailUtils mailUtils;
75   -
76   - @Autowired
77   - private BasicData.BasicDataLoader basicDataLoader;
78   -
79   - @Autowired
80   - private SectionService sectionService;
81   -
82   - @Autowired
83   - private StationService stationService;
84   -
85   - @Autowired
86   - private SystemParamService systemParamService;
87   -
88   - @Autowired
89   - private SocketClientLoader socketClientLoader;
90   -
91   - @Autowired
92   - private GatewayHttpLoader gatewayHttpLoader;
93   -
94   - @Autowired
95   - private GatewayHttpUtils gatewayHttpUtils;
96   -
97   - @Autowired
98   - private RfidHttpLoader rfidHttpLoader;
99   -
100   - @Autowired
101   - private SsoConfig ssoConfig;
102   -
103   - /**
104   - * 出现重复班次的车辆
105   - *
106   - * @param
107   - * @RequestMapping(value = "/schRepeat", method = RequestMethod.POST)
108   - * public void schRepeat(@RequestParam String nbbm){
109   - * logger.info("前端通知,车辆 " + nbbm + "出现重复班次,开始检测...");
110   - * List<ScheduleRealInfo> list = dayOfSchedule.findByNbbm(nbbm);
111   - * logger.info("检测前,车辆班次数量:" + list.size());
112   - * <p>
113   - * Map<Long, ScheduleRealInfo> map = new HashMap<>();
114   - * for(ScheduleRealInfo sch : list){
115   - * if(map.containsKey(sch.getId())){
116   - * logger.info("检测到重复ID: " + sch.getId());
117   - * }
118   - * map.put(sch.getId(), sch);
119   - * }
120   - * <p>
121   - * logger.info("检测后,车辆班次数量:" + list.size());
122   - * if(map.values().size() > 0){
123   - * dayOfSchedule.replaceByNbbm(nbbm, map.values());
124   - * }
125   - * }
126   - */
127   -
128   -/* @RequestMapping(value = "/directivePushQueue")
129   - public void directivePushQueue(){
130   - DirectivePushQueue.start();
131   - }*/
132   - @RequestMapping(value = "/directiveQueueSize")
133   - public void directiveQueueSize() {
134   - DirectivePushQueue.size();
135   - }
136   -
137   - /*@RequestMapping(value = "/webSocketPushQueue")
138   - public void webSocketPushQueue(){
139   - WebSocketPushQueue.start();
140   - }*/
141   -
142   - @RequestMapping(value = "/webSocketQueueSize")
143   - public void webSocketQueueSize() {
144   - WebSocketPushQueue.size();
145   - }
146   -
147   - @RequestMapping(value = "/setHttpFlag")
148   - public void setHttpFlag(@RequestParam int flag) {
149   - if (flag != 0 && flag != -1)
150   - return;
151   - GpsDataLoaderThread.setFlag(flag);
152   - }
153   -
154   - @RequestMapping(value = "/updateCacheBuff")
155   - public void updateCacheBuff() {
156   - geoCacheData.loadData();
157   - }
158   -
159   - @RequestMapping(value = "/reCalcLpSch")
160   - public void reCalcLpSch() {
161   - dayOfSchedule._test_reCalcLpSch();
162   - }
163   -
164   - @RequestMapping(value = "/findSchByLpName")
165   - public List<ScheduleRealInfo> findSchByLpName(@RequestParam String lpName) {
166   - return dayOfSchedule.getLpScheduleMap().get(lpName);
167   - }
168   -
169   - @RequestMapping(value = "/findSchByNbbm")
170   - public List<ScheduleRealInfo> findSchByNbbm(@RequestParam String nbbm) {
171   - return dayOfSchedule.findByNbbm(nbbm);
172   - }
173   -
174   - @RequestMapping(value = "/executeCurr")
175   - public ScheduleRealInfo executeCurr(@RequestParam String nbbm) {
176   - return dayOfSchedule.executeCurr(nbbm);
177   - };
178   -
179   - @RequestMapping(value = "/reCalcExecPlan4Nbbm")
180   - public void reCalcExecPlan4Nbbm(@RequestParam String nbbm) {
181   - dayOfSchedule.reCalcExecPlan(nbbm);
182   - };
183   -
184   - @RequestMapping(value = "/reCalcExecPlan4Line")
185   - public void reCalcExecPlan4Line(@RequestParam String lineCode) {
186   - Set<String> nbbms = dayOfSchedule.findCarByLineCode(lineCode);
187   - for (String nbbm : nbbms) {
188   - dayOfSchedule.reCalcExecPlan(nbbm);
189   - }
190   - };
191   -
192   - @RequestMapping(value = "/removeExecPlan")
193   - public int removeExecPlan(@RequestParam String nbbm) {
194   - dayOfSchedule.removeExecPlan(nbbm);
195   - return 1;
196   - }
197   -
198   - @RequestMapping(value = "/sch_re_calc_id_maps")
199   - public int reCalcIdMaps() {
200   - return dayOfSchedule.reCalcIdMaps();
201   - }
202   -
203   - @RequestMapping(value = "/sch_size_string")
204   - public String schSizeString() {
205   - return dayOfSchedule.sizeString();
206   - }
207   -
208   - @RequestMapping(value = "/containerSize")
209   - public Map<String, Integer> containerSize() {
210   - Map<String, Integer> rs = new HashMap<>();
211   - rs.put("60_size", dayOfDirectives.all60().size());
212   - rs.put("80_size", pilotReport.findAll().size());
213   - rs.put("nbbm_sch_size", dayOfSchedule.findAll().size());
214   - rs.put("lp_sch_size", dayOfSchedule.findAllByLpContainer().size());
215   - rs.put("id_sch_size", dayOfSchedule.findAllByIdContainer().size());
216   - rs.put("pst_sch_size", dayOfSchedule.getPstSize());
217   - rs.put("speeds_size", OverspeedProcess.size());
218   - return rs;
219   - }
220   -
221   - @RequestMapping(value = "/websocketRadioText")
222   - public int radioText(String t, String lineCode) {
223   - sendUtils.sendRadioText(t, lineCode);
224   - return 0;
225   - }
226   -
227   - @Autowired
228   - DirectivesPstThread directivesPstThread;
229   -
230   - @RequestMapping(value = "/_sd_60_pst")
231   - public void sd_60_pst() {
232   - logger.info("手动入库指令....");
233   - directivesPstThread.run();
234   - }
235   -
236   - /**
237   - * 删除班次,删除内存中未清理掉的非当天的班次
238   - * @createDate 2019.05.13
239   - * @author zhangxianzhou
240   - * @param id 线路id
241   - * @return 被删除的班次信息
242   - */
243   - @RequestMapping("/deleteSchduleBC")
244   - public Map<String, Object> deleteSchduleBC(Long id) {
245   - Map<String, Object> rs = new HashMap<>();
246   - rs.put("status", ResponseCode.ERROR);
247   - ScheduleRealInfo sch = null;
248   - try {
249   - sch = dayOfSchedule.get(id);
250   - if (sch == null) {
251   - rs.put("msg", "无效的id号");
252   - return rs;
253   - }
254   -
255   - //内存中删除
256   - dayOfSchedule.deleteBC(sch);
257   - rs.put("delete", sch);
258   - rs.put("status", ResponseCode.SUCCESS);
259   -
260   - } catch (Exception e) {
261   - logger.error("", e);
262   - rs.put("msg", e.getMessage());
263   - sch.setDeleted(false);
264   - }
265   -
266   - return rs;
267   - }
268   -
269   - @RequestMapping("/changeLogLevel")
270   - public Map<String, Object> changeLogLevel(@RequestParam String level) {
271   - Map<String, Object> rs = new HashMap<>();
272   - rs.put("errCode", 1);
273   - LoggerContext context = (LoggerContext)LoggerFactory.getILoggerFactory();
274   - context.getLogger("root").setLevel(Level.toLevel(level));
275   - rs.put("errCode", 0);
276   - rs.put("errMsg", "成功");
277   -
278   - return rs;
279   - }
280   -
281   - @RequestMapping("/exportInstance")
282   - public String exportInstance(@RequestParam String classType) {
283   - Map<String, Object> result = new HashMap<>();
284   - try {
285   - ObjectMapper mapper = new ObjectMapper();
286   - mapper.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false);
287   - Class cls = Class.forName(classType);
288   - Field[] fields = cls.getDeclaredFields();
289   - for (Field field : fields) {
290   - if (Modifier.isStatic(field.getModifiers()) && field.getName().indexOf("log") == -1) {
291   - field.setAccessible(true);
292   - result.put(field.getName(), field.get(cls));
293   - }
294   - }
295   - result.put("_bean", SpringUtils.getBean(Class.forName(classType)));
296   - return mapper.writeValueAsString(result);
297   - } catch (ClassNotFoundException | JsonProcessingException | IllegalAccessException e) {
298   - e.printStackTrace();
299   - }
300   -
301   - return "error";
302   - }
303   -
304   - @RequestMapping("/refreshBasicAll")
305   - public String refreshBasicAll() {
306   - Map<String, Object> result = new HashMap<>();
307   - try {
308   - basicDataLoader.loadAllData();
309   - return "success";
310   - } catch (Exception e) {
311   - e.printStackTrace();
312   - }
313   -
314   - return "error";
315   - }
316   -
317   - @RequestMapping("/setInjectStr")
318   - public String setInjectStr(@RequestParam String injectStr) {
319   - Map<String, Object> result = new HashMap<>();
320   - try {
321   - SQLInjectFilter.setInjStr(injectStr);
322   - return "success";
323   - } catch (Exception e) {
324   - e.printStackTrace();
325   - }
326   -
327   - return "error";
328   - }
329   -
330   - @RequestMapping("/reloadSystemParam")
331   - public String reloadSystemParam() {
332   - try {
333   - systemParamService.refresh();
334   -
335   - return "success";
336   - } catch (Exception e) {
337   - e.printStackTrace();
338   - }
339   -
340   - return "error";
341   - }
342   -
343   - @RequestMapping("/applySystemParam")
344   - public String applySystemParam() {
345   - try {
346   - socketClientLoader.afterPropertiesSet();
347   - gatewayHttpLoader.afterPropertiesSet();
348   - gatewayHttpUtils.afterPropertiesSet();
349   - rfidHttpLoader.afterPropertiesSet();
350   - ssoConfig.afterPropertiesSet();
351   -
352   - return "success";
353   - } catch (Exception e) {
354   - e.printStackTrace();
355   - }
356   -
357   - return "error";
358   - }
359   -
360   - @RequestMapping("/reloadAndApplySystemParam")
361   - public String reloadAndApplySystemParam() {
362   - try {
363   - systemParamService.refresh();
364   -
365   - socketClientLoader.afterPropertiesSet();
366   - gatewayHttpLoader.afterPropertiesSet();
367   - gatewayHttpUtils.afterPropertiesSet();
368   - rfidHttpLoader.afterPropertiesSet();
369   - ssoConfig.afterPropertiesSet();
370   -
371   - return "success";
372   - } catch (Exception e) {
373   - e.printStackTrace();
374   - }
375   -
376   - return "error";
377   - }
378   -
379   - @RequestMapping("/section/translateWgs2Bd")
380   - public String translateWgs2Bd1() {
381   - Map<String, Object> result = new HashMap<>();
382   - try {
383   - sectionService.translateWgs2Bd();
384   - return "success";
385   - } catch (Exception e) {
386   - e.printStackTrace();
387   - }
388   -
389   - return "error";
390   - }
391   -
392   - @RequestMapping("/station/translateWgs2Bd")
393   - public String translateWgs2Bd2() {
394   - Map<String, Object> result = new HashMap<>();
395   - try {
396   - stationService.translateWgs2Bd();
397   - return "success";
398   - } catch (Exception e) {
399   - e.printStackTrace();
400   - }
401   -
402   - return "error";
403   - }
  1 +package com.bsth.controller.realcontrol;
  2 +
  3 +import java.lang.reflect.Field;
  4 +import java.lang.reflect.Modifier;
  5 +import java.util.*;
  6 +import java.util.concurrent.ScheduledExecutorService;
  7 +import java.util.concurrent.TimeUnit;
  8 +
  9 +import com.bsth.Application;
  10 +import com.bsth.data.BasicData;
  11 +import com.bsth.security.SsoConfig;
  12 +import com.bsth.service.SectionService;
  13 +import com.bsth.service.StationService;
  14 +import com.bsth.data.directive.DayOfDirectives;
  15 +import com.bsth.data.directive.DirectivesPstThread;
  16 +import com.bsth.data.directive.GatewayHttpUtils;
  17 +import com.bsth.data.gpsdata_v2.cache.GeoCacheData;
  18 +import com.bsth.data.gpsdata_v2.handlers.overspeed.OverspeedProcess;
  19 +import com.bsth.data.gpsdata_v2.load.GatewayHttpLoader;
  20 +import com.bsth.data.gpsdata_v2.load.SocketClientLoader;
  21 +import com.bsth.data.gpsdata_v2.rfid.RfidHttpLoader;
  22 +import com.bsth.data.gpsdata_v2.thread.GpsDataLoaderThread;
  23 +import com.bsth.data.msg_queue.DirectivePushQueue;
  24 +import com.bsth.data.msg_queue.WebSocketPushQueue;
  25 +import com.bsth.data.pilot80.PilotReport;
  26 +import com.bsth.data.schedule.DayOfSchedule;
  27 +import com.bsth.entity.realcontrol.ScheduleRealInfo;
  28 +import com.bsth.filter.SQLInjectFilter;
  29 +import com.bsth.service.SystemParamService;
  30 +import com.bsth.service.schedule.utils.SpringUtils;
  31 +import com.bsth.util.MailUtils;
  32 +import com.fasterxml.jackson.core.JsonProcessingException;
  33 +import com.fasterxml.jackson.databind.ObjectMapper;
  34 +import com.fasterxml.jackson.databind.SerializationFeature;
  35 +import org.slf4j.Logger;
  36 +import org.slf4j.LoggerFactory;
  37 +import org.springframework.beans.factory.annotation.Autowired;
  38 +import org.springframework.web.bind.annotation.RequestMapping;
  39 +import org.springframework.web.bind.annotation.RequestParam;
  40 +import org.springframework.web.bind.annotation.RestController;
  41 +
  42 +import com.bsth.common.ResponseCode;
  43 +import com.bsth.websocket.handler.SendUtils;
  44 +
  45 +import ch.qos.logback.classic.Level;
  46 +import ch.qos.logback.classic.LoggerContext;
  47 +
  48 +/**
  49 + * Created by panzhao on 2017/4/14.
  50 + */
  51 +@RestController
  52 +@RequestMapping("adminUtils")
  53 +public class AdminUtilsController {
  54 +
  55 +
  56 + Logger logger = LoggerFactory.getLogger(this.getClass());
  57 +
  58 + @Autowired
  59 + private ObjectMapper objectMapper;
  60 +
  61 + @Autowired
  62 + DayOfSchedule dayOfSchedule;
  63 +
  64 + @Autowired
  65 + GeoCacheData geoCacheData;
  66 +
  67 + @Autowired
  68 + DayOfDirectives dayOfDirectives;
  69 +
  70 + @Autowired
  71 + SendUtils sendUtils;
  72 +
  73 + @Autowired
  74 + PilotReport pilotReport;
  75 +
  76 + @Autowired
  77 + private MailUtils mailUtils;
  78 +
  79 + @Autowired
  80 + private BasicData.BasicDataLoader basicDataLoader;
  81 +
  82 + @Autowired
  83 + private SectionService sectionService;
  84 +
  85 + @Autowired
  86 + private StationService stationService;
  87 +
  88 + @Autowired
  89 + private SystemParamService systemParamService;
  90 +
  91 + @Autowired
  92 + private SocketClientLoader socketClientLoader;
  93 +
  94 + @Autowired
  95 + private GatewayHttpLoader gatewayHttpLoader;
  96 +
  97 + @Autowired
  98 + private GatewayHttpUtils gatewayHttpUtils;
  99 +
  100 + @Autowired
  101 + private RfidHttpLoader rfidHttpLoader;
  102 +
  103 + @Autowired
  104 + private SsoConfig ssoConfig;
  105 +
  106 + /**
  107 + * 出现重复班次的车辆
  108 + *
  109 + * @param
  110 + * @RequestMapping(value = "/schRepeat", method = RequestMethod.POST)
  111 + * public void schRepeat(@RequestParam String nbbm){
  112 + * logger.info("前端通知,车辆 " + nbbm + "出现重复班次,开始检测...");
  113 + * List<ScheduleRealInfo> list = dayOfSchedule.findByNbbm(nbbm);
  114 + * logger.info("检测前,车辆班次数量:" + list.size());
  115 + * <p>
  116 + * Map<Long, ScheduleRealInfo> map = new HashMap<>();
  117 + * for(ScheduleRealInfo sch : list){
  118 + * if(map.containsKey(sch.getId())){
  119 + * logger.info("检测到重复ID: " + sch.getId());
  120 + * }
  121 + * map.put(sch.getId(), sch);
  122 + * }
  123 + * <p>
  124 + * logger.info("检测后,车辆班次数量:" + list.size());
  125 + * if(map.values().size() > 0){
  126 + * dayOfSchedule.replaceByNbbm(nbbm, map.values());
  127 + * }
  128 + * }
  129 + */
  130 +
  131 +/* @RequestMapping(value = "/directivePushQueue")
  132 + public void directivePushQueue(){
  133 + DirectivePushQueue.start();
  134 + }*/
  135 + @RequestMapping(value = "/directiveQueueSize")
  136 + public void directiveQueueSize() {
  137 + DirectivePushQueue.size();
  138 + }
  139 +
  140 + /*@RequestMapping(value = "/webSocketPushQueue")
  141 + public void webSocketPushQueue(){
  142 + WebSocketPushQueue.start();
  143 + }*/
  144 +
  145 + @RequestMapping(value = "/webSocketQueueSize")
  146 + public void webSocketQueueSize() {
  147 + WebSocketPushQueue.size();
  148 + }
  149 +
  150 + @RequestMapping(value = "/setHttpFlag")
  151 + public void setHttpFlag(@RequestParam int flag) {
  152 + if (flag != 0 && flag != -1)
  153 + return;
  154 + GpsDataLoaderThread.setFlag(flag);
  155 + }
  156 +
  157 + @RequestMapping(value = "/updateCacheBuff")
  158 + public void updateCacheBuff() {
  159 + geoCacheData.loadData();
  160 + }
  161 +
  162 + @RequestMapping(value = "/reCalcLpSch")
  163 + public void reCalcLpSch() {
  164 + dayOfSchedule._test_reCalcLpSch();
  165 + }
  166 +
  167 + @RequestMapping(value = "/findSchByLpName")
  168 + public List<ScheduleRealInfo> findSchByLpName(@RequestParam String lpName) {
  169 + return dayOfSchedule.getLpScheduleMap().get(lpName);
  170 + }
  171 +
  172 + @RequestMapping(value = "/findSchByNbbm")
  173 + public List<ScheduleRealInfo> findSchByNbbm(@RequestParam String nbbm) {
  174 + return dayOfSchedule.findByNbbm(nbbm);
  175 + }
  176 +
  177 + @RequestMapping(value = "/executeCurr")
  178 + public ScheduleRealInfo executeCurr(@RequestParam String nbbm) {
  179 + return dayOfSchedule.executeCurr(nbbm);
  180 + };
  181 +
  182 + @RequestMapping(value = "/reCalcExecPlan4Nbbm")
  183 + public void reCalcExecPlan4Nbbm(@RequestParam String nbbm) {
  184 + dayOfSchedule.reCalcExecPlan(nbbm);
  185 + };
  186 +
  187 + @RequestMapping(value = "/reCalcExecPlan4Line")
  188 + public void reCalcExecPlan4Line(@RequestParam String lineCode) {
  189 + Set<String> nbbms = dayOfSchedule.findCarByLineCode(lineCode);
  190 + for (String nbbm : nbbms) {
  191 + dayOfSchedule.reCalcExecPlan(nbbm);
  192 + }
  193 + };
  194 +
  195 + @RequestMapping(value = "/removeExecPlan")
  196 + public int removeExecPlan(@RequestParam String nbbm) {
  197 + dayOfSchedule.removeExecPlan(nbbm);
  198 + return 1;
  199 + }
  200 +
  201 + @RequestMapping(value = "/sch_re_calc_id_maps")
  202 + public int reCalcIdMaps() {
  203 + return dayOfSchedule.reCalcIdMaps();
  204 + }
  205 +
  206 + @RequestMapping(value = "/sch_size_string")
  207 + public String schSizeString() {
  208 + return dayOfSchedule.sizeString();
  209 + }
  210 +
  211 + @RequestMapping(value = "/containerSize")
  212 + public Map<String, Integer> containerSize() {
  213 + Map<String, Integer> rs = new HashMap<>();
  214 + rs.put("60_size", dayOfDirectives.all60().size());
  215 + rs.put("80_size", pilotReport.findAll().size());
  216 + rs.put("nbbm_sch_size", dayOfSchedule.findAll().size());
  217 + rs.put("lp_sch_size", dayOfSchedule.findAllByLpContainer().size());
  218 + rs.put("id_sch_size", dayOfSchedule.findAllByIdContainer().size());
  219 + rs.put("pst_sch_size", dayOfSchedule.getPstSize());
  220 + rs.put("speeds_size", OverspeedProcess.size());
  221 + return rs;
  222 + }
  223 +
  224 + @RequestMapping(value = "/websocketRadioText")
  225 + public int radioText(String t, String lineCode) {
  226 + sendUtils.sendRadioText(t, lineCode);
  227 + return 0;
  228 + }
  229 +
  230 + @Autowired
  231 + DirectivesPstThread directivesPstThread;
  232 +
  233 + @RequestMapping(value = "/_sd_60_pst")
  234 + public void sd_60_pst() {
  235 + logger.info("手动入库指令....");
  236 + directivesPstThread.run();
  237 + }
  238 +
  239 + /**
  240 + * 删除班次,删除内存中未清理掉的非当天的班次
  241 + * @createDate 2019.05.13
  242 + * @author zhangxianzhou
  243 + * @param id 线路id
  244 + * @return 被删除的班次信息
  245 + */
  246 + @RequestMapping("/deleteSchduleBC")
  247 + public Map<String, Object> deleteSchduleBC(Long id) {
  248 + Map<String, Object> rs = new HashMap<>();
  249 + rs.put("status", ResponseCode.ERROR);
  250 + ScheduleRealInfo sch = null;
  251 + try {
  252 + sch = dayOfSchedule.get(id);
  253 + if (sch == null) {
  254 + rs.put("msg", "无效的id号");
  255 + return rs;
  256 + }
  257 +
  258 + //内存中删除
  259 + dayOfSchedule.deleteBC(sch);
  260 + rs.put("delete", sch);
  261 + rs.put("status", ResponseCode.SUCCESS);
  262 +
  263 + } catch (Exception e) {
  264 + logger.error("", e);
  265 + rs.put("msg", e.getMessage());
  266 + sch.setDeleted(false);
  267 + }
  268 +
  269 + return rs;
  270 + }
  271 +
  272 + @RequestMapping("/changeLogLevel")
  273 + public Map<String, Object> changeLogLevel(@RequestParam String level) {
  274 + Map<String, Object> rs = new HashMap<>();
  275 + rs.put("errCode", 1);
  276 + LoggerContext context = (LoggerContext)LoggerFactory.getILoggerFactory();
  277 + context.getLogger("root").setLevel(Level.toLevel(level));
  278 + rs.put("errCode", 0);
  279 + rs.put("errMsg", "成功");
  280 +
  281 + return rs;
  282 + }
  283 +
  284 + @RequestMapping("/exportInstance")
  285 + public String exportInstance(@RequestParam String classType) {
  286 + Map<String, Object> result = new HashMap<>();
  287 + try {
  288 + ObjectMapper mapper = new ObjectMapper();
  289 + mapper.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false);
  290 + Class cls = Class.forName(classType);
  291 + Field[] fields = cls.getDeclaredFields();
  292 + for (Field field : fields) {
  293 + if (Modifier.isStatic(field.getModifiers()) && field.getName().indexOf("log") == -1) {
  294 + field.setAccessible(true);
  295 + result.put(field.getName(), field.get(cls));
  296 + }
  297 + }
  298 + result.put("_bean", SpringUtils.getBean(Class.forName(classType)));
  299 + return mapper.writeValueAsString(result);
  300 + } catch (ClassNotFoundException | JsonProcessingException | IllegalAccessException e) {
  301 + e.printStackTrace();
  302 + }
  303 +
  304 + return "error";
  305 + }
  306 +
  307 + @RequestMapping("/refreshBasicAll")
  308 + public String refreshBasicAll() {
  309 + Map<String, Object> result = new HashMap<>();
  310 + try {
  311 + basicDataLoader.loadAllData();
  312 + return "success";
  313 + } catch (Exception e) {
  314 + e.printStackTrace();
  315 + }
  316 +
  317 + return "error";
  318 + }
  319 +
  320 + @RequestMapping("/startSchedule")
  321 + public String startSchedule(@RequestParam int bits) {
  322 + Map<String, Object> result = new HashMap<>();
  323 + try {
  324 + ScheduledExecutorService sexec = Application.mainServices;
  325 + if ((bits & 1) == 1) {
  326 + sexec.scheduleWithFixedDelay(directivesPstThread, 120, 60, TimeUnit.SECONDS);
  327 + }
  328 +
  329 + return "success";
  330 + } catch (Exception e) {
  331 + e.printStackTrace();
  332 + }
  333 +
  334 + return "error";
  335 + }
  336 +
  337 + @RequestMapping("/setInjectStr")
  338 + public String setInjectStr(@RequestParam String injectStr) {
  339 + Map<String, Object> result = new HashMap<>();
  340 + try {
  341 + SQLInjectFilter.setInjStr(injectStr);
  342 + return "success";
  343 + } catch (Exception e) {
  344 + e.printStackTrace();
  345 + }
  346 +
  347 + return "error";
  348 + }
  349 +
  350 + @RequestMapping("/reloadSystemParam")
  351 + public String reloadSystemParam() {
  352 + try {
  353 + systemParamService.refresh();
  354 +
  355 + return "success";
  356 + } catch (Exception e) {
  357 + e.printStackTrace();
  358 + }
  359 +
  360 + return "error";
  361 + }
  362 +
  363 + @RequestMapping("/applySystemParam")
  364 + public String applySystemParam() {
  365 + try {
  366 + socketClientLoader.afterPropertiesSet();
  367 + gatewayHttpLoader.afterPropertiesSet();
  368 + gatewayHttpUtils.afterPropertiesSet();
  369 + rfidHttpLoader.afterPropertiesSet();
  370 + ssoConfig.afterPropertiesSet();
  371 +
  372 + return "success";
  373 + } catch (Exception e) {
  374 + e.printStackTrace();
  375 + }
  376 +
  377 + return "error";
  378 + }
  379 +
  380 + @RequestMapping("/reloadAndApplySystemParam")
  381 + public String reloadAndApplySystemParam() {
  382 + try {
  383 + systemParamService.refresh();
  384 +
  385 + socketClientLoader.afterPropertiesSet();
  386 + gatewayHttpLoader.afterPropertiesSet();
  387 + gatewayHttpUtils.afterPropertiesSet();
  388 + rfidHttpLoader.afterPropertiesSet();
  389 + ssoConfig.afterPropertiesSet();
  390 +
  391 + return "success";
  392 + } catch (Exception e) {
  393 + e.printStackTrace();
  394 + }
  395 +
  396 + return "error";
  397 + }
  398 +
  399 + @RequestMapping("/section/translateWgs2Bd")
  400 + public String translateWgs2Bd1() {
  401 + Map<String, Object> result = new HashMap<>();
  402 + try {
  403 + sectionService.translateWgs2Bd();
  404 + return "success";
  405 + } catch (Exception e) {
  406 + e.printStackTrace();
  407 + }
  408 +
  409 + return "error";
  410 + }
  411 +
  412 + @RequestMapping("/station/translateWgs2Bd")
  413 + public String translateWgs2Bd2() {
  414 + Map<String, Object> result = new HashMap<>();
  415 + try {
  416 + stationService.translateWgs2Bd();
  417 + return "success";
  418 + } catch (Exception e) {
  419 + e.printStackTrace();
  420 + }
  421 +
  422 + return "error";
  423 + }
404 424 }
405 425 \ No newline at end of file
... ...