Commit 37982c843ebae2600a793461b58da6fb778fc198

Authored by ljq
1 parent fb52a37a

答题失败后增加失败原因

src/main/java/com/bsth/entity/subject/SubjectUser.java
... ... @@ -29,6 +29,8 @@ public class SubjectUser {
29 29  
30 30 // 修改人
31 31 private Integer updateBy;
  32 +
  33 + private String remark;
32 34  
33 35 /** 创建日期 timestamp */
34 36 @Column(updatable = false, name = "create_date", columnDefinition = "TIMESTAMP DEFAULT CURRENT_TIMESTAMP")
... ... @@ -109,4 +111,12 @@ public class SubjectUser {
109 111 public void setUpdateDate(Date updateDate) {
110 112 this.updateDate = updateDate;
111 113 }
  114 +
  115 + public String getRemark() {
  116 + return remark;
  117 + }
  118 +
  119 + public void setRemark(String remark) {
  120 + this.remark = remark;
  121 + }
112 122 }
... ...
src/main/java/com/bsth/repository/subject/SubjectUserRepository.java
... ... @@ -17,8 +17,8 @@ public interface SubjectUserRepository extends BaseRepository<SubjectUser, Integ
17 17 List<SubjectUser> userAll(String rq, Integer userId);
18 18 @Transactional
19 19 @Modifying
20   - @Query(value = "update SubjectUser su set su.result =?1,su.updateBy = ?2,su.updateDate = ?3 where su.id =?4")
21   - int updates(String result, Integer id, Date updateDate, Integer userId);
  20 + @Query(value = "update SubjectUser su set su.result =?1,su.updateBy = ?2,su.updateDate = ?3,su.remark =?4 where su.id =?5")
  21 + int updates(String result, Integer id, Date updateDate,String remark, Integer userId);
22 22  
23 23 @Query(value="select su.user_id,su.rq,su.result,u.name,u.user_name "
24 24 + " from bsth_subject_user su,bsth_c_sys_user u where su.user_id =u.id and su.rq =?1 and su.user_id in ( ?2 ) "
... ...
src/main/java/com/bsth/service/subject/impl/SubjectUserServiceImpl.java
... ... @@ -81,36 +81,42 @@ public class SubjectUserServiceImpl extends BaseServiceImpl&lt;SubjectUser, Integer
81 81 //类型
82 82 String type = sur.getSubjectId().getType();
83 83  
84   -
  84 + Map m = new HashMap();
  85 + String remark="";
85 86 String result = null;
86 87 if (sur.getSubjectId().getSchStatus().equals("0")){ //区分上下行的班次数据
87 88 //判断答题是否正确
88 89 subEnum sjm = subEnum.valueOf(type);
89 90 List<ScheduleRealInfo> sh = sch.stream().filter(s -> s.getXlDir().equals(sur.getSubjectId().getDir())).collect(Collectors.toList());
90   - result = sjm.run(sur,sh) == true ? "0" : "1";
  91 + m = sjm.run(sur,sh);
  92 + result = new Boolean(m.get("state").toString()) == true ? "0" : "1";
  93 +
  94 +
91 95 }if (sur.getSubjectId().getSchStatus().equals("1")) {//全量的班次数据
92 96 //判断答题是否正确
93 97 subEnum sjm = subEnum.valueOf(type);
94   - result = sjm.run(sur,sch) == true ? "0" : "1";
  98 + m = sjm.run(sur,sch);
  99 + result = new Boolean(m.get("state").toString()) == true ? "0" : "1";
  100 +
95 101 }if (sur.getSubjectId().getSchStatus().equals("2")) { //与设备对接的
96 102 subEnumDevice sjmdrivce = subEnumDevice.valueOf(type);
97 103  
98 104 //运营指令
99 105 Collection<D60> yyArray = dayOfDirectives.all60();//查看当日缓存指令
100   -
101   - result = sjmdrivce.run(sur,yyArray,user) == true ? "0" : "1";
  106 + m = sjmdrivce.run(sur,yyArray,user);
  107 + result = new Boolean(m.get("state").toString()) == true ? "0" : "1";
102 108 }
  109 + if (m.get("message") != null)
  110 + remark = m.get("message").toString();
  111 +
103 112  
104 113 SimpleDateFormat formatter = new SimpleDateFormat ("yyyy-MM-dd HH:mm:ss");
105 114 Date date = new Date();
106 115 // 修改日期
107   - String updateDate = formatter.format(date);
108 116  
109 117 //修改答案
110   - int status = subjectUserRepository.updates(result,user.getId(),date,id);
111   - //List list = subjectUserRepository.userAll(sur.getRq(),sur.getUserId());
112   - // map.put("result",result);
113   - //map.put("list",list);
  118 + int status = subjectUserRepository.updates(result,user.getId(),date,remark,id);
  119 +
114 120 if (status == 1){
115 121 return result;
116 122 }
... ...
src/main/java/com/bsth/util/subject/rtMessage.java 0 → 100644
  1 +package com.bsth.util.subject;
  2 +
  3 +public class rtMessage {
  4 +
  5 + static String DF_ERROR = "待发时间与规定不匹配";
  6 +
  7 + static String LB_ERROR = "未成功烂班";
  8 +
  9 + static String CLB_ERROR = "未成功烂班后撤销烂班";
  10 +
  11 + static String JGS_ERROR = "后续三个班次间隔时间未合理";
  12 +
  13 + static String SF_ERROR = "班次未成功实发";
  14 +
  15 + static String CSF_ERROR = "班次未成功实发后撤销实发";
  16 +
  17 + static String ZF_RROR = "班次未直放";
  18 +
  19 + static String FZ_ERROR = "班次未放站";
  20 +
  21 + static String ZRW_ERROR = "未有子任务或子任务站点未对应";
  22 +
  23 + static String LJBC_ERROR = "未有正确的临加班次";
  24 +
  25 + static String LJBC_WF_ERROR = "未有正确的往返班次";
  26 +
  27 + static String LJBC_CDC_ERROR = "未有正确的场到场班次";
  28 +
  29 + static String LP_ERROR = "未成功临加路牌并在该路牌上临加班次";
  30 +
  31 + static String J_GH_ERROR = "备选驾驶员未成功更换";
  32 +
  33 + static String HB_ERROR = "驾驶员未成功更换";
  34 +
  35 + static String PDF_ERROR = "三个班次未全部成功待发调整正确";
  36 +
  37 + static String PWD_ERROR = "误点调整未批量";
  38 +
  39 + static String QDIR_ERROR = "车辆未成功切换下行";
  40 +
  41 + static String XF_ERROR = "车辆未成功下发消息";
  42 +
  43 + static String PXF_ERROR = "未给多辆车下发消息 ";
  44 +
  45 +}
... ...
src/main/java/com/bsth/util/subject/subEnum.java
... ... @@ -6,35 +6,37 @@ import com.bsth.entity.realcontrol.ScheduleRealInfo;
6 6 import com.bsth.entity.subject.SubjectUser;
7 7  
8 8 import java.text.SimpleDateFormat;
9   -import java.util.Collections;
10   -import java.util.Comparator;
11   -import java.util.List;
12   -import java.util.Set;
  9 +import java.util.*;
13 10 import java.util.stream.Collectors;
14 11  
15 12 public enum subEnum {
16 13  
17   -
  14 +
18 15 //判断待发
19 16 df{
20 17 @Override
21   - public boolean run(SubjectUser sur, List<ScheduleRealInfo> sch){
  18 + public Map run(SubjectUser sur, List<ScheduleRealInfo> sch){
  19 + Map m = new HashMap();
22 20 String sj = sur.getSubjectId().getFcsj();//计划发车时间
23 21 String answer = sur.getSubjectId().getAnswer();//待发是按
24 22 //判断结果是否合格
25 23 for (ScheduleRealInfo s : sch) {
26 24 if (s.getFcsj().equals(sj) &&
27 25 s.getDfsj().equals(answer)) {
28   - return true;
  26 + m.put("state",true);
  27 + return m;
29 28 }
30 29 }
31   - return false;
  30 + m.put("state",false);
  31 + m.put("message",rtMessage.DF_ERROR);
  32 + return m;
32 33 }
33 34 },
34 35 //判断烂班
35 36 lb{
36 37 @Override
37   - public boolean run(SubjectUser sur, List<ScheduleRealInfo> sch){
  38 + public Map run(SubjectUser sur, List<ScheduleRealInfo> sch){
  39 + Map m = new HashMap();
38 40 String sj = sur.getSubjectId().getFcsj();//计划发车时间
39 41 String answer = sur.getSubjectId().getAnswer();//答案
40 42 String[] t = answer.split(","); //0 计划里程 1 是否烂班状态 2烂班原因
... ... @@ -44,16 +46,20 @@ public enum subEnum {
44 46 s.getJhlc() == Double.parseDouble(t[0]) &&
45 47 s.getStatus() == Integer.parseInt(t[1]) &&
46 48 s.getRemarks().contains(t[2])) {
47   - return true;
  49 + m.put("state",true);
  50 + return m;
48 51 }
49 52 }
50   - return false;
  53 + m.put("state",false);
  54 + m.put("message",rtMessage.LB_ERROR);
  55 + return m;
51 56 }
52 57 },
53 58 //判断烂班后撤销烂班
54 59 clb{
55 60 @Override
56   - public boolean run(SubjectUser sur, List<ScheduleRealInfo> sch){
  61 + public Map run(SubjectUser sur, List<ScheduleRealInfo> sch){
  62 + Map m = new HashMap();
57 63 String sj = sur.getSubjectId().getFcsj();//计划发车时间
58 64 String answer = sur.getSubjectId().getAnswer();//答案
59 65 String[] t = answer.split(","); //0 是否烂班状态 1是否烂班过
... ... @@ -65,15 +71,20 @@ public enum subEnum {
65 71 if (s.getDfsj().equals(sj) &&
66 72 s.getStatus() == Integer.parseInt(t[0]) &&
67 73 t[1].equals(s.getAdjustExps())) {
68   - return true;
  74 + m.put("state",true);
  75 + return m;
69 76 }
70 77 }
71   - return false;
  78 + m.put("state",false);
  79 + m.put("message",rtMessage.CLB_ERROR);
  80 + return m;
72 81 }
73 82 },
  83 + //多个发车间隔
74 84 jgs{
75 85 @Override
76   - public boolean run(SubjectUser sur, List<ScheduleRealInfo> sch){
  86 + public Map run(SubjectUser sur, List<ScheduleRealInfo> sch){
  87 + Map m = new HashMap();
77 88 String sj = sur.getSubjectId().getFcsj();//计划发车时间
78 89 String answer = sur.getSubjectId().getAnswer();//答案
79 90 String[] t = answer.split(","); //0 里程是否清0 1 是否烂班状态 2烂班原因3.班次间隔时间
... ... @@ -109,19 +120,23 @@ public enum subEnum {
109 120 }
110 121 //3个班次都正确
111 122 if (sunm == 3){
112   - return true;
  123 + m.put("state",true);
  124 + return m;
113 125 }
114 126 }catch (Exception e){
115 127 e.printStackTrace();
116 128 }
117 129  
118   - return false;
  130 + m.put("state",false);
  131 + m.put("message",rtMessage.JGS_ERROR);
  132 + return m;
119 133 }
120 134 }, //判断烂班
121 135 //实发
122 136 sf{
123 137 @Override
124   - public boolean run(SubjectUser sur, List<ScheduleRealInfo> sch){
  138 + public Map run(SubjectUser sur, List<ScheduleRealInfo> sch){
  139 + Map m = new HashMap();
125 140 String sj = sur.getSubjectId().getFcsj();//计划发车时间
126 141 String answer = sur.getSubjectId().getAnswer();//答案
127 142 String[] t = answer.split(","); //0 实发时间 1调整说明
... ... @@ -130,16 +145,20 @@ public enum subEnum {
130 145 if (s.getDfsj().equals(sj) &&
131 146 t[0].equals(s.getFcsjActual()) &&
132 147 s.getRemarks().contains(t[1])) {
133   - return true;
  148 + m.put("state",true);
  149 + return m;
134 150 }
135 151 }
136   - return false;
  152 + m.put("state",false);
  153 + m.put("message",rtMessage.SF_ERROR);
  154 + return m;
137 155 }
138 156 },
139 157 //撤销实发
140 158 csf {
141 159 @Override
142   - public boolean run(SubjectUser sur, List<ScheduleRealInfo> sch) {
  160 + public Map run(SubjectUser sur, List<ScheduleRealInfo> sch) {
  161 + Map m = new HashMap();
143 162 String sj = sur.getSubjectId().getFcsj();//计划发车时间
144 163 String answer = sur.getSubjectId().getAnswer();//答案
145 164 String[] t = answer.split(","); //0 调整说明
... ... @@ -149,16 +168,20 @@ public enum subEnum {
149 168 s.getFcsjActual() == null &&
150 169 s.getRemarks() != null &&
151 170 s.getRemarks().contains(t[0])) {
152   - return true;
  171 + m.put("state",true);
  172 + return m;
153 173 }
154 174 }
155   - return false;
  175 + m.put("state",false);
  176 + m.put("message",rtMessage.CSF_ERROR);
  177 + return m;
156 178 }
157 179 },
158 180 //直放
159 181 zf {
160 182 @Override
161   - public boolean run(SubjectUser sur, List<ScheduleRealInfo> sch) {
  183 + public Map run(SubjectUser sur, List<ScheduleRealInfo> sch) {
  184 + Map m = new HashMap();
162 185 String sj = sur.getSubjectId().getFcsj();//计划发车时间
163 186 String answer = sur.getSubjectId().getAnswer();//答案
164 187 String[] t = answer.split(","); //0 放站
... ... @@ -166,16 +189,20 @@ public enum subEnum {
166 189 for (ScheduleRealInfo s : sch) {
167 190 if (s.getDfsj().equals(sj) &&
168 191 s.getBcType().equals(t[0])) {
169   - return true;
  192 + m.put("state",true);
  193 + return m;
170 194 }
171 195 }
172   - return false;
  196 + m.put("state",false);
  197 + m.put("message",rtMessage.ZF_RROR);
  198 + return m;
173 199 }
174 200 },
175 201 //放站
176 202 fz {
177 203 @Override
178   - public boolean run(SubjectUser sur, List<ScheduleRealInfo> sch) {
  204 + public Map run(SubjectUser sur, List<ScheduleRealInfo> sch) {
  205 + Map m = new HashMap();
179 206 String sj = sur.getSubjectId().getFcsj();//计划发车时间
180 207 String answer = sur.getSubjectId().getAnswer();//答案
181 208 String[] t = answer.split(","); //0 放站 1备注-是不是龙阳路地铁站
... ... @@ -185,16 +212,20 @@ public enum subEnum {
185 212 s.getBcType().equals(t[0]) &&
186 213 s.getRemarks() != null &&
187 214 s.getRemarks().contains(t[1])) {
188   - return true;
  215 + m.put("state",true);
  216 + return m;
189 217 }
190 218 }
191   - return false;
  219 + m.put("state",false);
  220 + m.put("message",rtMessage.FZ_ERROR);
  221 + return m;
192 222 }
193 223 },
194 224 //子任务
195 225 zrw {
196 226 @Override
197   - public boolean run(SubjectUser sur, List<ScheduleRealInfo> sch) {
  227 + public Map run(SubjectUser sur, List<ScheduleRealInfo> sch) {
  228 + Map m = new HashMap();
198 229 String sj = sur.getSubjectId().getFcsj();//计划发车时间
199 230 String answer = sur.getSubjectId().getAnswer();//答案
200 231 String[] t = answer.split(","); //0 放站 1备注-是不是龙阳路地铁站
... ... @@ -216,19 +247,23 @@ public enum subEnum {
216 247 }
217 248 //判断子任务里程数和班次里程数是否一样 && 满足两个班次
218 249 if (lc == s.getJhlc().floatValue() && sn == 2) {
219   - return true;
  250 + m.put("state",true);
  251 + return m;
220 252 }
221 253  
222 254 }
223 255 }
224   - return false;
  256 + m.put("state",false);
  257 + m.put("message",rtMessage.ZRW_ERROR);
  258 + return m;
225 259 }
226 260  
227 261 },
228 262 //临加班次
229 263 ljbc{
230 264 @Override
231   - public boolean run(SubjectUser sur, List<ScheduleRealInfo> sch){
  265 + public Map run(SubjectUser sur, List<ScheduleRealInfo> sch){
  266 + Map m = new HashMap();
232 267 String sj = sur.getSubjectId().getFcsj();//计划发车时间
233 268 String answer = sur.getSubjectId().getAnswer();//答案
234 269 String[] t = answer.split(","); //0
... ... @@ -248,7 +283,8 @@ public enum subEnum {
248 283 }
249 284 //判断是否有这个临加班次
250 285 if (s.getDfsj().equals(df) && s.getClZbh().contains(t[1]) && s.isSflj() == true) {
251   - return true;
  286 + m.put("state",true);
  287 + return m;
252 288 }
253 289  
254 290 }
... ... @@ -256,13 +292,16 @@ public enum subEnum {
256 292 e.printStackTrace();
257 293 }
258 294  
259   - return false;
  295 + m.put("state",false);
  296 + m.put("message",rtMessage.LJBC_ERROR);
  297 + return m;
260 298 }
261 299 },
262 300 //临加班次 往返班次
263 301 ljbc_wf{
264 302 @Override
265   - public boolean run(SubjectUser sur, List<ScheduleRealInfo> sch){
  303 + public Map run(SubjectUser sur, List<ScheduleRealInfo> sch){
  304 + Map m = new HashMap();
266 305 String sj = sur.getSubjectId().getFcsj();//计划发车时间
267 306 String answer = sur.getSubjectId().getAnswer();//答案
268 307 String[] t = answer.split(","); //0
... ... @@ -287,7 +326,8 @@ public enum subEnum {
287 326 dfsj =s.getZdsj();
288 327 }
289 328 if(s.getDfsj().equals(dfsj) && s.isSflj() == true){
290   - return true;
  329 + m.put("state",true);
  330 + return m;
291 331 }
292 332  
293 333  
... ... @@ -296,13 +336,16 @@ public enum subEnum {
296 336 e.printStackTrace();
297 337 }
298 338  
299   - return false;
  339 + m.put("state",false);
  340 + m.put("message",rtMessage.LJBC_WF_ERROR);
  341 + return m;
300 342 }
301 343 },
302 344 //临加班次 场到场
303 345 ljbc_cdc{
304 346 @Override
305   - public boolean run(SubjectUser sur, List<ScheduleRealInfo> sch){
  347 + public Map run(SubjectUser sur, List<ScheduleRealInfo> sch){
  348 + Map m = new HashMap();
306 349 String sj = sur.getSubjectId().getFcsj();//计划发车时间
307 350 String answer = sur.getSubjectId().getAnswer();//答案
308 351 String[] t = answer.split(","); //0
... ... @@ -327,20 +370,24 @@ public enum subEnum {
327 370 }
328 371 }
329 372 if(nts == 2){
330   - return true;
  373 + m.put("state",true);
  374 + return m;
331 375 }
332 376  
333 377 }catch (Exception e){
334 378 e.printStackTrace();
335 379 }
336 380  
337   - return false;
  381 + m.put("state",false);
  382 + m.put("message",rtMessage.LJBC_CDC_ERROR);
  383 + return m;
338 384 }
339 385 },
340 386 //临加班次 场到场
341 387 lp{
342 388 @Override
343   - public boolean run(SubjectUser sur, List<ScheduleRealInfo> sch){
  389 + public Map run(SubjectUser sur, List<ScheduleRealInfo> sch){
  390 + Map m = new HashMap();
344 391 String sj = sur.getSubjectId().getFcsj();//计划发车时间
345 392 String answer = sur.getSubjectId().getAnswer();//答案
346 393 String[] t = answer.split(","); //0
... ... @@ -354,7 +401,8 @@ public enum subEnum {
354 401 ScheduleRealInfo s = sch.get(i);
355 402 //判断当前班次是否符合条件 全部班次
356 403 if ( s.getDfsj().equals(sj) && s.getLpName().equals(t[0]) && s.isSflj() == true) {
357   - return true;
  404 + m.put("state",true);
  405 + return m;
358 406 }
359 407 }
360 408  
... ... @@ -362,13 +410,16 @@ public enum subEnum {
362 410 e.printStackTrace();
363 411 }
364 412  
365   - return false;
  413 + m.put("state",false);
  414 + m.put("message",rtMessage.LP_ERROR);
  415 + return m;
366 416 }
367 417 },
368   - //临加班次 场到场
  418 + //替换代班驾驶员
369 419 j_gh{
370 420 @Override
371   - public boolean run(SubjectUser sur, List<ScheduleRealInfo> sch){
  421 + public Map run(SubjectUser sur, List<ScheduleRealInfo> sch){
  422 + Map m = new HashMap();
372 423 String sj = sur.getSubjectId().getFcsj();//计划发车时间
373 424 String answer = sur.getSubjectId().getAnswer();//答案
374 425 String[] t = answer.split(","); //0
... ... @@ -382,7 +433,8 @@ public enum subEnum {
382 433 ScheduleRealInfo s = sch.get(i);
383 434 //判断当前班次是否符合条件 全部班次
384 435 if ( s.getDfsj().equals(sj) && s.getjGh().equals(t[0])) {
385   - return true;
  436 + m.put("state",true);
  437 + return m;
386 438 }
387 439 }
388 440  
... ... @@ -390,13 +442,16 @@ public enum subEnum {
390 442 e.printStackTrace();
391 443 }
392 444  
393   - return false;
  445 + m.put("state",false);
  446 + m.put("message",rtMessage.J_GH_ERROR);
  447 + return m;
394 448 }
395 449 },
396 450 //换班
397 451 hb{
398 452 @Override
399   - public boolean run(SubjectUser sur, List<ScheduleRealInfo> sch){
  453 + public Map run(SubjectUser sur, List<ScheduleRealInfo> sch){
  454 + Map m = new HashMap();
400 455 String sj = sur.getSubjectId().getFcsj();//计划发车时间
401 456 String answer = sur.getSubjectId().getAnswer();//答案
402 457 String[] t = answer.split(","); //0
... ... @@ -418,20 +473,24 @@ public enum subEnum {
418 473 }
419 474 }
420 475 if(su == 2)
421   - return true;
  476 + m.put("state",true);
  477 + return m;
422 478  
423 479  
424 480 }catch (Exception e){
425 481 e.printStackTrace();
426 482 }
427 483  
428   - return false;
  484 + m.put("state",false);
  485 + m.put("message",rtMessage.HB_ERROR);
  486 + return m;
429 487 }
430 488 },
431 489 //批量修改待发
432 490 pdf{
433 491 @Override
434   - public boolean run(SubjectUser sur, List<ScheduleRealInfo> sch){
  492 + public Map run(SubjectUser sur, List<ScheduleRealInfo> sch){
  493 + Map m = new HashMap();
435 494 String sj = sur.getSubjectId().getFcsj();//计划发车时间
436 495 String answer = sur.getSubjectId().getAnswer();//答案
437 496 String[] t = answer.split(","); //0
... ... @@ -455,21 +514,25 @@ public enum subEnum {
455 514 }
456 515 }
457 516 if(sunm == 3)
458   - return true;
  517 + m.put("state",true);
  518 + return m;
459 519  
460 520  
461 521 }catch (Exception e){
462 522 e.printStackTrace();
463 523 }
464 524  
465   - return false;
  525 + m.put("state",false);
  526 + m.put("message",rtMessage.PDF_ERROR);
  527 + return m;
466 528 }
467 529 },
468 530  
469 531 //批量误点调整
470 532 pwd{
471 533 @Override
472   - public boolean run(SubjectUser sur, List<ScheduleRealInfo> sch){
  534 + public Map run(SubjectUser sur, List<ScheduleRealInfo> sch){
  535 + Map m = new HashMap();
473 536 String sj = sur.getSubjectId().getFcsj();//计划发车时间
474 537 String answer = sur.getSubjectId().getAnswer();//答案
475 538 String[] t = answer.split(","); //0
... ... @@ -493,16 +556,20 @@ public enum subEnum {
493 556 sunm = stn == Integer.parseInt(t[0]) ? sunm + 1 : sunm; //班次调整待发延后10分
494 557 }
495 558 }
496   - if(sunm == 3)
497   - return true;
  559 + if(sunm == 3) {
  560 + m.put("state", true);
  561 + return m;
  562 + }
498 563  
499 564  
500 565 }catch (Exception e){
501 566 e.printStackTrace();
502 567 }
503 568  
504   - return false;
  569 + m.put("state",false);
  570 + m.put("message",rtMessage.PWD_ERROR);
  571 + return m;
505 572 }
506 573 };
507   - public abstract boolean run(SubjectUser sur, List<ScheduleRealInfo> sch);
  574 + public abstract Map run(SubjectUser sur, List<ScheduleRealInfo> sch);
508 575 }
... ...
src/main/java/com/bsth/util/subject/subEnumDevice.java
... ... @@ -8,10 +8,7 @@ import com.bsth.entity.subject.SubjectUser;
8 8 import com.bsth.entity.sys.SysUser;
9 9  
10 10 import java.text.SimpleDateFormat;
11   -import java.util.Collection;
12   -import java.util.Collections;
13   -import java.util.List;
14   -import java.util.Set;
  11 +import java.util.*;
15 12 import java.util.stream.Collectors;
16 13  
17 14 public enum subEnumDevice {
... ... @@ -20,48 +17,61 @@ public enum subEnumDevice {
20 17 //手动切换车辆方向
21 18 qdir{
22 19 @Override
23   - public boolean run(SubjectUser sur, Collection<D60> yyArray,SysUser user){
  20 + public Map run(SubjectUser sur, Collection<D60> yyArray,SysUser user){
  21 + Map m = new HashMap();
24 22 for (D60 d60 : yyArray){
25 23 if (d60.getSender().equals(user.getUserName())){ //用户名
26 24 if(d60.getData().getTxtContent().equals("切换为 下行营运")){
27   - return true;
  25 + m.put("state",true);
  26 + return m;
28 27 }
29 28 }
30 29 }
31   - return false;
  30 + m.put("state",false);
  31 + m.put("message",rtMessage.QDIR_ERROR);
  32 + return m;
32 33 }
33 34 },
34   - //手动切换车辆方向
  35 + //下发消息
35 36 xf{
36 37 @Override
37   - public boolean run(SubjectUser sur, Collection<D60> yyArray,SysUser user){
  38 + public Map run(SubjectUser sur, Collection<D60> yyArray, SysUser user){
  39 + Map m = new HashMap();
38 40 String answer = sur.getSubjectId().getAnswer();//答案
39 41 String[] t = answer.split(","); //0
40 42 for (D60 d60 : yyArray){
41 43 if (d60.getDeviceId().contains(user.getUserName()) && d60.getDeviceId().contains(t[0]) ){ //用户名
42   - return true;
  44 + m.put("state",true);
  45 + return m;
43 46 }
44 47 }
45   - return false;
  48 + m.put("state",false);
  49 + m.put("message",rtMessage.XF_ERROR);
  50 + return m;
46 51 }
47 52 },
48   - //手动切换车辆方向
  53 + //群下发消息
49 54 pxf{
50 55 @Override
51   - public boolean run(SubjectUser sur, Collection<D60> yyArray,SysUser user){
  56 + public Map run(SubjectUser sur, Collection<D60> yyArray,SysUser user){
  57 + Map m = new HashMap();
52 58 int num = 0;
53 59 for (D60 d60 : yyArray){
54 60 if (d60.getDeviceId().contains(user.getUserName())){ //用户名
55 61 num = num + 1;
56 62 }
57 63 }
58   - if (num >= 5)
59   - return true;
  64 + if (num >= 5) {
  65 + m.put("state", true);
  66 + return m;
  67 + }
60 68  
61   - return false;
  69 + m.put("state",false);
  70 + m.put("message",rtMessage.PXF_ERROR);
  71 + return m;
62 72 }
63 73 };
64 74  
65 75  
66   - public abstract boolean run(SubjectUser sur, Collection<D60> yyArray, SysUser user);
  76 + public abstract Map run(SubjectUser sur, Collection<D60> yyArray, SysUser user);
67 77 }
... ...
src/main/resources/application-dev.properties
... ... @@ -40,9 +40,9 @@ jp.date = cmd /c date
40 40 ## gps client data
41 41 http.gps.real.cache.url= http://10.10.150.24:12580/realGps/all
42 42 ## gateway real data
43   -http.gps.real.url= http://114.80.178.12:18080/transport_server/rtgps/
  43 +http.gps.real.url= http://192.168.168.237:8080/transport_server/rtgps/
44 44 ## gateway send directive
45   -http.send.directive = http://192.168.168.201:9090/transport_server/message/
  45 +http.send.directive = http://192.168.168.237:8899/transport_server/message/
46 46 ## rfid data
47 47 http.rfid.url= http://114.80.178.12:29000/rfid
48 48  
... ...