武漢開發(fā)區(qū)智慧城市儀表板項目第一階段詳細設計說明書_第1頁
武漢開發(fā)區(qū)智慧城市儀表板項目第一階段詳細設計說明書_第2頁
武漢開發(fā)區(qū)智慧城市儀表板項目第一階段詳細設計說明書_第3頁
武漢開發(fā)區(qū)智慧城市儀表板項目第一階段詳細設計說明書_第4頁
武漢開發(fā)區(qū)智慧城市儀表板項目第一階段詳細設計說明書_第5頁
已閱讀5頁,還剩81頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、開發(fā)區(qū)智慧城市儀表板項目第一階段詳細設計說明書開發(fā)區(qū)微軟智慧城市項目組2015 年 2 月成文信息主題詞:詳細設計說明書作者:文檔類別:詳細設計說明書審核:批準:文質(zhì):主送:存檔日期:抄送:發(fā)布日期:簽收信息方接收方:接收方:接收方:代表人:代表人:代表人:代表人:日期:日期:日期:日期:變更信息版本原因作者日期目錄第一章 引言51.1 編寫目的51.2 背景51.3 參考資料5第二章 系統(tǒng)功能設計62.1 系統(tǒng)概述62.2 流程圖62.3 頁面設計和說明72.3.1 經(jīng)濟建設-產(chǎn)值7. 92.3.3 經(jīng)濟建設-投資112.3.4 經(jīng)濟建設-招商132.3.5 經(jīng)濟建設-消費152.3.6 經(jīng)

2、濟建設-財政收入172.3.7-新增就業(yè)人數(shù)192.3.8-保障房212.3.9文明-空氣指數(shù)242.3.10政務中心(按部門)262.3.11 政務中心(按業(yè)務)282.3.12 信息展示30第三章 服務設計333.1 功能概述333.2 整體架構333.3 模塊功能343.3.1 服務管理343.3.2 動態(tài)服務363.3.3 OData. 37第四章 數(shù)據(jù)導入設計394.1 功能概述394.1.1 重點發(fā)展指標初始化404.1.2 重點發(fā)展指標數(shù)據(jù)導入404.1.3 政務大廳初始化414.1.4 政務大廳數(shù)據(jù)導入424.2 界面設計與導入流程及類關系圖和方法說明434.2.1 重點發(fā)展指

3、標初始化434.2.2 重點發(fā)展指標數(shù)據(jù)導入484.2.3 政務大廳初始化544.2.4 政務大廳數(shù)據(jù)導入594.3 基礎配置說明644.3.1 路徑信息配置644.3.2 基礎表信息查看64第五章 系統(tǒng)數(shù)據(jù)結構設計655.1 ER 圖655.2 數(shù)據(jù)庫表及視圖設計675.2.1 Dashboard 數(shù)據(jù)庫表675.2.2 Dashboard 數(shù)據(jù)庫視圖695.3 數(shù)據(jù)庫表字段設計715.3.1 EvaluationType 表715.3.2 FrequencyType 表715.3.3 GovernmentAffairHallAndAgencyCase 表715.3.4 Government

4、AffairHallCase 表725.3.5 GovernmentAffairHallDataType 表735.3.6 GovernmentAffairHallDepartment 表735.3.7 GovernmentAffairHallEvaluation 表735.3.8 GovernmentAffairHallMonthlyReport 表755.3.9 IndicatorData 表755.3.10 IndicatorDataActualValue 表765.3.11 IndicatorDataEvaluationValue 表765.3.12 IndicatorDataType

5、 表765.3.13 IndicatorDataTypeUnitList 表775.3.14 IndicatorDataTypeUnitUnionMeasureUnit 表775.3.15 IndicatorField 表775.3.16 IndicatorFileList 表785.3.17 IndicatorNames 表795.3.18 IndicatorObjectType 表795.3.19 IndicatorPictureList 表795.3.20 IndicatorType 表805.3.21 Layout 表805.3.22 LayoutUnionSection 表805.3

6、.23 MeasureUnitType 表815.3.24 MediaFiles 表815.3.25 Section 表825.3.26 SectionUnionTile 表825.3.27 SystemConfigInfo 表825.3.28 Tile 表835.3.29 Years 表85第一章 引言1.1 編寫目的本文檔對開發(fā)區(qū)智慧城市系統(tǒng)的功能設計、服務設計、數(shù)據(jù)導入設計以及數(shù)據(jù)庫結構設計進行了說明。本文檔適用于:開發(fā)區(qū)智慧城市項目開發(fā)、后期維護。1.2 背景系統(tǒng)名稱:智慧城市1.3 參考資料在開發(fā)區(qū)智慧城市項目設計階段,參考了如下資料,作為系統(tǒng)設計及開發(fā)工作的基礎:開發(fā)區(qū)智慧城市項目

7、需求說明書IntroducingODataRESTful Web Services Cookbook第二章 系統(tǒng)功能設計2.1 系統(tǒng)概述基于數(shù)據(jù)服務使用 HTML5技術,進行智慧城市系統(tǒng)的展示。2.2 流程圖展示流程:失敗數(shù)據(jù)導入成功數(shù)據(jù)倉庫數(shù)據(jù)整合前端展示chart文字圖片數(shù)據(jù)服務開始2.3 頁面設計和說明2.3.1 經(jīng)濟建設-產(chǎn)值1、 展示“規(guī)模以上工業(yè)總產(chǎn)值”的趨勢圖(例如從 2005 年到 2014 年的總產(chǎn)值趨勢),通過 Highcharts 控件展示。2、 展示最近一年“規(guī)模以上工業(yè)總產(chǎn)值”(例如最近一年是 2014 年,總產(chǎn)值為 2647.37 億元)。3、 展示最近一年“規(guī)模以

8、上工業(yè)總產(chǎn)值增長率”(例如最近一年是 2014年,增長率為 12.11%)。4、 展示“規(guī)模以上工業(yè)增加值”的趨勢圖(例如從 2005 年 2014 年增加值的趨勢),通過 Highcharts 控件展示。5、 展示最近一年“規(guī)模以上工業(yè)增加值”的信息,通過 Echarts 控件展示。6、 展示最近一年“規(guī)模以上工業(yè)增長率”的信息,通過 Echarts 控件展示。ü Chart 如下圖1、 展示“汽車產(chǎn)量”的趨勢圖(例如從 2005 年到 2014 年汽車產(chǎn)量的趨勢),通過 Highcharts 控件展示。2、 展示最近一年“汽車產(chǎn)量”(例如最近一年是2014 年,汽車產(chǎn)量為112.

9、44萬輛)。3、 展示最近一年“汽車產(chǎn)量增長率”(例如最近一年是 2014 年,增長率為 17.95%)。4、 展示“汽車產(chǎn)量增長率”的趨勢圖(例如從 2005 年 2014 年增長率的趨勢),通過 Highcharts 控件展示。5、 “汽車產(chǎn)量月度-2014 年”展示最近一年每個月產(chǎn)量的信息,通過Highcharts 控件展示。ü Chart 如下圖2.3.3 經(jīng)濟建設-投資1、 展示最近一年“固定資產(chǎn)投資”的信息(例如 2014 年的投資 461.69 億元)。2、 展示最近一年“固定資產(chǎn)投資增長率”(例如最近一年投資增長率為30%),通過 Echarts 控件展示。3、 展示

10、“固定資產(chǎn)投資”的趨勢(例如從 2005 年到 2014 年趨勢),通過 Highcharts 控件展示。4、 展示最近一年“工業(yè)投資”的信息(例如 2014 年工業(yè)投資為 413.3 億元)。投資的5、 展示最近一年“工業(yè)投資增長率”的信息,通過 Echarts 控件展示。6、 展示最近幾年“工業(yè)投資”的趨勢圖,通過 Highcharts 控件展示。ü Chart 如下圖2.3.4 經(jīng)濟建設-招商1、 展示“實際利用”的信息(例如從 2010 年到 2014 年的實際利用的趨勢),通過 Highcharts 控件展示。2、 展示最近一年“實際利用”信息(例如最近一年是 2014 年

11、,實際利用為 7.82 億)。3、 展示最近一年“實際利用增長率”(例如最近一年是 2014 年,增長率為 30.28%),通過 Echarts 控件展示。4、 展示“實際利用增長率”的信息(例如從 2010 年 2014 年增長率的趨勢),通過 Highcharts 控件展示。5、 展示最近一年“實際利用月度”的信息(例如 2014 年 1 月份到 12月份的月度投資情況) ,通過 Highcharts 控件展示。ü Chart,如下圖2.3.5 經(jīng)濟建設-消費1、 展示“消費品零售總額”的信息(例如從 2005 年到 2014 年消費品零售總額的趨勢),通過 Highcharts

12、 控件展示。2、 展示最近一年“消費品零售總額”(例如最近一年是 2014 年,社會消費品零售總額為 31.98 億元)。3、 展示最近一年“消費品零售總額增長率”(例如最近一年是 2014年,增長率為 18.1%),通過 Echarts 控件展示。4、 展示“消費品零售總額增長率”的信息(例如從 2009 年 2014 年消費品零售總額增長率的趨勢),通過 Highcharts 控件展示。5、 展示最近一年“消費品零售總額月度”的信息(例如 2014 年 1 月份到 12 月份的消費品零售總額情況) ,通過 Highcharts 控件展示。ü Chart 如下圖2.3.6 經(jīng)濟建設

13、-財政收入1、 展示最近一年“地方公共財政預算收入”的信息(例如 2014 年的預算收入 63.84 億元)。2、 展示最近一年“地方公共財政預算收入增長率”(例如最近一年投資增長率為 30%),通過 Echarts 控件展示。3、 展示“地方公共財政預算收入”的趨勢(例如從 2005 年到 2014 年歷年地方公共財政預算收入的趨勢),通過 Highcharts 控件展示。4、 展示最近一年“全口徑財政收入增長率”的信息(例如 2014 年全口徑財政收入增長率為 10.5%)。5、 展示最近一年“全口徑財政收入”的信息,通過 Echarts 控件展示。6、 展示最近幾年“全口徑財政收入”的信

14、息,通過 Highcharts 控件展示。ü Chart 如下圖2.3.7-新增就業(yè)人數(shù)²此頁面包含 4 塊內(nèi)容:1、 展示最近一年“新增就業(yè)人數(shù)月度”的信息(例如最近一年為 2014 年, 從 1 月份到 12 月份的就業(yè)人數(shù)),通過 Highcharts 控件展示。2、 展示最近一年“新增就業(yè)人數(shù)增長率”(例如最近一年是 2014 年,增長率為 6% )。3、 展示最近一年“新增就業(yè)人數(shù)”(例如最近一年是 2014 年,就業(yè)人數(shù)為 6524),通過 Echarts 控件展示4、 展示最近幾年“新增就業(yè)人數(shù)”的信息(例如從 2013 年 2014 年就業(yè)人數(shù)情況),通過

15、Highcharts 控件展示。ü Chart 如下圖2.3.8-保障房1、 展示最近一年“保障性住房”的信息(例如 2014 年保障性住房聰開工、建成、入住的情況),通過 Highcharts 控件展示。2、 展示最近一年“保障性住房”的信息(例如 2014 年保障性住房聰開工、建成、入住的情況),通過 Echarts 控件展示。3、 展示最近一年“保障性住房”的信息(例如 2014 年保障性住房聰開工、建成、入住的情況),通過 Echarts 控件展示。4、 展示最近幾年“保障性住房開工”的情況,通過 Highcharts 控件展示。5、 展示最近幾年“保障性住房基本建成”的情況

16、,通過 Highcharts 控件展示。ü Chart 如下圖2.3.9文明-空氣指數(shù)1、 展示最近一年“可吸入顆粒物(PM10)濃度(按月)”的信息(例如 2014年 1 月分到 12 月份的實際情況),通過 Highcharts 控件展示。2、 展示最近一年“PM10”。3、 展示最近一年“PM2.5”。4、 展示最近一年“可吸入顆粒物(PM2.5)濃度( 按月)”的情況,通過Highcharts 控件展示。5、 展示最近一年“PM10 下降率”的信息,通過 Echarts 控件展示。6、 展示最近一年“PM2.5 下降率”的信息,通過 Echarts 控件展示。ü C

17、hart 如下圖2.3.10 政務中心(按部門)² 此頁面包含 2 塊內(nèi)容:1、 展示“政務中心月辦件量前十(按部門)”的信息,通過 Highcharts 控件展示。2、 展示“政務中心年辦件量前十(按部門)”的信息,通過 Highcharts 控件展示。ü Chart 如下圖2.3.11 政務中心(按業(yè)務)² 此頁面包含 2 塊內(nèi)容:1、 展示“政務中心月辦件量前十(按業(yè)務)”的信息,通過 Highcharts 控件展示。2、 展示“政務中心年辦件量前十(按業(yè)務)”的信息,通過 Highcharts 控件展示。ü Chart 如下圖2.3.12 信息展

18、示1、 展示“2、 展示“3、 展示“委湖文化數(shù)字產(chǎn)業(yè)園投資公司揭牌運營”的信息。開發(fā)區(qū)與黃岡市合作共建黃岡工業(yè)園”的信息。包點包片檢查督導文明創(chuàng)建”的信息。4、 展示“國際居民綠色騎行低碳環(huán)?!钡男畔ⅰ?、 展示“6、 展示“開發(fā)區(qū)智慧城市”的。開發(fā)區(qū)工業(yè)總產(chǎn)值超 5000 億財政收入過 300 億”的信息。ü 文字和圖片,如下圖第三章 服務設計3.1 功能概述使用.NET RESTful API OData 動態(tài)服務開發(fā),該模塊包括服務管理與動態(tài)服務。目前數(shù)據(jù)結構的特點是數(shù)據(jù)比較稀疏、數(shù)據(jù)類型多種多樣,使用動態(tài)服務可以實現(xiàn)動態(tài)類型擴充,對于修改服務結構、服務部署、修改服務配置等只

19、需要在服務管理界面操作簡單的功能即可實現(xiàn)。OData(開放數(shù)據(jù)協(xié)議)是定義用于建設 RESTful API 的最佳實踐 OASIS 標準。 OData 的幫助你專注于自己的業(yè)務邏輯,同時建立基于 REST 的 API,狀態(tài)碼,HTTP 方法,URL 慣例,類型,負載格式和選項等,OData 還指導你異步/批請求等。此外,有關跟蹤變化,定義了可重復使用的程序功能/動作和OData 的提供設施擴展,以滿足 RESTful API 的任何定制需求。3.2 整體架構3.3 模塊功能3.3.1 服務管理 定義類字段類方法屬性 創(chuàng)建服務URI: POST-HTTP:/SERVE

20、R:PORT/DynamicDataBases描述:通過定義服務名稱與 SqlServer 中數(shù)據(jù)庫中連接字符串,可創(chuàng)建與數(shù)據(jù)庫對應的數(shù)據(jù)服務。創(chuàng)建后可返回與定義名稱對應的 OData 服務URI,服務創(chuàng)建完成。 重置服務控制器動作參數(shù)DynamicDataBasesControllerPut(String)Key=,DynamicDataBase控制器動作參數(shù)DynamicDataBasesControllerPostDynamicDataBaseURI: PUT-HTTP:/SERVER:PORT/DynamicDataBases()描述:如數(shù)據(jù)庫修改,創(chuàng)建某表或某字段可對服

21、務進行重置,重置后服務更。 刪除服務URI: DELETE-HTTP:/SERVER:PORT/Schema(Key)描述:如不需要該服務時,可以刪除服務。 配置服務URI: PUT-HTTP:/SERVER:PORT/DynamicDataBases(KEY)描述:如需要配置服務,可以點擊配置服務選擇相應的 Schema 即可,不選擇限制。服務URI: URI: PUT-HTTP:/SERVER:PORT/DynamicDataBases描述:具體詳見 OData章節(jié)內(nèi)容??刂破鲃幼鲄?shù)DynamicDataBasesControllerGet無控制

22、器動作參數(shù)DynamicDataBasesControllerPut(String)Key!=,DynamicDataBase控制器動作參數(shù)DynamicDataBasesControllerDelete(String)Key3.3.2 動態(tài)服務 定義泛型類字段方法Get (+ 1 重載) 增加URI:POST-HTTP:/SERVER:PORT/DynamicSchema描述:通過動態(tài)服務 Post 可增加,傳入?yún)?shù)為動態(tài)模型類型對象。 刪除URI:DELETE-HTTP:/SERVER:PORT/DynamicSchema(KEY)控制器動作參數(shù)D

23、yanmicController: BaseODataController<ModelType,KeyType>DeleteKey:<KeyType>控制器動作參數(shù)DyanmicController: BaseODataController<ModelType,KeyType>PostT:<ModelType>描述:通過調(diào)用動態(tài)服務 Delete 動作,可刪除對應參數(shù) Key。 修改URI:PUT-HTTP:/SERVER:PORT/DynamicSchema(KEY)描述:通過動態(tài)服務 Put 動作,可修改對應 Key,修改數(shù)據(jù)為

24、 T動態(tài)模型對象。單條URI:GET-HTTP:/SERVER:PORT/DynamicSchema(KEY)描述:通過動態(tài)服務 Get 動作,并傳入具體的 Key。 全及條件描述:詳見 OData章節(jié)。3.3.3 ODataAPI 支持以下 OData 的選項:控制器動作參數(shù)DyanmicController: BaseODataController<ModelType,KeyType>Get-控制器動作參數(shù)DyanmicController: BaseODataController<ModelType,KeyType>GetKey:<

25、;KeyType>控制器動作參數(shù)DyanmicController: BaseODataController<ModelType,KeyType>PutKey:<KeyType>, T:<ModelType>Filtering$filter 過濾選項允許客戶通過應用布爾表達式過濾結果。該過濾器表達式是相當強大;它們包括邏輯和算術運算符,字符串函數(shù)和日期函數(shù)。例:返回所有產(chǎn)品等于類型為 Toys 的結果集?$filter=Category eq 'Toys'返回所有產(chǎn)品價格等于10 的結果集?$filter=Price lt 10邏輯運算

26、: 返回所有產(chǎn)品 price >=5 并 且price <=15. 的結果集?$filter=Price ge 5 and Price le15字符串 函?$filter=substringof('zz',Name選項描述$filter對結果進行過濾.$inlinecount通知服務器包括在響應中匹配的實體的總數(shù)。(用于服務器端分頁。)$orderby排序的結果。$select選擇在響應中包含哪些屬性。$skip跳過前 n 個結果。$top只返回前 n 個結果。Sorting對結果進行排序,使用$orderby 排序依據(jù)過濾器。第四章 數(shù)據(jù)導入設計4.1 功能概述數(shù)

27、據(jù)導入功能是將用戶按照指定excel 模板填寫的數(shù)據(jù)導入到數(shù)據(jù)庫的相關表中。(注:excel 模板目前只有兩種:重點發(fā)展指標和政務大廳)。其功能會分為四個部分業(yè)務,分別是重點發(fā)展指標初始化,重點發(fā)展指標數(shù)據(jù)導入,政務大廳初始化,政務大廳數(shù)據(jù)導入。按 價 格 排序。?$orderby=Price按價格降序排列(從高到低)。?$orderby=Price desc按 類 別 搜索,然后按價格排序的類別中降序排列。?$orderby=Category,Pricedesc數(shù):返回所有 的名稱為“ZZ”。)日期函數(shù): 在 2005 年之后將所有的發(fā)布日期。?$filter=year(ReleaseDat

28、e)gt20054.1.1 重點發(fā)展指標初始化指標信息會每年發(fā)生一次變化,不同部門或區(qū)不同年份指標信息會有所不一樣。每一個指標會有一個更新頻度,具體數(shù)據(jù)更新時會根據(jù)指標更新頻度不一樣而進行不同頻率的數(shù)據(jù)更新,目前主要分為月度和季度。重點發(fā)展指標會有一個指標分類,一般包含項目類,數(shù)值類,百分比類等。項目類的指標會包含一些項目圖片,并且一個指標有可能會包含多個圖片。區(qū)重點發(fā)展指標和部分重點指標的區(qū)別為,區(qū)重點發(fā)展指標包含責任項而部門重點指標包含類型項目。初始化時重點發(fā)展指標時,部門一級和區(qū)一級需要初始化的信息分別是:區(qū):指標分類,指標類別,指標名稱,責任,報送頻度,計量部門:指標分類,指標類別,類

29、型,指標名稱,報送頻度,計量4.1.2 重點發(fā)展指標數(shù)據(jù)導入重點指標數(shù)據(jù)導入是將除初始化以外的數(shù)據(jù)信息導入到對應的數(shù)據(jù)庫表中。目前需要導入的數(shù)據(jù)有一個區(qū)和 31 個部門。在導入過程中如果某個部門中有一條不符合要求的數(shù)據(jù),則整個部門的數(shù)據(jù)將導入成功。并在 excel 中將其有數(shù)據(jù)行變?yōu)榧t色。以下為幾項特殊項的說明:頻度:導入的頻率根據(jù)數(shù)據(jù)信息中的頻度字段有關。一個指標信息的頻度是季,則此指標信息一年可以更新 4 此,如果其頻度是月,則一年可以更新 12 次。為了防止用戶在同一個頻度內(nèi)多次同步上傳數(shù)據(jù),需要用戶上傳的批次。指標類別為類似“百分比/實值類”的指標,數(shù)據(jù)導入時,數(shù)據(jù)信息。的應該是兩個包

30、含圖片的指標,需要將圖片同時上傳到服務器上,并在數(shù)據(jù)庫中需要便于前臺使用。需要同步的數(shù)據(jù)信息包含:年份,指標值,實際指標值/項目進度,報送批次,文字描述,是否包含圖片。4.1.3 政務大廳初始化政務大廳基本信息同重點指標初始化一樣,一年同步一次。需要初始化的 sheet會比重點指標少,需要處理相關的 sheet 只有 3 個,分別是政務中心機構辦件信息,政務中心綜合考評,政務中心電子監(jiān)察月報。及中介需要初始化的基本數(shù)據(jù)信息有:部門名稱,辦件事項,當月發(fā)生辦件項目名稱。4.1.4 政務大廳數(shù)據(jù)導入同重點指標數(shù)據(jù)導入一樣,是將除初始化以外的其它數(shù)據(jù)信息進行同步。政務大廳同步數(shù)據(jù)時需要同步三類數(shù)據(jù)信

31、息。政務中心及中介機構辦件信息需要同步的字段:辦件量,辦件量,法定辦件時間,法定辦件時間,部門提前辦結時間合計,部門提前辦結時間合計,部門人均提前辦結時間,部門人均提前辦結時間。政務中心綜合考評需要同步的字段:部門人數(shù),部門人數(shù),當月辦件量合計,當月辦件量合計,當月辦件量排名,提前辦結時間合計,提前辦結時間合計,提前辦結時間排名,人均辦件量,人均辦件量,人均辦件量排名,人均提前辦結時間,人均提前辦結時間,人均提前辦結時間排名。政務中心電子監(jiān)察月報需要同步的字段:當月辦結數(shù)量,當月辦結數(shù)量,平均提前辦結率,平均提前辦結率,部門當月辦件量,部門當月辦件量的數(shù)據(jù)為 0。同步過程中如果數(shù)據(jù)填寫格式確或

32、者為空,則數(shù)據(jù)庫將4.2 界面設計與導入流程及類關系圖和方法說明4.2.1 重點發(fā)展指標初始化 頁面設計 重點指標初始化流程開始歸檔文件的數(shù)據(jù)信息(excel)獲取一個DataSet集合信息循環(huán)處理每個Table根據(jù)excel數(shù)據(jù)獲取IndicatorField對象獲取對象是注意:相關外鍵信息,獲取對應ID時,如若數(shù)據(jù)庫沒有,則像數(shù)據(jù)庫一條并返回其ID對得到的對象進行驗證,將不符合要求的添加到List<ExcelErrorRow>集合中List<ExcelErrorR ow>是否為空否是將當前table的整體數(shù)據(jù)保存到數(shù)據(jù)庫中將List<

33、;ExcelErrorRow>集合數(shù)據(jù)存放到一個整個dataset Err的集合中DataSet循環(huán)結束循環(huán)中所有的err集合是否為空否是結束刪除相關臨時文件將相關的行在excel中變?yōu)榧t色獲取IndicatorObjectId備份excel文件備份到服務器的歸檔文件夾下(ArchivePath)上傳excel文件到臨時文件夾(TempPath) 類圖說明 服務說明.1 重點發(fā)展指標初始化上傳服務服務方法Route("api/ApiImportantIndicator/UploadField/TempPath") HttpPo

34、stpublic UploadJson UploadField(string TempPath)服務描述把要導入的 Excel 上傳到臨時文件夾參數(shù)說明TempPath :臨時文件夾所在的路徑返回值UploadJson 類:public class UploadJson/ <summary>/ 上傳是否成功標志 true:成功 false:失敗/ </summary>public bool Success get; set; / <summary>/ 上傳完成后返回信息/ </summary>public string Message get;

35、set; / <summary>/ 文件名稱/ </summary>public string FileName get; set; .2 重點發(fā)展指標初始化數(shù)據(jù)導入服務服務方法Route("api/ApiImportIndicator/ImportField") HttpPostpublic string ImportField(UploadFile uploadFile)服務描述獲取剛剛上傳的 Excel 的數(shù)據(jù),然后校驗數(shù)據(jù),最后把需要初始化的/ <summary>/ 文件所在的文件夾的路徑/ </summary

36、>public string Folder get; set; public string Authority get; set; 調(diào)用示例$('#file_upload').uploadify('cancelImg': '/Scripts/uploadify-v3.1/uploadify-cancel.png','auto': true, /true 'buttonText': '請選擇上傳文件','swf': 'Url.Content("/Scripts/

37、uploadify-v3.1/uploadify.swf")','uploader': '/api/ ApiImportIndicator/UploadField/' + tempPath,'onUploadSuccess': function(file, data, response) if (data) var data = newFunction("return" + data)();if (data.Success =false | data.Success = "false")

38、$("#message").html(data.Message);else showDiv();InsertData(data.FileName, data.Folder););數(shù)據(jù)導入到數(shù)據(jù)庫中參數(shù)說明UploadFile 類:public class UploadFile/ <summary>/ 文件名稱/ </summary>public string FileName get; set; / <summary>/ 文件所在的文件夾的路徑/ </summary>public string Folder get; set;

39、 返回值“初始化完成” 或 “初始化失敗”調(diào)用示例function InsertData(fileName, folder) $.ajax(type: "Post",url:"/api/ ApiImportIndicator/ImportField",data: "fileName": fileName, "folder": folder , success: function (data) closeDiv(); if (data) alert(data););4.2.2 重點發(fā)展指標數(shù)據(jù)導入 頁面

40、設計重點指標數(shù)據(jù)導入時,上傳的文件應該是個 zip 包,zip 包需要有固定的目錄結構。需要為文件夾名稱/excel 文件,區(qū)或部門文件夾/圖片 zip 包。如下圖: 以重點指標數(shù)據(jù)模板導入.zip 為例:上傳的Zip 包中包含兩類文件,第一類就是 excel,也就是填有相關數(shù)據(jù)的 excel文件。第二類是區(qū)或部分文件夾,這些文件夾中會放有對應sheet 的中的圖片zip 包。這里以區(qū)為例,打開區(qū)文件夾便可以看到區(qū)下對應的圖片 zip 包。Excel 在關聯(lián)圖片的時候以數(shù)據(jù)所在的 sheet 名和對應的圖片 zip 包,便可以找到對應的圖片信息。如下圖:每一個圖片 zip 包都對應著相關的指標

41、信息。一個指標只能對應一個圖片 zip包,一個 zip 包中可以包含多個圖片。如下圖: 重點指標數(shù)據(jù)導入流程:開始將zip包備份到歸檔文件夾下ArchivePathexcel相關數(shù)據(jù)到DataSet中循環(huán)處理每個Table獲取IndicatorObjectId根據(jù)excel數(shù)據(jù)獲取IndicatorData對象獲取對象是注意:相關外鍵信息,獲取對應ID時,如若數(shù)據(jù)庫沒有,則像數(shù)據(jù)庫一條并返回其ID判斷對象信息的中的圖否片地址是否真實存在及驗證是對得到的對象進行驗證,將不符合要求的添加到List<ExcelErrorRow>集合中將數(shù)據(jù)添加到要處理的數(shù)據(jù)集合中判斷Lis

42、t<ExcelErrorRow>集合是否為空否是List<ExcelErrorRow>集合數(shù)據(jù)添加執(zhí)行數(shù)據(jù)庫操作到整個DataSet err的集合中循環(huán)中所有的err集合是否為空否是結束刪除相關臨時文件將相關的行在excel中變?yōu)榧t色同步圖片及修改數(shù)據(jù)庫中圖片路徑DataSet循環(huán)結束將excel文件備份到歸檔文件夾(ArchivePath)獲取解壓后文件夾中的excel文件在臨時文件夾中對上傳的zip包進行解壓上傳一個zip包到臨時文件夾(TempPath) 類圖說明 服務說明.1 重點發(fā)展指標數(shù)據(jù)上傳服務服務方法Route(

43、"api/ApiImportantIndicator/UploadFile/TempPath") HttpPostpublic UploadJson Upload(string TempPath)服 務 描述把要導入的 Excel 上傳到臨時文件夾參數(shù)說明TempPath :臨時文件夾所在的路徑返回值UploadJson 類:public class UploadJson/ <summary>/ 上傳是否成功標志 true:成功 false:失敗/ </summary>public bool Success get; set; / <summa

44、ry>/ 上傳完成后返回信息/ </summary>public string Message get; set; / <summary>/ 文件名稱/ </summary>.2 重點發(fā)展指標數(shù)據(jù)導入服務服務方法Route("api/ApiImportantIndicator/ImportData") HttpPostpublic string ImportData(UploadFile uploadFile)服務描述獲取剛剛上傳的 Excel 的數(shù)據(jù),然后校驗數(shù)據(jù),最后把需要初始化的數(shù)據(jù)導入到數(shù)據(jù)庫中public s

45、tring FileName get; set; / <summary>/ 文件所在的文件夾的路徑/ </summary>public string Folder get; set; public string Authority get; set; 調(diào)用示例$('#file_upload').uploadify('cancelImg': '/Scripts/uploadify-v3.1/uploadify-cancel.png','auto': true,'buttonText': 

46、9;請選擇上傳文件', 'swf':'Url.Content("/Scripts/uploadify-v3.1/uploadify.swf")','uploader': '/api/ApiImportantIndicator/UploadFile/' + tempPath,'onUploadSuccess': function (file,data, response) if (data) var data = newFunction("return" + data)

47、();if (data.Success = false |data.Success = "false") $("#message").html(data.Message);alert(data.Message);else showDiv();InsertData(data.FileName, data.Folder););參數(shù)說明UploadFile 類:public class UploadFile/ <summary>/ 文件名稱/ </summary>public string FileName get; set; / &l

48、t;summary>/ 文件所在的文件夾的路徑/ </summary>public string Folder get; set; 返回值“數(shù)據(jù)導入完成” 或 “數(shù)據(jù)導入失敗”調(diào)用示例function InsertData(fileName, folder) $.ajax(type: "Post",url:"/api/ ApiImportantIndicator/ImportData ", data: "fileName": fileName, "folder": folder , success

49、: function (data) closeDiv(); if (data) alert(data););4.2.3 政務大廳初始化 頁面設計政務大廳數(shù)據(jù)初始化跟重點指標相比,邏輯就會簡單很多,牽扯需要通過代碼導入的主要表也只有兩個,所以這里描述的時候會帶部分代碼邏輯。政務大廳數(shù)據(jù)初始化前一定要注意表(GovernmentAffairHallDataType),這個表是需要手動維護的,詳細說明信息在數(shù)據(jù)表說明政務大廳初始化相關表和基礎配置說明>基礎表維護中都已經(jīng)提到,可參閱。 政務大廳初始化流程開始歸檔文件的數(shù)據(jù)信息(excel)獲取一個DataSet集合信

50、息循環(huán)處理每個Table(驗證文件)獲取需要添加或更新的數(shù)據(jù)集合(InsertImportantGovernmentAffairHall此方法中包含數(shù)據(jù)驗證及數(shù)據(jù),并返回一個List<ExcelErrorRow>集合)注意:初始化到的表有兩個GovernmentAffairHallDepartment和GovernmentAffairHallCaseList<ExcelErrorR ow>是否為空否將List<ExcelErrorRow>集合數(shù)據(jù)存放到一個整個dataset Err的集合中循環(huán)中所有的err集合是否為空否是結束刪除相關臨時文件將相關的行在ex

51、cel中變?yōu)榧t色DataSet循環(huán)結束將上傳文件到對應的數(shù)據(jù)庫中備份excel文件備份到服務器的歸檔文件夾下(ArchivePath)上傳excel文件到臨時文件夾(TempPath) 類圖說明 服務說明.1 政務大廳初始化上傳服務服務方法Route("api/ApiImportGovernmentAffairHall/UploadField/TempPath")HttpPostpublic UploadJson UploadField(string TempPath)服務描述把要導入的 Excel 上傳到臨時文件夾參數(shù)說明TempPath :臨時文件夾所在的路徑返回值UploadJson 類:public class UploadJson/ <summary>/ 上傳是否成功標志 true:成功 false:失敗/ </summary>public bool Success get; set; / <summary>/ 上傳完成后返回信息/ </summary>public string Message get; set; / <summary>/ 文件名稱/ </summary>public string FileName get; set

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論