From ae0b36c3991a9519e6e5a8e553ed03170850afbc Mon Sep 17 00:00:00 2001 From: zhouyuejun <505127606@qq.com> Date: Mon, 21 Jan 2019 15:13:53 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=88=B0=E6=B8=AF=E7=A6=BB?= =?UTF-8?q?=E6=B8=AF=E5=85=B1=E4=BA=AB=E8=88=AA=E7=8F=AD=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../personal-settings.component.ts | 2 + src/app/utils/flights-data-handle.ts | 2 + src/app/utils/transfer-render-handle.ts | 36 +++++++++++++++ src/app/utils/web-worker-handle.ts | 36 +++++++++++++++ src/assets/web-worker-handle.js | 46 +++++++++++++++++-- 5 files changed, 117 insertions(+), 5 deletions(-) diff --git a/src/app/pages/system-management/personal-settings/personal-settings.component.ts b/src/app/pages/system-management/personal-settings/personal-settings.component.ts index e2c7daf..fd888b1 100644 --- a/src/app/pages/system-management/personal-settings/personal-settings.component.ts +++ b/src/app/pages/system-management/personal-settings/personal-settings.component.ts @@ -79,6 +79,8 @@ export class PersonalSettingsComponent implements OnInit { { "COL_CODE": "CSFT", "COL_CN": "共享航班号", "COL_ORDER": "30", "COL_WIDTH": "85px" }, { "COL_CODE": "STND", "COL_CN": "当前机位", "COL_ORDER": "31", "COL_WIDTH": "85px" }, { "COL_CODE": "FLDT", "COL_CN": "航班日期", "COL_ORDER": "32", "COL_WIDTH": "85px" }, + { "COL_CODE": "ARSF", "COL_CN": "到港共享航班", "COL_ORDER": "33", "COL_WIDTH": "120px" }, + { "COL_CODE": "DESF", "COL_CN": "离港共享航班", "COL_ORDER": "34", "COL_WIDTH": "120px" }, ] /* 备注:实际数据中,把原始数据录入到临时变量中,方便取消按钮,重置数据 diff --git a/src/app/utils/flights-data-handle.ts b/src/app/utils/flights-data-handle.ts index d0e85f3..6b3bfb4 100644 --- a/src/app/utils/flights-data-handle.ts +++ b/src/app/utils/flights-data-handle.ts @@ -5,6 +5,8 @@ export class FlightsDataHandle { public transferHandle = new TransferRenderHandle(); public formatter = { + 'ARSF': this.transferHandle.arsfFormatter.bind(this.transferHandle), + 'DESF': this.transferHandle.desfFormatter.bind(this.transferHandle), 'RENO': this.transferHandle.renoFormatter.bind(this.transferHandle), 'GCTM': this.transferHandle.gctmFormatter.bind(this.transferHandle), 'BOTM': this.transferHandle.botmFormatter.bind(this.transferHandle), diff --git a/src/app/utils/transfer-render-handle.ts b/src/app/utils/transfer-render-handle.ts index 71d0b48..c845094 100644 --- a/src/app/utils/transfer-render-handle.ts +++ b/src/app/utils/transfer-render-handle.ts @@ -1,6 +1,42 @@ import timeFormatter from './time-formatter'; import dateWithNotimeFormatter from './date-with-notime-formatter'; export class TransferRenderHandle { + 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']) { diff --git a/src/app/utils/web-worker-handle.ts b/src/app/utils/web-worker-handle.ts index c91771c..fb663ae 100644 --- a/src/app/utils/web-worker-handle.ts +++ b/src/app/utils/web-worker-handle.ts @@ -177,6 +177,42 @@ export default function (dynamicData?) { * 数据转换处理方法集 */ let formatter = { + 'ARSF': function 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 ''; + } + }, + 'DESF': function 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 ''; + } + }, 'RENO': function renoFormatter(flight) { if (flight['RENO']) { if (flight['LRENO']) { diff --git a/src/assets/web-worker-handle.js b/src/assets/web-worker-handle.js index 4eb434c..bd7f791 100644 --- a/src/assets/web-worker-handle.js +++ b/src/assets/web-worker-handle.js @@ -178,6 +178,42 @@ onmessage = function (dynamicData) { * 数据转换处理方法集 */ let formatter = { + 'ARSF': function 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 ''; + } + }, + 'DESF': function 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 ''; + } + }, 'RENO': function renoFormatter(flight) { if (flight['RENO']) { if (flight['LRENO']) { @@ -1129,11 +1165,11 @@ onmessage = function (dynamicData) { }) postMessage( - { - "raw_data":raw_data, - "airlinesSelections":airlinesSelections, - "flightTypeSelections":flightTypeSelections, + { + "raw_data": raw_data, + "airlinesSelections": airlinesSelections, + "flightTypeSelections": flightTypeSelections, "combined_data": combined_data, - } + } ); } \ No newline at end of file