微信平台設計與實現–互聯網+固定資產投資服務監管

目  錄(獲取資源-文章末尾聯繫我)

1   緒 論

1.1研究的背景及意義

1.1.1選題的背景

 

身處於互聯網的時代,科技的變革改變我們生活,生活方式發生了巨大的改變。也促使著我們不斷學習獲取最新有效的技術。微信作為社交區使用人數是最多的,其中的微信公眾號是人們閱讀獲取最新的資訊和學習的勝地。比如,人民日報的公眾號發文最新國家時事和感動中國人物的事迹以及每晚深情的夜讀,深受人們的稱讚。以及個人公眾號訂閱號類型的,也促使作者去學習、總結、認真編輯文檔,創造出更多搞品質的優質文章。微信公眾號也在不斷的進行更新,適應用戶的體驗度。在個人的微信公眾號下,官方為公眾號的管理員(粉絲數大於500人)開通廣告流量主。激勵管理員創作更優質的文章。微信官方發表微信開發者文檔,這樣鼓勵更多的企業和個人媒體的加入。按照微信官方文檔支援開發者的對公眾號的編碼創作。公眾號為人們提供更便捷的「資訊獲取」、「技能學習」和「拓展思考」的取水源。

微信公眾號設計主題為《城口縣互聯網+固定資產投資服務監管平台建設項目微信公眾平台的設計與實現》。本項目的概要描述。分為四個用戶角色:系統管理員進行系統配置項的設置和發改部門與行業主管部門的增刪改查操作、發改部門針對法人提交的項目進行審核、行業主管部門對法人的提交的項目進行分類整理和報送和調度提醒發改部門、項目法人對自己情況進行填寫和申請。依照微信公眾號中的導航菜單的個人中心和官網上資料說明。在每個具體業務模組的操作說明中,後給資訊通知的模組接收系統通知消息模組,接收與登錄用戶相關的個人待辦事項通知

項目申請資源的合理分配、有效挖掘出更有利的項目投資,從項目的可行性、回報周期和社會項目的需求,藉以實現組織目標的管理活動。

1.1.2中國外研究現狀

微信公眾號在2012年問世,用戶使用量持續的新增,不少商家和企業就看到微信公眾化的發展空間,就利用線上微信公眾號和線下實體店相結合的經營模式,吸引大批用戶,激發了商業的活力。同時,結合公眾號分析平台的數據分析,用戶關注量排名前均屬於新聞媒體的企業公眾化。反映了用戶對社會新聞資訊的密切關注。在微信後台的數據反映,微信平台在文章品質檢測中也是很靈敏。處理很多不妥、違規、存在社會輿論的低品質文章的打擊程度。微信公眾號為了用戶更方便在線上營銷的戰略,開發了每日群發、小程式介面、卡卷等介面的實現極度的方便促進用戶和商戶的交易的流程。作者Institut für Germanistik, Germanistik/Linguistik,Universität Duisburg-Essen在2019年發表的《WeChat– Funktionsweise, technische Möglichkeiten and Emoji-Kommunikation》中介紹微信平台開發的技術要求和應用可能性和交流發送表情的處理研究。

1.1.3研究的意義

本項目微信公眾號業務研究中:需要支援通過微信平台進行一些基本的項目申報審批流程。使項目投資能夠擴大社會再生產,從而促進項目投資的客戶持續發展。支援項目(法人)對項目申請批報和項目創新力的構建,去提高社會需求的滿意度。從而給社會提供更高效便捷的生活品質。拉動社會消費的增長。在微觀的角度上看,項目投資監管平台能增強技術經濟的實力和項目投資創新能力提升給人們正向的指引作用。提供用戶使用的便利和開拓能力,使用戶有舒適的體驗感。

從「實踐」的角度上來看,項目申報入口設置在微信公眾號裡面,迎合了社交應用最廣的微信APP裡面。因此,我們不用去下載別的應用軟體,也不用花時間去學習別的軟體的操作,減少用戶操作的時間。降低用戶的手機使用的複雜度,壓縮了在手機上操作的時間。從而可以促進用戶使用的頻率和滿意度。本項目作為一個政務類型的平台,設置在微信公眾號裡面可以有助於拓展服務聚到,讓政務建設的成果真正惠及全民,體現出政府服務部門便民便利的服務理念。有助於搶佔輿論的征地和強化政民互動。

1.2系統目標

建設一個統一、完整、規範的重大重點項目資訊庫及服務監管平台,且在微信移動端進行操作。

 

 

 

圖1-1 系統目標

「1311」應用系統

    「1庫」——微信平台實現項目庫管理。

    「3核」——微信平台移動端實現前期工作管理、項目調度管理和問題督察管理。

    「1端」——微信平台移動端,「1屏」——在手機端展示可視化數據系統。

實現「3全」管理

(1) 全覆蓋管理

能夠覆蓋項目投資監管管理相關職能部門,能夠實現多個部門之間的數據共享、業務協同。加快推進重大重點項目的前期工作辦理。

(2) 全流程管理

在項目調度過程中,用發牌預警的手段,實現對項目投資監管平台已經通過初步審核的進入重點項目中去選址、確定項目、項目實施、項目完成的整個項目開發申請的流程的監管,這樣就能實時監控和遇到問題的及時解決的一個效率。項目建設實施過程中的困難和問題,從而保障重大重點項目按時按質科學有序推進,順利建設實施。

(3) 全可視管理

採用多種可視化的技術手段對重大重點項目的調度情況及項目建設具體情況,用可視化圖表或者是3D動態圖進行展示,包括基於各地區項目投標情況展現示,各地區項目申報通過審核的數據展示,年度各時期對項目申報情況的展示。利用項目圖片或影片資訊實現項目進度可視化。全可視化的項目申請到項目調度的整個流程中,使投資項目監管更客觀有據、更生動形象、更一日瞭然,投資決策更科學高效。

「固定資產投資服務監管微信平台系統」目標如下:

1.高效集成,協同辦公

用互聯網技術替換傳統的手工操作,實現項目在線的申報和對項目資訊的實時監控。把控每一個項目申請的過程。使其好的項目能得到該有的處理和審批。實現多個發改部門同時批改審核。

2.提速審批,監控過程

項目法人填報項目申請後,會接受到項目申請的資訊通知。同時給行業主管部門一個項目申請的資訊單,來通知行業主管部門。行業主管部門針對申請的項目進行初步的查閱。如果項目邏輯清晰標準符合。立即通過驗證推送給相應發改部門快速的審核。將審核結果第一時間通知項目法人,並存儲在資料庫中。

3.共享數據,輔助決策

微信平台上對項目申請的數據保存資料庫中,用數據圖表的形式形象的展示出來。讓用戶更直接了解項目申請的情況。

2   需求分析

1.1業務需求

(1)     支援在微信平台能查詢到申請項目資訊,查看項目的基本資訊、投資情況、前期工作

進項目調度進展、項目問題。

(2)     提供項目單位在線問題、業務、操作等諮詢,縣級發改人員、技術支撐人員在線問題回

復。支援項目(法人)單位和發改部門通過微信平台發起項目問題,相關部門(行業主管部門和發改部門)通過微信公眾號後台進行問題的回復、回饋和督辦。

(3)     支援項目(法人)人員通過微信填報調度任務,支援上傳項目實景圖片或影片。

(4)     提供多維度的統計分析報表查詢,方便隨時隨地了解重大重點項目的總體進展情況。

提供用戶較完善的資訊,讓用戶有比較好的體驗感。

2.1.1主要業務

(1)     項目法人登錄註冊管理業務流程設計

該業務流程是項目法人登錄頁面無帳號可以進行註冊,註冊成功進入登錄頁面。通過帳號驗證。會跳轉到項目法人首頁,進行個人資訊更改。

項目法人登錄註冊管理業務流程如圖2-1所示

 

  圖2-1 項目法人登錄註冊管理業務流程圖

(1)     行業部門登錄管理業務流程設計

各行業主管部門使用預設的帳號和密碼登錄系統及時填報各自責任範圍內的前期事項辦理進展情況。行業部門人員管理各自行業的項目並整理報送給發改部門。

行業部門登錄管理業務流程如圖2-2所示

  圖2-2 行業部門管理業務流程圖

(2)     發改部門管理業務流程設計

發改部門進行身份驗證,通過驗證後跳轉到發改部門的首頁,發改部門可以對項目進行批審、可查看項目的進展資訊、對全部問題及待辦事項進行監督。如圖2-3所示

圖2-3 發改部門管理業務流程圖

(3)     系統管理員管理業務流程設計

系統管理員進行身份的驗證,後面根據微信伺服器傳過來的OPENID去查詢資料庫。根據資料庫的用戶管理員類型欄位,登錄相應的首頁。系統管理員能對行業部門人員和發改部門進行增、刪、查、改的操作。

系統管理員管理業務流程如圖2-4所示:

 

 圖2-4 系統管理員管理業務流程圖

(4)     微信公眾號資訊通知管理業務流程設計

根據用戶的操作,有需要用戶確認和資訊提醒的操作,應該用微信後台資訊通知模組

給用戶通知。針對用戶的項目申報的進度更新並以微信公眾號資訊通知給用戶。根據用戶的回饋資訊和項目問題督辦處理結果給用戶相應的消息提醒。

微信公眾號資訊通知管理業務流程如圖2-5所示

 

 

 

圖2-5 微信公眾號資訊通知管理業務流程圖

(5)     微信公眾號可視化展示管理業務流程設計

結合不用用戶申請的項目類型和數量形成一張項目清單,並且用圖表的方式展示用戶申請項目的不同類型的數量。圖表方式展示出用戶項目申報的情況。

微信公眾號可視化展示管理業務流程如圖2-6所示

 

 

 

圖2-6 微信公眾號可視化展示管理業務流程圖

(6)     微信公眾號業務辦理管理業務流程設計

微信公眾號業務辦理包含五個方面:

1)      資訊查詢:支援通過微信平台查詢項目,查看項目申請的基本資訊、項目申請的投 資情況、項目申請的前期工作進展情況、項目調度進展、項目問題等。

2)      業務諮詢:提供項目單位在線問題、業務、操作等諮詢,縣級發改人員、技術支       撐人員在線問題回復。

3)      協調推進:支援項目(法人)單位和發改部門通過微信平台發起項目問題,發改       部門和系統管理員通過微信方式進行問題的回復、回饋和督辦。

4)      調度回饋:支援項目(法人)單位工作人員通過微信填報調度任務,支援上傳項       目實景圖片或影片。

5)      報表報告:提供多維度的統計分析報表查詢,方便隨時隨地了解重大重點項目的       總體進展情況。

 

 

 

 

圖2-7 微信公眾號可視化管理業務流程圖

1.2功能需求

本項目微信平台能夠支援項目(法人)單位工作人員通過微信填報調度任務,支援上傳項目實景圖片或影片。提供多維度的統計分析報表查詢,方便隨時隨地了解重大重點項目的總體進展情況。

2.1.1角色分析

根據對互聯網+固定資產投資服務監管微信平台的設計與實現的需求分析,本系統主要涉及到的角色如下表2-1所示:

表2-1 系統角色表

角色

職責或功能

項目法人

申請項目填報、查看項目進度、接受項目調度資訊通知、在線填報調度回饋、確定項目結算、回饋調度問題、聯繫客服、加入官方群聊、項目可視化展示。

行業部門

前期工作預警、前期事項配置、前期工作回饋、行業主管發起問題、行業主管部門接受問題、回饋進度結果、列印項目清單列表、項目可視化展示。

發改部門

項目審核管理、審核待辦事宜管理、重點項目庫管理、項目可視化展示。

系統管理員

對行業部門人員和發改部門人員的添、刪、改、查。項目調度回饋調整。

2.1.2業務功能

微信公眾平台:基於微信服務號建設移動端的功能,提供資訊通知、業務辦理、統計分析、操作指引等實用性功能。實現項目法人在移動端的設計了本系統的功能需求總體用例圖如下圖2-8所示。

 

 

圖2-8 系統總體用例圖

(1) 項目法人需求分析

項目(法人)單位和發改部門通過微信平台發起項目問題,系統管理員部門和發改部

門通過微信公眾號的方式進行問題的回復解答。項目(法人)單位工作人員通過微信填報調度任務,支援上傳項目實景圖片或影片。

該模組的用例圖如圖2-9所示。

 

 

 

 

圖2-9 項目法人管理模組用例圖

項目法人的項目申請管理模組案例分析表如下表2-2所示:

表2-2 項目法人項目申請管理模組案例分析表

描述項

說明

用例名稱

項目法人申報項目管理案例

標識符*

CF01

用例描述

描述項目法人對項目申請的過程

參與者表

項目法人

優先順序

1

狀態*

進行中

前置條件

項目法人通過驗證登錄

                                                                   續表2-2

後置條件

跳轉到項目法人的首頁

基本操作流

1.項目法人通過帳號的登錄,轉到項目法人首頁介面。

2.項目法人填寫項目的基本資訊進行申請。

3.項目申請提交成功,微信後台發送資訊通知。

可選操作流

當操作許可權不夠時系統彈出錯誤提示,並記錄操作日誌資訊

被泛化用例表

該用例的特化用例列表

項目法人的項目資訊管理案例分析表如下表2-3所示

表2-3 項目法人的項目資訊管理案例分析表

描述項

說明

用例名稱

項目法人申請的項目資訊管理案例

標識符*

CF02

用例描述

描述項目法人對自己項目申請的資訊查看

參與者表

項目法人

優先順序

1

狀態*

進行中

前置條件

項目法人在項目法人首頁點擊項目信查看

後置條件

項目法人申請過項目

基本操作流

1.項目法人登錄進入到項目法人的首頁。

2.點擊項目資訊查看按鈕。

3.查看申請過的項目資訊。

可選操作流

當註冊資訊不符合提示要求時,系統彈出錯誤提示,並記錄操作日誌資訊。

(2) 行業主管部門管理模組需求設計

各行業主管部門使用預設的帳號和密碼登錄系統及時填報各自責任範圍內的前期事項辦理進展情況。行業主管部門可發起問題、項目資金撥款申請等。行業主管部門接收與自己相關的待處理問題,並可在線回饋處理進度和處理結果。

 

 

 

圖2-10 行業主管部門人員管理模組用例圖

行業主管部門人員對項目問題督辦管理案例分析表如下表2-4所示:

表2-4 行業主管部門人員項目問題督辦管理案例分析表

描述項

說明

用例名稱

行業主管部門人員項目問題督辦管理案例

標識符*

CF03

用例描述

描述行業主管部門人員對項目整理、監督、回饋提醒的過程

參與者表

行業主管部門

優先順序

1

前置條件

行業主管部門人員已經通過登錄驗證

後置條件

行業主管部門點擊相對應的操作,進入行業主管部門的操作介面。

基本操作流

1.行業部門人員帳號驗證,進入行業部門的首頁

2.點擊監督的按鈕,進入相對應的項目調整的頁面。

3.查看項目可視化的圖表,了解最近項目類型問題回饋的情況和項目問題督辦的情況。做出對問題處理的及時的響應。

4.操作結束,數據同步到資料庫,同時對發布的問題相應對應的用戶提醒。

行業主管部門人員項目可視化展示案例分析表如下表2-5所示:

表2-5 行業主管部門項目可視化展示案例分析表

描述項

說明

用例名稱

行業主管部門項目可視化展示案例

標識符*

CF04

用例描述

描述行業主管部門人員查看項目可視化展示的過程

參與者表

行業主管部門人員、項目法人、發改部門

優先順序

1

狀態*

進行中

前置條件

用戶通過行業主管的登錄驗證

後置條件

用戶點擊 「項目可視化」按鈕

基本操作流

1.行業主管部門點擊可視化按鈕,進入項目大數據的頁面。

2.點擊項目的數據類型的按鈕,數據從資料庫呈現前端頁面。

可選操作流

查看本系統的總體項目數據圖表展示

被泛化用例表

該用例的資訊查閱用例

(3) 發改部門人員管理模組需求設計

發改部門人員管理模組主要有下面六點功能:

(1) 發改部門使用預設的帳號和密碼登錄系統錄入單個項目或EXCEL文件批量導入項

目。對接重慶市固定資產投資項目網上服務監管,獲取系統中已經的項目資訊,自動關聯到對應的項目單位及管理部門。

(2) 發改部門進行審核,審核分為審核通過和退回。審核待辦事宜將通過系統消息和

移動端進行推送和提醒。

(3) 發改部門可按項目查看本期的進展資訊。

(4) 發改部門都可發起問題、項目資金撥款申請等。

(5) 發改部門通過微信平台發起項目問題,相關部門和發改部門通過微信進行問題的

回復、回饋和督辦。

(6) 發改部門可對全部問題及待辦事項進行監控、督促。

發改部門人員管理模組的用例圖如圖2-11所示

 

 

 

 

圖2-11 發改部門人員管理模組用例圖

發改部門人員對申請項目審批管理案例分析表如下表2-6所示:

表2-6 發改部門人員項目管理案例分析表

描述項

說明

用例名稱

發改部門人員項目管理案例

標識符*

CF05

用例描述

描述發改部門對項目審批、導入、問題處理、申報的項目進度查看操作的過程

參與者表

發改部門人員

優先順序

1

狀態*

進行中

前置條件

發改部門人員已經通過登錄驗證

後置條件

操作完成後,並進入到發改部門的首頁

基本操作流

1.發改部門人員登錄成功,進入發改部門人員首頁介面。

2.發改部門點擊項目進行審批、導入、問題處理、項目進度查看操作功能。

3.發改部門點擊操作後,進入相應的操作介面進行操作。

發改部門人員項目調度案例分析表如下表2-7所示:

表2-7 發改部門人員項目調度案例分析表

描述項

說明

用例名稱

發改部門人員項目調度案例

標識符*

CF06

用例描述

描述發改部門人員對通過項目審核的項目進行項目調度審核過程

參與者表

發改部門人員

優先順序

1

狀態*

進行中

前置條件

已經通過項目申請的審核項目

後置條件

對重點項目庫中項目調度的資訊進行審核,審核結果通知項目法人

基本操作流

1.點擊「項目調度」的按鈕,進入項目調度審核頁面

2.項目調度審核結果存儲在資料庫中,審核結果通知用戶

(4) 系統管理員管理模組需求設計

系統管理員可以對發改部門人員、行業部門人員進行增、刪、改、查的操作和項目問題處理總攬。該模組用例圖2-12所示。

 

 

 

 圖2-12 系統管理員管理模組用例圖

系統管理員處理項目問題管理模組案例分析表如下表2-8所示:

表2-8 系統管理員處理項目問題案例分析表

描述項

說明

用例名稱

系統管理員處理項目問題管理案例

標識符*

CF07

用例描述

描述系統管理員處理項目中的問題

參與者表

系統管理員

優先順序

2

狀態*

進行中

前置條件

系統管理員登錄驗證成功

後置條件

微信公眾號發送項目問題被解決的資訊通知

基本操作流

1.系統管理員拿到自己的帳號登錄驗證通過或者微信之前登錄成功後直接在微信中免登錄操作。操作對應的問題處理功能

2.系統管理員對選擇的用戶提出的項目問題進行處理。

3.系統管理員對項目問題處理結果用微信公眾號資訊通知的形

式發送給用戶。

可選操作流

管理員查看項目問題處理的情況

被泛化用例表

用戶提出的項目問題進行處理過程表

系統管理員可視化設置案例的分析表如下表2-9所示:

表2-9 系統管理員可視化案例分析表

描述項

說明

用例名稱

系統管理員大數據可視化頁面的案例分析

標識符*

CF08

用例描述

管理員布局可視化頁面的展示

參與者表

系統管理員

優先順序

2

狀態*

進行中

前置條件

系統管理員人員帳號驗證成功,進入首頁點擊可視化按鈕

後置條件

按照用戶的需求更改可視化頁面展示的欄位和圖表的展示意義。更改可視化頁面展示的結構。

基本操作流

1.點擊需要換一個圖形展示的圖表。

2.將項目圖表的列名和數據類型修改,並保存到資料庫。

可選操作流

系統管理員資訊修改案例

(5) 微信公眾號業務辦理模組需求設計

業務辦理:項目申請資訊查詢、項目業務流程諮詢、項目調度回饋。

資訊查詢:支援通過微信平台查詢項目,查看項目資訊、項目申請進展情況、項目調度進展、項目問題等。

業務諮詢:提供項目單位在線問題、業務、操作等諮詢,縣級發改人員、技術支撐人員在線問題回復。

協調推進:支援項目(法人)單位和發改部門通過微信平台發起項目問題,相關部門和發改部門通過微信進行問題的回復、回饋和督辦。

調度回饋:支援項目(法人)單位工作人員通過微信填報調度任務,支援上傳項目實景圖片或影片。

報表報告:提供多維度的統計分析報表查詢,方便隨時隨地了解重大重點項目的總體進展情況。

微信公眾號業務辦理模組的用例圖如圖2-13所示

 

 

 

 

圖2-13 微信公眾號業務辦理模組用例圖

微信公眾號業務辦理模組案例分析表如下表2-10所示:

表2-10 微信公眾號業務辦理模組案例分析表

描述項

說明

續表2-10

用例名稱

微信公眾號業務辦理模組案例

標識符*

CF09

用例描述

描述用戶對項目申報問題、處理、監測的過程

參與者表

系統管理員、項目法人、行業部門人員、發改部門人員

優先順序

1

狀態*

進行中

前置條件

用戶通過身份驗證

後置條件

系統彈出「登記成功」提示框,外來人員進行訪問

基本操作流

  1. 用戶員通過登錄驗證
  2. 用戶進入相應的首頁進行相應的操作

可選操作流

問題重名或者問題內容超長導致操作出錯,系統彈出錯誤提示,並記錄操作日誌資訊

被泛化用例表

該用例的特化用例列表

(6) 微信公眾號資訊通知管理模組需求設計

資訊通知:接收系統通知消息,接收與登錄用戶相關的個人待辦事項通知,如項目待辦事項提醒、監測預警提示等。

該模組的用例圖如圖2-14所示

 

 

 

 

圖2-14 資訊通知管理模組用例圖

微信公眾號資訊通知管理案例分析表如下表2-11所示:

表2-11 微信公眾號資訊通知管理案例分析表

描述項

說明

用例名稱

微信公眾號資訊通知管理案例

標識符*

CF10

用例描述

1.系統管理員:微信等方式對項目責任單位和相關部門進行調度

填報提醒

2.項目法人:接受有關個人申報的項目進度問題提醒和項目申報

結果處理的提醒

3.行業部門人員:審核待辦事宜將通過系統消息和移動端進行推

送和提醒,前期工作進展進行監測預警,如有超時未辦理等情況,系統自動發牌預警,預警提醒同時通過移動端推送給相關人員

4.發改部門人員:接收系統通知消息,接收與登錄用戶相關的個人

待辦事項通知,如項目待辦事項提醒、監測預警提示。

參與者表

系統管理員、項目法人、行業部門人員、發改部門人員

優先順序

1

狀態*

進行中

前置條件

系統管理員、項目法人、行業部門人員、發改部門人員能通過登錄驗證

後置條件

操作完成後,系統彈出「操作成功」提示框,並進入到對應用戶的首頁介面

可選操作流

1.系統管理員登陸首位介面,接受項目調度問題的回饋提醒

2.發改部門人員登陸首頁介面,接受項目審核待辦提醒

3.行業部門人員登錄首頁介面,接受項目監督整合提醒

4.項目法人登錄首頁介面,接受該用戶提交項目的進度提醒

被泛化用例表

該用例的特化用例列表

(7) 微信公眾號可視化管理需求設計

可視化展示:基於地理資訊平台,實現投資項目可視化展示

微信公眾號可視化管理模組的用例圖如圖2-15所示

 

 

 

 

圖2-15 微信公眾號可視化管理模組用例圖

微信公眾號可視化管理案例分析表如下表2-12所示:

表2-12 微信公眾號可視化管理案例分析表

描述項

說明

用例名稱

微信公眾號可視化管理案例

標識符*

CF11

用例描述

1.可視化的技術手段對重大重點項目的推進及建設情況進行立

體呈現。

2.基於地理資訊技術展現示項目建設地點分布和項目開竣工情

況,採集項目圖片或影片資訊實現項目進度可視化,採用紅黃牌預警實現項目問題的可視化。

3.對重大重點項目的各階段進展數據進行匯總、比對、分析,為

相關領導及時、準確、全面地提供多維度的統計分析報表和可視化的數據展示

參與者表

系統管理員、項目法人、行業部門人員、發改部門人員

優先順序

1

狀態*

進行中

前置條件

用戶通過登入驗證

後置條件

操作完成後,進入到需要查看項目情況的類型描述頁面

基本操作流

  1. 成功進入頁面後,選擇以什麼方式查看項目情況
  2. 點擊提交按鈕進入項目總攬情況頁面

2.2功能需求

本項目微信平台能夠支援項目(法人)單位工作人員通過微信填報調度任務,支援上傳項目實景圖片或影片。提供多維度的統計分析報表查詢,方便隨時隨地了解重大重點項目的總體進展情況。

2.2.1角色分析

根據對互聯網+固定資產投資服務監管微信平台的設計與實現的需求分析,本系統主要涉及到的角色如下表2-1所示:

表2-1 系統角色表

角色

職責或功能

項目法人

申請項目填報、查看項目進度、接受項目調度資訊通知、在線填報調度回饋、確定項目結算、回饋調度問題、聯繫客服、加入官方群聊、項目可視化展示。

行業部門

前期工作預警、前期事項配置、前期工作回饋、行業主管發起問題、行業主管部門接受問題、回饋進度結果、列印項目清單列表、項目可視化展示。

發改部門

項目審核管理、審核待辦事宜管理、重點項目庫管理、項目可視化展示。

系統管理員

對行業部門人員和發改部門人員的添、刪、改、查。項目調度回饋調整。

2.3非功能需求

基於微信公眾號開發,由於微信同時支援在iOS和Android系統上運行。使得項目投資監管系統的獲取微信伺服器的後台數據不存在系統上的區別。微信官方同時也支援微信公眾號測試號的開通,在測試號中可以大多數服務號類型的公眾號的測試。在非功能需求沒有過多的要求,智慧手機微信版本在4.2版本以上。

2.3.1環境需求

伺服器端的環境如表2-13所示

表2-13 服務端環境

系統的資料庫

MYSQL

移動端系統

Linux

伺服器類型

騰訊雲

公網域名

域名已備案

伺服器埠

80埠未佔用,企業號的支援443埠

伺服器所處溫度

溫度範圍為20-25℃(68-75℉)

客戶端的環境如表2-14所示:

表2-14 客戶端環境

作業系統

Android、IOS

微信版本

4.0V以上

解析度

最佳效果為1024×768像素

公眾號申請類型

服務號/企業號(可在測試號進行測試)

微信帳號數量

微信帳號數量在4個以上

2.3.2 性能需求

(1) 可維護性

維護方法:微信伺服器對於在公眾號操作時候出現數據異常,會將這個異常數據記錄保存在我的資料庫中,並且對這個異常進行處理,及時將出現這個異常通知給用戶並告訴針對這個異常用戶應該做些什麼讓這個異常更小概率發生和處理,及時處理後也將處理的結果通知用戶。讓用戶在使用過程中做好應對處理和準備。

(2) 易操作性

介面設計:系統向美觀實用方面設計,方便和簡約的圖形介面,考慮用戶體驗感,頁面元素輕巧,需求功能明顯,極易上手操作。

(3) 可擴展性

功能擴展:公眾號伺服器菜單結構可以鏈接到固定資產項目投資的官網上去便於查找自己需求的數據。可接通多個介面和菜單方式。滿足用戶的申報項目基本需求。

非公能拓展:非公能的介面設置均不封閉。及時關注用戶對這個系統的回饋和提議,針對非公能可以及時處理問題。

(4) 軟體維護:

對用戶進行深度分析,定期微信公眾號頁面內容進行更新,如產品,活動等。對用戶進行深度分析,包括用戶的來源,比如用戶是來自公眾號還是小程式等。理性客觀的對數據進行總結,讓用戶體驗舒適。在頁面內容進行更新方面,一定要有自己的規律,具體問題具體分析。

(5) 響應性

操作平均響應時間不超過2.0秒,頁面的響應時間不大於500毫秒,事務處理時間低於0.5秒,查詢等待時間小於2.0秒。

2.3.3 安全需求

(1) 容錯性

當用戶輸入錯誤時,系統有針對錯誤處理並提示用戶讓用戶正確輸入。用戶操作不在微信平台時也會提示出請在微信端操作的頁面友情提示。

(2) 系統的外在環境安全

用戶輸入的數據全部保存在騰訊雲資料庫當中,有著強大的騰訊雲管理團隊技術維護。並且防止伺服器的DDOS攻擊。定期查看流量劇增的IP地址,將其加入伺服器訪問的黑名單。同時將伺服器的公網IP設置為彈性IP.設置複雜密碼防止黑客暴力破解。

(3) 系統內部安全

系統源程式碼放到騰訊雲的伺服器上比較安全。對於數據非法訪問自動跳轉異常頁面。數據提交採用安全POST提交方法。

(4) 系統運行安全

騰訊雲安全在雲服務生命周期的每個階段都採用安全審計流程、從需求設計、到系統上線、再到運營都在騰訊雲的安全風險可控和保護當中。

(5) 防火牆技術安全

採用騰訊伺服器的彈性域名和設置安全組。更改常用埠8080、22、80、3306等埠。使其黑客採用DDos攻擊增加難度。使用動態MFA口令加密。

(6) 邊界防護安全

設置本系統只能在移動端且微信平台下面進行操作,離開微信平台,一切操作失敗且溫馨提示。防止在PC端對本系統的埠掃描造成危害。

3   總體設計

3.1系統設計的原則

經過充分考慮本項目監管的總體規劃目標,以及微信平台的應用環境下,本系統的設計將嚴格遵循以下的設計原則:

(1) 可靠性原則

利用騰訊雲資料庫,具有很強的穩定性,可以同時並發訪問用戶在登錄的時候都是講用戶資訊進行BASE64進行加密,然後讀取數據進行反解密。這樣避免了用戶資訊存在圖片和表情資訊存儲不到資料庫,從而導致丟失的情況產生。同時也為用戶節約手機端的流量。

(2) 先進性原則

微信公眾平台的開發,在用戶訪問時候,能夠同時處理並發達到10000個用戶同時訪問,並發性處理。訪問高峰期一般在周末和晚上,用戶會通過搜索檢索相關的資訊。一直以來。而我們的微信公眾平台在資訊的處理和服務的方法方面都站在用戶的角度去考慮。比如,用戶對審核進度的回饋得到有效回復和處理。

(3) 安全性原則

資料庫重要數據會進行HASH+MD5加密演算法進行加密。這個演算法是不可逆演算法,即使黑客截取數據包,黑客也是獲取加密後的數據,難以從加密後的演算法進行反推出用戶的密碼。

(4) 規範性原則

統一遵守官方微信公眾號平台開發文檔原則。投資項目統一編碼標準原則、投資項目資訊數據處理統一標準、資訊聯網數據介面統一標準。

(5) 可擴展性原則

微信公眾平台會定時更新和修復BUG和某個應用的功能的開放,所以本項目中的所有功能模組的設計都預留了擴展介面。針對應接微信官方版本更新的接受和項目功能擴展的需求。

3.2系統體系結構設計

微信公眾平台以微信用戶的OPENID為依據,主要解決的是微信認證情況,不允許別人微信平台登錄微訊號進行登錄操作。增加了用戶資訊的安全與保密。

用戶端:介面主要是微信公眾號,用戶在公眾號里發送資訊到微信伺服器,微信伺服器根據開發者配置域名驗證記得伺服器中。自己伺服器處理後將數據返回給微信伺服器從而送達給用戶聊天介面。微信公眾號數據交互具體。

如圖3-1所示

 

 

 

 圖3-1 微信公眾號數據交互

微信伺服器與我們的伺服器項目的URL地址。在IDEA裡面新建一個WEB項目,並創建一個Servlet。用創建的doGet()方法將在WEB.XML中設置的瀏覽器訪問地Weixin-
Servlet,將//外網伺服器地址/Weixin/WeixinServlet設置在微信公眾號裡面。建立連接。如圖3-2所示。

 

 

 圖3-2 微信伺服器建立連接

用戶在微信公眾號發送資訊,這時資訊發送到微信伺服器中(攜帶者發送者的OPENID和在那個微信公眾號裡面的OPNEID和項目資訊的ID及用戶發送消息的類型和內容打包成XML)。微信伺服器根據用戶在那個微信公眾號的OPENID發送給前一步設置的伺服器的地址(//外網伺服器地址/Weixin/WeixinServlet)然後根據用戶的消息類型進行相應的回復,也打包成XML的形式發送給微信伺服器。

3.3系統功能技術架構設計

 

 

 

圖3-3 資產投資項目監管微信平台功能架構設計圖

(1) 用戶管理:用戶(項目法人、行業主管部門人員、發改部門人員)進行登錄首頁,對個人

資訊查看、部門資訊修改功能。

(2) 項目庫管理:項目法人填報項目申請,行業主管部門進行整理檢查,發改部門對項目

進行審批,審批結果以微信平台資訊通知用戶併入重點項目庫。

(3) 問題督辦回饋:在用公眾號情況下發生的一些項目邏輯不合理和數據返回異常情況,

問題回饋給系統客服人員,客服人員將問題上報給系統管理員。項目法人可以上報自己項目審批結果的給客服。系統將會對項目審批時間採用類型優先的電梯演算法進行依次審批。對即將超時的項目以公眾號資訊的方式送給發改部門和行業主管部門將其通知到位。

(4) 統計分析:用戶可以通過公眾號的方式查看全國各地所有項目申報情況,項目審批情

況,項目的審批通過率的展示。項目月報、前期工作進展一覽表、項目建設推進一覽表、項目開情況統計、項目問題督辦統計、項目投資進度排名、自定義報表等,提供同比、環比、趨勢分析等比對分析功能,支援報表在線列印及導出。

3.1. 

3.2. 

3.3. 

3.3.1用戶管理功能構建設計

 

 

 

 

圖3-4 用戶管理功能構建設計圖

(1)     項目法人登錄或註冊:項目法人可以通過郵箱註冊獲取帳號,登錄項目法人的主頁了

解自己相應的功能操作,查看自己個人資訊和修改個人密碼的操作。

(2)     系統管理員:可以接受用戶發過來的回饋問題,及時維護微信公眾號存在的一些問題

與不合理的地方。可以對發改部門人員和行業主管部門人員進行添加、刪除、修改、查找和項目處理進度和項目申報總覽情況等一些基本操作。

(3)     發改部門人員:通過自己帳號登錄查看自己個人資訊和修改個人資訊。並可以通過郵

箱驗證碼和微信掃一掃登錄自己管理的頁面。

(4)     行業主管部門:通過自己帳號登錄查看自己個人資訊和修改個人資訊。並可以通過郵

箱驗證碼和微信掃一掃登錄自己管理的頁面。

3.3.2項目庫管理功能構建設計

 

 

 

 

圖3-5 項目庫管理功能構建設計圖

(1)     項目填報:項目法人通過登錄到首頁,填寫項目法人上報項目投資的一些文件。

(2)     項目審核:項目審核有發改部門對項目法人上報的項目進行審核,是否符合國家定義

的項目標準。審核結果分為審核通過和審核退回。審核通過會將項目法人上報的項目選入重點項目庫。

(3)     項目待辦事宜:對於項目的審核時間過長會以消息推送的方式到公眾號提醒負責該項

目的發改部門人員。

(4)     重點項目庫:對於審核通過的項目會入重點項目庫形成清單檔案。

(5)     項目錄入:分為單個項目錄入和批量項目錄入。

3.3.3問題督辦管理功能構建設計

 

 

 

 

圖3-6 問題督辦管理功能構建設計圖

(1)     項目問題填報:項目法人單位可以發起問題、行業主管部門可以發起在整體的過程中的問題。發改部門的可以對審核項目的問題和項目中存在歧義的事情進行上報。

(2)     項目問題清單:行業主管部門接受項目問題回饋進度結果,項目法人能對項目的結算

確定(類似淘寶購買東西後的評價),發改部門對全部問題的監控督促,系統管理員對上報的項目進行調整,這一段流程產生的項目問題清單。

(3)     項目問題總攬:項目總攬是對項目的問題解決和處理進度總的情況查看。這個許可權是

公開的可以讓所有人能看見。清晰明了的看到項目問題的負責人和審批項目的發改部門的功能效率問題的查看。以全國的2D地圖進行地區方式的查看。

3.3.4統計分析管理功能構建設計

 

 

 

 

圖3-7 問題督辦管理功能構建設計圖

(1)     統計總攬:當前年度項目總個數及總投資額、項目開竣工情況、前期工作預警情況、項

目問題及待辦事項情況、項目投資到位及投資完成情況。

(2)     多維度統計報表:項目月報、前期工作進展一覽表、項目建設推進一覽表、項目開情況

統計、項目問題督辦統計、項目投資進度排名、自定義報表等,提供同比、環比、趨勢分析等比對分析功能,支援報表在線列印及導出。

(3)     可視化分析:分為兩部分項目監測預警和項目全景視圖。項目檢測預警是採用電子地

圖、數據可視化等技術對重大重點項目的總體情況、開竣工情況、投資情況、監測預警情況進行全方位展現。項目全景視圖是圖形化展現每個項目關鍵節點進展情況,實現對每個項目的全景展示。

4   資料庫設計

4.1 概念結構設計

概念結構設計目的是系統需求分析後,對系統的需求之間關聯,用圖形化簡單明了勾畫出整個系統的需求。讓項目開發人員。本項目是採用E-R圖來進行概念結構設計。

4.1.1設計思路

項目的資料庫設計是最基本最重要的一步,資料庫設計好壞與系統的安全性和易讀性直接相關聯。嚴格遵循資料庫設計的一對一設計原則、獨特命名原則、雙向使用原則。

本項目的用戶共有三個角色,項目法人可以進行項目申報,項目回饋,項目問題督辦,項目法人理論上支援一人申報多個項目和多次項目回饋。若申報的項目進入重點項目庫,那麼項目法人也會進行項目調度申請填報。也是支援有項目法人有多個重點項目,一個重點項目針對一個項目調度填報。項目調度通過則啟動項目。行業主管部門實體支援針對多個申報項目監督和處理。發改部門實體按照審批類型進行批閱多個項目。

4.1.2總體E-R圖

項目投資監管微信平台的總體E-R圖如下圖4-1所示:

 

 

 

圖4-1 項目投資監管平台總體E-R圖

4.1.3實體屬性設計

根據微信平台的設計實際需求,在資料庫設計當中主要涉及9個實體,分別是統計分析、項目法人、項目庫、發改部門、行業主管部門、項目檔案、前期事項清單、重點項目庫、系統管理員。

(1)     項目法人實體屬性圖

項目法人的實體的屬性包括用戶OPENID、用戶名、郵箱、愛好、電話、性別、年齡,其中項目法人OPENID為主鍵,

如下圖4-2所示:

 

 

 

 

圖4-2 項目法人實體圖

(2)     發給部門的實體屬性圖

發改部門的實體的屬性包括用戶OPENID、用戶名、郵箱、愛好、電話、性別、年齡,發改部門審批類型、審批項目數、登記評估分。其中發給部門OPENID為主鍵,

如下圖4-3所示:

 

 

 

圖4-3 項目庫實體圖

(3)     行業主管部門的實體屬性圖

行業主管部門人員的屬性有OPENID、用戶名、郵箱、愛好、電話、性

別、年齡,項目問題督察數、處理能力評估分。其中行業主管OPENID為主鍵,

如下圖4-4所示

 

 

 

圖4-4 行業主管部門實體圖

(4)     項目庫的實體屬性圖

項目庫實體屬性含有項目編號、項目名稱、項目類型、項目申請的時間、項目選址、項目申請人、項目申請人的聯繫方式,項目申請金額、其中項目編號為主鍵。

如圖4-5所示。

 

 

 

圖4-5 系統管理員實體圖

(5)     統計分析的實體屬性圖

統計分析的實體的屬性包括用戶項目編號、申請項目名稱、申請項目類型、申請項目的時間、項目的選址、項目申請人、項目申請人的聯繫方式、項目警告、項目清單、項目申請金額、其中項目編號為主鍵。如圖4-6所示。

 

 

 

 

圖4-6 統計分析實體圖

(6)     項目檔案的實體屬性圖

項目檔案實體屬性有用戶申請項目編號、申請項目名稱、申請項目類型、申請項目時間、項目選址、項目負責人、重點項目庫、項目歷史年度、項目負責人的聯繫方式,項目申請金額、其中項目ID為主鍵。

如圖4-7所示。

 

 

 

 

圖4-7 項目檔案實體圖

(7)     項目前期事項清單的實體屬性圖

項目前期事項清單的實體屬性有項目編號、項目紅牌、項目黃牌、項目警告、項目

審批情況、項目審批單位其中項目編號為主鍵。如圖4-8所示。

 

 

 

 

圖4-8 項目前期事項清單實體圖

(8)     重點項目庫的實體屬性圖

重點項目庫的實體的屬性包括重點項目id、項目當前年份、項目資訊對象、項目歷史

年度、項目報告列印、預備項目、其中項目id為主鍵。Project為外鍵

如圖4-9所示。

 

 

 

圖4-9 重點項目庫實體類圖

4.2 邏輯結構設計

資料庫的邏輯結構設計的內容是對概念設計階段中系統的功能結構分類、優化項目投資審核管理的數據模型。為建立資料庫和書寫資料庫文檔做好準備工作。

4.2.1 設計思路

(1)     對項目法人與項目庫的關係是1:N的關係,項目法人建立一張表格,以微信伺服器中

唯一識別OPENID作為主鍵,用項目庫資訊作為項目法人的外鍵進行關聯。項目法人可以申請多個不同類型的項目。

(2)     對「項目調度申請」關係,項目法人和發改部門是1:N的關係,在上面建立的項目法

人資訊表格後,另外的外鍵設置的是項目調度申請外鍵,用來存儲通過項目申請後填寫的項目調度的詳細資訊。

(3)     對「問題通知提醒」關係,項目法人實體和行業主管部門實體的關係是M:N的關係,

需要再建一個關係表-行業主管部門,用來項目法人申請項目的通知資訊和問題回饋資訊。

(4)     對「歸集」關係,實體行業主管部門和實體前期事項清單是M:N的關係,行業主管

部門針對用戶回饋的資訊形成事項清單,並存儲在前期事項清單表單上。

(5)     對「提交事務」關係,實體發改部門和實體前期事項清單是M:N的關係,將前期事

項清單數據保存,並用大數據可視化的角度展示給發改部門。

(6)     對「通過申請」關係,發改部門通過項目的申請關係是M:N的關係。通過項目申請並

且以微信後台資訊通知的形式發給用戶。

4.2.2 邏輯模型

  1. E-R圖轉換為關係模式

(1)     項目法人表(項目法人微信OPENID,項目法人昵稱,項目法人郵箱,項目法人帳號

密碼,項目法人性別,項目法人年齡,項目法人手機號,項目法人愛好,申請狀態,項目法人頭像,個人說明)

(2)     發改部門人員表(發改部門微信OPENID,發改部門人員的昵稱,發改部門人員的郵

箱,發改部門的帳號密碼,發改部門人員的性別,發改部門人員的年齡,發改部門人員的手機號,發改部門人員的愛好,項目審批評價得分,項目審批數量)

(3)     行業主管人員(行業主管部門微信OPENID,行業主管人員的昵稱,行業主管人員郵

箱,行業主管帳號密碼,行業主管人員的性別,行業主管人員的年齡,行業主管人員的手機號,行業主管部門人員的愛好,項目問題督辦,項目問題督辦評價得分)

(4)     項目庫表(項目編號,項目名稱,項目地址,建設性質,行業編碼,建設時間,行政區

劃程式碼,建設單位項目編號,項目申請單位名稱,項目申請組織機構程式碼,項目申請單位聯繫電話,項目聯繫人,項目聯繫人電話,項目聯繫人郵箱,單位地址,文件地址,備註資訊)

(5)     統計分析表(統計編號項目編號,項目警告,項目類型,項目列表清單)

(6)     項目檔案表(項目檔案編號項目編號,項目金額,項目負責人,項目地址)

(7)     前期事項清單表(事項清單編號,項目警告,黃牌警告,紅牌警告,項目批審情況,項

目審批單位)

(8)     重點項目庫表(重點項目庫編號項目編號,當前年份,歷史年份)

  1. 邏輯模型優化

(1)     對用戶表,在微信上三個角色登錄的郵箱、用戶名和密碼具有很強相似。避免建立

多表,所以在用戶登錄的資訊建立在一個表格,用type欄位來區分用戶登錄的類型。

(2)     前期事項清單,在前期事項清單中含有項目的基本資訊,所以在項目清單中增加一個

項目實體欄位,它關聯項目表的主鍵。在統計分析表格加了項目庫外鍵。關聯所有項目的審核情況和項目類型的情況。

4.3 物理結構設計

4.3.1 存取方式

依照本項目的業務,項目主要對數據的操作是查詢和插入,所以採用B+樹索引存取方法,提高資料庫的查找效率。

4.3.2 存儲結構

資料庫採用mysql作為存儲資料庫,並且採用了索引順序存儲、數據分離和快取優化技術。系統的資料庫表存儲採取順序存儲並對行欄位建立對應索引,對經常查詢的表進行數據分離,加快系統的查詢速度,並且對於系統中的一些不經常更新的查詢結果,將其存放在資料庫視圖中,節省了重複查詢的時間開銷。

根據邏輯結構設計得到的結果,將邏輯模型轉為mysql資料庫表,並根據欄位含義設計對應的物理類型,如下所示:

項目法人的資料庫表設計如表4-1所示:

表4-1項目法人的資料庫表

序號

欄位名

數據類型

欄位長度

是否主鍵

說明

1

age

varchar

255

項目法人年紀

2

phone

varchar

255

項目法人聯繫電話

3

openid

varchar

255

項目法人在微信伺服器的id

4

email

varchar

255

項目法人的郵箱

5

username

varchar

255

項目法人的名字

6

sex

varchar

255

項目法人的性別

7

love

varchar

255

項目法人的愛好

發改部門資料庫設計表如表4-2所示:

表4-2 發改部門資料庫表

序號

欄位名

數據類型

欄位長度

是否主鍵

說明

1

evaluate

varchar

255

對發改部門的評價

2

type

varchar

255

發改部門審批的類型

3

age

varchar

255

發改部門年紀

4

phone

varchar

255

發改部門聯繫電話

5

openid

varchar

255

發改部門在微信伺服器的id

6

email

varchar

255

發改部門的郵箱

7

username

varchar

255

發改部門的名字

8

sex

varchar

255

發改部門的性別

                                                                            續表4-2

9

love

varchar

255

發改部門的愛好

10

projectNumber

varchar

255

發改部門管理項目的名稱

行業主管部門資料庫表設計如表4-3所示:

表4-3 行業主管部門人員資料庫表

序號

欄位名

數據類型

欄位長度

是否主鍵

說明

1

age

varchar

255

行業主管部門年紀

2

phone

varchar

255

行業主管部門聯繫電話

3

openid

varchar

255

行業主管部門在微信伺服器的id

4

email

varchar

255

行業主管部門的郵箱

5

username

varchar

255

行業主管部門的名字

6

sex

varchar

255

行業主管部門的性別

7

love

varchar

255

行業主管部門的愛好

8

projectProblem

varchar

255

行業主管部門提交項目問題

9

evaluate

varchar

255

行業主管部門的評價

項目庫資料庫表設計如表4-4所示:

表4-4 項目庫管理員資料庫表

序號

欄位名

數據類型

欄位長度

是否主鍵

說明

1

projectid

int

10

項目的編號

2

projectname

varchar

255

項目名稱的名字

3

projectType

varchar

255

項目類型

4

projectTime

varchar

255

項目創建的時間

5

projectLocation

varchar

255

項目投資的地方

6

ProjectPhone

varchar

255

項目負責人的電話

7

projectMoney

varchar

255

項目金額

8

projectleader

varchar

255

項目負責人

項目檔案資料庫表設計如表4-5所示:

表4-5 項目檔案資料庫表

序號

欄位名

數據類型

欄位長度

是否主鍵

說明

                                                                               續表4-5

1

projectid

int

10

項目的編號

2

projectname

varchar

255

項目名稱的名字

3

projectType

varchar

255

項目類型

4

projectTime

varchar

255

項目創建的時間

5

projectLocation

varchar

255

項目投資的地方

6

projectPhone

varchar

255

項目負責人的電話

7

projectMoney

varchar

255

項目金額

8

projectleader

varchar

255

項目負責人

9

historicalyear

varchar

255

歷史年度

統計分析資料庫表設計如表4-6所示:

表4-6 統計分析資料庫表

序號

欄位名

數據類型

欄位長度

是否主鍵

說明

1

projectid

int

10

項目的編號

2

projectname

varchar

255

項目名稱的名字

3

projectType

varchar

255

項目類型

4

projectTime

varchar

255

項目創建的時間

5

projectLocation

varchar

255

項目投資的地方

6

projectPhone

varchar

255

項目負責人的電話

7

projectMoney

varchar

255

項目金額

8

projectleader

varchar

255

項目負責人

9

projectwarnning

varchar

255

項目預警

前期事項清單資料庫表設計如表4-7示:

表4-7 前期事項清單資料庫表

序號

欄位名

數據類型

欄位長度

是否主鍵

說明

1

id

int

10

登記人id

2

approvalitems

varchar

20

審批事項

3

approvalunit

varchar

20

審批單位

4

warnning

varchar

20

是否預警

5

yellowcard

varchar

20

黃牌警告

5   介面設計

5.1 介面關係圖或工作流圖

用戶管理模組的具體功能主要包括用戶(項目法人、行業主管部門人員、發改部門人員)資訊的查詢、修改、刪除功能。其中項目法人可以註冊自己的帳號、項目申請、項目調度和個人資訊回饋查詢。行業主管部門進行整理提交項目法人提交項目資訊。發改部門可以對項目法人申請的項目進行審批和項目調度的審批。並且可以查看自己的項目審批評分和整合項目數據的可視化分析。項目數據保存在資料庫,可以動態展示項目的資訊情況。

微信公眾號關係如圖5-1所示

 

 

 

 

圖5-1 固定資產投資監管微信平台系統頁面關係圖

5.2 介面設計成果

5.2.1 主介面

固定資產投資監管微信平台系統首頁,項目法人通過登錄進入首頁,展示出來首頁相關的功能如圖5-2所示。

 

 

 

 

圖5-2 固定資產投資監管微信平台系統首頁

5.2.2 子介面

(1)用戶個人資訊展示介面,在允許的微信公眾號獲取用戶資訊的條例的前提下。根據OPENID獲取資料庫存儲的用戶個人資訊中心頁面如圖5-3所示。

 

 

 

 

圖5-3 用戶個人資訊頁面

(2)項目法人首頁,項目法人擁有的功能有項目申請、項目申請情況和統計展示。在項目

法人的首頁有進行客服諮詢的介面。項目法人的功能操作的介面如圖5-4所示。

 

 

 

 

圖5-4 項目法人首頁

(3)項目法人的項目申請頁面,項目法人需要填寫申請的項目資訊,項目申請的資訊字

段經過正則表達式的校驗。項目法人的填寫項目基本資訊頁面如圖5-5所示。

 

 

 

 

圖5-5 項目法人項目申請頁面

(4)項目法人申請後的項目資訊和項目審核的結果將在這個項目資訊查看頁面展示

項目申請資訊頁面,如圖5-6所示。

 

 

 

 

圖5-6 項目申請資訊頁面

(5)用戶通過登錄後,系統將資訊通知模組展示給用戶,未讀的資訊將用紅色標記給用

戶展示出來通知頁面。用戶的資訊通知模組展示如圖5-7所示。

 

 

 

 

圖5-7 資訊通知頁面

(6)用戶在微信平台進行相關的操作後,將以微信平台資訊通知對方,項目法人申請項

目成功後,將這個消息用微信公眾號的資訊通知方式給用戶展示和提示。項目申請通過審核也用微信的後台通知對方。微信公眾號資訊通知如圖5-8所示。

 

 

 

 

圖5-8 微信平台資訊通知

(7)用戶可以對總體項目資訊查看。項目可視化展示,如圖5-9所示;

  

 

 

 

 

 

 圖5-9 項目可視化展示

(8)用戶可以對在使用微信平台上出現的問題進行回饋。項目法人對項目申請結果出現

的不滿意項目問題回饋頁面,回饋頁面如圖5-10所示。

 

 

 

 

圖5-10 在線項目問題回饋頁面

(9)在公眾號裡面出現業務不熟悉或者操作上的問題,需要尋求幫助的可以在線聯繫客

服頁面,也是符合政府類型的媒體便民惠民的一個政策。公眾號里聯繫客服的功能頁面截圖如圖5-11所示。

 

 

 

  

 

 

 

圖5-11 聯繫客服頁面

(10)發改部門人員對項目類型進行審核,發改部門人員審核的項目類型單一。不同項目

類型分發給不同的發改部門進行審核。
發改部門人員項目審核頁面,如圖5-12所示。

 

 

 

 

圖5-12 項目審核頁面

(11)發改部門人員進入了首頁,發改部門的首頁主要有查看項目資訊、重點項目庫和統

計展示的功能頁面,發改部門功能頁面如圖5-13所示。

 

 

 

 

圖5-13 發改部門功能頁面



6  
詳細設計

(1)    

(2)  
 

(3)  
 

(4)  
 

(5)  
 

(6)  
 

6.1 系統主要功能模組介紹

用戶管理模組的具體功能主要包括用戶(項目法人、行業主管部門人員、發改部門人員)資訊的查詢、修改、刪除功能。其中項目法人可以註冊自己的帳號。行業主管和發改部門人員部門進行管理員新增,只能是自己進行登錄和系統管理員進行新增。新增和修改主要體現在用戶點擊註冊和修改按鈕時當相應的操作(登錄,修改,新增,刪除)操作的情況下,資料庫中的用戶表資訊能同步更新。

6.2 用戶功能管理

6.2.1 功能結構設計

用戶管理的功能結構設計如圖6-1所示:

 

 

 

圖6-1 用戶管理功能結構圖

6.2.2 類圖設計

項目法人的註冊新增。個人資訊的修改、刪除以及查詢功能。項目法人涉及的類有UserInfo,CompetentInfo,CorrectionInfo,用戶處理類UserServlet,CompetentServlet,CorrectionServlet,用戶資料庫訪問類UserDao,CompetentDao,CorrectionDao,以及連接資料庫的類DataBaseConnection。實體類功能的關係如圖5-4所示:

 

 

 

 

圖6-2 用戶管理功能類圖

用戶控制器類的描述資訊如表6-1所示:

表6-1 用戶控制器類的描述資訊表

用戶控制器類

類的描述:負責響應用戶發出的請求資訊增加(僅項目法人)、刪除、查詢和修改的請求

操作描述

doGet(Request
req,

Response
res)

當用戶發送get請求的操作時候,響應用戶的發出的請求(登錄、查詢、修改、註冊),並進行相應的邏輯處理。將輸出流響應給用戶。並返迴響應的頁面給用戶。

doPost(Request
req,

Response
res)

當用戶發送表單/Post請求的操作時候,響應用戶的發出的請求(登錄、查詢、修改、註冊),並進行相應的邏輯處理。將輸出流響應給用戶。並返迴響應的頁面給用戶。

用戶實體類的描述資訊如表6-2所示:

表6-2 用戶實體類的描述資訊表

用戶實體類

類的描述:主要描述用戶的具體屬性和對應的方法

屬性描述

sex

用戶性別

age

用戶年齡

love

用戶興趣愛好

用戶父類超類描述資訊如表6-3所示:

表6-3 用戶超類實體類的描述資訊表

用戶超類實體類

類的描述:對三種類型用戶相同屬性的超類

屬性描述

UserName

描述系統用戶的名字

UserPassword

描述系統用戶的密碼

Email

用戶註冊的郵箱(忘記密碼的憑證)

OpenId

微信平台自動給用戶生成的一個openId

Phone

描述聯繫用戶的電話號碼

6.2.3 順序圖設計

用戶基本資訊操作的程式流程如時序圖6-3所示:

 

 

 

 

圖6-3 用戶基本資訊操作的時序圖

按照上圖類似,用戶在頁面發送一個請求到相應的Servlet類進行一些必要的邏輯性處理應用userInfo實體類將類屬性變數存在實體類當中調用相應的Dao包進行資料庫的操作返回數據給Servlet,Servlet將會對返回的數據進行邏輯處理將結果響應給用戶。

此處省略(3000字)。。。。

7.1 
程式碼實現與核心演算法

7.1.1  用戶登錄管理程式碼實現

(1) 用微信伺服器返回的code來確定是否在微信平台登錄:

if (code==""||code==null||request.getParameter("code").equals(null)||request.getParameter("code").equals(""))

(2) 用微信伺服器給的code換取OPENID:

    String url ="//api.weixin.qq.com/sns/oauth2/access_token?appid=wxcea26c733963d889&secret=e0d4867f02ecff50780971ec9698f5d4&code="+code+"&grant_type=authorization_code";
try {
    weiwei=get(url);
} catch (Exception e) {
    e.printStackTrace();
}

(3) 根據OPENID查詢用戶是否之前已登錄,並實現不同頁面跳轉:

if (UserLoginDao.LoginQuery(openid)==1)
       {
    request.getRequestDispatcher("User/PersonalCenter.jsp").forward(request,response);
            }
            else {out.print("您還未註冊,快來註冊吧!");
     request.getRequestDispatcher("UserLogin/UserLogin.jsp").forward(request,response);
            }

(4) 用戶未在公眾號登錄。頁面跳轉到註冊登錄頁面,下面是實現郵箱驗證碼註冊功能。

郵箱驗證碼生成及發送:

for (int i = 0; i < 6; i++) {//驗證碼隨機生成
        int r = rd.nextInt(10); //每次隨機出一個數字(0-9)
        code = code + r;  //把每次隨機出的數字拼在一起
    }
    public static String getEmailCode(){
    if(emailCode==null||emailCode.IsExpired()){
        random1();
    }
    return emailCode.getCode();
}
//郵箱驗證碼發送
    send.setAuthentication("[email protected]", "eymwdiwinzuabbaf"); //第一個參數是發送者的QQEamil郵箱   第二個參數是剛剛獲取的授權碼

郵箱十分鐘內填寫有效的限制:

  if(emailCode==null||emailCode.IsExpired()){
        random1();
    }
Date now = new Date();
    Date afterDate = new Date(now.getTime() + 600000);//設置十分鐘有效

用戶登錄演算法流程如圖7-1所示:

 

 

 

 

圖7-1 登錄演算法流程圖

7.1.2  項目庫管理實現

(1)     獲取項目申請的資訊

String p1_name=request.getParameter("p1_name");
        String p1_address=request.getParameter("p1_address");
        String p1_code=request.getParameter("p1_code");
        String p1_time=request.getParameter("p1_time");
        String p1_code2=request.getParameter("p1_code2");
        String p1_number=request.getParameter("p1_number");
        String p2_name=request.getParameter("p2_name");
        String p2_code=request.getParameter("p2_code");
        String p2_tel=request.getParameter("p2_tel");
        String p2_person=request.getParameter("p2_person");
        String p2_phone=request.getParameter("p2_phone");
        String p2_email=request.getParameter("p2_email");
        String p2_adress=request.getParameter("p2_adress");
//        String p3_file=request.getParameter("p3_file");
       
String p3_info=request.getParameter("p3_info");
        String value=request.getParameter("value");
        String openid=userInfo.getOpenid();
        response.setContentType("text/html");
        //上傳文件
    //獲得文件名稱
       
fileName = fileItem.getName();
       fileName = fileName.substring(fileName.lastIndexOf("\\")+1);
       String houzhui = fileName.substring(fileName.lastIndexOf("."));
       rename = UUID.randomUUID()+houzhui;

(2) 微信發送項目申報成功資訊模板:

    //發送模板
   
public static void sendTemplateMessage(String opneid){
        String url="//api.weixin.qq.com/cgi-bin/message/template/send?access_token=ACCESS_TOKEN";
        url=url.replace("ACCESS_TOKEN",ConnectWeChatServlet.getAccessToken());
        System.out.println(url);
        Calendar cal = Calendar.getInstance();
        String data="…項目申請成功…";
        String result=Joke.post(url,data);
        System.out.println(result);
    }

 

7.1.3  微信資訊類型回復實現

(1)     微信資訊類型識別處理實現

//接受微信伺服器的消息,用於處理所有事件的消息回復
private static String getResponse(Map<String, String> requestMap) {
    BaseMessage msg=null;
    String msgType=requestMap.get("MsgType");
    switch (msgType){
        case "text":   //文本消息
            msg=dealTextMessage(requestMap) break;
        case "image":  //圖片消息
            msg=dealImageMessage(requestMap); break;
        case "voice":  //語音消息
            msg=dealVoiceMessage(requestMap); break;
        case "video":  //影片消息
            msg=dealTextMessage(requestMap); break;
        case "shortvideo":  //短影片消息
            msg=dealTextMessage(requestMap); break;
        case "location":   //地理位置消息
            msg=dealLocationMessage(requestMap); break;
        case "link":     //鏈接消息
            msg=dealLinkMessage(requestMap); break;
        case "event":    //事件消息
            msg=dealEventMessage(requestMap); break;
        default:      //其他事件消息
            msg=dealTextMessage(requestMap); break;

(2)     微信公眾號自動回復資訊

private static BaseMessage dealTextMessage(Map<String, String> requestMap) {
    String msg =requestMap.get("Content");
    if (msg.indexOf("天氣+")!=-1){  //
        msg=msg.replace("天氣+","");
        String resp=Weather(msg);
        TextMessage tm =new TextMessage(requestMap,resp);
        return tm;}
    if(msg.equals("消息動態")){
        List<Article> articles=new ArrayList<>();
        articles.add(new Article("項目投資監管平台頭條推薦","川普宣布暫停想世衛組織撥款,聯合國秘書長表態!","//dss3.baidu.com/9fo3dSag_xI4khGko9WTAnF6hhy/super/crop=144,0,1728,1080/sign=d190fab2ba4543a9e154a08c2326beb6/203fb80e7bec54e754583e58b4389b504fc26a3b.jpg","//mp.weixin.qq.com/s?__biz=MjM5MjAxNDM4MA==&mid=2666309146&idx=1&sn=338c82dd3d13c42d30cf520e9041b1d0&scene=0"));
        NewsMessage newsMessage=new NewsMessage(requestMap,"1",articles);
        System.out.println("newMessage:"+newsMessage);
        return newsMessage;}
       if (msg.equals("幫助")){
        msg="【微信客服業務指導】\n" +
                "1、成語查詢  例如(成語:山清水秀)\n" +
                "2、天氣查詢  (1、直接對機器人說地方的天氣 2、發送:【例如】天氣+南昌)\n" +
                "3、語音聊天。\n" +
                "4、上傳圖片回復該圖片外網鏈接\n" +
                "5、客服"+
                "6、登錄個人中心"+
                "7、消息動態";
        TextMessage textMessage=new TextMessage(requestMap,msg);
        return textMessage;}
    TextMessage tm = null;
    try {
        String aa=ConnectWeChatServlet.robotchat(msg);
        JSONObject jsonObject=JSONObject.fromObject(aa);
        tm=new TextMessage(requestMap,jsonObject.getString("text"));
    } catch (Exception e) {
        e.printStackTrace();}return tm;}

微信消息回復演算法流程如圖7-2所示:

 

圖7-2 微信回復演算法流程圖

7.2  程式碼優化分析

對微信公眾平台功能開發的限制,本項目採用如下的優化方案:

(1) 採用對象存儲ACCESS_TOKEN時間限制

因為微信公眾平台訪問業務數據是結合ACCESS_TOKEN的資訊的交互。然而ACCESS_TOKEN訪問的次數有明確的限制。所以採用對象存儲微信伺服器發送的ACCESS_TOKEN。並增加一個過期的欄位,並設置其過期的方法。減少對微信伺服器的請求。加快訪問速度。

(2) 使用用戶視圖減少資料庫的壓力

在微信的可視化中,有著大量的數據訪問和數據交叉使用,直接資料庫訪問的話,大大增加載入的時間,使用戶等待的時間過長。大大的降低了用戶體驗度。

(3) 用StringBuilder/StringBuffer代替String字元串的定義

在微信項目申請中出現大量的字元串定義。用String類型定義的變數,java虛擬機會定義多個對象,對象進行操作後還要進行回收操作,大大降低了系統的性能。

(4) 採用資料庫連接池和執行緒池

使用資料庫連接池能夠有效的減少資料庫的頻繁打開和關閉,執行緒池可以減少執行緒創

建銷毀。

8 測試

8.1測試方案設計

8.1.1測試策略

項目投資監管微信平台項目的測試不僅有單元測試、白盒測試,還額外增加性能測試、負載測試和兼容性測試共五種測試原則來進行,其中單元測試為對連接微信伺服器的數據交互的功能是否符合預期結果的測試;白盒測試是結合微信伺服器的數據請求的每個功能節點進行的測試,測試數據顯示的情況。性能測試主要測試功能顯示是否正常測試和多名用戶使用下系統的穩定性的一種測試。負載測試是測試用戶使用的對象在承擔不同工作量下所表現能力。兼容性測試是用戶使用內核不同的手機進行的功能測試。

8.1.2測試進度安排

對於微信公眾平台的測試分為以下幾個部分和時間段進行,本系統的測試進度安排如下表8-1所示:

表8-1 測試進度安排表

測試階段

測試任務

測試日期及用時

單元測試

對系統的每個功能測試,邊測試邊開發

第8學期4~7周

白盒測試

對系統微信平台的數據交互進行不同消息類型的回復

第8學期第6周

性能測試

對系統的各個功能點進行連接速度的測試和在多個用戶同時訪問的時候數據流量承載能力。

第8學期第6周

負載測試

對項目中的功能對象是否在不同工作量條件下的性能測試

第8學期第7周

兼容性測試

對微信平台處於不同的移動端作業系統(IOS和Android)功能是否顯示正常

第8學期第7周

8.1.3測試資源

為項目系統功能和性能測試更貼近真實情況,增加了如下的硬體資源的測試,測試資源如下表8-2所示:

表8-2 硬體測試資源表

硬體環境

資源類型

資源描述

數量

電腦硬體

Intel I7 8G記憶體 256G固態硬碟

1

作業系統

Windows 10

1

JDK

JDK 1.8

1

續表8-2

瀏覽器

Chrome 瀏覽器

1

文件部署伺服器

FileZilla Client

1

伺服器的連接

Putty

1

手機

支援微信APP的智慧手機-WeChat4.0以上

1

為了更好的使用微信公眾號的應用的資源環境最低要求

表8-3 軟體測試資源表

軟體環境

資源類型

軟體

應用資料庫

MYSQL 5.6以上

應用伺服器

Tomcat 8.5.1版本

伺服器

騰訊雲伺服器1核 2GB 1Mbps

系統盤

高性能雲硬碟

8.1.4關鍵測試點

(1)用戶在微信平台以外能否正常提示微信平台登錄

(2)用戶是否進行項目申請和項目調度問題回饋。

(3)問題督辦頁面是否能進行對項目法人的資訊進行歸集和簡單的處理。

(4)發改部門是否能進行項目的審核並且用微信消息模板通知用戶。

(5)用戶是否能在較短時間查看到項目的可視化展示頁面。

8.2測試用例構建

8.2.1測試用例編寫約定

(1)對於不同身份的用戶登錄進行設計多個測試用例。

(2)對於頁面INPUT表單提交的功能測試,輸入數據測試採用等價類劃分的原則,選取不同的輸入類型和數據範圍

(3)測試用例的用較少的數據測試範圍更廣的數據類型,降低測試用例中數據耦合度。

(4)無論任何時候,測試用例能夠返回胡一個數據結果,以便查看測試的效果。

8.2.2測試用例設

基於微信公眾項目的特點,測試用例設計是程式功能流程圖與介面關係圖入手,書寫出測試用例中的執行步驟和測試用例的每一步的預期結果。採用單元測試和白盒測試。對微信平台客服端的輸入消息以及回復消息的進行測試,對微信平台的關鍵功能的程式碼執行分步的流程進行設計。此過程中,主要用到的測試用例設計:

(1)等價類劃分法

用等價類劃分法將測試數據分化成幾個範圍數據,在每個數據類裡面尋找一些特殊和普通數據進行測試。

(2)邊界值法

系統對數據查詢採用循環語句開發時候,經常有不同從0開始和大於小於和大於等於小於等於的方法混用導致系統功能出現偏差。採用數據的邊界值可以很好解決這些問題。

(3)判定表法

微信平台中有一些邏輯比較複雜的功能點,例如不同用戶登錄時候微信伺服器發送Code數據然後用code去微信伺服器換回ACCESS_TOKEN,然後用ACCESS_OPENID換回OPENID,用OPENID獲取用戶類型,查找用戶登錄的類型進行不同的也愛你跳轉。所以需要對數據採用嚴密的測試,以保證正常的顯示和操作。

8.2.3關鍵測試用例

本項目部分關鍵功能的測試用例,如下表8-4所示:

表8-4 問題模組測試用例

測試目的

測試用戶首頁的功能

預置條件

正常登錄並且進入到相對應的用戶首頁

序號

測試步驟

預期結果

1

點擊「項目申請」按鈕

進入到項目申請的表單提交頁面

2

在項目申請介面,輸入表單相對應的數據和格式。並點擊提交

項目申請成功,並且微信客服端有資訊通知跳轉到項目申請資訊頁面

3

在項目申請介面,輸入錯誤的數據類型

提示框顯示對應欄位輸入格式錯誤,取消提交

4

在問項目申請情況介面,點擊自己已申請完成的項目

在項目的下面顯示該項目的所有資訊。

5

點擊統計展示介面按鈕

展示所有項目資訊,並可視化展示。

6

點擊聯繫客服按鈕

QQ客服聊天頁面

7

點擊多維度報表按鈕

可視化展示項目清單資訊

8

點擊「項目回饋」按鈕

展會郵箱回饋給管理員

9

點擊「加入我們」按鈕

跳轉到QQ官方群裡面

測試狀態

已達到「測試」要求

測試結果

功能顯示正常

       

8.2.4測試用例維護

在開發過程中,功能需求方法可能變化,或者伺服器承載有限,導致現有的測試用例覆蓋不完善,此時需要重新增加測試用例來覆蓋修改後的系統。

依據不同行業的不同項目生成項目調度清單,並向用戶發送資訊模板和項目各階段預警完成時間。找到更多合適測試方法、覆蓋面廣的測試方法去發現系統中的錯誤。

9    總結與展望

9.1設計工作總結

在這個互聯網高速發展的時代,人們在獲取資訊和工作方式有了巨大的改變。也促使著我們不斷學習獲取最新有效的技術。為了結合中國最大的社交平台與創新精神結合。開放固定資產投資監管的平台,鼓勵項目法人創造更多效率更高的生產力。項目申請合理分配、有效挖掘出更有利的項目投資,從項目的可行性、回報周期和社會項目的需求,藉以實現組織目標的管理活動。為了測試項目開發的功能健全性。建設一個統一、完整、規範的重大重點項目資訊庫及服務監管平台。

本文的主要工作包括以下幾個方面:

(1)     實現1庫(項目庫管理)、3核(前期工作管理、項目調度管理和問題督察管理)、1端

(微信平台移動端)和1屏(綜合分析展示系統)。

(2)     項目申請模組、資訊通知模組、客服聯繫模組、項目資訊展示模組、項目問題回饋資訊

模組的設計與實現。

(3)     實現全覆蓋管理、全流程管理、全可視管理功能。

在對這個微信開發整個設計與開發過程中,對數據交互和MVC框架有了更深層次的了解。分層的思想有了更深刻的領悟。在學習微信平台開發過程,自己學會了怎麼利用官方文檔去學習和利用,實現自己的需求的功能。自己編寫程式碼的效率提升很多。我使用的是java語言實現,這樣下來加強了我的java架構把握和編程能力,更重要的是給了我一種寫大項目的整體架構。在畢業項目中,微信平台實現的特殊性,自己購買了騰訊雲伺服器,溫故了對linux伺服器系統的操作命令。利用騰訊雲的資料庫的與自己項目數據進行對接,溫故資料庫的語言。在這次畢業論文的工作中,我通過對軟體工程結構化與面向對象的理論思想的初步實踐,理解書本上的每個步驟是多麼的關鍵且不可替代,者此畢業設計給我軟體開發很大的幫助和視野,讓我明白自己需要還有哪些不懂,需要自己繼續前進。

9.2未來工作展望

雖然本項目的微信平台實現了預期的設計目標,但是由於微信公眾號的局限性,一些功能,例如微信公眾號平台的卡卷、智慧設備接入、周邊搖一搖的功能需要服務號開給開通。所以以後這些功能還需要有待加入測試完善。這樣用戶在申請項目金額的時候就可以更好的給用戶更佳的體驗。這樣給平台的發展前景會越來越好。

 

 

謝 辭

本論文的順利完成,感謝華東交通大學老師們知識傳授和江西聯微企業班班主任胡桂虹老師不厭其煩細心指導,讓我有效地完成了論文所要求的知識積累,也益於黎小龍導師從選題到手機資料和論文確定、開題報告準備的幫助,在此對這些表示十分感謝!另外,特別感謝大學四年里指導我的老師和學長們的幫助,指導我編程思想和技巧,你們打開了我的編程之路,你們的指導與教誨一直記在我心!

感謝和一起一路走下來的異校的同學,同樣對編程比較感興趣的同學,每天的學習動力有很大一部分是來源你們。是你們讓我會有每天毒藥學習一點,然後晚上和你們一起分享今日的收穫!那個時候是我最開心和幸福的時刻。

在大學的四年裡面,父母的支不懂我的專業,但是父母會一直支援我現在所做的一些。正是因為他們的那份肯定和信任。更使我繼續努力前進的動力。由於軟體工程的特殊性經濟壓力給父母帶來很大的負擔,感謝學校的獎學金讓我有緩解之痛。希望以後自己能靠自己能力去為社會帶來一份收益,同樣為父母帶來更多快樂和幸福。

非常感謝江西聯微的胡老師給我畢業設計階段上的指導,選題討論、論文格式要求,每周給每個小組開會,了解和監督我們的項目進展。並且在做的不好的地方會仔細的校正。老師的這種無私奉獻精神。在此我向她表示我誠摯的謝意。

同時,感謝所有任課老師和所有同學在這四年來給我的指導和幫助不僅教會我很多的知識,更是能映射出做人的準則。在此向他們表示由衷感謝。



參考文獻

[1]全國投資項目在線審批監管平台網站。網址://www.tzxm.gov.cn/

[2]微信公眾號開發概述|微信開放文檔。網址://developers.weixin.qq.com/doc/offiaccount/Getting_Started/Overview.html

[3]龔讓聲.微信公眾平台二次開發關鍵技術[J].電子技術與軟體工程,2019,(3):46-47.

[4]王俊歡.響應式布局在微網站中的應用研究[J].現代電腦(專業版),2019,(28):48-51.

[5]尤鴻霞.微信公眾平台開放的API和各項高級功能建設[J].微信公眾平台應用開發實戰,2017,(10):268-269.

[7]霍斯特曼科內爾.Java核心技術[M].北京:機械工業出版社,2019.

[8]林寒超.Hibernate技術的研究[J].電腦技術與發展,2019,16(11):112-113.

[9]王學鳴.微信公眾號的現狀、類型及發展趨勢研究[J].無線互聯科技,2019,(5):60-61.

[10]趙國旭.關於「民航擺渡人」微信公眾號開發運行的報告,2019

[11]鍾志勇.微信公眾平台應用開發實戰,2019,(28):48-51.

[12]李廣鵬.基於微信平台的掌課課程設計開發研究[J].山東商業職業技術學院學報,2019,01:24-27.

[13]武高峰.哈密林果微信公眾號系統開發[D].北京林業大學,2019.

[14]劉莉,王健慶.基於微信開發模式的學院微信平台開發與實踐[J].福建電腦,2019,11:120-121.

[15]李珍.論微信公眾平台自媒體的發展問題及應對策略[D].湘潭大學,2019.

[16]李嘉,任嘉莉,劉璇,范靜.微信公眾平台的用戶持續使用意願研究[J].情報科學,2019,10:26-33+55.

[17]李權.基於微信公眾平台的混合式學習模式研究[D].重慶師範大學,2019.

[18]丁如梅,范靜,金艷,王懷寧.微信公眾平台在胰腺外科護理管理中的應用[J].中西醫結合護理(中英文),2019,02:146-148.

[19]高麗,梁海英,白小花,梁麗敏.微信平台在腰椎間盤突出症病人術後延續護理中的應用[J].護理研究,2017,06:758-760.

[20]劉康,徐同坤.基於提高學生興趣和實踐能力的Java程式設計微課教學改革研究[J].電腦迷,2019(01):224.
[21]任灝榕.基於J2ME的Java手機遊戲開發技巧[J].電子技術與軟體工程,2019(02):46.
[22]雷靜,葉煜.融入資訊化教學手段的高職Java語言程式設計課程教學模式探索與實踐[J].當代教育實踐與教學研究,2019(01):15-16.
[23]張之涵,譚霞,溫克歡,魏恩偉.基於Android和Java編程的家庭智慧用電管理系統設計[J].自動化與儀器儀錶,2019(01):121-124.

[24]李運.高校應用文寫作學情調查及基於微信公眾號開發的資訊化教學對策研究——以天津中德應用技術大學為例,2019(000),007

[25]馮志強.基於微信公眾號開發與使用技術,2019(000),009

[26]易偉.微信公眾平台搭建與開發揭秘,2019(12),002

[27]Ge Wang;Wei Zhang;Runxi Zeng.WeChat use intensity and social support: The moderating
effect of motivators for WeChat use2019(91),FEB.

[28]Xu, Xi;Yao, Zhong;Sun, Qing.Social media environments effect on perceived
interactivity: An empirical investigation from WeChat moments, 2019(43),2

[29]Chen, Yanhong;Lu, Yaobin;Wang, Bin;Pan, Zhao.How do product recommendations affect impulse buying? An
empirical study on WeChat social commerce, 2019(56),2

[30]Jia,Xu;Junbin,Wang;Xiaoxin,Wang;Pin,Lv. A novel online testing system based on the WeChat
platform, 2019(27),4

[31]Diana
B.Kontsevaia,Paul D.BergerMobile.Marketing in China: Can WeChat Turn Their New
Advertising Strategy into a Sustainable Advantage?2019(42),6



附錄A 外文翻譯—原文部分

Original source:
//doc.xuehai.net/bdc5b148a3c8c5ab962032f13ccdba6b154cc92b4.html

Mobile Marketing in China: Can WeChat Turn Their New
Advertising Strategy into a Sustainable Advantage?

Abstract

WeChat is the Chinese
equivalent of Facebook. In this paper, we examine mobile marketing in China,
and specifically focus on WeChat』s strategy in opening up its platform to
advertising. There is profit potential and also risk potential for WeChat in
adopting this strategy. We discuss aspects of this strategy along various
dimensions, compare WeChat and Facebook where relevant, and stress how and why
WeChat needs to be cautious as it goes forward, to avoid various pitfalls that
were handled unsuccessfully by Weibo. Core issues that are discussed include
differentiation, personalization, customer perception, and the uniqueness of
China and the Chinese consumer.

Keywords: WeChat, mobile marketing, social media, marketing in
China

1.Introduction

Mobile marketing is the latest acclaimed marketing strategy. At a time
when other marketing channels are said to be losing effectiveness, 「mobile」 has
become the best way to reach consumers. Executives from North America are
flocking to mobile as the biggest new solution. 「Your mobile device quickly has
become the easiest portal into your digital self,」 proclaims Phil NICKINSON
from Android Central. And Google』s Eric Schmidt believes that 「Mobile is the
future, and there』s no such thing as communication overload.」 In sum, the
marketing world currently loves mobile marketing! Before getting carried away
by wonderful quotes about mobile and its place in everyone』s future, however,
one might reflect on the following phrase from Matt Haig, author of Mobile
Marketing: The Message Revolution: 「End users, not technologies, shape the
market. Consequently, marketers need to stay abreast not only of technological
developments, but also, of the way people respond to them」 (Haig, 2002). In
other words, while talking about mobile marketing, it is vital not to forget
the users and the place they occupy in the mobile marketing world. In some
ways, this mirrors the very long-standing concept usually applied to new
products, but also to new services: the distinction between tech-push and
demand-pull, and the recognition of both.

2. WECHAT:
The App Th at 「Stole」 Mobile in China

WeChat emerged in 2011, and started out as a purely text-messaging
platform created by Tencent Holdings. By 2015, the platform boasted some 600
million daily-active users (Bao, 2015). Its tremendous growth over the last
five years disrupted the telecommunications business, by replacing the need to
send SMS, and even replaced the need for phone numbers, as people share their
WeChat IDs, rather than phone numbers or e-mail addresses. Moreover, since its
launch, WeChat has developed an array of applications within its own app. For
example, it added a payments system connected to JD.com, one of China』s biggest
online stores, ensuring that people increasingly shop on WeChat』s own platform.
This, in turn, hurt Chinas e-commerce giant, Alibaba, dominant on the
e-commerce scene until then (Rein, 2015). WeChat users can join the network by
either giving their WeChat ID, by scanning a personalized QR code, or simply by
shaking the phone and letting the device read the other people who have WeChat
and are in the area. The massive number of users   WeChat
has attracted has not gone unnoticed by Chinas commercial sector. There are QR
codes everywhere: on tables, TVs, and billboards, so people can scan them and
subscribe to their favorite (or at least moderately interesting) brands in an
instant. Businesses have been known to successfully connect with their
constituents using the platform by making their own profiles.

3. Differentiation
and Revenue

According to Juniper Research, it will be a struggle for mobile
messaging companies to sustain revenue, despite growing traffic (Juniper
Research, 2015). Many predictions have been made that argue that just because traffic
is going to increase, so will the revenue (e.g., SUFANG et al., 2016). Juniper
shows, however, that this is not necessarily the case. According to their
research, the revenue generated from each message sent over apps similar to
those of WeChat will be less than 1% of what will be generated from SMS and MMS
(Juniper Research, 2015). They predict that, despite the doubling of mobile
traffic, free-messaging platforms will struggle to turn that traffic into
revenue, even for advertising-enabled platforms. In light of possible
stagnation of revenue from mobile messaging platforms, will a mobile marketing
strategy hurt WeChat』s revenue by weakening its focus on users? First, lets
examine other companies which have been successful with native advertising, and
their future strategies.   

3.1
Facebook: Why Mobile Needs to Differentiate
  

Facebook started out as a single social website based in the United
States and has since expanded its universe to include a variety of apps such as
WhatsApp, a text communications app, Instagram, a photo sharing app, and
Messenger, Facebook』s own text messaging app. Facebook』s biggest challenge in
an immensely competitive space is to ensure that their users stay engaged with
their universe. Acquisition of apps such as WhatsApp and Instagram was a way to
ensure that Facebook gets access to a variety of user data, even when users are
not directly connected to Facebook (Johnson, 2016). Of course, Facebook needs a
lot of data to sustain their main source of revenue: native advertising. Facebook
began using native advertising in 2011. While it did not exactly invent the
practice, Facebook is the one that perfected it, by giving businesses access to
an unprecedented product—a social-media platform that revolutionized
communication, and thus, became ingrained and entrenched in the world』s mind.
Facebook ads work on a pay-per-click or pay-per-impression basis, and vary in
price, depending on the type of audience being targeted. Many businesses jumped
on the opportunity to not only connect with customers using their social
profiles or 「pages,」 but also to directly impress upon a tailored audience.
Indeed, Facebook remains one of the platforms with the most detailed targeting
options available. Despite Facebook』s using their community as their main
product, they have been very successful in remaining the number one
social-media platform and have steadily begun their migration to mobile. In
2014, Facebook』s Messenger was the number one messenger accessed per month in
the USA, followed by Google+, then SnapChat, and fourth being Facebook-owned
Instagram (Kokalitcheva, 2015). However, there are more changes coming. In the
fast world of mobile advertising, it is no longer effective to rely on users
simply logging in onto a network. People have to be engaged; otherwise there is
no utility for them in using an application. That is why, in recent years,
Facebook has put a lot of focus on developing its messaging platform into an
all-around communications platform. Its latest challenge is to integrate
services and eventually, payments, to ensure that users can derive continued
benefit (Gottfried, 2013).

While diversification of its product may seem natural, it also comes at
a time when Facebook posted drops in advertising revenues (Johnson, 2016). The
revenue drop suggests that monetizing ads might no longer be enough to sustain
growth in the long run, and that other business models might be necessary. The
drop in revenues and differentiations supports Juniper Research findings that
user growth does not always equal revenue growth, despite the disbelief it has
received in the literature.

3.2 Revenue
from New Markets

Even if Juniper Research is wrong and the text messaging business will
continue to grow at the current pace, turning traffic into revenue, it is not
apparent how WeChat   could replicate the same
success as Facebook. Recently, Facebook』s ad revenue came mainly from foreign
countries, rather than from inside its 「home」 country, the United States
(Gottfried, 2013). That is primarily because people in the U.S. have likely
become desensitized to social ads, if not leaving the platform altogether.

If WeChat』s user base becomes similarly desensitized, expansion into
foreign markets will prove very difficult, because 93% of its operations is
concentrated in the Chinese Mainland. They have a small presence in the U.S.,
Hong Kong, Europe and other locations, but as noted, these markets account for
only about 7% of their influence (Marketline2013). While WeChat can spend
resources at dominating other local markets, it is unlikely that they will be
able to replace the competition already within those countries. In fact, WeChat
owes its beginning success to its own innovation in its local market. For
example, by adding a voice note it became a very useful tool, taking into
account how the Chinese language is structured (Rein, 2015). Its entry into
foreign markets would have to replicate the same vigor and localization they
showed in their home market, which could be difficult and expensive, and may
even require help from a local partner.

4. Customer
Perception and Personalization

4.1. Chinese
Consumers and Mobile Marketing

The Chinese consumer perception of mobile marketing has changed over
time. While blanket marketing no longer works, personalized, timely ads, can still
be effective. Utility is the key. Research conducted in Taiwan in 2006
suggested that users very much disliked the idea of mobile advertising; the
majority perceived mobile ads as 「annoying, excessive and offensive (SUFANG et
al., 2016). In fact, when people received mobile advertisements, most put it
aside to read later. Mobile was not an effective communications channel. Since
then, however, both practices and perceptions of mobile marketing have changed
significantly, and mobile marketing has become much more targeted, localized
and optimized.

When mobile ads are optimized, consumers tend to tolerate them much
better.

What does optimized entail? It could mean security, localization for the
market, delivering ease of use, or serving a specific purpose, such as
communication or payment, or any combination of these. Adaptation to a certain
market plays a limited role, in that there are specific features that Chinese
consumers will appreciate, such as the ability to easily compare products and
prices when shopping. Yet, that』s not the most influential characteristic when
it comes to Chinese consumers desire to spend time and money on mobile. In
fact, what had the most positive effect on mobile purchase behavior is
perceived usefulness (Gong et al., 2013). Therefore, the more uniquely useful
the app, the more people will continue to use it. Services, again, play the
central role in customer satisfaction. How is WeChat going to grow its revenue
through ads, without compromising the current utility it has made for itself?

4.2 Dangers
of Over-Advertising

WeChat knows that there is a potential risk of losing some of its user
base. Thus, it began implementing mobile ads very cautiously. Asians, on
average, are less receptive to ads imbedded in mobile, as compared to Europeans
and Americans (Olson, 2015). So, WeChat restricted access to its users. Indeed,
at first, only vendors who talked directly to the platform could launch a
campaign.   There is a reason WeChat was aware
that it needed to be cautious when implementing ads. It learned from Weibo』s
experience only a few years before, when Weibo did the same thing with mobile
marketing. Weibo is China』s Twitter-like microblogging platform that saw a
rapid decline in its user base after it overwhelmed its users with a nonstop
myriad of ads (Olson, 2015). Weibo ended up losing a lot of market share (to
WeChat) because users were dissatisfied. Using Weibo’s service simply became
less useful to (former) users, because of the effort of getting past the ads.
Restricting access to its audience was one of the best things that WeChat could
do in order to get access to potential revenue from ads, and yet keep its users
faith. As the program grows, however, the protection of users is likely to
become de-emphasized, and more and more ads will appear in user feeds.

4.2 Data
Protection

Data security could become a problem in the future. With the increased
need for   information about target audiences,
many social-media platforms are now turning to mining images that are found on
peoples profiles as a source of information (Macmillan, 2016). Given WeChat』s
fairly basic targeting-scheme, it seems unlikely that they will employ this
technology soon; but, if they are to compete with the likes of Facebook, it is
only a matter of time until they also have to adopt similar technologies to
provide the most transparent view of their audience. All this does is to
guarantee that the users are no longer at the center of the product; rather,
the users become the product.

WeChat has been excellent thus far in guessing its user needs, and has
seen great growth because of that. By entering into the world of mobile
marketing, it may have endangered its position simply by switching their main
user-base from the people using the app, to the companies who will pay for
their ads.

4.3 Me-Marketing

Alongside short-term revenue, WeChat』s entry into mobile advertising is
meant to push the envelope and immediately begin with personalized marketing.
WeChat already showed that its advertising is going to be completely different,
by raising demand for its premium users. Yet, it』s unclear how this model will
evolve in the future. Will WeChat lower its prices and become China』s
equivalent of Facebook advertising? If so, why not start out with low prices
from the beginning, as Facebook did? The strategy is especially unclear,
because the first ever campaign it conducted raised a few eyebrows and bruised
some egos. The first campaign was signed with BMW. BMW wanted to target only
affluent, educated people in the so-called first and second tier cities
(Beijing, Shanghai and other large cities). People who did not fit the
targeting criteria saw ads for soda and smartphones instead. People who did fit
the category saw BMW ads pop up on their Moments page. The highly-anticipated
opening to WeChat』s own platform was noticed by many, and many also noticed the
blatant targeting. While the BMW』s brand soared immediately after the campaign,
it soon received a backlash, as people who did not see BMW』s ad appear in their
newsfeeds began referring to themselves as DIAO, a polite term for loser (Loras,2015).
WeChat came away happy with the additional press the campaign received; yet, it
managed to alienate some of its community in return for securing a bold entry
into the world of mobile marketing. Alienation, obviously, is not useful to
engendering success.

5 In Summary—Focus
On Utility

WeChat grew into a huge, successful application, as a result of a
combination of fortunate events and Chinese socio-cultural needs and
characteristics. It began its successful rein as an innovator for the Chinese
market, creating new app features specifically useful for the Chinese speaking
population. Moreover, as noted earlier, little separation between private and
professional life in China aided WeChat』s journey to becoming the one app that
dominates the Chinese ecommerce, social media and telecom space. Tencent,
WeChat』s parent company, also had an easier time than similar global companies
such as Facebook, in terms of data-privacy issues, as it strongly cooperates
with the Chinese government. It also indirectly benefits from the fact that it
is difficult to carry a civil case through the Chinese court system.

From the beginning, Tencent』s WeChat put the customer at the center of
its platform; thanks to that, it reaped huge benefits. Interestingly, this is
not a 「rocket science idea. For many years, the biggest change in the field of
marketing, accompanied by the use of the internet, has been the movement from a
transaction-based approach to a customer-centric approach. WeChat’s approach
can be thought of as yet another extension of this very prevalent principle.

WeChat first dominated Chinese communications, then payments, and now it
is moving into becoming a full-fledged mobile social-platform, including mobile
advertisements. Its success with this will depend on two vital factors. The
first is that mobile ad revenue may actually decrease in the long run, despite
increasing traffic. The evidence of this potential decline is exemplified by
Facebooks attempt to differentiate their offering the way WeChat already has,
by incorporating payments and other services within its own application.

The second vital factor is to remain relevant to its users. WeChat』s
platform cannot work if all its users decide to leave. Are people actually
going to be receptive to seeing ads among their Moments? Historically, Chinese
users have not been too friendly to over-advertising, as the case of WEIBO
decline suggests. Plus, WeChat may have already started off on the wrong foot
with its first campaign featuring BMW that targeted only WeChat』s affluent
users. Furthermore, there may be growing privacy issues that the Chinese
government and society have yet to tackle—for example, issues such as image
mining. At what point will brands actually be infringing on user privacy?

The good news for WeChat is the fact that Chinese consumers seem to care
mostly about the usefulness of their apps. Security and ease-of-use concerns do
not influence their online behavior positively or negatively. The users who are
already online understand the implications of engaging with online platforms,
and giving up some private data does not discourage them from engaging and
shopping online. As a result, WeChat must focus specifically on remaining
useful to its user base—exactly how it was when it started out.

Mobile advertising is a potentially huge source of revenue, especially
in the short term. To be sustainable in the long-run, however, WeChat must
remember that mobile interaction is not just about the technology and the
revenue. Rather, it』s also about the user and the utility the users are able to
derive. Users are the ones who shape the market, by choosing to log-on to a
given social or mobile platform. Since it is their choice, mobile platforms
must keep in mind that their users needs and their experience on the platform
is what matters most, or else they risk that their users may log-off forever.



附錄B 外文翻譯—譯文部分

原文出處://doc.xuehai.net/bdc5b148a3c8c5ab962032f13ccdba6b154cc92b4.html

中國的移動營銷:微信公眾號廣告營銷轉化為可持續的競爭優勢嗎?

摘要

在中國微信相當於是Facebook。一個應用抗震計算題/程式。在本文中,我們研究了中國的移動營銷,特別是微信在公共平台方面的廣告策略。Wei信的廣告策略既有盈利潛力,但也暗含風險。我們全面分析了這一廣告策略,比較了微信和Facebook的相關性,並強調了微信在發展過程中需要警惕的方面,以免重蹈微博的覆轍。本文討論的核心問題包括差異化、個性化、客戶感知以及中國消費者的獨特性。

關鍵詞:微信,移動營銷,社交媒體,中國營銷

1.介紹

       移動營銷是最新備受好評的營銷策略。在據說其他營銷渠道正在失去效力的時候,「移動」已經成為接觸消費者的最佳方式。北美的高層們正蜂擁而至,將移動作為最大的新解決方案。Android中心的Phil Nickinson宣稱:「你的移動設備很快就成為了進入數字自我的最簡單的門戶。」。而Google的埃里克·施密特認為「移動是未來,不存在通訊過載的問題」,總之,營銷界目前熱愛移動營銷!然而,在被有關移動及其在每個人的未來中的地位的精彩引述所陶醉之前,人們可能會反思一下《移動營銷:資訊革命》一書作者馬特•黑格(Matt Haig)的一句話:「最終用戶而非技術塑造了市場。因此,營銷人員不僅要跟上技術發展的步伐,還要跟上人們對技術發展的反應」(黑格,2002)。換言之,在談論移動營銷時,千萬不要忘記用戶以及他們在移動營銷世界中所佔據的位置。在某種程度上,這反映了通常應用於新產品和新服務的長期概念:技術推動和需求拉動之間的區別,以及兩者的認可。

2.微信:中國「偷」手機應用

       微信出現於2011年,最初是騰訊控股創建的純簡訊平台。到2015年,該平台每天擁有約6億活躍用戶(Bao,2015)。它在過去五年中的巨大增長通過取代發送簡訊的需求,甚至取代了電話號碼的需求,擾亂了電信業務,因為人們共享他們的微信ID,而不是電話號碼或電子郵件地址。此外,微信自推出以來,已經在自己的應用程式中開發了一系列應用程式。例如,它增加了一個與中國最大的在線商店之一JD.com連接的支付系統,確保人們越來越多地在微信自己的平台上購物。這反過來又傷害了中國的電子商務巨頭阿里巴巴,阿里巴巴在此之前一直在電子商務領域佔據主導地位(Rein,2015)。微信用戶可以通過提供自己的微信ID、掃描個性化二維碼或簡單地搖動手機,讓設備讀取微信用戶和該地區其他人的資訊來加入網路。微信吸引的大量用戶並沒有被中國商業部門忽視。到處都有二維碼:在桌子、電視和廣告牌上,人們可以掃描二維碼,然後立刻訂閱他們最喜歡的(或者至少是有意思的)品牌。眾所周知,企業通過製作自己的簡介,成功地與使用該平台的成員建立聯繫。

3.差異化與收益

       據Juniper Research稱,儘管流量不斷增長,但移動通訊公司仍難以維持收入(Juniper Research,2015年)。許多預測認為,僅僅因為交通量會增加,收入也會增加(例如,Su fang等人,2016年)。然而,刺柏表明,情況未必如此。根據他們的研究,通過與微信類似的應用程式發送的每條資訊所產生的收入將低於簡訊和彩信所產生收入的1%(Juniper research,2015年)。他們預測,儘管移動通訊流量翻了一番,免費資訊平台將很難將流量轉化為收入,即使是廣告平台。鑒於手機簡訊平台的收入可能停滯,移動營銷策略是否會削弱微信對用戶的關注,從而損害微信的收入?首先,讓我們來看看在本土廣告方面取得成功的其他公司,以及它們未來的戰略。

3.1Facebook:為什麼移動需要與眾不同

       Facebook最初是一個單一的基於美國的社交網站,後來擴展了它的應用範圍,包括各種應用,如WhatsApp,一個文本通訊應用,Instagram,一個照片分享應用,以及Facebook自己的簡訊應用Messenger。在競爭激烈的市場中,acebook最大的挑戰是確保用戶與他們的世界保持聯繫。收購WhatsApp和Instagram等應用程式是確保Facebook獲得各種用戶數據的一種方式,即使用戶沒有直接連接到Facebook(Johnson,2016)。當然,Facebook需要大量數據來維持其主要收入來源:本土廣告。Facebook從2011年開始使用本地廣告。雖然Facebook並沒有完全發明這種做法,但它是完善這種做法的人,它讓企業獲得了一種前所未有的產品——一種徹底改變了溝通方式的社交媒體平台,從而變得根深蒂固、根深蒂固。Facebook的廣告是按點擊付費或按印象付費的,根據目標受眾的類型,廣告價格會有所不同。許多企業抓住了這個機會,不僅利用他們的社交資料或「頁面」與客戶建立聯繫,而且還直接給量身訂製的受眾留下深刻印象。事實上,Facebook仍然是擁有最詳細目標選擇的平台之一。儘管Facebook將其社區作為主要產品,但他們在保持社交媒體平台第一的地位方面非常成功,並穩步開始向移動領域的遷移。2014年,Facebook的Messenger在美國每月訪問量排名第一,其次是Google+,然後是SnapChat,第四位是Facebook旗下的Instagram(Kokalicheva,2015)。然而,還有更多的變化即將到來。在快速的移動廣告世界中,僅僅依靠用戶登錄網路已經不再有效。人們必須參與進來,否則他們在使用應用程式時沒有任何用處。正因為如此,近年來,Facebook一直把大量精力放在將其資訊平台發展成為一個全方位的通訊平台上。它最新的挑戰是整合服務和最終的支付,以確保用戶能夠獲得持續的收益(Gottfried,2013)。

       雖然其產品的多樣化看起來很自然,但同時Facebook公布廣告收入下降(Johnson,2016)。收入下降表明,從長遠來看,廣告貨幣化可能不再足以維持增長,而其他商業模式可能是必要的。收入和差異化的下降支援了Juniper Research的發現,用戶增長並不總是等於收入增長,儘管它在文獻中受到了懷疑。

3.2新市場收益

       即使Juniper Research是錯誤的,而且簡訊業務將繼續以目前的速度增長,將流量轉化為收入,微信如何複製與Facebook一樣的成功還不明顯。最近,Facebook的廣告收入主要來自國外,而不是來自其「本土」國家美國(Gottfried,2013)。這主要是因為如果不完全離開這個平台的話,美國人可能會對社交廣告變得不敏感。

       如果微信的用戶群變得同樣不敏感,那麼向國外市場的擴張將非常困難,因為其93%的業務集中在中國大陸。他們在美國、香港、歐洲和其他地方有少量的存在,但正如所指出的,這些市場僅占其影響力的7%(市場線,2013)。雖然微信可以將資源用於主導其他本地市場,但它們不太可能取代這些國家已經存在的競爭。事實上,微信最初的成功歸功於它在本地市場的創新。例如,考慮到漢語的結構,通過添加語音備忘,它成為一個非常有用的工具(Rein,2015)。它要進入外國市場,就必須複製它們在本國市場上表現出的同樣活力和本地化,這可能是困難和昂貴的,甚至可能需要當地合作夥伴的幫助。

4.顧客感知和個性化

4.1.中國消費者與移動營銷

       隨著時間的推移,中國消費者對移動營銷的看法發生了變化。雖然鋪天蓋地的營銷不再奏效,個性化、及時的廣告,仍然可以有效。實用是關鍵。2006在台灣進行的研究表明,用戶非常不喜歡移動廣告的想法;大多數人認為移動廣告「煩人、過度和冒犯」(蘇芳等人,2016)。事實上,當人們收到手機廣告時,大多數人都會把它放在一邊待會兒閱讀。移動不是一個有效的通訊渠道。然而,從那時起,移動營銷的實踐和觀念都發生了重大變化,移動營銷變得更有針對性、本地化和優化。

當移動廣告得到優化時,消費者往往會更好地容忍它們。

       「優化」意味著什麼?它可能意味著安全性、市場本地化、提供易用性或服務於特定目的,例如通訊或支付,或它們的任何組合。適應某個市場的作用是有限的,因為中國消費者會欣賞到一些特定的特點,例如在購物時能夠很容易地比較產品和價格。然而,對於中國消費者在手機上花費時間和金錢的慾望來說,這並不是最有影響力的特徵。事實上,對手機購買行為產生最積極影響的是感知有用性(Gong等人,2013)。因此,應用程式的獨特用途越大,將有越多的人繼續使用它。同樣,服務在顧客滿意度中起著中心作用。微信將如何通過廣告來增加收入,同時又不損害它目前為自己創造的效用?

4.2過度廣告的影響

       微信知道有可能失去一些用戶群。因此,它開始非常謹慎地實施移動廣告。與歐洲人和美國人相比,亞洲人對手機廣告的接受度平均較低(Olson,2015)。因此,微信限制了用戶的訪問。事實上,一開始,只有與平台直接對話的供應商才能發起一場活動。微信意識到在做廣告的時候要謹慎是有原因的,它是從幾年前微博做手機營銷的經驗中學到的。微博是中國類似於推特的微博平台,在其連續無數的廣告讓用戶不知所措之後,其用戶基礎迅速下降(Olson,2015)。微博最終失去了很多市場份額(微信),因為用戶不滿意。使用微博的服務對(以前的)用戶來說就變得不那麼有用了,這是因為人們努力擺脫廣告的束縛。為了從廣告中獲得潛在收益,同時保持用戶的信心,限制對其受眾的訪問是微信所能做的最好的事情之一。然而,隨著程式的發展,對用戶的保護可能會變得不那麼重要,越來越多的廣告將出現在用戶訂閱中。

4.3.數據保護

       數據安全將來可能成為一個問題。隨著對目標受眾資訊需求的增加,許多社交媒體平台現在正轉向挖掘人們個人資料中的影像作為資訊來源(麥克米倫,2016)。考慮到微信相當基本的目標定位方案,他們似乎不太可能很快採用這項技術;但是,如果他們要與Facebook這樣的公司競爭,他們也必須採用類似的技術來提供最透明的受眾視角,這只是時間問題。所有這些都是為了保證用戶不再是產品的中心,而是用戶變成了產品。

       迄今為止,微信在猜測用戶需求方面表現出色,並因此獲得了巨大的增長。通過進入移動營銷領域,它可能已經危及到自己的地位,只需將其主要用戶群從使用該應用的人轉移到將為其廣告付費的公司。

4.4.市場營銷

       除了短期收入外,微信進入移動廣告領域的目的是推動這一進程,並立即從個性化營銷開始。微信已經表明,它的廣告將完全不同,通過提高其「優質」用戶的需求。然而,目前還不清楚這種模式在未來會如何發展。微信會不會降低價格,成為中國Facebook廣告的代名詞?如果是這樣,為什麼不像Facebook那樣從一開始就以低價開始呢?這一策略尤其不清楚,因為它進行的第一次競選活動引起了一些不滿,挫傷了一些自尊心。第一個活動是與寶馬簽約的。寶馬只想瞄準那些在所謂的一、二線城市(北京、上海等大城市)受過良好教育的富人。不符合目標標準的人看到的是汽水和智慧手機的廣告。那些符合這一類別的人看到寶馬廣告彈出在他們的時刻頁面。備受期待的微信平台開放受到了很多人的關注,很多人也注意到了這種公然的針對性。雖然寶馬的品牌在競選後立即飆升,但很快就受到了強烈反響,因為沒有看到寶馬廣告出現在他們的新聞提要中的人開始稱自己為刁,一個失敗者的禮貌用語(Loras,2015)。微信很高興這場運動收到了更多的壓力;然而,它設法疏遠了一些社區,作為回報,它獲得了一個大膽進入移動營銷世界的機會。顯然,疏遠對產生成功是沒有用的。

5.總的來說,注重實用性

       由於幸運事件和中國社會文化需求和特點的結合,微信發展成為一個巨大的、成功的應用。作為中國市場的一個創新者,它開始成功地控制自己,為說漢語的人群創建了特別有用的新應用程式功能。此外,如前所述,微信在中國的私人生活和職業生活幾乎沒有什麼區別,這有助於微信成為主宰中國電子商務、社交媒體和電信領域的一款應用程式。在數據隱私問題上,微信的母公司騰訊(Tencent)也比Facebook等類似的全球公司日子好過一些,因為騰訊與中國政府有著密切的合作關係。它還間接受益於中國法院系統難以審理民事案件。

       從一開始,騰訊微信就把客戶放在了平台的中心,並因此獲得了巨大的收益。有趣的是,這不是一個「火箭科學」的想法。多年來,伴隨著互聯網的使用,市場營銷領域最大的變化是從基於交易的方式轉變為以客戶為中心的方式。微信的方法可以看作是這一非常普遍的原則的又一個延伸。

       微信首先主導了中國的通訊,然後是支付,現在它正在成為一個成熟的移動社交平台,包括移動廣告。它在這方面的成功將取決於兩個重要因素。首先,儘管流量不斷增加,但從長遠來看,移動廣告收入實際上可能會減少。Facebook試圖通過將支付和其他服務整合到自己的應用程式中,以區別微信現有的服務方式,就證明了這種潛在的下降趨勢。

       第二個重要因素是與用戶保持聯繫。如果所有用戶都決定離開,微信平台就無法工作。人們真的會接受在他們的時刻看到廣告嗎?從歷史上看,中國用戶對過度廣告並不太友好,正如微博的衰落所表明的那樣。另外,微信可能已經開始走錯了一步,它的第一個活動是寶馬(BMW),只針對微信的富裕用戶。此外,中國政府和社會可能還沒有解決越來越多的隱私問題,例如影像挖掘等問題。在什麼情況下,品牌會真正侵犯用戶隱私?

       微信的一個好消息是,中國消費者似乎主要關心他們的應用程式的有用性。安全性和易用性問題不會對他們的在線行為產生正面或負面影響。已經在線的用戶了解與在線平台接觸的含義,放棄一些私人數據並不妨礙他們在線參與和購物。因此,微信必須專註於保持對用戶群的有用性,確切地說,微信剛起步時是怎樣的。

       移動廣告是潛在的巨大收入來源,尤其是在短期內。然而,要在長期內保持可持續性,微信必須記住,移動交互不僅僅是技術和收入的問題。相反,它還涉及用戶和用戶能夠獲得的實用程式。用戶是通過選擇登錄給定的社交或移動平台來塑造市場的人。因為這是他們的選擇,移動平台必須記住,他們的用戶需求和他們在平台上的體驗才是最重要的,否則他們的用戶可能會永遠註銷。



附錄C 軟體使用說明書

用戶使用自己微信進行登錄介面,如圖10-1所示

 

圖10-1 用戶登錄

微信沒有註冊可以註冊登錄如圖10-2所示:

 

圖10-2 用戶註冊

進入不同用戶進入相對應的用戶首頁,如圖10-3所示:

 

圖10-3 用戶首頁

項目法人對項目申請和項目資訊查看,如圖10-4所示:

 

圖10-4 項目申請和項目資訊查看

附錄D 主要源程式碼

前端主要程式碼:

<div class=”content”>
    <div class=”form sign-in”>
        <h1 style=”font-size:
5em;padding-top: 150px;color: darkviolet;”>歡迎回來</h1>
        <label>
           <select
id=”chenqiwei”>
                <option
id=”options”>請選擇登錄類型</option>
                <option>項目法人</option>
                <option>主管部門</option>
                <option>發改部門</option>
            </select>
        </label>
        <label>
            <input
type=”text” placeholder=”請輸入您的郵箱號碼”
id=”email1″>
        </label>
        <label>
            <span></span>
            <input
type=”password” placeholder=”請輸入您的密碼”
id=”password3″>
        </label>
        <span
class=”forgetMe” id=”forgetPassword”>忘記密碼?</span>
        <button
type=”button” class=”submit” id=”login”>登 錄</button>
        <button
type=”button” class=”fb-btn” id=”wechat”
style=”font-size: 2.7em;margin-top:60px;”>使用 <span> 微信掃碼</span> 帳號登錄</button>
    </div>
    <div
class=”sub-cont”>
        <div
class=”img”>
            <div
class=”img__text m–up”>
                <h2 style=”
font-size: 2.7em;color: red;”>還未註冊?</h2>
                <p style=”color:
dodgerblue;font-size: 2.7em;”>立即註冊,發現機會!</p>
            </div>
            <div
class=”img__text m–in”>
                <h2
style=”font-size: 2.7em;color: red;”>已有帳號?</h2>
                <p
style=”color: dodgerblue;font-size: 2.7em;”>有帳號就登錄吧,好久不見了!</p>
            </div>
            <div class=”img__btn”>
                <span
class=”m–up” style=”font-size: 2.7em;”>注 冊</span>
                <span
class=”m–in” style=”font-size: 2.7em;”>登 錄</span>
            </div>
        </div>
        <script
src=”Jquery/jquery.js”></script>
<%–<script
src=”UserLogin/js/script.js”></script>–%>
</body>
</html>
<script src=”Jquery/jquery.js”></script>
<script>
    $(document).ready(function(){
       
$(“#chenqiwei”).click(function(){
            $(“#options”).hide();
        });
        $(“#cqw”).click(function(){
           
$(“#optionss”).hide();
        });
       
$(“#login”).click(function () {
            var
options=$(“#select option:selected”);
            $.ajax({
                url:’LoginServlet’,
                type:’post’,
                data:{
                   
email:$(“#email1”).val(),
                   
password:$(“#password3”).val(),
                   
type:options.text()
                },
                success:function (result)
{
                    alert(result)
                }
            });
        });
       
$(“#wechat”).click(function () {
            // var
src1=”//mp.weixin.qq.com/cgi-bin/showqrcode?ticket=”+ticket;
           
if($(“.showCode”).is(‘:hidden’)||$(“.showCode”).length==0){
                $(“#login”).after(“<img
class=’showCode’ src=\”UserLogin/images/wechat.png\”/>”);
            }
            else {
               
$(“.showCode”).remove();
            }
        });
        $(“.showCode”).click(function
() {
            // var
src1=”//mp.weixin.qq.com/cgi-bin/showqrcode?ticket=”+ticket;
           
if($(this).is(‘:hidden’)||$(this).length==0){
               
$(“#login”).after(“<img class=’showCode’
src=\”UserLogin/images/wechat.png\”/>”);
            }
            else {
                $(this).remove();
            }
        });
       
$(“#forgetPassword”).click(function () {
           
location.href=”ForgetPasswordServlet”;
        });
        //註冊驗證格式
       
$(“#register”).click(function () {
            var
options=$(“#select option:selected”);
           var
options=$(“#select option:selected”);
            $.ajax({
               
url:”EmailLoginServlet”,
               
type:”POST”,
                cache:false,
                async:false,
                data: {
                    username:$(“#username”).val(),
                    email:
$(“#email”).val(),
                   
password:$(“#password”).val(),
                   
type:$(“#cqw”).find(“option:selected”).text(),
                    code:$(“#code”).val()
                },
                success:function () {
                    alert(“註冊成功”);
                }
            })
        });
    });
   
document.querySelector(‘.img__btn’).addEventListener(‘click’,
function() {
       
document.querySelector(‘.content’).classList.toggle(‘s–signup’)
    })
    var obj =
document.getElementById(“getCode”);
    var flag = 10;
    //註冊點擊事件
   
obj.onclick=function(){
        if(flag<10){
            return;
        }
        //ajax引擎(瀏覽器內部的小型瀏覽器)
       
var xhr = new XMLHttpRequest();
        //相當於你打開瀏覽器輸入需要訪問的地址
       
xhr.open(“post”,”EmailCheckServlet?email=”+document.getElementById(“email”).value,true);
        //監控請求狀態 判斷是否請求完成,回調函數,事件監聽函數
       
xhr.onreadystatechange=function(){
           
if(xhr.readyState==4&&xhr.status==200){
                alert(“驗證碼已發送,請注意查收!”);
            }
        }
        xhr.send(null);
        timer();
    }
    function timer(){
        flag–;
        obj.innerHTML=flag+”秒重獲”;
        if(flag==0){
            obj.innerHTML=”獲驗證碼”;
            flag =10;
        }else{
            setTimeout(“timer()”,1000);
        }
    }
</script>

 

 

後台主要程式碼:

    private static void getToken(){
        String url=GET_TOKEN_URL.replace(“APPID”,APPID).replace
(“APPSECRET”,APPSECRET);
        String tokenStr=Joke.get(url);
        JSONObject
jsonObject=JSONObject.fromObject(tokenStr);
        String
token=jsonObject.getString(“access_token”);
        String
expiresIn=jsonObject.getString(“expires_in”);
        accessToken=new AccessToken(token,expiresIn);

    }
        public static String
getAccessToken(){
        if (accessToken==null||accessToken.isExpired1()){
            getToken();
        }
        return accessToken.getAccessToken();
    }
    public static String
getAccessToken2(){
        if (accessToken.getAccess_token().equals(“”)||accessToken.isExpired2()){
            getToken1();
        }
        return accessToken.getAccessToken();
    }
    @Override
    /*
     *
接受微信伺服器的消息
     * */
   
protected void
doPost(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
       
request.setCharacterEncoding(“utf8”);
       
response.setCharacterEncoding(“utf8”);
        Map<String,String>
requestMap=ConnectWeChatServlet.parseRequest(request.getInputStream());
        String respXml
=ConnectWeChatServlet.getResponse(requestMap);
        System.out.println(“回復消息測試xml:”+respXml);
        PrintWriter out
=response.getWriter();
        out.print(respXml);
        out.flush();
        out.close();
        //準備回復的數據包
   
}
    //用於處理所有事件的消息回復
   
private
static String getResponse(Map<String, String> requestMap) {
        BaseMessage msg=null;
        String
msgType=requestMap.get(“MsgType”);
        switch (msgType){
            case “text”:
                msg=dealTextMessage(requestMap);
                break;
            case “image”:
                msg=dealImageMessage(requestMap);
                break;
            case “voice”:
                msg=dealVoiceMessage(requestMap);
                break;
            case “video”:
                msg=dealTextMessage(requestMap);
                break;
            case
“shortvideo”:
                msg=dealTextMessage(requestMap);
                break;
            case “location”:
                msg=dealLocationMessage(requestMap);
                break;
            case “link”:
                msg=dealLinkMessage(requestMap);
                break;
            case “event”:
                msg=dealEventMessage(requestMap);
                break;
            default:
                msg=dealTextMessage(requestMap);
                break;
        }
        //把消息對象處理為xml數據包
       
return
DealMsg(msg);

    }

       public static String
robotchat(String msg) throws Exception {
        String APIKEY =
“a7ffa2f749b14faf999a22fb0273cb7c”;
        String question = msg;//這是上傳給雲機器人的問題
        //String INFO =
URLEncoder.encode(“北京今日天氣”,
“utf-8”);
       
String
INFO = URLEncoder.encode(question, “utf-8”);
        String getURL =
“//www.tuling123.com/openapi/api?key=” + APIKEY +
“&info=” + INFO;
        URL getUrl = new URL(getURL);
        HttpURLConnection connection
= (HttpURLConnection) getUrl.openConnection();
        connection.connect();
        // 取得輸入流,並使用Reader讀取
       
BufferedReader
reader = new BufferedReader(new InputStreamReader(
connection.getInputStream(), “utf-8”));
        StringBuffer sb = new
StringBuffer();
        String line = “”;
        while ((line =
reader.readLine()) != null) {
            sb.append(line);
        }
        reader.close();
        // 斷開連接
       
connection.disconnect();
        System.out.println(sb);
        return sb.toString();

    }
    /**
     *
對msg處理
     * @param msg
     * @return
     */
   
public
static String DealMsg(BaseMessage msg){
        if (msg!=null){
            System.out.println(“轉換成xml格式:”+beanToXml(msg));
            return beanToXml(msg);
        }
        else return null;
    }
    public static String Welcome(){
        return “感謝你的關注!\n如果有一天你離開了我,請記得我們相愛過!”;
    }
    public static String
beanToXml(BaseMessage msg) {
        XStream stream =new
XStream();
        //把處理的Xstream註解類同微信伺服器
       
stream.processAnnotations(TextMessage.class);
       
stream.processAnnotations(imageMessage.class);
        stream.processAnnotations(musicMessage.class);
       
stream.processAnnotations(NewsMessage.class);
       
stream.processAnnotations(videoMessage.class);
       
stream.processAnnotations(voiceMessage.class);
        String xml =stream.toXML(msg);
        System.out.println(“xml”+xml);
        return xml;
    }

    //處理文本消息
   
private
static BaseMessage dealTextMessage(Map<String, String> requestMap) {
        String msg
=requestMap.get(“Content”);
        if (msg.indexOf(“天氣+”)!=-1){
            msg=msg.replace(“天氣+”,””);
            String resp=Weather(msg);
            TextMessage tm =new
TextMessage(requestMap,resp);
            return tm;
        }
        if (msg.equals(“登錄”)){
            String
url=”//open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE#wechat_redirect”;
           
url=url.replace(“APPID”,”wxcea26c733963d889″).replace(“REDIRECT_URI”,”//www.runwsh.com/chen/agreeMe”).replace(“SCOPE”,”snsapi_userinfo”);
            msg=”<a
href=\””+url+”\”>登錄請擊這裡</a>”;
            TextMessage tm =new
TextMessage(requestMap,msg);
            return tm;
        }
        if(msg.equals(“消息動態”)){
            List<Article>
articles=new ArrayList<>();
            articles.add(new
Article(“項目投資監管平台頭條推薦”,”川普宣布暫停想世衛組織撥款,聯合國秘書長表態!”,”//dss3.baidu.com/9fo3dSag_xI4khGko9WTAnF6hhy/super/crop=144,0,1728,1080/sign=d190fab2ba4543a9e154a08c2326beb6/203fb80e7bec54e754583e58b4389b504fc26a3b.jpg”,”//mp.weixin.qq.com/s?__biz=MjM5MjAxNDM4MA==&mid=2666309146&idx=1&sn=338c82dd3d13c42d30cf520e9041b1d0&scene=0″));
            NewsMessage
newsMessage=new NewsMessage(requestMap,”1″,articles);
           
System.out.println(“newMessage:”+newsMessage);
            return newsMessage;
        }
            //回復語音
   
private
static BaseMessage dealVoiceMessage(Map<String, String> requestMap){
        System.out.println(“【語音伺服器傳過來的requestMap】”+requestMap);
        String
Content=requestMap.get(“Recognition”);
        System.out.println(“【語音內容獲取識別】”+Content);
       
requestMap.remove(“MediaId”);
       
requestMap.remove(“Format”);
       
requestMap.remove(“Recognition”);
       
requestMap.put(“Content”,Content);
        System.out.println(“【提交給伺服器的requestMap】”+requestMap);
        return dealTextMessage(requestMap);
    }
    //回復圖片
   
private
static BaseMessage dealImageMessage(Map<String, String> requestMap){
        String
PicUrl=requestMap.get(“PicUrl”);
        // 初始化一個AipOcr
       
TextMessage
tm=new TextMessage(requestMap,PicUrl);
        return tm;
    }
         //接受微信伺服器xml並解析map
   
private
static Map<String, String> parseRequest(ServletInputStream is) {
        Map<String,String>
map=new HashMap<>();
        SAXReader reader =new SAXReader();
        try {
            Document document =
reader.read(is);
            Element root
=document.getRootElement();
            List<Element>
elements=root.elements();
            for (Element e:elements){
               
map.put(e.getName(),e.getStringValue());
            }

        } catch (DocumentException e)
{
            e.printStackTrace();
        }

        return map;
    }

    /**
     *
進行驗證是否身份匹配
     * @param request
     * @param response
     * @throws ServletException
     * @throws IOException
     */
   
@Override
    protected void doGet(HttpServletRequest
request, HttpServletResponse response) throws ServletException, IOException
{
        String signature =
request.getParameter(“signature”);
        String timestamp = request.getParameter(“timestamp”);
        String nonce =
request.getParameter(“nonce”);
        String echostr =
request.getParameter(“echostr”);
       
System.out.println(“”+signature +”@”+timestamp
+”$”+nonce +”^”+echostr);
        PrintWriter out = response.getWriter();
        if(com.hnu.scw.utils.CheckConnectUtils.checkConncetWithWeChat(signature,timestamp,nonce)){
            out.print(echostr);
        }
    }

    /**
     *
上傳素材
     * @param path
     * @param type
     * @return
     */
   
public
static String upload(String path,String type){
        File file=new File(path);
        String
url=”//api.weixin.qq.com/cgi-bin/media/upload?access_token=ACCESS_TOKEN&type=TYPE”;
       
url=url.replace(“ACCESS_TOKEN”,getAccessToken()).replace(“TYPE”,type);
        try {
            URL url1=new URL(url);
            //強轉連接
           
HttpURLConnection conn=(HttpURLConnection)
url1.openConnection();
            conn.setDoInput(true);
            conn.setDoOutput(true);
            conn.setUseCaches(true);
            //設置請求頭資訊
           
conn.setRequestProperty(“Connection”,”keep-alive”);
           
conn.setRequestProperty(“Charset”,”utf8″);
            String boundary
=”—–“+System.currentTimeMillis();
           
conn.setRequestProperty(“Content-Type”,”multipart/form-data;boundary=”+boundary);
            InputStream
inputStream=new FileInputStream(file);
            OutputStream
outputStream=conn.getOutputStream();
            StringBuilder sb=new
StringBuilder();
           
sb.append(“–“);
            sb.append(boundary);
            sb.append(“\r\n”);
           
sb.append(“Content-Disposition:form-data;name=\”media\”;filename=\””+file.getName()+”\”\r\n”);
           
sb.append(“content-type:application/octet-stream\r\n\r\n”);
            outputStream.write(sb.toString().getBytes());
           
System.out.println(sb.toString());
//           
outputStream.flush();
//            outputStream.close();
           
byte[] b=new
byte[1024];
            int len;
            while
((len=inputStream.read(b))!=-1){
                outputStream.write(b,0,len);
            }
            String
foot=”\r\n–“+boundary+”–\r\n”;
           
outputStream.write(foot.getBytes());
            outputStream.flush();
            outputStream.close();
            InputStream
is2=conn.getInputStream();
            StringBuilder resp=new
StringBuilder();
            while
((len=is2.read(b))!=-1){
                resp.append(new
String(b,0,len));
            }
            return resp.toString();

        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }

       /**
     *
獲取用戶資訊
     * @param openid
     * @return
     */
   
public
static String getUserInfo(String openid){
        String
url=”//api.weixin.qq.com/cgi-bin/user/info?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN”;
       
url=url.replace(“ACCESS_TOKEN”,getAccessToken()).replace(“OPENID”,openid);
        String result= null;
        try {
            result = Joke.get(url);
        } catch (Exception e) {
            e.printStackTrace();
        }
       
System.out.println(“result:”+ result);
        return result;
    }

 

 

 

 

 

掃一掃,回復「聯繫」-與我聯繫:

感謝各位支援觀看,有什麼需要修改後台留言,會及時更新

 

Tags: