2014-06-12 21:36:05 +08:00
|
|
|
|
define(function (require, exports) {
|
|
|
|
|
|
|
|
|
|
exports.getError = function (data) {
|
|
|
|
|
/// <summary>获得指定返回数据中的错误信息</summary>
|
|
|
|
|
|
|
|
|
|
if (data.messages && data.messages instanceof Array) {
|
|
|
|
|
return { message: data.messages.join(";") };
|
|
|
|
|
}
|
|
|
|
|
if (data.data && data.data.isRelogin) {
|
|
|
|
|
return { message: "登录状态异常,请重新登录。", relogin: true };
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return { message: "未知错误信息" };
|
|
|
|
|
};
|
2014-06-20 20:55:14 +08:00
|
|
|
|
exports.formatDate = function (date, format) {
|
|
|
|
|
/// <summary>格式化指定日期</summary>
|
|
|
|
|
/// <param name="format" type="String">格式化字符串</param>
|
|
|
|
|
format = format || "yyyy-MM-dd";
|
|
|
|
|
var o = {
|
|
|
|
|
"M+": date.getMonth() + 1, //month
|
|
|
|
|
"d+": date.getDate(), //day
|
|
|
|
|
"h+": date.getHours(), //hour
|
|
|
|
|
"m+": date.getMinutes(), //minute
|
|
|
|
|
"s+": date.getSeconds(), //second
|
|
|
|
|
"q+": Math.floor((date.getMonth() + 3) / 3), //quarter
|
|
|
|
|
"S": date.getMilliseconds() //millisecond
|
|
|
|
|
};
|
2014-06-12 21:36:05 +08:00
|
|
|
|
|
2014-06-20 20:55:14 +08:00
|
|
|
|
if (/(y+)/i.test(format)) {
|
|
|
|
|
format = format.replace(RegExp.$1, (date.getFullYear() + "").substr(4 - RegExp.$1.length));
|
|
|
|
|
}
|
2014-06-12 21:36:05 +08:00
|
|
|
|
|
2014-06-20 20:55:14 +08:00
|
|
|
|
for (var k in o) {
|
|
|
|
|
if (new RegExp("(" + k + ")").test(format)) {
|
|
|
|
|
format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] : ("00" + o[k]).substr(("" + o[k]).length));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return format;
|
|
|
|
|
};
|
2014-06-26 22:24:54 +08:00
|
|
|
|
|
|
|
|
|
exports.canPassageAddToOrder = function (p) {
|
|
|
|
|
if (p.passenger_id_type_code === "C" || p.passenger_id_type_code === "G" || p.passenger_id_type_code === "B")
|
|
|
|
|
return true;
|
|
|
|
|
|
|
|
|
|
if (p.passenger_id_type_code === "2")
|
|
|
|
|
return false;
|
|
|
|
|
|
|
|
|
|
return p.total_times === "93" || p.total_times === "95" || p.total_times === "97" || p.total_times === "99";
|
|
|
|
|
};
|
|
|
|
|
exports.getAvailableTicketType = function (p, stu) {
|
|
|
|
|
var a = [];
|
|
|
|
|
var pt = p.passenger_type;
|
|
|
|
|
|
|
|
|
|
if (pt === "3" && stu) {
|
|
|
|
|
a.push({ id: 3, name: "学生票" });
|
|
|
|
|
} else {
|
|
|
|
|
a.push({ id: 1, name: "成人票" });
|
|
|
|
|
a.push({ id: 2, name: "儿童票" });
|
|
|
|
|
}
|
|
|
|
|
if (pt === "4") {
|
|
|
|
|
a.push({ id: 4, name: "残军票" });
|
|
|
|
|
}
|
|
|
|
|
return a;
|
|
|
|
|
};
|
2014-07-01 20:07:44 +08:00
|
|
|
|
exports.processPassenger = function (list) {
|
|
|
|
|
list.forEach(function (e) {
|
2014-06-26 22:24:54 +08:00
|
|
|
|
e.key = e.passenger_type + "$" + e.passenger_name + "$" + e.passenger_id_type_code + "$" + e.passenger_id_no;
|
|
|
|
|
});
|
|
|
|
|
};
|
2014-07-01 20:07:44 +08:00
|
|
|
|
exports.getSeats = function (trainSeats) {
|
|
|
|
|
var seats = _.clone(trainSeats);
|
|
|
|
|
//排序
|
|
|
|
|
seats.sort(function (x, y) {
|
|
|
|
|
return x.price - y.price;
|
|
|
|
|
});
|
|
|
|
|
//如果有硬座/二等座和无座,则隐藏无座
|
|
|
|
|
var removeNonSeat = _.findWhere(seats, { code: "1" }) || _.findWhere(seats, { code: "O" }) || false;
|
|
|
|
|
if (removeNonSeat) {
|
|
|
|
|
for (var i = 0; i < seats.length; i++) {
|
|
|
|
|
if (seats[i].code === "0") {
|
|
|
|
|
seats.splice(i, 1);
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return seats;
|
|
|
|
|
};
|
2014-07-04 20:57:57 +08:00
|
|
|
|
exports.toDate = function (date) {
|
|
|
|
|
return date instanceof Date ? date : new Date(Date.parse(date));
|
|
|
|
|
};
|
|
|
|
|
exports.addDays = function (date, offset) {
|
|
|
|
|
return new Date(date.getFullYear(), date.getMonth(), date.getDate() + offset);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
exports.formatSellDate = function (date) {
|
|
|
|
|
date = exports.toDate(date);
|
|
|
|
|
var today = exports.addDays(new Date(), 0);
|
|
|
|
|
|
|
|
|
|
var offset = Math.round((date - today) / 1000 / 60);
|
|
|
|
|
var hour = Math.round(offset / 60);
|
|
|
|
|
var minute = offset % 60;
|
|
|
|
|
|
|
|
|
|
if (hour < 24) return "今天" + hour + "点" + (minute ? minute + "分" : "");
|
|
|
|
|
else if (hour < 72) {
|
|
|
|
|
return ["明天", '后天'] + (hour % 24) + "点" + (minute ? minute + "分" : "");
|
|
|
|
|
} else {
|
|
|
|
|
return exports.formatDate(date, "MM月dd日 hh:mm");
|
|
|
|
|
}
|
|
|
|
|
};
|
2014-06-12 21:36:05 +08:00
|
|
|
|
});
|