航班备降撤销备降消息处理修改

This commit is contained in:
zhouyuejun
2019-01-25 14:36:11 +08:00
parent df2cfb40a8
commit 85b2f676c9
3 changed files with 101 additions and 80 deletions
+7 -3
View File
@@ -970,19 +970,23 @@ export class MainComponent implements OnInit {
getAlternateNotes(flight) {
if (this.orderHandle.isArriFlight(flight)) {
if (flight['preFlight']['FDIV']) {
let preFdiv = flight['preFlight']['FDIV'];
if (preFdiv && preFdiv.DDES) {
return true;
} else {
return false;
}
} else if (this.orderHandle.isDeptFlight(flight)) {
if (flight['reaFlight']['FDIV']) {
let reaFdiv = flight['reaFlight']['FDIV'];
if (reaFdiv && reaFdiv.DDES) {
return true;
} else {
return false;
}
} else {
if ((flight['preFlight']['FDIV']) || (flight['reaFlight']['FDIV'])) {
let preFdiv = flight['preFlight']['FDIV'];
let reaFdiv = flight['reaFlight']['FDIV'];
if ((preFdiv && preFdiv.DDES) || (reaFdiv && reaFdiv.DDES)) {
return true;
} else {
return false;
@@ -70,10 +70,13 @@ export class RelatedTabComponent implements OnInit {
this.precancle = new Date(dateFormatter(this.precancle)).getTime();
}
if (fdivIndex > -1) {
this.prefdiv = this.lines.preFlight['ABN'][fdivIndex].BODY;
let airportIndex = this.allAirports.findIndex(val => val.airportCodeIata === this.prefdiv.DDES);
if (airportIndex > -1) {
this.prefdiv.DDES = this.allAirports[airportIndex].briefNameChn
let fdiv = this.lines.preFlight['ABN'][fdivIndex].BODY;
if (fdiv.DDES) {
this.prefdiv = fdiv;
let airportIndex = this.allAirports.findIndex(val => val.airportCodeIata === this.prefdiv.DDES);
if (airportIndex > -1) {
this.prefdiv.DDES = this.allAirports[airportIndex].briefNameChn
}
}
}
if (fretIndex > -1) {
@@ -100,11 +103,15 @@ export class RelatedTabComponent implements OnInit {
this.reacancle = new Date(dateFormatter(this.reacancle)).getTime();
}
if (fdivIndex > -1) {
this.reafdiv = this.lines.reaFlight['ABN'][fdivIndex].BODY;
let airportIndex = this.allAirports.findIndex(val => val.airportCodeIata === this.reafdiv.DDES);
if (airportIndex > -1) {
this.reafdiv.DDES = this.allAirports[airportIndex].briefNameChn
let fdiv = this.lines.reaFlight['ABN'][fdivIndex].BODY;
if (fdiv.DDES) {
this.reafdiv = fdiv;
let airportIndex = this.allAirports.findIndex(val => val.airportCodeIata === this.reafdiv.DDES);
if (airportIndex > -1) {
this.reafdiv.DDES = this.allAirports[airportIndex].briefNameChn
}
}
}
if (fretIndex > -1) {
let fret = this.lines.reaFlight['ABN'][fretIndex].BODY;
+79 -69
View File
@@ -1,117 +1,127 @@
import dateFormatter from './date-formatter';
import dateFormatter from "./date-formatter";
export class AlertMessageHandle {
public flopCncl(message, airports) {
if (message.FLOP.CNCL) {
return message.FLOP.FFID + '航班取消';
return message.FLOP.FFID + " 航班取消";
} else {
return message.FLOP.FFID + '航班恢复';
return message.FLOP.FFID + " 航班恢复";
}
}
public flopFret(message, airports) {
let returnData = message.FLOP.FRET
if (returnData && returnData.REID && returnData.VALUE) {
return message.FLOP.FFID + "航班从" + ((returnData.REID === "A") ? "空中返回" : "地面返回") + " \n\n返回原因:" + returnData.VALUE;
return message.FLOP.FFID + " 航班从" + ((returnData.REID === "A") ? "空中返回" : "地面返回") + "\n\n返回原因:" + returnData.VALUE;
} else {
return message.FLOP.FFID + "航班返航撤销";
return message.FLOP.FFID + " 航班返航撤销";
}
}
public flopFdiv(message, airports) {
let airportName = '';
let index = airports.findIndex(airport => airport.airportCodeIata === message.FLOP.FDIV.DDES);
if (index > -1) {
airportName = airports[index].airportNameChn;
}
if (message.FLOP.FDIV.DDIR === 'FROM') {
return message.FLOP.FFID + '航班备降自' + airportName + ',备降原因:' + (message.FLOP.FDIV.content || message.FLOP.FDIV.VALUE);
} else if (message.FLOP.FDIV.DDIR === 'TO') {
return message.FLOP.FFID + '航班备降到' + airportName + ',备降原因:' + (message.FLOP.FDIV.content || message.FLOP.FDIV.VALUE);
} else {
return message.FLOP.FFID + '航班备降,备降原因:' + (message.FLOP.FDIV.content || message.FLOP.FDIV.VALUE);
let optdiversiondata = message.FLOP.FDIV;
if (optdiversiondata && optdiversiondata.DDES) {
let reason = optdiversiondata.VALUE,
desc = optdiversiondata.DDES,
fdivType = optdiversiondata.DDIR,
airportName = "";
let index = airports.findIndex(airport => airport.airportCodeIata === desc.toUpperCase());
if (index > -1) {
airportName = airports[index].airportNameChn;
}
return message.FLOP.FFID + ((fdivType === "TO") ? " 备降到:" : " 备降自:") + airportName + "\n\n备降原因:" + reason;
}else{
return message.FLOP.FFID + " 航班备降撤销"
}
// if (message.FLOP.FDIV.DDIR === "FROM") {
// return message.FLOP.FFID + "航班备降自" + airportName + ",备降原因:" + (message.FLOP.FDIV.content || message.FLOP.FDIV.VALUE);
// } else if (message.FLOP.FDIV.DDIR === "TO") {
// return message.FLOP.FFID + "航班备降到" + airportName + ",备降原因:" + (message.FLOP.FDIV.content || message.FLOP.FDIV.VALUE);
// } else {
// return message.FLOP.FFID + "航班备降,备降原因:" + (message.FLOP.FDIV.content || message.FLOP.FDIV.VALUE);
// }
}
public flopFdel(message, airports) {
return message.FLOP.FFID + '航班被删除了'
return message.FLOP.FFID + "航班被删除了"
}
public flopDely(message, airports) {
let delyArray = message.FLOP.DELY;
let delyMessage = delyArray[delyArray.length - 1];
return message.FLOP.FFID + '航班延误' + (parseInt(delyMessage.DURA.substr(0, 2)) * 60 + parseInt(delyMessage.DURA.substr(2, 3))) + '分钟;延误码:' + delyMessage.CODE + '; 延误信息:' + (delyMessage.content || delyMessage.VALUE)
return message.FLOP.FFID + "航班延误" + (parseInt(delyMessage.DURA.substr(0, 2)) * 60 + parseInt(delyMessage.DURA.substr(2, 3))) + "分钟;延误码:" + delyMessage.CODE + "; 延误信息:" + (delyMessage.content || delyMessage.VALUE)
}
public flopActt(message, airports) {
return message.FLOP.FFID + '航班实际时间:' + dateFormatter(message.FLOP.ACTT);
return message.FLOP.FFID + "航班实际时间:" + dateFormatter(message.FLOP.ACTT);
}
public flopGtdt(message, airports) {
if (Array.isArray(message.FLOP['GTDT']) && message.FLOP['GTDT'].length > 0) {
if (Array.isArray(message.FLOP["GTDT"]) && message.FLOP["GTDT"].length > 0) {
let gate = [];
for (let i = 0; i < message.FLOP['GTDT'].length; i++) {
gate.push(message.FLOP['GTDT'][i]['GATE']);
for (let i = 0; i < message.FLOP["GTDT"].length; i++) {
gate.push(message.FLOP["GTDT"][i]["GATE"]);
}
let set = new Set(gate);
return message.FLOP.FFID + '登机门分配为:' + Array.from(set).join(',');
} else if (Object.prototype.toString.call(message.FLOP['GTDT']) === '[object Object]') {
return message.FLOP.FFID + '登机门分配为:' + message.FLOP['GTDT']['GATE'];
return message.FLOP.FFID + "登机门分配为:" + Array.from(set).join(",");
} else if (Object.prototype.toString.call(message.FLOP["GTDT"]) === "[object Object]") {
return message.FLOP.FFID + "登机门分配为:" + message.FLOP["GTDT"]["GATE"];
} else {
return message.FLOP.FFID + '登机门分配为:';
return message.FLOP.FFID + "登机门分配为:";
}
}
public flopPsdt(message, airports) {
if (Array.isArray(message.FLOP['PSDT']) && message.FLOP['PSDT'].length > 0) {
if (Array.isArray(message.FLOP["PSDT"]) && message.FLOP["PSDT"].length > 0) {
let psst = [];
for (let i = 0; i < message.FLOP['PSDT'].length; i++) {
psst.push(message.FLOP['PSDT'][i]['PSST']);
for (let i = 0; i < message.FLOP["PSDT"].length; i++) {
psst.push(message.FLOP["PSDT"][i]["PSST"]);
}
let set = new Set(psst);
return message.FLOP.FFID + '计划机位变更为:' + Array.from(set).join(',');
} else if (Object.prototype.toString.call(message.FLOP['PSDT']) === '[object Object]') {
return message.FLOP.FFID + '计划机位变更为:' + message.FLOP['PSDT']['PSST'];
return message.FLOP.FFID + "计划机位变更为:" + Array.from(set).join(",");
} else if (Object.prototype.toString.call(message.FLOP["PSDT"]) === "[object Object]") {
return message.FLOP.FFID + "计划机位变更为:" + message.FLOP["PSDT"]["PSST"];
} else {
return message.FLOP.FFID + '计划机位变更为:';
return message.FLOP.FFID + "计划机位变更为:";
}
}
public flopEstt(message, airports) {
return message.FLOP.FFID + '预计时间变更为' + dateFormatter(message.FLOP.ESTT);
return message.FLOP.FFID + "预计时间变更为" + dateFormatter(message.FLOP.ESTT);
}
public flopPadt(message, airports) {
return message.FLOP.FFID + '航班前站实际起飞时间:' + dateFormatter(message.FLOP.PADT);
return message.FLOP.FFID + "航班前站实际起飞时间:" + dateFormatter(message.FLOP.PADT);
}
public flopCkdt(message, airports) {
if (Array.isArray(message.FLOP['CKDT']) && message.FLOP['CKDT'].length > 0) {
if (Array.isArray(message.FLOP["CKDT"]) && message.FLOP["CKDT"].length > 0) {
let chkc = [];
for (let i = 0; i < message.FLOP['CKDT'].length; i++) {
chkc.push(message.FLOP['CKDT'][i]['CHKC']);
for (let i = 0; i < message.FLOP["CKDT"].length; i++) {
chkc.push(message.FLOP["CKDT"][i]["CHKC"]);
}
let set = new Set(chkc);
return message.FLOP.FFID + '航班值机柜台分配为:' + Array.from(set).join(',');
} else if (Object.prototype.toString.call(message.FLOP['CKDT']) === '[object Object]') {
return message.FLOP.FFID + '航班值机柜台分配为:' + message.FLOP['CKDT']['CHKC'];
return message.FLOP.FFID + "航班值机柜台分配为:" + Array.from(set).join(",");
} else if (Object.prototype.toString.call(message.FLOP["CKDT"]) === "[object Object]") {
return message.FLOP.FFID + "航班值机柜台分配为:" + message.FLOP["CKDT"]["CHKC"];
} else {
return message.FLOP.FFID + '航班值机柜台分配为:';
return message.FLOP.FFID + "航班值机柜台分配为:";
}
}
public flopBotm(message, airports) {
return message.FLOP.FFID + '登机开始时间:' + dateFormatter(message.FLOP.BOTM);
return message.FLOP.FFID + "登机开始时间:" + dateFormatter(message.FLOP.BOTM);
}
public flopCldt(message, airports) {
if (Array.isArray(message.FLOP['CLDT']) && message.FLOP['CLDT'].length > 0) {
if (Array.isArray(message.FLOP["CLDT"]) && message.FLOP["CLDT"].length > 0) {
let belt = [];
for (let i = 0; i < message.FLOP['CLDT'].length; i++) {
belt.push(message.FLOP['CLDT'][i]['BELT']);
for (let i = 0; i < message.FLOP["CLDT"].length; i++) {
belt.push(message.FLOP["CLDT"][i]["BELT"]);
}
let set = new Set(belt);
return message.FLOP.FFID + '行李转盘分配为:' + Array.from(set).join(',');
} else if (Object.prototype.toString.call(message.FLOP['CLDT']) === '[object Object]') {
return message.FLOP.FFID + '行李转盘分配为:' + message.FLOP['CLDT']['BELT'];
return message.FLOP.FFID + "行李转盘分配为:" + Array.from(set).join(",");
} else if (Object.prototype.toString.call(message.FLOP["CLDT"]) === "[object Object]") {
return message.FLOP.FFID + "行李转盘分配为:" + message.FLOP["CLDT"]["BELT"];
} else {
return message.FLOP.FFID + '行李转盘分配为:';
return message.FLOP.FFID + "行李转盘分配为:";
}
}
public flopRout(message, airports, citys) {
let mvin = message.FLOP.FFID.split('-')[2];
let mvin = message.FLOP.FFID.split("-")[2];
let rout = [];
if (Array.isArray(message.FLOP['ROUT']) && message.FLOP['ROUT'].length > 0) {
for (let i = 0; i < message.FLOP['ROUT'].length; i++) {
let airportIndex = airports.findIndex(val => val.airportCodeIata === message.FLOP['ROUT'][i]['APCD']);
if (Array.isArray(message.FLOP["ROUT"]) && message.FLOP["ROUT"].length > 0) {
for (let i = 0; i < message.FLOP["ROUT"].length; i++) {
let airportIndex = airports.findIndex(val => val.airportCodeIata === message.FLOP["ROUT"][i]["APCD"]);
if (airportIndex > -1) {
if (airports[airportIndex].briefNameChn) {
rout.push(airports[airportIndex].briefNameChn);
@@ -120,8 +130,8 @@ export class AlertMessageHandle {
}
}
}
} else if (Object.prototype.toString.call(message.FLOP['ROUT']) === '[object Object]') {
let airportIndex = airports.findIndex(val => val.airportCodeIata === message.FLOP['ROUT']['APCD']);
} else if (Object.prototype.toString.call(message.FLOP["ROUT"]) === "[object Object]") {
let airportIndex = airports.findIndex(val => val.airportCodeIata === message.FLOP["ROUT"]["APCD"]);
if (airportIndex > -1) {
if (airports[airportIndex].briefNameChn) {
rout.push(airports[airportIndex].briefNameChn);
@@ -130,35 +140,35 @@ export class AlertMessageHandle {
}
}
}
if (mvin === 'A') {
rout.push('蓉');
} else if (mvin === 'D') {
rout.unshift('蓉');
if (mvin === "A") {
rout.push("蓉");
} else if (mvin === "D") {
rout.unshift("蓉");
}
return message.FLOP.FFID + '航线更改为:' + rout.join(' - ');
return message.FLOP.FFID + "航线更改为:" + rout.join(" - ");
}
public flopVipp(message, airports, citys) {
return message.FLOP.FFID + 'VIP旅客:' + (message.FLOP.VIPP || '');
return message.FLOP.FFID + "VIP旅客:" + (message.FLOP.VIPP || "");
}
public flopHnag() {
return '航班代理事件';
return "航班代理事件";
}
public flopFlbg(message, airports, citys) {
return message.FLOP.FFID + '首末件行李到达时间消息';
return message.FLOP.FFID + "首末件行李到达时间消息";
}
public flopReno(message, airports, citys) {
return message.FLOP.FFID + '更换飞机号:' + message.FLOP.RENO;
return message.FLOP.FFID + "更换飞机号:" + message.FLOP.RENO;
}
public flopAbtm(message, airports, citys) {
return message.FLOP.FFID + '靠桥撤桥消息';
return message.FLOP.FFID + "靠桥撤桥消息";
}
public flopChot(message, airports, citys) {
return message.FLOP.FFID + '上下轮档消息';
return message.FLOP.FFID + "上下轮档消息";
}
public flopTrml(message, airports, citys) {
return message.FLOP.FFID + '航站楼:' + message.FLOP.TRML;
return message.FLOP.FFID + "航站楼:" + message.FLOP.TRML;
}
public schdDnld(message, airports, citys) {
return '收到日航班计划';
return "收到日航班计划";
}
}