Commit f046babbfe881ee1caaff7edbd12d1b385bbed51

Authored by youxiw2000
1 parent 7d284cfb

提交services

src/main/java/com/bsth/service/LineVersionsService.java
@@ -34,6 +34,8 @@ public interface LineVersionsService extends BaseService<LineVersions, Integer> @@ -34,6 +34,8 @@ public interface LineVersionsService extends BaseService<LineVersions, Integer>
34 34
35 LineVersions findLineVersionsMax(int lineId); 35 LineVersions findLineVersionsMax(int lineId);
36 36
  37 + List<LineVersions> findAllHistroyLineVersionsById(int lineId);
  38 +
37 // 返回当前线路版本 39 // 返回当前线路版本
38 Integer findCurrentVersion(int lineId); 40 Integer findCurrentVersion(int lineId);
39 41
@@ -41,4 +43,5 @@ public interface LineVersionsService extends BaseService&lt;LineVersions, Integer&gt; @@ -41,4 +43,5 @@ public interface LineVersionsService extends BaseService&lt;LineVersions, Integer&gt;
41 43
42 Map<String, Object> issueVersion(int id); 44 Map<String, Object> issueVersion(int id);
43 45
  46 +
44 } 47 }
src/main/java/com/bsth/service/SectionRouteService.java
@@ -68,4 +68,8 @@ public interface SectionRouteService extends BaseService&lt;SectionRoute, Integer&gt; @@ -68,4 +68,8 @@ public interface SectionRouteService extends BaseService&lt;SectionRoute, Integer&gt;
68 void batchUpdate(Integer lineId, String lineCode); 68 void batchUpdate(Integer lineId, String lineCode);
69 69
70 Map<String,Object> destroy(Integer id); 70 Map<String,Object> destroy(Integer id);
  71 +
  72 + Map<String, Object> destroyHistory(Integer id);
  73 +
  74 + Map pageLs(Map<String, Object> map);
71 } 75 }
src/main/java/com/bsth/service/StationRouteService.java
@@ -6,6 +6,9 @@ import java.util.Map; @@ -6,6 +6,9 @@ import java.util.Map;
6 6
7 import javax.servlet.http.HttpServletResponse; 7 import javax.servlet.http.HttpServletResponse;
8 8
  9 +import org.springframework.data.domain.Page;
  10 +import org.springframework.data.domain.PageRequest;
  11 +
9 import com.bsth.entity.LsStationRoute; 12 import com.bsth.entity.LsStationRoute;
10 import com.bsth.entity.StationRoute; 13 import com.bsth.entity.StationRoute;
11 import com.bsth.entity.StationRouteCache; 14 import com.bsth.entity.StationRouteCache;
@@ -135,7 +138,7 @@ public interface StationRouteService extends BaseService&lt;StationRoute, Integer&gt; @@ -135,7 +138,7 @@ public interface StationRouteService extends BaseService&lt;StationRoute, Integer&gt;
135 138
136 Map<String, Object> findByMultiLine(String lineIds); 139 Map<String, Object> findByMultiLine(String lineIds);
137 140
138 - Map<String, Object> updSwitchDir(String lineIds); 141 + Map<String, Object> updSwitchDir(String lineIds,int stauts);
139 142
140 Map<String, Object> upddis(Map<String, Object> map); 143 Map<String, Object> upddis(Map<String, Object> map);
141 144
@@ -164,4 +167,5 @@ public interface StationRouteService extends BaseService&lt;StationRoute, Integer&gt; @@ -164,4 +167,5 @@ public interface StationRouteService extends BaseService&lt;StationRoute, Integer&gt;
164 167
165 Map<String, Object> matchNearbyStation(Map<String, Object> map); 168 Map<String, Object> matchNearbyStation(Map<String, Object> map);
166 169
  170 + Map pageLs(Map<String, Object> map);
167 } 171 }
src/main/java/com/bsth/service/impl/LineVersionsServiceImpl.java
@@ -221,6 +221,12 @@ public class LineVersionsServiceImpl extends BaseServiceImpl&lt;LineVersions, Integ @@ -221,6 +221,12 @@ public class LineVersionsServiceImpl extends BaseServiceImpl&lt;LineVersions, Integ
221 public LineVersions findLineVersionsMax(int lineId) { 221 public LineVersions findLineVersionsMax(int lineId) {
222 return repository.findLineVersionsMax(lineId); 222 return repository.findLineVersionsMax(lineId);
223 } 223 }
  224 +
  225 +
  226 + @Override
  227 + public List<LineVersions> findAllHistroyLineVersionsById(int lineId){
  228 + return repository.findAllHistroyLineVersionsById(lineId);
  229 + }
224 230
225 /** 231 /**
226 * 线路版本添加 232 * 线路版本添加
@@ -250,6 +256,73 @@ public class LineVersionsServiceImpl extends BaseServiceImpl&lt;LineVersions, Integ @@ -250,6 +256,73 @@ public class LineVersionsServiceImpl extends BaseServiceImpl&lt;LineVersions, Integ
250 LineVersions upLineVersions = repository.findBylineIdAndVersions(line.getId(),versions); 256 LineVersions upLineVersions = repository.findBylineIdAndVersions(line.getId(),versions);
251 upLineVersions.setEndDate(new java.sql.Date(startDate.getTime())); 257 upLineVersions.setEndDate(new java.sql.Date(startDate.getTime()));
252 repository.save(upLineVersions); 258 repository.save(upLineVersions);
  259 +
  260 + //// 先查询待更新版本 如果有需要就删除 预留..
  261 +// List<LsSectionRoute> needDelete = lsSectionRouteRepository.findupdated(Integer.valueOf(map.get("lineId").toString()),map.get("lineCode").toString(),versions);
  262 +//
  263 +// lsSectionRouteRepository.deleteAll(needDelete);
  264 +//
  265 +// List<LsStationRoute> needDelete2 = lsStationRouteRepository.findupdated(Integer.valueOf(map.get("lineId").toString()),map.get("lineCode").toString(),versions);
  266 +//
  267 +// lsStationRouteRepository.deleteAll(needDelete2);
  268 +
  269 +
  270 + if(map.get("hisVersions") != null && !map.get("hisVersions").toString().isEmpty()) {
  271 + Integer hisVersion = Integer.valueOf(map.get("hisVersions").toString());
  272 +
  273 + List<LsSectionRoute> sectionList = lsSectionRouteRepository.findupdated(Integer.valueOf(map.get("lineId").toString()),map.get("lineCode").toString(),hisVersion);
  274 +
  275 +
  276 + for(int i =0;i<sectionList.size();i++) {
  277 + LsSectionRoute oldData = sectionList.get(i);
  278 +
  279 + LsSectionRoute newData = new LsSectionRoute();
  280 +
  281 + newData.setIsRoadeSpeed(oldData.getIsRoadeSpeed());
  282 + newData.setDescriptions(oldData.getDescriptions());
  283 + newData.setLine(oldData.getLine());
  284 + newData.setLineCode(oldData.getLineCode());
  285 + newData.setDirections(oldData.getDirections());
  286 + newData.setSection(oldData.getSection());
  287 + newData.setSectionCode(oldData.getSectionCode());
  288 + newData.setSectionrouteCode(oldData.getSectionrouteCode());
  289 + newData.setDestroy(0);
  290 + newData.setVersions(versions);
  291 +
  292 + lsSectionRouteRepository.save(newData);
  293 +
  294 + }
  295 +
  296 + List<LsStationRoute> stationList = lsStationRouteRepository.findupdated(Integer.valueOf(map.get("lineId").toString()),map.get("lineCode").toString(),hisVersion);
  297 +
  298 + for(int i =0;i<stationList.size();i++) {
  299 + LsStationRoute oldData = stationList.get(i);
  300 +
  301 + LsStationRoute newData = new LsStationRoute();
  302 +
  303 + newData.setLine(oldData.getLine());
  304 + newData.setStation(oldData.getStation());
  305 + newData.setStationName(oldData.getStationName());
  306 + newData.setStationRouteCode(oldData.getStationRouteCode());
  307 + newData.setLineCode(oldData.getLineCode());
  308 + newData.setStationCode(oldData.getStationCode());
  309 + newData.setStationMark(oldData.getStationMark());
  310 + newData.setOutStationNmber(oldData.getOutStationNmber());
  311 + newData.setDirections(oldData.getDirections());
  312 + newData.setDistances(oldData.getDistances());
  313 + newData.setToTime(oldData.getToTime());
  314 + newData.setFirstTime(oldData.getFirstTime());
  315 + newData.setEndTime(oldData.getEndTime());
  316 + newData.setEndTime(oldData.getEndTime());
  317 + newData.setDescriptions(oldData.getDescriptions());
  318 + newData.setIndustryCode(oldData.getIndustryCode());
  319 + newData.setDestroy(0);
  320 + newData.setVersions(versions);
  321 +
  322 + lsStationRouteRepository.save(newData);
  323 + }
  324 +
  325 + }
253 resultMap.put("status", ResponseCode.SUCCESS); 326 resultMap.put("status", ResponseCode.SUCCESS);
254 } catch (ParseException e) { 327 } catch (ParseException e) {
255 // TODO Auto-generated catch block 328 // TODO Auto-generated catch block
src/main/java/com/bsth/service/impl/SectionRouteServiceImpl.java
@@ -17,10 +17,12 @@ import org.springframework.web.bind.annotation.RequestParam; @@ -17,10 +17,12 @@ import org.springframework.web.bind.annotation.RequestParam;
17 17
18 import com.bsth.common.ResponseCode; 18 import com.bsth.common.ResponseCode;
19 import com.bsth.entity.Line; 19 import com.bsth.entity.Line;
  20 +import com.bsth.entity.LsSectionRoute;
20 import com.bsth.entity.Section; 21 import com.bsth.entity.Section;
21 import com.bsth.entity.SectionRoute; 22 import com.bsth.entity.SectionRoute;
22 import com.bsth.entity.search.CustomerSpecs; 23 import com.bsth.entity.search.CustomerSpecs;
23 import com.bsth.repository.LineRepository; 24 import com.bsth.repository.LineRepository;
  25 +import com.bsth.repository.LsSectionRouteRepository;
24 import com.bsth.repository.SectionRepository; 26 import com.bsth.repository.SectionRepository;
25 import com.bsth.repository.SectionRouteCacheRepository; 27 import com.bsth.repository.SectionRouteCacheRepository;
26 import com.bsth.repository.SectionRouteRepository; 28 import com.bsth.repository.SectionRouteRepository;
@@ -44,25 +46,58 @@ import com.bsth.util.GetUIDAndCode; @@ -44,25 +46,58 @@ import com.bsth.util.GetUIDAndCode;
44 */ 46 */
45 47
46 @Service 48 @Service
47 -public class SectionRouteServiceImpl extends BaseServiceImpl<SectionRoute, Integer> implements SectionRouteService{  
48 - 49 +public class SectionRouteServiceImpl extends BaseServiceImpl<SectionRoute, Integer> implements SectionRouteService {
  50 +
49 @Autowired 51 @Autowired
50 SectionRouteRepository repository; 52 SectionRouteRepository repository;
51 - 53 +
  54 + @Autowired
  55 + LsSectionRouteRepository lsSectionRouteRepository;
  56 +
52 @Autowired 57 @Autowired
53 SectionRouteCacheRepository Cacherepository; 58 SectionRouteCacheRepository Cacherepository;
54 - 59 +
55 @Autowired 60 @Autowired
56 - SectionRepository repository2;  
57 - 61 + SectionRepository repository2;
  62 +
58 @Autowired 63 @Autowired
59 LineRepository lineRepository; 64 LineRepository lineRepository;
60 - 65 +
61 @Autowired 66 @Autowired
62 - private EntityManager entityManager;  
63 - 67 + private EntityManager entityManager;
  68 +
64 @Value("${hibernate.jdbc.batch_size}") 69 @Value("${hibernate.jdbc.batch_size}")
65 - private int batchSize; 70 + private int batchSize;
  71 +
  72 + public Map pageLs(Map<String, Object> map) {
  73 +
  74 + int pageSize = 10;
  75 + int i = Integer.parseInt(map.get("page").toString());
  76 + int line = Integer.parseInt(map.get("lineCode_eq").toString());
  77 + int dir = Integer.parseInt(map.get("directions_eq").toString());
  78 + int version = Integer.parseInt(map.get("version").toString());
  79 +
  80 + int total = lsSectionRouteRepository.count(line , dir,version);
  81 +
  82 + if(total == 0) {
  83 + map.put("empty",true);
  84 + map.put("first",true);
  85 + map.put("last",true);
  86 + }
  87 + if(i == 0) {
  88 + map.put("first",true);
  89 + }
  90 + if(i == (total%pageSize == 0 ? total/pageSize : total/pageSize + 1)) {
  91 + map.put("last",true);
  92 + }
  93 + map.put("number",i*pageSize);
  94 + map.put("numberOfElements",(i+1)*pageSize);
  95 + map.put("pageSize",pageSize);
  96 + map.put("totalPages" , total%pageSize == 0 ? total/pageSize : total/pageSize + 1 );
  97 + map.put("totalElements",total);
  98 + map.put("content" , lsSectionRouteRepository.page(i*pageSize, pageSize , line , dir,version));
  99 + return map;
  100 + }
66 101
67 @Override 102 @Override
68 public Iterable<SectionRoute> list(Map<String, Object> map) { 103 public Iterable<SectionRoute> list(Map<String, Object> map) {
@@ -71,62 +106,63 @@ public class SectionRouteServiceImpl extends BaseServiceImpl&lt;SectionRoute, Integ @@ -71,62 +106,63 @@ public class SectionRouteServiceImpl extends BaseServiceImpl&lt;SectionRoute, Integ
71 orderList.add(new Sort.Order(Direction.ASC, "sectionrouteCode")); 106 orderList.add(new Sort.Order(Direction.ASC, "sectionrouteCode"));
72 return repository.findAll(new CustomerSpecs<SectionRoute>(map), new Sort(orderList)); 107 return repository.findAll(new CustomerSpecs<SectionRoute>(map), new Sort(orderList));
73 } 108 }
74 - 109 +
75 /** 110 /**
76 * @Description :TODO(查询路段信息) 111 * @Description :TODO(查询路段信息)
77 * 112 *
78 * @param map <line.id_eq:线路ID; directions_eq:方向> 113 * @param map <line.id_eq:线路ID; directions_eq:方向>
79 * 114 *
80 - * @return Map<String, Object> 115 + * @return Map<String, Object>
81 */ 116 */
82 @Override 117 @Override
83 public List<Map<String, Object>> getSectionRoute(Map<String, Object> map) { 118 public List<Map<String, Object>> getSectionRoute(Map<String, Object> map) {
84 int lineId = map.get("line.id_eq").equals("") ? 0 : Integer.parseInt(map.get("line.id_eq").toString()); 119 int lineId = map.get("line.id_eq").equals("") ? 0 : Integer.parseInt(map.get("line.id_eq").toString());
85 - int directions = map.get("directions_eq").equals("") ? 0 : Integer.parseInt(map.get("directions_eq").toString()); 120 + int directions = map.get("directions_eq").equals("") ? 0
  121 + : Integer.parseInt(map.get("directions_eq").toString());
86 List<Object[]> listObjArray = repository.getSectionRoute(lineId, directions); 122 List<Object[]> listObjArray = repository.getSectionRoute(lineId, directions);
87 - List<Map<String, Object>> resultList = new ArrayList<Map<String,Object>>();  
88 - if(listObjArray.size()>0) {  
89 - for(int i = 0 ; i<listObjArray.size() ; i++){ 123 + List<Map<String, Object>> resultList = new ArrayList<Map<String, Object>>();
  124 + if (listObjArray.size() > 0) {
  125 + for (int i = 0; i < listObjArray.size(); i++) {
90 Map<String, Object> tempM = new HashMap<String, Object>(); 126 Map<String, Object> tempM = new HashMap<String, Object>();
91 - tempM.put("sectionrouteId",listObjArray.get(i)[0]);  
92 - tempM.put("sectionrouteLine",listObjArray.get(i)[1]);  
93 - tempM.put("sectionrouteLineCode",listObjArray.get(i)[2]);  
94 - tempM.put("sectionrouteSection",listObjArray.get(i)[3]);  
95 - tempM.put("sectionrouteSectionCode",listObjArray.get(i)[4]);  
96 - tempM.put("sectionrouteCode",listObjArray.get(i)[5]);  
97 - tempM.put("sectionrouteDirections",listObjArray.get(i)[6]);  
98 - tempM.put("sectionId",listObjArray.get(i)[7]);  
99 - tempM.put("sectionCode",listObjArray.get(i)[8]);  
100 - tempM.put("sectionName",listObjArray.get(i)[9]);  
101 - tempM.put("sectionCrosesRoad",listObjArray.get(i)[10]);  
102 - tempM.put("sectionEndNode",listObjArray.get(i)[11]);  
103 - tempM.put("sectionStartNode",listObjArray.get(i)[12]);  
104 - tempM.put("sectionMiddleNode",listObjArray.get(i)[13]);  
105 - tempM.put("sectionType",listObjArray.get(i)[14]);  
106 - tempM.put("sectionCsectionVector",listObjArray.get(i)[15]);  
107 - tempM.put("sectionBsectionVector",listObjArray.get(i)[16]);  
108 - tempM.put("sectionGsectionVector",listObjArray.get(i)[17]);  
109 - tempM.put("sectionRoadCoding",listObjArray.get(i)[18]);  
110 - tempM.put("sectionDistance",listObjArray.get(i)[19]);  
111 - tempM.put("sectionTime",listObjArray.get(i)[20]);  
112 - tempM.put("sectiondbType",listObjArray.get(i)[21]);  
113 - tempM.put("sectionSpeedLimet",listObjArray.get(i)[22]);  
114 - tempM.put("destroy",listObjArray.get(i)[23]);  
115 - tempM.put("versions",listObjArray.get(i)[24]);  
116 - tempM.put("descriptions",listObjArray.get(i)[25]);  
117 - tempM.put("isRoadeSpeed",listObjArray.get(i)[26]); 127 + tempM.put("sectionrouteId", listObjArray.get(i)[0]);
  128 + tempM.put("sectionrouteLine", listObjArray.get(i)[1]);
  129 + tempM.put("sectionrouteLineCode", listObjArray.get(i)[2]);
  130 + tempM.put("sectionrouteSection", listObjArray.get(i)[3]);
  131 + tempM.put("sectionrouteSectionCode", listObjArray.get(i)[4]);
  132 + tempM.put("sectionrouteCode", listObjArray.get(i)[5]);
  133 + tempM.put("sectionrouteDirections", listObjArray.get(i)[6]);
  134 + tempM.put("sectionId", listObjArray.get(i)[7]);
  135 + tempM.put("sectionCode", listObjArray.get(i)[8]);
  136 + tempM.put("sectionName", listObjArray.get(i)[9]);
  137 + tempM.put("sectionCrosesRoad", listObjArray.get(i)[10]);
  138 + tempM.put("sectionEndNode", listObjArray.get(i)[11]);
  139 + tempM.put("sectionStartNode", listObjArray.get(i)[12]);
  140 + tempM.put("sectionMiddleNode", listObjArray.get(i)[13]);
  141 + tempM.put("sectionType", listObjArray.get(i)[14]);
  142 + tempM.put("sectionCsectionVector", listObjArray.get(i)[15]);
  143 + tempM.put("sectionBsectionVector", listObjArray.get(i)[16]);
  144 + tempM.put("sectionGsectionVector", listObjArray.get(i)[17]);
  145 + tempM.put("sectionRoadCoding", listObjArray.get(i)[18]);
  146 + tempM.put("sectionDistance", listObjArray.get(i)[19]);
  147 + tempM.put("sectionTime", listObjArray.get(i)[20]);
  148 + tempM.put("sectiondbType", listObjArray.get(i)[21]);
  149 + tempM.put("sectionSpeedLimet", listObjArray.get(i)[22]);
  150 + tempM.put("destroy", listObjArray.get(i)[23]);
  151 + tempM.put("versions", listObjArray.get(i)[24]);
  152 + tempM.put("descriptions", listObjArray.get(i)[25]);
  153 + tempM.put("isRoadeSpeed", listObjArray.get(i)[26]);
118 resultList.add(tempM); 154 resultList.add(tempM);
119 } 155 }
120 } 156 }
121 return resultList; 157 return resultList;
122 } 158 }
123 - 159 +
124 /** 160 /**
125 * @Description :TODO(查询缓存路段信息) 161 * @Description :TODO(查询缓存路段信息)
126 * 162 *
127 * @param map <line.id_eq:线路ID; directions_eq:方向> 163 * @param map <line.id_eq:线路ID; directions_eq:方向>
128 * 164 *
129 - * @return Map<String, Object> 165 + * @return Map<String, Object>
130 */ 166 */
131 @Transactional 167 @Transactional
132 @Override 168 @Override
@@ -134,48 +170,47 @@ public class SectionRouteServiceImpl extends BaseServiceImpl&lt;SectionRoute, Integ @@ -134,48 +170,47 @@ public class SectionRouteServiceImpl extends BaseServiceImpl&lt;SectionRoute, Integ
134 int lineId = map.get("lineId").equals("") ? 0 : Integer.parseInt(map.get("lineId").toString()); 170 int lineId = map.get("lineId").equals("") ? 0 : Integer.parseInt(map.get("lineId").toString());
135 int directions = map.get("dir").equals("") ? 0 : Integer.parseInt(map.get("dir").toString()); 171 int directions = map.get("dir").equals("") ? 0 : Integer.parseInt(map.get("dir").toString());
136 List<Object[]> listObjArray = Cacherepository.getSectionRouteCache(lineId, directions); 172 List<Object[]> listObjArray = Cacherepository.getSectionRouteCache(lineId, directions);
137 - List<Map<String, Object>> resultList = new ArrayList<Map<String,Object>>();  
138 - if(listObjArray.size()>0) {  
139 - for(int i = 0 ; i<listObjArray.size() ; i++){ 173 + List<Map<String, Object>> resultList = new ArrayList<Map<String, Object>>();
  174 + if (listObjArray.size() > 0) {
  175 + for (int i = 0; i < listObjArray.size(); i++) {
140 Map<String, Object> tempM = new HashMap<String, Object>(); 176 Map<String, Object> tempM = new HashMap<String, Object>();
141 - tempM.put("sectionrouteId",listObjArray.get(i)[0]);  
142 - tempM.put("sectionrouteLine",listObjArray.get(i)[1]);  
143 - tempM.put("sectionrouteLineCode",listObjArray.get(i)[2]);  
144 - tempM.put("sectionrouteSection",listObjArray.get(i)[3]);  
145 - tempM.put("sectionrouteSectionCode",listObjArray.get(i)[4]);  
146 - tempM.put("sectionrouteCode",listObjArray.get(i)[5]);  
147 - tempM.put("sectionrouteDirections",listObjArray.get(i)[6]);  
148 - tempM.put("sectionId",listObjArray.get(i)[7]);  
149 - tempM.put("sectionCode",listObjArray.get(i)[8]);  
150 - tempM.put("sectionName",listObjArray.get(i)[9]);  
151 - tempM.put("sectionCrosesRoad",listObjArray.get(i)[10]);  
152 - tempM.put("sectionEndNode",listObjArray.get(i)[11]);  
153 - tempM.put("sectionStartNode",listObjArray.get(i)[12]);  
154 - tempM.put("sectionMiddleNode",listObjArray.get(i)[13]);  
155 - tempM.put("sectionType",listObjArray.get(i)[14]);  
156 - tempM.put("sectionCsectionVector",listObjArray.get(i)[15]);  
157 - tempM.put("sectionBsectionVector",listObjArray.get(i)[16]);  
158 - tempM.put("sectionGsectionVector",listObjArray.get(i)[17]);  
159 - tempM.put("sectionRoadCoding",listObjArray.get(i)[18]);  
160 - tempM.put("sectionDistance",listObjArray.get(i)[19]);  
161 - tempM.put("sectionTime",listObjArray.get(i)[20]);  
162 - tempM.put("sectiondbType",listObjArray.get(i)[21]);  
163 - tempM.put("sectionSpeedLimet",listObjArray.get(i)[22]);  
164 - tempM.put("destroy",listObjArray.get(i)[23]);  
165 - tempM.put("versions",listObjArray.get(i)[24]);  
166 - tempM.put("descriptions",listObjArray.get(i)[25]);  
167 - tempM.put("isRoadeSpeed",listObjArray.get(i)[26]); 177 + tempM.put("sectionrouteId", listObjArray.get(i)[0]);
  178 + tempM.put("sectionrouteLine", listObjArray.get(i)[1]);
  179 + tempM.put("sectionrouteLineCode", listObjArray.get(i)[2]);
  180 + tempM.put("sectionrouteSection", listObjArray.get(i)[3]);
  181 + tempM.put("sectionrouteSectionCode", listObjArray.get(i)[4]);
  182 + tempM.put("sectionrouteCode", listObjArray.get(i)[5]);
  183 + tempM.put("sectionrouteDirections", listObjArray.get(i)[6]);
  184 + tempM.put("sectionId", listObjArray.get(i)[7]);
  185 + tempM.put("sectionCode", listObjArray.get(i)[8]);
  186 + tempM.put("sectionName", listObjArray.get(i)[9]);
  187 + tempM.put("sectionCrosesRoad", listObjArray.get(i)[10]);
  188 + tempM.put("sectionEndNode", listObjArray.get(i)[11]);
  189 + tempM.put("sectionStartNode", listObjArray.get(i)[12]);
  190 + tempM.put("sectionMiddleNode", listObjArray.get(i)[13]);
  191 + tempM.put("sectionType", listObjArray.get(i)[14]);
  192 + tempM.put("sectionCsectionVector", listObjArray.get(i)[15]);
  193 + tempM.put("sectionBsectionVector", listObjArray.get(i)[16]);
  194 + tempM.put("sectionGsectionVector", listObjArray.get(i)[17]);
  195 + tempM.put("sectionRoadCoding", listObjArray.get(i)[18]);
  196 + tempM.put("sectionDistance", listObjArray.get(i)[19]);
  197 + tempM.put("sectionTime", listObjArray.get(i)[20]);
  198 + tempM.put("sectiondbType", listObjArray.get(i)[21]);
  199 + tempM.put("sectionSpeedLimet", listObjArray.get(i)[22]);
  200 + tempM.put("destroy", listObjArray.get(i)[23]);
  201 + tempM.put("versions", listObjArray.get(i)[24]);
  202 + tempM.put("descriptions", listObjArray.get(i)[25]);
  203 + tempM.put("isRoadeSpeed", listObjArray.get(i)[26]);
168 resultList.add(tempM); 204 resultList.add(tempM);
169 } 205 }
170 } 206 }
171 return resultList; 207 return resultList;
172 } 208 }
173 -  
174 - 209 +
175 /** 210 /**
176 * @Description : TODO(根据路段路由Id查询详情) 211 * @Description : TODO(根据路段路由Id查询详情)
177 * 212 *
178 - * @param map <id:路段路由ID> 213 + * @param map <id:路段路由ID>
179 * 214 *
180 * @return List<Map<String, Object>> 215 * @return List<Map<String, Object>>
181 */ 216 */
@@ -183,113 +218,113 @@ public class SectionRouteServiceImpl extends BaseServiceImpl&lt;SectionRoute, Integ @@ -183,113 +218,113 @@ public class SectionRouteServiceImpl extends BaseServiceImpl&lt;SectionRoute, Integ
183 public List<Map<String, Object>> findSectionRouteInfoFormId(Map<String, Object> map) { 218 public List<Map<String, Object>> findSectionRouteInfoFormId(Map<String, Object> map) {
184 219
185 // 获取线路ID 220 // 获取线路ID
186 - Integer id = map.get("id").equals("") ? 0 : Integer.parseInt(map.get("id").toString());  
187 -  
188 - List<Object[]> objects = repository.findSectionRouteInfoFormId(id);  
189 -  
190 - List<Map<String, Object>> resultList = new ArrayList<Map<String,Object>>();  
191 -  
192 - int len = objects.size();  
193 -  
194 - if(objects.size()>0) {  
195 -  
196 - for(int i = 0 ; i < len; i++) {  
197 - Map<String, Object> tempM = new HashMap<String,Object>();  
198 -  
199 - tempM.put("sectionRouteId", objects.get(i)[0]);  
200 -  
201 - tempM.put("sectionRouteLineCode", objects.get(i)[1]);  
202 -  
203 - tempM.put("sectionRouteCode", objects.get(i)[2]);  
204 -  
205 - tempM.put("sectionRouteDirections", objects.get(i)[3]);  
206 -  
207 - tempM.put("sectionRouteLine", objects.get(i)[4]);  
208 -  
209 - tempM.put("sectionRouteSection", objects.get(i)[5]);  
210 -  
211 - tempM.put("sectionRouteDescriptions", objects.get(i)[6]);  
212 -  
213 - tempM.put("sectionRouteCreateBy", objects.get(i)[7]);  
214 -  
215 - tempM.put("sectionRouteCreateDate", objects.get(i)[8]);  
216 -  
217 - tempM.put("sectionRouteUpdateBy", objects.get(i)[9]);  
218 -  
219 - tempM.put("sectionRouteUpdateDate", objects.get(i)[10]);  
220 -  
221 - tempM.put("sectionRouteVersions", objects.get(i)[11]);  
222 -  
223 - tempM.put("sectionRouteDestroy", objects.get(i)[12]);  
224 -  
225 - tempM.put("sectionId", objects.get(i)[13]);  
226 -  
227 - tempM.put("sectionCode", objects.get(i)[14]);  
228 -  
229 - tempM.put("sectionName", objects.get(i)[15]);  
230 -  
231 - tempM.put("sectionRoadCoding", objects.get(i)[16]);  
232 -  
233 - tempM.put("sectionEndCode", objects.get(i)[17]);  
234 -  
235 - tempM.put("sectionStartNode", objects.get(i)[18]);  
236 -  
237 - tempM.put("sectionMiddleNode", objects.get(i)[19]);  
238 -  
239 - tempM.put("sectionType", objects.get(i)[20]);  
240 -  
241 - tempM.put("sectionCsectionVector", objects.get(i)[21]);  
242 -  
243 - tempM.put("sectionBsectionVector", objects.get(i)[22]);  
244 -  
245 - tempM.put("sectionGsectionVector", objects.get(i)[23]);  
246 -  
247 - tempM.put("sectionDistance", objects.get(i)[24]);  
248 -  
249 - tempM.put("sectionTime", objects.get(i)[25]);  
250 -  
251 - tempM.put("sectionDbtype", objects.get(i)[26]);  
252 -  
253 - tempM.put("sectionSpeedLimit", objects.get(i)[27]);  
254 -  
255 - tempM.put("sectionDescriptions", objects.get(i)[28]);  
256 -  
257 - tempM.put("sectionCreateBy", objects.get(i)[29]);  
258 -  
259 - tempM.put("sectionCreateDate", objects.get(i)[30]);  
260 -  
261 - tempM.put("sectionUpdateBy", objects.get(i)[31]);  
262 -  
263 - tempM.put("sectionUpdateDate", objects.get(i)[32]);  
264 -  
265 - tempM.put("sectionVersion", objects.get(i)[33]);  
266 -  
267 - tempM.put("isRoadeSpeed", objects.get(i)[34]);  
268 - resultList.add(tempM);  
269 - }  
270 -  
271 - }  
272 - 221 + Integer id = map.get("id").equals("") ? 0 : Integer.parseInt(map.get("id").toString());
  222 +
  223 + List<Object[]> objects = lsSectionRouteRepository.findSectionRouteInfoFormId(id);
  224 +
  225 + List<Map<String, Object>> resultList = new ArrayList<Map<String, Object>>();
  226 +
  227 + int len = objects.size();
  228 +
  229 + if (objects.size() > 0) {
  230 +
  231 + for (int i = 0; i < len; i++) {
  232 + Map<String, Object> tempM = new HashMap<String, Object>();
  233 +
  234 + tempM.put("sectionRouteId", objects.get(i)[0]);
  235 +
  236 + tempM.put("sectionRouteLineCode", objects.get(i)[1]);
  237 +
  238 + tempM.put("sectionRouteCode", objects.get(i)[2]);
  239 +
  240 + tempM.put("sectionRouteDirections", objects.get(i)[3]);
  241 +
  242 + tempM.put("sectionRouteLine", objects.get(i)[4]);
  243 +
  244 + tempM.put("sectionRouteSection", objects.get(i)[5]);
  245 +
  246 + tempM.put("sectionRouteDescriptions", objects.get(i)[6]);
  247 +
  248 + tempM.put("sectionRouteCreateBy", objects.get(i)[7]);
  249 +
  250 + tempM.put("sectionRouteCreateDate", objects.get(i)[8]);
  251 +
  252 + tempM.put("sectionRouteUpdateBy", objects.get(i)[9]);
  253 +
  254 + tempM.put("sectionRouteUpdateDate", objects.get(i)[10]);
  255 +
  256 + tempM.put("sectionRouteVersions", objects.get(i)[11]);
  257 +
  258 + tempM.put("sectionRouteDestroy", objects.get(i)[12]);
  259 +
  260 + tempM.put("sectionId", objects.get(i)[13]);
  261 +
  262 + tempM.put("sectionCode", objects.get(i)[14]);
  263 +
  264 + tempM.put("sectionName", objects.get(i)[15]);
  265 +
  266 + tempM.put("sectionRoadCoding", objects.get(i)[16]);
  267 +
  268 + tempM.put("sectionEndCode", objects.get(i)[17]);
  269 +
  270 + tempM.put("sectionStartNode", objects.get(i)[18]);
  271 +
  272 + tempM.put("sectionMiddleNode", objects.get(i)[19]);
  273 +
  274 + tempM.put("sectionType", objects.get(i)[20]);
  275 +
  276 + tempM.put("sectionCsectionVector", objects.get(i)[21]);
  277 +
  278 + tempM.put("sectionBsectionVector", objects.get(i)[22]);
  279 +
  280 + tempM.put("sectionGsectionVector", objects.get(i)[23]);
  281 +
  282 + tempM.put("sectionDistance", objects.get(i)[24]);
  283 +
  284 + tempM.put("sectionTime", objects.get(i)[25]);
  285 +
  286 + tempM.put("sectionDbtype", objects.get(i)[26]);
  287 +
  288 + tempM.put("sectionSpeedLimit", objects.get(i)[27]);
  289 +
  290 + tempM.put("sectionDescriptions", objects.get(i)[28]);
  291 +
  292 + tempM.put("sectionCreateBy", objects.get(i)[29]);
  293 +
  294 + tempM.put("sectionCreateDate", objects.get(i)[30]);
  295 +
  296 + tempM.put("sectionUpdateBy", objects.get(i)[31]);
  297 +
  298 + tempM.put("sectionUpdateDate", objects.get(i)[32]);
  299 +
  300 + tempM.put("sectionVersion", objects.get(i)[33]);
  301 +
  302 + tempM.put("isRoadeSpeed", objects.get(i)[34]);
  303 + resultList.add(tempM);
  304 + }
  305 +
  306 + }
  307 +
273 return resultList; 308 return resultList;
274 } 309 }
275 -  
276 - 310 +
277 /** 311 /**
278 * @Description :TODO(查询线路某方向下的上一个路段序号) 312 * @Description :TODO(查询线路某方向下的上一个路段序号)
279 * 313 *
280 * @param map <lineId:线路ID; direction:方向;sectionRouteCode:路段编码> 314 * @param map <lineId:线路ID; direction:方向;sectionRouteCode:路段编码>
281 * 315 *
282 - * @return List<Map<String, Object>> 316 + * @return List<Map<String, Object>>
283 */ 317 */
284 @Override 318 @Override
285 public List<Map<String, Object>> findUpSectionRouteCode(Map<String, Object> map) { 319 public List<Map<String, Object>> findUpSectionRouteCode(Map<String, Object> map) {
286 Integer lineId = map.get("lineId").equals("") ? null : Integer.parseInt(map.get("lineId").toString()); 320 Integer lineId = map.get("lineId").equals("") ? null : Integer.parseInt(map.get("lineId").toString());
287 Integer direction = map.get("direction").equals("") ? null : Integer.parseInt(map.get("direction").toString()); 321 Integer direction = map.get("direction").equals("") ? null : Integer.parseInt(map.get("direction").toString());
288 - Integer stationRouteCode = map.get("sectionRouteCode").equals("") ? null : Integer.parseInt(map.get("sectionRouteCode").toString()); 322 + Integer stationRouteCode = map.get("sectionRouteCode").equals("") ? null
  323 + : Integer.parseInt(map.get("sectionRouteCode").toString());
289 List<Object[]> reslutList = repository.findUpSectionRouteCode(lineId, direction, stationRouteCode); 324 List<Object[]> reslutList = repository.findUpSectionRouteCode(lineId, direction, stationRouteCode);
290 - List<Map<String, Object>> list = new ArrayList<Map<String,Object>>();  
291 - if(reslutList.get(0)!=null) {  
292 - for(int i = 0 ; i <reslutList.size() ;i++){ 325 + List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
  326 + if (reslutList.get(0) != null) {
  327 + for (int i = 0; i < reslutList.size(); i++) {
293 Map<String, Object> tempM = new HashMap<String, Object>(); 328 Map<String, Object> tempM = new HashMap<String, Object>();
294 tempM.put("sectionrouteCode", reslutList.get(i)); 329 tempM.put("sectionrouteCode", reslutList.get(i));
295 list.add(tempM); 330 list.add(tempM);
@@ -297,16 +332,17 @@ public class SectionRouteServiceImpl extends BaseServiceImpl&lt;SectionRoute, Integ @@ -297,16 +332,17 @@ public class SectionRouteServiceImpl extends BaseServiceImpl&lt;SectionRoute, Integ
297 } 332 }
298 return list; 333 return list;
299 } 334 }
300 - 335 +
301 @Override 336 @Override
302 public List<Map<String, Object>> findCacheUpSectionRouteCode(Map<String, Object> map) { 337 public List<Map<String, Object>> findCacheUpSectionRouteCode(Map<String, Object> map) {
303 Integer lineId = map.get("lineId").equals("") ? null : Integer.parseInt(map.get("lineId").toString()); 338 Integer lineId = map.get("lineId").equals("") ? null : Integer.parseInt(map.get("lineId").toString());
304 Integer direction = map.get("direction").equals("") ? null : Integer.parseInt(map.get("direction").toString()); 339 Integer direction = map.get("direction").equals("") ? null : Integer.parseInt(map.get("direction").toString());
305 - Integer stationRouteCode = map.get("sectionRouteCode").equals("") ? null : Integer.parseInt(map.get("sectionRouteCode").toString()); 340 + Integer stationRouteCode = map.get("sectionRouteCode").equals("") ? null
  341 + : Integer.parseInt(map.get("sectionRouteCode").toString());
306 List<Object[]> reslutList = Cacherepository.findCacheUpSectionRouteCode(lineId, direction, stationRouteCode); 342 List<Object[]> reslutList = Cacherepository.findCacheUpSectionRouteCode(lineId, direction, stationRouteCode);
307 - List<Map<String, Object>> list = new ArrayList<Map<String,Object>>();  
308 - if(reslutList.get(0)!=null) {  
309 - for(int i = 0 ; i <reslutList.size() ;i++){ 343 + List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
  344 + if (reslutList.get(0) != null) {
  345 + for (int i = 0; i < reslutList.size(); i++) {
310 Map<String, Object> tempM = new HashMap<String, Object>(); 346 Map<String, Object> tempM = new HashMap<String, Object>();
311 tempM.put("sectionrouteCode", reslutList.get(i)); 347 tempM.put("sectionrouteCode", reslutList.get(i));
312 list.add(tempM); 348 list.add(tempM);
@@ -319,57 +355,121 @@ public class SectionRouteServiceImpl extends BaseServiceImpl&lt;SectionRoute, Integ @@ -319,57 +355,121 @@ public class SectionRouteServiceImpl extends BaseServiceImpl&lt;SectionRoute, Integ
319 public Map<String, Object> quoteSection(Map<String, Object> map) { 355 public Map<String, Object> quoteSection(Map<String, Object> map) {
320 Map<String, Object> resultMap = new HashMap<String, Object>(); 356 Map<String, Object> resultMap = new HashMap<String, Object>();
321 try { 357 try {
322 - Integer line = map.get("lineId") ==null ? null : Integer.parseInt(map.get("lineId").toString());  
323 - Integer dir = map.get("dir")==null ? null : Integer.parseInt(map.get("dir").toString());  
324 - Integer toDir = map.get("toDir")==null ? null : Integer.parseInt(map.get("toDir").toString());  
325 - if(line!=null && dir!=null) {  
326 - List<Object[]> list = repository.getSectionRoute(line, dir);  
327 - int src = repository.sectionRouteCodeMaxId();  
328 - for(int i = 0 ; i<list.size() ; i++) {  
329 - /*int sectionId = Integer.parseInt(String.valueOf(repository2.sectionMaxId())) + 1 ;*/  
330 - long sectionMaxId = GetUIDAndCode.getSectionId();  
331 - String sectionCode = String.valueOf(sectionMaxId);  
332 - int sectionId = (int)sectionMaxId;  
333 - String sectionName = list.get(i)[9] == null ? null : list.get(i)[9].toString();  
334 - String crosesRoad = list.get(i)[10] == null ? null : list.get(i)[10].toString();  
335 - String endNode = list.get(i)[11] == null ? null : list.get(i)[11].toString();  
336 - String startNode = list.get(i)[12] == null ? null : list.get(i)[12].toString();  
337 - String middleNode = list.get(i)[13] == null ? null : list.get(i)[13].toString();  
338 - String sectionType = list.get(i)[14] == null ? null : list.get(i)[14].toString();  
339 - String csectionVector = list.get(i)[15] == null ? null : list.get(i)[15].toString();  
340 - String bsectionVector = list.get(i)[16] == null ? null : list.get(i)[16].toString();  
341 - String gsectionVector = list.get(i)[17] == null ? null : list.get(i)[17].toString();  
342 - String roadCoding = list.get(i)[18] == null ? null : list.get(i)[18].toString();  
343 - Double sectionDistance = list.get(i)[19] == null ? null : Double.parseDouble(list.get(i)[19].toString());  
344 - Double sectionTime = list.get(i)[20] == null ? null : Double.parseDouble(list.get(i)[20].toString());  
345 - String dbType = list.get(i)[21] == null ? null : list.get(i)[21].toString();  
346 - Double speedLimit = list.get(i)[22] == null ? null : Double.parseDouble(list.get(i)[22].toString());  
347 - Integer destroy = list.get(i)[23] == null ? null : Integer.parseInt(list.get(i)[23].toString());  
348 - Integer versions = list.get(i)[24] == null ? null : Integer.parseInt(list.get(i)[24].toString());  
349 - String descriptions = list.get(i)[25] == null ? null : list.get(i)[25].toString();  
350 - repository2.systemSave(sectionCode,  
351 - sectionName, crosesRoad, endNode, startNode, middleNode,  
352 - gsectionVector, bsectionVector,  
353 - sectionType, csectionVector, roadCoding,  
354 - sectionDistance, sectionTime, dbType, speedLimit, descriptions, versions, sectionId);  
355 - // int sectionRouteId = Integer.parseInt(String.valueOf(repository.sectionRouteMaxId())) + 1 ;  
356 - SectionRoute sr = new SectionRoute();  
357 - Line lineObject = lineRepository.findById(line).get();  
358 - Section section = repository2.findById(sectionId).get();  
359 - Integer xh = (src == 0 ? (toDir ==1? (list.size()-i)*10 : (list.size()+i)*10) : toDir==1? (src + (list.size()-i)*10) : (src + (list.size()+i)*10)) ;  
360 - // sr.setId(sectionRouteId);  
361 - sr.setSectionrouteCode(xh);  
362 - sr.setLineCode(lineObject.getLineCode());  
363 - sr.setSectionCode(sectionCode);  
364 - sr.setDirections(toDir);  
365 - sr.setVersions(versions);  
366 - sr.setDestroy(destroy);  
367 - sr.setLine(lineObject);  
368 - sr.setSection(section);  
369 - sr.setSectionCode(section.getSectionCode());  
370 - sr.setDescriptions(descriptions);  
371 - sr.setIsRoadeSpeed(1);  
372 - repository.save(sr); 358 + Integer line = map.get("lineId") == null ? null : Integer.parseInt(map.get("lineId").toString());
  359 + Integer dir = map.get("dir") == null ? null : Integer.parseInt(map.get("dir").toString());
  360 + Integer toDir = map.get("toDir") == null ? null : Integer.parseInt(map.get("toDir").toString());
  361 + Integer status = map.get("status") == null ? null : Integer.parseInt(map.get("status").toString());
  362 + if (line != null && dir != null) {
  363 + if (status == null || status == 1) {
  364 + List<Object[]> list = repository.getSectionRoute(line, dir);
  365 + int src = repository.sectionRouteCodeMaxId();
  366 + for (int i = 0; i < list.size(); i++) {
  367 + /*
  368 + * int sectionId = Integer.parseInt(String.valueOf(repository2.sectionMaxId()))
  369 + * + 1 ;
  370 + */
  371 + long sectionMaxId = GetUIDAndCode.getSectionId();
  372 + String sectionCode = String.valueOf(sectionMaxId);
  373 + int sectionId = (int) sectionMaxId;
  374 + String sectionName = list.get(i)[9] == null ? null : list.get(i)[9].toString();
  375 + String crosesRoad = list.get(i)[10] == null ? null : list.get(i)[10].toString();
  376 + String endNode = list.get(i)[11] == null ? null : list.get(i)[11].toString();
  377 + String startNode = list.get(i)[12] == null ? null : list.get(i)[12].toString();
  378 + String middleNode = list.get(i)[13] == null ? null : list.get(i)[13].toString();
  379 + String sectionType = list.get(i)[14] == null ? null : list.get(i)[14].toString();
  380 + String csectionVector = list.get(i)[15] == null ? null : list.get(i)[15].toString();
  381 + String bsectionVector = list.get(i)[16] == null ? null : list.get(i)[16].toString();
  382 + String gsectionVector = list.get(i)[17] == null ? null : list.get(i)[17].toString();
  383 + String roadCoding = list.get(i)[18] == null ? null : list.get(i)[18].toString();
  384 + Double sectionDistance = list.get(i)[19] == null ? null
  385 + : Double.parseDouble(list.get(i)[19].toString());
  386 + Double sectionTime = list.get(i)[20] == null ? null
  387 + : Double.parseDouble(list.get(i)[20].toString());
  388 + String dbType = list.get(i)[21] == null ? null : list.get(i)[21].toString();
  389 + Double speedLimit = list.get(i)[22] == null ? null
  390 + : Double.parseDouble(list.get(i)[22].toString());
  391 + Integer destroy = list.get(i)[23] == null ? null : Integer.parseInt(list.get(i)[23].toString());
  392 + Integer versions = list.get(i)[24] == null ? null
  393 + : Integer.parseInt(list.get(i)[24].toString());
  394 + String descriptions = list.get(i)[25] == null ? null : list.get(i)[25].toString();
  395 + repository2.systemSave(sectionCode, sectionName, crosesRoad, endNode, startNode, middleNode,
  396 + gsectionVector, bsectionVector, sectionType, csectionVector, roadCoding,
  397 + sectionDistance, sectionTime, dbType, speedLimit, descriptions, versions, sectionId);
  398 + int sectionRouteId = Integer.parseInt(String.valueOf(repository.sectionRouteMaxId())) + 1 ;
  399 + SectionRoute sr = new SectionRoute();
  400 + Line lineObject = lineRepository.findById(line).get();
  401 + Section section = repository2.findById(sectionId).get();
  402 + Integer xh = (src == 0 ? (toDir == 1 ? (list.size() - i) * 10 : (list.size() + i) * 10)
  403 + : toDir == 1 ? (src + (list.size() - i) * 10) : (src + (list.size() + i) * 10));
  404 + sr.setId(sectionRouteId);
  405 + sr.setSectionrouteCode(xh);
  406 + sr.setLineCode(lineObject.getLineCode());
  407 + sr.setSectionCode(sectionCode);
  408 + sr.setDirections(toDir);
  409 + sr.setVersions(versions);
  410 + sr.setDestroy(destroy);
  411 + sr.setLine(lineObject);
  412 + sr.setSection(section);
  413 + sr.setSectionCode(section.getSectionCode());
  414 + sr.setDescriptions(descriptions);
  415 + sr.setIsRoadeSpeed(1);
  416 + repository.save(sr);
  417 + }
  418 + } else if (status == 2) {
  419 + List<Object[]> list = lsSectionRouteRepository.getSectionRoute(line, dir);
  420 + int src = lsSectionRouteRepository.sectionRouteCodeMaxId();
  421 + for (int i = 0; i < list.size(); i++) {
  422 + /*
  423 + * int sectionId = Integer.parseInt(String.valueOf(repository2.sectionMaxId()))
  424 + * + 1 ;
  425 + */
  426 + long sectionMaxId = GetUIDAndCode.getSectionId();
  427 + String sectionCode = String.valueOf(sectionMaxId);
  428 + int sectionId = (int) sectionMaxId;
  429 + String sectionName = list.get(i)[9] == null ? null : list.get(i)[9].toString();
  430 + String crosesRoad = list.get(i)[10] == null ? null : list.get(i)[10].toString();
  431 + String endNode = list.get(i)[11] == null ? null : list.get(i)[11].toString();
  432 + String startNode = list.get(i)[12] == null ? null : list.get(i)[12].toString();
  433 + String middleNode = list.get(i)[13] == null ? null : list.get(i)[13].toString();
  434 + String sectionType = list.get(i)[14] == null ? null : list.get(i)[14].toString();
  435 + String csectionVector = list.get(i)[15] == null ? null : list.get(i)[15].toString();
  436 + String bsectionVector = list.get(i)[16] == null ? null : list.get(i)[16].toString();
  437 + String gsectionVector = list.get(i)[17] == null ? null : list.get(i)[17].toString();
  438 + String roadCoding = list.get(i)[18] == null ? null : list.get(i)[18].toString();
  439 + Double sectionDistance = list.get(i)[19] == null ? null
  440 + : Double.parseDouble(list.get(i)[19].toString());
  441 + Double sectionTime = list.get(i)[20] == null ? null
  442 + : Double.parseDouble(list.get(i)[20].toString());
  443 + String dbType = list.get(i)[21] == null ? null : list.get(i)[21].toString();
  444 + Double speedLimit = list.get(i)[22] == null ? null
  445 + : Double.parseDouble(list.get(i)[22].toString());
  446 + Integer destroy = list.get(i)[23] == null ? null : Integer.parseInt(list.get(i)[23].toString());
  447 + Integer versions = list.get(i)[24] == null ? null
  448 + : Integer.parseInt(list.get(i)[24].toString());
  449 + String descriptions = list.get(i)[25] == null ? null : list.get(i)[25].toString();
  450 + repository2.systemSave(sectionCode, sectionName, crosesRoad, endNode, startNode, middleNode,
  451 + gsectionVector, bsectionVector, sectionType, csectionVector, roadCoding,
  452 + sectionDistance, sectionTime, dbType, speedLimit, descriptions, versions, sectionId);
  453 + int sectionRouteId = Integer.parseInt(String.valueOf(repository.sectionRouteMaxId())) + 1 ;
  454 + LsSectionRoute sr = new LsSectionRoute();
  455 + Line lineObject = lineRepository.findById(line).get();
  456 + Section section = repository2.findById(sectionId).get();
  457 + Integer xh = (src == 0 ? (toDir == 1 ? (list.size() - i) * 10 : (list.size() + i) * 10)
  458 + : toDir == 1 ? (src + (list.size() - i) * 10) : (src + (list.size() + i) * 10));
  459 + sr.setId(sectionRouteId);
  460 + sr.setSectionrouteCode(xh);
  461 + sr.setLineCode(lineObject.getLineCode());
  462 + sr.setSectionCode(sectionCode);
  463 + sr.setDirections(toDir);
  464 + sr.setVersions(versions);
  465 + sr.setDestroy(destroy);
  466 + sr.setLine(lineObject);
  467 + sr.setSection(section);
  468 + sr.setSectionCode(section.getSectionCode());
  469 + sr.setDescriptions(descriptions);
  470 + sr.setIsRoadeSpeed(1);
  471 + lsSectionRouteRepository.save(sr);
  472 + }
373 } 473 }
374 } 474 }
375 resultMap.put("status", ResponseCode.SUCCESS); 475 resultMap.put("status", ResponseCode.SUCCESS);
@@ -379,22 +479,27 @@ public class SectionRouteServiceImpl extends BaseServiceImpl&lt;SectionRoute, Integ @@ -379,22 +479,27 @@ public class SectionRouteServiceImpl extends BaseServiceImpl&lt;SectionRoute, Integ
379 } 479 }
380 return resultMap; 480 return resultMap;
381 } 481 }
382 - 482 +
383 /** 483 /**
384 * @Description : TODO(根据路段路由Id批量撤销路段) 484 * @Description : TODO(根据路段路由Id批量撤销路段)
385 * 485 *
386 - * @param map <id:路段路由ID> 486 + * @param map <id:路段路由ID>
387 */ 487 */
388 @Override 488 @Override
389 @Transactional 489 @Transactional
390 public Map<String, Object> updateSectionRouteInfoFormId(Map<String, Object> map) { 490 public Map<String, Object> updateSectionRouteInfoFormId(Map<String, Object> map) {
391 Map<String, Object> resultMap = new HashMap<String, Object>(); 491 Map<String, Object> resultMap = new HashMap<String, Object>();
392 try { 492 try {
393 - //int i = 0;  
394 - String[] idsStr = map.get("ids").toString().split(",") ;  
395 - for (String id : idsStr) {  
396 - repository.sectionRouteIsDestroyUpdBatch(Integer.parseInt(id));  
397 - } 493 + // int i = 0;
  494 + String[] idsStr = map.get("ids").toString().split(",");
  495 + for (String id : idsStr) {
  496 +
  497 + if (map.get("status") == null || Integer.parseInt(map.get("status").toString()) == 1) {
  498 + repository.sectionRouteIsDestroyUpdBatch(Integer.parseInt(id));
  499 + } else if (Integer.parseInt(map.get("status").toString()) == 2) {
  500 + lsSectionRouteRepository.deleteById(Integer.parseInt(id));
  501 + }
  502 + }
398 resultMap.put("status", ResponseCode.SUCCESS); 503 resultMap.put("status", ResponseCode.SUCCESS);
399 } catch (Exception e) { 504 } catch (Exception e) {
400 resultMap.put("status", ResponseCode.ERROR); 505 resultMap.put("status", ResponseCode.ERROR);
@@ -402,19 +507,31 @@ public class SectionRouteServiceImpl extends BaseServiceImpl&lt;SectionRoute, Integ @@ -402,19 +507,31 @@ public class SectionRouteServiceImpl extends BaseServiceImpl&lt;SectionRoute, Integ
402 } 507 }
403 return resultMap; 508 return resultMap;
404 } 509 }
405 - 510 +
406 // 更具线路批量撤销 511 // 更具线路批量撤销
407 @Override 512 @Override
408 public void batchUpdate(Integer lineId, String lineCode) { 513 public void batchUpdate(Integer lineId, String lineCode) {
409 - repository.batchUpdate(lineId,lineCode); 514 + repository.batchUpdate(lineId, lineCode);
410 } 515 }
411 516
412 - 517 + @Override
  518 + @Transactional
  519 + public Map<String, Object> destroyHistory(Integer id) {
  520 + Map<String, Object> resultMap = new HashMap<String, Object>();
  521 + try {
  522 + lsSectionRouteRepository.deleteById(id);
  523 + resultMap.put("status", ResponseCode.SUCCESS);
  524 + } catch (Exception e) {
  525 + resultMap.put("status", ResponseCode.ERROR);
  526 + logger.error("save erro.", e);
  527 + }
  528 + return resultMap;
  529 + }
413 530
414 /** 531 /**
415 * @Description : TODO(根据路段路由Id批量撤销路段) 532 * @Description : TODO(根据路段路由Id批量撤销路段)
416 * 533 *
417 - * @param id <id:路段路由ID> 534 + * @param id <id:路段路由ID>
418 */ 535 */
419 @Override 536 @Override
420 @Transactional 537 @Transactional
src/main/java/com/bsth/service/impl/StationRouteServiceImpl.java
@@ -9,6 +9,7 @@ import com.bsth.entity.StationRoute; @@ -9,6 +9,7 @@ import com.bsth.entity.StationRoute;
9 import com.bsth.entity.StationRouteCache; 9 import com.bsth.entity.StationRouteCache;
10 import com.bsth.entity.search.CustomerSpecs; 10 import com.bsth.entity.search.CustomerSpecs;
11 import com.bsth.repository.LineRepository; 11 import com.bsth.repository.LineRepository;
  12 +import com.bsth.repository.LsSectionRouteRepository;
12 import com.bsth.repository.LsStationRouteRepository; 13 import com.bsth.repository.LsStationRouteRepository;
13 import com.bsth.repository.SectionRouteRepository; 14 import com.bsth.repository.SectionRouteRepository;
14 import com.bsth.repository.StationRepository; 15 import com.bsth.repository.StationRepository;
@@ -28,6 +29,8 @@ import com.bsth.util.db.DBUtils_station; @@ -28,6 +29,8 @@ import com.bsth.util.db.DBUtils_station;
28 import com.google.common.base.Splitter; 29 import com.google.common.base.Splitter;
29 import org.apache.commons.lang3.StringUtils; 30 import org.apache.commons.lang3.StringUtils;
30 import org.springframework.beans.factory.annotation.Autowired; 31 import org.springframework.beans.factory.annotation.Autowired;
  32 +import org.springframework.data.domain.Page;
  33 +import org.springframework.data.domain.PageRequest;
31 import org.springframework.data.domain.Sort; 34 import org.springframework.data.domain.Sort;
32 import org.springframework.data.domain.Sort.Direction; 35 import org.springframework.data.domain.Sort.Direction;
33 import org.springframework.stereotype.Service; 36 import org.springframework.stereotype.Service;
@@ -88,12 +91,48 @@ public class StationRouteServiceImpl extends BaseServiceImpl&lt;StationRoute, Integ @@ -88,12 +91,48 @@ public class StationRouteServiceImpl extends BaseServiceImpl&lt;StationRoute, Integ
88 @Autowired 91 @Autowired
89 private LsStationRouteRepository lsStationRouteRepository; 92 private LsStationRouteRepository lsStationRouteRepository;
90 93
  94 + @Autowired
  95 + private LsSectionRouteRepository lsSectionRouteRepository;
  96 +
91 public Iterable<LsStationRoute> list_ls(Map<String, Object> map) { 97 public Iterable<LsStationRoute> list_ls(Map<String, Object> map) {
92 List<Sort.Order> orderList = new ArrayList<>(); 98 List<Sort.Order> orderList = new ArrayList<>();
93 orderList.add(new Sort.Order(Direction.ASC, "directions")); 99 orderList.add(new Sort.Order(Direction.ASC, "directions"));
94 orderList.add(new Sort.Order(Direction.ASC, "stationRouteCode")); 100 orderList.add(new Sort.Order(Direction.ASC, "stationRouteCode"));
95 return lsStationRouteRepository.findAll(new CustomerSpecs<LsStationRoute>(map), new Sort(orderList)); 101 return lsStationRouteRepository.findAll(new CustomerSpecs<LsStationRoute>(map), new Sort(orderList));
96 } 102 }
  103 +
  104 +
  105 + public Map pageLs(Map<String, Object> map) {
  106 +
  107 + int pageSize = 10;
  108 + int i = Integer.parseInt(map.get("page").toString());
  109 + int line = Integer.parseInt(map.get("lineCode_eq").toString());
  110 + int dir = Integer.parseInt(map.get("directions_eq").toString());
  111 + int version = Integer.parseInt(map.get("version").toString());
  112 +
  113 + int total = lsStationRouteRepository.count(line , dir,version);
  114 +
  115 + if(total == 0) {
  116 + map.put("empty",true);
  117 + map.put("first",true);
  118 + map.put("last",true);
  119 + }
  120 + if(i == 0) {
  121 + map.put("first",true);
  122 + }
  123 + if(i == (total%pageSize == 0 ? total/pageSize : total/pageSize + 1)) {
  124 + map.put("last",true);
  125 + }
  126 + map.put("number",i*pageSize);
  127 + map.put("numberOfElements",(i+1)*pageSize);
  128 + map.put("pageSize",pageSize);
  129 + map.put("totalPages" , total%pageSize == 0 ? total/pageSize : total/pageSize + 1 );
  130 + map.put("totalElements",total);
  131 + map.put("content" , lsStationRouteRepository.page(i*pageSize, pageSize , line , dir,version));
  132 + return map;
  133 + }
  134 +
  135 +
97 136
98 @Override 137 @Override
99 public Iterable<StationRoute> list(Map<String, Object> map) { 138 public Iterable<StationRoute> list(Map<String, Object> map) {
@@ -178,7 +217,11 @@ public class StationRouteServiceImpl extends BaseServiceImpl&lt;StationRoute, Integ @@ -178,7 +217,11 @@ public class StationRouteServiceImpl extends BaseServiceImpl&lt;StationRoute, Integ
178 try { 217 try {
179 String[] idsStr = map.get("ids").toString().split(",") ; 218 String[] idsStr = map.get("ids").toString().split(",") ;
180 for (String id : idsStr) { 219 for (String id : idsStr) {
181 - repository.stationRouteIsDestroyUpdBatch(Integer.parseInt(id)); 220 + if(map.get("status") == null || Integer.parseInt(map.get("status").toString()) == 1) {
  221 + repository.stationRouteIsDestroyUpdBatch(Integer.parseInt(id));
  222 + }else if(Integer.parseInt(map.get("status").toString()) == 2){
  223 + lsStationRouteRepository.deleteById(Integer.parseInt(id));
  224 + }
182 } 225 }
183 resultMap.put("status", ResponseCode.SUCCESS); 226 resultMap.put("status", ResponseCode.SUCCESS);
184 } catch (Exception e) { 227 } catch (Exception e) {
@@ -204,12 +247,26 @@ public class StationRouteServiceImpl extends BaseServiceImpl&lt;StationRoute, Integ @@ -204,12 +247,26 @@ public class StationRouteServiceImpl extends BaseServiceImpl&lt;StationRoute, Integ
204 // 方向 247 // 方向
205 Integer directions = map.get("directions_eq").equals("") ? null : Integer.parseInt(map.get("directions_eq").toString()); 248 Integer directions = map.get("directions_eq").equals("") ? null : Integer.parseInt(map.get("directions_eq").toString());
206 249
207 - // 查询站点  
208 - List<Object[]> stationList = repository.findPoints(line, directions); 250 + List<Object[]> stationList;
  251 + List<Object[]> sectionList;
209 252
210 - // 查询路段  
211 - List<Object[]> sectionList = routeRepository.getSectionRoute(line, directions);  
212 253
  254 + if(map.get("version")!= null && !map.get("version").toString().isEmpty()) {
  255 +
  256 + Integer versions = Integer.parseInt(map.get("version").toString());
  257 +
  258 + stationList = lsStationRouteRepository.findPoints(line, directions,versions);
  259 +
  260 + sectionList = lsSectionRouteRepository.getSectionRoute(line, directions,versions);
  261 +
  262 + }else {
  263 +
  264 + stationList = repository.findPoints(line, directions);
  265 +
  266 + sectionList = routeRepository.getSectionRoute(line, directions);
  267 + }
  268 +
  269 +
213 return treeListMap(stationList,sectionList); 270 return treeListMap(stationList,sectionList);
214 } 271 }
215 272
@@ -674,7 +731,19 @@ public class StationRouteServiceImpl extends BaseServiceImpl&lt;StationRoute, Integ @@ -674,7 +731,19 @@ public class StationRouteServiceImpl extends BaseServiceImpl&lt;StationRoute, Integ
674 public List<Map<String, Object>> getStationRouteList(Map<String, Object> map) { 731 public List<Map<String, Object>> getStationRouteList(Map<String, Object> map) {
675 Integer lineId = map.get("lineId").equals("") ? null : Integer.parseInt(map.get("lineId").toString()); 732 Integer lineId = map.get("lineId").equals("") ? null : Integer.parseInt(map.get("lineId").toString());
676 Integer direction = map.get("direction").equals("") ? null : Integer.parseInt(map.get("direction").toString()); 733 Integer direction = map.get("direction").equals("") ? null : Integer.parseInt(map.get("direction").toString());
677 - List<Object[]> objects = repository.getStationRouteList(lineId, direction); 734 + List<Object[]> objects;
  735 + if(map.get("version")!= null && !map.get("version").toString().isEmpty()) {
  736 +
  737 + Integer versions = Integer.parseInt(map.get("version").toString());
  738 +
  739 + objects = lsStationRouteRepository.getStationRouteList(lineId, direction,versions);
  740 +
  741 +
  742 + }else {
  743 +
  744 + objects = repository.getStationRouteList(lineId, direction);
  745 + }
  746 +
678 List<Map<String, Object>> resultList = new ArrayList<Map<String,Object>>(); 747 List<Map<String, Object>> resultList = new ArrayList<Map<String,Object>>();
679 748
680 int len = objects.size(); 749 int len = objects.size();
@@ -743,7 +812,14 @@ public class StationRouteServiceImpl extends BaseServiceImpl&lt;StationRoute, Integ @@ -743,7 +812,14 @@ public class StationRouteServiceImpl extends BaseServiceImpl&lt;StationRoute, Integ
743 812
744 Integer destroy = map.get("destroy").equals("") ? 0 : Integer.parseInt(map.get("destroy").toString()); 813 Integer destroy = map.get("destroy").equals("") ? 0 : Integer.parseInt(map.get("destroy").toString());
745 814
746 - repository.stationRouteIsDestroyUpd(stationRouteId, destroy); 815 + if(map.get("status") == null || Integer.parseInt(map.get("status").toString()) == 1) {
  816 + repository.stationRouteIsDestroyUpd(stationRouteId, destroy);
  817 + }else if(Integer.parseInt(map.get("status").toString()) == 2){
  818 + lsStationRouteRepository.deleteById(stationRouteId);
  819 + }else {
  820 + resultMap.put("status", ResponseCode.ERROR);
  821 + }
  822 +
747 823
748 resultMap.put("status", ResponseCode.SUCCESS); 824 resultMap.put("status", ResponseCode.SUCCESS);
749 825
@@ -1202,7 +1278,7 @@ public class StationRouteServiceImpl extends BaseServiceImpl&lt;StationRoute, Integ @@ -1202,7 +1278,7 @@ public class StationRouteServiceImpl extends BaseServiceImpl&lt;StationRoute, Integ
1202 // 获取线路ID 1278 // 获取线路ID
1203 Integer id = map.get("id").equals("") ? 0 : Integer.parseInt(map.get("id").toString()); 1279 Integer id = map.get("id").equals("") ? 0 : Integer.parseInt(map.get("id").toString());
1204 1280
1205 - List<Object[]> objects = repository.findStationRouteInfo(id); 1281 + List<Object[]> objects = lsStationRouteRepository.findStationRouteInfo(id);
1206 1282
1207 List<Map<String, Object>> resultList = new ArrayList<Map<String,Object>>(); 1283 List<Map<String, Object>> resultList = new ArrayList<Map<String,Object>>();
1208 1284
@@ -1261,14 +1337,20 @@ public class StationRouteServiceImpl extends BaseServiceImpl&lt;StationRoute, Integ @@ -1261,14 +1337,20 @@ public class StationRouteServiceImpl extends BaseServiceImpl&lt;StationRoute, Integ
1261 1337
1262 @Override 1338 @Override
1263 @Transactional 1339 @Transactional
1264 - public Map<String, Object> updSwitchDir(String lineIds) { 1340 + public Map<String, Object> updSwitchDir(String lineIds,int status) {
1265 Map<String, Object> rs = new HashMap<>(); 1341 Map<String, Object> rs = new HashMap<>();
1266 try{ 1342 try{
1267 if(lineIds!=null && lineIds !="") { 1343 if(lineIds!=null && lineIds !="") {
1268 Integer lineId = Integer.parseInt(lineIds); 1344 Integer lineId = Integer.parseInt(lineIds);
1269 // 上行站点切换到下行. 1345 // 上行站点切换到下行.
1270 - repository.stationRouteDir(lineId);  
1271 - routeRepository.sectionRouteDir(lineId); 1346 +
  1347 + if(status == 0 || status == 1) {
  1348 + repository.stationRouteDir(lineId);
  1349 + routeRepository.sectionRouteDir(lineId);
  1350 + }else if(status == 2) {
  1351 + lsStationRouteRepository.stationRouteDir(lineId);
  1352 + lsSectionRouteRepository.sectionRouteDir(lineId);
  1353 + }
1272 } 1354 }
1273 rs.put("status", ResponseCode.SUCCESS); 1355 rs.put("status", ResponseCode.SUCCESS);
1274 }catch(Exception e){ 1356 }catch(Exception e){
@@ -1283,12 +1365,24 @@ public class StationRouteServiceImpl extends BaseServiceImpl&lt;StationRoute, Integ @@ -1283,12 +1365,24 @@ public class StationRouteServiceImpl extends BaseServiceImpl&lt;StationRoute, Integ
1283 public Map<String, Object> upddis(Map<String, Object> map) { 1365 public Map<String, Object> upddis(Map<String, Object> map) {
1284 Map<String, Object> rs = new HashMap<>(); 1366 Map<String, Object> rs = new HashMap<>();
1285 try{ 1367 try{
  1368 +
  1369 + Integer status = map.get("status") == null ? null : Integer.parseInt(map.get("status").toString());
  1370 +
  1371 + if(status != null) {
  1372 + map.remove("status");
  1373 + }
  1374 +
1286 Iterator it = map.entrySet().iterator(); 1375 Iterator it = map.entrySet().iterator();
1287 while(it.hasNext()){ 1376 while(it.hasNext()){
1288 java.util.Map.Entry entry = (java.util.Map.Entry)it.next(); 1377 java.util.Map.Entry entry = (java.util.Map.Entry)it.next();
1289 Integer id = Integer.parseInt(entry.getKey().toString().split("_")[1]); //返回对应的键 1378 Integer id = Integer.parseInt(entry.getKey().toString().split("_")[1]); //返回对应的键
1290 Double dis = Double.parseDouble(entry.getValue().toString()) / 1000; //返回对应的值 1379 Double dis = Double.parseDouble(entry.getValue().toString()) / 1000; //返回对应的值
1291 - repository.upddis(id, dis); 1380 +
  1381 + if( status == 1) {
  1382 + repository.upddis(id, dis);
  1383 + }else if(status == 2) {
  1384 + lsStationRouteRepository.upddis(id, dis);
  1385 + }
1292 } 1386 }
1293 rs.put("status", ResponseCode.SUCCESS); 1387 rs.put("status", ResponseCode.SUCCESS);
1294 }catch(Exception e){ 1388 }catch(Exception e){
@@ -1445,7 +1539,7 @@ public class StationRouteServiceImpl extends BaseServiceImpl&lt;StationRoute, Integ @@ -1445,7 +1539,7 @@ public class StationRouteServiceImpl extends BaseServiceImpl&lt;StationRoute, Integ
1445 Line line = lineRepository.findById(lineId).get(); 1539 Line line = lineRepository.findById(lineId).get();
1446 String lineName = line.getName(); 1540 String lineName = line.getName();
1447 String shanghaiCode = (line.getShanghaiLinecode() == null || line.getShanghaiLinecode().equals(""))?"0":line.getShanghaiLinecode(); 1541 String shanghaiCode = (line.getShanghaiLinecode() == null || line.getShanghaiLinecode().equals(""))?"0":line.getShanghaiLinecode();
1448 - List<StationRoute> lists = repository.findByLine(lineId,dir); 1542 + List<LsStationRoute> lists = lsStationRouteRepository.findByLine(lineId,dir);
1449 rsMap.put("station",lists); 1543 rsMap.put("station",lists);
1450 1544
1451 List<StationMatchData> listMD = new ArrayList<>(); 1545 List<StationMatchData> listMD = new ArrayList<>();
@@ -1520,7 +1614,11 @@ public class StationRouteServiceImpl extends BaseServiceImpl&lt;StationRoute, Integ @@ -1520,7 +1614,11 @@ public class StationRouteServiceImpl extends BaseServiceImpl&lt;StationRoute, Integ
1520 java.util.Map.Entry entry = (java.util.Map.Entry)it.next(); 1614 java.util.Map.Entry entry = (java.util.Map.Entry)it.next();
1521 Integer id = Integer.parseInt(entry.getKey().toString().split("_")[1]); //返回对应的键 1615 Integer id = Integer.parseInt(entry.getKey().toString().split("_")[1]); //返回对应的键
1522 String industryCode = entry.getValue().toString(); //返回对应的值 1616 String industryCode = entry.getValue().toString(); //返回对应的值
1523 - repository.updIndustryCode(id, industryCode); 1617 + if(map.get("status") == null || Integer.parseInt(map.get("status").toString()) == 1) {
  1618 + repository.updIndustryCode(id, industryCode);
  1619 + }else if(Integer.parseInt(map.get("status").toString()) == 2) {
  1620 + lsStationRouteRepository.updIndustryCode(id, industryCode);
  1621 + }
1524 } 1622 }
1525 rs.put("status", ResponseCode.SUCCESS); 1623 rs.put("status", ResponseCode.SUCCESS);
1526 }catch(Exception e){ 1624 }catch(Exception e){