2014-09-01 13:50:43 +08:00
|
|
|
|
var OrderSubmit = {
|
|
|
|
|
init: function() {
|
|
|
|
|
if ($('#ordersubmit_page').length == 0) {
|
|
|
|
|
return false;
|
|
|
|
|
}
|
2014-09-04 17:11:16 +08:00
|
|
|
|
|
|
|
|
|
$('#menu_btn').on('click', function() {
|
|
|
|
|
$('#user_menu').toggle();
|
|
|
|
|
$('#user_menu').height(document.documentElement.clientHeight-45);
|
|
|
|
|
});
|
|
|
|
|
$('#user_menu').on('click', function(e) {
|
|
|
|
|
if ($(e.target).attr('id') == 'user_menu') {
|
|
|
|
|
$('#user_menu').hide();
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
$('#remind_btn').on('click',function(e){
|
|
|
|
|
var url = 'remind.html?',
|
|
|
|
|
from = $('#startStationCode').val(),
|
|
|
|
|
to = $('#endStationCode').val(),
|
|
|
|
|
date = $('#start_date_val').val();
|
|
|
|
|
// url += 'date='+date;
|
|
|
|
|
if(!!from){
|
|
|
|
|
url += '&from='+from;
|
|
|
|
|
}
|
|
|
|
|
if(!!to){
|
|
|
|
|
url += '&to='+to;
|
|
|
|
|
}
|
|
|
|
|
location.href = url;
|
|
|
|
|
});
|
2014-09-01 13:50:43 +08:00
|
|
|
|
|
|
|
|
|
OrderSubmit.bindEvent();
|
|
|
|
|
Public.checkLogin(function() {
|
|
|
|
|
if (!sessionStorage.getItem(Public.user + 'curBuy') && !sessionStorage.getItem('curBuy')) {
|
2014-09-04 17:18:45 +08:00
|
|
|
|
window.location.href = 'index.html';
|
2014-09-01 13:50:43 +08:00
|
|
|
|
}
|
|
|
|
|
OrderSubmit.getTrainInfo();
|
|
|
|
|
OrderSubmit.getPassenger();
|
|
|
|
|
// OrderSubmit.loadPassCode();
|
|
|
|
|
}, function() {
|
|
|
|
|
window.location.href = 'login.html';
|
|
|
|
|
}, function() {
|
|
|
|
|
window.location.href = 'login.html';
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
},
|
|
|
|
|
getTrainInfo: function() {
|
|
|
|
|
|
|
|
|
|
OrderSubmit.curData = JSON.parse(sessionStorage.getItem(Public.user + 'curBuy'));
|
|
|
|
|
if (!OrderSubmit.curData) {
|
|
|
|
|
OrderSubmit.curData = JSON.parse(sessionStorage.getItem('curBuy'));
|
|
|
|
|
}
|
|
|
|
|
OrderSubmit.curBuySeat = sessionStorage.getItem(Public.user + 'curBuySeat');
|
|
|
|
|
if (!OrderSubmit.curBuySeat) {
|
|
|
|
|
OrderSubmit.curBuySeat = sessionStorage.getItem('curBuySeat');
|
|
|
|
|
}
|
2014-09-01 16:24:47 +08:00
|
|
|
|
OrderSubmit.curInfo = Public.his.queryObjs[Public.his.querys[0][0]];
|
2014-09-01 13:50:43 +08:00
|
|
|
|
|
|
|
|
|
var html = '<div class="info">',
|
|
|
|
|
date = new Date(OrderSubmit.curData['form_train_date'].replace(/\-/g, '/'));
|
|
|
|
|
html += '<div class="info_title"><span class="pull_right">' + OrderSubmit.curData['code'] + '</span><span>' + date.format('yyyy-M-d') + ' ' + date.day(3) + '</span></div>';
|
|
|
|
|
html += '<div class="stations_info"><div class="station_info"><strong>' + OrderSubmit.curData['from']['name'] + '</strong>' + OrderSubmit.curData['from']['time'] + '</div>';
|
|
|
|
|
html += '<div class="station_info"><strong>' + OrderSubmit.curData['to']['name'] + '</strong>' + OrderSubmit.curData['to']['time'] + '</div></div>';
|
|
|
|
|
html += '</div>';
|
|
|
|
|
$('#trainInfo').html(html);
|
|
|
|
|
|
|
|
|
|
},
|
|
|
|
|
passengerList: null,
|
|
|
|
|
loadPassCode: function() {
|
|
|
|
|
if ($('#randcodeimg').hasClass('loading_code')) {
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
$('#randcodeimg').addClass('loading_code');
|
|
|
|
|
|
|
|
|
|
cn12306.loadRandCode('sjrand', function(img) {
|
|
|
|
|
$('#randcodeimg').attr('src', img);
|
|
|
|
|
$('#randcodeimg').removeClass('loading_code');
|
|
|
|
|
}, 'passcodeNew/getPassCodeNew?module=login&rand=sjrand');
|
|
|
|
|
|
|
|
|
|
},
|
|
|
|
|
getPassenger: function() {
|
|
|
|
|
if (sessionStorage.getItem(Public.user + '_passenger')) {
|
|
|
|
|
OrderSubmit.passengerList = JSON.parse(sessionStorage.getItem(Public.user + '_passenger'));
|
|
|
|
|
OrderSubmit.passengerObj = JSON.parse(sessionStorage.getItem(Public.user + '_passengerobj'));
|
|
|
|
|
OrderSubmit.setPassengerList();
|
|
|
|
|
} else {
|
|
|
|
|
bootStrap.post('confirmPassenger/getPassengerDTOs', null, null, 'leftTicket/init').done(function(data) {
|
|
|
|
|
if (data['status'] && Array.isArray(data["data"]["normal_passengers"]) && data["data"]["normal_passengers"].length > 0) {
|
|
|
|
|
OrderSubmit.formatPassenger(data["data"]["normal_passengers"]);
|
|
|
|
|
|
|
|
|
|
OrderSubmit.setPassengerList();
|
2014-09-03 16:37:31 +08:00
|
|
|
|
}else{
|
|
|
|
|
Public.alert('23:00-07:00 系统维护时间');//如果无法读取联系人(至少有自己的帐号),即当做是在维护时间
|
|
|
|
|
return;
|
2014-09-01 13:50:43 +08:00
|
|
|
|
}
|
|
|
|
|
}).fail(function(xhr, type) {
|
2014-09-04 18:11:49 +08:00
|
|
|
|
// console.log(xhr, type);
|
2014-09-01 13:50:43 +08:00
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
setPassengerList: function() {
|
|
|
|
|
var html = '';
|
|
|
|
|
for (var i = 0, len = OrderSubmit.passengerList.length; i < len; i++) {
|
|
|
|
|
html += '<label class="query_checkbox"><input name="train_type" type="checkbox" value="' + OrderSubmit.passengerList[i]['key'] + '">' + OrderSubmit.passengerList[i]['passenger_name'] + '</label>';
|
|
|
|
|
};
|
2014-09-04 18:11:49 +08:00
|
|
|
|
$('#passengers').html(html);
|
2014-09-01 13:50:43 +08:00
|
|
|
|
|
|
|
|
|
if (OrderSubmit.curInfo) {
|
|
|
|
|
var arr = OrderSubmit.curInfo['filters'].split('&'),
|
|
|
|
|
k = [];
|
|
|
|
|
for (var i = 0; i < arr.length; i++) {
|
|
|
|
|
k = arr[i].split('=');
|
|
|
|
|
k[1] = decodeURIComponent(k[1]);
|
|
|
|
|
if (k[0] == 'passenger' && !!OrderSubmit.passengerObj[k[1]]) {
|
|
|
|
|
OrderSubmit.passengerAdd(OrderSubmit.passengerObj[k[1]]);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$('#add_passenger').on('click', function() {
|
|
|
|
|
Public.showInnerPage('passenger');
|
|
|
|
|
});
|
|
|
|
|
$('#passenger_ok').on('click', function() {
|
|
|
|
|
Public.hideInnerPage('passenger');
|
|
|
|
|
});
|
|
|
|
|
$('#passengers [type="checkbox"]').on('change', function() {
|
2014-09-03 21:36:55 +08:00
|
|
|
|
if ($(this).prop("checked") && ($('#passengers [type="checkbox"]:checked').length > 5 || $('#passenger_list li').length >= 5)) {
|
2014-09-01 13:50:43 +08:00
|
|
|
|
Public.alert('联系人最多只能选择五个');
|
|
|
|
|
$(this).prop("checked", false);
|
|
|
|
|
return false;
|
|
|
|
|
}else{
|
|
|
|
|
|
|
|
|
|
var $_this = $(this),
|
|
|
|
|
val = $_this.val();
|
|
|
|
|
|
|
|
|
|
if ($_this.prop("checked")) {
|
|
|
|
|
OrderSubmit.passengerAdd(OrderSubmit.passengerObj[val]);
|
|
|
|
|
} else {
|
|
|
|
|
$('#passenger_list [data-key="' + val + '"]').remove();
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
if ($('#passenger_list li').length > 0) {
|
|
|
|
|
$('#ordersubmit').click();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
},
|
|
|
|
|
passenger: {},
|
|
|
|
|
passengerAdd: function(obj) {
|
|
|
|
|
var html = '',
|
|
|
|
|
types = Util.getAvailableTicketType(obj),
|
|
|
|
|
seat = OrderSubmit.curData.ticketMap[OrderSubmit.curBuySeat];
|
2014-09-04 14:46:15 +08:00
|
|
|
|
html = '<li class="clearfix" data-key="' + obj['key'] + '" data-type="' + types[0]['id'] + '" data-seat="' + seat['code'] + '"><span class="pull_left"><strong>' + obj['passenger_name'] + '</strong><span class="ticket">' + types[0]['name'] + '</span><br>' + obj['passenger_id_no'] + '</span><a href="javascript:;" data-fn="edit" class="pull_right"><span class="seat">' + seat['name'];
|
|
|
|
|
if((seat['price'] / 10) > 0){
|
|
|
|
|
html += ' ' + (seat['price'] / 10) + '元';
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
html += '</span> <i class="icon_edit"></i></a></li>';
|
2014-09-01 13:50:43 +08:00
|
|
|
|
$('#passenger_list').append(html);
|
2014-09-04 18:11:49 +08:00
|
|
|
|
$('#passengers [value="'+obj['key']+'"]').prop('checked',true);
|
2014-09-01 13:50:43 +08:00
|
|
|
|
},
|
|
|
|
|
addChildren: function(key, el) {
|
|
|
|
|
var obj = OrderSubmit.passengerObj[key],
|
|
|
|
|
seat = OrderSubmit.curData.ticketMap[el.attr('data-seat')];
|
|
|
|
|
html = '<li class="clearfix" data-children="true" data-key="' + obj['passenger_name'] + '$' + obj['passenger_id_type_code'] + '$' + obj['passenger_id_no'] + '" data-type="2" data-seat="' + el.attr('data-seat') + '">\
|
|
|
|
|
<span class="pull_left"><strong>' + obj['passenger_name'] + '</strong><span class="ticket">儿童票</span><br>' + obj['passenger_id_no'] + '</span>\
|
|
|
|
|
<a href="javascript:;" data-fn="edit" class="pull_right">\
|
2014-09-04 14:46:15 +08:00
|
|
|
|
<span class="seat">' + seat['name'];
|
|
|
|
|
if((seat['price'] / 10) > 0){
|
|
|
|
|
html += ' ' + (seat['price'] / 10) + '元';
|
|
|
|
|
}
|
|
|
|
|
html += '</span> <i class="icon_edit"></i></a></li>';
|
|
|
|
|
|
2014-09-01 13:50:43 +08:00
|
|
|
|
el.after(html);
|
|
|
|
|
},
|
|
|
|
|
formatPassenger: function(lists) {
|
|
|
|
|
var arr = [],
|
|
|
|
|
obj = {},
|
|
|
|
|
key = "";
|
|
|
|
|
for (var i = 0; i < lists.length; i++) {
|
|
|
|
|
if (Util.canPassageAddToOrder(lists[i])) {
|
|
|
|
|
key = /*lists[i]['passenger_type'] + "$" + */ lists[i]['passenger_name'] + "$" + lists[i]['passenger_id_type_code'] + "$" + lists[i]['passenger_id_no'];
|
|
|
|
|
lists[i]['key'] = key;
|
|
|
|
|
obj[key] = lists[i];
|
|
|
|
|
arr.push(lists[i]);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
OrderSubmit.passengerList = arr;
|
|
|
|
|
OrderSubmit.passengerObj = obj;
|
|
|
|
|
sessionStorage.setItem('_passenger', JSON.stringify(arr));
|
|
|
|
|
sessionStorage.setItem('_passengerobj', JSON.stringify(obj));
|
|
|
|
|
},
|
|
|
|
|
editKey: '',
|
|
|
|
|
editEl: null,
|
|
|
|
|
showLayer: function() {
|
|
|
|
|
$('#layer').show();
|
|
|
|
|
},
|
|
|
|
|
hideLayer: function() {
|
|
|
|
|
$('#layer').hide();
|
|
|
|
|
},
|
|
|
|
|
bindEvent: function() {
|
|
|
|
|
var $edit_menu = $('#edit_menu');
|
|
|
|
|
$('[data-fn="edit"]').live('click', function(e) {
|
|
|
|
|
var box = $(this).closest('[data-key]'),
|
|
|
|
|
key = box.attr('data-key');
|
|
|
|
|
OrderSubmit.editKey = key;
|
|
|
|
|
OrderSubmit.editEl = box;
|
|
|
|
|
$('#passenger_editinfo').html(box.html());
|
|
|
|
|
$('#passenger_editinfo [data-fn="edit"]').attr('data-fn', 'edit_close');
|
|
|
|
|
$('#edit_menu').css({
|
|
|
|
|
'top': box.offset().top
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
if (box.attr('data-children')) {
|
|
|
|
|
$('[data-fn="children"]').closest('li').hide();
|
|
|
|
|
$('[data-fn="ticket"]').closest('li').hide();
|
|
|
|
|
} else {
|
|
|
|
|
$('[data-fn="children"]').closest('li').show();
|
|
|
|
|
$('[data-fn="ticket"]').closest('li').show();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$edit_menu.show();
|
|
|
|
|
OrderSubmit.showLayer();
|
|
|
|
|
|
|
|
|
|
});
|
|
|
|
|
$('#layer').live('click', function() {
|
|
|
|
|
$edit_menu.hide();
|
|
|
|
|
$('#edit_ticket').hide();
|
|
|
|
|
$('#edit_seat').hide();
|
|
|
|
|
OrderSubmit.hideLayer();
|
|
|
|
|
});
|
|
|
|
|
$edit_menu.live('click', function(e) {
|
|
|
|
|
e.stopPropagation();
|
|
|
|
|
return false;
|
|
|
|
|
});
|
|
|
|
|
$('[data-fn="edit_close"]').live('click', function(e) {
|
|
|
|
|
$edit_menu.hide();
|
|
|
|
|
OrderSubmit.hideLayer();
|
|
|
|
|
});
|
|
|
|
|
$('[data-fn="remove"]').live('click', function(e) {
|
|
|
|
|
var type = OrderSubmit.editEl.attr('data-type');
|
|
|
|
|
if (type == '2') {
|
|
|
|
|
OrderSubmit.editEl.remove();
|
2014-09-04 21:05:23 +08:00
|
|
|
|
if($('#passenger_list [data-key="' + OrderSubmit['editKey'] + '"]').length == 0){
|
|
|
|
|
$('#passengers [value="' + OrderSubmit['editKey'] + '"]').prop('checked', false);
|
|
|
|
|
}
|
2014-09-01 13:50:43 +08:00
|
|
|
|
} else {
|
|
|
|
|
$('#passenger_list [data-key="' + OrderSubmit['editKey'] + '"]').remove();
|
|
|
|
|
$('#passengers [value="' + OrderSubmit['editKey'] + '"]').prop('checked', false);
|
|
|
|
|
}
|
|
|
|
|
delete OrderSubmit.passenger[OrderSubmit['editKey']];
|
|
|
|
|
$edit_menu.hide();
|
|
|
|
|
OrderSubmit.hideLayer();
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
$('[data-fn="children"]').live('click', function(e) {
|
|
|
|
|
if ($('#passenger_list li').length > 4) {
|
|
|
|
|
Public.alert('联系人最多只能选择五个');
|
|
|
|
|
} else {
|
|
|
|
|
OrderSubmit.addChildren(OrderSubmit.editKey, OrderSubmit.editEl);
|
|
|
|
|
}
|
|
|
|
|
$edit_menu.hide();
|
|
|
|
|
OrderSubmit.hideLayer();
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
$('[data-fn="seat"]').live('click', function(e) {
|
|
|
|
|
$edit_menu.hide();
|
|
|
|
|
OrderSubmit.hideLayer();
|
|
|
|
|
OrderSubmit.setSeat();
|
|
|
|
|
});
|
|
|
|
|
$('#edit_seat ul a').live('click', function() {
|
|
|
|
|
var id = $(this).attr('data-id'),
|
|
|
|
|
info = OrderSubmit.curData['ticketMap'][id];
|
|
|
|
|
OrderSubmit.editEl.attr('data-seat', id);
|
2014-09-04 14:46:15 +08:00
|
|
|
|
if((info['price'] / 10) > 0){
|
|
|
|
|
$('.seat', OrderSubmit.editEl).html(info['name'] + ' ' + (info['price'] / 10) + '元');
|
|
|
|
|
}else{
|
|
|
|
|
$('.seat', OrderSubmit.editEl).html(info['name']);
|
|
|
|
|
}
|
2014-09-01 13:50:43 +08:00
|
|
|
|
|
|
|
|
|
$('#edit_seat').hide();
|
|
|
|
|
OrderSubmit.hideLayer();
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
$('[data-fn="ticket"]').live('click', function(e) {
|
|
|
|
|
$edit_menu.hide();
|
|
|
|
|
OrderSubmit.hideLayer();
|
|
|
|
|
OrderSubmit.setTicket();
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
$('#edit_ticket a').live('click', function() {
|
|
|
|
|
var id = $(this).attr('data-id'),
|
|
|
|
|
name = $(this).html();
|
|
|
|
|
OrderSubmit.editEl.attr('data-type', id);
|
|
|
|
|
$('.ticket', OrderSubmit.editEl).html(name);
|
|
|
|
|
$('#edit_ticket').hide();
|
|
|
|
|
OrderSubmit.hideLayer();
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
$('#ordersubmit').on('click', function() {
|
|
|
|
|
var passenger = [],
|
|
|
|
|
studentTicket = false;
|
|
|
|
|
if ($('#passenger_list li').length == 0) {
|
|
|
|
|
Public.alert('请添加联系人');
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
$('#passenger_list li').each(function(idx, ele) {
|
|
|
|
|
passenger[idx] = {};
|
|
|
|
|
var obj = OrderSubmit.passengerObj[$(this).attr('data-key')];
|
|
|
|
|
passenger[idx]['seat'] = $(this).attr('data-seat');
|
|
|
|
|
passenger[idx]['passenger_type'] = $(this).attr('data-type');
|
|
|
|
|
|
|
|
|
|
passenger[idx]['passenger_id_type_code'] = obj['passenger_id_type_code'];
|
|
|
|
|
passenger[idx]['passenger_id_no'] = obj['passenger_id_no'];
|
|
|
|
|
passenger[idx]['mobile_no'] = obj['mobile_no'];
|
|
|
|
|
passenger[idx]['passenger_name'] = obj['passenger_name'];
|
|
|
|
|
});
|
|
|
|
|
OrderSubmit.submit(passenger, OrderSubmit.curData, studentTicket);
|
|
|
|
|
});
|
|
|
|
|
$('#code_layer .public_btns a[data-val="sure"]').live('click', function() {
|
2014-09-04 17:18:45 +08:00
|
|
|
|
$('#code_layer').hide();
|
2014-09-01 13:50:43 +08:00
|
|
|
|
OrderSubmit.submitGo();
|
|
|
|
|
});
|
|
|
|
|
$('#code_layer .public_btns a[data-val="cancel"]').live('click', function() {
|
|
|
|
|
$('#code_layer').hide();
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
setSeat: function() {
|
|
|
|
|
var html = '',
|
|
|
|
|
obj;
|
|
|
|
|
for (var i = 0, len = OrderSubmit.curData['ticketMapSort'].length; i < len; i++) {
|
|
|
|
|
obj = OrderSubmit.curData['ticketMapSort'][i];
|
2014-09-04 14:46:15 +08:00
|
|
|
|
html += '<li><a href="javascript:;" data-id="' + obj['code'] + '"><span class="pull_right text_gray"><span class="text_warning">' + obj['count'] + '</span> 张</span><span class="form_label">' + obj['name'] + '</span><span class="text_gray">';
|
|
|
|
|
if((obj['price'] / 10) > 0){
|
|
|
|
|
html += (obj['price'] / 10) + '元';
|
|
|
|
|
}
|
|
|
|
|
html += '</span></a></li>';
|
2014-09-01 13:50:43 +08:00
|
|
|
|
};
|
|
|
|
|
$('#edit_seat ul').html(html);
|
|
|
|
|
$('#edit_seat').show();
|
|
|
|
|
OrderSubmit.showLayer();
|
|
|
|
|
},
|
|
|
|
|
setTicket: function() {
|
|
|
|
|
var list = Util.getAvailableTicketType(OrderSubmit.passengerObj[OrderSubmit.editKey]),
|
|
|
|
|
html = '';
|
|
|
|
|
for (var i = 0, len = list.length; i < len; i++) {
|
|
|
|
|
html += '<li><a href="javascript:;" data-id="' + list[i]['id'] + '">' + list[i]['name'] + '</a></li>';
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
$('#edit_ticket ul').html(html);
|
|
|
|
|
$('#edit_ticket').show();
|
|
|
|
|
OrderSubmit.showLayer();
|
|
|
|
|
},
|
|
|
|
|
submitData: null,
|
|
|
|
|
submit: function(passenger, train, studentTicket) {
|
|
|
|
|
var pas1 = [];
|
|
|
|
|
var pas2 = [];
|
|
|
|
|
var purposeCode = studentTicket ? "0X00" : "ADULT";
|
|
|
|
|
passenger.forEach(function(e) {
|
|
|
|
|
pas1.push(
|
|
|
|
|
e.seat + "," + "1" + "," +
|
|
|
|
|
e.passenger_type + "," +
|
|
|
|
|
e.passenger_name + "," +
|
|
|
|
|
e.passenger_id_type_code + "," +
|
|
|
|
|
e.passenger_id_no + "," + e.mobile_no + "," +
|
|
|
|
|
(train.resign ? "Y" : "N"));
|
2014-09-02 22:52:30 +08:00
|
|
|
|
|
2014-09-01 13:50:43 +08:00
|
|
|
|
if (e.passenger_type === "2") {
|
|
|
|
|
pas2.push(" ");
|
2014-09-02 22:52:30 +08:00
|
|
|
|
} else {
|
|
|
|
|
pas2.push(e.passenger_name + "," + e.passenger_id_type_code + "," + e.passenger_id_no + "," + e.passenger_type);
|
|
|
|
|
};
|
2014-09-01 13:50:43 +08:00
|
|
|
|
});
|
|
|
|
|
pas1 = pas1.join("_");
|
|
|
|
|
pas2 = pas2.join("_") + "_";
|
|
|
|
|
OrderSubmit.submitData = {
|
|
|
|
|
"secretStr": train['secureStr'],
|
|
|
|
|
"train_date": train['date'],
|
|
|
|
|
"train_date_full": (new Date(train['date'])).toString(),
|
|
|
|
|
"train_no": train['id'],
|
|
|
|
|
"tour_flag": (train['resign'] ? "gc" : "dc"),
|
|
|
|
|
"purpose_codes": purposeCode,
|
|
|
|
|
"query_from_station_name": train['from']['name'],
|
|
|
|
|
"fromStationTelecode": train['from']['code'],
|
|
|
|
|
"query_to_station_name": train['to']['name'],
|
|
|
|
|
"toStationTelecode": train['to']['code'],
|
|
|
|
|
"stationTrainCode": train['code'],
|
|
|
|
|
"seatType": passenger[0]['seat'],
|
|
|
|
|
"cancel_flag": 2,
|
|
|
|
|
"bed_level_order_num": "000000000000000000000000000000",
|
|
|
|
|
"_json_att": '',
|
|
|
|
|
"passengerTicketStr": pas1,
|
|
|
|
|
"oldPassengerStr": pas2
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
OrderSubmit.loading = Public.showLoading('正在提交订单');
|
|
|
|
|
|
|
|
|
|
var data = {
|
|
|
|
|
"leftTicketDTO.train_date": OrderSubmit.curData['form_train_date'],
|
|
|
|
|
"leftTicketDTO.from_station": OrderSubmit.curData['from']['code'],
|
|
|
|
|
"leftTicketDTO.to_station": OrderSubmit.curData['to']['code'],
|
|
|
|
|
"purpose_codes": OrderSubmit.submitData['purpose_codes']
|
|
|
|
|
};
|
|
|
|
|
cn12306.queryTicket(data,function(json) {
|
|
|
|
|
if (json["status"] == true && json["httpstatus"] == 200) {
|
|
|
|
|
if (json['data'].length > 0) {
|
|
|
|
|
for (var i = 0; i < json['data'].length; i++) {
|
|
|
|
|
if (json['data'][i]['queryLeftNewDTO']['station_train_code'] == OrderSubmit.curData['code']) {
|
|
|
|
|
OrderSubmit.curData['secureStr'] = json['data'][i]['secretStr'];
|
|
|
|
|
OrderSubmit.submitData['secretStr'] = json['data'][i]['secretStr'];
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
OrderSubmit.autoSubmitOrderRequest();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
},function(xhr, type) {
|
|
|
|
|
OrderSubmit.autoSubmitOrderRequest();
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
autoSubmitOrderRequest: function() {
|
|
|
|
|
var data = "secretStr" + "=" + OrderSubmit.submitData['secretStr'] +
|
|
|
|
|
"&train_date=" + OrderSubmit.submitData['train_date'] +
|
|
|
|
|
"&tour_flag" + "=" + OrderSubmit.submitData['tour_flag'] +
|
|
|
|
|
"&purpose_codes" + "=" + OrderSubmit.submitData['purpose_codes'] +
|
|
|
|
|
"&query_from_station_name" + "=" + OrderSubmit.submitData['query_from_station_name'] +
|
|
|
|
|
"&query_to_station_name" + "=" + OrderSubmit.submitData['query_to_station_name'] +
|
|
|
|
|
"&cancel_flag=" + OrderSubmit.submitData['cancel_flag'] +
|
|
|
|
|
"&bed_level_order_num=" + OrderSubmit.submitData['bed_level_order_num'] +
|
|
|
|
|
"&passengerTicketStr=" + OrderSubmit.submitData['passengerTicketStr'] +
|
|
|
|
|
"&oldPassengerStr=" + OrderSubmit.submitData['oldPassengerStr'];
|
|
|
|
|
|
|
|
|
|
// leftTicket/submitOrderRequest
|
|
|
|
|
// secretStr MjAxNC0wOS0xMSMwMCNLNzA5MiMwMDowNyMwNzoyNSMwNTAwMEs3MDkyMjAjSEJCI0JKQiMwNzozMiPlk4jlsJTmu6gj5ruo5rGfIzA3IzA4IzEwMDA4MDMwNjA0MDA4NDAwMDMzMTAwMDgwMDAxODMwMDU5MDAyMTEjQjIjMTQwOTA0MzI5ODcyMyMzODQxNDE3MTQxNkJENkZGMUQ1REZDOUEyRDZEQUYxNDFBMjBFMDQ3NEJGRDU4QkRGQjcyODEzOQ==
|
|
|
|
|
// train_date 2014-09-10
|
|
|
|
|
// back_train_date 2014-08-26
|
|
|
|
|
// tour_flag dc
|
|
|
|
|
// purpose_codes ADULT
|
|
|
|
|
// query_from_station_name 哈尔滨
|
|
|
|
|
// query_to_station_name 滨江
|
|
|
|
|
// undefined
|
|
|
|
|
bootStrap.post("confirmPassenger/autoSubmitOrderRequest", "json", data, "leftTicket/init").done(function(json) {
|
|
|
|
|
if (!json.status || !json.data) {
|
|
|
|
|
Public.hideLoading(OrderSubmit.loading);
|
|
|
|
|
if (json['messages']) {
|
|
|
|
|
// Public.alert(json['messages'][0]);
|
|
|
|
|
OrderSubmit.errorCallback(json['messages'][0]);
|
|
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
// Public.alert("12306返回了未知的状态信息,请刷新重试。");
|
|
|
|
|
OrderSubmit.errorCallback("12306返回了未知的状态信息,请刷新重试。");
|
|
|
|
|
}
|
|
|
|
|
} else if (json.data.isRelogin) {
|
|
|
|
|
// Public.hideLoading(OrderSubmit.loading);
|
|
|
|
|
// Public.alert("请重新登录");
|
|
|
|
|
OrderSubmit.errorCallback("请重新登录");
|
|
|
|
|
} else if (json.data.errMsg) {
|
|
|
|
|
// Public.hideLoading(OrderSubmit.loading);
|
|
|
|
|
// Public.alert("无法提交订单:" + json.data.errMsg);
|
|
|
|
|
OrderSubmit.errorCallback("无法提交订单:" + json.data.errMsg);
|
|
|
|
|
} else {
|
|
|
|
|
var arr = json.data.result.split('#');
|
|
|
|
|
OrderSubmit.submitData["key_check_isChange"] = arr[1];
|
|
|
|
|
OrderSubmit.submitData["leftTicketStr"] = arr[2];
|
|
|
|
|
OrderSubmit.submitData["train_location"] = arr[0];
|
|
|
|
|
OrderSubmit.submitData["async"] = arr[3];
|
|
|
|
|
OrderSubmit.submitData["train_no"] = OrderSubmit.submitData['train_no'];
|
|
|
|
|
|
|
|
|
|
OrderSubmit.checkQueueInfo();
|
|
|
|
|
}
|
|
|
|
|
}).fail(function() {
|
|
|
|
|
// Public.hideLoading(OrderSubmit.loading);
|
|
|
|
|
// Public.alert("12306不给力唷,请尽快重试...");
|
|
|
|
|
OrderSubmit.errorCallback("12306不给力唷,请尽快重试...");
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
checkQueueInfo: function() {
|
|
|
|
|
var submitData = {
|
|
|
|
|
"train_date": OrderSubmit.submitData['train_date_full'].toString(),
|
|
|
|
|
"train_no": OrderSubmit.submitData['train_no'],
|
|
|
|
|
"stationTrainCode": OrderSubmit.submitData['stationTrainCode'],
|
|
|
|
|
"seatType": OrderSubmit.submitData['seatType'],
|
|
|
|
|
"fromStationTelecode": OrderSubmit.submitData['fromStationTelecode'],
|
|
|
|
|
"toStationTelecode": OrderSubmit.submitData['toStationTelecode'],
|
|
|
|
|
"leftTicket": OrderSubmit.submitData["leftTicketStr"],
|
|
|
|
|
"purpose_codes": OrderSubmit.submitData["purpose_codes"],
|
|
|
|
|
"_json_att": OrderSubmit.submitData["_json_att"]
|
|
|
|
|
}
|
|
|
|
|
bootStrap.post('confirmPassenger/getQueueCountAsync', null, submitData, "leftTicket/init").done(function(json) {
|
|
|
|
|
if (!json || !json.status || !json.data) {
|
|
|
|
|
// Public.hideLoading(OrderSubmit.loading);
|
|
|
|
|
// Public.alert(json['messages'][0] || "未知错误");
|
|
|
|
|
OrderSubmit.errorCallback(json['messages'][0] || "未知错误");
|
|
|
|
|
} else if (json.data.isRelogin) {
|
|
|
|
|
// Public.hideLoading(OrderSubmit.loading);
|
|
|
|
|
// Public.alert("登录状态异常,请重新登录。");
|
|
|
|
|
OrderSubmit.errorCallback("登录状态异常,请重新登录。");
|
|
|
|
|
} else if (json.data.op_2 === "true") {
|
|
|
|
|
// Public.hideLoading(OrderSubmit.loading);
|
|
|
|
|
// Public.alert("排队人数过多,不允许提交订单。排队人数=" + json.data.countT);
|
|
|
|
|
OrderSubmit.errorCallback("排队人数过多,不允许提交订单。排队人数=" + json.data.countT);
|
|
|
|
|
} else {
|
|
|
|
|
Public.hideLoading(OrderSubmit.loading);
|
|
|
|
|
cn12306.recode();
|
|
|
|
|
$('#code_layer').show();
|
|
|
|
|
}
|
|
|
|
|
}).fail(function() {
|
|
|
|
|
Public.hideLoading(OrderSubmit.loading);
|
|
|
|
|
Public.alert({
|
|
|
|
|
msg: "12306不给力啊,唉。出现网络错误了,请重试.."
|
|
|
|
|
});
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
},
|
|
|
|
|
submitGo: function() {
|
2014-09-04 17:18:45 +08:00
|
|
|
|
Public.showLoading('正在提交');
|
2014-09-01 13:50:43 +08:00
|
|
|
|
var submitData = {
|
|
|
|
|
'passengerTicketStr': OrderSubmit.submitData['passengerTicketStr'],
|
|
|
|
|
'oldPassengerStr': OrderSubmit.submitData['oldPassengerStr'],
|
2014-09-02 22:52:30 +08:00
|
|
|
|
'randCode': $('#randcode').val(),
|
2014-09-01 13:50:43 +08:00
|
|
|
|
'purpose_codes': OrderSubmit.submitData['purpose_codes'],
|
|
|
|
|
'key_check_isChange': OrderSubmit.submitData['key_check_isChange'],
|
|
|
|
|
'leftTicketStr': OrderSubmit.submitData['leftTicketStr'],
|
|
|
|
|
'train_location': OrderSubmit.submitData['train_location'],
|
2014-09-02 22:52:30 +08:00
|
|
|
|
'_json_att': OrderSubmit.submitData['_json_att']
|
2014-09-01 13:50:43 +08:00
|
|
|
|
}
|
|
|
|
|
bootStrap.post('confirmPassenger/confirmSingleForQueueAsys', null, submitData, "leftTicket/init").done(function(json) {
|
2014-09-04 17:18:45 +08:00
|
|
|
|
Public.hideLoading();
|
2014-09-01 13:50:43 +08:00
|
|
|
|
if (!json || !json['status'] || !json['data']) {
|
|
|
|
|
Public.alert(json['messages'][0] || "未知错误");
|
|
|
|
|
} else if (json['data']['isRelogin']) {
|
|
|
|
|
Public.alert("登录状态异常,请重新登录。");
|
2014-09-03 14:49:31 +08:00
|
|
|
|
}
|
|
|
|
|
// else if (json['data']['op_2'] === "true") {
|
|
|
|
|
// Public.alert("排队人数过多,不允许提交订单。排队人数=" + json['data']['countT']);
|
2014-09-03 21:36:55 +08:00
|
|
|
|
// }
|
2014-09-03 14:49:31 +08:00
|
|
|
|
else if (!!json['data'] && !json['data']['submitStatus']) {
|
2014-09-01 13:50:43 +08:00
|
|
|
|
Public.alert(json['data']['errMsg'] || "未知错误");
|
|
|
|
|
} else {
|
|
|
|
|
$('#code_layer').hide();
|
2014-09-04 17:18:45 +08:00
|
|
|
|
|
|
|
|
|
Public.showLoading('订票成功!正在跳转...');
|
|
|
|
|
setTimeout(function(){
|
|
|
|
|
Public.hideLoading();
|
|
|
|
|
window.location.href = 'no_complete_order.html';
|
|
|
|
|
},1500);
|
|
|
|
|
// Public.alert("订票成功", function() {
|
|
|
|
|
// window.location.href = 'no_complete_order.html';
|
|
|
|
|
// });
|
2014-09-01 13:50:43 +08:00
|
|
|
|
}
|
|
|
|
|
}).fail(function() {
|
|
|
|
|
Public.hideLoading(OrderSubmit.loading);
|
|
|
|
|
Public.alert("12306不给力啊,唉。出现网络错误了,请重试..");
|
|
|
|
|
});
|
|
|
|
|
},
|
|
|
|
|
errorCallback: function(tipText) {
|
|
|
|
|
Public.hideLoading(OrderSubmit.loading);
|
|
|
|
|
if (tipText.indexOf('您还有未处理的订单') != -1) {
|
2014-09-01 18:09:58 +08:00
|
|
|
|
Public.alert('您还有未处理的订单,请您到<br/><a href="no_complete_order.html">[未完成订单]</a>进行处理!', function() {
|
2014-09-01 13:50:43 +08:00
|
|
|
|
window.location.href = 'no_complete_order.html';
|
|
|
|
|
});
|
|
|
|
|
} else {
|
|
|
|
|
Public.alert(tipText);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|