2014-06-26 22:24:54 +08:00
|
|
|
|
define(function (require, exports, module) {
|
|
|
|
|
var ps = require("./ui-passenger-selection.js");
|
|
|
|
|
var so = require("./ui-submit-order.js");
|
|
|
|
|
var param = require("../data.js");
|
|
|
|
|
var ui_login = require("./ui-login.js");
|
|
|
|
|
var sessMgr = require("../account/sessionMgr.js");
|
2014-06-27 22:25:42 +08:00
|
|
|
|
var mp = require("./widget_message_popup.js");
|
|
|
|
|
var op = require("../otn/orderprocess.js");
|
|
|
|
|
|
|
|
|
|
//标记位
|
2014-06-26 22:24:54 +08:00
|
|
|
|
|
|
|
|
|
//提交参数
|
2014-06-27 22:25:42 +08:00
|
|
|
|
var pTrain, pSeat, pStu, pPassengers, pProfile;
|
2014-06-26 22:24:54 +08:00
|
|
|
|
|
|
|
|
|
exports.init = function () {
|
|
|
|
|
ps.init();
|
|
|
|
|
so.init();
|
|
|
|
|
|
|
|
|
|
ps.on("passengerSelected", function () {
|
|
|
|
|
pPassengers = ps.selectedPassenger;
|
2014-07-01 20:07:44 +08:00
|
|
|
|
exports.prepareOrder().done(function () { exports.showConfirmOrderUi(); });
|
|
|
|
|
});
|
2014-07-14 17:58:46 +08:00
|
|
|
|
so.on("requireResubmitOrder", function () {
|
|
|
|
|
exports.prepareOrder().done(function () { exports.showConfirmOrderUi(); });
|
2014-06-26 22:24:54 +08:00
|
|
|
|
});
|
|
|
|
|
};
|
|
|
|
|
|
2014-06-27 22:25:42 +08:00
|
|
|
|
exports.start = function (train, seat, profile, passengers) {
|
2014-06-26 22:24:54 +08:00
|
|
|
|
if (train) {
|
|
|
|
|
pTrain = train;
|
|
|
|
|
pSeat = seat;
|
2014-06-27 22:25:42 +08:00
|
|
|
|
pProfile = profile;
|
2014-07-02 18:43:28 +08:00
|
|
|
|
pStu = profile.studentTicket;
|
2014-06-26 22:24:54 +08:00
|
|
|
|
pPassengers = passengers;
|
|
|
|
|
}
|
|
|
|
|
if (!pTrain)
|
|
|
|
|
return;
|
|
|
|
|
|
|
|
|
|
if (!sessMgr.isLogined) {
|
|
|
|
|
ui_login.once("loginSuccess", exports.start);
|
|
|
|
|
ui_login.showLoginDialog();
|
|
|
|
|
return;
|
|
|
|
|
}
|
2014-07-01 20:07:44 +08:00
|
|
|
|
if (!pPassengers || !pPassengers.length)
|
|
|
|
|
exports.showPassengerSelectUi();
|
|
|
|
|
else {
|
|
|
|
|
exports.prepareOrder().done(function () { exports.showConfirmOrderUi(); });
|
|
|
|
|
}
|
2014-06-26 22:24:54 +08:00
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ui_login.on("closeLogin", function () {
|
|
|
|
|
ui_login.off("loginSuccess", exports.start);
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
exports.showPassengerSelectUi = function () {
|
|
|
|
|
ps.show(pPassengers, pTrain, pSeat, pStu);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
exports.showConfirmOrderUi = function () {
|
2014-07-01 20:07:44 +08:00
|
|
|
|
so.showOrderUi(pTrain, pProfile, pPassengers);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
exports.prepareOrder = function () {
|
|
|
|
|
var tip = new mp.MessagePopup("loading", "正在准备提交订单,请稍等...");
|
|
|
|
|
tip.show();
|
2014-07-14 17:58:46 +08:00
|
|
|
|
|
|
|
|
|
var def = pProfile.resign ? op.prepareOrder(pTrain, pProfile) : op.fastPrepareOrder(pTrain, pProfile, pPassengers);
|
2014-07-01 20:07:44 +08:00
|
|
|
|
|
|
|
|
|
def.done(function () {
|
|
|
|
|
tip.close();
|
|
|
|
|
}).fail(function (data) {
|
|
|
|
|
tip.setState("error", data.msg);
|
|
|
|
|
tip.delayClose();
|
|
|
|
|
so.hide();
|
|
|
|
|
});
|
|
|
|
|
return def;
|
2014-06-26 22:24:54 +08:00
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
exports.showSuccessUi = function () {
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
exports.showFailedUi = function (msg) {
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
});
|