Commit 6df5f7abf976b899aca9af4f8cd5292def3d70aa

Authored by 王通
1 parent 52c81885

1.

src/main/java/com/bsth/controller/SectionController.java
@@ -51,7 +51,7 @@ public class SectionController extends BaseController<Section, Integer> { @@ -51,7 +51,7 @@ public class SectionController extends BaseController<Section, Integer> {
51 * 51 *
52 * @return int <sectionCode路段编码> 52 * @return int <sectionCode路段编码>
53 */ 53 */
54 - @RequestMapping(value="getSectionCode" , method = RequestMethod.GET) 54 + @RequestMapping(value="getSectionCode", method = RequestMethod.GET)
55 public long getSectionCode() { 55 public long getSectionCode() {
56 return sectionRepository.findLatestSectionId() + 1; 56 return sectionRepository.findLatestSectionId() + 1;
57 } 57 }
@@ -61,12 +61,12 @@ public class SectionController extends BaseController&lt;Section, Integer&gt; { @@ -61,12 +61,12 @@ public class SectionController extends BaseController&lt;Section, Integer&gt; {
61 * 61 *
62 * @return int <sectionCode路段编码> 62 * @return int <sectionCode路段编码>
63 */ 63 */
64 - @RequestMapping(value="doubleName" , method = RequestMethod.POST) 64 + @RequestMapping(value="doubleName", method = RequestMethod.POST)
65 public Map<String, Object> doubleName(@RequestParam Map<String, Object> map) { 65 public Map<String, Object> doubleName(@RequestParam Map<String, Object> map) {
66 return sectionService.doubleName(map); 66 return sectionService.doubleName(map);
67 } 67 }
68 68
69 - @RequestMapping(value="add" , method = RequestMethod.POST) 69 + @RequestMapping(value="add", method = RequestMethod.POST)
70 public Map<String, Object> add(Section section) { 70 public Map<String, Object> add(Section section) {
71 Map<String, Object> result = new HashMap<>(); 71 Map<String, Object> result = new HashMap<>();
72 try { 72 try {
@@ -80,7 +80,7 @@ public class SectionController extends BaseController&lt;Section, Integer&gt; { @@ -80,7 +80,7 @@ public class SectionController extends BaseController&lt;Section, Integer&gt; {
80 return result; 80 return result;
81 } 81 }
82 82
83 - @RequestMapping(value="modify" , method = RequestMethod.POST) 83 + @RequestMapping(value="modify", method = RequestMethod.POST)
84 public Map<String, Object> modify(Section section) { 84 public Map<String, Object> modify(Section section) {
85 Map<String, Object> result = new HashMap<>(); 85 Map<String, Object> result = new HashMap<>();
86 try { 86 try {
@@ -94,13 +94,36 @@ public class SectionController extends BaseController&lt;Section, Integer&gt; { @@ -94,13 +94,36 @@ public class SectionController extends BaseController&lt;Section, Integer&gt; {
94 return result; 94 return result;
95 } 95 }
96 96
  97 + @RequestMapping(value="findDistinctSectionName", method = RequestMethod.GET)
  98 + public Map<String, Object> findDistinctSectionName() {
  99 + Map<String, Object> result = new HashMap<>();
  100 + try {
  101 + result.put("data", sectionService.findDistinctSectionName());
  102 + result.put("status", ResponseCode.SUCCESS);
  103 + } catch (Exception e) {
  104 + result.put("status", ResponseCode.ERROR);
  105 + log.error("", e);
  106 + }
  107 +
  108 + return result;
  109 + }
  110 +
97 /** 111 /**
98 - * 根据路段名模糊搜索路段信息 112 + * 根据路段名搜索路段信息
99 * @param sectionName 113 * @param sectionName
100 * @return 站点列表 114 * @return 站点列表
101 */ 115 */
102 @RequestMapping(value="findSectionByName" , method = RequestMethod.GET) 116 @RequestMapping(value="findSectionByName" , method = RequestMethod.GET)
103 - public List<Section> findSectionByName(String sectionName) {  
104 - return sectionService.findSectionByName(sectionName); 117 + public Map<String, Object> findSectionByName(String sectionName) {
  118 + Map<String, Object> result = new HashMap<>();
  119 + try {
  120 + result.put("data", sectionService.findSectionByName(sectionName));
  121 + result.put("status", ResponseCode.SUCCESS);
  122 + } catch (Exception e) {
  123 + result.put("status", ResponseCode.ERROR);
  124 + log.error("", e);
  125 + }
  126 +
  127 + return result;
105 } 128 }
106 } 129 }
src/main/java/com/bsth/controller/realcontrol/AdminUtilsController.java
@@ -8,6 +8,7 @@ import java.util.*; @@ -8,6 +8,7 @@ import java.util.*;
8 import com.bsth.common.Setting; 8 import com.bsth.common.Setting;
9 import com.bsth.data.BasicData; 9 import com.bsth.data.BasicData;
10 import com.bsth.security.SsoConfig; 10 import com.bsth.security.SsoConfig;
  11 +import com.bsth.service.SectionService;
11 import com.bsth.service.schedule.utils.SpringUtils; 12 import com.bsth.service.schedule.utils.SpringUtils;
12 import com.bsth.util.MailUtils; 13 import com.bsth.util.MailUtils;
13 import com.fasterxml.jackson.core.JsonProcessingException; 14 import com.fasterxml.jackson.core.JsonProcessingException;
@@ -77,6 +78,9 @@ public class AdminUtilsController { @@ -77,6 +78,9 @@ public class AdminUtilsController {
77 @Autowired 78 @Autowired
78 private SsoConfig ssoConfig; 79 private SsoConfig ssoConfig;
79 80
  81 + @Autowired
  82 + private SectionService sectionService;
  83 +
80 /** 84 /**
81 * 出现重复班次的车辆 85 * 出现重复班次的车辆
82 * 86 *
@@ -369,4 +373,17 @@ public class AdminUtilsController { @@ -369,4 +373,17 @@ public class AdminUtilsController {
369 373
370 return "error"; 374 return "error";
371 } 375 }
  376 +
  377 + @RequestMapping("/section/translateWgs2Bd")
  378 + public String translateWgs2Bd() {
  379 + Map<String, Object> result = new HashMap<>();
  380 + try {
  381 + sectionService.translateWgs2Bd();
  382 + return "success";
  383 + } catch (Exception e) {
  384 + e.printStackTrace();
  385 + }
  386 +
  387 + return "error";
  388 + }
372 } 389 }
373 \ No newline at end of file 390 \ No newline at end of file
src/main/java/com/bsth/service/SectionService.java
@@ -37,9 +37,20 @@ public interface SectionService extends BaseService&lt;Section, Integer&gt; { @@ -37,9 +37,20 @@ public interface SectionService extends BaseService&lt;Section, Integer&gt; {
37 void modify(Section section); 37 void modify(Section section);
38 38
39 /** 39 /**
40 - * 根据路段名模糊检索路段信息 40 + * 获取所有不重名的道路名称
  41 + * @return
  42 + */
  43 + List<String> findDistinctSectionName();
  44 +
  45 + /**
  46 + * 根据路段名检索路段信息
41 * @param sectionName 47 * @param sectionName
42 * @return 48 * @return
43 */ 49 */
44 List<Section> findSectionByName(String sectionName); 50 List<Section> findSectionByName(String sectionName);
  51 +
  52 + /**
  53 + * 将路段的WGS坐标数据转换到百度坐标并保存
  54 + */
  55 + void translateWgs2Bd();
45 } 56 }
src/main/java/com/bsth/service/impl/SectionServiceImpl.java
@@ -14,12 +14,15 @@ import com.bsth.util.RoadCutDoubleName; @@ -14,12 +14,15 @@ import com.bsth.util.RoadCutDoubleName;
14 import org.geolatte.geom.LineString; 14 import org.geolatte.geom.LineString;
15 import org.geolatte.geom.codec.Wkt; 15 import org.geolatte.geom.codec.Wkt;
16 import org.springframework.beans.factory.annotation.Autowired; 16 import org.springframework.beans.factory.annotation.Autowired;
  17 +import org.springframework.jdbc.core.BatchPreparedStatementSetter;
17 import org.springframework.jdbc.core.BeanPropertyRowMapper; 18 import org.springframework.jdbc.core.BeanPropertyRowMapper;
18 import org.springframework.jdbc.core.JdbcTemplate; 19 import org.springframework.jdbc.core.JdbcTemplate;
19 import org.springframework.stereotype.Service; 20 import org.springframework.stereotype.Service;
20 import org.springframework.transaction.annotation.Transactional; 21 import org.springframework.transaction.annotation.Transactional;
21 import org.springframework.util.StringUtils; 22 import org.springframework.util.StringUtils;
22 23
  24 +import java.sql.PreparedStatement;
  25 +import java.sql.SQLException;
23 import java.text.SimpleDateFormat; 26 import java.text.SimpleDateFormat;
24 import java.util.*; 27 import java.util.*;
25 28
@@ -204,11 +207,37 @@ public class SectionServiceImpl extends BaseServiceImpl&lt;Section, Integer&gt; implem @@ -204,11 +207,37 @@ public class SectionServiceImpl extends BaseServiceImpl&lt;Section, Integer&gt; implem
204 } 207 }
205 208
206 @Override 209 @Override
  210 + public List<String> findDistinctSectionName() {
  211 + String query = "SELECT DISTINCT section_name FROM bsth_c_section WHERE id > 1000000";
  212 + return jdbcTemplate.queryForList(query, String.class);
  213 + }
  214 +
  215 + @Override
207 public List<Section> findSectionByName(String sectionName) { 216 public List<Section> findSectionByName(String sectionName) {
208 - String query = "SELECT id,section_code,section_name,ST_AsText(bsection_vector) bsection_vector_wkt,ew_direction,sn_direction FROM bsth_c_section WHERE section_name LIKE CONCAT(?,'%')"; 217 + String query = "SELECT id,section_code,section_name,croses_road,ST_AsText(bsection_vector) bsection_vector_wkt,ew_direction,sn_direction FROM bsth_c_section WHERE id > 1000000 AND section_name = ?";
209 return jdbcTemplate.query(query, new Object[]{ sectionName }, BeanPropertyRowMapper.newInstance(Section.class)); 218 return jdbcTemplate.query(query, new Object[]{ sectionName }, BeanPropertyRowMapper.newInstance(Section.class));
210 } 219 }
211 220
  221 + @Override
  222 + public void translateWgs2Bd() {
  223 + String query = "SELECT id, ST_AsText(gsection_vector) gsection_vector_wkt FROM bsth_c_section";
  224 + List<Section> sections = jdbcTemplate.query(query, BeanPropertyRowMapper.newInstance(Section.class));
  225 + List<Section> sections1 = new ArrayList<>();
  226 + SectionBatchPreparedStatementSetter preparedStatementSetter = new SectionBatchPreparedStatementSetter();
  227 + preparedStatementSetter.setSections(sections1);
  228 + for (int i = 0;i < sections.size();i++) {
  229 + sections1.add(sections.get(i));
  230 + if (i != 0 && i % 2000 == 0) {
  231 + jdbcTemplate.batchUpdate("UPDATE bsth_c_section SET bsection_vector = ST_GeomFromText(?) WHERE id = ?", preparedStatementSetter);
  232 + sections1.clear();
  233 + }
  234 + }
  235 + if (sections1.size() > 0) {
  236 + jdbcTemplate.batchUpdate("UPDATE bsth_c_section SET bsection_vector = ST_GeomFromText(?) WHERE id = ?", preparedStatementSetter);
  237 + sections1.clear();
  238 + }
  239 + }
  240 +
212 /** 百度坐标转WGS坐标 */ 241 /** 百度坐标转WGS坐标 */
213 public Location FromBDPointToWGSPoint(String bLonx,String bLatx) { 242 public Location FromBDPointToWGSPoint(String bLonx,String bLatx) {
214 243
@@ -240,4 +269,29 @@ public class SectionServiceImpl extends BaseServiceImpl&lt;Section, Integer&gt; implem @@ -240,4 +269,29 @@ public class SectionServiceImpl extends BaseServiceImpl&lt;Section, Integer&gt; implem
240 section.setGsectionVector(wgs); 269 section.setGsectionVector(wgs);
241 } 270 }
242 } 271 }
  272 +
  273 + final static class SectionBatchPreparedStatementSetter implements BatchPreparedStatementSetter {
  274 +
  275 + private List<Section> sections;
  276 +
  277 + @Override
  278 + public void setValues(PreparedStatement ps, int i) throws SQLException {
  279 + Section section = sections.get(i);
  280 + ps.setString(1, GeoConverter.lineStringWgs2bd(section.getGsectionVectorWkt()).toString());
  281 + ps.setInt(2, section.getId());
  282 + }
  283 +
  284 + @Override
  285 + public int getBatchSize() {
  286 + return sections.size();
  287 + }
  288 +
  289 + public List<Section> getSections() {
  290 + return sections;
  291 + }
  292 +
  293 + public void setSections(List<Section> sections) {
  294 + this.sections = sections;
  295 + }
  296 + }
243 } 297 }
244 \ No newline at end of file 298 \ No newline at end of file
src/main/resources/static/pages/base/section/css/positions.css
1 -#sectionPbmap_basic{  
2 - min-width: 100%;  
3 - width: calc(100% + 26px);  
4 - margin-top: -28px;  
5 - border: 2px solid #fdfdfd;  
6 - min-height: 1200px;  
7 - height:100%;  
8 - overflow: hidden;  
9 -}  
10 -  
11 -html,body{  
12 - overflow:hidden;  
13 -}  
14 -  
15 -/* 隐藏百度地图logo */  
16 -.anchorBL,  
17 -.anchorBL,  
18 -.amap-logo,  
19 -.amap-copyright{  
20 - display: none;  
21 -}  
22 -  
23 -  
24 -.leftUtils{  
25 - position: absolute;  
26 - padding-right: 100px;  
27 - width: 100%;  
28 - height: 40px;  
29 - z-index: 9999;  
30 - padding-top: 7px;  
31 - top: 20px;  
32 -}  
33 -  
34 -.BMap_pop div:nth-child(1) ,  
35 -.BMap_pop div:nth-child(2) ,  
36 -.BMap_pop div:nth-child(3) ,  
37 -.BMap_pop div:nth-child(4) ,  
38 -.BMap_pop div:nth-child(5) ,  
39 -.BMap_pop div:nth-child(6) ,  
40 -.BMap_pop div:nth-child(7) {  
41 -  
42 - border:0px solid rgb(255, 255, 255) !important;  
43 - background-color:#3B3F51 !important;  
44 -  
45 -}  
46 -  
47 -.BMap_pop div:nth-child(3){  
48 -  
49 - width:23px !important;  
50 -  
51 -}  
52 -  
53 -.BMap_pop div:nth-child(7) {  
54 -  
55 - width:23px !important;  
56 -  
57 - height:24px !important;  
58 -  
59 -}  
60 -  
61 -.BMap_pop div:nth-child(5) {  
62 -  
63 - height:24px !important;  
64 -  
65 -}  
66 -  
67 -/* 图片以后在弄,先隐藏div */  
68 -.BMap_pop div:nth-child(8) {  
69 -  
70 - height:0px !important;  
71 - /* background:url('/pages/base/stationroute/css/img/iw3-1.png') no-repeat !important; */  
72 - /* background-image:url('/pages/base/stationroute/css/img/windowinfo_b.jpg') !important; */  
73 -  
74 -}  
75 -  
76 -/* 图片以后在弄,先隐藏div */  
77 -.BMap_pop img:nth-child(10) {  
78 -  
79 - display: none;  
80 -  
81 -}  
82 -  
83 -.BMap_pop {  
84 -  
85 - box-shadow: 0 12px 15px 0 rgba(204, 204, 204, 0.33),0 17px 50px 0 rgba(204, 204, 204, 0.33)!important;  
86 - 1 +.map-container{
  2 + min-width: 100%;
  3 + width: calc(100% + 26px);
  4 + margin-top: -28px;
  5 + border: 2px solid #fdfdfd;
  6 + min-height: 1200px;
  7 + height:100%;
  8 + overflow: hidden;
  9 +}
  10 +
  11 +html,body{
  12 + overflow:hidden;
  13 +}
  14 +
  15 +/* 隐藏百度地图logo */
  16 +.anchorBL,
  17 +.anchorBL,
  18 +.amap-logo,
  19 +.amap-copyright{
  20 + display: none;
  21 +}
  22 +
  23 +
  24 +.leftUtils{
  25 + position: absolute;
  26 + padding-right: 100px;
  27 + width: 100%;
  28 + height: 40px;
  29 + z-index: 9999;
  30 + padding-top: 7px;
  31 + top: 20px;
  32 +}
  33 +
  34 +.BMap_pop div:nth-child(1) ,
  35 +.BMap_pop div:nth-child(2) ,
  36 +.BMap_pop div:nth-child(3) ,
  37 +.BMap_pop div:nth-child(4) ,
  38 +.BMap_pop div:nth-child(5) ,
  39 +.BMap_pop div:nth-child(6) ,
  40 +.BMap_pop div:nth-child(7) {
  41 +
  42 + border:0px solid rgb(255, 255, 255) !important;
  43 + background-color:#3B3F51 !important;
  44 +
  45 +}
  46 +
  47 +.BMap_pop div:nth-child(3){
  48 +
  49 + width:23px !important;
  50 +
  51 +}
  52 +
  53 +.BMap_pop div:nth-child(7) {
  54 +
  55 + width:23px !important;
  56 +
  57 + height:24px !important;
  58 +
  59 +}
  60 +
  61 +.BMap_pop div:nth-child(5) {
  62 +
  63 + height:24px !important;
  64 +
  65 +}
  66 +
  67 +/* 图片以后在弄,先隐藏div */
  68 +.BMap_pop div:nth-child(8) {
  69 +
  70 + height:0px !important;
  71 + /* background:url('/pages/base/stationroute/css/img/iw3-1.png') no-repeat !important; */
  72 + /* background-image:url('/pages/base/stationroute/css/img/windowinfo_b.jpg') !important; */
  73 +
  74 +}
  75 +
  76 +/* 图片以后在弄,先隐藏div */
  77 +.BMap_pop img:nth-child(10) {
  78 +
  79 + display: none;
  80 +
  81 +}
  82 +
  83 +.BMap_pop {
  84 +
  85 + box-shadow: 0 12px 15px 0 rgba(204, 204, 204, 0.33),0 17px 50px 0 rgba(204, 204, 204, 0.33)!important;
  86 +
87 } 87 }
88 \ No newline at end of file 88 \ No newline at end of file
src/main/resources/static/pages/base/section/editsection.html
@@ -132,31 +132,16 @@ @@ -132,31 +132,16 @@
132 </div> 132 </div>
133 </div> 133 </div>
134 </div> 134 </div>
135 -<script type="text/javascript">  
136 -$('#edit_section_modal').on('modal.show', function(e, map_,ajaxd,section,fun){  
137 - // 获取路段信息.  
138 - var Section = section.getEitdSection(); 135 +<script>
  136 +$('#edit_section_modal').on('modal.show', function(e, operation, service, section){
139 // 设值表单字段值. 137 // 设值表单字段值.
140 - fun.setSectionFormValue(Section);  
141 - // 路段路由ID.  
142 - var sectionId = Section.id; 138 + operation.setSectionFormValue(section);
143 // 显示mobal 139 // 显示mobal
144 $('#edit_section_modal').modal({show : true,backdrop: 'static',keyboard: false}); 140 $('#edit_section_modal').modal({show : true,backdrop: 'static',keyboard: false});
145 // 当调用 hide 实例方法时触发 141 // 当调用 hide 实例方法时触发
146 $('#edit_section_modal').on('hide.bs.modal', function () { 142 $('#edit_section_modal').on('hide.bs.modal', function () {
147 - closeMobleSetClean(); 143 + operation.refreshPolylineData();
148 }); 144 });
149 - function closeMobleSetClean() {  
150 - // 清除地图覆盖物  
151 - map_.clearMarkAndOverlays();  
152 - /** 设置修改路段集合对象为空 */  
153 - section.setEitdSection({});  
154 - $('.dropdown-toggle').removeClass('disabled');  
155 - $('#eidt').removeClass('btn disabled');  
156 - $('#eidt').attr("disabled",false);  
157 - /** 初始化路段信息 @return <id:路段路由ID> */  
158 - fun.initSectionInfo(sectionId);  
159 - }  
160 // 编辑表单元素 145 // 编辑表单元素
161 var form = $('#edit_section_form'); 146 var form = $('#edit_section_form');
162 // 获取错误提示元素 147 // 获取错误提示元素
@@ -168,33 +153,31 @@ $(&#39;#edit_section_modal&#39;).on(&#39;modal.show&#39;, function(e, map_,ajaxd,section,fun){ @@ -168,33 +153,31 @@ $(&#39;#edit_section_modal&#39;).on(&#39;modal.show&#39;, function(e, map_,ajaxd,section,fun){
168 }); 153 });
169 // 表单验证 154 // 表单验证
170 form.validate({ 155 form.validate({
171 - errorElement : 'span',  
172 - errorClass : 'help-block help-block-error',  
173 - focusInvalid : false,  
174 - rules : {  
175 - 'sectionName' : {required : true,maxlength:50},  
176 - 'sectionCode': {required : true} 156 + errorElement: 'span',
  157 + errorClass: 'help-block help-block-error',
  158 + focusInvalid: false,
  159 + rules: {
  160 + 'sectionName': {required: true,maxlength: 50},
  161 + 'sectionCode': {required: true}
177 }, 162 },
178 - invalidHandler : function(event, validator) { 163 + invalidHandler: function(event, validator) {
179 error.show(); 164 error.show();
180 App.scrollTo(error, -200); 165 App.scrollTo(error, -200);
181 }, 166 },
182 - highlight : function(element) { 167 + highlight: function(element) {
183 $(element).closest('.form-group').addClass('has-error'); 168 $(element).closest('.form-group').addClass('has-error');
184 }, 169 },
185 170
186 - unhighlight : function(element) { 171 + unhighlight: function(element) {
187 $(element).closest('.form-group').removeClass('has-error'); 172 $(element).closest('.form-group').removeClass('has-error');
188 -  
189 }, 173 },
190 - success : function(label) { 174 + success: function(label) {
191 label.closest('.form-group').removeClass('has-error'); 175 label.closest('.form-group').removeClass('has-error');
192 -  
193 }, 176 },
194 - submitHandler : function(f) {  
195 - var params = form.serializeJSON(); 177 + submitHandler: function(f) {
196 error.hide(); 178 error.hide();
197 - ajaxd.sectionUpdate(params, function(result) { 179 + var params = form.serializeJSON();
  180 + service.sectionUpdate(params, function(result) {
198 if (result.status == 'SUCCESS') { 181 if (result.status == 'SUCCESS') {
199 // 弹出添加成功提示消息 182 // 弹出添加成功提示消息
200 layer.msg('修改成功...'); 183 layer.msg('修改成功...');
src/main/resources/static/pages/base/section/js/section-list-table.js
@@ -58,6 +58,14 @@ @@ -58,6 +58,14 @@
58 $('tr.filter .filter-submit').on('click',function(){ 58 $('tr.filter .filter-submit').on('click',function(){
59 initSearch(); 59 initSearch();
60 }); 60 });
  61 + $('#positionSections').on('click',function(){
  62 + var sectionName = $('input[name=sectionName_like]').val();
  63 + if (sectionName) {
  64 + window.location.href = 'position_sections.html?no=' + sectionName;
  65 + } else {
  66 + layer.msg('请输入路段名称');
  67 + }
  68 + });
61 function initSearch() { 69 function initSearch() {
62 var params = getParams(); 70 var params = getParams();
63 page = 0; 71 page = 0;
src/main/resources/static/pages/base/section/js/section-operation.js 0 → 100644
  1 +var SectionOperation = function () {
  2 + var map, type = 0, editSection;
  3 + var operation = {
  4 + initMap: function() {
  5 + var CENTER_POINT = {lng: 121.528733,lat: 31.237425};
  6 + map = new BMap.Map('map_section');
  7 + map.centerAndZoom(new BMap.Point(CENTER_POINT.lng, CENTER_POINT.lat), 15);
  8 + map.enableDragging();
  9 + map.enableScrollWheelZoom();
  10 + map.disableDoubleClickZoom();
  11 + map.enableKeyboard();
  12 + },
  13 + initSection: function() {
  14 + operation.initMap();
  15 + type = 0;
  16 + var sectionId = $.url().param('no');
  17 + SectionService.getSectionById(sectionId,function(section) {
  18 + if (section) {
  19 + operation.drawSection(section);
  20 + }
  21 + });
  22 + },
  23 + initSections: function () {
  24 + operation.initMap();
  25 + type = 1;
  26 + var sectionName = $.url().param('no');
  27 + if (sectionName) {
  28 + SectionService.findSectionByName(sectionName, function (sections) {
  29 + sections.forEach(function(section) {
  30 + operation.drawSection(section);
  31 + })
  32 + })
  33 + }
  34 + },
  35 + initEventBind: function () {
  36 + $('#backUp').on('click',function() {
  37 + loadPage('/pages/base/section/list.html');
  38 + });
  39 + },
  40 + setSectionFormValue : function(section) {
  41 + $('#edit_section_form input,select,textarea').each(function(){
  42 + if (this.name) {
  43 + $(this).val(section[this.name]);
  44 + }
  45 + })
  46 + },
  47 + recoverPolylineColor: function() {
  48 + var overlays = map.getOverlays();
  49 + overlays.forEach(function (overlay) {
  50 + if (overlay.cdata && overlay.cdata.id) {
  51 + overlay.setStrokeColor('#5298ff');
  52 + }
  53 + });
  54 + },
  55 + refreshPolylineData: function () {
  56 + if (!type) {
  57 + operation.initSection();
  58 + } else {
  59 + operation.initSections();
  60 + }
  61 + },
  62 + drawSection : function(section) {
  63 + var bsectionVectorWkt = section.bsectionVectorWkt;
  64 + bsectionVectorWkt = bsectionVectorWkt.substring(11, bsectionVectorWkt.length - 1);
  65 + var coordinates = bsectionVectorWkt.split(',');
  66 + var centerPoint, points = new Array();
  67 + var clen = coordinates.length, middle = Math.ceil(clen / 2);
  68 + for(var i = 0;i < clen;i++) {
  69 + var coordinate = coordinates[i].split(' ');
  70 + points.push(new BMap.Point(coordinate[0], coordinate[1]));
  71 + if (i == middle) {
  72 + centerPoint = new BMap.Point(coordinate[0], coordinate[1])
  73 + }
  74 + }
  75 + var polyline = new BMap.Polyline(points, {strokeColor : "#5298ff",strokeWeight : 6,strokeOpacity :1,strokeStyle:'solid'});
  76 + polyline.cdata = section;
  77 + map.addOverlay(polyline);
  78 + var opts = {
  79 + width: 200,
  80 + height: 350,
  81 + offset: new BMap.Size(0, 0),
  82 + title: '<h4 style="color:#FFFFFF">' + (section.sectionName ? section.sectionName : '') + ' 路段详情</h4>',
  83 + enableMessage: false,
  84 + enableCloseOnClick: true,
  85 + enableAutoPan: true
  86 + };
  87 + var html = new Array();
  88 + html.push('<HR style="border:1 dashed #987cb9" width="100%" color=#987cb9 SIZE=1>');
  89 + html.push('<span style="color:#DDD;font-size: 15px;">路段名称:');html.push(section.sectionName);html.push('</span>');
  90 + html.push('<span class="help-block" style="color:#DDD;font-size: 15px;">路段编码:');html.push(section.sectionCode);html.push('</span>');
  91 + html.push('<span class="help-block" style="color:#DDD;font-size: 15px;">交叉路段:');html.push(section.crosesRoad);html.push('</span>');
  92 + html.push('<span class="help-block" style="color:#DDD;font-size: 15px;">东西向:');html.push((section.ewDirection === undefined ? '' : section.ewDirection == 0 ? '东->西' : '西->东'));html.push('</span>');
  93 + html.push('<span class="help-block" style="color:#DDD;font-size: 15px;">南北向:');html.push((section.snDirection === undefined ? '' : section.snDirection == 0 ? '南->北' : '北->南'));html.push('</span>');
  94 + html.push('<span class="help-block" style="color:#DDD;font-size: 15px;">路段限速:');html.push(section.speedLimit);html.push('</span>');
  95 + html.push('<span class="help-block" style="color:#DDD;font-size: 15px;">路段长度:');html.push(section.sectionDistance);html.push('</span>');
  96 + html.push('<button class="info_win_btn" onclick="SectionOperation.editSection(');html.push(section.id);html.push(');">修改路段信息</button>');
  97 + html.push('<button class="info_win_btn" onclick="SectionOperation.editPolyline(');html.push(section.id);html.push(');">移动路段位置</button>');
  98 +
  99 + var infoWindow = new BMap.InfoWindow(html.join(''), opts);
  100 + var icon = new BMap.Icon('/pages/base/stationroute/css/img/blank.gif', new BMap.Size(20, 20));
  101 + var marker = new BMap.Marker(centerPoint, {icon: icon});
  102 + map.addOverlay(marker);
  103 + var panOpts = {noAnimation: true};
  104 + map.panTo(centerPoint, panOpts);
  105 + map.panBy(0, -110, panOpts);
  106 + polyline.addEventListener('click', function(event) {
  107 + operation.recoverPolylineColor();
  108 + var polyline = event.target, path = polyline.getPath();
  109 + polyline.setStrokeColor('#FF0000');
  110 + map.addOverlay(marker);
  111 + marker.setPosition(path[Math.ceil(path.length / 2)]);
  112 + marker.openInfoWindow(infoWindow);
  113 + });
  114 + },
  115 + editPolyline : function(sectionId) {
  116 + var overlays = map.getOverlays();
  117 + overlays.forEach(function (overlay) {
  118 + if (overlay.cdata && overlay.cdata.id == sectionId) {
  119 + overlay.enableEditing();
  120 + overlay.addEventListener('rightclick', operation.confirmPolyline);
  121 + layer.msg('拖动路段至相应位置,然后右击确定!');
  122 + }
  123 + });
  124 + },
  125 + confirmPolyline: function (event) {
  126 + var polyline = event.target;
  127 + polyline.removeEventListener('rightclick', operation.confirmPolyline);
  128 + polyline.disableEditing();
  129 + var points = polyline.getPath(), bsectionVectorWkt = new Array();
  130 + for (var i = 0;i < points.length;i++) {
  131 + bsectionVectorWkt.push(points[i].lng + ' ' + points[i].lat);
  132 + }
  133 + SectionService.sectionUpdate({id: polyline.cdata.id, bsectionVectorWkt: 'LINESTRING(' + bsectionVectorWkt.join(',') + ')'}, function(result) {
  134 + if (result.status == 'SUCCESS') {
  135 + layer.msg('修改成功...');
  136 + } else {
  137 + layer.msg('修改失败...');
  138 + }
  139 + });
  140 + },
  141 + editSection: function(sectionId) {
  142 + layer.closeAll();
  143 + var overlays = map.getOverlays();
  144 + overlays.forEach(function (overlay) {
  145 + if (overlay.cdata && overlay.cdata.id == sectionId) {
  146 + overlay.disableEditing();
  147 + var editPloyLineArray = overlay.getPath();
  148 + editSection = overlay.cdata;
  149 + $.get('editsection.html', function(m){
  150 + $(pjaxContainer).append(m);
  151 + $('#edit_section_modal').trigger('modal.show', [SectionOperation, SectionService, editSection]);
  152 + });
  153 + }
  154 + });
  155 + },
  156 + clearMarkAndOverlays : function() {
  157 + map.clearOverlays();
  158 + map.removeOverlay();
  159 + }
  160 + }
  161 +
  162 + return operation;
  163 +}();
0 \ No newline at end of file 164 \ No newline at end of file
src/main/resources/static/pages/base/section/js/section-positions-events.js deleted 100644 → 0
1 -$(function(){  
2 - // 监听返回按钮事件.  
3 - $('#backUp').on('click',function() {  
4 - // 返回list.html页面  
5 - loadPage('/pages/base/section/list.html');  
6 - });  
7 -  
8 - // 监听编辑线路走向.  
9 - $('.dropdown-menu #eidt').on('click', function(){  
10 - $('#eidt').attr("disabled",true);  
11 - $('#eidt').addClass('btn disabled');  
12 - // 弹出添加失败提示消息,2秒关闭(如果不配置,默认是3秒)  
13 - var yindex = layer.msg('编辑完线路走向后,请双击线路走向区域保存',{ offset: '126px',shift: 0,time: 10000});  
14 - SectionPWorldsBMap.editPolyUpline();  
15 - });  
16 -});  
17 \ No newline at end of file 0 \ No newline at end of file
src/main/resources/static/pages/base/section/js/section-positions-function.js deleted 100644 → 0
1 -/**  
2 - * @description : TODO (路段信息定位positions.html页面方法函数的封装.)  
3 - *  
4 - * @author bsth@lq  
5 - *  
6 - * @version 1.0  
7 - */  
8 -var PositionsPublicFunctions = function () {  
9 - var PubFun = {  
10 - // 初始化路段信息与线路走向.  
11 - initSectionInfo : function(sectionId) {  
12 - GetAjaxData.getSectionById(sectionId,function(section) {  
13 - if(section) {  
14 - EditSectionObj.setEitdSection(section);  
15 - SectionPWorldsBMap.drawingUpline(section);  
16 - }  
17 - });  
18 - },  
19 - // 设值表单字段值.  
20 - setSectionFormValue : function(section) {  
21 - $('#edit_section_form input,select,textarea').each(function(){  
22 - if (this.name) {  
23 - $(this).val(section[this.name]);  
24 - }  
25 - })  
26 - }  
27 - }  
28 - return PubFun ;  
29 -}();  
30 \ No newline at end of file 0 \ No newline at end of file
src/main/resources/static/pages/base/section/js/section-positions-map.js deleted 100644 → 0
1 -/**  
2 - * @description : (TODO) 百度地图  
3 - *  
4 - * @author bsth@lq  
5 - *  
6 - * @version 1.0  
7 - *  
8 - */  
9 -  
10 -var SectionPWorldsBMap = function () {  
11 - // 定义地图对象、地图覆盖物、线性几何图形.  
12 - var mapValue = '',marker='', polyUpline='';  
13 - var Bmap = {  
14 - // 初始化地图.  
15 - init : function() {  
16 - // 设置中心点  
17 - var CENTER_POINT = {lng : 121.528733,lat : 31.237425};  
18 - // 初始化百度地图  
19 - mapValue = new BMap.Map('sectionPbmap_basic');  
20 - //中心点和缩放级别  
21 - mapValue.centerAndZoom(new BMap.Point(CENTER_POINT.lng,CENTER_POINT.lat), 15);  
22 - //启用地图拖拽事件,默认启用(可不写)  
23 - mapValue.enableDragging();  
24 - //启用地图滚轮放大缩小  
25 - mapValue.enableScrollWheelZoom();  
26 - //禁用鼠标双击放大  
27 - mapValue.disableDoubleClickZoom();  
28 - //启用键盘上下左右键移动地图  
29 - mapValue.enableKeyboard();  
30 - return mapValue;  
31 - },  
32 - // 绘制线路走向线性几何图形.  
33 - drawingUpline : function(section) {  
34 - var bsectionVectorWkt = section.bsectionVectorWkt;  
35 - var tempStr = bsectionVectorWkt.substring(11, bsectionVectorWkt.length - 1);  
36 - var lineArray = tempStr.split(',');  
37 - var polylineArray = [];  
38 - var lineaLen = lineArray.length  
39 - for(var i = 0;i<lineaLen;i++) {  
40 - polylineArray.push(new BMap.Point(lineArray[i].split(' ')[0],lineArray[i].split(' ')[1]));  
41 - }  
42 - var centerI = Math.ceil(lineaLen/2);  
43 - // 中心坐标点  
44 - var point = new BMap.Point(lineArray[centerI].split(' ')[0],lineArray[centerI].split(' ')[1]);  
45 - // 创建线路走向  
46 - polyUpline = new BMap.Polyline(polylineArray, {strokeColor : "#5298ff",strokeWeight : 6,strokeOpacity :1,strokeStyle:'solid'});  
47 - polyUpline.cdata = section;  
48 - // 把折线添加到地图上  
49 - mapValue.addOverlay(polyUpline);  
50 - // 信息窗口参数属性  
51 - var opts = {  
52 - // 信息窗口宽度  
53 - width : 200,  
54 - // 信息窗口高度  
55 - height : 350,  
56 - // 信息窗位置偏移值。  
57 - offset: new BMap.Size(0, 0),  
58 - //标题  
59 - title : '<h4 style="color:#FFFFFF">' + section.sectionName + ' 路段详情</h4>',  
60 - //设置不允许信窗发送短息  
61 - enableMessage : false,  
62 - //是否开启点击地图关闭信息窗口  
63 - enableCloseOnClick : true,  
64 - // 是否开启信息窗口打开时地图自动移动(默认开启)。(自 1.1 新增)  
65 - enableAutoPan:true  
66 - };  
67 - var html = new Array();  
68 - html.push('<HR style="border:1 dashed #987cb9" width="100%" color=#987cb9 SIZE=1>');  
69 - html.push('<span style="color:#DDD;font-size: 15px;">路段名称:');html.push(section.sectionName);html.push('</span>');  
70 - html.push('<span class="help-block" style="color:#DDD;font-size: 15px;">路段编码:');html.push(section.sectionCode);html.push('</span>');  
71 - html.push('<span class="help-block" style="color:#DDD;font-size: 15px;">交叉路段:');html.push(section.crosesRoad);html.push('</span>');  
72 - html.push('<span class="help-block" style="color:#DDD;font-size: 15px;">东西向:');html.push((section.ewDirection === undefined ? '' : section.ewDirection == 0 ? '东->西' : '西->东'));html.push('</span>');  
73 - html.push('<span class="help-block" style="color:#DDD;font-size: 15px;">南北向:');html.push((section.snDirection === undefined ? '' : section.snDirection == 0 ? '南->北' : '北->南'));html.push('</span>');  
74 - html.push('<span class="help-block" style="color:#DDD;font-size: 15px;">路段限速:');html.push(section.speedLimit);html.push('</span>');  
75 - html.push('<span class="help-block" style="color:#DDD;font-size: 15px;">路段长度:');html.push(section.sectionDistance);html.push('</span>');  
76 - html.push('<button class="info_win_btn" onclick="SectionPWorldsBMap.editSection(');html.push(section.id);html.push(');">修改路段信息</button>');  
77 - html.push('<button class="info_win_btn" onclick="SectionPWorldsBMap.editPolyUpline(');html.push(section.id);html.push(');">移动路段位置</button>');  
78 - // 创建信息窗口  
79 - var infoWindow = new BMap.InfoWindow(html.join(''), opts);  
80 - // 自定义标注物图片  
81 - var icon_target = new BMap.Icon('/pages/base/stationroute/css/img/blank.gif',new BMap.Size(20, 20));  
82 - // 创建点  
83 - marker = new BMap.Marker(point, {icon : icon_target});  
84 - // 把标注添物加到地图上  
85 - mapValue.addOverlay(marker);  
86 - //开启信息窗口  
87 - marker.openInfoWindow(infoWindow);  
88 - var PanOptions_ ={noAnimation :true};  
89 - mapValue.reset();  
90 - mapValue.panTo(point,PanOptions_);  
91 - mapValue.panBy(0,-110,PanOptions_);  
92 - mapValue.setZoom(14);  
93 - polyUpline.addEventListener("click", function(event) {  
94 - mapValue.addOverlay(marker);  
95 - marker.setPosition(event.target.getPath()[0]);  
96 - marker.openInfoWindow(infoWindow);  
97 - });  
98 - },  
99 - // 编辑线路走向几何线性图形.  
100 - editPolyUpline : function() {  
101 - polyUpline.disableMassClear();  
102 - SectionPWorldsBMap.clearMarkAndOverlays();  
103 - polyUpline.enableMassClear();  
104 - polyUpline.enableEditing();  
105 - polyUpline.addEventListener('rightclick', Bmap.confirmPolyline);  
106 - layer.msg('拖动路段至相应位置,然后右击确定!');  
107 - },  
108 - confirmPolyline: function (event) {  
109 - polyUpline.removeEventListener('rightclick', Bmap.confirmPolyline);  
110 - polyUpline.disableEditing();  
111 - var points = event.target.getPath(), bsectionVectorWkt = new Array();  
112 - for (var i = 0;i < points.length;i++) {  
113 - bsectionVectorWkt.push(points[i].lng + ' ' + points[i].lat);  
114 - }  
115 - GetAjaxData.sectionUpdate({id: event.target.cdata.id, bsectionVectorWkt: 'LINESTRING(' + bsectionVectorWkt.join(',') + ')'}, function(result) {  
116 - if (result.status == 'SUCCESS') {  
117 - // 弹出添加成功提示消息  
118 - layer.msg('修改成功...');  
119 - } else {  
120 - // 弹出添加失败提示消息  
121 - layer.msg('修改失败...');  
122 - }  
123 - });  
124 - },  
125 - editSection: function() {  
126 - // 关闭  
127 - layer.closeAll();  
128 - polyUpline.disableEditing();  
129 - // 获取折线坐标集合  
130 - var editPloyLineArray = polyUpline.getPath();  
131 - EditSectionObj.setEitdBsectionVector(JSON.stringify(editPloyLineArray));  
132 - polyUpline= '';  
133 - // 加载修改路段弹出层mobal页面  
134 - $.get('editsection.html', function(m){  
135 - $(pjaxContainer).append(m);  
136 - $('#edit_section_modal').trigger('modal.show', [SectionPWorldsBMap,GetAjaxData,EditSectionObj,PositionsPublicFunctions]);  
137 - });  
138 - },  
139 - // 清楚地图覆盖物  
140 - clearMarkAndOverlays : function() {  
141 - mapValue.clearOverlays();  
142 - mapValue.removeOverlay();  
143 - }  
144 - }  
145 - return Bmap;  
146 -}();  
147 \ No newline at end of file 0 \ No newline at end of file
src/main/resources/static/pages/base/section/js/section-positions-reload.js deleted 100644 → 0
1 -/**  
2 - *  
3 - * @JSName : list.js(路段信息定位positions.html页面js)  
4 - *  
5 - * @Author : bsth@lq  
6 - *  
7 - * @Description : TODO(路段信息定位positions.html页面js)  
8 - *  
9 - * @Data : 2016年4月28日 上午9:21:17  
10 - *  
11 - * @Version 公交调度系统BS版 0.1  
12 - *  
13 - */  
14 -  
15 -(function(){  
16 - // 获取参数线路ID.  
17 - var id = $.url().param('no');  
18 - // 关闭左侧栏.  
19 - if (!$('body').hasClass('page-sidebar-closed')) {$('.menu-toggler.sidebar-toggler').click();}  
20 - // 等候300毫秒执行.  
21 - setTimeout(function(){  
22 - /** 初始化地图 @return <mapB:地图对象> */  
23 - var mapB = SectionPWorldsBMap.init();  
24 - /** 初始化路段信息 @return <id:路段路由ID> */  
25 - PositionsPublicFunctions.initSectionInfo(id);  
26 - },300);  
27 -})();  
28 \ No newline at end of file 0 \ No newline at end of file
src/main/resources/static/pages/base/section/js/section-ajax-getdata.js renamed to src/main/resources/static/pages/base/section/js/section-service.js
1 -/**  
2 - * @description : (TODO) GetAjaxData :封装ajax异步请求方法  
3 - *  
4 - * @author bsth@lq  
5 - *  
6 - * @version 1.0  
7 - */ 1 +var SectionService = function(){
  2 + return {
  3 + /**
  4 + * 根据ID查询路段信息
  5 + * @param sectionId
  6 + * @param callback
  7 + */
  8 + getSectionById: function(sectionId, callback){
  9 + $get('/section/' + sectionId, {}, function(r) {
  10 + return callback && callback(r);
  11 + });
  12 + },
8 13
9 -var GetAjaxData = function(){  
10 - var ajaxData = {  
11 - // 根据ID查询路段信息.  
12 - getSectionById: function(sectionId, callback){  
13 - $get('/section/' + sectionId, {}, function(r) {  
14 - return callback && callback(r);  
15 - });  
16 - }, 14 + findUpSectionRouteCode: function(lineId,diraction,sectionRouteCode,callback) {
  15 + $get('/sectionroute/findUpSectionRouteCode',{lineId:lineId,direction:diraction,sectionRouteCode:sectionRouteCode},function(result) {
  16 + callback && callback(result);
  17 + });
17 18
18 - findUpSectionRouteCode: function(lineId,diraction,sectionRouteCode,callback) {  
19 - $get('/sectionroute/findUpSectionRouteCode',{lineId:lineId,direction:diraction,sectionRouteCode:sectionRouteCode},function(result) {  
20 - callback && callback(result);  
21 - }); 19 + },
22 20
23 - }, 21 + /**
  22 + * 获取所有不重名的道路名称
  23 + * @param callback
  24 + */
  25 + findDistinctSectionName: function(callback) {
  26 + $get('/section/findDistinctSectionName', {}, function(res) {
  27 + callback && callback(res.data);
  28 + })
  29 + },
24 30
25 - sectionUpdate: function(section, callback) {  
26 - $post('/section/modify', section, function(data) {  
27 - callback && callback(data);  
28 - })  
29 - }  
30 - }  
31 -  
32 - return ajaxData;  
33 - 31 + /**
  32 + * 根据名称获取所有路段
  33 + * @param callback
  34 + */
  35 + findSectionByName: function(sectionName, callback) {
  36 + $get('/section/findSectionByName', {sectionName: sectionName}, function(res) {
  37 + callback && callback(res.data);
  38 + })
  39 + },
  40 +
  41 + /**
  42 + * 更新路段信息
  43 + * @param section
  44 + * @param callback
  45 + */
  46 + sectionUpdate: function(section, callback) {
  47 + $post('/section/modify', section, function(data) {
  48 + callback && callback(data);
  49 + })
  50 + }
  51 + }
34 }(); 52 }();
35 \ No newline at end of file 53 \ No newline at end of file
src/main/resources/static/pages/base/section/list.html
@@ -23,6 +23,7 @@ @@ -23,6 +23,7 @@
23 <div class="actions"> 23 <div class="actions">
24 <div class="btn-group btn-group-devided" data-toggle="buttons"> 24 <div class="btn-group btn-group-devided" data-toggle="buttons">
25 <a class="btn btn-circle blue" href="add.html" data-pjax><i class="fa fa-plus"></i> 添加路段</a> 25 <a class="btn btn-circle blue" href="add.html" data-pjax><i class="fa fa-plus"></i> 添加路段</a>
  26 + <a class="btn btn-circle blue" href="javascript:void(0)" data-pjax id="positionSections"><i class="fa fa-plus"></i> 定位完整道路</a>
26 </div> 27 </div>
27 </div> 28 </div>
28 </div> 29 </div>
@@ -44,7 +45,7 @@ @@ -44,7 +45,7 @@
44 <tr role="row" class="filter"> 45 <tr role="row" class="filter">
45 <td></td> 46 <td></td>
46 <td> 47 <td>
47 - <input type="text" class="form-control form-filter input-sm" name="sectionName_like" /> 48 + <input type="text" class="form-control form-filter input-sm" name="sectionName_like"/>
48 </td> 49 </td>
49 <td> 50 <td>
50 <input type="text" class="form-control form-filter input-sm" name="sectionCode_like" /> 51 <input type="text" class="form-control form-filter input-sm" name="sectionCode_like" />
@@ -135,4 +136,5 @@ @@ -135,4 +136,5 @@
135 </tr> 136 </tr>
136 {{/if}} 137 {{/if}}
137 </script> 138 </script>
138 -<script src="/pages/base/section/js/section-list-table.js"></script>  
139 \ No newline at end of file 139 \ No newline at end of file
  140 +<script src="/pages/base/section/js/section-service.js"></script>
  141 +<script src="/pages/base/section/js/section-list-table.js"></script>
src/main/resources/static/pages/base/section/position_sections.html 0 → 100644
  1 +<link href="/pages/base/section/css/positions.css" rel="stylesheet" type="text/css" />
  2 +<style>
  3 + .info_win_btn {
  4 + background: #ff8355;
  5 + color: #fff;
  6 + font-size: 12px;
  7 + margin: 0 5px 3px 0;
  8 + border: 1px solid transparent;
  9 + }
  10 +</style>
  11 +<div id="map_section" class="map-container"></div>
  12 +<script src="/pages/base/section/js/positionsection.js"></script>
  13 +<script src="/pages/base/section/js/section-service.js"></script>
  14 +<script src="/pages/base/section/js/section-operation.js"></script>
  15 +<script>
  16 + (function(){
  17 + setTimeout(function(){
  18 + SectionOperation.initSections();
  19 + }, 300);
  20 + })();
  21 +</script>
0 \ No newline at end of file 22 \ No newline at end of file
src/main/resources/static/pages/base/section/positions.html
@@ -8,32 +8,33 @@ @@ -8,32 +8,33 @@
8 border: 1px solid transparent; 8 border: 1px solid transparent;
9 } 9 }
10 </style> 10 </style>
11 -<div id="sectionPbmap_basic"></div> 11 +<div id="map_section" class="map-container"></div>
12 <div class="leftUtils"> 12 <div class="leftUtils">
13 <div class="btn-group" style="left: 100px;"> 13 <div class="btn-group" style="left: 100px;">
14 <a class="btn btn-sm green-seagreen dropdown-toggle" style="width: 98px;" href="javascript:;" data-toggle="dropdown" aria-expanded="false"> 操作工具 14 <a class="btn btn-sm green-seagreen dropdown-toggle" style="width: 98px;" href="javascript:;" data-toggle="dropdown" aria-expanded="false"> 操作工具
15 <i class="fa fa-angle-down"></i> 15 <i class="fa fa-angle-down"></i>
16 </a> 16 </a>
17 <ul class="dropdown-menu pull-right" style="min-width:100px"> 17 <ul class="dropdown-menu pull-right" style="min-width:100px">
18 - <li> 18 + <!--<li>
19 <a href="javascript:;" id = "eidt"><i class="fa fa-pencil"></i> 修改 </a> 19 <a href="javascript:;" id = "eidt"><i class="fa fa-pencil"></i> 修改 </a>
20 - </li> 20 + </li>-->
21 <li> 21 <li>
22 <a href="javascript:;" id = "backUp"> <i class="fa fa-reply"></i> 返回 </a> 22 <a href="javascript:;" id = "backUp"> <i class="fa fa-reply"></i> 返回 </a>
23 </li> 23 </li>
24 - 24 +
25 </ul> 25 </ul>
26 </div> 26 </div>
27 </div> 27 </div>
28 -<!-- 编辑路段对象类 -->  
29 <script src="/pages/base/section/js/positionsection.js"></script> 28 <script src="/pages/base/section/js/positionsection.js"></script>
30 -<!-- ajax异步请求类 -->  
31 -<script src="/pages/base/section/js/section-ajax-getdata.js"></script>  
32 -<!-- 函数方法类 -->  
33 -<script src="/pages/base/section/js/section-positions-function.js"></script>  
34 -<!-- 地图类 -->  
35 -<script src="/pages/base/section/js/section-positions-map.js"></script>  
36 -<!-- 事件类 -->  
37 -<script src="/pages/base/section/js/section-positions-events.js"></script>  
38 -<!-- reload类 -->  
39 -<script src="/pages/base/section/js/section-positions-reload.js"></script>  
40 \ No newline at end of file 29 \ No newline at end of file
  30 +<script src="/pages/base/section/js/section-service.js"></script>
  31 +<script src="/pages/base/section/js/section-operation.js"></script>
  32 +<script>
  33 + (function(){
  34 + // 关闭左侧栏.
  35 + if (!$('body').hasClass('page-sidebar-closed')) {$('.menu-toggler.sidebar-toggler').click();}
  36 + setTimeout(function(){
  37 + SectionOperation.initSection();
  38 + SectionOperation.initEventBind();
  39 + }, 300);
  40 + })();
  41 +</script>
41 \ No newline at end of file 42 \ No newline at end of file
src/main/resources/static/pages/base/stationroute/js/stationroute-ajax-getdata.js
@@ -211,8 +211,8 @@ var GetAjaxData = function(){ @@ -211,8 +211,8 @@ var GetAjaxData = function(){
211 }, 211 },
212 212
213 findSectionByName: function(sectionName, cb) { 213 findSectionByName: function(sectionName, cb) {
214 - $get('/section/findSectionByName', {sectionName: sectionName}, function(sections) {  
215 - cb && cb(sections); 214 + $get('/section/findSectionByName', {sectionName: sectionName}, function(res) {
  215 + cb && cb(res.data);
216 }); 216 });
217 }, 217 },
218 218
src/main/resources/static/pages/base/stationroute/js/stationroute-list-map.js
@@ -659,7 +659,7 @@ window.WorldsBMap = function () { @@ -659,7 +659,7 @@ window.WorldsBMap = function () {
659 mapBValue.addOverlay(polyline); 659 mapBValue.addOverlay(polyline);
660 overlays.push(polyline); 660 overlays.push(polyline);
661 polyline.addEventListener('click', function (event) { 661 polyline.addEventListener('click', function (event) {
662 - alert(11) 662 + alert(event.target.section.id)
663 }); 663 });
664 polyline.addEventListener('rightclick', Bmap.confirmCenterPointHandler); 664 polyline.addEventListener('rightclick', Bmap.confirmCenterPointHandler);
665 } 665 }