Commit 70a83926351be224a79e19e4d4fb7d9f6c48ed09
1 parent
0584c239
更新基础信息维护: 测点导入 历史版本创建 修改
Showing
18 changed files
with
1617 additions
and
819 deletions
src/main/java/com/bsth/controller/LineVersionsController.java
| 1 | package com.bsth.controller; | 1 | package com.bsth.controller; |
| 2 | 2 | ||
| 3 | import com.bsth.entity.LineVersions; | 3 | import com.bsth.entity.LineVersions; |
| 4 | +import com.bsth.entity.LsSectionRoute; | ||
| 5 | +import com.bsth.entity.LsStationRoute; | ||
| 4 | import com.bsth.repository.LineRepository; | 6 | import com.bsth.repository.LineRepository; |
| 7 | +import com.bsth.repository.LsSectionRouteRepository; | ||
| 8 | +import com.bsth.repository.LsStationRouteRepository; | ||
| 5 | import com.bsth.service.LineVersionsService; | 9 | import com.bsth.service.LineVersionsService; |
| 6 | import org.springframework.beans.factory.annotation.Autowired; | 10 | import org.springframework.beans.factory.annotation.Autowired; |
| 7 | import org.springframework.web.bind.annotation.RequestMapping; | 11 | import org.springframework.web.bind.annotation.RequestMapping; |
| @@ -32,6 +36,13 @@ public class LineVersionsController extends BaseController<LineVersions, Integer | @@ -32,6 +36,13 @@ public class LineVersionsController extends BaseController<LineVersions, Integer | ||
| 32 | @Autowired | 36 | @Autowired |
| 33 | private LineVersionsService service; | 37 | private LineVersionsService service; |
| 34 | 38 | ||
| 39 | + | ||
| 40 | + @Autowired | ||
| 41 | + private LsStationRouteRepository lsStationRouteRepository; | ||
| 42 | + | ||
| 43 | + @Autowired | ||
| 44 | + private LsSectionRouteRepository lsSectionRouteRepository; | ||
| 45 | + | ||
| 35 | @Autowired | 46 | @Autowired |
| 36 | LineRepository lineRepository; | 47 | LineRepository lineRepository; |
| 37 | 48 | ||
| @@ -79,9 +90,11 @@ public class LineVersionsController extends BaseController<LineVersions, Integer | @@ -79,9 +90,11 @@ public class LineVersionsController extends BaseController<LineVersions, Integer | ||
| 79 | public Map<String, Object> add(@RequestParam Map<String, Object> map) { | 90 | public Map<String, Object> add(@RequestParam Map<String, Object> map) { |
| 80 | return service.add(map); | 91 | return service.add(map); |
| 81 | } | 92 | } |
| 93 | + | ||
| 82 | @RequestMapping(value = "delete", method = RequestMethod.POST) | 94 | @RequestMapping(value = "delete", method = RequestMethod.POST) |
| 83 | public Map<String, Object> delete(@RequestParam (defaultValue = "id") int id) { | 95 | public Map<String, Object> delete(@RequestParam (defaultValue = "id") int id) { |
| 84 | - return service.delete(id); | 96 | + |
| 97 | + return service.deleteAllData(id); | ||
| 85 | } | 98 | } |
| 86 | 99 | ||
| 87 | /** | 100 | /** |
src/main/java/com/bsth/entity/Section.java
| @@ -25,7 +25,7 @@ import javax.persistence.Table; | @@ -25,7 +25,7 @@ import javax.persistence.Table; | ||
| 25 | 25 | ||
| 26 | @Entity | 26 | @Entity |
| 27 | @Table(name = "bsth_c_section") | 27 | @Table(name = "bsth_c_section") |
| 28 | -public class Section { | 28 | +public class Section{ |
| 29 | 29 | ||
| 30 | @Id | 30 | @Id |
| 31 | /*@GeneratedValue(strategy = GenerationType.IDENTITY)*/ | 31 | /*@GeneratedValue(strategy = GenerationType.IDENTITY)*/ |
| @@ -271,4 +271,5 @@ public class Section { | @@ -271,4 +271,5 @@ public class Section { | ||
| 271 | public void setUpdateDate(Date updateDate) { | 271 | public void setUpdateDate(Date updateDate) { |
| 272 | this.updateDate = updateDate; | 272 | this.updateDate = updateDate; |
| 273 | } | 273 | } |
| 274 | + | ||
| 274 | } | 275 | } |
src/main/java/com/bsth/repository/LsSectionRouteRepository.java
| @@ -5,6 +5,7 @@ import java.util.List; | @@ -5,6 +5,7 @@ import java.util.List; | ||
| 5 | import org.springframework.data.jpa.repository.Modifying; | 5 | import org.springframework.data.jpa.repository.Modifying; |
| 6 | import org.springframework.data.jpa.repository.Query; | 6 | import org.springframework.data.jpa.repository.Query; |
| 7 | import org.springframework.stereotype.Repository; | 7 | import org.springframework.stereotype.Repository; |
| 8 | +import org.springframework.transaction.annotation.Transactional; | ||
| 8 | 9 | ||
| 9 | import com.bsth.entity.Line; | 10 | import com.bsth.entity.Line; |
| 10 | import com.bsth.entity.LsSectionRoute; | 11 | import com.bsth.entity.LsSectionRoute; |
| @@ -131,6 +132,7 @@ public interface LsSectionRouteRepository extends BaseRepository<LsSectionRoute, | @@ -131,6 +132,7 @@ public interface LsSectionRouteRepository extends BaseRepository<LsSectionRoute, | ||
| 131 | * 更新路线前删除线路版本下历史原有路段路由 | 132 | * 更新路线前删除线路版本下历史原有路段路由 |
| 132 | */ | 133 | */ |
| 133 | @Modifying | 134 | @Modifying |
| 135 | + @Transactional | ||
| 134 | @Query(value="DELETE from bsth_c_ls_sectionroute where line = ?1 and directions = ?2 and versions=?3", nativeQuery=true) | 136 | @Query(value="DELETE from bsth_c_ls_sectionroute where line = ?1 and directions = ?2 and versions=?3", nativeQuery=true) |
| 135 | public void batchDelete(Integer line, Integer dir, Integer versions); | 137 | public void batchDelete(Integer line, Integer dir, Integer versions); |
| 136 | 138 |
src/main/java/com/bsth/repository/LsStationRouteRepository.java
| @@ -8,6 +8,7 @@ import org.springframework.data.jpa.repository.EntityGraph; | @@ -8,6 +8,7 @@ import org.springframework.data.jpa.repository.EntityGraph; | ||
| 8 | import org.springframework.data.jpa.repository.Modifying; | 8 | import org.springframework.data.jpa.repository.Modifying; |
| 9 | import org.springframework.data.jpa.repository.Query; | 9 | import org.springframework.data.jpa.repository.Query; |
| 10 | import org.springframework.stereotype.Repository; | 10 | import org.springframework.stereotype.Repository; |
| 11 | +import org.springframework.transaction.annotation.Transactional; | ||
| 11 | 12 | ||
| 12 | import com.bsth.entity.LsStationRoute; | 13 | import com.bsth.entity.LsStationRoute; |
| 13 | import com.bsth.entity.StationRoute; | 14 | import com.bsth.entity.StationRoute; |
| @@ -164,6 +165,7 @@ public interface LsStationRouteRepository extends BaseRepository<LsStationRoute, | @@ -164,6 +165,7 @@ public interface LsStationRouteRepository extends BaseRepository<LsStationRoute, | ||
| 164 | * @param dir | 165 | * @param dir |
| 165 | */ | 166 | */ |
| 166 | @Modifying | 167 | @Modifying |
| 168 | + @Transactional | ||
| 167 | @Query(value="DELETE from bsth_c_ls_stationroute where line = ?1 and directions = ?2 and versions = ?3", nativeQuery=true) | 169 | @Query(value="DELETE from bsth_c_ls_stationroute where line = ?1 and directions = ?2 and versions = ?3", nativeQuery=true) |
| 168 | public void batchDelete(Integer line,Integer dir, Integer versions); | 170 | public void batchDelete(Integer line,Integer dir, Integer versions); |
| 169 | 171 |
src/main/java/com/bsth/repository/SectionRepository.java
| @@ -73,6 +73,59 @@ public interface SectionRepository extends BaseRepository<Section, Integer> { | @@ -73,6 +73,59 @@ public interface SectionRepository extends BaseRepository<Section, Integer> { | ||
| 73 | 73 | ||
| 74 | String descriptions, int versions,int id); | 74 | String descriptions, int versions,int id); |
| 75 | 75 | ||
| 76 | + | ||
| 77 | + @Transactional | ||
| 78 | + @Modifying | ||
| 79 | + @Query(value="insert into bsth_c_section(" + | ||
| 80 | + "id," + | ||
| 81 | + "section_code," + | ||
| 82 | + "section_name," + | ||
| 83 | + "croses_road," + | ||
| 84 | + "end_node," + | ||
| 85 | + "start_node," + | ||
| 86 | + "middle_node," + | ||
| 87 | + "section_type," + | ||
| 88 | + "csection_vector," + | ||
| 89 | + "bsection_vector," + | ||
| 90 | + "gsection_vector," + | ||
| 91 | + "road_coding," + | ||
| 92 | + "section_distance," + | ||
| 93 | + "section_time," + | ||
| 94 | + "db_type," + | ||
| 95 | + "speed_limit," + | ||
| 96 | + "descriptions," + | ||
| 97 | + "create_by," + | ||
| 98 | + "create_date," + | ||
| 99 | + "update_by," + | ||
| 100 | + "update_date," + | ||
| 101 | + "versions)" + | ||
| 102 | + "(select" + | ||
| 103 | + " ?2," + | ||
| 104 | + " ?2," + | ||
| 105 | + "section_name," + | ||
| 106 | + "croses_road," + | ||
| 107 | + "end_node," + | ||
| 108 | + "start_node," + | ||
| 109 | + "middle_node," + | ||
| 110 | + "section_type," + | ||
| 111 | + "csection_vector," + | ||
| 112 | + "bsection_vector," + | ||
| 113 | + "gsection_vector," + | ||
| 114 | + "road_coding," + | ||
| 115 | + "section_distance," + | ||
| 116 | + "section_time," + | ||
| 117 | + "db_type," + | ||
| 118 | + "speed_limit," + | ||
| 119 | + "descriptions," + | ||
| 120 | + "create_by," + | ||
| 121 | + "create_date," + | ||
| 122 | + "update_by," + | ||
| 123 | + "update_date," + | ||
| 124 | + "?1" + | ||
| 125 | + " from bsth_c_section where id = ?3)", nativeQuery=true) | ||
| 126 | + public void autoCopy(int versions,int id,int s_id); | ||
| 127 | + | ||
| 128 | + | ||
| 76 | /** | 129 | /** |
| 77 | * @Description :TODO(编辑线路走向) | 130 | * @Description :TODO(编辑线路走向) |
| 78 | * | 131 | * |
src/main/java/com/bsth/service/LineVersionsService.java
| @@ -43,5 +43,7 @@ public interface LineVersionsService extends BaseService<LineVersions, Integer> | @@ -43,5 +43,7 @@ public interface LineVersionsService extends BaseService<LineVersions, Integer> | ||
| 43 | 43 | ||
| 44 | Map<String, Object> issueVersion(int id); | 44 | Map<String, Object> issueVersion(int id); |
| 45 | 45 | ||
| 46 | + Map<String, Object> deleteAllData(int id); | ||
| 47 | + | ||
| 46 | 48 | ||
| 47 | } | 49 | } |
src/main/java/com/bsth/service/impl/LineVersionsServiceImpl.java
| @@ -22,6 +22,7 @@ import com.bsth.entity.Line; | @@ -22,6 +22,7 @@ import com.bsth.entity.Line; | ||
| 22 | import com.bsth.entity.LineVersions; | 22 | import com.bsth.entity.LineVersions; |
| 23 | import com.bsth.entity.LsSectionRoute; | 23 | import com.bsth.entity.LsSectionRoute; |
| 24 | import com.bsth.entity.LsStationRoute; | 24 | import com.bsth.entity.LsStationRoute; |
| 25 | +import com.bsth.entity.Section; | ||
| 25 | import com.bsth.entity.SectionRoute; | 26 | import com.bsth.entity.SectionRoute; |
| 26 | import com.bsth.entity.Station; | 27 | import com.bsth.entity.Station; |
| 27 | import com.bsth.entity.StationRoute; | 28 | import com.bsth.entity.StationRoute; |
| @@ -29,6 +30,7 @@ import com.bsth.repository.LineRepository; | @@ -29,6 +30,7 @@ import com.bsth.repository.LineRepository; | ||
| 29 | import com.bsth.repository.LineVersionsRepository; | 30 | import com.bsth.repository.LineVersionsRepository; |
| 30 | import com.bsth.repository.LsSectionRouteRepository; | 31 | import com.bsth.repository.LsSectionRouteRepository; |
| 31 | import com.bsth.repository.LsStationRouteRepository; | 32 | import com.bsth.repository.LsStationRouteRepository; |
| 33 | +import com.bsth.repository.SectionRepository; | ||
| 32 | import com.bsth.repository.StationRepository; | 34 | import com.bsth.repository.StationRepository; |
| 33 | import com.bsth.service.LineVersionsService; | 35 | import com.bsth.service.LineVersionsService; |
| 34 | import com.bsth.service.SectionRouteService; | 36 | import com.bsth.service.SectionRouteService; |
| @@ -67,6 +69,9 @@ public class LineVersionsServiceImpl extends BaseServiceImpl<LineVersions, Integ | @@ -67,6 +69,9 @@ public class LineVersionsServiceImpl extends BaseServiceImpl<LineVersions, Integ | ||
| 67 | @Autowired | 69 | @Autowired |
| 68 | StationRepository stationRepository; | 70 | StationRepository stationRepository; |
| 69 | 71 | ||
| 72 | + @Autowired | ||
| 73 | + SectionRepository sectionRepository; | ||
| 74 | + | ||
| 70 | 75 | ||
| 71 | @Autowired | 76 | @Autowired |
| 72 | com.bsth.repository.SectionRouteRepository sectionRouteRepository ; | 77 | com.bsth.repository.SectionRouteRepository sectionRouteRepository ; |
| @@ -269,38 +274,32 @@ public class LineVersionsServiceImpl extends BaseServiceImpl<LineVersions, Integ | @@ -269,38 +274,32 @@ public class LineVersionsServiceImpl extends BaseServiceImpl<LineVersions, Integ | ||
| 269 | upLineVersions.setEndDate(new java.sql.Date(startDate.getTime())); | 274 | upLineVersions.setEndDate(new java.sql.Date(startDate.getTime())); |
| 270 | repository.save(upLineVersions); | 275 | repository.save(upLineVersions); |
| 271 | 276 | ||
| 272 | - //// 先查询待更新版本 如果有需要就删除 预留.. | ||
| 273 | -// List<LsSectionRoute> needDelete = lsSectionRouteRepository.findupdated(Integer.valueOf(map.get("lineId").toString()),map.get("lineCode").toString(),versions); | ||
| 274 | -// | ||
| 275 | -// lsSectionRouteRepository.deleteAll(needDelete); | ||
| 276 | -// | ||
| 277 | -// List<LsStationRoute> needDelete2 = lsStationRouteRepository.findupdated(Integer.valueOf(map.get("lineId").toString()),map.get("lineCode").toString(),versions); | ||
| 278 | -// | ||
| 279 | -// lsStationRouteRepository.deleteAll(needDelete2); | ||
| 280 | - | ||
| 281 | - | ||
| 282 | if(map.get("hisVersions") != null && !map.get("hisVersions").toString().isEmpty()) { | 277 | if(map.get("hisVersions") != null && !map.get("hisVersions").toString().isEmpty()) { |
| 283 | Integer hisVersion = Integer.valueOf(map.get("hisVersions").toString()); | 278 | Integer hisVersion = Integer.valueOf(map.get("hisVersions").toString()); |
| 284 | 279 | ||
| 285 | List<LsSectionRoute> sectionList = lsSectionRouteRepository.findupdated(Integer.valueOf(map.get("lineId").toString()),map.get("lineCode").toString(),hisVersion); | 280 | List<LsSectionRoute> sectionList = lsSectionRouteRepository.findupdated(Integer.valueOf(map.get("lineId").toString()),map.get("lineCode").toString(),hisVersion); |
| 286 | 281 | ||
| 287 | - | ||
| 288 | for(int i =0;i<sectionList.size();i++) { | 282 | for(int i =0;i<sectionList.size();i++) { |
| 283 | + | ||
| 289 | LsSectionRoute oldData = sectionList.get(i); | 284 | LsSectionRoute oldData = sectionList.get(i); |
| 290 | 285 | ||
| 291 | - LsSectionRoute newData = new LsSectionRoute(); | 286 | + long sectionCode = GetUIDAndCode.getSectionId(); |
| 287 | + | ||
| 288 | + sectionRepository.autoCopy(versions, (int)sectionCode, oldData.getSection().getId()); | ||
| 289 | + Section section = sectionRepository.findById((int)sectionCode).get(); | ||
| 290 | + | ||
| 292 | 291 | ||
| 292 | + LsSectionRoute newData = new LsSectionRoute(); | ||
| 293 | newData.setIsRoadeSpeed(oldData.getIsRoadeSpeed()); | 293 | newData.setIsRoadeSpeed(oldData.getIsRoadeSpeed()); |
| 294 | newData.setDescriptions(oldData.getDescriptions()); | 294 | newData.setDescriptions(oldData.getDescriptions()); |
| 295 | newData.setLine(oldData.getLine()); | 295 | newData.setLine(oldData.getLine()); |
| 296 | newData.setLineCode(oldData.getLineCode()); | 296 | newData.setLineCode(oldData.getLineCode()); |
| 297 | newData.setDirections(oldData.getDirections()); | 297 | newData.setDirections(oldData.getDirections()); |
| 298 | - newData.setSection(oldData.getSection()); | ||
| 299 | - newData.setSectionCode(oldData.getSectionCode()); | 298 | + newData.setSection(section); |
| 299 | + newData.setSectionCode(String.valueOf(sectionCode)); | ||
| 300 | newData.setSectionrouteCode(oldData.getSectionrouteCode()); | 300 | newData.setSectionrouteCode(oldData.getSectionrouteCode()); |
| 301 | newData.setDestroy(0); | 301 | newData.setDestroy(0); |
| 302 | newData.setVersions(versions); | 302 | newData.setVersions(versions); |
| 303 | - | ||
| 304 | lsSectionRouteRepository.save(newData); | 303 | lsSectionRouteRepository.save(newData); |
| 305 | 304 | ||
| 306 | } | 305 | } |
| @@ -310,13 +309,11 @@ public class LineVersionsServiceImpl extends BaseServiceImpl<LineVersions, Integ | @@ -310,13 +309,11 @@ public class LineVersionsServiceImpl extends BaseServiceImpl<LineVersions, Integ | ||
| 310 | for(int i =0;i<stationList.size();i++) { | 309 | for(int i =0;i<stationList.size();i++) { |
| 311 | 310 | ||
| 312 | 311 | ||
| 313 | - Station newStation = stationRepository.findByIdReturnMojo(stationList.get(i).getStation().getId()); | 312 | + Station newStation = stationRepository.findById(stationList.get(i).getStation().getId()).get(); |
| 314 | Station oldStation = new Station(); | 313 | Station oldStation = new Station(); |
| 315 | long stationCode = GetUIDAndCode.getStationId(); | 314 | long stationCode = GetUIDAndCode.getStationId(); |
| 316 | oldStation.setStationCod(String.valueOf(stationCode)); | 315 | oldStation.setStationCod(String.valueOf(stationCode)); |
| 317 | - oldStation.setId((int)stationCode); | ||
| 318 | -// oldStation.setStationCod(newStation.getStationCod()); | ||
| 319 | - | 316 | + oldStation.setId((int)stationCode); |
| 320 | oldStation.setAddr(newStation.getAddr()); | 317 | oldStation.setAddr(newStation.getAddr()); |
| 321 | oldStation.setbJwpoints(newStation.getbJwpoints()); | 318 | oldStation.setbJwpoints(newStation.getbJwpoints()); |
| 322 | oldStation.setbPolygonGrid(newStation.getbPolygonGrid()); | 319 | oldStation.setbPolygonGrid(newStation.getbPolygonGrid()); |
| @@ -340,7 +337,6 @@ public class LineVersionsServiceImpl extends BaseServiceImpl<LineVersions, Integ | @@ -340,7 +337,6 @@ public class LineVersionsServiceImpl extends BaseServiceImpl<LineVersions, Integ | ||
| 340 | 337 | ||
| 341 | stationRepository.save(oldStation); | 338 | stationRepository.save(oldStation); |
| 342 | 339 | ||
| 343 | - | ||
| 344 | LsStationRoute oldData = stationList.get(i); | 340 | LsStationRoute oldData = stationList.get(i); |
| 345 | 341 | ||
| 346 | LsStationRoute newData = new LsStationRoute(); | 342 | LsStationRoute newData = new LsStationRoute(); |
| @@ -367,34 +363,6 @@ public class LineVersionsServiceImpl extends BaseServiceImpl<LineVersions, Integ | @@ -367,34 +363,6 @@ public class LineVersionsServiceImpl extends BaseServiceImpl<LineVersions, Integ | ||
| 367 | lsStationRouteRepository.save(newData); | 363 | lsStationRouteRepository.save(newData); |
| 368 | } | 364 | } |
| 369 | 365 | ||
| 370 | - | ||
| 371 | -// for(int i =0;i<stationList.size();i++) { | ||
| 372 | -// LsStationRoute oldData = stationList.get(i); | ||
| 373 | -// | ||
| 374 | -// LsStationRoute newData = new LsStationRoute(); | ||
| 375 | -// | ||
| 376 | -// newData.setLine(oldData.getLine()); | ||
| 377 | -// newData.setStation(oldData.getStation()); | ||
| 378 | -// newData.setStationName(oldData.getStationName()); | ||
| 379 | -// newData.setStationRouteCode(oldData.getStationRouteCode()); | ||
| 380 | -// newData.setLineCode(oldData.getLineCode()); | ||
| 381 | -// newData.setStationCode(oldData.getStationCode()); | ||
| 382 | -// newData.setStationMark(oldData.getStationMark()); | ||
| 383 | -// newData.setOutStationNmber(oldData.getOutStationNmber()); | ||
| 384 | -// newData.setDirections(oldData.getDirections()); | ||
| 385 | -// newData.setDistances(oldData.getDistances()); | ||
| 386 | -// newData.setToTime(oldData.getToTime()); | ||
| 387 | -// newData.setFirstTime(oldData.getFirstTime()); | ||
| 388 | -// newData.setEndTime(oldData.getEndTime()); | ||
| 389 | -// newData.setEndTime(oldData.getEndTime()); | ||
| 390 | -// newData.setDescriptions(oldData.getDescriptions()); | ||
| 391 | -// newData.setIndustryCode(oldData.getIndustryCode()); | ||
| 392 | -// newData.setDestroy(0); | ||
| 393 | -// newData.setVersions(versions); | ||
| 394 | -// | ||
| 395 | -// lsStationRouteRepository.save(newData); | ||
| 396 | -// } | ||
| 397 | - | ||
| 398 | } | 366 | } |
| 399 | resultMap.put("status", ResponseCode.SUCCESS); | 367 | resultMap.put("status", ResponseCode.SUCCESS); |
| 400 | } catch (ParseException e) { | 368 | } catch (ParseException e) { |
| @@ -424,4 +392,17 @@ public class LineVersionsServiceImpl extends BaseServiceImpl<LineVersions, Integ | @@ -424,4 +392,17 @@ public class LineVersionsServiceImpl extends BaseServiceImpl<LineVersions, Integ | ||
| 424 | resultMap.put("status", ResponseCode.ERROR); | 392 | resultMap.put("status", ResponseCode.ERROR); |
| 425 | return resultMap; | 393 | return resultMap; |
| 426 | } | 394 | } |
| 395 | + | ||
| 396 | + @Override | ||
| 397 | + @Transactional | ||
| 398 | + public Map<String, Object> deleteAllData(int id) { | ||
| 399 | + LineVersions version = repository.findById(id).get(); | ||
| 400 | + | ||
| 401 | + lsSectionRouteRepository.batchDelete(version.getLine().getId(),0,version.getVersions()); | ||
| 402 | + lsSectionRouteRepository.batchDelete(version.getLine().getId(),1,version.getVersions()); | ||
| 403 | + lsStationRouteRepository.batchDelete(version.getLine().getId(),0,version.getVersions()); | ||
| 404 | + lsStationRouteRepository.batchDelete(version.getLine().getId(),1,version.getVersions()); | ||
| 405 | + | ||
| 406 | + return delete(id); | ||
| 407 | + } | ||
| 427 | } | 408 | } |
src/main/java/com/bsth/service/impl/SectionServiceImpl.java
| @@ -660,8 +660,7 @@ public class SectionServiceImpl extends BaseServiceImpl<Section, Integer> implem | @@ -660,8 +660,7 @@ public class SectionServiceImpl extends BaseServiceImpl<Section, Integer> implem | ||
| 660 | // 路段时长 | 660 | // 路段时长 |
| 661 | Double sectionTime = map.get("sectionTime").equals("") ? null : Double.valueOf(map.get("sectionTime").toString()); | 661 | Double sectionTime = map.get("sectionTime").equals("") ? null : Double.valueOf(map.get("sectionTime").toString()); |
| 662 | // 路段路由 | 662 | // 路段路由 |
| 663 | - Integer sectionrouteCode = map.get("sectionrouteCode").equals("") ? null : Integer.valueOf(map.get("sectionrouteCode").toString()); | ||
| 664 | - | 663 | + Integer sectionrouteCode = "".equals(map.get("sectionrouteCode")) ? null : Integer.valueOf(map.get("sectionrouteCode").toString()); |
| 665 | // 限速 | 664 | // 限速 |
| 666 | Double speedLimit = map.get("speedLimit").equals("") ? null : Double.valueOf(map.get("speedLimit").toString()); | 665 | Double speedLimit = map.get("speedLimit").equals("") ? null : Double.valueOf(map.get("speedLimit").toString()); |
| 667 | // 版本 | 666 | // 版本 |
src/main/java/com/bsth/service/impl/StationServiceImpl.java
| @@ -18,6 +18,7 @@ import com.alibaba.fastjson.JSONObject; | @@ -18,6 +18,7 @@ import com.alibaba.fastjson.JSONObject; | ||
| 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.LineInformation; | 20 | import com.bsth.entity.LineInformation; |
| 21 | +import com.bsth.entity.LsSectionRoute; | ||
| 21 | import com.bsth.entity.LsStationRoute; | 22 | import com.bsth.entity.LsStationRoute; |
| 22 | import com.bsth.entity.Section; | 23 | import com.bsth.entity.Section; |
| 23 | import com.bsth.entity.SectionRoute; | 24 | import com.bsth.entity.SectionRoute; |
| @@ -28,6 +29,7 @@ import com.bsth.entity.StationRouteCache; | @@ -28,6 +29,7 @@ import com.bsth.entity.StationRouteCache; | ||
| 28 | import com.bsth.repository.LineInformationRepository; | 29 | import com.bsth.repository.LineInformationRepository; |
| 29 | import com.bsth.repository.LineRepository; | 30 | import com.bsth.repository.LineRepository; |
| 30 | import com.bsth.repository.LineVersionsRepository; | 31 | import com.bsth.repository.LineVersionsRepository; |
| 32 | +import com.bsth.repository.LsSectionRouteRepository; | ||
| 31 | import com.bsth.repository.LsStationRouteRepository; | 33 | import com.bsth.repository.LsStationRouteRepository; |
| 32 | import com.bsth.repository.SectionRepository; | 34 | import com.bsth.repository.SectionRepository; |
| 33 | import com.bsth.repository.SectionRouteCacheRepository; | 35 | import com.bsth.repository.SectionRouteCacheRepository; |
| @@ -60,57 +62,61 @@ import com.bsth.util.Geo.Point; | @@ -60,57 +62,61 @@ import com.bsth.util.Geo.Point; | ||
| 60 | */ | 62 | */ |
| 61 | 63 | ||
| 62 | @Service | 64 | @Service |
| 63 | -public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implements StationService{ | ||
| 64 | - | 65 | +public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implements StationService { |
| 66 | + | ||
| 65 | @Autowired | 67 | @Autowired |
| 66 | private StationRepository repository; | 68 | private StationRepository repository; |
| 67 | - | 69 | + |
| 68 | @Autowired | 70 | @Autowired |
| 69 | private StationRouteRepository routeRepository; | 71 | private StationRouteRepository routeRepository; |
| 70 | 72 | ||
| 71 | @Autowired | 73 | @Autowired |
| 72 | private LsStationRouteRepository lsStationRouteRepository; | 74 | private LsStationRouteRepository lsStationRouteRepository; |
| 73 | - | 75 | + |
| 74 | @Autowired | 76 | @Autowired |
| 75 | private StationRouteCacheRepository routeCacheRepository; | 77 | private StationRouteCacheRepository routeCacheRepository; |
| 76 | 78 | ||
| 77 | @Autowired | 79 | @Autowired |
| 78 | private LineInformationRepository informationRepository; | 80 | private LineInformationRepository informationRepository; |
| 79 | - | ||
| 80 | - @Autowired | 81 | + |
| 82 | + @Autowired | ||
| 81 | private LineRepository lineRepository; | 83 | private LineRepository lineRepository; |
| 82 | - | 84 | + |
| 83 | @Autowired | 85 | @Autowired |
| 84 | private SectionRepository sectionRepository; | 86 | private SectionRepository sectionRepository; |
| 85 | - | 87 | + |
| 86 | @Autowired | 88 | @Autowired |
| 87 | private SectionRouteRepository sectionRouteRepository; | 89 | private SectionRouteRepository sectionRouteRepository; |
| 88 | - | 90 | + |
| 91 | + @Autowired | ||
| 92 | + private LsSectionRouteRepository lsSectionRouteRepository; | ||
| 93 | + | ||
| 89 | @Autowired | 94 | @Autowired |
| 90 | private SectionRouteCacheRepository sectionRouteCacheRepository; | 95 | private SectionRouteCacheRepository sectionRouteCacheRepository; |
| 91 | - | 96 | + |
| 92 | @Autowired | 97 | @Autowired |
| 93 | LineVersionsRepository lineVersionsRepository; | 98 | LineVersionsRepository lineVersionsRepository; |
| 94 | - | 99 | + |
| 95 | Logger logger = LoggerFactory.getLogger(this.getClass()); | 100 | Logger logger = LoggerFactory.getLogger(this.getClass()); |
| 96 | - | 101 | + |
| 97 | /** | 102 | /** |
| 98 | * @Description :TODO(系统规划保存数据) | 103 | * @Description :TODO(系统规划保存数据) |
| 99 | * | 104 | * |
| 100 | - * @param map <stationJSON:站点信息; sectionJSON:路段信息;dbType:坐标类型; destroy:是否撤销; directions:方向;lineId:线路ID; | 105 | + * @param map <stationJSON:站点信息; sectionJSON:路段信息;dbType:坐标类型; destroy:是否撤销; |
| 106 | + * directions:方向;lineId:线路ID; | ||
| 101 | * | 107 | * |
| 102 | - * radius:圆半径;shapesType:图形类型;speedLimit:限速> | 108 | + * radius:圆半径;shapesType:图形类型;speedLimit:限速> |
| 103 | * | 109 | * |
| 104 | * @return Map<String, Object> <SUCCESS ; ERROR> | 110 | * @return Map<String, Object> <SUCCESS ; ERROR> |
| 105 | */ | 111 | */ |
| 106 | @Override | 112 | @Override |
| 107 | public Map<String, Object> systemSaveStations(Map<String, Object> map) { | 113 | public Map<String, Object> systemSaveStations(Map<String, Object> map) { |
| 108 | - Map<String, Object> resultMap = new HashMap<String,Object>(); | 114 | + Map<String, Object> resultMap = new HashMap<String, Object>(); |
| 109 | try { | 115 | try { |
| 110 | // 站点信息字符传 | 116 | // 站点信息字符传 |
| 111 | - String stationJSON = map.get("stationJSON").toString().equals("") ? "" : map.get("stationJSON").toString(); | 117 | + String stationJSON = map.get("stationJSON").toString().equals("") ? "" : map.get("stationJSON").toString(); |
| 112 | // 路段信息字符串 | 118 | // 路段信息字符串 |
| 113 | - String sectionJSON = map.get("sectionJSON").toString().equals("") ? "" : map.get("sectionJSON").toString(); | 119 | + String sectionJSON = map.get("sectionJSON").toString().equals("") ? "" : map.get("sectionJSON").toString(); |
| 114 | // 方向 | 120 | // 方向 |
| 115 | int directions = Integer.parseInt(map.get("directions").toString()); | 121 | int directions = Integer.parseInt(map.get("directions").toString()); |
| 116 | // 是否撤销 | 122 | // 是否撤销 |
| @@ -118,13 +124,13 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -118,13 +124,13 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 118 | // 版本 | 124 | // 版本 |
| 119 | int versions = map.get("versions").equals("") ? 0 : Integer.parseInt(map.get("versions").toString()); | 125 | int versions = map.get("versions").equals("") ? 0 : Integer.parseInt(map.get("versions").toString()); |
| 120 | // 坐标类型 | 126 | // 坐标类型 |
| 121 | - String dbType = map.get("dbType").equals("") ? "" : map.get("dbType").toString(); | 127 | + String dbType = map.get("dbType").equals("") ? "" : map.get("dbType").toString(); |
| 122 | // 限速 | 128 | // 限速 |
| 123 | String speedLimitStr = map.get("speedLimit").equals("") ? "" : map.get("speedLimit").toString(); | 129 | String speedLimitStr = map.get("speedLimit").equals("") ? "" : map.get("speedLimit").toString(); |
| 124 | // 线路ID | 130 | // 线路ID |
| 125 | int lineId = map.get("lineId").toString().equals("") ? 0 : Integer.parseInt(map.get("lineId").toString()); | 131 | int lineId = map.get("lineId").toString().equals("") ? 0 : Integer.parseInt(map.get("lineId").toString()); |
| 126 | // 半径 | 132 | // 半径 |
| 127 | - int radius = map.get("radius").equals("") ? 0 : Integer.parseInt(map.get("radius").toString()); | 133 | + int radius = map.get("radius").equals("") ? 0 : Integer.parseInt(map.get("radius").toString()); |
| 128 | // 图形类型 | 134 | // 图形类型 |
| 129 | String shapesType = map.get("shapesType").equals("") ? "" : map.get("shapesType").toString(); | 135 | String shapesType = map.get("shapesType").equals("") ? "" : map.get("shapesType").toString(); |
| 130 | // 路段距离 | 136 | // 路段距离 |
| @@ -135,112 +141,114 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -135,112 +141,114 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 135 | double sumUpOrDownMileage = 0.0d; | 141 | double sumUpOrDownMileage = 0.0d; |
| 136 | // 线路信息 | 142 | // 线路信息 |
| 137 | Line resultLine = lineRepository.findById(lineId).get(); | 143 | Line resultLine = lineRepository.findById(lineId).get(); |
| 138 | - Map<String, Object> resultSaveMapm = new HashMap<String,Object>(); | 144 | + Map<String, Object> resultSaveMapm = new HashMap<String, Object>(); |
| 139 | String baseRes = map.get("baseRes").equals("") ? "" : map.get("baseRes").toString(); | 145 | String baseRes = map.get("baseRes").equals("") ? "" : map.get("baseRes").toString(); |
| 140 | - if(!stationJSON.equals("")) { | 146 | + if (!stationJSON.equals("")) { |
| 141 | // 保存前先撤销原有站点 | 147 | // 保存前先撤销原有站点 |
| 142 | - | 148 | + |
| 143 | // 保存站点与站点路由信息 | 149 | // 保存站点与站点路由信息 |
| 144 | - resultSaveMapm = savaStationAndStationRouteInfo( stationJSON, sectionDistance, sectionDuration, dbType,radius, shapesType, destroy, versions, sumUpOrDownMileage, directions, resultLine,baseRes); | 150 | + resultSaveMapm = savaStationAndStationRouteInfo(stationJSON, sectionDistance, sectionDuration, dbType, |
| 151 | + radius, shapesType, destroy, versions, sumUpOrDownMileage, directions, resultLine, baseRes); | ||
| 145 | } | 152 | } |
| 146 | - | 153 | + |
| 147 | // 路段长度 | 154 | // 路段长度 |
| 148 | sectionDistance = Double.valueOf(resultSaveMapm.get("sectionDistance").toString()); | 155 | sectionDistance = Double.valueOf(resultSaveMapm.get("sectionDistance").toString()); |
| 149 | - | 156 | + |
| 150 | // 路段时长 | 157 | // 路段时长 |
| 151 | - sectionDuration= Double.valueOf(resultSaveMapm.get("sectionDuration").toString()); | ||
| 152 | - | 158 | + sectionDuration = Double.valueOf(resultSaveMapm.get("sectionDuration").toString()); |
| 159 | + | ||
| 153 | // 如果路段信息JSON字符串不为空 | 160 | // 如果路段信息JSON字符串不为空 |
| 154 | - if(!sectionJSON.equals("")) { | ||
| 155 | - | 161 | + if (!sectionJSON.equals("")) { |
| 162 | + | ||
| 156 | // 保存路段与路段路由信息 | 163 | // 保存路段与路段路由信息 |
| 157 | - saveSectionAndSectionRouteInfo( sectionJSON, directions, resultLine, speedLimitStr,sectionDistance, sectionDuration, dbType, versions, destroy); | 164 | + saveSectionAndSectionRouteInfo(sectionJSON, directions, resultLine, speedLimitStr, sectionDistance, |
| 165 | + sectionDuration, dbType, versions, destroy); | ||
| 158 | } | 166 | } |
| 159 | - | 167 | + |
| 160 | // 里程 | 168 | // 里程 |
| 161 | sumUpOrDownMileage = Double.valueOf(resultSaveMapm.get("sumUpOrDownMileage").toString()); | 169 | sumUpOrDownMileage = Double.valueOf(resultSaveMapm.get("sumUpOrDownMileage").toString()); |
| 162 | - | 170 | + |
| 163 | BigDecimal s = new BigDecimal(sumUpOrDownMileage); | 171 | BigDecimal s = new BigDecimal(sumUpOrDownMileage); |
| 164 | - | 172 | + |
| 165 | sumUpOrDownMileage = s.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); | 173 | sumUpOrDownMileage = s.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); |
| 166 | - | 174 | + |
| 167 | // 更新里程 | 175 | // 更新里程 |
| 168 | - updateLineInfoUpOrDownMileage( resultLine , directions, sumUpOrDownMileage); | ||
| 169 | - | ||
| 170 | - if(directions==0) { | ||
| 171 | - | 176 | + updateLineInfoUpOrDownMileage(resultLine, directions, sumUpOrDownMileage); |
| 177 | + | ||
| 178 | + if (directions == 0) { | ||
| 179 | + | ||
| 172 | lineUpdateStationName(resultLine); | 180 | lineUpdateStationName(resultLine); |
| 173 | - | 181 | + |
| 174 | } | 182 | } |
| 175 | resultMap.put("status", ResponseCode.SUCCESS); | 183 | resultMap.put("status", ResponseCode.SUCCESS); |
| 176 | - | 184 | + |
| 177 | } catch (Exception e) { | 185 | } catch (Exception e) { |
| 178 | - | 186 | + |
| 179 | resultMap.put("status", ResponseCode.ERROR); | 187 | resultMap.put("status", ResponseCode.ERROR); |
| 180 | - | 188 | + |
| 181 | logger.error("save erro.", e); | 189 | logger.error("save erro.", e); |
| 182 | - | 190 | + |
| 183 | } | 191 | } |
| 184 | - | 192 | + |
| 185 | return resultMap; | 193 | return resultMap; |
| 186 | } | 194 | } |
| 187 | - | ||
| 188 | - | 195 | + |
| 189 | public void lineUpdateStationName(Line resultLine) { | 196 | public void lineUpdateStationName(Line resultLine) { |
| 190 | - | 197 | + |
| 191 | List<StationRoute> stationRoutes = routeRepository.findByLine(resultLine); | 198 | List<StationRoute> stationRoutes = routeRepository.findByLine(resultLine); |
| 192 | - | 199 | + |
| 193 | int sizeL = stationRoutes.size(); | 200 | int sizeL = stationRoutes.size(); |
| 194 | - | ||
| 195 | - if(sizeL<0) { | ||
| 196 | - | 201 | + |
| 202 | + if (sizeL < 0) { | ||
| 203 | + | ||
| 197 | return; | 204 | return; |
| 198 | - | 205 | + |
| 199 | } | 206 | } |
| 200 | - | ||
| 201 | - if(resultLine.getStartStationName().equals("")){ | ||
| 202 | - | ||
| 203 | - for(int k =0;k<sizeL;k++) { | ||
| 204 | - | 207 | + |
| 208 | + if (resultLine.getStartStationName().equals("")) { | ||
| 209 | + | ||
| 210 | + for (int k = 0; k < sizeL; k++) { | ||
| 211 | + | ||
| 205 | StationRoute tempS = stationRoutes.get(k); | 212 | StationRoute tempS = stationRoutes.get(k); |
| 206 | - | ||
| 207 | - if(tempS.getStationMark().equals("B") && tempS.getDirections()==0) { | ||
| 208 | - | 213 | + |
| 214 | + if (tempS.getStationMark().equals("B") && tempS.getDirections() == 0) { | ||
| 215 | + | ||
| 209 | resultLine.setStartStationName(tempS.getStationName()); | 216 | resultLine.setStartStationName(tempS.getStationName()); |
| 210 | - | 217 | + |
| 211 | lineRepository.save(resultLine); | 218 | lineRepository.save(resultLine); |
| 212 | - | 219 | + |
| 213 | } | 220 | } |
| 214 | } | 221 | } |
| 215 | 222 | ||
| 216 | - }; | ||
| 217 | - | ||
| 218 | - if(resultLine.getEndStationName().equals("")) { | ||
| 219 | - | ||
| 220 | - for(int k =0;k<sizeL;k++) { | ||
| 221 | - | 223 | + } |
| 224 | + ; | ||
| 225 | + | ||
| 226 | + if (resultLine.getEndStationName().equals("")) { | ||
| 227 | + | ||
| 228 | + for (int k = 0; k < sizeL; k++) { | ||
| 229 | + | ||
| 222 | StationRoute tempS = stationRoutes.get(k); | 230 | StationRoute tempS = stationRoutes.get(k); |
| 223 | - | ||
| 224 | - if(tempS.getStationMark().equals("E") && tempS.getDirections()==0) { | ||
| 225 | - | 231 | + |
| 232 | + if (tempS.getStationMark().equals("E") && tempS.getDirections() == 0) { | ||
| 233 | + | ||
| 226 | resultLine.setEndStationName(tempS.getStationName()); | 234 | resultLine.setEndStationName(tempS.getStationName()); |
| 227 | - | 235 | + |
| 228 | lineRepository.save(resultLine); | 236 | lineRepository.save(resultLine); |
| 229 | - | 237 | + |
| 230 | } | 238 | } |
| 231 | } | 239 | } |
| 232 | - | 240 | + |
| 233 | } | 241 | } |
| 234 | } | 242 | } |
| 235 | - | 243 | + |
| 236 | /** | 244 | /** |
| 237 | * @Description :保存站点和站点路由信息(系统规划) | 245 | * @Description :保存站点和站点路由信息(系统规划) |
| 238 | * | 246 | * |
| 239 | * @param stationJSON:站点和站点路由json数据 | 247 | * @param stationJSON:站点和站点路由json数据 |
| 240 | * | 248 | * |
| 241 | - * @param sectionDistance: 总距离 | 249 | + * @param sectionDistance: 总距离 |
| 242 | * | 250 | * |
| 243 | - * @param sectionDuration: 总时长 | 251 | + * @param sectionDuration: 总时长 |
| 244 | * | 252 | * |
| 245 | * @param dbType:原坐标类型 | 253 | * @param dbType:原坐标类型 |
| 246 | * | 254 | * |
| @@ -262,110 +270,124 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -262,110 +270,124 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 262 | * | 270 | * |
| 263 | * @throws Exception | 271 | * @throws Exception |
| 264 | */ | 272 | */ |
| 265 | - public Map<String, Object> savaStationAndStationRouteInfo(String stationJSON,double sectionDistance,double sectionDuration,String dbType, | ||
| 266 | - int radius,String shapesType,int destroy,int versions,double sumUpOrDownMileage,int directions,Line resultLine,String baseRes) throws Exception{ | ||
| 267 | - Map<String, Object> paramsMeleageAndDistncDura = new HashMap<String,Object>(); | 273 | + public Map<String, Object> savaStationAndStationRouteInfo(String stationJSON, double sectionDistance, |
| 274 | + double sectionDuration, String dbType, int radius, String shapesType, int destroy, int versions, | ||
| 275 | + double sumUpOrDownMileage, int directions, Line resultLine, String baseRes) throws Exception { | ||
| 276 | + Map<String, Object> paramsMeleageAndDistncDura = new HashMap<String, Object>(); | ||
| 268 | JSONArray stationsArray = JSONArray.parseArray(stationJSON); | 277 | JSONArray stationsArray = JSONArray.parseArray(stationJSON); |
| 269 | - if(stationsArray.size()>0) { | 278 | + if (stationsArray.size() > 0) { |
| 270 | Station loopStartStation = new Station(); | 279 | Station loopStartStation = new Station(); |
| 271 | - for(int i = 0;i <stationsArray.size();i++) { | 280 | + for (int i = 0; i < stationsArray.size(); i++) { |
| 272 | // 站点名称 | 281 | // 站点名称 |
| 273 | - String stationName = stationsArray.getJSONObject(i).equals("") ? "" : stationsArray.getJSONObject(i).get("name").toString(); | ||
| 274 | - Double distance = stationsArray.getJSONObject(i).get("distance").equals("") ? 0.0d : Double.parseDouble(stationsArray.getJSONObject(i).get("distance").toString()); | 282 | + String stationName = stationsArray.getJSONObject(i).equals("") ? "" |
| 283 | + : stationsArray.getJSONObject(i).get("name").toString(); | ||
| 284 | + Double distance = stationsArray.getJSONObject(i).get("distance").equals("") ? 0.0d | ||
| 285 | + : Double.parseDouble(stationsArray.getJSONObject(i).get("distance").toString()); | ||
| 275 | // 转成公里 | 286 | // 转成公里 |
| 276 | - distance = distance/1000; | 287 | + distance = distance / 1000; |
| 277 | BigDecimal d = new BigDecimal(distance); | 288 | BigDecimal d = new BigDecimal(distance); |
| 278 | distance = d.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); | 289 | distance = d.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); |
| 279 | - sectionDistance= distance + sectionDistance; | ||
| 280 | - Double duration = stationsArray.getJSONObject(i).get("duration").equals("") ? 0.0d : Double.parseDouble(stationsArray.getJSONObject(i).get("duration").toString()); | 290 | + sectionDistance = distance + sectionDistance; |
| 291 | + Double duration = stationsArray.getJSONObject(i).get("duration").equals("") ? 0.0d | ||
| 292 | + : Double.parseDouble(stationsArray.getJSONObject(i).get("duration").toString()); | ||
| 281 | // 转成分钟 | 293 | // 转成分钟 |
| 282 | - duration = duration/60; | 294 | + duration = duration / 60; |
| 283 | BigDecimal t = new BigDecimal(duration); | 295 | BigDecimal t = new BigDecimal(duration); |
| 284 | duration = t.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); | 296 | duration = t.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); |
| 285 | sectionDuration = duration + sectionDuration; | 297 | sectionDuration = duration + sectionDuration; |
| 286 | // 百度经纬度坐标 | 298 | // 百度经纬度坐标 |
| 287 | String bJwpoints = ""; | 299 | String bJwpoints = ""; |
| 288 | // 百度坐标经度 | 300 | // 百度坐标经度 |
| 289 | - String bLonx = JSONObject.parseObject(stationsArray.getJSONObject(i).get("potion").toString()).get("lng").toString(); | ||
| 290 | - bLonx = bLonx==null || bLonx.equals("") ? "0" : bLonx; | 301 | + String bLonx = JSONObject.parseObject(stationsArray.getJSONObject(i).get("potion").toString()) |
| 302 | + .get("lng").toString(); | ||
| 303 | + bLonx = bLonx == null || bLonx.equals("") ? "0" : bLonx; | ||
| 291 | // 百度坐标纬度 | 304 | // 百度坐标纬度 |
| 292 | - String bLatx = JSONObject.parseObject(stationsArray.getJSONObject(i).get("potion").toString()).get("lat").toString(); | ||
| 293 | - bLatx = bLatx==null || bLatx.equals("") ? "0" : bLatx; | ||
| 294 | - List<Object[]> stationNameList = repository.findStationName(directions,stationName); | ||
| 295 | - Map<String, Object> isHaveMap = isHaveStationname(bLonx,bLatx,stationNameList); | 305 | + String bLatx = JSONObject.parseObject(stationsArray.getJSONObject(i).get("potion").toString()) |
| 306 | + .get("lat").toString(); | ||
| 307 | + bLatx = bLatx == null || bLatx.equals("") ? "0" : bLatx; | ||
| 308 | + List<Object[]> stationNameList = repository.findStationName(directions, stationName); | ||
| 309 | + Map<String, Object> isHaveMap = isHaveStationname(bLonx, bLatx, stationNameList); | ||
| 296 | // 初始化站点对象 | 310 | // 初始化站点对象 |
| 297 | - Station arg0 = new Station(); | ||
| 298 | - if(Boolean.parseBoolean(isHaveMap.get("isHave").toString())) { | ||
| 299 | - /*Integer stationId = Integer.parseInt(stationNameList.get(0)[1].toString());*/ | 311 | + Station arg0 = new Station(); |
| 312 | + if (Boolean.parseBoolean(isHaveMap.get("isHave").toString())) { | ||
| 313 | + /* | ||
| 314 | + * Integer stationId = Integer.parseInt(stationNameList.get(0)[1].toString()); | ||
| 315 | + */ | ||
| 300 | Integer stationId = Integer.parseInt(isHaveMap.get("id").toString()); | 316 | Integer stationId = Integer.parseInt(isHaveMap.get("id").toString()); |
| 301 | arg0 = repository.findById(stationId).get(); | 317 | arg0 = repository.findById(stationId).get(); |
| 302 | 318 | ||
| 303 | - if (i==stationsArray.size()-1 && resultLine.getLinePlayType() == 1) {// 环线终点和起点引用同一个站 | 319 | + if (i == stationsArray.size() - 1 && resultLine.getLinePlayType() == 1) {// 环线终点和起点引用同一个站 |
| 304 | arg0 = loopStartStation; | 320 | arg0 = loopStartStation; |
| 305 | } else { | 321 | } else { |
| 306 | List<Station> list = new ArrayList<>(); | 322 | List<Station> list = new ArrayList<>(); |
| 307 | list.add(arg0); | 323 | list.add(arg0); |
| 308 | - List<Station> stationlist = JSONArray.parseArray(JSON.toJSONString(list), Station.class); | 324 | + List<Station> stationlist = JSONArray.parseArray(JSON.toJSONString(list), Station.class); |
| 309 | Station station = stationlist.get(0); | 325 | Station station = stationlist.get(0); |
| 310 | // 站点编码 | 326 | // 站点编码 |
| 311 | long stationCode = GetUIDAndCode.getStationId(); | 327 | long stationCode = GetUIDAndCode.getStationId(); |
| 312 | station.setStationCod(String.valueOf(stationCode)); | 328 | station.setStationCod(String.valueOf(stationCode)); |
| 313 | - station.setId((int)stationCode); | 329 | + station.setId((int) stationCode); |
| 314 | station.setCreateDate(null); | 330 | station.setCreateDate(null); |
| 315 | station.setUpdateDate(null); | 331 | station.setUpdateDate(null); |
| 316 | station.setShapesType("r"); | 332 | station.setShapesType("r"); |
| 317 | station.setRadius(80); | 333 | station.setRadius(80); |
| 318 | repository.save(station); | 334 | repository.save(station); |
| 319 | arg0 = station; | 335 | arg0 = station; |
| 320 | - if (i==0 && resultLine.getLinePlayType() == 1) {// 环线终点和起点引用同一个站 | 336 | + if (i == 0 && resultLine.getLinePlayType() == 1) {// 环线终点和起点引用同一个站 |
| 321 | loopStartStation = arg0; | 337 | loopStartStation = arg0; |
| 322 | } | 338 | } |
| 323 | } | 339 | } |
| 324 | - }else { | 340 | + } else { |
| 325 | // 站点编码 | 341 | // 站点编码 |
| 326 | long stationCode = GetUIDAndCode.getStationId(); | 342 | long stationCode = GetUIDAndCode.getStationId(); |
| 327 | arg0.setStationCod(String.valueOf(stationCode)); | 343 | arg0.setStationCod(String.valueOf(stationCode)); |
| 328 | - arg0.setId((int)stationCode); | 344 | + arg0.setId((int) stationCode); |
| 329 | arg0.setStationName(stationName); | 345 | arg0.setStationName(stationName); |
| 330 | // 原坐标类型 | 346 | // 原坐标类型 |
| 331 | arg0.setDbType(dbType); | 347 | arg0.setDbType(dbType); |
| 332 | - String gLonxStr = JSONObject.parseObject(stationsArray.getJSONObject(i).get("wgs").toString()).get("x").equals("") ? null : JSONObject.parseObject(stationsArray.getJSONObject(i).get("wgs").toString()).get("x").toString(); | ||
| 333 | - String gLatyStr = JSONObject.parseObject(stationsArray.getJSONObject(i).get("wgs").toString()).get("y").equals("") ? null : JSONObject.parseObject(stationsArray.getJSONObject(i).get("wgs").toString()).get("y").toString(); | 348 | + String gLonxStr = JSONObject.parseObject(stationsArray.getJSONObject(i).get("wgs").toString()) |
| 349 | + .get("x").equals("") ? null | ||
| 350 | + : JSONObject.parseObject(stationsArray.getJSONObject(i).get("wgs").toString()) | ||
| 351 | + .get("x").toString(); | ||
| 352 | + String gLatyStr = JSONObject.parseObject(stationsArray.getJSONObject(i).get("wgs").toString()) | ||
| 353 | + .get("y").equals("") ? null | ||
| 354 | + : JSONObject.parseObject(stationsArray.getJSONObject(i).get("wgs").toString()) | ||
| 355 | + .get("y").toString(); | ||
| 334 | float gLonx = 0.0f; | 356 | float gLonx = 0.0f; |
| 335 | float gLaty = 0.0f; | 357 | float gLaty = 0.0f; |
| 336 | Location resultPoint = null; | 358 | Location resultPoint = null; |
| 337 | - if(baseRes.equals("No")){ | 359 | + if (baseRes.equals("No")) { |
| 338 | /** BD to WGS坐标 */ | 360 | /** BD to WGS坐标 */ |
| 339 | - resultPoint = FromBDPointToWGSPoint(bLonx,bLatx); | ||
| 340 | - if(gLonxStr==null) | ||
| 341 | - gLonx = (float)resultPoint.getLng(); | 361 | + resultPoint = FromBDPointToWGSPoint(bLonx, bLatx); |
| 362 | + if (gLonxStr == null) | ||
| 363 | + gLonx = (float) resultPoint.getLng(); | ||
| 342 | else | 364 | else |
| 343 | - gLonx = Float.valueOf(gLonxStr); | ||
| 344 | - if(gLatyStr==null) | ||
| 345 | - gLaty = (float)resultPoint.getLat(); | 365 | + gLonx = Float.valueOf(gLonxStr); |
| 366 | + if (gLatyStr == null) | ||
| 367 | + gLaty = (float) resultPoint.getLat(); | ||
| 346 | else | 368 | else |
| 347 | - gLaty = Float.valueOf(gLatyStr); | 369 | + gLaty = Float.valueOf(gLatyStr); |
| 348 | arg0.setgLonx(gLonx); | 370 | arg0.setgLonx(gLonx); |
| 349 | arg0.setgLaty(gLaty); | 371 | arg0.setgLaty(gLaty); |
| 350 | // 百度经纬度 | 372 | // 百度经纬度 |
| 351 | bJwpoints = bLonx + " " + bLatx; | 373 | bJwpoints = bLonx + " " + bLatx; |
| 352 | arg0.setbJwpoints(bJwpoints); | 374 | arg0.setbJwpoints(bJwpoints); |
| 353 | - }else if(baseRes.equals("GCJ02")){ | 375 | + } else if (baseRes.equals("GCJ02")) { |
| 354 | Location bdLoc = TransGPS.LocationMake(Double.valueOf(gLonxStr), Double.valueOf(gLatyStr)); | 376 | Location bdLoc = TransGPS.LocationMake(Double.valueOf(gLonxStr), Double.valueOf(gLatyStr)); |
| 355 | Location location = TransGPS.bd_encrypt(bdLoc); | 377 | Location location = TransGPS.bd_encrypt(bdLoc); |
| 356 | String GCJLng = String.valueOf(location.getLng()); | 378 | String GCJLng = String.valueOf(location.getLng()); |
| 357 | String GCJLat = String.valueOf(location.getLat()); | 379 | String GCJLat = String.valueOf(location.getLat()); |
| 358 | - resultPoint = FromBDPointToWGSPoint(GCJLng,GCJLat); | ||
| 359 | - bJwpoints = GCJLng + " " +GCJLat; | ||
| 360 | - arg0.setgLonx((float)location.getLng()); | ||
| 361 | - arg0.setgLaty((float)location.getLat()); | 380 | + resultPoint = FromBDPointToWGSPoint(GCJLng, GCJLat); |
| 381 | + bJwpoints = GCJLng + " " + GCJLat; | ||
| 382 | + arg0.setgLonx((float) location.getLng()); | ||
| 383 | + arg0.setgLaty((float) location.getLat()); | ||
| 362 | arg0.setbJwpoints(bJwpoints); | 384 | arg0.setbJwpoints(bJwpoints); |
| 363 | - }else if(baseRes.equals("BD09")){ | 385 | + } else if (baseRes.equals("BD09")) { |
| 364 | resultPoint = FromBDPointToWGSPoint(gLonxStr, gLatyStr); | 386 | resultPoint = FromBDPointToWGSPoint(gLonxStr, gLatyStr); |
| 365 | - bJwpoints = gLonxStr+ " " + gLatyStr; | ||
| 366 | - arg0.setgLonx((float)resultPoint.getLng()); | ||
| 367 | - arg0.setgLaty((float)resultPoint.getLat()); | ||
| 368 | - }else if(baseRes.equals("WGS84")){ | 387 | + bJwpoints = gLonxStr + " " + gLatyStr; |
| 388 | + arg0.setgLonx((float) resultPoint.getLng()); | ||
| 389 | + arg0.setgLaty((float) resultPoint.getLat()); | ||
| 390 | + } else if (baseRes.equals("WGS84")) { | ||
| 369 | Location bdLoc = TransGPS.LocationMake(Double.valueOf(gLonxStr), Double.valueOf(gLatyStr)); | 391 | Location bdLoc = TransGPS.LocationMake(Double.valueOf(gLonxStr), Double.valueOf(gLatyStr)); |
| 370 | Location gcjLoc = TransGPS.transformFromWGSToGCJ(bdLoc); | 392 | Location gcjLoc = TransGPS.transformFromWGSToGCJ(bdLoc); |
| 371 | Location bdEn = TransGPS.bd_encrypt(gcjLoc); | 393 | Location bdEn = TransGPS.bd_encrypt(gcjLoc); |
| @@ -382,62 +404,102 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -382,62 +404,102 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 382 | arg0.setVersions(versions); | 404 | arg0.setVersions(versions); |
| 383 | arg0.setbJwpoints(bJwpoints); | 405 | arg0.setbJwpoints(bJwpoints); |
| 384 | // 插入站点信息 | 406 | // 插入站点信息 |
| 385 | - if (i==0 && resultLine.getLinePlayType() == 1) {// 环线终点和起点引用同一个站 | 407 | + if (i == 0 && resultLine.getLinePlayType() == 1) {// 环线终点和起点引用同一个站 |
| 386 | loopStartStation = arg0; | 408 | loopStartStation = arg0; |
| 387 | repository.save(arg0); | 409 | repository.save(arg0); |
| 388 | - } else if (i==stationsArray.size()-1 && resultLine.getLinePlayType() == 1) {// 环线终点和起点引用同一个站 | 410 | + } else if (i == stationsArray.size() - 1 && resultLine.getLinePlayType() == 1) {// 环线终点和起点引用同一个站 |
| 389 | arg0 = loopStartStation; | 411 | arg0 = loopStartStation; |
| 390 | } else { | 412 | } else { |
| 391 | repository.save(arg0); | 413 | repository.save(arg0); |
| 392 | } | 414 | } |
| 393 | 415 | ||
| 394 | } | 416 | } |
| 395 | - // 站点路由对象 | ||
| 396 | - StationRoute route = new StationRoute(); | ||
| 397 | - // 站点名称 | ||
| 398 | - route.setStationName(stationName); | ||
| 399 | - route.setDistances(distance); | ||
| 400 | - sumUpOrDownMileage = sumUpOrDownMileage + distance; | ||
| 401 | - route.setToTime(duration); | ||
| 402 | - // 站点编码 | ||
| 403 | - route.setStationCode(arg0.getStationCod()); | ||
| 404 | - // 站点序号 | ||
| 405 | - route.setStationRouteCode((i+1)*100); | ||
| 406 | - // 站点类型 | ||
| 407 | - if(i==0) { | ||
| 408 | - // 起始站 | ||
| 409 | - route.setStationMark("B"); | ||
| 410 | - }else if(i==stationsArray.size()-1) { | ||
| 411 | - // 终点站 | ||
| 412 | - route.setStationMark("E"); | ||
| 413 | - }else { | ||
| 414 | - // 中途站 | ||
| 415 | - route.setStationMark("Z"); | 417 | + |
| 418 | + Integer version = lineVersionsRepository.findCurrentVersion(resultLine.getId()); | ||
| 419 | + | ||
| 420 | + if (versions == version) { | ||
| 421 | + // 站点路由对象 | ||
| 422 | + StationRoute route = new StationRoute(); | ||
| 423 | + // 站点名称 | ||
| 424 | + route.setStationName(stationName); | ||
| 425 | + route.setDistances(distance); | ||
| 426 | + sumUpOrDownMileage = sumUpOrDownMileage + distance; | ||
| 427 | + route.setToTime(duration); | ||
| 428 | + // 站点编码 | ||
| 429 | + route.setStationCode(arg0.getStationCod()); | ||
| 430 | + // 站点序号 | ||
| 431 | + route.setStationRouteCode((i + 1) * 100); | ||
| 432 | + // 站点类型 | ||
| 433 | + if (i == 0) { | ||
| 434 | + // 起始站 | ||
| 435 | + route.setStationMark("B"); | ||
| 436 | + } else if (i == stationsArray.size() - 1) { | ||
| 437 | + // 终点站 | ||
| 438 | + route.setStationMark("E"); | ||
| 439 | + } else { | ||
| 440 | + // 中途站 | ||
| 441 | + route.setStationMark("Z"); | ||
| 442 | + } | ||
| 443 | + // 版本号(获取线路当前版本) | ||
| 444 | + route.setVersions(versions); | ||
| 445 | + // 站点ID | ||
| 446 | + route.setStation(arg0); | ||
| 447 | + // 方向 | ||
| 448 | + route.setDirections(directions); | ||
| 449 | + // 线路ID | ||
| 450 | + route.setLine(resultLine); | ||
| 451 | + // 线路编码 | ||
| 452 | + route.setLineCode(resultLine.getLineCode()); | ||
| 453 | + route.setDestroy(destroy); | ||
| 454 | + // 插入站点路由信息 | ||
| 455 | + routeRepository.save(route); | ||
| 456 | + } else { | ||
| 457 | + | ||
| 458 | + LsStationRoute route = new LsStationRoute(); | ||
| 459 | + // 站点名称 | ||
| 460 | + route.setStationName(stationName); | ||
| 461 | + route.setDistances(distance); | ||
| 462 | + sumUpOrDownMileage = sumUpOrDownMileage + distance; | ||
| 463 | + route.setToTime(duration); | ||
| 464 | + // 站点编码 | ||
| 465 | + route.setStationCode(arg0.getStationCod()); | ||
| 466 | + // 站点序号 | ||
| 467 | + route.setStationRouteCode((i + 1) * 100); | ||
| 468 | + // 站点类型 | ||
| 469 | + if (i == 0) { | ||
| 470 | + // 起始站 | ||
| 471 | + route.setStationMark("B"); | ||
| 472 | + } else if (i == stationsArray.size() - 1) { | ||
| 473 | + // 终点站 | ||
| 474 | + route.setStationMark("E"); | ||
| 475 | + } else { | ||
| 476 | + // 中途站 | ||
| 477 | + route.setStationMark("Z"); | ||
| 478 | + } | ||
| 479 | + // 版本号(获取线路当前版本) | ||
| 480 | + route.setVersions(versions); | ||
| 481 | + // 站点ID | ||
| 482 | + route.setStation(arg0); | ||
| 483 | + // 方向 | ||
| 484 | + route.setDirections(directions); | ||
| 485 | + // 线路ID | ||
| 486 | + route.setLine(resultLine); | ||
| 487 | + // 线路编码 | ||
| 488 | + route.setLineCode(resultLine.getLineCode()); | ||
| 489 | + route.setDestroy(destroy); | ||
| 490 | + // 插入站点路由信息 | ||
| 491 | + lsStationRouteRepository.save(route); | ||
| 416 | } | 492 | } |
| 417 | - // 版本号(获取线路当前版本) | ||
| 418 | - Integer version = lineVersionsRepository.findCurrentVersion(resultLine.getId()); | ||
| 419 | - route.setVersions(version); | ||
| 420 | - // 站点ID | ||
| 421 | - route.setStation(arg0); | ||
| 422 | - // 方向 | ||
| 423 | - route.setDirections(directions); | ||
| 424 | - // 线路ID | ||
| 425 | - route.setLine(resultLine); | ||
| 426 | - // 线路编码 | ||
| 427 | - route.setLineCode(resultLine.getLineCode()); | ||
| 428 | - route.setDestroy(destroy); | ||
| 429 | - // 插入站点路由信息 | ||
| 430 | - routeRepository.save(route); | ||
| 431 | - | 493 | + |
| 432 | } | 494 | } |
| 433 | paramsMeleageAndDistncDura.put("sumUpOrDownMileage", sumUpOrDownMileage); | 495 | paramsMeleageAndDistncDura.put("sumUpOrDownMileage", sumUpOrDownMileage); |
| 434 | paramsMeleageAndDistncDura.put("sectionDistance", sectionDistance); | 496 | paramsMeleageAndDistncDura.put("sectionDistance", sectionDistance); |
| 435 | paramsMeleageAndDistncDura.put("sectionDuration", sectionDuration); | 497 | paramsMeleageAndDistncDura.put("sectionDuration", sectionDuration); |
| 436 | - paramsMeleageAndDistncDura.put("stationdata",stationsArray); | 498 | + paramsMeleageAndDistncDura.put("stationdata", stationsArray); |
| 437 | } | 499 | } |
| 438 | return paramsMeleageAndDistncDura; | 500 | return paramsMeleageAndDistncDura; |
| 439 | } | 501 | } |
| 440 | - | 502 | + |
| 441 | /** | 503 | /** |
| 442 | * | 504 | * |
| 443 | * | 505 | * |
| @@ -447,93 +509,91 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -447,93 +509,91 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 447 | * | 509 | * |
| 448 | * @param sumUpOrDownMileage:里程(上或者下) | 510 | * @param sumUpOrDownMileage:里程(上或者下) |
| 449 | */ | 511 | */ |
| 450 | - public void updateLineInfoUpOrDownMileage(Line resultLine ,int directions,double sumUpOrDownMileage) { | ||
| 451 | - | 512 | + public void updateLineInfoUpOrDownMileage(Line resultLine, int directions, double sumUpOrDownMileage) { |
| 513 | + | ||
| 452 | List<LineInformation> listLineInfo = informationRepository.findByLine(resultLine); | 514 | List<LineInformation> listLineInfo = informationRepository.findByLine(resultLine); |
| 453 | - | 515 | + |
| 454 | int listLineSize = listLineInfo.size(); | 516 | int listLineSize = listLineInfo.size(); |
| 455 | - | 517 | + |
| 456 | // 不存在线路标准信息则插入 | 518 | // 不存在线路标准信息则插入 |
| 457 | - if(listLineSize==0) { | ||
| 458 | - | 519 | + if (listLineSize == 0) { |
| 520 | + | ||
| 459 | LineInformation paramInfo = new LineInformation(); | 521 | LineInformation paramInfo = new LineInformation(); |
| 460 | - | 522 | + |
| 461 | // 上行 | 523 | // 上行 |
| 462 | - if(directions==0) { | ||
| 463 | - | 524 | + if (directions == 0) { |
| 525 | + | ||
| 464 | paramInfo.setUpMileage(sumUpOrDownMileage); | 526 | paramInfo.setUpMileage(sumUpOrDownMileage); |
| 465 | - | 527 | + |
| 466 | paramInfo.setDownMileage(0.0d); | 528 | paramInfo.setDownMileage(0.0d); |
| 467 | - | ||
| 468 | - paramInfo.setTotalMileage(sumUpOrDownMileage+0.0d); | ||
| 469 | - | 529 | + |
| 530 | + paramInfo.setTotalMileage(sumUpOrDownMileage + 0.0d); | ||
| 531 | + | ||
| 470 | paramInfo.setType("zc"); | 532 | paramInfo.setType("zc"); |
| 471 | - | 533 | + |
| 472 | paramInfo.setLine(resultLine); | 534 | paramInfo.setLine(resultLine); |
| 473 | - | ||
| 474 | - // 下行 | ||
| 475 | - }else if(directions==1) { | ||
| 476 | - | 535 | + |
| 536 | + // 下行 | ||
| 537 | + } else if (directions == 1) { | ||
| 538 | + | ||
| 477 | paramInfo.setUpMileage(0.0d); | 539 | paramInfo.setUpMileage(0.0d); |
| 478 | - | 540 | + |
| 479 | paramInfo.setDownMileage(sumUpOrDownMileage); | 541 | paramInfo.setDownMileage(sumUpOrDownMileage); |
| 480 | - | ||
| 481 | - paramInfo.setTotalMileage(sumUpOrDownMileage+0.0d); | ||
| 482 | - | 542 | + |
| 543 | + paramInfo.setTotalMileage(sumUpOrDownMileage + 0.0d); | ||
| 544 | + | ||
| 483 | paramInfo.setType("zc"); | 545 | paramInfo.setType("zc"); |
| 484 | - | 546 | + |
| 485 | paramInfo.setLine(resultLine); | 547 | paramInfo.setLine(resultLine); |
| 486 | - | 548 | + |
| 487 | } | 549 | } |
| 488 | - | 550 | + |
| 489 | informationRepository.save(paramInfo); | 551 | informationRepository.save(paramInfo); |
| 490 | - | ||
| 491 | - // 存在则更新 | ||
| 492 | - }else if(listLineSize>0) { | ||
| 493 | - | ||
| 494 | - for(int s =0;s<listLineSize;s++) { | ||
| 495 | - | 552 | + |
| 553 | + // 存在则更新 | ||
| 554 | + } else if (listLineSize > 0) { | ||
| 555 | + | ||
| 556 | + for (int s = 0; s < listLineSize; s++) { | ||
| 557 | + | ||
| 496 | LineInformation lineInformation = listLineInfo.get(s); | 558 | LineInformation lineInformation = listLineInfo.get(s); |
| 497 | - | 559 | + |
| 498 | double tempUp = lineInformation.getUpMileage(); | 560 | double tempUp = lineInformation.getUpMileage(); |
| 499 | - | 561 | + |
| 500 | double tempDown = lineInformation.getDownMileage(); | 562 | double tempDown = lineInformation.getDownMileage(); |
| 501 | - | 563 | + |
| 502 | // 上行 | 564 | // 上行 |
| 503 | - if(directions==0) { | ||
| 504 | - | ||
| 505 | - if(tempUp>0.0d){ | ||
| 506 | - | 565 | + if (directions == 0) { |
| 566 | + | ||
| 567 | + if (tempUp > 0.0d) { | ||
| 568 | + | ||
| 507 | continue; | 569 | continue; |
| 508 | } | 570 | } |
| 509 | - | ||
| 510 | - | 571 | + |
| 511 | lineInformation.setUpMileage(sumUpOrDownMileage); | 572 | lineInformation.setUpMileage(sumUpOrDownMileage); |
| 512 | - | ||
| 513 | - lineInformation.setTotalMileage(sumUpOrDownMileage+tempDown); | ||
| 514 | - | ||
| 515 | - | ||
| 516 | - }else if(directions==1) { | ||
| 517 | - | ||
| 518 | - if(tempDown>0.0d){ | ||
| 519 | - | 573 | + |
| 574 | + lineInformation.setTotalMileage(sumUpOrDownMileage + tempDown); | ||
| 575 | + | ||
| 576 | + } else if (directions == 1) { | ||
| 577 | + | ||
| 578 | + if (tempDown > 0.0d) { | ||
| 579 | + | ||
| 520 | continue; | 580 | continue; |
| 521 | } | 581 | } |
| 522 | - | 582 | + |
| 523 | lineInformation.setDownMileage(sumUpOrDownMileage); | 583 | lineInformation.setDownMileage(sumUpOrDownMileage); |
| 524 | - | ||
| 525 | - lineInformation.setTotalMileage(sumUpOrDownMileage+tempUp); | ||
| 526 | - | 584 | + |
| 585 | + lineInformation.setTotalMileage(sumUpOrDownMileage + tempUp); | ||
| 586 | + | ||
| 527 | } | 587 | } |
| 528 | - | 588 | + |
| 529 | informationRepository.save(lineInformation); | 589 | informationRepository.save(lineInformation); |
| 530 | - | 590 | + |
| 531 | } | 591 | } |
| 532 | - | 592 | + |
| 533 | } | 593 | } |
| 534 | - | 594 | + |
| 535 | } | 595 | } |
| 536 | - | 596 | + |
| 537 | /** | 597 | /** |
| 538 | * @Description 保存路段与路段路由信息 | 598 | * @Description 保存路段与路段路由信息 |
| 539 | * | 599 | * |
| @@ -556,141 +616,142 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -556,141 +616,142 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 556 | * @param destroy:是否撤销 | 616 | * @param destroy:是否撤销 |
| 557 | * | 617 | * |
| 558 | */ | 618 | */ |
| 559 | - public void saveSectionAndSectionRouteInfo(String sectionJSON,int directions,Line resultLine,String speedLimitStr, | ||
| 560 | - | ||
| 561 | - double sectionDistance,double sectionDuration,String dbType,int versions,int destroy) throws Exception{ | ||
| 562 | - | 619 | + public void saveSectionAndSectionRouteInfo(String sectionJSON, int directions, Line resultLine, |
| 620 | + String speedLimitStr, | ||
| 621 | + | ||
| 622 | + double sectionDistance, double sectionDuration, String dbType, int versions, int destroy) throws Exception { | ||
| 623 | + | ||
| 563 | BigDecimal t = new BigDecimal(sectionDistance); | 624 | BigDecimal t = new BigDecimal(sectionDistance); |
| 564 | - | 625 | + |
| 565 | sectionDistance = t.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); | 626 | sectionDistance = t.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); |
| 566 | - | ||
| 567 | - | 627 | + |
| 568 | BigDecimal d = new BigDecimal(sectionDuration); | 628 | BigDecimal d = new BigDecimal(sectionDuration); |
| 569 | - | 629 | + |
| 570 | sectionDuration = d.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); | 630 | sectionDuration = d.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); |
| 571 | - | 631 | + |
| 572 | // 转换成JSON数组 | 632 | // 转换成JSON数组 |
| 573 | JSONArray sectionsArray = JSONArray.parseArray(sectionJSON); | 633 | JSONArray sectionsArray = JSONArray.parseArray(sectionJSON); |
| 574 | - | 634 | + |
| 575 | // 原始线状图形坐标集合 | 635 | // 原始线状图形坐标集合 |
| 576 | String sectionsBpoints = ""; | 636 | String sectionsBpoints = ""; |
| 577 | - | 637 | + |
| 578 | // WGS线状图形坐标集合 | 638 | // WGS线状图形坐标集合 |
| 579 | String sectionsWJPpoints = ""; | 639 | String sectionsWJPpoints = ""; |
| 580 | - | 640 | + |
| 581 | // 遍历 | 641 | // 遍历 |
| 582 | - for(int s = 0 ;s<sectionsArray.size();s++) { | ||
| 583 | - | 642 | + for (int s = 0; s < sectionsArray.size(); s++) { |
| 643 | + | ||
| 584 | String pointsLngStr = sectionsArray.getJSONObject(s).get("lng").toString(); | 644 | String pointsLngStr = sectionsArray.getJSONObject(s).get("lng").toString(); |
| 585 | - | 645 | + |
| 586 | String pointsLatStr = sectionsArray.getJSONObject(s).get("lat").toString(); | 646 | String pointsLatStr = sectionsArray.getJSONObject(s).get("lat").toString(); |
| 587 | - | 647 | + |
| 588 | String WGSLngStr = ""; | 648 | String WGSLngStr = ""; |
| 589 | - | 649 | + |
| 590 | String WGSLatStr = ""; | 650 | String WGSLatStr = ""; |
| 591 | - | ||
| 592 | - Location resultPoint = FromBDPointToWGSPoint(pointsLngStr,pointsLatStr); | ||
| 593 | - | 651 | + |
| 652 | + Location resultPoint = FromBDPointToWGSPoint(pointsLngStr, pointsLatStr); | ||
| 653 | + | ||
| 594 | WGSLngStr = String.valueOf(resultPoint.getLng()); | 654 | WGSLngStr = String.valueOf(resultPoint.getLng()); |
| 595 | - | ||
| 596 | - WGSLatStr = String.valueOf(resultPoint.getLat()); | 655 | + |
| 656 | + WGSLatStr = String.valueOf(resultPoint.getLat()); | ||
| 597 | /** to WGS坐标 */ | 657 | /** to WGS坐标 */ |
| 598 | - /*double lng = Double.parseDouble(WGSLngStr); | ||
| 599 | - | ||
| 600 | - double lat = Double.parseDouble(WGSLatStr); | ||
| 601 | - | ||
| 602 | - Location bdLoc = TransGPS.LocationMake(lng, lat); | ||
| 603 | - | ||
| 604 | - Location location = TransGPS.bd_decrypt(bdLoc); | ||
| 605 | - | ||
| 606 | - Location WGSPoint = TransGPS.transformFromGCJToWGS(location);*/ | ||
| 607 | - | ||
| 608 | - // String WGSLngStr = JSONObject.parseObject(sectionsArray.getJSONObject(s).get("WGSpotion").toString()).get("Lng").toString(); | ||
| 609 | - | ||
| 610 | - // String WGSLatStr = JSONObject.parseObject(sectionsArray.getJSONObject(s).get("WGSpotion").toString()).get("Lat").toString(); | ||
| 611 | - | ||
| 612 | - if(s==0) { | ||
| 613 | - | 658 | + /* |
| 659 | + * double lng = Double.parseDouble(WGSLngStr); | ||
| 660 | + * | ||
| 661 | + * double lat = Double.parseDouble(WGSLatStr); | ||
| 662 | + * | ||
| 663 | + * Location bdLoc = TransGPS.LocationMake(lng, lat); | ||
| 664 | + * | ||
| 665 | + * Location location = TransGPS.bd_decrypt(bdLoc); | ||
| 666 | + * | ||
| 667 | + * Location WGSPoint = TransGPS.transformFromGCJToWGS(location); | ||
| 668 | + */ | ||
| 669 | + | ||
| 670 | + // String WGSLngStr = | ||
| 671 | + // JSONObject.parseObject(sectionsArray.getJSONObject(s).get("WGSpotion").toString()).get("Lng").toString(); | ||
| 672 | + | ||
| 673 | + // String WGSLatStr = | ||
| 674 | + // JSONObject.parseObject(sectionsArray.getJSONObject(s).get("WGSpotion").toString()).get("Lat").toString(); | ||
| 675 | + | ||
| 676 | + if (s == 0) { | ||
| 677 | + | ||
| 614 | sectionsBpoints = pointsLngStr + " " + pointsLatStr; | 678 | sectionsBpoints = pointsLngStr + " " + pointsLatStr; |
| 615 | - | 679 | + |
| 616 | sectionsWJPpoints = WGSLngStr + " " + WGSLatStr; | 680 | sectionsWJPpoints = WGSLngStr + " " + WGSLatStr; |
| 617 | - | ||
| 618 | - }else { | ||
| 619 | - | ||
| 620 | - sectionsBpoints = sectionsBpoints + "," + pointsLngStr + " " + pointsLatStr; | ||
| 621 | - | ||
| 622 | - sectionsWJPpoints = sectionsWJPpoints + "," + WGSLngStr + " " + WGSLatStr; | ||
| 623 | - | 681 | + |
| 682 | + } else { | ||
| 683 | + | ||
| 684 | + sectionsBpoints = sectionsBpoints + "," + pointsLngStr + " " + pointsLatStr; | ||
| 685 | + | ||
| 686 | + sectionsWJPpoints = sectionsWJPpoints + "," + WGSLngStr + " " + WGSLatStr; | ||
| 687 | + | ||
| 624 | } | 688 | } |
| 625 | - | ||
| 626 | - | 689 | + |
| 627 | } | 690 | } |
| 628 | - | 691 | + |
| 629 | long sectionMaxId = GetUIDAndCode.getSectionId(); | 692 | long sectionMaxId = GetUIDAndCode.getSectionId(); |
| 630 | - | 693 | + |
| 631 | String sectionCode = String.valueOf(sectionMaxId); | 694 | String sectionCode = String.valueOf(sectionMaxId); |
| 632 | - | ||
| 633 | - int sectionid = (int)sectionMaxId; | ||
| 634 | - | 695 | + |
| 696 | + int sectionid = (int) sectionMaxId; | ||
| 697 | + | ||
| 635 | String upOrDownStr = ""; | 698 | String upOrDownStr = ""; |
| 636 | - | ||
| 637 | - if(directions==0){ | ||
| 638 | - | 699 | + |
| 700 | + if (directions == 0) { | ||
| 701 | + | ||
| 639 | upOrDownStr = "上行路段"; | 702 | upOrDownStr = "上行路段"; |
| 640 | - | ||
| 641 | - }else if(directions==1){ | ||
| 642 | - | 703 | + |
| 704 | + } else if (directions == 1) { | ||
| 705 | + | ||
| 643 | upOrDownStr = "下行路段"; | 706 | upOrDownStr = "下行路段"; |
| 644 | - | 707 | + |
| 645 | } | 708 | } |
| 646 | - | ||
| 647 | - // 路段名称 | ||
| 648 | - String sectionName = resultLine.getName()+upOrDownStr; | ||
| 649 | - | 709 | + |
| 710 | + // 路段名称 | ||
| 711 | + String sectionName = resultLine.getName() + upOrDownStr; | ||
| 712 | + | ||
| 650 | // 交出路 | 713 | // 交出路 |
| 651 | String crosesRoad = ""; | 714 | String crosesRoad = ""; |
| 652 | - | 715 | + |
| 653 | // 终止节点 | 716 | // 终止节点 |
| 654 | String endNode = ""; | 717 | String endNode = ""; |
| 655 | - | 718 | + |
| 656 | // 开始节点 | 719 | // 开始节点 |
| 657 | String startNode = ""; | 720 | String startNode = ""; |
| 658 | - | 721 | + |
| 659 | // 中间节点 | 722 | // 中间节点 |
| 660 | String middleNode = ""; | 723 | String middleNode = ""; |
| 661 | - | 724 | + |
| 662 | // WGS坐标点集合 | 725 | // WGS坐标点集合 |
| 663 | - String gsectionVector = "LINESTRING(" + sectionsWJPpoints +")"; | ||
| 664 | - | 726 | + String gsectionVector = "LINESTRING(" + sectionsWJPpoints + ")"; |
| 727 | + | ||
| 665 | // 原坐标点集合 | 728 | // 原坐标点集合 |
| 666 | String bsectionVector = "LINESTRING(" + sectionsBpoints + ")"; | 729 | String bsectionVector = "LINESTRING(" + sectionsBpoints + ")"; |
| 667 | - | 730 | + |
| 668 | // 城建坐标点集合 | 731 | // 城建坐标点集合 |
| 669 | String csectionVector = null; | 732 | String csectionVector = null; |
| 670 | - | 733 | + |
| 671 | // 路段类型 | 734 | // 路段类型 |
| 672 | String sectionType = ""; | 735 | String sectionType = ""; |
| 673 | - | 736 | + |
| 674 | // 道路编码 | 737 | // 道路编码 |
| 675 | String roadCoding = ""; | 738 | String roadCoding = ""; |
| 676 | - | 739 | + |
| 677 | // 限速 | 740 | // 限速 |
| 678 | double speedLimit = Double.parseDouble(speedLimitStr); | 741 | double speedLimit = Double.parseDouble(speedLimitStr); |
| 679 | - | 742 | + |
| 680 | // 说明 | 743 | // 说明 |
| 681 | String descriptions = ""; | 744 | String descriptions = ""; |
| 682 | - | 745 | + |
| 683 | // 路段保存 | 746 | // 路段保存 |
| 684 | - sectionRepository.systemSave(sectionCode, sectionName, crosesRoad, endNode, startNode, | ||
| 685 | - | ||
| 686 | - middleNode, gsectionVector, bsectionVector, sectionType, csectionVector, | ||
| 687 | - | ||
| 688 | - roadCoding, sectionDistance, sectionDuration, dbType, speedLimit, | ||
| 689 | - | ||
| 690 | - descriptions, versions,sectionid); | ||
| 691 | - | ||
| 692 | - | ||
| 693 | - | 747 | + sectionRepository.systemSave(sectionCode, sectionName, crosesRoad, endNode, startNode, |
| 748 | + | ||
| 749 | + middleNode, gsectionVector, bsectionVector, sectionType, csectionVector, | ||
| 750 | + | ||
| 751 | + roadCoding, sectionDistance, sectionDuration, dbType, speedLimit, | ||
| 752 | + | ||
| 753 | + descriptions, versions, sectionid); | ||
| 754 | + | ||
| 694 | Section section = sectionRepository.findById(sectionid).get(); | 755 | Section section = sectionRepository.findById(sectionid).get(); |
| 695 | // 路段路由 | 756 | // 路段路由 |
| 696 | SectionRoute sectionRoute = new SectionRoute(); | 757 | SectionRoute sectionRoute = new SectionRoute(); |
| @@ -711,45 +772,46 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -711,45 +772,46 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 711 | sectionRoute.setDirections(directions); | 772 | sectionRoute.setDirections(directions); |
| 712 | // 路段路由保存 | 773 | // 路段路由保存 |
| 713 | sectionRouteRepository.save(sectionRoute); | 774 | sectionRouteRepository.save(sectionRoute); |
| 714 | - | 775 | + |
| 715 | } | 776 | } |
| 716 | - public Map<String, Object> isHaveStationname(String jd,String wd,List<Object[]> stationNameList) { | ||
| 717 | - Map<String, Object> rsM = new HashMap<String ,Object>(); | 777 | + |
| 778 | + public Map<String, Object> isHaveStationname(String jd, String wd, List<Object[]> stationNameList) { | ||
| 779 | + Map<String, Object> rsM = new HashMap<String, Object>(); | ||
| 718 | boolean temp = false; | 780 | boolean temp = false; |
| 719 | - if(stationNameList.size()>0) { | ||
| 720 | - if(jd.equals("0") || wd.equals("0")) { | 781 | + if (stationNameList.size() > 0) { |
| 782 | + if (jd.equals("0") || wd.equals("0")) { | ||
| 721 | rsM.put("id", stationNameList.get(0)[1]); | 783 | rsM.put("id", stationNameList.get(0)[1]); |
| 722 | temp = true; | 784 | temp = true; |
| 723 | - }else{ | ||
| 724 | - Point p1 = new Point(Double.parseDouble(jd),Double.parseDouble(wd)); | ||
| 725 | - for(int k = 0 ; k <stationNameList.size();k++) { | 785 | + } else { |
| 786 | + Point p1 = new Point(Double.parseDouble(jd), Double.parseDouble(wd)); | ||
| 787 | + for (int k = 0; k < stationNameList.size(); k++) { | ||
| 726 | String bJwpoints[] = stationNameList.get(k)[0].toString().split(" "); | 788 | String bJwpoints[] = stationNameList.get(k)[0].toString().split(" "); |
| 727 | - Point p2 = new Point(Double.parseDouble(bJwpoints[0]),Double.parseDouble(bJwpoints[1])); | 789 | + Point p2 = new Point(Double.parseDouble(bJwpoints[0]), Double.parseDouble(bJwpoints[1])); |
| 728 | double jl = GeoUtils.getDistance(p1, p2); | 790 | double jl = GeoUtils.getDistance(p1, p2); |
| 729 | - if(jl<=60d) { | 791 | + if (jl <= 60d) { |
| 730 | rsM.put("id", stationNameList.get(k)[1]); | 792 | rsM.put("id", stationNameList.get(k)[1]); |
| 731 | temp = true; | 793 | temp = true; |
| 732 | break; | 794 | break; |
| 733 | } | 795 | } |
| 734 | } | 796 | } |
| 735 | } | 797 | } |
| 736 | - } | 798 | + } |
| 737 | rsM.put("isHave", temp); | 799 | rsM.put("isHave", temp); |
| 738 | return rsM; | 800 | return rsM; |
| 739 | } | 801 | } |
| 740 | - | 802 | + |
| 741 | /** | 803 | /** |
| 742 | * @Description :TODO(新增站点保存) | 804 | * @Description :TODO(新增站点保存) |
| 743 | * | 805 | * |
| 744 | * @param map <bJwpoints:中心点百度坐标;bPolygonGrid:多边形图形百度坐标;dbType:原坐标类型; | 806 | * @param map <bJwpoints:中心点百度坐标;bPolygonGrid:多边形图形百度坐标;dbType:原坐标类型; |
| 745 | * | 807 | * |
| 746 | - * descriptions:说明;destroy:是否撤销;directions:方向;distances:到站距离;gJwpoints:中心点WGS坐标; | 808 | + * descriptions:说明;destroy:是否撤销;directions:方向;distances:到站距离;gJwpoints:中心点WGS坐标; |
| 747 | * | 809 | * |
| 748 | - * gPolygonGrid:多边形图形WGS坐标;lineId:线路ID;radius:圆半径;roadCoding:道路编码;shapesType:图形类型; | 810 | + * gPolygonGrid:多边形图形WGS坐标;lineId:线路ID;radius:圆半径;roadCoding:道路编码;shapesType:图形类型; |
| 749 | * | 811 | * |
| 750 | - * stationCod:站点编码;stationMark:站点类型;stationName:站点名称;stationRouteCode:站点序号;toTime:到站时间 | ||
| 751 | - * | ||
| 752 | - * versions:版本号;x:城建坐标x;y:城建坐标y> | 812 | + * stationCod:站点编码;stationMark:站点类型;stationName:站点名称;stationRouteCode:站点序号;toTime:到站时间 |
| 813 | + * | ||
| 814 | + * versions:版本号;x:城建坐标x;y:城建坐标y> | ||
| 753 | * | 815 | * |
| 754 | * @return Map<String, Object> <SUCCESS ; ERROR> | 816 | * @return Map<String, Object> <SUCCESS ; ERROR> |
| 755 | */ | 817 | */ |
| @@ -767,15 +829,16 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -767,15 +829,16 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 767 | // 行业编码 | 829 | // 行业编码 |
| 768 | String industryCode = map.get("industryCode").equals("") ? "" : map.get("industryCode").toString(); | 830 | String industryCode = map.get("industryCode").equals("") ? "" : map.get("industryCode").toString(); |
| 769 | // 方向 | 831 | // 方向 |
| 770 | - Integer directions = map.get("directions").equals("") ? null : Integer.parseInt(map.get("directions").toString()); | 832 | + Integer directions = map.get("directions").equals("") ? null |
| 833 | + : Integer.parseInt(map.get("directions").toString()); | ||
| 771 | // 原坐标点 | 834 | // 原坐标点 |
| 772 | String bJwpoints = map.get("bJwpoints").equals("") ? "" : map.get("bJwpoints").toString(); | 835 | String bJwpoints = map.get("bJwpoints").equals("") ? "" : map.get("bJwpoints").toString(); |
| 773 | String bJwpointsArray[] = null; | 836 | String bJwpointsArray[] = null; |
| 774 | - if(bJwpoints!=null) { | 837 | + if (bJwpoints != null) { |
| 775 | bJwpointsArray = bJwpoints.split(" "); | 838 | bJwpointsArray = bJwpoints.split(" "); |
| 776 | } | 839 | } |
| 777 | - List<Object[]> stationNameList = repository.findStationName(directions,zdmc); | ||
| 778 | - Map<String, Object> isHaveMap = isHaveStationname(bJwpointsArray[0],bJwpointsArray[1],stationNameList); | 840 | + List<Object[]> stationNameList = repository.findStationName(directions, zdmc); |
| 841 | + Map<String, Object> isHaveMap = isHaveStationname(bJwpointsArray[0], bJwpointsArray[1], stationNameList); | ||
| 779 | // 是否撤销 | 842 | // 是否撤销 |
| 780 | Integer destroy = map.get("destroy").equals("") ? null : Integer.parseInt(map.get("destroy").toString()); | 843 | Integer destroy = map.get("destroy").equals("") ? null : Integer.parseInt(map.get("destroy").toString()); |
| 781 | // 版本 | 844 | // 版本 |
| @@ -793,9 +856,9 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -793,9 +856,9 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 793 | // 创建人 | 856 | // 创建人 |
| 794 | Integer createBy = map.get("createBy").equals("") ? null : Integer.parseInt(map.get("createBy").toString()); | 857 | Integer createBy = map.get("createBy").equals("") ? null : Integer.parseInt(map.get("createBy").toString()); |
| 795 | // 修改人 | 858 | // 修改人 |
| 796 | - Integer updateBy = map.get("updateBy").equals("") ? null : Integer.parseInt(map.get("updateBy").toString()); | 859 | + Integer updateBy = map.get("updateBy").equals("") ? null : Integer.parseInt(map.get("updateBy").toString()); |
| 797 | // 城建坐标经度 | 860 | // 城建坐标经度 |
| 798 | - Float x = map.get("x").equals("") ? null : Float.parseFloat(map.get("x").toString()); | 861 | + Float x = map.get("x").equals("") ? null : Float.parseFloat(map.get("x").toString()); |
| 799 | // 城建坐标纬度 | 862 | // 城建坐标纬度 |
| 800 | Float y = map.get("y").equals("") ? null : Float.parseFloat(map.get("y").toString()); | 863 | Float y = map.get("y").equals("") ? null : Float.parseFloat(map.get("y").toString()); |
| 801 | // 道路编码 | 864 | // 道路编码 |
| @@ -806,46 +869,48 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -806,46 +869,48 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 806 | Float gLonx = null; | 869 | Float gLonx = null; |
| 807 | // WGS纬度 | 870 | // WGS纬度 |
| 808 | Float gLaty = null; | 871 | Float gLaty = null; |
| 809 | - if(bJwpointsArray.length>0) { | ||
| 810 | - Location resultPoint = FromBDPointToWGSPoint(bJwpointsArray[0],bJwpointsArray[1]); | ||
| 811 | - gLonx = (float)resultPoint.getLng(); | ||
| 812 | - gLaty = (float)resultPoint.getLat(); | 872 | + if (bJwpointsArray.length > 0) { |
| 873 | + Location resultPoint = FromBDPointToWGSPoint(bJwpointsArray[0], bJwpointsArray[1]); | ||
| 874 | + gLonx = (float) resultPoint.getLng(); | ||
| 875 | + gLaty = (float) resultPoint.getLat(); | ||
| 813 | } | 876 | } |
| 814 | // 多边形原坐标点集合 | 877 | // 多边形原坐标点集合 |
| 815 | String bPloygonGrid = map.get("bPolygonGrid").equals("") ? "" : map.get("bPolygonGrid").toString(); | 878 | String bPloygonGrid = map.get("bPolygonGrid").equals("") ? "" : map.get("bPolygonGrid").toString(); |
| 816 | // 多边形WGS坐标点集合 | 879 | // 多边形WGS坐标点集合 |
| 817 | - String gPloygonGrid =""; | ||
| 818 | - if(!bPloygonGrid.equals("")) { | 880 | + String gPloygonGrid = ""; |
| 881 | + if (!bPloygonGrid.equals("")) { | ||
| 819 | String bPloygonGridArray[] = bPloygonGrid.split(","); | 882 | String bPloygonGridArray[] = bPloygonGrid.split(","); |
| 820 | int bLen_ = bPloygonGridArray.length; | 883 | int bLen_ = bPloygonGridArray.length; |
| 821 | - for(int b = 0 ;b<bLen_;b++) { | ||
| 822 | - String tempArray[]= bPloygonGridArray[b].split(" "); | ||
| 823 | - Location resultPoint = FromBDPointToWGSPoint(tempArray[0],tempArray[1]); | ||
| 824 | - if(b==0) { | ||
| 825 | - gPloygonGrid = String.valueOf(resultPoint.getLng()) + " " + String.valueOf(resultPoint.getLat()); | ||
| 826 | - }else { | ||
| 827 | - gPloygonGrid = gPloygonGrid + ',' + String.valueOf(resultPoint.getLng()) + " " + String.valueOf(resultPoint.getLat()); | ||
| 828 | - } | 884 | + for (int b = 0; b < bLen_; b++) { |
| 885 | + String tempArray[] = bPloygonGridArray[b].split(" "); | ||
| 886 | + Location resultPoint = FromBDPointToWGSPoint(tempArray[0], tempArray[1]); | ||
| 887 | + if (b == 0) { | ||
| 888 | + gPloygonGrid = String.valueOf(resultPoint.getLng()) + " " | ||
| 889 | + + String.valueOf(resultPoint.getLat()); | ||
| 890 | + } else { | ||
| 891 | + gPloygonGrid = gPloygonGrid + ',' + String.valueOf(resultPoint.getLng()) + " " | ||
| 892 | + + String.valueOf(resultPoint.getLat()); | ||
| 893 | + } | ||
| 829 | } | 894 | } |
| 830 | } | 895 | } |
| 831 | - if(bPloygonGrid.equals("")) | 896 | + if (bPloygonGrid.equals("")) |
| 832 | bPloygonGrid = null; | 897 | bPloygonGrid = null; |
| 833 | else | 898 | else |
| 834 | - bPloygonGrid = "POLYGON((" + bPloygonGrid +"))"; | ||
| 835 | - if(gPloygonGrid.equals("")) | 899 | + bPloygonGrid = "POLYGON((" + bPloygonGrid + "))"; |
| 900 | + if (gPloygonGrid.equals("")) | ||
| 836 | gPloygonGrid = null; | 901 | gPloygonGrid = null; |
| 837 | else | 902 | else |
| 838 | - gPloygonGrid = "POLYGON((" + gPloygonGrid +"))"; | 903 | + gPloygonGrid = "POLYGON((" + gPloygonGrid + "))"; |
| 839 | // 保存站点 | 904 | // 保存站点 |
| 840 | - repository.stationSave(stationCod, zdmc, roadCoding, dbType, bJwpoints, | ||
| 841 | - gLonx, gLaty, x, y, gPloygonGrid,bPloygonGrid, destroy, radius, | ||
| 842 | - shapesType, versions, descriptions, createBy, updateBy,stationId); | 905 | + repository.stationSave(stationCod, zdmc, roadCoding, dbType, bJwpoints, gLonx, gLaty, x, y, gPloygonGrid, |
| 906 | + bPloygonGrid, destroy, radius, shapesType, versions, descriptions, createBy, updateBy, stationId); | ||
| 843 | Station station = repository.findById(stationId).get(); | 907 | Station station = repository.findById(stationId).get(); |
| 844 | - | ||
| 845 | - if(map.get("status") == null || Integer.parseInt(map.get("status").toString()) == 1) { | 908 | + |
| 909 | + if (map.get("status") == null || Integer.parseInt(map.get("status").toString()) == 1) { | ||
| 846 | StationRoute arg0 = new StationRoute(); | 910 | StationRoute arg0 = new StationRoute(); |
| 847 | // 距离 | 911 | // 距离 |
| 848 | - Double distances = map.get("distances").equals("") ? 0.0d : Double.parseDouble(map.get("distances").toString()); | 912 | + Double distances = map.get("distances").equals("") ? 0.0d |
| 913 | + : Double.parseDouble(map.get("distances").toString()); | ||
| 849 | // 时间 | 914 | // 时间 |
| 850 | Double toTime = map.get("toTime").equals("") ? 0.0d : Double.parseDouble(map.get("toTime").toString()); | 915 | Double toTime = map.get("toTime").equals("") ? 0.0d : Double.parseDouble(map.get("toTime").toString()); |
| 851 | // 站点路由名称 | 916 | // 站点路由名称 |
| @@ -855,14 +920,15 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -855,14 +920,15 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 855 | // 线路信息 | 920 | // 线路信息 |
| 856 | Line resultLine = lineRepository.findById(line).get(); | 921 | Line resultLine = lineRepository.findById(line).get(); |
| 857 | // 站点路由序号 | 922 | // 站点路由序号 |
| 858 | - String stationRouteCodeStr = map.get("stationRouteCode").equals("") ? "" : map.get("stationRouteCode").toString(); | 923 | + String stationRouteCodeStr = map.get("stationRouteCode").equals("") ? "" |
| 924 | + : map.get("stationRouteCode").toString(); | ||
| 859 | // 站点类型 | 925 | // 站点类型 |
| 860 | String stationMark = map.get("stationMark").equals("") ? "" : map.get("stationMark").toString(); | 926 | String stationMark = map.get("stationMark").equals("") ? "" : map.get("stationMark").toString(); |
| 861 | Integer stationRouteCode = null; | 927 | Integer stationRouteCode = null; |
| 862 | - if(stationRouteCodeStr!="") { | ||
| 863 | - String stationRouteCodeArray [] = stationRouteCodeStr.split("_"); | ||
| 864 | - stationRouteCode = Integer.parseInt(stationRouteCodeArray[0].toString())+1; | ||
| 865 | - }else { | 928 | + if (stationRouteCodeStr != "") { |
| 929 | + String stationRouteCodeArray[] = stationRouteCodeStr.split("_"); | ||
| 930 | + stationRouteCode = Integer.parseInt(stationRouteCodeArray[0].toString()) + 1; | ||
| 931 | + } else { | ||
| 866 | stationRouteCode = 100; | 932 | stationRouteCode = 100; |
| 867 | } | 933 | } |
| 868 | // 线路 | 934 | // 线路 |
| @@ -893,10 +959,11 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -893,10 +959,11 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 893 | arg0.setDescriptions(descriptions); | 959 | arg0.setDescriptions(descriptions); |
| 894 | routeRepository.stationUpdStationRouteCode(line, directions, stationRouteCode); | 960 | routeRepository.stationUpdStationRouteCode(line, directions, stationRouteCode); |
| 895 | routeRepository.save(arg0); | 961 | routeRepository.save(arg0); |
| 896 | - }else { | 962 | + } else { |
| 897 | LsStationRoute arg0 = new LsStationRoute(); | 963 | LsStationRoute arg0 = new LsStationRoute(); |
| 898 | // 距离 | 964 | // 距离 |
| 899 | - Double distances = map.get("distances").equals("") ? 0.0d : Double.parseDouble(map.get("distances").toString()); | 965 | + Double distances = map.get("distances").equals("") ? 0.0d |
| 966 | + : Double.parseDouble(map.get("distances").toString()); | ||
| 900 | // 时间 | 967 | // 时间 |
| 901 | Double toTime = map.get("toTime").equals("") ? 0.0d : Double.parseDouble(map.get("toTime").toString()); | 968 | Double toTime = map.get("toTime").equals("") ? 0.0d : Double.parseDouble(map.get("toTime").toString()); |
| 902 | // 站点路由名称 | 969 | // 站点路由名称 |
| @@ -906,14 +973,15 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -906,14 +973,15 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 906 | // 线路信息 | 973 | // 线路信息 |
| 907 | Line resultLine = lineRepository.findById(line).get(); | 974 | Line resultLine = lineRepository.findById(line).get(); |
| 908 | // 站点路由序号 | 975 | // 站点路由序号 |
| 909 | - String stationRouteCodeStr = map.get("stationRouteCode").equals("") ? "" : map.get("stationRouteCode").toString(); | 976 | + String stationRouteCodeStr = map.get("stationRouteCode").equals("") ? "" |
| 977 | + : map.get("stationRouteCode").toString(); | ||
| 910 | // 站点类型 | 978 | // 站点类型 |
| 911 | String stationMark = map.get("stationMark").equals("") ? "" : map.get("stationMark").toString(); | 979 | String stationMark = map.get("stationMark").equals("") ? "" : map.get("stationMark").toString(); |
| 912 | Integer stationRouteCode = null; | 980 | Integer stationRouteCode = null; |
| 913 | - if(stationRouteCodeStr!="") { | ||
| 914 | - String stationRouteCodeArray [] = stationRouteCodeStr.split("_"); | ||
| 915 | - stationRouteCode = Integer.parseInt(stationRouteCodeArray[0].toString())+1; | ||
| 916 | - }else { | 981 | + if (stationRouteCodeStr != "") { |
| 982 | + String stationRouteCodeArray[] = stationRouteCodeStr.split("_"); | ||
| 983 | + stationRouteCode = Integer.parseInt(stationRouteCodeArray[0].toString()) + 1; | ||
| 984 | + } else { | ||
| 917 | stationRouteCode = 100; | 985 | stationRouteCode = 100; |
| 918 | } | 986 | } |
| 919 | // 线路 | 987 | // 线路 |
| @@ -945,9 +1013,7 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -945,9 +1013,7 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 945 | lsStationRouteRepository.stationUpdStationRouteCode(line, directions, stationRouteCode); | 1013 | lsStationRouteRepository.stationUpdStationRouteCode(line, directions, stationRouteCode); |
| 946 | lsStationRouteRepository.save(arg0); | 1014 | lsStationRouteRepository.save(arg0); |
| 947 | } | 1015 | } |
| 948 | - | ||
| 949 | - | ||
| 950 | - | 1016 | + |
| 951 | resultMap.put("status", ResponseCode.SUCCESS); | 1017 | resultMap.put("status", ResponseCode.SUCCESS); |
| 952 | } catch (Exception e) { | 1018 | } catch (Exception e) { |
| 953 | resultMap.put("status", ResponseCode.ERROR); | 1019 | resultMap.put("status", ResponseCode.ERROR); |
| @@ -955,7 +1021,7 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -955,7 +1021,7 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 955 | } | 1021 | } |
| 956 | return resultMap; | 1022 | return resultMap; |
| 957 | } | 1023 | } |
| 958 | - | 1024 | + |
| 959 | /** | 1025 | /** |
| 960 | * @Description :TODO(新增缓存站点保存) | 1026 | * @Description :TODO(新增缓存站点保存) |
| 961 | */ | 1027 | */ |
| @@ -965,30 +1031,31 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -965,30 +1031,31 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 965 | Map<String, Object> resultMap = new HashMap<String, Object>(); | 1031 | Map<String, Object> resultMap = new HashMap<String, Object>(); |
| 966 | try { | 1032 | try { |
| 967 | // 站点编码 , 行业编码 | 1033 | // 站点编码 , 行业编码 |
| 968 | - String stationCod = "",industryCode = ""; | 1034 | + String stationCod = "", industryCode = ""; |
| 969 | // 站点ID | 1035 | // 站点ID |
| 970 | Integer stationId = null; | 1036 | Integer stationId = null; |
| 971 | // 站点名称 | 1037 | // 站点名称 |
| 972 | String zdmc = map.get("zdmc").equals("") ? "" : map.get("zdmc").toString(); | 1038 | String zdmc = map.get("zdmc").equals("") ? "" : map.get("zdmc").toString(); |
| 973 | // 方向 | 1039 | // 方向 |
| 974 | - Integer directions = map.get("directions").equals("") ? null : Integer.parseInt(map.get("directions").toString()); | 1040 | + Integer directions = map.get("directions").equals("") ? null |
| 1041 | + : Integer.parseInt(map.get("directions").toString()); | ||
| 975 | // 原坐标点 | 1042 | // 原坐标点 |
| 976 | String bJwpoints = map.get("bJwpoints").equals("") ? "" : map.get("bJwpoints").toString(); | 1043 | String bJwpoints = map.get("bJwpoints").equals("") ? "" : map.get("bJwpoints").toString(); |
| 977 | String bJwpointsArray[] = null; | 1044 | String bJwpointsArray[] = null; |
| 978 | - if(bJwpoints!=null) { | 1045 | + if (bJwpoints != null) { |
| 979 | bJwpointsArray = bJwpoints.split(" "); | 1046 | bJwpointsArray = bJwpoints.split(" "); |
| 980 | } | 1047 | } |
| 981 | - List<Object[]> stationNameList = repository.findStationName(directions,zdmc); | ||
| 982 | - Map<String, Object> isHaveMap = isHaveStationname(bJwpointsArray[0],bJwpointsArray[1],stationNameList); | 1048 | + List<Object[]> stationNameList = repository.findStationName(directions, zdmc); |
| 1049 | + Map<String, Object> isHaveMap = isHaveStationname(bJwpointsArray[0], bJwpointsArray[1], stationNameList); | ||
| 983 | // 是否撤销 | 1050 | // 是否撤销 |
| 984 | Integer destroy = map.get("destroy").equals("") ? null : Integer.parseInt(map.get("destroy").toString()); | 1051 | Integer destroy = map.get("destroy").equals("") ? null : Integer.parseInt(map.get("destroy").toString()); |
| 985 | // 版本 | 1052 | // 版本 |
| 986 | Integer versions = map.get("versions").equals("") ? null : Integer.parseInt(map.get("versions").toString()); | 1053 | Integer versions = map.get("versions").equals("") ? null : Integer.parseInt(map.get("versions").toString()); |
| 987 | // 说明 | 1054 | // 说明 |
| 988 | String descriptions = map.get("descriptions").equals("") ? "" : map.get("descriptions").toString(); | 1055 | String descriptions = map.get("descriptions").equals("") ? "" : map.get("descriptions").toString(); |
| 989 | - if(Boolean.parseBoolean(isHaveMap.get("isHave").toString())) { | 1056 | + if (Boolean.parseBoolean(isHaveMap.get("isHave").toString())) { |
| 990 | stationId = Integer.parseInt(isHaveMap.get("id").toString()); | 1057 | stationId = Integer.parseInt(isHaveMap.get("id").toString()); |
| 991 | - }else { | 1058 | + } else { |
| 992 | // 站点编码 | 1059 | // 站点编码 |
| 993 | stationCod = map.get("stationCod").equals("") ? "" : map.get("stationCod").toString(); | 1060 | stationCod = map.get("stationCod").equals("") ? "" : map.get("stationCod").toString(); |
| 994 | // 站点ID | 1061 | // 站点ID |
| @@ -998,11 +1065,13 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -998,11 +1065,13 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 998 | // 图形类型 | 1065 | // 图形类型 |
| 999 | String shapesType = map.get("shapesType").equals("") ? "" : map.get("shapesType").toString(); | 1066 | String shapesType = map.get("shapesType").equals("") ? "" : map.get("shapesType").toString(); |
| 1000 | // 创建人 | 1067 | // 创建人 |
| 1001 | - Integer createBy = map.get("createBy").equals("") ? null : Integer.parseInt(map.get("createBy").toString()); | 1068 | + Integer createBy = map.get("createBy").equals("") ? null |
| 1069 | + : Integer.parseInt(map.get("createBy").toString()); | ||
| 1002 | // 修改人 | 1070 | // 修改人 |
| 1003 | - Integer updateBy = map.get("updateBy").equals("") ? null : Integer.parseInt(map.get("updateBy").toString()); | 1071 | + Integer updateBy = map.get("updateBy").equals("") ? null |
| 1072 | + : Integer.parseInt(map.get("updateBy").toString()); | ||
| 1004 | // 城建坐标经度 | 1073 | // 城建坐标经度 |
| 1005 | - Float x = map.get("x").equals("") ? null : Float.parseFloat(map.get("x").toString()); | 1074 | + Float x = map.get("x").equals("") ? null : Float.parseFloat(map.get("x").toString()); |
| 1006 | // 城建坐标纬度 | 1075 | // 城建坐标纬度 |
| 1007 | Float y = map.get("y").equals("") ? null : Float.parseFloat(map.get("y").toString()); | 1076 | Float y = map.get("y").equals("") ? null : Float.parseFloat(map.get("y").toString()); |
| 1008 | // 道路编码 | 1077 | // 道路编码 |
| @@ -1013,47 +1082,50 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -1013,47 +1082,50 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 1013 | Float gLonx = null; | 1082 | Float gLonx = null; |
| 1014 | // WGS纬度 | 1083 | // WGS纬度 |
| 1015 | Float gLaty = null; | 1084 | Float gLaty = null; |
| 1016 | - if(bJwpointsArray.length>0) { | ||
| 1017 | - Location resultPoint = FromBDPointToWGSPoint(bJwpointsArray[0],bJwpointsArray[1]); | ||
| 1018 | - gLonx = (float)resultPoint.getLng(); | ||
| 1019 | - gLaty = (float)resultPoint.getLat(); | 1085 | + if (bJwpointsArray.length > 0) { |
| 1086 | + Location resultPoint = FromBDPointToWGSPoint(bJwpointsArray[0], bJwpointsArray[1]); | ||
| 1087 | + gLonx = (float) resultPoint.getLng(); | ||
| 1088 | + gLaty = (float) resultPoint.getLat(); | ||
| 1020 | } | 1089 | } |
| 1021 | // 多边形原坐标点集合 | 1090 | // 多边形原坐标点集合 |
| 1022 | String bPloygonGrid = map.get("bPolygonGrid").equals("") ? "" : map.get("bPolygonGrid").toString(); | 1091 | String bPloygonGrid = map.get("bPolygonGrid").equals("") ? "" : map.get("bPolygonGrid").toString(); |
| 1023 | // 多边形WGS坐标点集合 | 1092 | // 多边形WGS坐标点集合 |
| 1024 | - String gPloygonGrid =""; | ||
| 1025 | - if(!bPloygonGrid.equals("")) { | 1093 | + String gPloygonGrid = ""; |
| 1094 | + if (!bPloygonGrid.equals("")) { | ||
| 1026 | String bPloygonGridArray[] = bPloygonGrid.split(","); | 1095 | String bPloygonGridArray[] = bPloygonGrid.split(","); |
| 1027 | int bLen_ = bPloygonGridArray.length; | 1096 | int bLen_ = bPloygonGridArray.length; |
| 1028 | - for(int b = 0 ;b<bLen_;b++) { | ||
| 1029 | - String tempArray[]= bPloygonGridArray[b].split(" "); | ||
| 1030 | - Location resultPoint = FromBDPointToWGSPoint(tempArray[0],tempArray[1]); | ||
| 1031 | - if(b==0) { | ||
| 1032 | - gPloygonGrid = String.valueOf(resultPoint.getLng()) + " " + String.valueOf(resultPoint.getLat()); | ||
| 1033 | - }else { | ||
| 1034 | - gPloygonGrid = gPloygonGrid + ',' + String.valueOf(resultPoint.getLng()) + " " + String.valueOf(resultPoint.getLat()); | ||
| 1035 | - } | 1097 | + for (int b = 0; b < bLen_; b++) { |
| 1098 | + String tempArray[] = bPloygonGridArray[b].split(" "); | ||
| 1099 | + Location resultPoint = FromBDPointToWGSPoint(tempArray[0], tempArray[1]); | ||
| 1100 | + if (b == 0) { | ||
| 1101 | + gPloygonGrid = String.valueOf(resultPoint.getLng()) + " " | ||
| 1102 | + + String.valueOf(resultPoint.getLat()); | ||
| 1103 | + } else { | ||
| 1104 | + gPloygonGrid = gPloygonGrid + ',' + String.valueOf(resultPoint.getLng()) + " " | ||
| 1105 | + + String.valueOf(resultPoint.getLat()); | ||
| 1106 | + } | ||
| 1036 | } | 1107 | } |
| 1037 | } | 1108 | } |
| 1038 | - if(bPloygonGrid.equals("")) | 1109 | + if (bPloygonGrid.equals("")) |
| 1039 | bPloygonGrid = null; | 1110 | bPloygonGrid = null; |
| 1040 | else | 1111 | else |
| 1041 | - bPloygonGrid = "POLYGON((" + bPloygonGrid +"))"; | ||
| 1042 | - if(gPloygonGrid.equals("")) | 1112 | + bPloygonGrid = "POLYGON((" + bPloygonGrid + "))"; |
| 1113 | + if (gPloygonGrid.equals("")) | ||
| 1043 | gPloygonGrid = null; | 1114 | gPloygonGrid = null; |
| 1044 | else | 1115 | else |
| 1045 | - gPloygonGrid = "POLYGON((" + gPloygonGrid +"))"; | 1116 | + gPloygonGrid = "POLYGON((" + gPloygonGrid + "))"; |
| 1046 | // 保存站点 | 1117 | // 保存站点 |
| 1047 | - repository.stationSave(stationCod, zdmc, roadCoding, dbType, bJwpoints, | ||
| 1048 | - gLonx, gLaty, x, y, gPloygonGrid,bPloygonGrid, destroy, radius, | ||
| 1049 | - shapesType, versions, descriptions, createBy, updateBy,stationId); | 1118 | + repository.stationSave(stationCod, zdmc, roadCoding, dbType, bJwpoints, gLonx, gLaty, x, y, |
| 1119 | + gPloygonGrid, bPloygonGrid, destroy, radius, shapesType, versions, descriptions, createBy, | ||
| 1120 | + updateBy, stationId); | ||
| 1050 | } | 1121 | } |
| 1051 | Station station = repository.findById(stationId).get(); | 1122 | Station station = repository.findById(stationId).get(); |
| 1052 | StationRouteCache arg0 = new StationRouteCache(); | 1123 | StationRouteCache arg0 = new StationRouteCache(); |
| 1053 | // 行业编码 | 1124 | // 行业编码 |
| 1054 | industryCode = map.get("industryCode").equals("") ? "" : map.get("industryCode").toString(); | 1125 | industryCode = map.get("industryCode").equals("") ? "" : map.get("industryCode").toString(); |
| 1055 | // 距离 | 1126 | // 距离 |
| 1056 | - Double distances = map.get("distances").equals("") ? 0.0d : Double.parseDouble(map.get("distances").toString()); | 1127 | + Double distances = map.get("distances").equals("") ? 0.0d |
| 1128 | + : Double.parseDouble(map.get("distances").toString()); | ||
| 1057 | // 时间 | 1129 | // 时间 |
| 1058 | Double toTime = map.get("toTime").equals("") ? 0.0d : Double.parseDouble(map.get("toTime").toString()); | 1130 | Double toTime = map.get("toTime").equals("") ? 0.0d : Double.parseDouble(map.get("toTime").toString()); |
| 1059 | // 站点路由名称 | 1131 | // 站点路由名称 |
| @@ -1063,14 +1135,15 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -1063,14 +1135,15 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 1063 | // 线路信息 | 1135 | // 线路信息 |
| 1064 | Line resultLine = lineRepository.findById(line).get(); | 1136 | Line resultLine = lineRepository.findById(line).get(); |
| 1065 | // 站点路由序号 | 1137 | // 站点路由序号 |
| 1066 | - String stationRouteCodeStr = map.get("stationRouteCode").equals("") ? "" : map.get("stationRouteCode").toString(); | 1138 | + String stationRouteCodeStr = map.get("stationRouteCode").equals("") ? "" |
| 1139 | + : map.get("stationRouteCode").toString(); | ||
| 1067 | // 站点类型 | 1140 | // 站点类型 |
| 1068 | String stationMark = map.get("stationMark").equals("") ? "" : map.get("stationMark").toString(); | 1141 | String stationMark = map.get("stationMark").equals("") ? "" : map.get("stationMark").toString(); |
| 1069 | Integer stationRouteCode = null; | 1142 | Integer stationRouteCode = null; |
| 1070 | - if(stationRouteCodeStr!="") { | ||
| 1071 | - String stationRouteCodeArray [] = stationRouteCodeStr.split("_"); | ||
| 1072 | - stationRouteCode = Integer.parseInt(stationRouteCodeArray[0].toString())+1; | ||
| 1073 | - }else { | 1143 | + if (stationRouteCodeStr != "") { |
| 1144 | + String stationRouteCodeArray[] = stationRouteCodeStr.split("_"); | ||
| 1145 | + stationRouteCode = Integer.parseInt(stationRouteCodeArray[0].toString()) + 1; | ||
| 1146 | + } else { | ||
| 1074 | stationRouteCode = 100; | 1147 | stationRouteCode = 100; |
| 1075 | } | 1148 | } |
| 1076 | // 线路 | 1149 | // 线路 |
| @@ -1109,19 +1182,19 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -1109,19 +1182,19 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 1109 | } | 1182 | } |
| 1110 | return resultMap; | 1183 | return resultMap; |
| 1111 | } | 1184 | } |
| 1112 | - | 1185 | + |
| 1113 | /** | 1186 | /** |
| 1114 | * @Description :TODO(更新站点保存) | 1187 | * @Description :TODO(更新站点保存) |
| 1115 | * | 1188 | * |
| 1116 | * @param map <bJwpoints:中心点百度坐标;bPolygonGrid:多边形图形百度坐标;dbType:原坐标类型; | 1189 | * @param map <bJwpoints:中心点百度坐标;bPolygonGrid:多边形图形百度坐标;dbType:原坐标类型; |
| 1117 | * | 1190 | * |
| 1118 | - * descriptions:说明;destroy:是否撤销;directions:方向;distances:到站距离;gJwpoints:中心点WGS坐标; | 1191 | + * descriptions:说明;destroy:是否撤销;directions:方向;distances:到站距离;gJwpoints:中心点WGS坐标; |
| 1119 | * | 1192 | * |
| 1120 | - * gPolygonGrid:多边形图形WGS坐标;lineId:线路ID;radius:圆半径;roadCoding:道路编码;shapesType:图形类型; | 1193 | + * gPolygonGrid:多边形图形WGS坐标;lineId:线路ID;radius:圆半径;roadCoding:道路编码;shapesType:图形类型; |
| 1121 | * | 1194 | * |
| 1122 | - * stationCod:站点编码;stationMark:站点类型;stationName:站点名称;stationRouteCode:站点序号;toTime:到站时间 | ||
| 1123 | - * | ||
| 1124 | - * versions:版本号;x:城建坐标x;y:城建坐标y> | 1195 | + * stationCod:站点编码;stationMark:站点类型;stationName:站点名称;stationRouteCode:站点序号;toTime:到站时间 |
| 1196 | + * | ||
| 1197 | + * versions:版本号;x:城建坐标x;y:城建坐标y> | ||
| 1125 | * | 1198 | * |
| 1126 | * @return Map<String, Object> <SUCCESS ; ERROR> | 1199 | * @return Map<String, Object> <SUCCESS ; ERROR> |
| 1127 | */ | 1200 | */ |
| @@ -1130,7 +1203,8 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -1130,7 +1203,8 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 1130 | Map<String, Object> resultMap = new HashMap<String, Object>(); | 1203 | Map<String, Object> resultMap = new HashMap<String, Object>(); |
| 1131 | try { | 1204 | try { |
| 1132 | // 站点Id | 1205 | // 站点Id |
| 1133 | - Integer stationId = map.get("stationId").equals("") ? null : Integer.parseInt(map.get("stationId").toString()); | 1206 | + Integer stationId = map.get("stationId").equals("") ? null |
| 1207 | + : Integer.parseInt(map.get("stationId").toString()); | ||
| 1134 | String stationCod = map.get("stationCod").equals("") ? "" : map.get("stationCod").toString(); | 1208 | String stationCod = map.get("stationCod").equals("") ? "" : map.get("stationCod").toString(); |
| 1135 | String industryCode = map.get("industryCode").equals("") ? "" : map.get("industryCode").toString(); | 1209 | String industryCode = map.get("industryCode").equals("") ? "" : map.get("industryCode").toString(); |
| 1136 | String zdmc = map.get("zdmc").equals("") ? "" : map.get("zdmc").toString(); | 1210 | String zdmc = map.get("zdmc").equals("") ? "" : map.get("zdmc").toString(); |
| @@ -1138,22 +1212,22 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -1138,22 +1212,22 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 1138 | String stationRouteName = map.get("stationName").equals("") ? "" : map.get("stationName").toString(); | 1212 | String stationRouteName = map.get("stationName").equals("") ? "" : map.get("stationName").toString(); |
| 1139 | // 所在道路编码 | 1213 | // 所在道路编码 |
| 1140 | String roadCoding = map.get("roadCoding").equals("") ? "" : map.get("roadCoding").toString(); | 1214 | String roadCoding = map.get("roadCoding").equals("") ? "" : map.get("roadCoding").toString(); |
| 1141 | - // 经纬坐标类型 | 1215 | + // 经纬坐标类型 |
| 1142 | String dbType = map.get("dbType").equals("") ? "" : map.get("dbType").toString(); | 1216 | String dbType = map.get("dbType").equals("") ? "" : map.get("dbType").toString(); |
| 1143 | // 百度经纬度坐标 | 1217 | // 百度经纬度坐标 |
| 1144 | String bJwpoints = map.get("bJwpoints").equals("") ? "" : map.get("bJwpoints").toString(); | 1218 | String bJwpoints = map.get("bJwpoints").equals("") ? "" : map.get("bJwpoints").toString(); |
| 1145 | - String bJwpointsArray[] =null; | ||
| 1146 | - if(bJwpoints!=null) { | 1219 | + String bJwpointsArray[] = null; |
| 1220 | + if (bJwpoints != null) { | ||
| 1147 | bJwpointsArray = bJwpoints.split(" "); | 1221 | bJwpointsArray = bJwpoints.split(" "); |
| 1148 | } | 1222 | } |
| 1149 | // WGS经纬度 | 1223 | // WGS经纬度 |
| 1150 | Float gLonx = null; | 1224 | Float gLonx = null; |
| 1151 | // WGS纬度 | 1225 | // WGS纬度 |
| 1152 | Float gLaty = null; | 1226 | Float gLaty = null; |
| 1153 | - if(bJwpointsArray.length>0) { | ||
| 1154 | - Location resultPoint = FromBDPointToWGSPoint(bJwpointsArray[0],bJwpointsArray[1]); | ||
| 1155 | - gLonx = (float)resultPoint.getLng(); | ||
| 1156 | - gLaty = (float)resultPoint.getLat(); | 1227 | + if (bJwpointsArray.length > 0) { |
| 1228 | + Location resultPoint = FromBDPointToWGSPoint(bJwpointsArray[0], bJwpointsArray[1]); | ||
| 1229 | + gLonx = (float) resultPoint.getLng(); | ||
| 1230 | + gLaty = (float) resultPoint.getLat(); | ||
| 1157 | } | 1231 | } |
| 1158 | // 图形类型 | 1232 | // 图形类型 |
| 1159 | String shapesType = map.get("shapesType").equals("") ? "" : map.get("shapesType").toString(); | 1233 | String shapesType = map.get("shapesType").equals("") ? "" : map.get("shapesType").toString(); |
| @@ -1162,69 +1236,75 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -1162,69 +1236,75 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 1162 | // 多边形空间原坐标坐标点集合 | 1236 | // 多边形空间原坐标坐标点集合 |
| 1163 | String bPloygonGrid = map.get("bPolygonGrid").equals("") ? "" : map.get("bPolygonGrid").toString(); | 1237 | String bPloygonGrid = map.get("bPolygonGrid").equals("") ? "" : map.get("bPolygonGrid").toString(); |
| 1164 | // 多边形WGS坐标点集合 | 1238 | // 多边形WGS坐标点集合 |
| 1165 | - String gPloygonGrid =""; | ||
| 1166 | - if(!bPloygonGrid.equals("")) { | 1239 | + String gPloygonGrid = ""; |
| 1240 | + if (!bPloygonGrid.equals("")) { | ||
| 1167 | String bPloygonGridArray[] = bPloygonGrid.split(","); | 1241 | String bPloygonGridArray[] = bPloygonGrid.split(","); |
| 1168 | int bLen_ = bPloygonGridArray.length; | 1242 | int bLen_ = bPloygonGridArray.length; |
| 1169 | - for(int b = 0 ;b<bLen_;b++) { | ||
| 1170 | - String tempArray[]= bPloygonGridArray[b].split(" "); | ||
| 1171 | - Location resultPoint = FromBDPointToWGSPoint(tempArray[0],tempArray[1]); | ||
| 1172 | - if(b==0) { | ||
| 1173 | - gPloygonGrid = resultPoint.getLng() + " " + resultPoint.getLat(); | ||
| 1174 | - }else { | ||
| 1175 | - gPloygonGrid = gPloygonGrid + ',' + resultPoint.getLng() + " " + resultPoint.getLat(); | ||
| 1176 | - } | 1243 | + for (int b = 0; b < bLen_; b++) { |
| 1244 | + String tempArray[] = bPloygonGridArray[b].split(" "); | ||
| 1245 | + Location resultPoint = FromBDPointToWGSPoint(tempArray[0], tempArray[1]); | ||
| 1246 | + if (b == 0) { | ||
| 1247 | + gPloygonGrid = resultPoint.getLng() + " " + resultPoint.getLat(); | ||
| 1248 | + } else { | ||
| 1249 | + gPloygonGrid = gPloygonGrid + ',' + resultPoint.getLng() + " " + resultPoint.getLat(); | ||
| 1250 | + } | ||
| 1177 | } | 1251 | } |
| 1178 | } | 1252 | } |
| 1179 | - if(bPloygonGrid.equals("")) | 1253 | + if (bPloygonGrid.equals("")) |
| 1180 | bPloygonGrid = null; | 1254 | bPloygonGrid = null; |
| 1181 | else | 1255 | else |
| 1182 | - bPloygonGrid = "POLYGON((" + bPloygonGrid +"))"; | ||
| 1183 | - | ||
| 1184 | - if(gPloygonGrid.equals("")) | 1256 | + bPloygonGrid = "POLYGON((" + bPloygonGrid + "))"; |
| 1257 | + | ||
| 1258 | + if (gPloygonGrid.equals("")) | ||
| 1185 | gPloygonGrid = null; | 1259 | gPloygonGrid = null; |
| 1186 | else | 1260 | else |
| 1187 | - gPloygonGrid = "POLYGON((" + gPloygonGrid +"))"; | 1261 | + gPloygonGrid = "POLYGON((" + gPloygonGrid + "))"; |
| 1188 | // 是否撤销 | 1262 | // 是否撤销 |
| 1189 | Integer destroy = map.get("destroy").equals("") ? null : Integer.parseInt(map.get("destroy").toString()); | 1263 | Integer destroy = map.get("destroy").equals("") ? null : Integer.parseInt(map.get("destroy").toString()); |
| 1190 | // 版本号 | 1264 | // 版本号 |
| 1191 | Integer versions = map.get("versions").equals("") ? null : Integer.parseInt(map.get("versions").toString()); | 1265 | Integer versions = map.get("versions").equals("") ? null : Integer.parseInt(map.get("versions").toString()); |
| 1192 | // 描述与说明 | 1266 | // 描述与说明 |
| 1193 | String descriptions = map.get("descriptions").equals("") ? "" : map.get("descriptions").toString(); | 1267 | String descriptions = map.get("descriptions").equals("") ? "" : map.get("descriptions").toString(); |
| 1194 | - Float x = map.get("x").equals("") ? null : Float.parseFloat(map.get("x").toString()); | ||
| 1195 | - Float y = map.get("y").equals("") ? null : Float.parseFloat(map.get("y").toString()); | 1268 | + Float x = map.get("x").equals("") ? null : Float.parseFloat(map.get("x").toString()); |
| 1269 | + Float y = map.get("y").equals("") ? null : Float.parseFloat(map.get("y").toString()); | ||
| 1196 | // 更新 | 1270 | // 更新 |
| 1197 | - repository.stationUpdate(stationCod, zdmc, roadCoding, dbType, bJwpoints, gLonx, gLaty, x, y, bPloygonGrid, gPloygonGrid, destroy, radius, shapesType, versions, descriptions, stationId); | 1271 | + repository.stationUpdate(stationCod, zdmc, roadCoding, dbType, bJwpoints, gLonx, gLaty, x, y, bPloygonGrid, |
| 1272 | + gPloygonGrid, destroy, radius, shapesType, versions, descriptions, stationId); | ||
| 1198 | // 站点路由Id | 1273 | // 站点路由Id |
| 1199 | - Integer stationRouteId = map.get("stationRouteId").equals("") ? null : Integer.parseInt(map.get("stationRouteId").toString()); | 1274 | + Integer stationRouteId = map.get("stationRouteId").equals("") ? null |
| 1275 | + : Integer.parseInt(map.get("stationRouteId").toString()); | ||
| 1200 | 1276 | ||
| 1201 | - Integer LineId = map.get("stationRouteLine").equals("") ? null : Integer.parseInt(map.get("stationRouteLine").toString()); | 1277 | + Integer LineId = map.get("stationRouteLine").equals("") ? null |
| 1278 | + : Integer.parseInt(map.get("stationRouteLine").toString()); | ||
| 1202 | String stationMark = map.get("stationMark").equals("") ? null : map.get("stationMark").toString(); | 1279 | String stationMark = map.get("stationMark").equals("") ? null : map.get("stationMark").toString(); |
| 1203 | - Double distances = map.get("distances").equals("") ? 0.0d : Double.parseDouble(map.get("distances").toString()); | 1280 | + Double distances = map.get("distances").equals("") ? 0.0d |
| 1281 | + : Double.parseDouble(map.get("distances").toString()); | ||
| 1204 | Double toTime = map.get("toTime").equals("") ? 0.0d : Double.parseDouble(map.get("toTime").toString()); | 1282 | Double toTime = map.get("toTime").equals("") ? 0.0d : Double.parseDouble(map.get("toTime").toString()); |
| 1205 | - Integer directions = map.get("directions").equals("") ? null : Integer.parseInt(map.get("directions").toString()); | 1283 | + Integer directions = map.get("directions").equals("") ? null |
| 1284 | + : Integer.parseInt(map.get("directions").toString()); | ||
| 1206 | Station station = repository.findById(stationId).get(); | 1285 | Station station = repository.findById(stationId).get(); |
| 1207 | Line line = lineRepository.findById(LineId).get(); | 1286 | Line line = lineRepository.findById(LineId).get(); |
| 1208 | - | ||
| 1209 | - if(map.get("status") == null || Integer.parseInt(map.get("status").toString()) == 1) { | 1287 | + |
| 1288 | + if (map.get("status") == null || Integer.parseInt(map.get("status").toString()) == 1) { | ||
| 1210 | StationRoute resultS = routeRepository.findById(stationRouteId).get(); | 1289 | StationRoute resultS = routeRepository.findById(stationRouteId).get(); |
| 1211 | // 站点路由序号 | 1290 | // 站点路由序号 |
| 1212 | - String stationRouteCodeStr = map.get("stationRouteCode").equals("") ? null : map.get("stationRouteCode").toString(); | 1291 | + String stationRouteCodeStr = map.get("stationRouteCode").equals("") ? null |
| 1292 | + : map.get("stationRouteCode").toString(); | ||
| 1213 | Integer stationRouteCode = null; | 1293 | Integer stationRouteCode = null; |
| 1214 | - if(stationRouteCodeStr!=null) { | ||
| 1215 | - String stationRouteCodeAraay[] = stationRouteCodeStr.split("_"); | ||
| 1216 | - int old_code = resultS.getStationRouteCode(); | ||
| 1217 | - int new_code = Integer.parseInt(stationRouteCodeAraay[0].toString())+100; | ||
| 1218 | - if(new_code==old_code){ | ||
| 1219 | - stationRouteCode = new_code; | ||
| 1220 | - }else { | ||
| 1221 | - stationRouteCode = new_code-100+1; | ||
| 1222 | - } | ||
| 1223 | - }else { | 1294 | + if (stationRouteCodeStr != null) { |
| 1295 | + String stationRouteCodeAraay[] = stationRouteCodeStr.split("_"); | ||
| 1296 | + int old_code = resultS.getStationRouteCode(); | ||
| 1297 | + int new_code = Integer.parseInt(stationRouteCodeAraay[0].toString()) + 100; | ||
| 1298 | + if (new_code == old_code) { | ||
| 1299 | + stationRouteCode = new_code; | ||
| 1300 | + } else { | ||
| 1301 | + stationRouteCode = new_code - 100 + 1; | ||
| 1302 | + } | ||
| 1303 | + } else { | ||
| 1224 | stationRouteCode = resultS.getStationRouteCode(); | 1304 | stationRouteCode = resultS.getStationRouteCode(); |
| 1225 | } | 1305 | } |
| 1226 | stationRouteCode = stationRouteCode == null ? 100 : stationRouteCode; | 1306 | stationRouteCode = stationRouteCode == null ? 100 : stationRouteCode; |
| 1227 | - | 1307 | + |
| 1228 | StationRoute stationRoute = new StationRoute(); | 1308 | StationRoute stationRoute = new StationRoute(); |
| 1229 | stationRoute.setStationName(stationRouteName); | 1309 | stationRoute.setStationName(stationRouteName); |
| 1230 | stationRoute.setId(stationRouteId); | 1310 | stationRoute.setId(stationRouteId); |
| @@ -1242,26 +1322,27 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -1242,26 +1322,27 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 1242 | stationRoute.setDestroy(destroy); | 1322 | stationRoute.setDestroy(destroy); |
| 1243 | stationRoute.setDescriptions(descriptions); | 1323 | stationRoute.setDescriptions(descriptions); |
| 1244 | routeRepository.save(stationRoute); | 1324 | routeRepository.save(stationRoute); |
| 1245 | - }else if(Integer.parseInt(map.get("status").toString()) == 2){ | ||
| 1246 | - | 1325 | + } else if (Integer.parseInt(map.get("status").toString()) == 2) { |
| 1326 | + | ||
| 1247 | LsStationRoute resultS = lsStationRouteRepository.findById(stationRouteId).get(); | 1327 | LsStationRoute resultS = lsStationRouteRepository.findById(stationRouteId).get(); |
| 1248 | // 站点路由序号 | 1328 | // 站点路由序号 |
| 1249 | - String stationRouteCodeStr = map.get("stationRouteCode").equals("") ? null : map.get("stationRouteCode").toString(); | 1329 | + String stationRouteCodeStr = map.get("stationRouteCode").equals("") ? null |
| 1330 | + : map.get("stationRouteCode").toString(); | ||
| 1250 | Integer stationRouteCode = null; | 1331 | Integer stationRouteCode = null; |
| 1251 | - if(stationRouteCodeStr!=null) { | ||
| 1252 | - String stationRouteCodeAraay[] = stationRouteCodeStr.split("_"); | ||
| 1253 | - int old_code = resultS.getStationRouteCode(); | ||
| 1254 | - int new_code = Integer.parseInt(stationRouteCodeAraay[0].toString())+100; | ||
| 1255 | - if(new_code==old_code){ | ||
| 1256 | - stationRouteCode = new_code; | ||
| 1257 | - }else { | ||
| 1258 | - stationRouteCode = new_code-100+1; | ||
| 1259 | - } | ||
| 1260 | - }else { | 1332 | + if (stationRouteCodeStr != null) { |
| 1333 | + String stationRouteCodeAraay[] = stationRouteCodeStr.split("_"); | ||
| 1334 | + int old_code = resultS.getStationRouteCode(); | ||
| 1335 | + int new_code = Integer.parseInt(stationRouteCodeAraay[0].toString()) + 100; | ||
| 1336 | + if (new_code == old_code) { | ||
| 1337 | + stationRouteCode = new_code; | ||
| 1338 | + } else { | ||
| 1339 | + stationRouteCode = new_code - 100 + 1; | ||
| 1340 | + } | ||
| 1341 | + } else { | ||
| 1261 | stationRouteCode = resultS.getStationRouteCode(); | 1342 | stationRouteCode = resultS.getStationRouteCode(); |
| 1262 | } | 1343 | } |
| 1263 | stationRouteCode = stationRouteCode == null ? 100 : stationRouteCode; | 1344 | stationRouteCode = stationRouteCode == null ? 100 : stationRouteCode; |
| 1264 | - | 1345 | + |
| 1265 | LsStationRoute stationRoute = new LsStationRoute(); | 1346 | LsStationRoute stationRoute = new LsStationRoute(); |
| 1266 | stationRoute.setStationName(stationRouteName); | 1347 | stationRoute.setStationName(stationRouteName); |
| 1267 | stationRoute.setId(stationRouteId); | 1348 | stationRoute.setId(stationRouteId); |
| @@ -1280,8 +1361,7 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -1280,8 +1361,7 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 1280 | stationRoute.setDescriptions(descriptions); | 1361 | stationRoute.setDescriptions(descriptions); |
| 1281 | lsStationRouteRepository.save(stationRoute); | 1362 | lsStationRouteRepository.save(stationRoute); |
| 1282 | } | 1363 | } |
| 1283 | - | ||
| 1284 | - | 1364 | + |
| 1285 | resultMap.put("status", ResponseCode.SUCCESS); | 1365 | resultMap.put("status", ResponseCode.SUCCESS); |
| 1286 | } catch (Exception e) { | 1366 | } catch (Exception e) { |
| 1287 | resultMap.put("status", ResponseCode.ERROR); | 1367 | resultMap.put("status", ResponseCode.ERROR); |
| @@ -1290,47 +1370,46 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -1290,47 +1370,46 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 1290 | return resultMap; | 1370 | return resultMap; |
| 1291 | } | 1371 | } |
| 1292 | 1372 | ||
| 1293 | - | ||
| 1294 | /** 百度坐标转WGS坐标 */ | 1373 | /** 百度坐标转WGS坐标 */ |
| 1295 | - public Location FromBDPointToWGSPoint(String bLonx,String bLatx) { | ||
| 1296 | - | 1374 | + public Location FromBDPointToWGSPoint(String bLonx, String bLatx) { |
| 1375 | + | ||
| 1297 | double lng = Double.parseDouble(bLonx); | 1376 | double lng = Double.parseDouble(bLonx); |
| 1298 | - | 1377 | + |
| 1299 | double lat = Double.parseDouble(bLatx); | 1378 | double lat = Double.parseDouble(bLatx); |
| 1300 | - | 1379 | + |
| 1301 | Location bdLoc = TransGPS.LocationMake(lng, lat); | 1380 | Location bdLoc = TransGPS.LocationMake(lng, lat); |
| 1302 | - | 1381 | + |
| 1303 | Location location = TransGPS.bd_decrypt(bdLoc); | 1382 | Location location = TransGPS.bd_decrypt(bdLoc); |
| 1304 | - | 1383 | + |
| 1305 | Location WGSPoint = TransGPS.transformFromGCJToWGS(location); | 1384 | Location WGSPoint = TransGPS.transformFromGCJToWGS(location); |
| 1306 | - | 1385 | + |
| 1307 | return WGSPoint; | 1386 | return WGSPoint; |
| 1308 | - | 1387 | + |
| 1309 | } | 1388 | } |
| 1310 | - | 1389 | + |
| 1311 | @Transactional | 1390 | @Transactional |
| 1312 | @Override | 1391 | @Override |
| 1313 | public Map<String, Object> manualSave(Map<String, Object> map) { | 1392 | public Map<String, Object> manualSave(Map<String, Object> map) { |
| 1314 | - Map<String, Object> resultMap = new HashMap<String,Object>(); | 1393 | + Map<String, Object> resultMap = new HashMap<String, Object>(); |
| 1315 | try { | 1394 | try { |
| 1316 | // 站点信息字符传 | 1395 | // 站点信息字符传 |
| 1317 | - String stationJSON = map.get("stationJSON").equals("") ? "" : map.get("stationJSON").toString(); | ||
| 1318 | - // 路段信息字符串 | ||
| 1319 | - String sectionJSON = map.get("sectionJSON").equals("") ? "" : map.get("sectionJSON").toString(); | ||
| 1320 | - // 方向 | ||
| 1321 | - int directions = Integer.parseInt(map.get("directions").toString()); | ||
| 1322 | - // 是否撤销 | ||
| 1323 | - int destroy = map.get("destroy").equals("") ? 0 : Integer.parseInt(map.get("destroy").toString()); | ||
| 1324 | - // 版本 | ||
| 1325 | - int versions = map.get("versions").equals("") ? 0 : Integer.parseInt(map.get("versions").toString()); | 1396 | + String stationJSON = map.get("stationJSON").equals("") ? "" : map.get("stationJSON").toString(); |
| 1397 | + // 路段信息字符串 | ||
| 1398 | + String sectionJSON = map.get("sectionJSON").equals("") ? "" : map.get("sectionJSON").toString(); | ||
| 1399 | + // 方向 | ||
| 1400 | + int directions = Integer.parseInt(map.get("directions").toString()); | ||
| 1401 | + // 是否撤销 | ||
| 1402 | + int destroy = map.get("destroy").equals("") ? 0 : Integer.parseInt(map.get("destroy").toString()); | ||
| 1403 | + // 版本 | ||
| 1404 | + int versions = map.get("versions").equals("") ? 0 : Integer.parseInt(map.get("versions").toString()); | ||
| 1326 | // 坐标类型 | 1405 | // 坐标类型 |
| 1327 | - String dbType = map.get("dbType").equals("") ? "" : map.get("dbType").toString(); | 1406 | + String dbType = map.get("dbType").equals("") ? "" : map.get("dbType").toString(); |
| 1328 | // 限速 | 1407 | // 限速 |
| 1329 | String speedLimitStr = map.get("speedLimit").equals("") ? "" : map.get("speedLimit").toString(); | 1408 | String speedLimitStr = map.get("speedLimit").equals("") ? "" : map.get("speedLimit").toString(); |
| 1330 | // 线路ID | 1409 | // 线路ID |
| 1331 | int lineId = map.get("lineId").equals("") ? 0 : Integer.parseInt(map.get("lineId").toString()); | 1410 | int lineId = map.get("lineId").equals("") ? 0 : Integer.parseInt(map.get("lineId").toString()); |
| 1332 | // 半径 | 1411 | // 半径 |
| 1333 | - int radius = map.get("radius").equals("") ? 0 : Integer.parseInt(map.get("radius").toString()); | 1412 | + int radius = map.get("radius").equals("") ? 0 : Integer.parseInt(map.get("radius").toString()); |
| 1334 | // 图形类型 | 1413 | // 图形类型 |
| 1335 | String shapesType = map.get("shapesType").equals("") ? "" : map.get("shapesType").toString(); | 1414 | String shapesType = map.get("shapesType").equals("") ? "" : map.get("shapesType").toString(); |
| 1336 | // 线路信息 | 1415 | // 线路信息 |
| @@ -1341,19 +1420,21 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -1341,19 +1420,21 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 1341 | Double sectionDuration = 0.0d; | 1420 | Double sectionDuration = 0.0d; |
| 1342 | // 里程(上或者下) | 1421 | // 里程(上或者下) |
| 1343 | double sumUpOrDownMileage = 0.0d; | 1422 | double sumUpOrDownMileage = 0.0d; |
| 1344 | - Map<String, Object> resultSaveMapm = new HashMap<String,Object>(); | 1423 | + Map<String, Object> resultSaveMapm = new HashMap<String, Object>(); |
| 1345 | String baseRes = map.get("baseRes").equals("") ? "" : map.get("baseRes").toString(); | 1424 | String baseRes = map.get("baseRes").equals("") ? "" : map.get("baseRes").toString(); |
| 1346 | - if(!stationJSON.equals("")) { | 1425 | + if (!stationJSON.equals("")) { |
| 1347 | // 保存站点与站点路由信息 | 1426 | // 保存站点与站点路由信息 |
| 1348 | - resultSaveMapm = savaStationAndStationRouteInfo( stationJSON, sectionDistance, sectionDuration, dbType,radius, shapesType, destroy, versions, sumUpOrDownMileage, directions, resultLine,baseRes); | 1427 | + resultSaveMapm = savaStationAndStationRouteInfo(stationJSON, sectionDistance, sectionDuration, dbType, |
| 1428 | + radius, shapesType, destroy, versions, sumUpOrDownMileage, directions, resultLine, baseRes); | ||
| 1349 | } | 1429 | } |
| 1350 | // 路段长度 | 1430 | // 路段长度 |
| 1351 | sectionDistance = Double.valueOf(resultSaveMapm.get("sectionDistance").toString()); | 1431 | sectionDistance = Double.valueOf(resultSaveMapm.get("sectionDistance").toString()); |
| 1352 | // 路段时长 | 1432 | // 路段时长 |
| 1353 | sectionDuration = Double.valueOf(resultSaveMapm.get("sectionDuration").toString()); | 1433 | sectionDuration = Double.valueOf(resultSaveMapm.get("sectionDuration").toString()); |
| 1354 | // 如果路段信息JSON字符串不为空 | 1434 | // 如果路段信息JSON字符串不为空 |
| 1355 | - if(!sectionJSON.equals("")) { | ||
| 1356 | - manualSaveSectionAndSectionRoute(sectionJSON, speedLimitStr, sectionDistance, sectionDuration, dbType, versions, resultLine, destroy, directions); | 1435 | + if (!sectionJSON.equals("")) { |
| 1436 | + manualSaveSectionAndSectionRoute(sectionJSON, speedLimitStr, sectionDistance, sectionDuration, dbType, | ||
| 1437 | + versions, resultLine, destroy, directions); | ||
| 1357 | } | 1438 | } |
| 1358 | // 里程 | 1439 | // 里程 |
| 1359 | sumUpOrDownMileage = Double.valueOf(resultSaveMapm.get("sumUpOrDownMileage").toString()); | 1440 | sumUpOrDownMileage = Double.valueOf(resultSaveMapm.get("sumUpOrDownMileage").toString()); |
| @@ -1361,7 +1442,7 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -1361,7 +1442,7 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 1361 | sumUpOrDownMileage = s.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); | 1442 | sumUpOrDownMileage = s.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); |
| 1362 | // 更新里程 | 1443 | // 更新里程 |
| 1363 | // updateLineInfoUpOrDownMileage( resultLine , directions, sumUpOrDownMileage); | 1444 | // updateLineInfoUpOrDownMileage( resultLine , directions, sumUpOrDownMileage); |
| 1364 | - if(directions==0) { | 1445 | + if (directions == 0) { |
| 1365 | // lineUpdateStationName(resultLine); | 1446 | // lineUpdateStationName(resultLine); |
| 1366 | } | 1447 | } |
| 1367 | resultMap.put("status", ResponseCode.SUCCESS); | 1448 | resultMap.put("status", ResponseCode.SUCCESS); |
| @@ -1370,98 +1451,127 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -1370,98 +1451,127 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 1370 | resultMap.put("status", ResponseCode.ERROR); | 1451 | resultMap.put("status", ResponseCode.ERROR); |
| 1371 | logger.error("save erro.", e); | 1452 | logger.error("save erro.", e); |
| 1372 | } | 1453 | } |
| 1373 | - | 1454 | + |
| 1374 | return resultMap; | 1455 | return resultMap; |
| 1375 | } | 1456 | } |
| 1376 | - | ||
| 1377 | - public void manualSaveSectionAndSectionRoute(String sectionJSON,String speedLimitStr,double sectionDistance, | ||
| 1378 | - | ||
| 1379 | - double sectionTime,String dbType,Integer versions,Line resultLine, | ||
| 1380 | - | ||
| 1381 | - Integer destroy,Integer directions) { | ||
| 1382 | - // 转换成JSON数组 | 1457 | + |
| 1458 | + public void manualSaveSectionAndSectionRoute(String sectionJSON, String speedLimitStr, double sectionDistance, | ||
| 1459 | + | ||
| 1460 | + double sectionTime, String dbType, Integer versions, Line resultLine, | ||
| 1461 | + | ||
| 1462 | + Integer destroy, Integer directions) { | ||
| 1463 | +// 转换成JSON数组 | ||
| 1383 | JSONArray sectionsArray = JSONArray.parseArray(sectionJSON); | 1464 | JSONArray sectionsArray = JSONArray.parseArray(sectionJSON); |
| 1384 | - // 更新路线前撤销线路原有路段 | ||
| 1385 | - sectionRouteRepository.sectionRouteUpdDestroy(Integer.parseInt(resultLine.getLineCode()),directions); | ||
| 1386 | - // 遍历 | ||
| 1387 | - for(int s = 0 ;s<sectionsArray.size();s++) { | ||
| 1388 | - // 站点名称 | ||
| 1389 | - String sectionName = sectionsArray.getJSONObject(s).equals("") ? "" : sectionsArray.getJSONObject(s).get("sectionName").toString(); | ||
| 1390 | - String pointsStr = sectionsArray.getJSONObject(s).equals("") ? "" : sectionsArray.getJSONObject(s).get("points").toString(); | ||
| 1391 | - // 原始线状图形坐标集合 | 1465 | +// 更新路线前撤销线路原有路段 |
| 1466 | +// sectionRouteRepository.sectionRouteUpdDestroy(Integer.parseInt(resultLine.getLineCode()), directions); | ||
| 1467 | +// 遍历 | ||
| 1468 | + for (int s = 0; s < sectionsArray.size(); s++) { | ||
| 1469 | +// 站点名称 | ||
| 1470 | + String sectionName = sectionsArray.getJSONObject(s).equals("") ? "" | ||
| 1471 | + : sectionsArray.getJSONObject(s).get("sectionName").toString(); | ||
| 1472 | + String pointsStr = sectionsArray.getJSONObject(s).equals("") ? "" | ||
| 1473 | + : sectionsArray.getJSONObject(s).get("points").toString(); | ||
| 1474 | +// 原始线状图形坐标集合 | ||
| 1392 | String sectionsBpoints = ""; | 1475 | String sectionsBpoints = ""; |
| 1393 | - // WGS线状图形坐标集合 | 1476 | +// WGS线状图形坐标集合 |
| 1394 | String sectionsWJPpoints = ""; | 1477 | String sectionsWJPpoints = ""; |
| 1395 | - if(!pointsStr.equals("")){ | 1478 | + if (!pointsStr.equals("")) { |
| 1396 | JSONArray pointsArray = JSONArray.parseArray(pointsStr); | 1479 | JSONArray pointsArray = JSONArray.parseArray(pointsStr); |
| 1397 | - for(int p =0;p<pointsArray.size();p++){ | 1480 | + for (int p = 0; p < pointsArray.size(); p++) { |
| 1398 | String pointsLngStr = pointsArray.getJSONObject(p).get("lng").toString(); | 1481 | String pointsLngStr = pointsArray.getJSONObject(p).get("lng").toString(); |
| 1399 | String pointsLatStr = pointsArray.getJSONObject(p).get("lat").toString(); | 1482 | String pointsLatStr = pointsArray.getJSONObject(p).get("lat").toString(); |
| 1400 | - Location resultPoint = FromBDPointToWGSPoint(pointsLngStr,pointsLatStr); | 1483 | + Location resultPoint = FromBDPointToWGSPoint(pointsLngStr, pointsLatStr); |
| 1401 | String WGSLngStr = String.valueOf(resultPoint.getLng()); | 1484 | String WGSLngStr = String.valueOf(resultPoint.getLng()); |
| 1402 | String WGSLatStr = String.valueOf(resultPoint.getLat()); | 1485 | String WGSLatStr = String.valueOf(resultPoint.getLat()); |
| 1403 | - if(p==pointsArray.size()-1){ | 1486 | + if (p == pointsArray.size() - 1) { |
| 1404 | sectionsBpoints = sectionsBpoints + pointsLngStr + " " + pointsLatStr; | 1487 | sectionsBpoints = sectionsBpoints + pointsLngStr + " " + pointsLatStr; |
| 1405 | - sectionsWJPpoints = sectionsWJPpoints + WGSLngStr + " " + WGSLatStr; | ||
| 1406 | - }else { | ||
| 1407 | - sectionsBpoints = sectionsBpoints + pointsArray.getJSONObject(p).get("lng").toString() + " " +pointsArray.getJSONObject(p).get("lat").toString()+","; | ||
| 1408 | - sectionsWJPpoints = sectionsWJPpoints + WGSLngStr + " " + WGSLatStr + ","; | 1488 | + sectionsWJPpoints = sectionsWJPpoints + WGSLngStr + " " + WGSLatStr; |
| 1489 | + } else { | ||
| 1490 | + sectionsBpoints = sectionsBpoints + pointsArray.getJSONObject(p).get("lng").toString() + " " | ||
| 1491 | + + pointsArray.getJSONObject(p).get("lat").toString() + ","; | ||
| 1492 | + sectionsWJPpoints = sectionsWJPpoints + WGSLngStr + " " + WGSLatStr + ","; | ||
| 1409 | } | 1493 | } |
| 1410 | } | 1494 | } |
| 1411 | } | 1495 | } |
| 1412 | long sectionMaxId = GetUIDAndCode.getSectionId(); | 1496 | long sectionMaxId = GetUIDAndCode.getSectionId(); |
| 1413 | String sectionCode = String.valueOf(sectionMaxId); | 1497 | String sectionCode = String.valueOf(sectionMaxId); |
| 1414 | int sectionId = (int) (sectionMaxId); | 1498 | int sectionId = (int) (sectionMaxId); |
| 1415 | - // 交出路 | 1499 | +// 交出路 |
| 1416 | String crosesRoad = ""; | 1500 | String crosesRoad = ""; |
| 1417 | - // 终止节点 | 1501 | +// 终止节点 |
| 1418 | String endNode = ""; | 1502 | String endNode = ""; |
| 1419 | - // 开始节点 | 1503 | +// 开始节点 |
| 1420 | String startNode = ""; | 1504 | String startNode = ""; |
| 1421 | - // 中间节点 | 1505 | +// 中间节点 |
| 1422 | String middleNode = ""; | 1506 | String middleNode = ""; |
| 1423 | - // WGS坐标点集合 | ||
| 1424 | - String gsectionVector = "LINESTRING(" + sectionsWJPpoints +")"; | ||
| 1425 | - // 原坐标点集合 | 1507 | +// WGS坐标点集合 |
| 1508 | + String gsectionVector = "LINESTRING(" + sectionsWJPpoints + ")"; | ||
| 1509 | +// 原坐标点集合 | ||
| 1426 | String bsectionVector = "LINESTRING(" + sectionsBpoints + ")"; | 1510 | String bsectionVector = "LINESTRING(" + sectionsBpoints + ")"; |
| 1427 | - // 城建坐标点集合 | 1511 | +// 城建坐标点集合 |
| 1428 | String csectionVector = null; | 1512 | String csectionVector = null; |
| 1429 | - // 路段类型 | 1513 | +// 路段类型 |
| 1430 | String sectionType = ""; | 1514 | String sectionType = ""; |
| 1431 | - // 道路编码 | 1515 | +// 道路编码 |
| 1432 | String roadCoding = ""; | 1516 | String roadCoding = ""; |
| 1433 | - // 限速 | 1517 | +// 限速 |
| 1434 | double speedLimit = Double.parseDouble(speedLimitStr); | 1518 | double speedLimit = Double.parseDouble(speedLimitStr); |
| 1435 | - // 说明 | 1519 | +// 说明 |
| 1436 | String descriptions = ""; | 1520 | String descriptions = ""; |
| 1437 | - sectionRepository.systemSave(sectionCode, sectionName, crosesRoad, endNode, startNode, | ||
| 1438 | - | ||
| 1439 | - middleNode, gsectionVector, bsectionVector, sectionType, csectionVector, | ||
| 1440 | - | ||
| 1441 | - roadCoding, sectionDistance, sectionTime, dbType, speedLimit, | ||
| 1442 | - | ||
| 1443 | - descriptions, versions,sectionId); | 1521 | + sectionRepository.systemSave(sectionCode, sectionName, crosesRoad, endNode, startNode, |
| 1522 | + | ||
| 1523 | + middleNode, gsectionVector, bsectionVector, sectionType, csectionVector, | ||
| 1524 | + | ||
| 1525 | + roadCoding, sectionDistance, sectionTime, dbType, speedLimit, | ||
| 1526 | + | ||
| 1527 | + descriptions, versions, sectionId); | ||
| 1528 | + | ||
| 1529 | +// 版本号(获取线路当前版本) | ||
| 1530 | + Integer version = lineVersionsRepository.findCurrentVersion(resultLine.getId()); | ||
| 1531 | + | ||
| 1444 | Section section = sectionRepository.findById(Integer.parseInt(sectionCode)).get(); | 1532 | Section section = sectionRepository.findById(Integer.parseInt(sectionCode)).get(); |
| 1445 | - // 路段路由 | ||
| 1446 | - SectionRoute sectionRoute = new SectionRoute(); | ||
| 1447 | - // 路段序号 | ||
| 1448 | - sectionRoute.setSectionrouteCode((s+1)*100); | ||
| 1449 | - // 线路编码 | ||
| 1450 | - sectionRoute.setLineCode(resultLine.getLineCode()); | ||
| 1451 | - // 路段ID | ||
| 1452 | - sectionRoute.setSection(section); | ||
| 1453 | - // 线路ID | ||
| 1454 | - sectionRoute.setLine(resultLine); | ||
| 1455 | - // 路段编码 | ||
| 1456 | - sectionRoute.setSectionCode(sectionCode); | ||
| 1457 | - // 版本号(获取线路当前版本) | ||
| 1458 | - Integer version = lineVersionsRepository.findCurrentVersion(resultLine.getId()); | ||
| 1459 | - sectionRoute.setVersions(version); | ||
| 1460 | - sectionRoute.setDestroy(destroy); | ||
| 1461 | - // 方向 | ||
| 1462 | - sectionRoute.setDirections(directions); | ||
| 1463 | - // 保存路段 | ||
| 1464 | - sectionRouteRepository.save(sectionRoute); | 1533 | + |
| 1534 | + if (versions == version) { | ||
| 1535 | + | ||
| 1536 | +// 路段路由 | ||
| 1537 | + SectionRoute sectionRoute = new SectionRoute(); | ||
| 1538 | +// 路段序号 | ||
| 1539 | + sectionRoute.setSectionrouteCode((s + 1) * 100); | ||
| 1540 | +// 线路编码 | ||
| 1541 | + sectionRoute.setLineCode(resultLine.getLineCode()); | ||
| 1542 | +// 路段ID | ||
| 1543 | + sectionRoute.setSection(section); | ||
| 1544 | +// 线路ID | ||
| 1545 | + sectionRoute.setLine(resultLine); | ||
| 1546 | +// 路段编码 | ||
| 1547 | + sectionRoute.setSectionCode(sectionCode); | ||
| 1548 | + sectionRoute.setVersions(versions); | ||
| 1549 | + sectionRoute.setDestroy(destroy); | ||
| 1550 | +// 方向 | ||
| 1551 | + sectionRoute.setDirections(directions); | ||
| 1552 | +// 保存路段 | ||
| 1553 | + sectionRouteRepository.save(sectionRoute); | ||
| 1554 | + } else { | ||
| 1555 | +// 路段路由 | ||
| 1556 | + LsSectionRoute sectionRoute = new LsSectionRoute(); | ||
| 1557 | +// 路段序号 | ||
| 1558 | + sectionRoute.setSectionrouteCode((s + 1) * 100); | ||
| 1559 | +// 线路编码 | ||
| 1560 | + sectionRoute.setLineCode(resultLine.getLineCode()); | ||
| 1561 | +// 路段ID | ||
| 1562 | + sectionRoute.setSection(section); | ||
| 1563 | +// 线路ID | ||
| 1564 | + sectionRoute.setLine(resultLine); | ||
| 1565 | +// 路段编码 | ||
| 1566 | + sectionRoute.setSectionCode(sectionCode); | ||
| 1567 | + sectionRoute.setVersions(versions); | ||
| 1568 | + sectionRoute.setDestroy(destroy); | ||
| 1569 | +// 方向 | ||
| 1570 | + sectionRoute.setDirections(directions); | ||
| 1571 | +// 保存路段 | ||
| 1572 | + lsSectionRouteRepository.save(sectionRoute); | ||
| 1573 | + } | ||
| 1574 | + | ||
| 1465 | } | 1575 | } |
| 1466 | } | 1576 | } |
| 1467 | 1577 | ||
| @@ -1477,10 +1587,10 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -1477,10 +1587,10 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 1477 | boolean isMatch = false; | 1587 | boolean isMatch = false; |
| 1478 | double lat = Double.parseDouble(map.get("potion[lat]").toString()); | 1588 | double lat = Double.parseDouble(map.get("potion[lat]").toString()); |
| 1479 | double lon = Double.parseDouble(map.get("potion[lng]").toString()); | 1589 | double lon = Double.parseDouble(map.get("potion[lng]").toString()); |
| 1480 | - Point point = new Point(lon, lat); | 1590 | + Point point = new Point(lon, lat); |
| 1481 | Iterable<Station> Stations = repository.findAll(); | 1591 | Iterable<Station> Stations = repository.findAll(); |
| 1482 | for (Station s : Stations) { | 1592 | for (Station s : Stations) { |
| 1483 | - String libraryPointstr = s.getbJwpoints(); | 1593 | + String libraryPointstr = s.getbJwpoints(); |
| 1484 | String points[] = libraryPointstr.toString().split(" "); | 1594 | String points[] = libraryPointstr.toString().split(" "); |
| 1485 | Point center = new Point(Double.parseDouble(points[0]), Double.parseDouble(points[1])); | 1595 | Point center = new Point(Double.parseDouble(points[0]), Double.parseDouble(points[1])); |
| 1486 | // 在60m内认为是同一个站点 | 1596 | // 在60m内认为是同一个站点 |
| @@ -1508,7 +1618,7 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -1508,7 +1618,7 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 1508 | } | 1618 | } |
| 1509 | return map; | 1619 | return map; |
| 1510 | } | 1620 | } |
| 1511 | - | 1621 | + |
| 1512 | /** | 1622 | /** |
| 1513 | * @Description :TODO(把上传Gps生成的路线放到缓存表中) | 1623 | * @Description :TODO(把上传Gps生成的路线放到缓存表中) |
| 1514 | * | 1624 | * |
| @@ -1518,26 +1628,26 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -1518,26 +1628,26 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 1518 | @Transactional | 1628 | @Transactional |
| 1519 | @Override | 1629 | @Override |
| 1520 | public Map<String, Object> cacheSave(Map<String, Object> map) { | 1630 | public Map<String, Object> cacheSave(Map<String, Object> map) { |
| 1521 | - Map<String, Object> resultMap = new HashMap<String,Object>(); | 1631 | + Map<String, Object> resultMap = new HashMap<String, Object>(); |
| 1522 | try { | 1632 | try { |
| 1523 | // 站点信息字符传 | 1633 | // 站点信息字符传 |
| 1524 | - String stationJSON = map.get("stationJSON").equals("") ? "" : map.get("stationJSON").toString(); | ||
| 1525 | - // 路段信息字符串 | ||
| 1526 | - String sectionJSON = map.get("sectionJSON").equals("") ? "" : map.get("sectionJSON").toString(); | ||
| 1527 | - // 方向 | ||
| 1528 | - int directions = Integer.parseInt(map.get("directions").toString()); | ||
| 1529 | - // 是否撤销 | ||
| 1530 | - int destroy = map.get("destroy").equals("") ? 0 : Integer.parseInt(map.get("destroy").toString()); | ||
| 1531 | - // 版本 | ||
| 1532 | - int versions = map.get("versions").equals("") ? 0 : Integer.parseInt(map.get("versions").toString()); | 1634 | + String stationJSON = map.get("stationJSON").equals("") ? "" : map.get("stationJSON").toString(); |
| 1635 | + // 路段信息字符串 | ||
| 1636 | + String sectionJSON = map.get("sectionJSON").equals("") ? "" : map.get("sectionJSON").toString(); | ||
| 1637 | + // 方向 | ||
| 1638 | + int directions = Integer.parseInt(map.get("directions").toString()); | ||
| 1639 | + // 是否撤销 | ||
| 1640 | + int destroy = map.get("destroy").equals("") ? 0 : Integer.parseInt(map.get("destroy").toString()); | ||
| 1641 | + // 版本 | ||
| 1642 | + int versions = map.get("versions").equals("") ? 0 : Integer.parseInt(map.get("versions").toString()); | ||
| 1533 | // 坐标类型 | 1643 | // 坐标类型 |
| 1534 | - String dbType = map.get("dbType").equals("") ? "" : map.get("dbType").toString(); | 1644 | + String dbType = map.get("dbType").equals("") ? "" : map.get("dbType").toString(); |
| 1535 | // 限速 | 1645 | // 限速 |
| 1536 | String speedLimitStr = map.get("speedLimit").equals("") ? "" : map.get("speedLimit").toString(); | 1646 | String speedLimitStr = map.get("speedLimit").equals("") ? "" : map.get("speedLimit").toString(); |
| 1537 | // 线路ID | 1647 | // 线路ID |
| 1538 | int lineId = map.get("lineId").equals("") ? 0 : Integer.parseInt(map.get("lineId").toString()); | 1648 | int lineId = map.get("lineId").equals("") ? 0 : Integer.parseInt(map.get("lineId").toString()); |
| 1539 | // 半径 | 1649 | // 半径 |
| 1540 | - int radius = map.get("radius").equals("") ? 0 : Integer.parseInt(map.get("radius").toString()); | 1650 | + int radius = map.get("radius").equals("") ? 0 : Integer.parseInt(map.get("radius").toString()); |
| 1541 | // 图形类型 | 1651 | // 图形类型 |
| 1542 | String shapesType = map.get("shapesType").equals("") ? "" : map.get("shapesType").toString(); | 1652 | String shapesType = map.get("shapesType").equals("") ? "" : map.get("shapesType").toString(); |
| 1543 | // 线路信息 | 1653 | // 线路信息 |
| @@ -1548,20 +1658,23 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -1548,20 +1658,23 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 1548 | Double sectionDuration = 0.0d; | 1658 | Double sectionDuration = 0.0d; |
| 1549 | // 里程(上或者下) | 1659 | // 里程(上或者下) |
| 1550 | double sumUpOrDownMileage = 0.0d; | 1660 | double sumUpOrDownMileage = 0.0d; |
| 1551 | - Map<String, Object> resultSaveMapm = new HashMap<String,Object>(); | 1661 | + Map<String, Object> resultSaveMapm = new HashMap<String, Object>(); |
| 1552 | String baseRes = map.get("baseRes").equals("") ? "" : map.get("baseRes").toString(); | 1662 | String baseRes = map.get("baseRes").equals("") ? "" : map.get("baseRes").toString(); |
| 1553 | - | ||
| 1554 | - if(!stationJSON.equals("")) { | 1663 | + |
| 1664 | + if (!stationJSON.equals("")) { | ||
| 1555 | // 保存站点与站点路由信息 | 1665 | // 保存站点与站点路由信息 |
| 1556 | - resultSaveMapm = savaStationAndStationRouteCacheInfo( stationJSON, sectionDistance, sectionDuration, dbType,radius, shapesType, destroy, versions, sumUpOrDownMileage, directions, resultLine,baseRes); | 1666 | + resultSaveMapm = savaStationAndStationRouteCacheInfo(stationJSON, sectionDistance, sectionDuration, |
| 1667 | + dbType, radius, shapesType, destroy, versions, sumUpOrDownMileage, directions, resultLine, | ||
| 1668 | + baseRes); | ||
| 1557 | } | 1669 | } |
| 1558 | // 路段长度 | 1670 | // 路段长度 |
| 1559 | sectionDistance = Double.valueOf(resultSaveMapm.get("sectionDistance").toString()); | 1671 | sectionDistance = Double.valueOf(resultSaveMapm.get("sectionDistance").toString()); |
| 1560 | // 路段时长 | 1672 | // 路段时长 |
| 1561 | sectionDuration = Double.valueOf(resultSaveMapm.get("sectionDuration").toString()); | 1673 | sectionDuration = Double.valueOf(resultSaveMapm.get("sectionDuration").toString()); |
| 1562 | // 如果路段信息JSON字符串不为空 | 1674 | // 如果路段信息JSON字符串不为空 |
| 1563 | - if(!sectionJSON.equals("")) { | ||
| 1564 | - SaveSectionAndSectionRouteCache(sectionJSON, speedLimitStr, sectionDistance, sectionDuration, dbType, versions, resultLine, destroy, directions); | 1675 | + if (!sectionJSON.equals("")) { |
| 1676 | + SaveSectionAndSectionRouteCache(sectionJSON, speedLimitStr, sectionDistance, sectionDuration, dbType, | ||
| 1677 | + versions, resultLine, destroy, directions); | ||
| 1565 | } | 1678 | } |
| 1566 | // 里程 | 1679 | // 里程 |
| 1567 | sumUpOrDownMileage = Double.valueOf(resultSaveMapm.get("sumUpOrDownMileage").toString()); | 1680 | sumUpOrDownMileage = Double.valueOf(resultSaveMapm.get("sumUpOrDownMileage").toString()); |
| @@ -1569,7 +1682,7 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -1569,7 +1682,7 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 1569 | sumUpOrDownMileage = s.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); | 1682 | sumUpOrDownMileage = s.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); |
| 1570 | // 更新里程 | 1683 | // 更新里程 |
| 1571 | // updateLineInfoUpOrDownMileage( resultLine , directions, sumUpOrDownMileage); | 1684 | // updateLineInfoUpOrDownMileage( resultLine , directions, sumUpOrDownMileage); |
| 1572 | - if(directions==0) { | 1685 | + if (directions == 0) { |
| 1573 | // lineUpdateStationName(resultLine); | 1686 | // lineUpdateStationName(resultLine); |
| 1574 | } | 1687 | } |
| 1575 | resultMap.put("status", ResponseCode.SUCCESS); | 1688 | resultMap.put("status", ResponseCode.SUCCESS); |
| @@ -1578,98 +1691,111 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -1578,98 +1691,111 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 1578 | resultMap.put("status", ResponseCode.ERROR); | 1691 | resultMap.put("status", ResponseCode.ERROR); |
| 1579 | logger.error("save erro.", e); | 1692 | logger.error("save erro.", e); |
| 1580 | } | 1693 | } |
| 1581 | - | 1694 | + |
| 1582 | return resultMap; | 1695 | return resultMap; |
| 1583 | } | 1696 | } |
| 1584 | - | 1697 | + |
| 1585 | /** | 1698 | /** |
| 1586 | * @param isHaveId 存在站点的id | 1699 | * @param isHaveId 存在站点的id |
| 1587 | - * @param isHave 是否存在站点 | 1700 | + * @param isHave 是否存在站点 |
| 1588 | * @Description :TODO(保存站点和缓存站点路由信息) | 1701 | * @Description :TODO(保存站点和缓存站点路由信息) |
| 1589 | * | 1702 | * |
| 1590 | */ | 1703 | */ |
| 1591 | - public Map<String, Object> savaStationAndStationRouteCacheInfo(String stationJSON,double sectionDistance,double sectionDuration,String dbType, | ||
| 1592 | - int radius,String shapesType,int destroy,int versions,double sumUpOrDownMileage,int directions,Line resultLine,String baseRes) throws Exception{ | ||
| 1593 | - Map<String, Object> paramsMeleageAndDistncDura = new HashMap<String,Object>(); | 1704 | + public Map<String, Object> savaStationAndStationRouteCacheInfo(String stationJSON, double sectionDistance, |
| 1705 | + double sectionDuration, String dbType, int radius, String shapesType, int destroy, int versions, | ||
| 1706 | + double sumUpOrDownMileage, int directions, Line resultLine, String baseRes) throws Exception { | ||
| 1707 | + Map<String, Object> paramsMeleageAndDistncDura = new HashMap<String, Object>(); | ||
| 1594 | JSONArray stationsArray = JSONArray.parseArray(stationJSON); | 1708 | JSONArray stationsArray = JSONArray.parseArray(stationJSON); |
| 1595 | - if(stationsArray.size()>0) { | 1709 | + if (stationsArray.size() > 0) { |
| 1596 | // 环线起点站 | 1710 | // 环线起点站 |
| 1597 | - Station loopStartStation = new Station(); | 1711 | + Station loopStartStation = new Station(); |
| 1598 | // 更新路线前删除线路缓存站点 | 1712 | // 更新路线前删除线路缓存站点 |
| 1599 | - routeCacheRepository.stationRouteCacheDel(resultLine.getLineCode(),directions); | ||
| 1600 | - for(int i = 0;i <stationsArray.size();i++) { | 1713 | + routeCacheRepository.stationRouteCacheDel(resultLine.getLineCode(), directions); |
| 1714 | + for (int i = 0; i < stationsArray.size(); i++) { | ||
| 1601 | // 站点名称 | 1715 | // 站点名称 |
| 1602 | - String stationName = stationsArray.getJSONObject(i).equals("") ? "" : stationsArray.getJSONObject(i).get("name").toString(); | ||
| 1603 | - Double distance = stationsArray.getJSONObject(i).get("distance").equals("") ? 0.0d : Double.parseDouble(stationsArray.getJSONObject(i).get("distance").toString()); | 1716 | + String stationName = stationsArray.getJSONObject(i).equals("") ? "" |
| 1717 | + : stationsArray.getJSONObject(i).get("name").toString(); | ||
| 1718 | + Double distance = stationsArray.getJSONObject(i).get("distance").equals("") ? 0.0d | ||
| 1719 | + : Double.parseDouble(stationsArray.getJSONObject(i).get("distance").toString()); | ||
| 1604 | // 转成公里 | 1720 | // 转成公里 |
| 1605 | - distance = distance/1000; | 1721 | + distance = distance / 1000; |
| 1606 | BigDecimal d = new BigDecimal(distance); | 1722 | BigDecimal d = new BigDecimal(distance); |
| 1607 | distance = d.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); | 1723 | distance = d.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); |
| 1608 | - sectionDistance= distance + sectionDistance; | ||
| 1609 | - Double duration = stationsArray.getJSONObject(i).get("duration").equals("") ? 0.0d : Double.parseDouble(stationsArray.getJSONObject(i).get("duration").toString()); | 1724 | + sectionDistance = distance + sectionDistance; |
| 1725 | + Double duration = stationsArray.getJSONObject(i).get("duration").equals("") ? 0.0d | ||
| 1726 | + : Double.parseDouble(stationsArray.getJSONObject(i).get("duration").toString()); | ||
| 1610 | // 转成分钟 | 1727 | // 转成分钟 |
| 1611 | - duration = duration/60; | 1728 | + duration = duration / 60; |
| 1612 | BigDecimal t = new BigDecimal(duration); | 1729 | BigDecimal t = new BigDecimal(duration); |
| 1613 | duration = t.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); | 1730 | duration = t.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); |
| 1614 | sectionDuration = duration + sectionDuration; | 1731 | sectionDuration = duration + sectionDuration; |
| 1615 | // 百度经纬度坐标 | 1732 | // 百度经纬度坐标 |
| 1616 | String bJwpoints = ""; | 1733 | String bJwpoints = ""; |
| 1617 | // 百度坐标经度 | 1734 | // 百度坐标经度 |
| 1618 | - String bLonx = JSONObject.parseObject(stationsArray.getJSONObject(i).get("potion").toString()).get("lng").toString(); | ||
| 1619 | - bLonx = bLonx==null || bLonx.equals("") ? "0" : bLonx; | 1735 | + String bLonx = JSONObject.parseObject(stationsArray.getJSONObject(i).get("potion").toString()) |
| 1736 | + .get("lng").toString(); | ||
| 1737 | + bLonx = bLonx == null || bLonx.equals("") ? "0" : bLonx; | ||
| 1620 | // 百度坐标纬度 | 1738 | // 百度坐标纬度 |
| 1621 | - String bLatx = JSONObject.parseObject(stationsArray.getJSONObject(i).get("potion").toString()).get("lat").toString(); | ||
| 1622 | - bLatx = bLatx==null || bLatx.equals("") ? "0" : bLatx; | 1739 | + String bLatx = JSONObject.parseObject(stationsArray.getJSONObject(i).get("potion").toString()) |
| 1740 | + .get("lat").toString(); | ||
| 1741 | + bLatx = bLatx == null || bLatx.equals("") ? "0" : bLatx; | ||
| 1623 | // List<Object[]> stationNameList = repository.findStationName(directions,stationName); | 1742 | // List<Object[]> stationNameList = repository.findStationName(directions,stationName); |
| 1624 | - //Map<String, Object> isHaveMap = isHaveStationname(bLonx,bLatx,stationNameList); | 1743 | + // Map<String, Object> isHaveMap = |
| 1744 | + // isHaveStationname(bLonx,bLatx,stationNameList); | ||
| 1625 | // 初始化站点对象 | 1745 | // 初始化站点对象 |
| 1626 | - Station arg0 = new Station(); | 1746 | + Station arg0 = new Station(); |
| 1627 | // 站点编码 | 1747 | // 站点编码 |
| 1628 | long stationCode = GetUIDAndCode.getStationId(); | 1748 | long stationCode = GetUIDAndCode.getStationId(); |
| 1629 | arg0.setStationCod(String.valueOf(stationCode)); | 1749 | arg0.setStationCod(String.valueOf(stationCode)); |
| 1630 | - arg0.setId((int)stationCode); | 1750 | + arg0.setId((int) stationCode); |
| 1631 | // 存在的点就不添加到数据库(起终点站重新添加站点) | 1751 | // 存在的点就不添加到数据库(起终点站重新添加站点) |
| 1632 | - if(Boolean.parseBoolean(stationsArray.getJSONObject(i).get("isHave").toString())) { | 1752 | + if (Boolean.parseBoolean(stationsArray.getJSONObject(i).get("isHave").toString())) { |
| 1633 | Integer stationId = Integer.parseInt(stationsArray.getJSONObject(i).get("id").toString()); | 1753 | Integer stationId = Integer.parseInt(stationsArray.getJSONObject(i).get("id").toString()); |
| 1634 | Station station = repository.findById(stationId).get(); | 1754 | Station station = repository.findById(stationId).get(); |
| 1635 | arg0.setDbType(dbType); | 1755 | arg0.setDbType(dbType); |
| 1636 | - String gLonxStr = JSONObject.parseObject(stationsArray.getJSONObject(i).get("wgs").toString()).get("x").equals("") ? null : JSONObject.parseObject(stationsArray.getJSONObject(i).get("wgs").toString()).get("x").toString(); | ||
| 1637 | - String gLatyStr = JSONObject.parseObject(stationsArray.getJSONObject(i).get("wgs").toString()).get("y").equals("") ? null : JSONObject.parseObject(stationsArray.getJSONObject(i).get("wgs").toString()).get("y").toString(); | 1756 | + String gLonxStr = JSONObject.parseObject(stationsArray.getJSONObject(i).get("wgs").toString()) |
| 1757 | + .get("x").equals("") ? null | ||
| 1758 | + : JSONObject.parseObject(stationsArray.getJSONObject(i).get("wgs").toString()) | ||
| 1759 | + .get("x").toString(); | ||
| 1760 | + String gLatyStr = JSONObject.parseObject(stationsArray.getJSONObject(i).get("wgs").toString()) | ||
| 1761 | + .get("y").equals("") ? null | ||
| 1762 | + : JSONObject.parseObject(stationsArray.getJSONObject(i).get("wgs").toString()) | ||
| 1763 | + .get("y").toString(); | ||
| 1638 | float gLonx = 0.0f; | 1764 | float gLonx = 0.0f; |
| 1639 | float gLaty = 0.0f; | 1765 | float gLaty = 0.0f; |
| 1640 | Location resultPoint = null; | 1766 | Location resultPoint = null; |
| 1641 | - if(baseRes.equals("No")){ | 1767 | + if (baseRes.equals("No")) { |
| 1642 | /** BD to WGS坐标 */ | 1768 | /** BD to WGS坐标 */ |
| 1643 | - resultPoint = FromBDPointToWGSPoint(bLonx,bLatx); | ||
| 1644 | - if(gLonxStr==null) | ||
| 1645 | - gLonx = (float)resultPoint.getLng(); | 1769 | + resultPoint = FromBDPointToWGSPoint(bLonx, bLatx); |
| 1770 | + if (gLonxStr == null) | ||
| 1771 | + gLonx = (float) resultPoint.getLng(); | ||
| 1646 | else | 1772 | else |
| 1647 | - gLonx = Float.valueOf(gLonxStr); | ||
| 1648 | - if(gLatyStr==null) | ||
| 1649 | - gLaty = (float)resultPoint.getLat(); | 1773 | + gLonx = Float.valueOf(gLonxStr); |
| 1774 | + if (gLatyStr == null) | ||
| 1775 | + gLaty = (float) resultPoint.getLat(); | ||
| 1650 | else | 1776 | else |
| 1651 | - gLaty = Float.valueOf(gLatyStr); | 1777 | + gLaty = Float.valueOf(gLatyStr); |
| 1652 | arg0.setgLonx(gLonx); | 1778 | arg0.setgLonx(gLonx); |
| 1653 | arg0.setgLaty(gLaty); | 1779 | arg0.setgLaty(gLaty); |
| 1654 | // 百度经纬度 | 1780 | // 百度经纬度 |
| 1655 | bJwpoints = bLonx + " " + bLatx; | 1781 | bJwpoints = bLonx + " " + bLatx; |
| 1656 | arg0.setbJwpoints(bJwpoints); | 1782 | arg0.setbJwpoints(bJwpoints); |
| 1657 | - }else if(baseRes.equals("GCJ02")){ | 1783 | + } else if (baseRes.equals("GCJ02")) { |
| 1658 | Location bdLoc = TransGPS.LocationMake(Double.valueOf(gLonxStr), Double.valueOf(gLatyStr)); | 1784 | Location bdLoc = TransGPS.LocationMake(Double.valueOf(gLonxStr), Double.valueOf(gLatyStr)); |
| 1659 | Location location = TransGPS.bd_encrypt(bdLoc); | 1785 | Location location = TransGPS.bd_encrypt(bdLoc); |
| 1660 | String GCJLng = String.valueOf(location.getLng()); | 1786 | String GCJLng = String.valueOf(location.getLng()); |
| 1661 | String GCJLat = String.valueOf(location.getLat()); | 1787 | String GCJLat = String.valueOf(location.getLat()); |
| 1662 | - resultPoint = FromBDPointToWGSPoint(GCJLng,GCJLat); | ||
| 1663 | - bJwpoints = GCJLng + " " +GCJLat; | ||
| 1664 | - arg0.setgLonx((float)location.getLng()); | ||
| 1665 | - arg0.setgLaty((float)location.getLat()); | 1788 | + resultPoint = FromBDPointToWGSPoint(GCJLng, GCJLat); |
| 1789 | + bJwpoints = GCJLng + " " + GCJLat; | ||
| 1790 | + arg0.setgLonx((float) location.getLng()); | ||
| 1791 | + arg0.setgLaty((float) location.getLat()); | ||
| 1666 | arg0.setbJwpoints(bJwpoints); | 1792 | arg0.setbJwpoints(bJwpoints); |
| 1667 | - }else if(baseRes.equals("BD09")){ | 1793 | + } else if (baseRes.equals("BD09")) { |
| 1668 | resultPoint = FromBDPointToWGSPoint(gLonxStr, gLatyStr); | 1794 | resultPoint = FromBDPointToWGSPoint(gLonxStr, gLatyStr); |
| 1669 | - bJwpoints = gLonxStr+ " " + gLatyStr; | ||
| 1670 | - arg0.setgLonx((float)resultPoint.getLng()); | ||
| 1671 | - arg0.setgLaty((float)resultPoint.getLat()); | ||
| 1672 | - }else if(baseRes.equals("WGS84")){ | 1795 | + bJwpoints = gLonxStr + " " + gLatyStr; |
| 1796 | + arg0.setgLonx((float) resultPoint.getLng()); | ||
| 1797 | + arg0.setgLaty((float) resultPoint.getLat()); | ||
| 1798 | + } else if (baseRes.equals("WGS84")) { | ||
| 1673 | Location bdLoc = TransGPS.LocationMake(Double.valueOf(gLonxStr), Double.valueOf(gLatyStr)); | 1799 | Location bdLoc = TransGPS.LocationMake(Double.valueOf(gLonxStr), Double.valueOf(gLatyStr)); |
| 1674 | Location gcjLoc = TransGPS.transformFromWGSToGCJ(bdLoc); | 1800 | Location gcjLoc = TransGPS.transformFromWGSToGCJ(bdLoc); |
| 1675 | Location bdEn = TransGPS.bd_encrypt(gcjLoc); | 1801 | Location bdEn = TransGPS.bd_encrypt(gcjLoc); |
| @@ -1687,59 +1813,65 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -1687,59 +1813,65 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 1687 | arg0.setbJwpoints(bJwpoints); | 1813 | arg0.setbJwpoints(bJwpoints); |
| 1688 | // 引用查到站点的名字 | 1814 | // 引用查到站点的名字 |
| 1689 | arg0.setStationName(station.getStationName()); | 1815 | arg0.setStationName(station.getStationName()); |
| 1690 | - if (i==stationsArray.size()-1 && resultLine.getLinePlayType() == 1) {// 环线终点和起点引用同一个站 | 1816 | + if (i == stationsArray.size() - 1 && resultLine.getLinePlayType() == 1) {// 环线终点和起点引用同一个站 |
| 1691 | arg0 = loopStartStation; | 1817 | arg0 = loopStartStation; |
| 1692 | } else { | 1818 | } else { |
| 1693 | repository.save(arg0); | 1819 | repository.save(arg0); |
| 1694 | - if (i==0 && resultLine.getLinePlayType() == 1) {// 环线终点和起点引用同一个站 | 1820 | + if (i == 0 && resultLine.getLinePlayType() == 1) {// 环线终点和起点引用同一个站 |
| 1695 | loopStartStation = arg0; | 1821 | loopStartStation = arg0; |
| 1696 | } | 1822 | } |
| 1697 | } | 1823 | } |
| 1698 | - }else { | 1824 | + } else { |
| 1699 | arg0.setStationName(stationName); | 1825 | arg0.setStationName(stationName); |
| 1700 | // 原坐标类型 | 1826 | // 原坐标类型 |
| 1701 | arg0.setDbType(dbType); | 1827 | arg0.setDbType(dbType); |
| 1702 | - String gLonxStr = JSONObject.parseObject(stationsArray.getJSONObject(i).get("wgs").toString()).get("x").equals("") ? null : JSONObject.parseObject(stationsArray.getJSONObject(i).get("wgs").toString()).get("x").toString(); | ||
| 1703 | - String gLatyStr = JSONObject.parseObject(stationsArray.getJSONObject(i).get("wgs").toString()).get("y").equals("") ? null : JSONObject.parseObject(stationsArray.getJSONObject(i).get("wgs").toString()).get("y").toString(); | 1828 | + String gLonxStr = JSONObject.parseObject(stationsArray.getJSONObject(i).get("wgs").toString()) |
| 1829 | + .get("x").equals("") ? null | ||
| 1830 | + : JSONObject.parseObject(stationsArray.getJSONObject(i).get("wgs").toString()) | ||
| 1831 | + .get("x").toString(); | ||
| 1832 | + String gLatyStr = JSONObject.parseObject(stationsArray.getJSONObject(i).get("wgs").toString()) | ||
| 1833 | + .get("y").equals("") ? null | ||
| 1834 | + : JSONObject.parseObject(stationsArray.getJSONObject(i).get("wgs").toString()) | ||
| 1835 | + .get("y").toString(); | ||
| 1704 | float gLonx = 0.0f; | 1836 | float gLonx = 0.0f; |
| 1705 | float gLaty = 0.0f; | 1837 | float gLaty = 0.0f; |
| 1706 | Location resultPoint = null; | 1838 | Location resultPoint = null; |
| 1707 | - if(baseRes.equals("No")){ | 1839 | + if (baseRes.equals("No")) { |
| 1708 | /** BD to WGS坐标 */ | 1840 | /** BD to WGS坐标 */ |
| 1709 | - resultPoint = FromBDPointToWGSPoint(bLonx,bLatx); | ||
| 1710 | - if(gLonxStr==null) | ||
| 1711 | - gLonx = (float)resultPoint.getLng(); | ||
| 1712 | - else | ||
| 1713 | - gLonx = Float.valueOf(gLonxStr); | ||
| 1714 | - if(gLatyStr==null) | ||
| 1715 | - gLaty = (float)resultPoint.getLat(); | ||
| 1716 | - else | ||
| 1717 | - gLaty = Float.valueOf(gLatyStr); | 1841 | + resultPoint = FromBDPointToWGSPoint(bLonx, bLatx); |
| 1842 | + if (gLonxStr == null) | ||
| 1843 | + gLonx = (float) resultPoint.getLng(); | ||
| 1844 | + else | ||
| 1845 | + gLonx = Float.valueOf(gLonxStr); | ||
| 1846 | + if (gLatyStr == null) | ||
| 1847 | + gLaty = (float) resultPoint.getLat(); | ||
| 1848 | + else | ||
| 1849 | + gLaty = Float.valueOf(gLatyStr); | ||
| 1718 | arg0.setgLonx(gLonx); | 1850 | arg0.setgLonx(gLonx); |
| 1719 | arg0.setgLaty(gLaty); | 1851 | arg0.setgLaty(gLaty); |
| 1720 | // 百度经纬度 | 1852 | // 百度经纬度 |
| 1721 | bJwpoints = bLonx + " " + bLatx; | 1853 | bJwpoints = bLonx + " " + bLatx; |
| 1722 | arg0.setbJwpoints(bJwpoints); | 1854 | arg0.setbJwpoints(bJwpoints); |
| 1723 | - }else if(baseRes.equals("GCJ02")){ | 1855 | + } else if (baseRes.equals("GCJ02")) { |
| 1724 | Location bdLoc = TransGPS.LocationMake(Double.valueOf(gLonxStr), Double.valueOf(gLatyStr)); | 1856 | Location bdLoc = TransGPS.LocationMake(Double.valueOf(gLonxStr), Double.valueOf(gLatyStr)); |
| 1725 | Location location = TransGPS.bd_encrypt(bdLoc); | 1857 | Location location = TransGPS.bd_encrypt(bdLoc); |
| 1726 | String GCJLng = String.valueOf(location.getLng()); | 1858 | String GCJLng = String.valueOf(location.getLng()); |
| 1727 | String GCJLat = String.valueOf(location.getLat()); | 1859 | String GCJLat = String.valueOf(location.getLat()); |
| 1728 | - resultPoint = FromBDPointToWGSPoint(GCJLng,GCJLat); | ||
| 1729 | - bJwpoints = GCJLng + " " +GCJLat; | ||
| 1730 | - arg0.setgLonx((float)location.getLng()); | ||
| 1731 | - arg0.setgLaty((float)location.getLat()); | 1860 | + resultPoint = FromBDPointToWGSPoint(GCJLng, GCJLat); |
| 1861 | + bJwpoints = GCJLng + " " + GCJLat; | ||
| 1862 | + arg0.setgLonx((float) location.getLng()); | ||
| 1863 | + arg0.setgLaty((float) location.getLat()); | ||
| 1732 | arg0.setbJwpoints(bJwpoints); | 1864 | arg0.setbJwpoints(bJwpoints); |
| 1733 | - }else if(baseRes.equals("BD09")){ | 1865 | + } else if (baseRes.equals("BD09")) { |
| 1734 | resultPoint = FromBDPointToWGSPoint(gLonxStr, gLatyStr); | 1866 | resultPoint = FromBDPointToWGSPoint(gLonxStr, gLatyStr); |
| 1735 | - bJwpoints = gLonxStr+ " " + gLatyStr; | ||
| 1736 | - arg0.setgLonx((float)resultPoint.getLng()); | ||
| 1737 | - arg0.setgLaty((float)resultPoint.getLat()); | ||
| 1738 | - }else if(baseRes.equals("WGS84")){ | 1867 | + bJwpoints = gLonxStr + " " + gLatyStr; |
| 1868 | + arg0.setgLonx((float) resultPoint.getLng()); | ||
| 1869 | + arg0.setgLaty((float) resultPoint.getLat()); | ||
| 1870 | + } else if (baseRes.equals("WGS84")) { | ||
| 1739 | Location bdLoc = TransGPS.LocationMake(Double.valueOf(gLonxStr), Double.valueOf(gLatyStr)); | 1871 | Location bdLoc = TransGPS.LocationMake(Double.valueOf(gLonxStr), Double.valueOf(gLatyStr)); |
| 1740 | Location gcjLoc = TransGPS.transformFromWGSToGCJ(bdLoc); | 1872 | Location gcjLoc = TransGPS.transformFromWGSToGCJ(bdLoc); |
| 1741 | Location bdEn = TransGPS.bd_encrypt(gcjLoc); | 1873 | Location bdEn = TransGPS.bd_encrypt(gcjLoc); |
| 1742 | - bJwpoints = String.valueOf(bdEn.getLng()) + " " + String.valueOf(bdEn.getLat()); | 1874 | + bJwpoints = String.valueOf(bdEn.getLng()) + " " + String.valueOf(bdEn.getLat()); |
| 1743 | arg0.setbJwpoints(bJwpoints); | 1875 | arg0.setbJwpoints(bJwpoints); |
| 1744 | arg0.setgLonx(Float.valueOf(gLonxStr)); | 1876 | arg0.setgLonx(Float.valueOf(gLonxStr)); |
| 1745 | arg0.setgLaty(Float.valueOf(gLatyStr)); | 1877 | arg0.setgLaty(Float.valueOf(gLatyStr)); |
| @@ -1752,38 +1884,38 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -1752,38 +1884,38 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 1752 | arg0.setVersions(versions); | 1884 | arg0.setVersions(versions); |
| 1753 | arg0.setbJwpoints(bJwpoints); | 1885 | arg0.setbJwpoints(bJwpoints); |
| 1754 | // 插入站点信息 | 1886 | // 插入站点信息 |
| 1755 | - if (i==0 && resultLine.getLinePlayType() == 1) {// 环线终点和起点引用同一个站 | 1887 | + if (i == 0 && resultLine.getLinePlayType() == 1) {// 环线终点和起点引用同一个站 |
| 1756 | loopStartStation = arg0; | 1888 | loopStartStation = arg0; |
| 1757 | repository.save(arg0); | 1889 | repository.save(arg0); |
| 1758 | - } else if (i==stationsArray.size()-1 && resultLine.getLinePlayType() == 1) {// 环线终点和起点引用同一个站 | 1890 | + } else if (i == stationsArray.size() - 1 && resultLine.getLinePlayType() == 1) {// 环线终点和起点引用同一个站 |
| 1759 | arg0 = loopStartStation; | 1891 | arg0 = loopStartStation; |
| 1760 | } else { | 1892 | } else { |
| 1761 | repository.save(arg0); | 1893 | repository.save(arg0); |
| 1762 | } | 1894 | } |
| 1763 | - | 1895 | + |
| 1764 | } | 1896 | } |
| 1765 | // 站点路由对象 | 1897 | // 站点路由对象 |
| 1766 | StationRouteCache route = new StationRouteCache(); | 1898 | StationRouteCache route = new StationRouteCache(); |
| 1767 | // 站点名称 | 1899 | // 站点名称 |
| 1768 | - if(i==stationsArray.size()-1 && resultLine.getLinePlayType() == 1) | 1900 | + if (i == stationsArray.size() - 1 && resultLine.getLinePlayType() == 1) |
| 1769 | route.setStationName(loopStartStation.getStationName()); | 1901 | route.setStationName(loopStartStation.getStationName()); |
| 1770 | else | 1902 | else |
| 1771 | route.setStationName(stationName); | 1903 | route.setStationName(stationName); |
| 1772 | route.setDistances(distance); | 1904 | route.setDistances(distance); |
| 1773 | - sumUpOrDownMileage = sumUpOrDownMileage + distance; | 1905 | + sumUpOrDownMileage = sumUpOrDownMileage + distance; |
| 1774 | route.setToTime(duration); | 1906 | route.setToTime(duration); |
| 1775 | // 站点编码 | 1907 | // 站点编码 |
| 1776 | route.setStationCode(arg0.getStationCod()); | 1908 | route.setStationCode(arg0.getStationCod()); |
| 1777 | // 站点序号 | 1909 | // 站点序号 |
| 1778 | - route.setStationRouteCode((i+1)*100); | 1910 | + route.setStationRouteCode((i + 1) * 100); |
| 1779 | // 站点类型 | 1911 | // 站点类型 |
| 1780 | - if(i==0) { | 1912 | + if (i == 0) { |
| 1781 | // 起始站 | 1913 | // 起始站 |
| 1782 | route.setStationMark("B"); | 1914 | route.setStationMark("B"); |
| 1783 | - }else if(i==stationsArray.size()-1) { | 1915 | + } else if (i == stationsArray.size() - 1) { |
| 1784 | // 终点站 | 1916 | // 终点站 |
| 1785 | route.setStationMark("E"); | 1917 | route.setStationMark("E"); |
| 1786 | - }else { | 1918 | + } else { |
| 1787 | // 中途站 | 1919 | // 中途站 |
| 1788 | route.setStationMark("Z"); | 1920 | route.setStationMark("Z"); |
| 1789 | } | 1921 | } |
| @@ -1798,51 +1930,54 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -1798,51 +1930,54 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 1798 | // 线路编码 | 1930 | // 线路编码 |
| 1799 | route.setLineCode(resultLine.getLineCode()); | 1931 | route.setLineCode(resultLine.getLineCode()); |
| 1800 | route.setDestroy(destroy); | 1932 | route.setDestroy(destroy); |
| 1801 | - // 插入站点路由信息 | 1933 | + // 插入站点路由信息 |
| 1802 | routeCacheRepository.save(route); | 1934 | routeCacheRepository.save(route); |
| 1803 | - | 1935 | + |
| 1804 | } | 1936 | } |
| 1805 | paramsMeleageAndDistncDura.put("sumUpOrDownMileage", sumUpOrDownMileage); | 1937 | paramsMeleageAndDistncDura.put("sumUpOrDownMileage", sumUpOrDownMileage); |
| 1806 | paramsMeleageAndDistncDura.put("sectionDistance", sectionDistance); | 1938 | paramsMeleageAndDistncDura.put("sectionDistance", sectionDistance); |
| 1807 | paramsMeleageAndDistncDura.put("sectionDuration", sectionDuration); | 1939 | paramsMeleageAndDistncDura.put("sectionDuration", sectionDuration); |
| 1808 | - paramsMeleageAndDistncDura.put("stationdata",stationsArray); | 1940 | + paramsMeleageAndDistncDura.put("stationdata", stationsArray); |
| 1809 | } | 1941 | } |
| 1810 | return paramsMeleageAndDistncDura; | 1942 | return paramsMeleageAndDistncDura; |
| 1811 | } | 1943 | } |
| 1812 | - | 1944 | + |
| 1813 | /** | 1945 | /** |
| 1814 | * @Description :TODO(保存路段和缓存路段路由信息) | 1946 | * @Description :TODO(保存路段和缓存路段路由信息) |
| 1815 | * | 1947 | * |
| 1816 | */ | 1948 | */ |
| 1817 | - public void SaveSectionAndSectionRouteCache(String sectionJSON,String speedLimitStr,double sectionDistance, double sectionTime, | ||
| 1818 | - String dbType,Integer versions,Line resultLine,Integer destroy,Integer directions) { | 1949 | + public void SaveSectionAndSectionRouteCache(String sectionJSON, String speedLimitStr, double sectionDistance, |
| 1950 | + double sectionTime, String dbType, Integer versions, Line resultLine, Integer destroy, Integer directions) { | ||
| 1819 | // 转换成JSON数组 | 1951 | // 转换成JSON数组 |
| 1820 | JSONArray sectionsArray = JSONArray.parseArray(sectionJSON); | 1952 | JSONArray sectionsArray = JSONArray.parseArray(sectionJSON); |
| 1821 | // 更新路线前删除线路缓存路段 | 1953 | // 更新路线前删除线路缓存路段 |
| 1822 | - sectionRouteCacheRepository.sectionRouteCacheDel(resultLine.getLineCode(),directions); | 1954 | + sectionRouteCacheRepository.sectionRouteCacheDel(resultLine.getLineCode(), directions); |
| 1823 | // 遍历 | 1955 | // 遍历 |
| 1824 | - for(int s = 0 ;s<sectionsArray.size();s++) { | 1956 | + for (int s = 0; s < sectionsArray.size(); s++) { |
| 1825 | // 站点名称 | 1957 | // 站点名称 |
| 1826 | - String sectionName = sectionsArray.getJSONObject(s).equals("") ? "" : sectionsArray.getJSONObject(s).get("sectionName").toString(); | ||
| 1827 | - String pointsStr = sectionsArray.getJSONObject(s).equals("") ? "" : sectionsArray.getJSONObject(s).get("points").toString(); | 1958 | + String sectionName = sectionsArray.getJSONObject(s).equals("") ? "" |
| 1959 | + : sectionsArray.getJSONObject(s).get("sectionName").toString(); | ||
| 1960 | + String pointsStr = sectionsArray.getJSONObject(s).equals("") ? "" | ||
| 1961 | + : sectionsArray.getJSONObject(s).get("points").toString(); | ||
| 1828 | // 原始线状图形坐标集合 | 1962 | // 原始线状图形坐标集合 |
| 1829 | String sectionsBpoints = ""; | 1963 | String sectionsBpoints = ""; |
| 1830 | // WGS线状图形坐标集合 | 1964 | // WGS线状图形坐标集合 |
| 1831 | String sectionsWJPpoints = ""; | 1965 | String sectionsWJPpoints = ""; |
| 1832 | - if(!pointsStr.equals("")){ | 1966 | + if (!pointsStr.equals("")) { |
| 1833 | JSONArray pointsArray = JSONArray.parseArray(pointsStr); | 1967 | JSONArray pointsArray = JSONArray.parseArray(pointsStr); |
| 1834 | - for(int p =0;p<pointsArray.size();p++){ | 1968 | + for (int p = 0; p < pointsArray.size(); p++) { |
| 1835 | String pointsLngStr = pointsArray.getJSONObject(p).get("lng").toString(); | 1969 | String pointsLngStr = pointsArray.getJSONObject(p).get("lng").toString(); |
| 1836 | String pointsLatStr = pointsArray.getJSONObject(p).get("lat").toString(); | 1970 | String pointsLatStr = pointsArray.getJSONObject(p).get("lat").toString(); |
| 1837 | - Location resultPoint = FromBDPointToWGSPoint(pointsLngStr,pointsLatStr); | 1971 | + Location resultPoint = FromBDPointToWGSPoint(pointsLngStr, pointsLatStr); |
| 1838 | String WGSLngStr = String.valueOf(resultPoint.getLng()); | 1972 | String WGSLngStr = String.valueOf(resultPoint.getLng()); |
| 1839 | String WGSLatStr = String.valueOf(resultPoint.getLat()); | 1973 | String WGSLatStr = String.valueOf(resultPoint.getLat()); |
| 1840 | - if(p==pointsArray.size()-1){ | 1974 | + if (p == pointsArray.size() - 1) { |
| 1841 | sectionsBpoints = sectionsBpoints + pointsLngStr + " " + pointsLatStr; | 1975 | sectionsBpoints = sectionsBpoints + pointsLngStr + " " + pointsLatStr; |
| 1842 | - sectionsWJPpoints = sectionsWJPpoints + WGSLngStr + " " + WGSLatStr; | ||
| 1843 | - }else { | ||
| 1844 | - sectionsBpoints = sectionsBpoints + pointsArray.getJSONObject(p).get("lng").toString() + " " +pointsArray.getJSONObject(p).get("lat").toString()+","; | ||
| 1845 | - sectionsWJPpoints = sectionsWJPpoints + WGSLngStr + " " + WGSLatStr + ","; | 1976 | + sectionsWJPpoints = sectionsWJPpoints + WGSLngStr + " " + WGSLatStr; |
| 1977 | + } else { | ||
| 1978 | + sectionsBpoints = sectionsBpoints + pointsArray.getJSONObject(p).get("lng").toString() + " " | ||
| 1979 | + + pointsArray.getJSONObject(p).get("lat").toString() + ","; | ||
| 1980 | + sectionsWJPpoints = sectionsWJPpoints + WGSLngStr + " " + WGSLatStr + ","; | ||
| 1846 | } | 1981 | } |
| 1847 | } | 1982 | } |
| 1848 | } | 1983 | } |
| @@ -1858,7 +1993,7 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -1858,7 +1993,7 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 1858 | // 中间节点 | 1993 | // 中间节点 |
| 1859 | String middleNode = ""; | 1994 | String middleNode = ""; |
| 1860 | // WGS坐标点集合 | 1995 | // WGS坐标点集合 |
| 1861 | - String gsectionVector = "LINESTRING(" + sectionsWJPpoints +")"; | 1996 | + String gsectionVector = "LINESTRING(" + sectionsWJPpoints + ")"; |
| 1862 | // 原坐标点集合 | 1997 | // 原坐标点集合 |
| 1863 | String bsectionVector = "LINESTRING(" + sectionsBpoints + ")"; | 1998 | String bsectionVector = "LINESTRING(" + sectionsBpoints + ")"; |
| 1864 | // 城建坐标点集合 | 1999 | // 城建坐标点集合 |
| @@ -1871,18 +2006,18 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -1871,18 +2006,18 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 1871 | double speedLimit = Double.parseDouble(speedLimitStr); | 2006 | double speedLimit = Double.parseDouble(speedLimitStr); |
| 1872 | // 说明 | 2007 | // 说明 |
| 1873 | String descriptions = ""; | 2008 | String descriptions = ""; |
| 1874 | - sectionRepository.systemSave(sectionCode, sectionName, crosesRoad, endNode, startNode, | ||
| 1875 | - | ||
| 1876 | - middleNode, gsectionVector, bsectionVector, sectionType, csectionVector, | ||
| 1877 | - | ||
| 1878 | - roadCoding, sectionDistance, sectionTime, dbType, speedLimit, | ||
| 1879 | - | ||
| 1880 | - descriptions, versions,sectionId); | 2009 | + sectionRepository.systemSave(sectionCode, sectionName, crosesRoad, endNode, startNode, |
| 2010 | + | ||
| 2011 | + middleNode, gsectionVector, bsectionVector, sectionType, csectionVector, | ||
| 2012 | + | ||
| 2013 | + roadCoding, sectionDistance, sectionTime, dbType, speedLimit, | ||
| 2014 | + | ||
| 2015 | + descriptions, versions, sectionId); | ||
| 1881 | Section section = sectionRepository.findById(Integer.parseInt(sectionCode)).get(); | 2016 | Section section = sectionRepository.findById(Integer.parseInt(sectionCode)).get(); |
| 1882 | // 路段路由 | 2017 | // 路段路由 |
| 1883 | SectionRouteCache sectionRoute = new SectionRouteCache(); | 2018 | SectionRouteCache sectionRoute = new SectionRouteCache(); |
| 1884 | // 路段序号 | 2019 | // 路段序号 |
| 1885 | - sectionRoute.setSectionrouteCode((s+1)*100); | 2020 | + sectionRoute.setSectionrouteCode((s + 1) * 100); |
| 1886 | // 线路编码 | 2021 | // 线路编码 |
| 1887 | sectionRoute.setLineCode(resultLine.getLineCode()); | 2022 | sectionRoute.setLineCode(resultLine.getLineCode()); |
| 1888 | // 路段ID | 2023 | // 路段ID |
| @@ -1895,13 +2030,13 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -1895,13 +2030,13 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 1895 | sectionRoute.setVersions(versions); | 2030 | sectionRoute.setVersions(versions); |
| 1896 | sectionRoute.setDestroy(destroy); | 2031 | sectionRoute.setDestroy(destroy); |
| 1897 | // 方向 | 2032 | // 方向 |
| 1898 | - sectionRoute.setDirections(directions); | 2033 | + sectionRoute.setDirections(directions); |
| 1899 | // 保存路段 | 2034 | // 保存路段 |
| 1900 | sectionRouteCacheRepository.save(sectionRoute); | 2035 | sectionRouteCacheRepository.save(sectionRoute); |
| 1901 | } | 2036 | } |
| 1902 | - | 2037 | + |
| 1903 | } | 2038 | } |
| 1904 | - | 2039 | + |
| 1905 | /** | 2040 | /** |
| 1906 | * @Description :TODO(更新缓存站点路由) | 2041 | * @Description :TODO(更新缓存站点路由) |
| 1907 | */ | 2042 | */ |
| @@ -1910,7 +2045,8 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -1910,7 +2045,8 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 1910 | Map<String, Object> resultMap = new HashMap<String, Object>(); | 2045 | Map<String, Object> resultMap = new HashMap<String, Object>(); |
| 1911 | try { | 2046 | try { |
| 1912 | // 站点Id | 2047 | // 站点Id |
| 1913 | - Integer stationId = map.get("stationId").equals("") ? null : Integer.parseInt(map.get("stationId").toString()); | 2048 | + Integer stationId = map.get("stationId").equals("") ? null |
| 2049 | + : Integer.parseInt(map.get("stationId").toString()); | ||
| 1914 | String stationCod = map.get("stationCod").equals("") ? "" : map.get("stationCod").toString(); | 2050 | String stationCod = map.get("stationCod").equals("") ? "" : map.get("stationCod").toString(); |
| 1915 | String zdmc = map.get("zdmc").equals("") ? "" : map.get("zdmc").toString(); | 2051 | String zdmc = map.get("zdmc").equals("") ? "" : map.get("zdmc").toString(); |
| 1916 | // 行业编码 | 2052 | // 行业编码 |
| @@ -1919,22 +2055,22 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -1919,22 +2055,22 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 1919 | String stationName = map.get("stationName").equals("") ? "" : map.get("stationName").toString(); | 2055 | String stationName = map.get("stationName").equals("") ? "" : map.get("stationName").toString(); |
| 1920 | // 所在道路编码 | 2056 | // 所在道路编码 |
| 1921 | String roadCoding = map.get("roadCoding").equals("") ? "" : map.get("roadCoding").toString(); | 2057 | String roadCoding = map.get("roadCoding").equals("") ? "" : map.get("roadCoding").toString(); |
| 1922 | - // 经纬坐标类型 | 2058 | + // 经纬坐标类型 |
| 1923 | String dbType = map.get("dbType").equals("") ? "" : map.get("dbType").toString(); | 2059 | String dbType = map.get("dbType").equals("") ? "" : map.get("dbType").toString(); |
| 1924 | // 百度经纬度坐标 | 2060 | // 百度经纬度坐标 |
| 1925 | String bJwpoints = map.get("bJwpoints").equals("") ? "" : map.get("bJwpoints").toString(); | 2061 | String bJwpoints = map.get("bJwpoints").equals("") ? "" : map.get("bJwpoints").toString(); |
| 1926 | - String bJwpointsArray[] =null; | ||
| 1927 | - if(bJwpoints!=null) { | 2062 | + String bJwpointsArray[] = null; |
| 2063 | + if (bJwpoints != null) { | ||
| 1928 | bJwpointsArray = bJwpoints.split(" "); | 2064 | bJwpointsArray = bJwpoints.split(" "); |
| 1929 | } | 2065 | } |
| 1930 | // WGS经纬度 | 2066 | // WGS经纬度 |
| 1931 | Float gLonx = null; | 2067 | Float gLonx = null; |
| 1932 | // WGS纬度 | 2068 | // WGS纬度 |
| 1933 | Float gLaty = null; | 2069 | Float gLaty = null; |
| 1934 | - if(bJwpointsArray.length>0) { | ||
| 1935 | - Location resultPoint = FromBDPointToWGSPoint(bJwpointsArray[0],bJwpointsArray[1]); | ||
| 1936 | - gLonx = (float)resultPoint.getLng(); | ||
| 1937 | - gLaty = (float)resultPoint.getLat(); | 2070 | + if (bJwpointsArray.length > 0) { |
| 2071 | + Location resultPoint = FromBDPointToWGSPoint(bJwpointsArray[0], bJwpointsArray[1]); | ||
| 2072 | + gLonx = (float) resultPoint.getLng(); | ||
| 2073 | + gLaty = (float) resultPoint.getLat(); | ||
| 1938 | } | 2074 | } |
| 1939 | // 图形类型 | 2075 | // 图形类型 |
| 1940 | String shapesType = map.get("shapesType").equals("") ? "" : map.get("shapesType").toString(); | 2076 | String shapesType = map.get("shapesType").equals("") ? "" : map.get("shapesType").toString(); |
| @@ -1943,63 +2079,69 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -1943,63 +2079,69 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 1943 | // 多边形空间原坐标坐标点集合 | 2079 | // 多边形空间原坐标坐标点集合 |
| 1944 | String bPloygonGrid = map.get("bPolygonGrid").equals("") ? "" : map.get("bPolygonGrid").toString(); | 2080 | String bPloygonGrid = map.get("bPolygonGrid").equals("") ? "" : map.get("bPolygonGrid").toString(); |
| 1945 | // 多边形WGS坐标点集合 | 2081 | // 多边形WGS坐标点集合 |
| 1946 | - String gPloygonGrid =""; | ||
| 1947 | - if(!bPloygonGrid.equals("")) { | 2082 | + String gPloygonGrid = ""; |
| 2083 | + if (!bPloygonGrid.equals("")) { | ||
| 1948 | String bPloygonGridArray[] = bPloygonGrid.split(","); | 2084 | String bPloygonGridArray[] = bPloygonGrid.split(","); |
| 1949 | int bLen_ = bPloygonGridArray.length; | 2085 | int bLen_ = bPloygonGridArray.length; |
| 1950 | - for(int b = 0 ;b<bLen_;b++) { | ||
| 1951 | - String tempArray[]= bPloygonGridArray[b].split(" "); | ||
| 1952 | - Location resultPoint = FromBDPointToWGSPoint(tempArray[0],tempArray[1]); | ||
| 1953 | - if(b==0) { | ||
| 1954 | - gPloygonGrid = resultPoint.getLng() + " " + resultPoint.getLat(); | ||
| 1955 | - }else { | ||
| 1956 | - gPloygonGrid = gPloygonGrid + ',' + resultPoint.getLng() + " " + resultPoint.getLat(); | ||
| 1957 | - } | 2086 | + for (int b = 0; b < bLen_; b++) { |
| 2087 | + String tempArray[] = bPloygonGridArray[b].split(" "); | ||
| 2088 | + Location resultPoint = FromBDPointToWGSPoint(tempArray[0], tempArray[1]); | ||
| 2089 | + if (b == 0) { | ||
| 2090 | + gPloygonGrid = resultPoint.getLng() + " " + resultPoint.getLat(); | ||
| 2091 | + } else { | ||
| 2092 | + gPloygonGrid = gPloygonGrid + ',' + resultPoint.getLng() + " " + resultPoint.getLat(); | ||
| 2093 | + } | ||
| 1958 | } | 2094 | } |
| 1959 | } | 2095 | } |
| 1960 | - if(bPloygonGrid.equals("")) | 2096 | + if (bPloygonGrid.equals("")) |
| 1961 | bPloygonGrid = null; | 2097 | bPloygonGrid = null; |
| 1962 | else | 2098 | else |
| 1963 | - bPloygonGrid = "POLYGON((" + bPloygonGrid +"))"; | ||
| 1964 | - | ||
| 1965 | - if(gPloygonGrid.equals("")) | 2099 | + bPloygonGrid = "POLYGON((" + bPloygonGrid + "))"; |
| 2100 | + | ||
| 2101 | + if (gPloygonGrid.equals("")) | ||
| 1966 | gPloygonGrid = null; | 2102 | gPloygonGrid = null; |
| 1967 | else | 2103 | else |
| 1968 | - gPloygonGrid = "POLYGON((" + gPloygonGrid +"))"; | 2104 | + gPloygonGrid = "POLYGON((" + gPloygonGrid + "))"; |
| 1969 | // 是否撤销 | 2105 | // 是否撤销 |
| 1970 | Integer destroy = map.get("destroy").equals("") ? null : Integer.parseInt(map.get("destroy").toString()); | 2106 | Integer destroy = map.get("destroy").equals("") ? null : Integer.parseInt(map.get("destroy").toString()); |
| 1971 | // 版本号 | 2107 | // 版本号 |
| 1972 | Integer versions = map.get("versions").equals("") ? null : Integer.parseInt(map.get("versions").toString()); | 2108 | Integer versions = map.get("versions").equals("") ? null : Integer.parseInt(map.get("versions").toString()); |
| 1973 | // 描述与说明 | 2109 | // 描述与说明 |
| 1974 | String descriptions = map.get("descriptions").equals("") ? "" : map.get("descriptions").toString(); | 2110 | String descriptions = map.get("descriptions").equals("") ? "" : map.get("descriptions").toString(); |
| 1975 | - Float x = map.get("x").equals("") ? null : Float.parseFloat(map.get("x").toString()); | ||
| 1976 | - Float y = map.get("y").equals("") ? null : Float.parseFloat(map.get("y").toString()); | 2111 | + Float x = map.get("x").equals("") ? null : Float.parseFloat(map.get("x").toString()); |
| 2112 | + Float y = map.get("y").equals("") ? null : Float.parseFloat(map.get("y").toString()); | ||
| 1977 | // 更新 | 2113 | // 更新 |
| 1978 | - repository.stationUpdate(stationCod, zdmc, roadCoding, dbType, bJwpoints, gLonx, gLaty, x, y, bPloygonGrid, gPloygonGrid, destroy, radius, shapesType, versions, descriptions, stationId); | 2114 | + repository.stationUpdate(stationCod, zdmc, roadCoding, dbType, bJwpoints, gLonx, gLaty, x, y, bPloygonGrid, |
| 2115 | + gPloygonGrid, destroy, radius, shapesType, versions, descriptions, stationId); | ||
| 1979 | // 站点路由Id | 2116 | // 站点路由Id |
| 1980 | - Integer stationRouteId = map.get("stationRouteId").equals("") ? null : Integer.parseInt(map.get("stationRouteId").toString()); | 2117 | + Integer stationRouteId = map.get("stationRouteId").equals("") ? null |
| 2118 | + : Integer.parseInt(map.get("stationRouteId").toString()); | ||
| 1981 | StationRouteCache resultS = routeCacheRepository.findById(stationRouteId).get(); | 2119 | StationRouteCache resultS = routeCacheRepository.findById(stationRouteId).get(); |
| 1982 | // 站点路由序号 | 2120 | // 站点路由序号 |
| 1983 | - String stationRouteCodeStr = map.get("stationRouteCode").equals("") ? null : map.get("stationRouteCode").toString(); | 2121 | + String stationRouteCodeStr = map.get("stationRouteCode").equals("") ? null |
| 2122 | + : map.get("stationRouteCode").toString(); | ||
| 1984 | Integer stationRouteCode = null; | 2123 | Integer stationRouteCode = null; |
| 1985 | - if(stationRouteCodeStr!=null) { | ||
| 1986 | - String stationRouteCodeAraay[] = stationRouteCodeStr.split("_"); | ||
| 1987 | - int old_code = resultS.getStationRouteCode(); | ||
| 1988 | - int new_code = Integer.parseInt(stationRouteCodeAraay[0].toString())+100; | ||
| 1989 | - if(new_code==old_code){ | ||
| 1990 | - stationRouteCode = new_code; | ||
| 1991 | - }else { | ||
| 1992 | - stationRouteCode = new_code-100+1; | ||
| 1993 | - } | ||
| 1994 | - }else { | 2124 | + if (stationRouteCodeStr != null) { |
| 2125 | + String stationRouteCodeAraay[] = stationRouteCodeStr.split("_"); | ||
| 2126 | + int old_code = resultS.getStationRouteCode(); | ||
| 2127 | + int new_code = Integer.parseInt(stationRouteCodeAraay[0].toString()) + 100; | ||
| 2128 | + if (new_code == old_code) { | ||
| 2129 | + stationRouteCode = new_code; | ||
| 2130 | + } else { | ||
| 2131 | + stationRouteCode = new_code - 100 + 1; | ||
| 2132 | + } | ||
| 2133 | + } else { | ||
| 1995 | stationRouteCode = resultS.getStationRouteCode(); | 2134 | stationRouteCode = resultS.getStationRouteCode(); |
| 1996 | } | 2135 | } |
| 1997 | stationRouteCode = stationRouteCode == null ? 100 : stationRouteCode; | 2136 | stationRouteCode = stationRouteCode == null ? 100 : stationRouteCode; |
| 1998 | - Integer LineId = map.get("stationRouteLine").equals("") ? null : Integer.parseInt(map.get("stationRouteLine").toString()); | 2137 | + Integer LineId = map.get("stationRouteLine").equals("") ? null |
| 2138 | + : Integer.parseInt(map.get("stationRouteLine").toString()); | ||
| 1999 | String stationMark = map.get("stationMark").equals("") ? null : map.get("stationMark").toString(); | 2139 | String stationMark = map.get("stationMark").equals("") ? null : map.get("stationMark").toString(); |
| 2000 | - Double distances = map.get("distances").equals("") ? 0.0d : Double.parseDouble(map.get("distances").toString()); | 2140 | + Double distances = map.get("distances").equals("") ? 0.0d |
| 2141 | + : Double.parseDouble(map.get("distances").toString()); | ||
| 2001 | Double toTime = map.get("toTime").equals("") ? 0.0d : Double.parseDouble(map.get("toTime").toString()); | 2142 | Double toTime = map.get("toTime").equals("") ? 0.0d : Double.parseDouble(map.get("toTime").toString()); |
| 2002 | - Integer directions = map.get("directions").equals("") ? null : Integer.parseInt(map.get("directions").toString()); | 2143 | + Integer directions = map.get("directions").equals("") ? null |
| 2144 | + : Integer.parseInt(map.get("directions").toString()); | ||
| 2003 | Station station = repository.findById(stationId).get(); | 2145 | Station station = repository.findById(stationId).get(); |
| 2004 | Line line = lineRepository.findById(LineId).get(); | 2146 | Line line = lineRepository.findById(LineId).get(); |
| 2005 | StationRouteCache stationRoute = new StationRouteCache(); | 2147 | StationRouteCache stationRoute = new StationRouteCache(); |
| @@ -2043,12 +2185,14 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | @@ -2043,12 +2185,14 @@ public class StationServiceImpl extends BaseServiceImpl<Station, Integer> implem | ||
| 2043 | routeCacheRepository.stationRouteCacheDel(lineId, dir); | 2185 | routeCacheRepository.stationRouteCacheDel(lineId, dir); |
| 2044 | sectionRouteCacheRepository.sectionRouteCacheDel(lineId, dir); | 2186 | sectionRouteCacheRepository.sectionRouteCacheDel(lineId, dir); |
| 2045 | // 当前版本路由保存到缓存路由 | 2187 | // 当前版本路由保存到缓存路由 |
| 2046 | - List<StationRouteCache> stationRouteCaches = JSONArray.parseArray(JSON.toJSONString(stationRoutes), StationRouteCache.class); | ||
| 2047 | - List<SectionRouteCache> sectionRouteCaches = JSONArray.parseArray(JSON.toJSONString(sectionRoutes), SectionRouteCache.class); | ||
| 2048 | - for(StationRouteCache sr:stationRouteCaches) { | 2188 | + List<StationRouteCache> stationRouteCaches = JSONArray.parseArray(JSON.toJSONString(stationRoutes), |
| 2189 | + StationRouteCache.class); | ||
| 2190 | + List<SectionRouteCache> sectionRouteCaches = JSONArray.parseArray(JSON.toJSONString(sectionRoutes), | ||
| 2191 | + SectionRouteCache.class); | ||
| 2192 | + for (StationRouteCache sr : stationRouteCaches) { | ||
| 2049 | routeCacheRepository.save(sr); | 2193 | routeCacheRepository.save(sr); |
| 2050 | } | 2194 | } |
| 2051 | - for(SectionRouteCache sr:sectionRouteCaches) { | 2195 | + for (SectionRouteCache sr : sectionRouteCaches) { |
| 2052 | sectionRouteCacheRepository.save(sr); | 2196 | sectionRouteCacheRepository.save(sr); |
| 2053 | } | 2197 | } |
| 2054 | resultMap.put("status", ResponseCode.SUCCESS); | 2198 | resultMap.put("status", ResponseCode.SUCCESS); |
src/main/resources/static/pages/base/lineversions/js/lineversions-add-from.js
| @@ -44,7 +44,7 @@ | @@ -44,7 +44,7 @@ | ||
| 44 | // get请求获取公司 | 44 | // get请求获取公司 |
| 45 | $get('/business/all', {upCode_eq: '88'}, function(compD){ | 45 | $get('/business/all', {upCode_eq: '88'}, function(compD){ |
| 46 | var len_ = array.length,paramsD = new Array(); | 46 | var len_ = array.length,paramsD = new Array(); |
| 47 | - paramsD.push({'id':'请选择...','text':'请选择...'}); | 47 | + paramsD.push({'id':'','text':'请选择...'}); |
| 48 | if(len_>0) { | 48 | if(len_>0) { |
| 49 | $.each(array, function(i, g){ | 49 | $.each(array, function(i, g){ |
| 50 | if(g.name!='' || g.name != null) { | 50 | if(g.name!='' || g.name != null) { |
| @@ -57,7 +57,7 @@ | @@ -57,7 +57,7 @@ | ||
| 57 | 57 | ||
| 58 | 58 | ||
| 59 | initPinYinSelect2($('#lineSelect'),paramsD,function(selector) { | 59 | initPinYinSelect2($('#lineSelect'),paramsD,function(selector) { |
| 60 | - selector.select2("val", "请选择..."); | 60 | +// selector.select2("val", "请选择..."); |
| 61 | }); | 61 | }); |
| 62 | } | 62 | } |
| 63 | }); | 63 | }); |
| @@ -93,20 +93,18 @@ | @@ -93,20 +93,18 @@ | ||
| 93 | } | 93 | } |
| 94 | 94 | ||
| 95 | var paramsD = new Array(); | 95 | var paramsD = new Array(); |
| 96 | - | ||
| 97 | - paramsD.push({'id':"",'text':"新版本"}); | 96 | + |
| 97 | + paramsD.push({'id':"",'text':""}); | ||
| 98 | 98 | ||
| 99 | for(var i = 0; i < lineVersions.length;i++){ | 99 | for(var i = 0; i < lineVersions.length;i++){ |
| 100 | var g = lineVersions[i]; | 100 | var g = lineVersions[i]; |
| 101 | paramsD.push({'id':g.versions,'text':g.name + '(' + g.versions + ")"}); | 101 | paramsD.push({'id':g.versions,'text':g.name + '(' + g.versions + ")"}); |
| 102 | - } | ||
| 103 | - console.log(paramsD); | ||
| 104 | - | 102 | + } |
| 105 | 103 | ||
| 106 | 104 | ||
| 107 | - | ||
| 108 | initPinYinSelect2($('#hisVersionsInput'),paramsD,function(selector) { | 105 | initPinYinSelect2($('#hisVersionsInput'),paramsD,function(selector) { |
| 109 | -// selector.select2("val", "请选择..."); | 106 | +// console.log("123123312"); |
| 107 | + selector.select2("", ""); | ||
| 110 | }); | 108 | }); |
| 111 | }); | 109 | }); |
| 112 | 110 |
src/main/resources/static/pages/base/lineversions/js/lineversions-list-table.js
| @@ -319,6 +319,18 @@ | @@ -319,6 +319,18 @@ | ||
| 319 | if(result.status=='SUCCESS') { | 319 | if(result.status=='SUCCESS') { |
| 320 | // 弹出添加成功提示消息 | 320 | // 弹出添加成功提示消息 |
| 321 | layer.msg('删除成功...'); | 321 | layer.msg('删除成功...'); |
| 322 | + | ||
| 323 | + | ||
| 324 | + | ||
| 325 | + var params = getParams(); | ||
| 326 | + if(params['line.name_like']!='' && params['line.name_like'] != null) { | ||
| 327 | + storage.setItem('xlName_AgursData',params['line.name_like']); | ||
| 328 | + } | ||
| 329 | + params['line.name_like'] = splitxlName(params['line.name_like']); | ||
| 330 | + page = 0; | ||
| 331 | + /** 表格数据分页加载 @param:<params:搜索参数;true:是否重新分页> */ | ||
| 332 | + loadTableDate(params,true); | ||
| 333 | + | ||
| 322 | } else if(result.status=='ERROR') { | 334 | } else if(result.status=='ERROR') { |
| 323 | // 弹出添加失败提示消息 | 335 | // 弹出添加失败提示消息 |
| 324 | layer.msg('删除失败...'); | 336 | layer.msg('删除失败...'); |
src/main/resources/static/pages/base/stationroute/addstationstemplate.html
| @@ -51,7 +51,15 @@ | @@ -51,7 +51,15 @@ | ||
| 51 | </div> | 51 | </div> |
| 52 | </div> | 52 | </div> |
| 53 | </div> | 53 | </div> |
| 54 | - | 54 | + <!-- 版本号 --> |
| 55 | + <div class="form-body"> | ||
| 56 | + <div class="form-group"> | ||
| 57 | + <label class="col-md-3 control-label">版本号 :</label> | ||
| 58 | + <div class="col-md-6"> | ||
| 59 | + <input type="text" class="form-control" name="versions" id='versionsInput' Readonly> | ||
| 60 | + </div> | ||
| 61 | + </div> | ||
| 62 | + </div> | ||
| 55 | <div class="form-group"> | 63 | <div class="form-group"> |
| 56 | <div class="alert alert-info font-blue-chambray" style="background-color: #2C3E50"> | 64 | <div class="alert alert-info font-blue-chambray" style="background-color: #2C3E50"> |
| 57 | <h5 class="block"><span class="help-block" style="color:#1bbc9b;"> * 手动添加站点规划说明: </span></h5> | 65 | <h5 class="block"><span class="help-block" style="color:#1bbc9b;"> * 手动添加站点规划说明: </span></h5> |
| @@ -87,12 +95,14 @@ $('#add_station_template_mobal').on('AddStationTempMobal.show', function(e,map,a | @@ -87,12 +95,14 @@ $('#add_station_template_mobal').on('AddStationTempMobal.show', function(e,map,a | ||
| 87 | // 获取表单元素 | 95 | // 获取表单元素 |
| 88 | var form = $('#save_station_template_form'); | 96 | var form = $('#save_station_template_form'); |
| 89 | 97 | ||
| 98 | + $('#versionsInput').val($("#versions").val()); | ||
| 99 | + | ||
| 90 | // 获取错误提示信息元素 | 100 | // 获取错误提示信息元素 |
| 91 | var error = $('.alert-danger', form); | 101 | var error = $('.alert-danger', form); |
| 92 | 102 | ||
| 93 | // 提交数据点击事件 | 103 | // 提交数据点击事件 |
| 94 | $('.modal-footer #templateSaveData').on('click',function() { | 104 | $('.modal-footer #templateSaveData').on('click',function() { |
| 95 | - | 105 | + |
| 96 | // 表单提交 | 106 | // 表单提交 |
| 97 | form.submit(); | 107 | form.submit(); |
| 98 | 108 | ||
| @@ -260,6 +270,10 @@ $('#add_station_template_mobal').on('AddStationTempMobal.show', function(e,map,a | @@ -260,6 +270,10 @@ $('#add_station_template_mobal').on('AddStationTempMobal.show', function(e,map,a | ||
| 260 | } | 270 | } |
| 261 | 271 | ||
| 262 | function addSave(params,lineid,directionData) { | 272 | function addSave(params,lineid,directionData) { |
| 273 | + | ||
| 274 | + | ||
| 275 | + var version = $("#versions").val(); | ||
| 276 | + params.versions = version; | ||
| 263 | // 保存 | 277 | // 保存 |
| 264 | ajaxd.manualSave(params,function(rd) { | 278 | ajaxd.manualSave(params,function(rd) { |
| 265 | // 关闭弹出层 | 279 | // 关闭弹出层 |
| @@ -283,7 +297,6 @@ $('#add_station_template_mobal').on('AddStationTempMobal.show', function(e,map,a | @@ -283,7 +297,6 @@ $('#add_station_template_mobal').on('AddStationTempMobal.show', function(e,map,a | ||
| 283 | } | 297 | } |
| 284 | // 清除地图覆盖物 | 298 | // 清除地图覆盖物 |
| 285 | map.clearMarkAndOverlays(); | 299 | map.clearMarkAndOverlays(); |
| 286 | - var version = $("#versions").val(); | ||
| 287 | // 刷新树 | 300 | // 刷新树 |
| 288 | fun.resjtreeDate(lineid,directionData,version); | 301 | fun.resjtreeDate(lineid,directionData,version); |
| 289 | 302 |
src/main/resources/static/pages/base/stationroute/doublename_road.html
| @@ -44,7 +44,9 @@ | @@ -44,7 +44,9 @@ | ||
| 44 | // 方向 | 44 | // 方向 |
| 45 | var dir = params.directions; | 45 | var dir = params.directions; |
| 46 | var lineId = params.lineId; | 46 | var lineId = params.lineId; |
| 47 | - var version = params.versions; | 47 | + var version = $("#versions").val(); |
| 48 | + | ||
| 49 | + console.log(version); | ||
| 48 | 50 | ||
| 49 | // 获取路段号元素,并添加下拉属性值 | 51 | // 获取路段号元素,并添加下拉属性值 |
| 50 | ajaxd.getStation(lineId,dir,version,function(treeData) { | 52 | ajaxd.getStation(lineId,dir,version,function(treeData) { |
| @@ -126,8 +128,9 @@ | @@ -126,8 +128,9 @@ | ||
| 126 | params.sectionrouteCode = data.sectionrouteCode; | 128 | params.sectionrouteCode = data.sectionrouteCode; |
| 127 | } | 129 | } |
| 128 | // 获取版本 | 130 | // 获取版本 |
| 129 | - $.get("/lineVersions/findCurrentVersion", {"lineId" : lineId}, function (versions) { | ||
| 130 | - params.versions = versions; | 131 | + //$.get("/lineVersions/findCurrentVersion", {"lineId" : lineId}, function (versions) { |
| 132 | + //params.versions = versions; | ||
| 133 | + params.versions = $("#versions").val(); | ||
| 131 | // 生成路段 | 134 | // 生成路段 |
| 132 | $.post('/section/doubleName',params,function (resuntDate) { | 135 | $.post('/section/doubleName',params,function (resuntDate) { |
| 133 | if(resuntDate.status=='SUCCESS') { | 136 | if(resuntDate.status=='SUCCESS') { |
| @@ -145,7 +148,7 @@ | @@ -145,7 +148,7 @@ | ||
| 145 | fun.resjtreeDate(lineId,dir,$("#versions").val()); | 148 | fun.resjtreeDate(lineId,dir,$("#versions").val()); |
| 146 | closeMobleSetClean(); | 149 | closeMobleSetClean(); |
| 147 | }); | 150 | }); |
| 148 | - }); | 151 | + //}); |
| 149 | 152 | ||
| 150 | } | 153 | } |
| 151 | }); | 154 | }); |
src/main/resources/static/pages/base/stationroute/editRoute.html
0 → 100644
| 1 | +<!-- 手动添加站点 --> | ||
| 2 | +<div class="modal fade" id="edit_route_mobal" tabindex="-1" role="basic" | ||
| 3 | + aria-hidden="true"> | ||
| 4 | + | ||
| 5 | + <div class="modal-dialog"> | ||
| 6 | + | ||
| 7 | + <div class="modal-content" > | ||
| 8 | + | ||
| 9 | + <div class="modal-header"> | ||
| 10 | + <button type="button" class="close" data-dismiss="modal" | ||
| 11 | + aria-hidden="true"></button> | ||
| 12 | + <h4 class="modal-title">生成路线(站点和路段)</h4> | ||
| 13 | + </div> | ||
| 14 | + | ||
| 15 | + <div class="modal-body"> | ||
| 16 | + | ||
| 17 | + <form class="form-horizontal" role="form" | ||
| 18 | + id="save_route_template_form" action="" method=""> | ||
| 19 | + | ||
| 20 | + <div class="alert alert-danger display-hide"> | ||
| 21 | + <button class="close" data-close="alert"></button> | ||
| 22 | + 您的输入有误,请检查下面的输入项 | ||
| 23 | + </div> | ||
| 24 | + | ||
| 25 | + <!-- 站点名称 --> | ||
| 26 | + <div class="form-body"> | ||
| 27 | + | ||
| 28 | + <div class="form-group"> | ||
| 29 | + <label class="control-label col-md-2"> <span | ||
| 30 | + class="required"> * </span> 坐标: | ||
| 31 | + </label> | ||
| 32 | + <div class="col-md-10"> | ||
| 33 | + <textarea class="form-control" rows="12" name="points" | ||
| 34 | + id="pointInput" placeholder="坐标点"></textarea> | ||
| 35 | + </div> | ||
| 36 | + </div> | ||
| 37 | + </div> | ||
| 38 | + <div class="form-group"> | ||
| 39 | + <label class="col-md-3 control-label">选择文本类型:</label> | ||
| 40 | + <div class="col-md-3"> | ||
| 41 | + <div class="icheck-list"> | ||
| 42 | + <label> <input type="radio" class="icheck" | ||
| 43 | + name="typeCheck" value='0' checked> txt | ||
| 44 | + </label> <label> <input type="radio" class="icheck" | ||
| 45 | + name="typeCheck" value='1'> xml | ||
| 46 | + </label> | ||
| 47 | + </div> | ||
| 48 | + </div> | ||
| 49 | + <label class="col-md-3 control-label">选择方向:</label> | ||
| 50 | + <div class="col-md-3"> | ||
| 51 | + <div class="icheck-list"> | ||
| 52 | + <label> <input type="radio" class="icheck" | ||
| 53 | + name="dirCheck" value='0' checked> 上行 | ||
| 54 | + </label> <label> <input type="radio" class="icheck" | ||
| 55 | + name="dirCheck" value='1'> 下行 | ||
| 56 | + </label> | ||
| 57 | + </div> | ||
| 58 | + </div> | ||
| 59 | + </div> | ||
| 60 | + <div class="form-group"> | ||
| 61 | + <div class="alert alert-info font-blue-chambray" | ||
| 62 | + style="background-color: #2C3E50"> | ||
| 63 | + <h5 class="block"> | ||
| 64 | + <span class="help-block" style="color: #1bbc9b;"> * | ||
| 65 | + 坐标生成路线规划说明: </span> | ||
| 66 | + </h5> | ||
| 67 | + <p> | ||
| 68 | + | ||
| 69 | + <span class="help-block" style="color: #1bbc9b;"> | ||
| 70 | + 1.txt格式 | ||
| 71 | + <br> 请在文本域中按顺序依次输坐标点,每行中的数据之间用【Tab】键隔开(如果是站点,请将在坐标后面加 stop;没有 | ||
| 72 | + stop默认是路段点,连续带stop的坐标认为是同一个站点),每输入完一个坐标时请按回车键【Enter】换行. 例如: | ||
| 73 | + <br>121.511870 31.180638 043703.000 | ||
| 74 | + <br>121.511870 31.180643 043705.000 | ||
| 75 | + <br>121.511870 31.180648 043706.000 Stop | ||
| 76 | + <br>121.511872 31.180653 043707.000 | ||
| 77 | + </span> | ||
| 78 | + </p> | ||
| 79 | + <p> | ||
| 80 | + | ||
| 81 | + <span class="help-block" style="color: #1bbc9b;"> | ||
| 82 | + 2.xml格式 | ||
| 83 | + <br>用gps生成工具,生成的kml文件里的数据 | ||
| 84 | + </span> | ||
| 85 | + </p> | ||
| 86 | + </div> | ||
| 87 | + </div> | ||
| 88 | + </form> | ||
| 89 | + </div> | ||
| 90 | + <div class="modal-footer"> | ||
| 91 | + <button type="button" class="btn default" data-dismiss="modal" | ||
| 92 | + id="addMobalHiden">取消</button> | ||
| 93 | +<!-- <button type="button" class="btn btn-primary hidden" id="referenceCurrentVersion">引用当前版本</button> --> | ||
| 94 | + <button type="button" class="btn btn-primary" id="templateSaveData">提交数据</button> | ||
| 95 | + </div> | ||
| 96 | + </div> | ||
| 97 | + </div> | ||
| 98 | +</div> | ||
| 99 | + | ||
| 100 | + | ||
| 101 | +<script src="/pages/base/line/js/map.js"></script> | ||
| 102 | +<script src="/pages/base/line/js/transGPS.js"></script> | ||
| 103 | + | ||
| 104 | +<script type="text/javascript"> | ||
| 105 | + | ||
| 106 | +$('#edit_route_mobal').on('editRouteMobal.show', function(e,WorldsBMap,GetAjaxData,line,PublicFunctions){ | ||
| 107 | + // 延迟加载显示mobal | ||
| 108 | + setTimeout(function(){$('#edit_route_mobal').modal({show : true,backdrop: 'static', keyboard: false});},200); | ||
| 109 | + // 获取表单元素 | ||
| 110 | + var form = $('#save_route_template_form'); | ||
| 111 | + | ||
| 112 | + // 获取错误提示信息元素 | ||
| 113 | + var error = $('.alert-danger', form); | ||
| 114 | + | ||
| 115 | + // 提交数据点击事件 | ||
| 116 | + $('.modal-footer #templateSaveData').on('click',function() { | ||
| 117 | + form.submit(); | ||
| 118 | + }); | ||
| 119 | + | ||
| 120 | + | ||
| 121 | + //从xml中获取节点内容 | ||
| 122 | + function getXmlNode(str){ | ||
| 123 | + //创建文档对象 | ||
| 124 | + var parser=new DOMParser(); | ||
| 125 | + var xmlDoc=parser.parseFromString(str,"text/xml"); | ||
| 126 | + | ||
| 127 | + //提取数据 | ||
| 128 | + var countrys = xmlDoc.getElementsByTagName('coordinates'); | ||
| 129 | + //var countrys = xmlDoc.getElementsByTagName('DataSource'); | ||
| 130 | + | ||
| 131 | + var arr = []; | ||
| 132 | + | ||
| 133 | + for (var i = 0; i < countrys.length; i++) { | ||
| 134 | + arr.push(countrys[i].textContent); | ||
| 135 | + }; | ||
| 136 | + // console.log(arr); | ||
| 137 | + return arr; | ||
| 138 | + | ||
| 139 | + } | ||
| 140 | + | ||
| 141 | + // xml方式上传是,处理转成txt格式的方法 | ||
| 142 | + var getXmlSection = function (xml) { | ||
| 143 | + // var xml = $("#xmlText").val(); | ||
| 144 | + var stationPointList = getXmlNode(xml); | ||
| 145 | + var sListSize = stationPointList.length; | ||
| 146 | + var sectionPointListStr = stationPointList[stationPointList.length - 1]; | ||
| 147 | + var sectionPointList = sectionPointListStr.split(" "); | ||
| 148 | + var index = 0; | ||
| 149 | + | ||
| 150 | + // var sectionStr = ""; | ||
| 151 | + var sections = []; | ||
| 152 | + for (var i = 0; i < sectionPointList.length; i++) { | ||
| 153 | + var pointStr = sectionPointList[i], | ||
| 154 | + point = pointStr.split(","); | ||
| 155 | + | ||
| 156 | + if (index < sListSize - 1 && point == stationPointList[index]) { | ||
| 157 | + sections.push(point[0] + " " + point[1] + " " + point[2] + " Stop"); | ||
| 158 | + index++; | ||
| 159 | + } else { | ||
| 160 | + sections.push(point[0] + " " + point[1] + " " + point[2]); | ||
| 161 | + } | ||
| 162 | + } | ||
| 163 | + return sections; | ||
| 164 | + }; | ||
| 165 | + | ||
| 166 | + | ||
| 167 | + // 表单验证 | ||
| 168 | + form.validate({ | ||
| 169 | + | ||
| 170 | + errorElement : 'span', | ||
| 171 | + | ||
| 172 | + errorClass : 'help-block help-block-error', | ||
| 173 | + | ||
| 174 | + focusInvalid : false, | ||
| 175 | + | ||
| 176 | + rules : { | ||
| 177 | + | ||
| 178 | + 'points' : { | ||
| 179 | + | ||
| 180 | + required : true, | ||
| 181 | + | ||
| 182 | + } | ||
| 183 | + | ||
| 184 | + }, | ||
| 185 | + | ||
| 186 | + invalidHandler : function(event, validator) { | ||
| 187 | + | ||
| 188 | + error.show(); | ||
| 189 | + | ||
| 190 | + App.scrollTo(error, -200); | ||
| 191 | + | ||
| 192 | + }, | ||
| 193 | + | ||
| 194 | + highlight : function(element) { | ||
| 195 | + | ||
| 196 | + $(element).closest('.form-group').addClass('has-error'); | ||
| 197 | + | ||
| 198 | + }, | ||
| 199 | + | ||
| 200 | + unhighlight : function(element) { | ||
| 201 | + | ||
| 202 | + $(element).closest('.form-group').removeClass('has-error'); | ||
| 203 | + | ||
| 204 | + }, | ||
| 205 | + | ||
| 206 | + success : function(label) { | ||
| 207 | + | ||
| 208 | + label.closest('.form-group').removeClass('has-error'); | ||
| 209 | + | ||
| 210 | + }, | ||
| 211 | + submitHandler : function(f) { | ||
| 212 | + // 隐藏弹出层 | ||
| 213 | + $('#edit_route_mobal').modal('hide'); | ||
| 214 | + | ||
| 215 | + // 原坐标类型 | ||
| 216 | + var baseRes = "WGS84"; | ||
| 217 | + // 定义线路名称 | ||
| 218 | + var lineNameV = $('.portlet-title .caption').text(); | ||
| 219 | + var dirStr = ''; | ||
| 220 | + // 路线方向 | ||
| 221 | + var directionData = $("input[name='dirCheck']:checked").val(); | ||
| 222 | + /** | ||
| 223 | + * 添加类型0(txt)/1(xml) | ||
| 224 | + * txt方式路段需要30个点取一个 | ||
| 225 | + * xml路段取所有点 | ||
| 226 | + */ | ||
| 227 | + var type = $("input[name='typeCheck']:checked").val(); | ||
| 228 | + //editRoute.setLineDir(directionData); | ||
| 229 | + // 设置线路对象生成方式 | ||
| 230 | + //editRoute.setLineGenerationType('uploadGPS'); | ||
| 231 | + // 弹出正在加载层 | ||
| 232 | + var i = layer.load(2); | ||
| 233 | + // 表单序列化 | ||
| 234 | + var paramsForm = form.serializeJSON(); | ||
| 235 | + | ||
| 236 | + | ||
| 237 | + var array = []; | ||
| 238 | + if(type == 1){ | ||
| 239 | + array = getXmlSection(paramsForm.points); | ||
| 240 | + } else { | ||
| 241 | + // 切割坐标点 | ||
| 242 | + array = paramsForm.points.split('\r\n'); | ||
| 243 | + } | ||
| 244 | + | ||
| 245 | + | ||
| 246 | + | ||
| 247 | + // 把坐标点转换为站点或路段 | ||
| 248 | + var arrayFormat = inputStationValueFormat(array); | ||
| 249 | + var stationList = arrayFormat.stationList; | ||
| 250 | + var sectionListTemp = arrayFormat.sectionList; | ||
| 251 | + var sectionList = []; | ||
| 252 | + // 隔30个取一个点(相当于30s) | ||
| 253 | + var typeNum = type == 0 ? 30:1; | ||
| 254 | + for(var i = 0; i*typeNum < sectionListTemp.length; i++) { | ||
| 255 | + sectionList[i] = sectionListTemp[i*typeNum]; | ||
| 256 | + } | ||
| 257 | + sectionList[sectionList.length] = sectionListTemp[sectionListTemp.length-1]; | ||
| 258 | + | ||
| 259 | + var sectionListFinal = []; | ||
| 260 | + sectionListFinal.push({sectionName : lineNameV, points : sectionList}); | ||
| 261 | + // 根据站点名称获取百度坐标 | ||
| 262 | + WorldsBMap.stationsPointsToLibraryPoint(stationList,function(resultJson) { | ||
| 263 | + // 根据坐标点获取两点之间的时间与距离 | ||
| 264 | + WorldsBMap.getDistanceAndDuration(resultJson,function(stationdataList) { | ||
| 265 | + // 设置第一个站的距离 | ||
| 266 | + stationdataList[0].distance = ''; | ||
| 267 | + // 设置第一个站的时间 | ||
| 268 | + stationdataList[0].duration = ''; | ||
| 269 | + // 定义站点信息JSON字符串 | ||
| 270 | + var stationJSON = JSON.stringify(stationdataList); | ||
| 271 | + // 参数集合 | ||
| 272 | + var params = {}; | ||
| 273 | + params.baseRes = baseRes; | ||
| 274 | + // 是否添加该站点 | ||
| 275 | + | ||
| 276 | + // 站点信息JSON字符串 | ||
| 277 | + params.stationJSON = stationJSON; | ||
| 278 | + // 线路ID | ||
| 279 | + params.lineId = line.id; | ||
| 280 | + // 方向 | ||
| 281 | + params.directions = directionData; | ||
| 282 | + // 原始坐标类型 | ||
| 283 | + params.dbType = 'b'; | ||
| 284 | + // 圆形半径 | ||
| 285 | + params.radius = '80'; | ||
| 286 | + // 限速 | ||
| 287 | + params.speedLimit = '60'; | ||
| 288 | + // 图形类型(r:圆形;p:多边形) | ||
| 289 | + params.shapesType = 'r'; | ||
| 290 | + // destroy:是否撤销 | ||
| 291 | + params.destroy = '0'; | ||
| 292 | + // versions:版本号 | ||
| 293 | + params.versions = '1'; | ||
| 294 | + // 定义路段信息字符串 | ||
| 295 | + var sectionJSON = JSON.stringify(sectionListFinal); | ||
| 296 | + // 路段信息JSON字符串 | ||
| 297 | + params.sectionJSON = sectionJSON; | ||
| 298 | + addSave(params,line.id,directionData); | ||
| 299 | + }); | ||
| 300 | + | ||
| 301 | + }); | ||
| 302 | + }, | ||
| 303 | + | ||
| 304 | + }); | ||
| 305 | + | ||
| 306 | + function inputStationValueFormat(paramsStationsArray) { | ||
| 307 | + var stationList = []; | ||
| 308 | + var sectionList = []; | ||
| 309 | + var routeList = {"stationList":stationList, "sectionList":sectionList}; | ||
| 310 | + var len = paramsStationsArray.length; | ||
| 311 | + // 处理相同站点判断值 | ||
| 312 | + var isPush = true; | ||
| 313 | + for(var k =0;k<len;k++) { | ||
| 314 | + if(paramsStationsArray[k]=="") | ||
| 315 | + continue; | ||
| 316 | + var tempStr = paramsStationsArray[k].split('\t'); | ||
| 317 | + var tempPoint = transGpsLoc(tempStr[0],tempStr[1]); | ||
| 318 | + var point = {lng:tempPoint.lng, lat:tempPoint.lat}; | ||
| 319 | + if(tempStr.length < 4){ | ||
| 320 | + sectionList[k] = point; | ||
| 321 | + isPush = true; | ||
| 322 | + }else { | ||
| 323 | + if(isPush) { | ||
| 324 | + sectionList[k] = point; | ||
| 325 | + stationList.push({name:tempStr[3], potion:{lng:tempPoint.lng, lat:tempPoint.lat} , wgs:{x:tempStr[0], y:tempStr[1]}}); | ||
| 326 | + } | ||
| 327 | + isPush = false; | ||
| 328 | + } | ||
| 329 | + } | ||
| 330 | + for(var i = 0 ;i<sectionList.length;i++) { | ||
| 331 | + if(sectionList[i] == "" || typeof(sectionList[i]) == "undefined" || sectionList[i] == null) { | ||
| 332 | + sectionList.splice(i,1);//删除数组中下表i-i+1之间的值 | ||
| 333 | + i= i-1; | ||
| 334 | + } | ||
| 335 | + | ||
| 336 | + } | ||
| 337 | + return routeList; | ||
| 338 | + } | ||
| 339 | + | ||
| 340 | + function transGpsLoc(lng,lat) { | ||
| 341 | + var bdLoc = TransGPS.locationMake(lng, lat); | ||
| 342 | + var gcjLoc = TransGPS.transformFromWGSToGCJ(bdLoc); | ||
| 343 | + var bdEn = TransGPS.bd_encrypt(gcjLoc); | ||
| 344 | + return bdEn; | ||
| 345 | + } | ||
| 346 | + | ||
| 347 | + /** 引用当前版本站点和走向*/ | ||
| 348 | + /* $("#referenceCurrentVersion").on('click',function() { | ||
| 349 | + // 获取线路对象 | ||
| 350 | + var line = editRoute.getLineObj(); | ||
| 351 | + // 路线方向 | ||
| 352 | + var direction = $("input[name='dirCheck']:checked").val(); | ||
| 353 | + // 设置线路对象方向 | ||
| 354 | + editRoute.setLineDir(direction); | ||
| 355 | + // 设置线路对象生成方式 | ||
| 356 | + editRoute.setLineGenerationType('cite'); | ||
| 357 | + $.post("/station/referenceCurrentVersion",{'lineId' : line.id , 'directions' : direction},function(rd){ | ||
| 358 | + // 隐藏弹出层 | ||
| 359 | + $('#edit_route_mobal').modal('hide'); | ||
| 360 | + // 关闭弹出层 | ||
| 361 | + layer.closeAll(); | ||
| 362 | + if(rd.status='SUCCESS') { | ||
| 363 | + // 清除地图覆盖物 | ||
| 364 | + map.clearMarkAndOverlays(); | ||
| 365 | + // 查询路段信息 | ||
| 366 | + var params = {}; | ||
| 367 | + params.lineId=line.id; | ||
| 368 | + params.dir = direction; | ||
| 369 | + // 查询路段信息 | ||
| 370 | + $get('/sectionroute/findCacheSection',params,function(data) { | ||
| 371 | + // 在地图上画出线路走向 | ||
| 372 | + fun.linePanlThree(line.id,data,direction); | ||
| 373 | + }); | ||
| 374 | + $('#route_show').removeClass('hidden'); | ||
| 375 | + $('#generationRoute_div').addClass('hidden'); | ||
| 376 | + // 刷新路段列表 | ||
| 377 | + $('#section').click(); | ||
| 378 | + layer.msg('引用当前版本成功!'); | ||
| 379 | + }else { | ||
| 380 | + layer.msg('引用当前版本失败,请重新引用或选择其他方式!'); | ||
| 381 | + } | ||
| 382 | + }) | ||
| 383 | + }); */ | ||
| 384 | + | ||
| 385 | + function addSave(params,lineid,directionData) { | ||
| 386 | + | ||
| 387 | + | ||
| 388 | + params.versions = $("#versions").val(); | ||
| 389 | + | ||
| 390 | + // 保存 | ||
| 391 | + $post("/station/manualSave",params,function(rd) { | ||
| 392 | + // 关闭弹出层 | ||
| 393 | + layer.closeAll(); | ||
| 394 | + if(rd.status='SUCCESS') { | ||
| 395 | + var stationD = rd.stationData,isNullStr = ''; | ||
| 396 | + for(var t = 0 ;t<stationD.length;t++) { | ||
| 397 | + if(stationD[t].potion.lat =='' || stationD[t].potion.lat ==null || | ||
| 398 | + stationD[t].potion.lng =='' || stationD[t].potion.lng ==null) | ||
| 399 | + isNullStr = isNullStr + stationD[t].name + ' , '; | ||
| 400 | + } | ||
| 401 | + if(isNullStr!='') { | ||
| 402 | + layer.open({ | ||
| 403 | + title: '提示', | ||
| 404 | + content:'【' + isNullStr + '】' + '地址系统无法解析!,请手动调整位置!' | ||
| 405 | + }); | ||
| 406 | + } | ||
| 407 | + // 清除地图覆盖物 | ||
| 408 | + WorldsBMap.clearMarkAndOverlays(); | ||
| 409 | + var params = {}; | ||
| 410 | + params.lineId = lineid; | ||
| 411 | + params.dir = directionData; | ||
| 412 | + // 查询路段信息 | ||
| 413 | + | ||
| 414 | + PublicFunctions.resjtreeDate(lineid,directionData,params.versions); | ||
| 415 | + | ||
| 416 | + $('#route_show').removeClass('hidden'); | ||
| 417 | + $('#generationRoute_div').addClass('hidden'); | ||
| 418 | + // 刷新路段列表 | ||
| 419 | + $('#section').click(); | ||
| 420 | + layer.open({title: '友情提示' | ||
| 421 | + ,content: '生成路线成功,生成的线路可能会有误差。请先单击路段,拖动编辑、然后双击保存!'}); | ||
| 422 | + }else { | ||
| 423 | + layer.msg('生成路线失败!'); | ||
| 424 | + } | ||
| 425 | + }); | ||
| 426 | + } | ||
| 427 | +}); | ||
| 428 | +</script> | ||
| 0 | \ No newline at end of file | 429 | \ No newline at end of file |
src/main/resources/static/pages/base/stationroute/js/stationroute-list-events.js
| @@ -33,7 +33,15 @@ $(function(){ | @@ -33,7 +33,15 @@ $(function(){ | ||
| 33 | });*/ | 33 | });*/ |
| 34 | 34 | ||
| 35 | }); | 35 | }); |
| 36 | - | 36 | + $('.gpsRoute').on('click',function() { |
| 37 | + var Line = LineObj.getLineObj(); | ||
| 38 | + // 加载其它规划选择弹出层mobal页面 | ||
| 39 | + $.get('editRoute.html', function(m){ | ||
| 40 | + $(pjaxContainer).append(m); | ||
| 41 | + $('#edit_route_mobal').trigger('editRouteMobal.show', [WorldsBMap,GetAjaxData,Line,PublicFunctions]); | ||
| 42 | + }); | ||
| 43 | + }); | ||
| 44 | + | ||
| 37 | // 上行站点新增事件 | 45 | // 上行站点新增事件 |
| 38 | $('.module_tools #addUpStation').on('click', function() { | 46 | $('.module_tools #addUpStation').on('click', function() { |
| 39 | /** 设置新增站点对象方向属性值 @param:<directionUpValue:方向(0:上行;1:下行)> */ | 47 | /** 设置新增站点对象方向属性值 @param:<directionUpValue:方向(0:上行;1:下行)> */ |
src/main/resources/static/pages/base/stationroute/js/stationroute-list-map.js
| @@ -479,7 +479,6 @@ window.WorldsBMap = function () { | @@ -479,7 +479,6 @@ window.WorldsBMap = function () { | ||
| 479 | if (datas) { | 479 | if (datas) { |
| 480 | // if (polyline_center && datas) { | 480 | // if (polyline_center && datas) { |
| 481 | // 编辑路段数据 | 481 | // 编辑路段数据 |
| 482 | - debugger; | ||
| 483 | sectionArray = []; | 482 | sectionArray = []; |
| 484 | for (var d = 0; d < datas.length; d++) { | 483 | for (var d = 0; d < datas.length; d++) { |
| 485 | var data = datas[d]; | 484 | var data = datas[d]; |
| @@ -1328,7 +1327,135 @@ window.WorldsBMap = function () { | @@ -1328,7 +1327,135 @@ window.WorldsBMap = function () { | ||
| 1328 | }, | 1327 | }, |
| 1329 | strGetLength: function (str) { | 1328 | strGetLength: function (str) { |
| 1330 | return str.replace(/[\u0391-\uFFE5]/g, "aa").length; //先把中文替换成两个字节的英文,在计算长度 | 1329 | return str.replace(/[\u0391-\uFFE5]/g, "aa").length; //先把中文替换成两个字节的英文,在计算长度 |
| 1331 | - } | 1330 | + }, |
| 1331 | + stationsPointsToLibraryPoint : function(arra,callback) { | ||
| 1332 | + // 获取长度 | ||
| 1333 | + var len = arra.length; | ||
| 1334 | + var station = {}; | ||
| 1335 | + var stationList = []; | ||
| 1336 | + (function(){ | ||
| 1337 | + if (!arguments.callee.count) { | ||
| 1338 | + arguments.callee.count = 0; | ||
| 1339 | + } | ||
| 1340 | + arguments.callee.count++; | ||
| 1341 | + var index = parseInt(arguments.callee.count) - 1; | ||
| 1342 | + if (index >= len) { | ||
| 1343 | + callback && callback(stationList); | ||
| 1344 | + return ; | ||
| 1345 | + } | ||
| 1346 | + var f = arguments.callee; | ||
| 1347 | + station = arra[index]; | ||
| 1348 | + if(arra[index].name!=''){ | ||
| 1349 | + | ||
| 1350 | + $.get('/station/matchStation',station,function(resultStation) { | ||
| 1351 | + stationList.push({name:resultStation.name ,wgs:arra[index].wgs,potion:{lng:resultStation.potion_lng, lat:resultStation.potion_lat}, isHave:resultStation.isHave , id:resultStation.id}); | ||
| 1352 | + f(); | ||
| 1353 | + }); | ||
| 1354 | + }else { | ||
| 1355 | + f(); | ||
| 1356 | + } | ||
| 1357 | + })() | ||
| 1358 | + }, | ||
| 1359 | + /** 获取距离与时间 @param <points:坐标点集合> */ | ||
| 1360 | + getDistanceAndDuration : function(points,callback){ | ||
| 1361 | + | ||
| 1362 | + // 获取长度 | ||
| 1363 | + var len = points.length; | ||
| 1364 | + (function(){ | ||
| 1365 | + | ||
| 1366 | + if (!arguments.callee.count) { | ||
| 1367 | + | ||
| 1368 | + arguments.callee.count = 0; | ||
| 1369 | + | ||
| 1370 | + } | ||
| 1371 | + | ||
| 1372 | + arguments.callee.count++; | ||
| 1373 | + | ||
| 1374 | + var index = parseInt(arguments.callee.count) - 1; | ||
| 1375 | + | ||
| 1376 | + if (index >= len-1) { | ||
| 1377 | + callback && callback(points); | ||
| 1378 | + | ||
| 1379 | + return; | ||
| 1380 | + } | ||
| 1381 | + | ||
| 1382 | + // 当函数被调用时,它的arguments.callee对象就会指向自身,也就是一个对自己的引用。(当前正在执行的函数。) | ||
| 1383 | + var f = arguments.callee; | ||
| 1384 | + // 起点坐标 <坐标格式:40.056878,116.30815> | ||
| 1385 | + var origin = points[index].potion.lat + ',' + points[index].potion.lng; | ||
| 1386 | + | ||
| 1387 | + // 终点坐标 <坐标格式:40.056878,116.30815> | ||
| 1388 | + var destination = points[index+1].potion.lat + ',' + points[index+1].potion.lng; | ||
| 1389 | + var region = '上海'; | ||
| 1390 | + | ||
| 1391 | + var origin_region = '上海'; | ||
| 1392 | + | ||
| 1393 | + var destination_region = '上海'; | ||
| 1394 | + | ||
| 1395 | + var output = 'json'; | ||
| 1396 | + | ||
| 1397 | + var ak_My = 'wjlITmXeCek5MxyU3ZUBkTeU8B0o0npk'; | ||
| 1398 | + | ||
| 1399 | + /** | ||
| 1400 | + * origin:起点名称或经纬度; | ||
| 1401 | + * | ||
| 1402 | + * destination:终点名称或经纬度; | ||
| 1403 | + * | ||
| 1404 | + * origin_region:起始点所在城市,驾车导航时必填。 | ||
| 1405 | + * | ||
| 1406 | + * destination_region:终点所在城市,驾车导航时必填。 | ||
| 1407 | + * | ||
| 1408 | + * output :表示输出类型,可设置为xml或json,默认为xml。 | ||
| 1409 | + * | ||
| 1410 | + **/ | ||
| 1411 | + var paramsB = {origin:origin,destination:destination,region:region,origin_region:origin_region,destination_region:destination_region,output:output,ak:ak_My}; | ||
| 1412 | + | ||
| 1413 | + /** @description :未认证开发者默认配额为:2000次/天。 */ | ||
| 1414 | + $.ajax({ | ||
| 1415 | + | ||
| 1416 | + // 百度地图根据坐标获取两点之间的时间与距离 | ||
| 1417 | + url: 'http://api.map.baidu.com/direction/v1?mode=transit', | ||
| 1418 | + | ||
| 1419 | + data: paramsB, | ||
| 1420 | + | ||
| 1421 | + dataType: 'jsonp', | ||
| 1422 | + | ||
| 1423 | + success: function(r){ | ||
| 1424 | + | ||
| 1425 | + if(r) { | ||
| 1426 | + | ||
| 1427 | + if(r.message=='ok') { | ||
| 1428 | + | ||
| 1429 | + if(r.result.taxi==null) { | ||
| 1430 | + | ||
| 1431 | + // 获取距离(单位:米) | ||
| 1432 | + points[index+1].distance = 0; | ||
| 1433 | + | ||
| 1434 | + // 获取时间(单位:秒) | ||
| 1435 | + points[index+1].duration = 0; | ||
| 1436 | + | ||
| 1437 | + }else { | ||
| 1438 | + | ||
| 1439 | + // 获取距离(单位:米) | ||
| 1440 | + points[index+1].distance = r.result.taxi.distance; | ||
| 1441 | + | ||
| 1442 | + // 获取时间(单位:秒) | ||
| 1443 | + points[index+1].duration = r.result.taxi.duration; | ||
| 1444 | + | ||
| 1445 | + } | ||
| 1446 | + | ||
| 1447 | + | ||
| 1448 | + } | ||
| 1449 | + | ||
| 1450 | + } | ||
| 1451 | + | ||
| 1452 | + f(); | ||
| 1453 | + } | ||
| 1454 | + }); | ||
| 1455 | + | ||
| 1456 | + })(); | ||
| 1457 | + | ||
| 1458 | + }, | ||
| 1332 | }; | 1459 | }; |
| 1333 | 1460 | ||
| 1334 | return Bmap; | 1461 | return Bmap; |
src/main/resources/static/pages/base/stationroute/js/stationroute-list-reload.js
| @@ -218,17 +218,21 @@ $(function() { | @@ -218,17 +218,21 @@ $(function() { | ||
| 218 | yes : function(index) { | 218 | yes : function(index) { |
| 219 | 219 | ||
| 220 | // 刷新左边树 | 220 | // 刷新左边树 |
| 221 | - // PublicFunctions.resjtreeDate(Line.id,dir); | 221 | + |
| 222 | + | ||
| 222 | var dir = WorldsBMap.getDir(); | 223 | var dir = WorldsBMap.getDir(); |
| 224 | + | ||
| 225 | + PublicFunctions.resjtreeDate(Line.id,dir,$("#versions").val()); | ||
| 226 | + // PublicFunctions.resjtreeDate(Line.id,dir); | ||
| 223 | // 查询路段信息 @param:<Line.id:线路Id;delBatch.dir:方向> | 227 | // 查询路段信息 @param:<Line.id:线路Id;delBatch.dir:方向> |
| 224 | // @return:data:路段数据 | 228 | // @return:data:路段数据 |
| 225 | - GetAjaxData.getSectionRouteInfo(Line.id, dir, | ||
| 226 | - function(data) { | ||
| 227 | - // 在地图上画出线路走向 | ||
| 228 | - // @param:<Line.id:线路Id;delBatch.dir:方向;data:路段数据> | ||
| 229 | - PublicFunctions.linePanlThree( | ||
| 230 | - Line.id, data, dir); | ||
| 231 | - }); | 229 | +// GetAjaxData.getSectionRouteInfo(Line.id, dir, |
| 230 | +// function(data) { | ||
| 231 | +// // 在地图上画出线路走向 | ||
| 232 | +// // @param:<Line.id:线路Id;delBatch.dir:方向;data:路段数据> | ||
| 233 | +// PublicFunctions.linePanlThree( | ||
| 234 | +// Line.id, data, dir); | ||
| 235 | +// }); | ||
| 232 | PublicFunctions.editMapStatusRemove(); | 236 | PublicFunctions.editMapStatusRemove(); |
| 233 | layer.msg("已退出编辑模式!"); | 237 | layer.msg("已退出编辑模式!"); |
| 234 | layer.close(index); | 238 | layer.close(index); |
src/main/resources/static/pages/base/stationroute/list.html
| @@ -154,6 +154,10 @@ | @@ -154,6 +154,10 @@ | ||
| 154 | <li> | 154 | <li> |
| 155 | <a class="upSystem" href="javascript:;" data-direction="0" data-pjax><i class="fa fa-wrench"></i> 系统规划</a> | 155 | <a class="upSystem" href="javascript:;" data-direction="0" data-pjax><i class="fa fa-wrench"></i> 系统规划</a> |
| 156 | </li> | 156 | </li> |
| 157 | + <li class="divider"> </li> | ||
| 158 | + <li> | ||
| 159 | + <a class="gpsRoute" href="javascript:;" data-direction="0" data-pjax><i class="fa fa-wrench"></i> 测点生成</a> | ||
| 160 | + </li> | ||
| 157 | </ul> | 161 | </ul> |
| 158 | </div> | 162 | </div> |
| 159 | </div> | 163 | </div> |
| @@ -258,6 +262,10 @@ | @@ -258,6 +262,10 @@ | ||
| 258 | <li> | 262 | <li> |
| 259 | <a class="downSystem" href="javascript:;" data-direction="1" data-pjax><i class="fa fa-wrench"></i> 系统规划</a> | 263 | <a class="downSystem" href="javascript:;" data-direction="1" data-pjax><i class="fa fa-wrench"></i> 系统规划</a> |
| 260 | </li> | 264 | </li> |
| 265 | + <li class="divider"> </li> | ||
| 266 | + <li> | ||
| 267 | + <a class="gpsRoute" href="javascript:;" data-direction="1" data-pjax><i class="fa fa-wrench"></i> 测点生成</a> | ||
| 268 | + </li> | ||
| 261 | </ul> | 269 | </ul> |
| 262 | </div> | 270 | </div> |
| 263 | </div> | 271 | </div> |