Files
airport-chengdu-web/src/app/utils/transfer-render-handle.ts
T

485 lines
17 KiB
TypeScript

import { Utils } from './utils'
export class TransferRenderHandle {
private utils = new Utils();
public arsfFormatter(flight) {
if (flight['MVIN'] === 'A') {
if (Array.isArray(flight['MAFL']) && flight['MAFL'].length > 0) {
let arsf = [];
for (let i = 0; i < flight['MAFL'].length; i++) {
arsf.push(flight['MAFL'][i]['FLNO']);
}
let set = new Set(arsf);
return Array.from(set).join(',');
} else if (Object.prototype.toString.call(flight['MAFL']) === '[object Object]') {
return flight['MAFL']['FLNO'];
} else {
return '';
}
} else {
return '';
}
}
public desfFormatter(flight) {
if (flight['MVIN'] === 'D') {
if (Array.isArray(flight['MAFL']) && flight['MAFL'].length > 0) {
let desf = [];
for (let i = 0; i < flight['MAFL'].length; i++) {
desf.push(flight['MAFL'][i]['FLNO']);
}
let set = new Set(desf);
return Array.from(set).join(',');
} else if (Object.prototype.toString.call(flight['MAFL']) === '[object Object]') {
return flight['MAFL']['FLNO'];
} else {
return '';
}
} else {
return '';
}
}
public renoFormatter(flight) {
if (flight['RENO']) {
if (flight['LRENO']) {
if (flight['RENO'] == flight['LRENO']) {
return flight['RENO'];
} else {
return flight['RENO'] + '(' + flight['LRENO'] + ')';
}
} else {
return flight['RENO'];
}
} else {
if (flight['LRENO']) {
return '(' + flight['LRENO'] + ')';
} else {
return '';
}
}
}
public gctmFormatter(flight) {
function add0(m) {
return m < 10 ? '0' + m : m
}
if (flight['GTDT']) {
if (Array.isArray(flight['GTDT']) && flight['GTDT'].length > 0) {
let gtdt = flight['GTDT'];
let gctmArray = [];
gtdt.forEach(element => {
if (element['GCTM']) {
let gctmTime = new Date(this.utils.dateFormatter(element['GCTM'])).getTime();
gctmArray.push(gctmTime)
}
});
if (gctmArray.length > 0) {
let laterTime = Math.max.apply(null, gctmArray);
return add0(new Date(laterTime).getHours()) + ':' + add0(new Date(laterTime).getMinutes())
} else {
return '';
}
// return this.utils.timeFormatter(flight['GTDT'][0]['GCTM']);
} else if (Object.prototype.toString.call(flight['GTDT']) === '[object Object]') {
return this.utils.timeFormatter(flight['GTDT']['GCTM']);
} else {
return '';
}
} else {
return '';
}
}
public botmFormatter(flight) {
if (flight['BOTM']) {
return this.utils.timeFormatter(flight['BOTM']);
} else {
return '';
}
}
public abdgFormatter(flight) {
if (flight['ABDG']) {
return flight['ABDG'];
} else {
return '';
}
}
public aotm_aFormatter(flight) {
if (flight['ABTM']) {
if (Array.isArray(flight['ABTM']) && flight['ABTM'].length > 0) {
for (let i = 0; i < flight['ABTM'].length; i++) {
if (flight['ABTM'][i]['ABOP'] === 'A') {
return this.utils.timeFormatter(flight['ABTM'][i]['AOTM']);
}
}
} else if (Object.prototype.toString.call(flight['ABTM']) === '[object Object]') {
if (flight['ABTM']['ABOP'] === 'A') {
return this.utils.timeFormatter(flight['ABTM']['AOTM']);
} else {
return '';
}
} else {
return '';
}
} else {
return '';
}
}
public aotm_dFormatter(flight) {
if (flight['ABTM']) {
if (Array.isArray(flight['ABTM']) && flight['ABTM'].length > 0) {
for (let i = 0; i < flight['ABTM'].length; i++) {
if (flight['ABTM'][i]['ABOP'] === 'D') {
return this.utils.timeFormatter(flight['ABTM'][i]['AOTM']);
}
}
} else if (Object.prototype.toString.call(flight['ABTM']) === '[object Object]') {
if (flight['ABTM']['ABOP'] === 'D') {
return this.utils.timeFormatter(flight['ABTM']['AOTM']);
} else {
return '';
}
} else {
return '';
}
} else {
return '';
}
}
public beltFormatter(flight) {
if (flight['CLDT']) {
if (Array.isArray(flight['CLDT']) && flight['CLDT'].length > 0) {
let belt = [];
for (let i = 0; i < flight['CLDT'].length; i++) {
belt.push(flight['CLDT'][i]['BELT']);
}
let set = new Set(belt);
return Array.from(set).join(',');
} else if (Object.prototype.toString.call(flight['CLDT']) === '[object Object]') {
return flight['CLDT']['BELT'];
} else {
return '';
}
} else {
return '';
}
}
public chkcFormatter(flight) {
if (flight['CKDT']) {
if (Array.isArray(flight['CKDT']) && flight['CKDT'].length > 0) {
let chkc = [];
for (let i = 0; i < flight['CKDT'].length; i++) {
chkc.push(flight['CKDT'][i]['CHKC']);
}
let set = new Set(chkc);
return Array.from(set).join(',');
} else if (Object.prototype.toString.call(flight['CKDT']) === '[object Object]') {
return flight['CKDT']['CHKC'];
} else {
return '';
}
} else {
return '';
}
}
public cctmFormatter(flight) {
function add0(m) {
return m < 10 ? '0' + m : m
}
if (flight['CKDT']) {
if (Array.isArray(flight['CKDT']) && flight['CKDT'].length > 0) {
let ckdt = flight['CKDT'];
let cctmArray = [];
ckdt.forEach(element => {
if (element['CCTM']) {
let cctmTime = new Date(this.utils.dateFormatter(element['CCTM'])).getTime();
cctmArray.push(cctmTime)
}
});
if (cctmArray.length > 0) {
let laterTime = Math.max.apply(null, cctmArray);
return add0(new Date(laterTime).getHours()) + ':' + add0(new Date(laterTime).getMinutes())
} else {
return '';
}
} else if (Object.prototype.toString.call(flight['CKDT']) === '[object Object]') {
return this.utils.timeFormatter(flight['CKDT']['CCTM']);
} else {
return '';
}
} else {
return '';
}
}
public cotmFormatter(flight) {
function add0(m) {
return m < 10 ? '0' + m : m
}
if (flight['CKDT']) {
if (Array.isArray(flight['CKDT']) && flight['CKDT'].length > 0) {
let ckdt = flight['CKDT'];
let cotmArray = [];
ckdt.forEach(element => {
if (element['COTM']) {
let cctmTime = new Date(this.utils.dateFormatter(element['COTM'])).getTime();
cotmArray.push(cctmTime)
}
});
if (cotmArray.length > 0) {
let laterTime = Math.min.apply(null, cotmArray);
return add0(new Date(laterTime).getHours()) + ':' + add0(new Date(laterTime).getMinutes())
} else {
return '';
}
} else if (Object.prototype.toString.call(flight['CKDT']) === '[object Object]') {
return this.utils.timeFormatter(flight['CKDT']['CCTM']);
} else {
return '';
}
} else {
return '';
}
}
public chtmOnFormatter(flight) {
if (flight['CHOT']) {
if (Array.isArray(flight['CHOT']) && flight['CHOT'].length > 0) {
for (let i = 0; i < flight['CHOT'].length; i++) {
if (flight['CHOT'][i]['CHID'] === 'ON') {
return this.utils.timeFormatter(flight['CHOT'][i]['CHTM']);
}
}
} else if (Object.prototype.toString.call(flight['CHOT']) === '[object Object]') {
if (flight['CHOT']['CHID'] === 'ON') {
return this.utils.timeFormatter(flight['CHOT']['CHTM']);
} else {
return '';
}
} else {
return '';
}
} else {
return '';
}
}
public chtmOffFormatter(flight) {
if (flight['CHOT']) {
if (Array.isArray(flight['CHOT']) && flight['CHOT'].length > 0) {
for (let i = 0; i < flight['CHOT'].length; i++) {
if (flight['CHOT'][i]['CHID'] === 'OFF') {
return this.utils.timeFormatter(flight['CHOT'][i]['CHTM']);
}
}
} else if (Object.prototype.toString.call(flight['CHOT']) === '[object Object]') {
if (flight['CHOT']['CHID'] === 'OFF') {
return this.utils.timeFormatter(flight['CHOT']['CHTM']);
} else {
return '';
}
} else {
return '';
}
} else {
return '';
}
}
public laclFormatter(flight) {
if (flight['LACL']) {
return this.utils.timeFormatter(flight['LACL']);
} else {
return '';
}
}
public chutFormatter(flight) {
if (flight['CHDT']) {
if (Array.isArray(flight['CHDT']) && flight['CHDT'].length > 0) {
let chut = [];
for (let i = 0; i < flight['CHDT'].length; i++) {
chut.push(flight['CHDT'][i]['CHUT']);
}
let set = new Set(chut);
return Array.from(set).join(',');
} else if (Object.prototype.toString.call(flight['CHDT']) === '[object Object]') {
return flight['CHDT']['CHUT'];
} else {
return '';
}
} else {
return '';
}
}
public acttFormatter(flight) {
if (flight['ACTT']) {
return this.utils.timeFormatter(flight['ACTT']);
} else {
return '';
}
}
public psstFormatter(flight) {
if (flight['PSDT']) {
if (Array.isArray(flight['PSDT']) && flight['PSDT'].length > 0) {
let psst = [];
for (let i = 0; i < flight['PSDT'].length; i++) {
psst.push(flight['PSDT'][i]['PSST']);
}
let set = new Set(psst);
let joinedPsst = Array.from(set).join(',')
if (flight['LPSDT']) {
if (joinedPsst == flight['LPSDT']) {
return joinedPsst;
} else {
return joinedPsst + '(' + flight['LPSDT'] + ')';
}
} else {
return joinedPsst;
}
} else if (Object.prototype.toString.call(flight['PSDT']) === '[object Object]') {
if (flight['LPSDT']) {
if (flight['PSDT']['PSST'] == flight['LPSDT']) {
return flight['PSDT']['PSST'];
} else {
return flight['PSDT']['PSST'] + '(' + flight['LPSDT'] + ')';
}
} else {
return flight['PSDT']['PSST'];
}
} else {
if (flight['LPSDT']) {
return '(' + flight['LPSDT'] + ')';
} else {
return '';
}
}
} else {
if (flight['LPSDT']) {
return '(' + flight['LPSDT'] + ')';
} else {
return '';
}
}
}
public esttFormatter(flight) {
if (flight['ESTT']) {
return this.utils.timeFormatter(flight['ESTT']);
} else {
return '';
}
}
public mvinFormatter(flight) {
if (flight['MVIN']) {
if (flight['MVIN'] === 'A') {
return '到达';
} else if (flight['MVIN'] === 'D') {
return '出发';
}
} else {
return '';
}
}
public erutFormatter(flight) {
if (flight['ERUT']) {
if (Array.isArray(flight['ERUT']) && flight['ERUT'].length > 0) {
let erut = [];
for (let i = 0; i < flight['ERUT'].length; i++) {
erut.push(flight['ERUT'][i]['APCD']);
}
return erut.join(' - ');
} else if (Object.prototype.toString.call(flight['ERUT']) === '[object Object]') {
return flight['ERUT']['APCD'];
} else {
return '';
}
} else {
return '';
}
}
public flinFormatter(flight) {
const flinChn = {
'D': '国内',
'I': '国际',
'M': '混合',
'R': '地区'
}
if (flight['FLIN']) {
return flinChn[flight['FLIN']];
} else {
return '';
}
}
public sodtFormatter(flight) {
if (flight['SODT']) {
return this.utils.timeFormatter(flight['SODT']);
} else {
return '';
}
}
public gateFormatter(flight) {
if (flight['GTDT']) {
if (Array.isArray(flight['GTDT']) && flight['GTDT'].length > 0) {
let gate = [];
for (let i = 0; i < flight['GTDT'].length; i++) {
gate.push(flight['GTDT'][i]['GATE']);
}
let set = new Set(gate);
return Array.from(set).join(',');
} else if (Object.prototype.toString.call(flight['GTDT']) === '[object Object]') {
return flight['GTDT']['GATE'];
} else {
return '';
}
} else {
return '';
}
}
public padtFormatter(flight) {
if (flight['MVIN'] === 'A') {
if (flight['PADT']) {
if (Array.isArray(flight['ROUT']) && flight['ROUT'].length > 0) {
let lastRout = flight['ROUT'][flight['ROUT'].length - 1];
if (lastRout['SCDT']) {
return this.utils.timeFormatter(flight['PADT']) + '(' + this.utils.timeFormatter(lastRout['SCDT']) + ')';
} else {
return this.utils.timeFormatter(flight['PADT']);
}
} else if (Object.prototype.toString.call(flight['ROUT']) === '[object Object]') {
if (flight['ROUT']['SCDT']) {
return this.utils.timeFormatter(flight['PADT']) + '(' + this.utils.timeFormatter(flight['ROUT']['SCDT']) + ')';
} else {
return this.utils.timeFormatter(flight['PADT']);
}
} else {
return this.utils.timeFormatter(flight['PADT']);
}
} else {
if (Array.isArray(flight['ROUT']) && flight['ROUT'].length > 0) {
let lastRout = flight['ROUT'][flight['ROUT'].length - 1];
if (lastRout['SCDT']) {
return '(' + this.utils.timeFormatter(lastRout['SCDT']) + ')';
} else {
return '';
}
} else if (Object.prototype.toString.call(flight['ROUT']) === '[object Object]') {
if (flight['ROUT']['SCDT']) {
return '(' + this.utils.timeFormatter(flight['ROUT']['SCDT']) + ')';
} else {
return '';
}
} else {
return '';
}
}
} else {
return '';
}
}
public fldtFormatter(flight) {
if (flight['SODT']) {
return this.utils.dateWithoutTime(flight['SODT']);
} else {
return '';
}
}
}