第四章 港灣構造物維護管理系統建置
4.1 維護管理系統更新與港灣構造物資料擴充
4.1.1 維護管理系統更新 1.系統軟體架構
架構內容包含伺服器軟體、資料庫軟體與地理資訊系統等,如 圖 4.1 所示,本案伺服器使用 Apache 系統,其支援 HTML、PHP 與 JavaScript 等語言,而採用的資料庫為 MySQL,並藉由 PHP 語言進 行 資 料 庫 的 輸 出 入 , 地 理 資 訊 系 統 採 用 Googlemaps , 並 藉 由 JavaScript 語言將相關資訊展示地圖中。以下伺服器軟體、資料庫軟 體與地理資訊系統等說明如下:
(1)伺服器 Apache:Apache 是目前全世界使用得最多的網頁伺服器,
原本Apache 只是一個開放原始碼的網頁伺服器計畫,但隨著開放 原始碼的蓬勃發展,它從只支援網頁伺服器軟體的組織,變成了 支援了許多與全球資訊網應用相關的大計畫,並且改名為Apache
Fundation。根據 Netcraft 在 2009 年 12 月的統計數據,Apache 的 市佔率為 53.67%,IIS(Microsoft 系統)為 18.26%。其支援語言簡 述如下:
○1 HTML:超文件標示語言(Hypertext Markup Language,HTML) 是為「網頁建立和其它可在網頁瀏覽器中看到的訊息」設計的 一種標示語言。HTML 被用來結構化訊息,例如標題、段落和 列表等等,也可用來在一定程度上描述文件的外觀和語意。
HTML 檔案最常用的副檔名是.html,可以用任何文字編輯器或 所見即所得的 HTML 編輯器來編輯 HTML 檔案。
○2 PHP:超文字預處理器(Hypertext Preprocessor,PHP)是一種開 源的通用電腦指令碼語言,尤其適用於網路開發並可嵌 入 HTML 中使用。PHP 的語法借鑒吸收了 C 語言、Java 和 Perl 等 流行電腦語言的特點,易於一般程式設計師學習。PHP 的主要 標的是允許網路開發人員快速編寫動態頁面,但PHP 也被用於 其他很多領域。
○3 JavaScript:為一種直譯式程式語言,是一種動態型別、弱型別、
基於原型的語言,內建支援型別。它的直譯器被稱為 JavaScript 引擎,為瀏覽器的一部份,廣泛用於客戶端的腳本語言,最早 是在 HTML 網頁上使用,用來給 HTML 網頁增加動態功能。
(2)資料庫 MySQL:MySQL 是一個開放原始碼的關聯式資料庫管理 系統,原開發者為瑞典的 MySQLAB 公司,該公司於 2008 年被 昇陽微系統(Sun Micro systems)收購。2009 年,甲骨文公司(Oracle) 收購昇陽微系統公司,MySQL 成為 Oracle 旗下產品。MySQL 由 於效能高、成本低、可靠性好,已經成為最流行的開源資料庫,
因此被廣泛地應用在Internet 上的中小型網站中。隨著 MySQL 的 不斷成熟,它也逐漸用於更多大規模網站和應用,比如維基百科、
Google 和 Facebook 等網站。
圖服務,地圖包含地標、線條、形狀等訊息,提供向量地圖、衛
(1)港灣基本資料:建置內容為港灣編碼、港灣名稱、碼頭數量、港灣經 度、港灣緯度與港灣簡述等,其欄位設定與資料範例如表4-1 所示。
(2)碼頭基本資料:建置內容為港灣編碼、碼頭名稱、碼頭編號、碼頭 長度、設計水深、可靠泊水深、停泊噸位、使用性質、單元數量、
結構型式、碼頭經度、碼頭緯度、建造日期、建造經費、經費單位、
墩柱列數與墩柱行數等,其欄位設定與資料範例如表4-2 所示。
(3)單元基本資料:建置內容為港灣編號、碼頭編號、單元名稱、單元 長度、防舷材數量、吊車軌道長度、車擋數量、車擋長度、單元結 構型式等,其欄位設定與資料範例如表4-3 所示。
(4)構件基本資料:建置內容為第一層構件名稱、第二層構件名稱、構 件編碼、結構型式、巡查型式、權重等,其欄位設定與資料範例如 表 4-4 所示。
(5)劣化類型資料:建置內容為構建編碼、結構型式、劣化類型、劣化 編碼、劣化位置編碼與劣化數量編碼等,其欄位設定與資料範例如 表 4-5 所示。
(6)劣化描述資料:建置內容為構件編碼、結構型式、劣化類型、劣化 編碼、劣化等級與劣化描述等,其欄位設定與資料範例如表 4-6 所 示。
(7)經常巡查基本資料:建置內容為港灣編號、碼頭編號、檢測日期、
使用者代號、檢測意見等,其欄位設定與資料範例如表 4-7 所示。
(8)經常巡查詳細資料表:建置內容為港灣編號、碼頭編號、單元編碼、
構件編碼、劣化編碼、劣化等級、劣化數量(長度)、劣化數量(面積)、
劣化數量(數量)、劣化位置(X 值)、劣化位置(Y 值)、劣化位置(N 值)、
劣化照片、檢測日期等,其欄位設定與資料範例如表4-8 所示。
(9)經常巡查基本資料:建置內容為港灣編號、碼頭編號、檢測日期、
使用者代號、檢測意見、是否完成檢測等,其欄位設定與資料範例
(10)經常巡查詳細資料表:建置內容為港灣編號、碼頭編號、單元編 碼、構件編碼、劣化編碼、劣化等級、劣化數量(長度)、劣化數 量(面積)、劣化數量(數量)、劣化數量(百分比)、劣化數量(體積)、
劣化位置(X 值)、劣化位置(Y 值)、劣化位置(Z 值)、劣化位置(N 值)、劣化位置(R 值,墩柱行值)、劣化位置(C 值,墩柱列值)、劣 化照片、檢測日期等,其欄位設定與資料範例如表4-10 所示。
(11)特別巡查基本資料:建置內容為港灣編號、碼頭編號、檢測日期、
使用者代號、檢測意見等,其欄位設定與資料範例如表4-11 所示。
(12)特別巡查詳細資料表:建置內容為港灣編號、碼頭編號、單元編 碼、構件編碼、劣化編碼、嚴重否、劣化數量(長度)、劣化數量(面 積)、劣化數量(數量)、劣化位置(X 值)、劣化位置(Y 值)、劣化位 置(N 值)、劣化照片、檢測日期等,其欄位設定與資料範例如表 4-12 所示。
(13)修復工法資料表:建置內容為修復工法編碼、修復工法名稱、修 復工法單價等,其欄位設定與資料範例如表4-13 所示。
(14)修復工法對應資料:建置內容為修復工法編碼、構件編碼、劣化 等級等,其欄位設定與資料範例如表4-14 所示。
(15)維修紀錄表架構:建置內容為修復日期、港灣編碼、維修契約編 號、維修金額、維修碼頭編碼、維修照片、維修檔案等,其欄位 設定與資料範例如表4-15 所示。
表 4-1 港灣基本資料表架構
欄位名稱 欄位屬性 資料範例
id int(5) 1 hbID varchar(3) klh hbName varchar(10) 基隆港
hbPortNum int(5) 56
longitude float 121.745 latitude float 25.1375 hbIntroduction text
表 4-2 碼頭基本資料表架構
欄位名稱 欄位屬性 資料範例
id int(11) 1 hbID varchar(3) klh portName varchar(10) 西 2 號碼頭
portCode varchar(5) 0w02
portLength int(3) 205
portDesignDepth float 9
portDepth float 9
portShippingTon int(5) 1,000 portUse varchar(20) 客貨碼頭
portBlockNumber int(3) 22
portStructureType varchar(10) 棧橋式
latitude double 25.134839
longitude double 121.741411 buildDate varchar(8)
bulidMoney int(10) MoneyUnit varchar(5)
pileRow int(2) 1
pileColumn int(2) 10
表 4-3 單元基本資料表架構
欄位名稱 欄位屬性 資料範例
id int(11) 1
hbCode varchar(3) klh
portCode varchar(5) 0w02
blockCode varchar(3) B01 blockName varchar(10) 1 號單元
blockLength float 30
blockRubberNumber int(2) 1
blockTrackLength float 30
blockParkNumber int(2) 3
blockParkLength float
blockStructureType varchar(10) 棧橋 表 4-4 構件基本資料表架構
欄位名稱 欄位屬性 資料範例
id int(4) 1
elementNameL1 varchar(10) 碼頭本體 elementNameL2 varchar(10) 壁體
elementCode varchar(4) mswa structureType varchar(10) 重力
elementType varchar(3) RE
表 4-5 劣化類型資料表架構
欄位名稱 欄位屬性 資料範例
id int(11) 1
elementCode varchar(10) mswa structureType varchar(10) 重力
defectType varchar(10) 裂縫
defectCode varchar(10) cr positionType int(2) 3(代表為記錄 xz 值) quantityType int(2) 1(代表記錄長度)
表 4-6 劣化描述資料表架構
欄位名稱 欄位屬性 資料範例
id int(4) 1
elementCode varchar(4) mswa structureType varchar(10) 重力
defectType varchar(10) 裂縫
defectCode varchar(10) cr defectLevel varchar(1) 2 defectScript varchar(200) 局部可見到2~3 個部位有裂縫
(裂縫寬度約 3mm 以下) 表 4-7 經常巡查基本資料表架構
欄位名稱 欄位屬性 資料範例
id Int(10) 1 hbID varchar(3) klh portCode varchar(5) 0w02 inspectionDate varchar(8) 20130910 inspectionWeather varchar(2) 晴
inspectionUserName varchar(10) cyjian inspectorComment varchar(400) 無
表 4-8 經常巡查詳細資料表架構
欄位名稱 欄位屬性 資料範例
id int(10) 1
hbID varchar(3) klh
portCode varchar(5) 0w02
blockCode varchar(3) B01
elementCode varchar(4) mssh defectCode varchar(10) cr
defectGrade int(1) 2
欄位名稱 欄位屬性 資料範例
defectQuantityL float 10
defectQuantityA float defectQuantityN int(2)
defectPositionX float 2
defectPositionY float 3
defectPositionN int(2)
defectPhoto varchar(50) 20130910klh0w02Rumsshcr.jpg inspectionDate varchar(8) 20130910
表 4-9 定期巡查基本資料表架構
欄位名稱 欄位屬性 資料範例
id Int(10) 1 hbID varchar(3) klh portCode varchar(5) 0w02 inspectionDate varchar(8) 20130910 inspectionWeather varchar(2) 晴
inspectionUserName varchar(10) cyjian inspectorComment varchar(400) 無
isFinished Int(1) 1(0 為未完成、1 為完成) 表 4-10 定期巡查詳細資料表架構
欄位名稱 欄位屬性 資料範例
id int(10) 1
hbID varchar(3) klh
portCode varchar(5) 0w02
blockCode varchar(3) B01
elementCode varchar(4) mssh defectCode varchar(10) cr
defectGrade int(1) 2
defectQuantityL float 10
defectQuantityA float defectQuantityN int(2) defectQuantityP float defectQuantityV int(2)
defectPositionX float 2
defectPositionY float 3
defectPositionZ float defectPositionN float defectPositionR int(2) defectPositionC int(2)
表 4-11 特別巡查基本資料表架構
欄位名稱 欄位屬性 資料範例
id Int(10) 1 hbID varchar(3) klh portCode varchar(5) 0w02 inspectionDate varchar(8) 20130910 inspectionWeather varchar(2) 晴
inspectionUserName varchar(10) cyjian inspectorComment varchar(400) 無
表 4-12 特別巡查詳細資料表架構
欄位名稱 欄位屬性 資料範例
id int(10) 1
hbID varchar(3) klh
portCode varchar(5) 0w02
blockCode varchar(3) B01
elementCode varchar(4) mssh defectCode varchar(10) cr
ynValue varchar(5) yes
defectQuantityL float 10
defectQuantityA float defectQuantityN int(2)
defectPositionX float 2
defectPositionY float 3
defectPositionN float
defectPhoto varchar(50) 20130910klh0w02Rumsshcr.jpg inspectionDate varchar(8) 20130910
表 4-13 修復工法資料表架構
欄位名稱 欄位屬性 資料範例
id int(10) 1 methodCode varchar(10) C01 methodName varchar(50) 樹脂砂漿塗抹工法
methodUnitCost float 937.5
表 4-14 修復工法對應資料表架構
欄位名稱 欄位屬性 資料範例
id int(5) 1 methodCode varchar(10) C01
elementCode varchar(8) msshcr
defectGrade int(1) 2
表 4-15 維修紀錄表架構
欄位名稱 欄位屬性 資料範例
id int(20) 1 repairDate int(8) 20130910
hbID varchar(10) klh contractNum varchar(20) 1021023-R01
money int(20) 500,000 maintenancePort varchar(400) 0e01,0e02
maintenancePhoto varchar(50) klhPhoto201310232969.jpg
maintenanceFile varchar(50) klhFile201310232969.xls
3.系統功能架構與建置成果
系統功能架構如圖 4.3 所示,各模組功能概述如下,詳細之操作 說明請參閱附錄 1 碼頭構造物維護管理手冊第六章所示:
圖 4.3 碼頭維護管理系統功能架構
(1)基本資料模組:此模組可展示港灣資料,包含港灣名稱、碼頭數量、
港灣簡介,如圖 4.4 所示,並可選擇「碼頭資料列表」與「碼頭選 擇」(以地圖型式)來查閱碼頭資料。「碼頭資料列表」可展示碼頭 名稱、碼頭長度、設計水深、可靠泊水深泊船噸位、用途、單元數 量、結構型式、建造日期、建造經費、碼頭照片與斷面圖,如圖
港區之地圖選擇欲查詢的碼頭來展示其基本資料(資料與前述列表 資料相同,如圖4.7 所示),並可查詢已選碼頭的單元基本資料,包 含單元名稱、單元長度、防舷材數量、吊車軌道長度、車擋數量(或 長度)與單元照片,如圖 4.8 所示。
圖 4.4 港灣基本資料展示-以基隆港為例
圖 4.5 港灣基本資料展示-以基隆港為例
圖 4.6 港灣碼頭地圖選擇-以基隆港為例
圖 4.7 碼頭基本資料展示-以基隆港西 2 號碼頭為例
圖 4.8 單元基本資料展示-以基隆港西 2 號碼頭為例
(2)檢測資料模組:與此模組中選擇港灣後,可以進入各類型巡查之查 詢與新增功能中,如圖 4.9 所示。
○1 經常巡查之新增與查詢:選擇經常巡查之查詢並以碼頭為標的,
可進入經常巡查資料列表,如圖 4.10 所示,列表資料包含檢測 時間、檢測天候、檢測者、檢測者意見、並可針對各料表資料查 詢、編輯、刪除與列印(此部份於下節檢測報告模組說明)。詳細 的巡查資料如圖 4.11 所示,可展示各檢測時間,經常巡查資料 的內容,包含各構件劣化異狀的狀況、劣化單元、劣化位置、劣 化數量與照片等,並可編輯與刪除各構件。巡查資料的編輯可針 對選擇構件劣化異狀發生之單元進行變更、並可變更劣化狀況等 級、劣化位置、劣化數量與劣化照片,亦可刪除此筆巡查紀錄(即 此劣化構件異狀為 1 無異狀),如圖 4.12、圖 4.13 所示。而圖 4.10 之編輯功能,則為針對各筆巡查資料修正巡查天候與檢測者意見,
可進入經常巡查資料列表,如圖 4.10 所示,列表資料包含檢測 時間、檢測天候、檢測者、檢測者意見、並可針對各料表資料查 詢、編輯、刪除與列印(此部份於下節檢測報告模組說明)。詳細 的巡查資料如圖 4.11 所示,可展示各檢測時間,經常巡查資料 的內容,包含各構件劣化異狀的狀況、劣化單元、劣化位置、劣 化數量與照片等,並可編輯與刪除各構件。巡查資料的編輯可針 對選擇構件劣化異狀發生之單元進行變更、並可變更劣化狀況等 級、劣化位置、劣化數量與劣化照片,亦可刪除此筆巡查紀錄(即 此劣化構件異狀為 1 無異狀),如圖 4.12、圖 4.13 所示。而圖 4.10 之編輯功能,則為針對各筆巡查資料修正巡查天候與檢測者意見,