/**
|
* 初始化专车订单详情对话框
|
*/
|
var TOrderTransferInfoDlg = {
|
tOrderTransferInfoData : {}
|
};
|
|
/**
|
* 清除数据
|
*/
|
TOrderTransferInfoDlg.clearData = function() {
|
this.tOrderTransferInfoData = {};
|
}
|
|
/**
|
* 设置对话框中的数据
|
*
|
* @param key 数据的名称
|
* @param val 数据的具体值
|
*/
|
TOrderTransferInfoDlg.set = function(key, val) {
|
this.tOrderTransferInfoData[key] = (typeof val == "undefined") ? $("#" + key).val() : val;
|
return this;
|
}
|
|
/**
|
* 设置对话框中的数据
|
*
|
* @param key 数据的名称
|
* @param val 数据的具体值
|
*/
|
TOrderTransferInfoDlg.get = function(key) {
|
return $("#" + key).val();
|
}
|
|
/**
|
* 关闭此对话框
|
*/
|
TOrderTransferInfoDlg.close = function() {
|
parent.layer.close(window.parent.TOrderTransfer.layerIndex);
|
}
|
|
/**
|
* 收集数据
|
*/
|
TOrderTransferInfoDlg.collectData = function() {
|
this
|
.set('id')
|
.set('type')
|
.set('userId')
|
.set('driverId')
|
.set('carId')
|
.set('orderNum')
|
.set('placementLon')
|
.set('placementLat')
|
.set('placementAddress')
|
.set('startLon')
|
.set('startLat')
|
.set('endLon')
|
.set('startAddress')
|
.set('endLat')
|
.set('endAddress')
|
.set('boardingLon')
|
.set('boardingLat')
|
.set('boardingAddress')
|
.set('boardingTime')
|
.set('getoffLon')
|
.set('getoffLat')
|
.set('getoffAddress')
|
.set('getoffTime')
|
.set('mileage')
|
.set('payManner')
|
.set('payType')
|
.set('orderMoney')
|
.set('startMoney')
|
.set('mileageMoney')
|
.set('durationMoney')
|
.set('longDistanceMoney')
|
.set('parkMoney')
|
.set('roadTollMoney')
|
.set('redPacketMoney')
|
.set('couponMoney')
|
.set('redPacketId')
|
.set('couponId')
|
.set('discount')
|
.set('discountMoney')
|
.set('activityId')
|
.set('companyId')
|
.set('payMoney')
|
.set('substitute')
|
.set('passengers')
|
.set('passengersPhone')
|
.set('state')
|
.set('insertTime')
|
.set('travelTime')
|
.set('snatchOrderTime')
|
.set('setOutTime')
|
.set('arriveTime')
|
.set('startServiceTime')
|
.set('endServiceTime')
|
.set('orderType')
|
.set('orderSource')
|
.set('invoiceId')
|
.set('isReassign')
|
.set('reassignNotice')
|
.set('trackId')
|
.set('isDelete')
|
.set('oldState')
|
.set('telX')
|
.set('bindId')
|
.set('serverCarModelId');
|
}
|
|
/**
|
* 提交添加
|
*/
|
TOrderTransferInfoDlg.addSubmit = function() {
|
|
this.clearData();
|
this.collectData();
|
|
//提交信息
|
var ajax = new $ax(Feng.ctxPath + "/tOrderTransfer/add", function(data){
|
Feng.success("添加成功!");
|
window.parent.TOrderTransfer.table.refresh();
|
TOrderTransferInfoDlg.close();
|
},function(data){
|
Feng.error("添加失败!" + data.responseJSON.message + "!");
|
});
|
ajax.set(this.tOrderTransferInfoData);
|
ajax.start();
|
}
|
|
/**
|
* 提交修改
|
*/
|
TOrderTransferInfoDlg.editSubmit = function() {
|
|
this.clearData();
|
this.collectData();
|
|
//提交信息
|
var ajax = new $ax(Feng.ctxPath + "/tOrderTransfer/update", function(data){
|
Feng.success("修改成功!");
|
window.parent.TOrderTransfer.table.refresh();
|
TOrderTransferInfoDlg.close();
|
},function(data){
|
Feng.error("修改失败!" + data.responseJSON.message + "!");
|
});
|
ajax.set(this.tOrderTransferInfoData);
|
ajax.start();
|
}
|
|
var map = new AMap.Map("container", {
|
resizeEnable: true,
|
zoom: 14
|
});
|
$(function() {
|
getTrajectory();
|
});
|
|
function getTrajectory() {
|
$.ajax({
|
url: Feng.ctxPath + '/tOrderTransfer/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);
|
}
|
}
|
});
|
}
|
|
var marker, lineArr = [];
|
|
function orderTrack(data) {
|
for(var i in data){
|
var waypoints = [];
|
var lon = parseFloat(data[i].lon);
|
var lat = parseFloat(data[i].lat);
|
waypoints.push(lon);
|
waypoints.push(lat);
|
lineArr.push(waypoints);
|
}
|
|
marker = new AMap.Marker({
|
map: map,
|
position: lineArr[0],
|
icon: "https://webapi.amap.com/images/car.png",
|
offset: new AMap.Pixel(-26, -13),
|
autoRotation: true,
|
angle:-90,
|
});
|
|
// 绘制轨迹
|
var polyline = new AMap.Polyline({
|
map: map,
|
path: lineArr,
|
showDir:true,
|
strokeColor: "#28F", //线颜色
|
// strokeOpacity: 1, //线透明度
|
strokeWeight: 6, //线宽
|
// strokeStyle: "solid" //线样式
|
});
|
|
var passedPolyline = new AMap.Polyline({
|
map: map,
|
// path: lineArr,
|
strokeColor: "#AF5", //线颜色
|
// strokeOpacity: 1, //线透明度
|
strokeWeight: 6, //线宽
|
// strokeStyle: "solid" //线样式
|
});
|
|
|
marker.on('moving', function (e) {
|
passedPolyline.setPath(e.passedPath);
|
});
|
|
map.setFitView();
|
}
|
|
|
function startAnimation () {
|
marker.moveAlong(lineArr, 200);
|
}
|
|
function pauseAnimation () {
|
marker.pauseMove();
|
}
|
|
function resumeAnimation () {
|
marker.resumeMove();
|
}
|
|
function stopAnimation () {
|
marker.stopMove();
|
}
|