/**
|
* 初始化出租车订单详情对话框
|
*/
|
var TOrderTaxiInfoDlg = {
|
tOrderTaxiInfoData : {},
|
};
|
|
|
/**
|
* 清除数据
|
*/
|
TOrderTaxiInfoDlg.clearData = function() {
|
this.tOrderTaxiInfoData = {};
|
}
|
|
|
|
/**
|
* 设置对话框中的数据
|
*
|
* @param key 数据的名称
|
* @param val 数据的具体值
|
*/
|
TOrderTaxiInfoDlg.set = function(key, val) {
|
this.tOrderTaxiInfoData[key] = (typeof val == "undefined") ? $("#" + key).val() : val;
|
return this;
|
}
|
|
/**
|
* 设置对话框中的数据
|
*
|
* @param key 数据的名称
|
* @param val 数据的具体值
|
*/
|
TOrderTaxiInfoDlg.get = function(key) {
|
return $("#" + key).val();
|
}
|
|
/**
|
* 关闭此对话框
|
*/
|
TOrderTaxiInfoDlg.close = function() {
|
parent.layer.close(window.parent.TOrderTaxi.layerIndex);
|
}
|
|
/**
|
* 收集数据
|
*/
|
TOrderTaxiInfoDlg.collectData = function() {
|
this
|
.set('id')
|
.set('passengers')
|
.set('passengersPhone')
|
.set('startAddress')
|
.set('endAddress')
|
.set('orderType')
|
.set('travelTime')
|
.set('remark');
|
}
|
|
/**
|
* 提交添加
|
*/
|
TOrderTaxiInfoDlg.addSubmit = function() {
|
|
this.clearData();
|
this.collectData();
|
|
let passengers = $('#passengers').val();
|
if(passengers == null && passengers == ''){
|
Feng.error("乘车人姓名不可为空!");
|
return;
|
}
|
|
let passengersPhone = $('#passengersPhone').val();
|
if(passengersPhone == null && passengersPhone == ''){
|
Feng.error("乘车人电话不可为空!");
|
return;
|
}
|
|
let startAddress = $('#startAddress').val();
|
if(startAddress == null && startAddress == ''){
|
Feng.error("起点不可为空!");
|
return;
|
}
|
let endAddress = $('#endAddress').val();
|
if(endAddress == null && endAddress == ''){
|
Feng.error("终点不可为空!");
|
return;
|
}
|
|
//提交信息
|
var ajax = new $ax(Feng.ctxPath + "/tOrderTaxi/add", function(data){
|
if(data.code == 200){
|
Feng.success("添加成功!");
|
window.parent.TOrderTaxi.table.refresh();
|
TOrderTaxiInfoDlg.close();
|
}else{
|
Feng.error(data.msg);
|
}
|
},function(data){
|
Feng.error("添加失败!" + data.responseJSON.message + "!");
|
});
|
ajax.set(this.tOrderTaxiInfoData);
|
ajax.start();
|
}
|
|
/**
|
* 提交修改
|
*/
|
TOrderTaxiInfoDlg.editSubmit = function() {
|
|
this.clearData();
|
this.collectData();
|
|
//提交信息
|
var ajax = new $ax(Feng.ctxPath + "/tOrderTaxi/update", function(data){
|
Feng.success("修改成功!");
|
window.parent.TOrderTaxi.table.refresh();
|
TOrderTaxiInfoDlg.close();
|
},function(data){
|
Feng.error("修改失败!" + data.responseJSON.message + "!");
|
});
|
ajax.set(this.tOrderTaxiInfoData);
|
ajax.start();
|
}
|
|
// var map = new BMapGL.Map('allmap', {
|
// style: 'grayed-out',
|
// displayOptions: {
|
// indoor: false,
|
// poiText: false,
|
// poiIcon: false,
|
// building: false,
|
// }
|
// });
|
// var point = new BMapGL.Point(demo_data[0][0], demo_data[0][1]);
|
//
|
// map.centerAndZoom(point, 18);
|
// map.enableScrollWheelZoom(true);
|
// map.setTilt(35);
|
//
|
// var track = new Track.View(map, {
|
// lineLayerOptions: {
|
// style: {
|
// strokeWeight: 8,
|
// strokeLineJoin: 'round',
|
// strokeLineCap: 'round'
|
// },
|
// }
|
// });
|
//
|
// var trackData = [];
|
// var colorOffset = [];
|
//
|
// function orderTrack(data) {
|
// for(var item in data){
|
// var point = new BMapGL.Point(data[item].longitude, data[item].latitude);
|
// var trackPoint = new Track.TrackPoint(point);
|
// trackData.push(trackPoint);
|
// // 不同速度区间对应颜色
|
// var choose = [0.9, 0.5, 0.1];
|
// var color = choose[Math.floor(Math.random() * choose.length)];
|
// colorOffset.push(color);
|
// }
|
// }
|
// var startMarker = new BMapGL.Marker(trackData[0].getPoint(), {
|
// icon: new BMapGL.Icon('https://mapopen-pub-jsapi.bj.bcebos.com/jsapiGlgeo/img/start.png', new BMapGL.Size(25, 40)),
|
// offset: new BMapGL.Size(0, -16),
|
// });
|
// map.addOverlay(startMarker);
|
// var endMarker = new BMapGL.Marker(trackData[trackData.length-1].getPoint(), {
|
// icon: new BMapGL.Icon('https://mapopen-pub-jsapi.bj.bcebos.com/jsapiGlgeo/img/end.png', new BMapGL.Size(25, 40)),
|
// offset: new BMapGL.Size(0, -16),
|
//
|
// });
|
// map.addOverlay(endMarker);
|
// var duration = 60000;
|
// var step = duration / trackData.length;
|
//
|
// var trackRoad = new Track.LiveTrack({
|
// // visible: false,
|
// duration: step,
|
// linearTexture: [[0, '#f45e0c'], [0.5, '#f6cd0e'], [1, '#2ad61d']],
|
// guideStyle: {
|
// style:{
|
// traceDisappear: false,
|
// traceStart: true,
|
// sequence: true,
|
// marginLength: 32,
|
// arrowColor: '#fff',
|
// strokeColor: 'rgba(27, 142, 236, 1)',
|
// strokeTextureUrl: 'https://mapopen-pub-jsapi.bj.bcebos.com/jsapiGlgeo/img/down.png',
|
// strokeTextureWidth: 64,
|
// strokeTextureHeight: 32,
|
// }
|
// },
|
// });
|
//
|
// trackRoad.setGuidTrackPath(trackData);
|
// trackRoad.on(Track.LineCodes.GUIDE_STATUS, (e) => {
|
// if (e.status === Track.GuidCodes.ADD_TO_MAP) {
|
// var guidTrack = trackRoad.getGuidTrack();
|
// guidTrack.on(Track.LineCodes.STATUS, (status) => {
|
// switch (status) {
|
// case Track.StatusCodes.FINISH:
|
// var box = trackRoad.getBBox();
|
// if(box){
|
// var bounds = [new BMapGL.Point(box[0], box[1]), new BMapGL.Point(box[2], box[3])];
|
// map.setViewport(bounds);
|
// }
|
// break;
|
// default:
|
// break;
|
// }
|
// });
|
// }
|
// });
|
// var movePoint = new Track.ModelPoint({ point: trackData[0].getPoint(), style:{
|
// url: 'https://mapopen-pub-jsapi.bj.bcebos.com/jsapiGlgeo/img/bus.glb',
|
// scale: 9,
|
// level: 18,
|
// rotationX: 90,
|
// rotationY: 90,
|
// rotationZ: 0
|
// } });
|
// movePoint.setRotation(trackRoad.getGuidTrack().getStepInfoByIndex(0).angle);
|
//
|
// trackRoad.setMovePoint(movePoint);
|
//
|
// track.addTrackLine(trackRoad);
|
// track.focusTrack(trackRoad);
|
//
|
// var ani;
|
// var start = null;
|
// var index = 0;
|
// var finishIndex = 0;
|
//
|
//
|
// function startAnimation(timestamp) {
|
// if (!start) start = timestamp;
|
// var progress = timestamp - start;
|
// var next = step * (index - finishIndex);
|
//
|
// if(progress > next){
|
// if(index<trackData.length){
|
// movePoint.moveTo(trackData[index]);
|
// var obj = trackRoad.getGuidTrack().getStepInfoByIndex(index);
|
// trackRoad.setGradientColors(colorOffset.slice(0,index+1));
|
// index++;
|
// }else{
|
// pauseAnimation();
|
// }
|
//
|
// }
|
// ani = requestAnimationFrame(startAnimation);
|
// }
|
//
|
//
|
// function stopAnimation() {
|
// pauseAnimation();
|
// index = 0;
|
// finishIndex = index;
|
//
|
// start = null;
|
// trackRoad.clearTrackPoint();
|
// movePoint.setPoint(trackData[0].getPoint());
|
// movePoint.setRotation(trackRoad.getGuidTrack().getStepInfoByIndex(0).angle);
|
// }
|
// function pauseAnimation() {
|
// cancelAnimationFrame(ani);
|
// finishIndex = index;
|
// start = null;
|
// }
|
// function resumeAnimation() {
|
// startAnimation();
|
// }
|
|
$(function() {
|
$('#orderType').on('change', function () {
|
if($(this).val() == 1){
|
$('.travelTime').hide();
|
}else{
|
$('.travelTime').show();
|
}
|
})
|
if(typeof $("#id").val() != "undefined"){
|
getTrajectory();
|
}
|
});
|
|
function getTrajectory() {
|
$.ajax({
|
url: Feng.ctxPath + '/tOrderTaxi/getOrderTrack',
|
type: 'POST',
|
data:{
|
orderDetailId: $("#id").val()
|
},
|
success: function (res) {
|
if(res.status == 200){
|
var data = res.data;
|
if(data.length > 0){
|
orderTrack(data);
|
}/*else{
|
Feng.error("当前订单没有轨迹");
|
}*/
|
}else{
|
Feng.error(res.msg);
|
}
|
}
|
});
|
}
|
function orderTrack(data) {
|
// for (var item of data) {
|
// var point = new BMapGL.Point(item.lon, item.lat);
|
// var trackPoint = new Track.TrackPoint(point);
|
// trackData.push(trackPoint);
|
// // 不同速度区间对应颜色
|
// var choose = [0.9, 0.5, 0.1];
|
// var color = choose[Math.floor(Math.random() * choose.length)];
|
// colorOffset.push(color);
|
// }
|
}
|