Commit 1acfd4df25464f87f6355630a5a405dab16d98a1
1 parent
9950bb66
上传时刻表添加失败提醒
Showing
1 changed file
with
52 additions
and
11 deletions
src/main/java/com/bsth/service/impl/TrafficManageServiceImpl.java
| ... | ... | @@ -945,7 +945,7 @@ public class TrafficManageServiceImpl implements TrafficManageService{ |
| 945 | 945 | */ |
| 946 | 946 | @Override |
| 947 | 947 | public String setSKB(String ids) { |
| 948 | - String result = "failure"; | |
| 948 | + String result = "上传失败,"; | |
| 949 | 949 | StringBuffer sBuffer = new StringBuffer(); |
| 950 | 950 | DecimalFormat df = new DecimalFormat("######0.000"); |
| 951 | 951 | Map<String,String> lsStationCode2NameMap = null; |
| ... | ... | @@ -965,6 +965,8 @@ public class TrafficManageServiceImpl implements TrafficManageService{ |
| 965 | 965 | sBuffer.append("<SKBs>"); |
| 966 | 966 | HashMap<String,String> paramMap; |
| 967 | 967 | HashMap<String,String> otherMap = new HashMap<>(); |
| 968 | + // 线路编码、周几执行、发车站点名称、发车站点序号、到达站点名称、到达站点序号 | |
| 969 | + String xlbm,zjzx,fczdmc,zdxh,ddzdmc,ddxh; | |
| 968 | 970 | // 得到时刻表版本号 |
| 969 | 971 | int lineVersion; |
| 970 | 972 | long ttinfoId; |
| ... | ... | @@ -996,15 +998,32 @@ public class TrafficManageServiceImpl implements TrafficManageService{ |
| 996 | 998 | // 初始化 |
| 997 | 999 | isLogStation = true; |
| 998 | 1000 | if(ttInfoDetailIterator.hasNext()){ |
| 1001 | + // 得到线路信息 | |
| 1002 | + Line line = lineRepository.findOne(ttInfo.getXl().getId()); | |
| 1003 | + if(line == null){ | |
| 1004 | + result += "未找到相应的线路信息,请设置线路信息后再上传"; | |
| 1005 | + return result; | |
| 1006 | + } | |
| 1007 | + // 得到上海市线路编码 | |
| 1008 | + xlbm = line.getShanghaiLinecode(); | |
| 1009 | + if("".equals(xlbm) || "null".equals(xlbm)){ | |
| 1010 | + result += "线路编码为空,请设置线路编码后再上传"; | |
| 1011 | + return result; | |
| 1012 | + } | |
| 1013 | + // 拿到周几执行 | |
| 1014 | + zjzx = changeRuleDay(ttInfo.getRule_days()); | |
| 1015 | + if("".equals(zjzx) || "null".equals(zjzx)){ | |
| 1016 | + result += "时刻表执行时间为空,请设置执行时间后再上传"; | |
| 1017 | + return result; | |
| 1018 | + } | |
| 999 | 1019 | sBuffer.append("<SKB>"); |
| 1000 | - sBuffer.append("<XLBM>").append(BasicData.lineId2ShangHaiCodeMap.get(ttInfo.getXl().getId())) | |
| 1001 | - .append("</XLBM>"); | |
| 1020 | + sBuffer.append("<XLBM>").append(xlbm).append("</XLBM>"); | |
| 1002 | 1021 | sBufferB = new StringBuffer(); |
| 1003 | 1022 | sBufferC = new StringBuffer(); |
| 1004 | 1023 | sBufferB.append("<KSRQ>").append(sdfnyr.format(ttInfo.getQyrq())).append("</KSRQ>"); |
| 1005 | 1024 | // 结束日期暂时不要,节假日的班次表才需要,如春节的班次表 |
| 1006 | 1025 | sBufferB.append("<JSRQ>").append("").append("</JSRQ>"); |
| 1007 | - sBufferB.append("<ZJZX>").append(changeRuleDay(ttInfo.getRule_days())).append("</ZJZX>"); | |
| 1026 | + sBufferB.append("<ZJZX>").append(zjzx).append("</ZJZX>"); | |
| 1008 | 1027 | sBufferB.append("<TBYY>").append("").append("</TBYY>"); |
| 1009 | 1028 | sBufferB.append("<UPDT>").append(sdfnyrsfm.format(new Date())).append("</UPDT>"); |
| 1010 | 1029 | sBufferB.append("<BCList>"); |
| ... | ... | @@ -1028,29 +1047,51 @@ public class TrafficManageServiceImpl implements TrafficManageService{ |
| 1028 | 1047 | if(changeTimeFormat(ttInfoDetail) == null){ |
| 1029 | 1048 | continue; |
| 1030 | 1049 | } |
| 1050 | + // 发生站点名称 | |
| 1051 | + fczdmc = lsStationCode2NameMap.get(ttInfoDetail.getXl().getLineCode()+"_"+ttInfoDetail.getXlDir()+"_"+ttInfoDetail.getQdzCode()); | |
| 1052 | + if("".equals(fczdmc) || "null".equals(fczdmc)){ | |
| 1053 | + result += "发车站点名称为空,请根据时刻表当前的版本号设置好历史站点路由再上传"; | |
| 1054 | + return result; | |
| 1055 | + } | |
| 1031 | 1056 | sBufferC.append("<BC>"); |
| 1032 | 1057 | sBufferC.append("<LPBH>").append(ttInfoDetail.getLp().getLpNo()).append("</LPBH>"); |
| 1033 | 1058 | sBufferC.append("<SXX>").append(sxx).append("</SXX>"); |
| 1034 | - sBufferC.append("<FCZDMC>").append(lsStationCode2NameMap.get(ttInfoDetail.getXl().getLineCode()+"_"+ttInfoDetail.getXlDir() | |
| 1035 | - +"_"+ttInfoDetail.getQdzCode())).append("</FCZDMC>"); | |
| 1059 | + sBufferC.append("<FCZDMC>").append(fczdmc).append("</FCZDMC>"); | |
| 1036 | 1060 | // 起点站的参数 |
| 1037 | 1061 | otherMap.put("stationMark","B"); |
| 1038 | 1062 | paramMap = packageYgcStationNumParam(ttInfoDetail,otherMap); |
| 1039 | 1063 | if(isLogStation){// 输出起点站信息 |
| 1040 | 1064 | logger.info("setSKB:"+"起点站信息:"+paramMap); |
| 1041 | 1065 | } |
| 1042 | - sBufferC.append("<ZDXH>").append(getYgcStationNumByLineCodeAndDirectionAndStationName(paramMap,lsStationName2YgcNumber)).append("</ZDXH>"); | |
| 1066 | + // 发车站点序号 | |
| 1067 | + zdxh = String.valueOf(getYgcStationNumByLineCodeAndDirectionAndStationName(paramMap,lsStationName2YgcNumber)); | |
| 1068 | + if("".equals(zdxh) || "null".equals(zdxh) || "0".equals(zdxh)){ | |
| 1069 | + result += "发车站点序号为空,请根据时刻表当前的版本号设置好历史站点路由再上传"; | |
| 1070 | + return result; | |
| 1071 | + } | |
| 1072 | + // 到达站点名称 | |
| 1073 | + ddzdmc = lsStationCode2NameMap.get(ttInfoDetail.getXl().getLineCode()+"_"+ttInfoDetail.getXlDir()+"_"+ttInfoDetail.getZdzCode()); | |
| 1074 | + if("".equals(ddzdmc) || "null".equals(ddzdmc)){ | |
| 1075 | + result += "到达站点名称为空,请根据时刻表当前的版本号设置好历史站点路由再上传"; | |
| 1076 | + return result; | |
| 1077 | + } | |
| 1078 | + sBufferC.append("<ZDXH>").append(zdxh).append("</ZDXH>"); | |
| 1043 | 1079 | sBufferC.append("<JHFCSJ>").append(changeTimeFormat(ttInfoDetail)).append("</JHFCSJ>"); |
| 1044 | - sBufferC.append("<DDZDMC>").append(lsStationCode2NameMap.get(ttInfoDetail.getXl().getLineCode()+"_"+ttInfoDetail.getXlDir() | |
| 1045 | - +"_"+ttInfoDetail.getZdzCode())).append("</DDZDMC>"); | |
| 1080 | + sBufferC.append("<DDZDMC>").append(ddzdmc).append("</DDZDMC>"); | |
| 1046 | 1081 | // 终点站的参数 |
| 1047 | 1082 | otherMap.put("stationMark","E"); |
| 1048 | 1083 | paramMap = packageYgcStationNumParam(ttInfoDetail,otherMap); |
| 1049 | 1084 | if(isLogStation){// 输出终点站信息 |
| 1050 | 1085 | logger.info("setSKB:"+"终点站信息:"+paramMap); |
| 1051 | 1086 | } |
| 1087 | + // 到达站点序号 | |
| 1088 | + ddxh = String.valueOf(getYgcStationNumByLineCodeAndDirectionAndStationName(paramMap,lsStationName2YgcNumber)); | |
| 1089 | + if("".equals(ddxh) || "null".equals(ddxh) || "0".equals(ddxh)){ | |
| 1090 | + result += "到达站点序号为空,请根据时刻表当前的版本号设置好历史站点路由再上传"; | |
| 1091 | + return result; | |
| 1092 | + } | |
| 1052 | 1093 | isLogStation = false; // 一条线路只输出一次,后面的不输出了 |
| 1053 | - sBufferC.append("<DDXH>").append(getYgcStationNumByLineCodeAndDirectionAndStationName(paramMap,lsStationName2YgcNumber)).append("</DDXH>"); | |
| 1094 | + sBufferC.append("<DDXH>").append(ddxh).append("</DDXH>"); | |
| 1054 | 1095 | sBufferC.append("<JHDDSJ>").append(calcDdsj(ttInfoDetail.getFcsj(),ttInfoDetail.getBcsj())).append("</JHDDSJ>"); |
| 1055 | 1096 | sBufferC.append("</BC>"); |
| 1056 | 1097 | // 0:上行;1:下行 |
| ... | ... | @@ -1073,7 +1114,7 @@ public class TrafficManageServiceImpl implements TrafficManageService{ |
| 1073 | 1114 | } |
| 1074 | 1115 | sBuffer.append("</SKBs>"); |
| 1075 | 1116 | if(ssop.setSKB(userNameOther, passwordOther, sBuffer.toString()).isSuccess()){ |
| 1076 | - result = "success"; | |
| 1117 | + result = "上传成功"; | |
| 1077 | 1118 | SKBUploadLogger skbUploadLogger ; |
| 1078 | 1119 | SysUser user = SecurityUtils.getCurrentUser(); |
| 1079 | 1120 | // 保存时刻表上传记录 | ... | ... |