蘇崢嶸
摘 要: 殘疾人作為社會的一個特殊群體,對其如何管理、服務歷來為政府所重視。傳統(tǒng)的管理模式在數(shù)字化席卷全球的今天,日益顯現(xiàn)出低效、粗糙的缺點?;诨ヂ?lián)網(wǎng)和開放式數(shù)據(jù)平臺技術的新一代管理平臺日益迫切。以虛擬卡為核心的新一代殘疾人智能管理系統(tǒng)是以移動互聯(lián)網(wǎng)為基礎,借助于二維碼、數(shù)據(jù)庫技術,實現(xiàn)對殘疾人進行身份識別、信息收集管理、行為軌跡分析、建立群體社區(qū)等動作,有利于行政管理部門對這一特定群體精準幫扶,為其充分享受社會福利,實現(xiàn)殘疾人的“平等、參與、共享”權力,提供技術支持。
關鍵詞: 開放式數(shù)據(jù)平臺;虛擬卡;二維碼
1 目前的狀態(tài)
隨著信息技術的不斷發(fā)展,也給殘疾人事業(yè)信息化建設帶來了新的機遇和挑戰(zhàn)。作為公民,殘疾人在政治、經(jīng)濟、文化和社會生活的各方面,應該享有與其他公民一樣的平等的權利。國家“十一五”規(guī)劃明確指出積極發(fā)展殘疾人事業(yè)是整個社會和諧發(fā)展的一項重要事務?,F(xiàn)代信息技術應用于廣大殘疾人生活的地方——基層社區(qū),將是殘疾人服務管理工作信息化建設重中之重。利用信息手段開拓為殘疾人服務的渠道,解決他們生活、學習、就業(yè)、維權、脫貧等多方面的困難,推進殘疾人事業(yè)信息化建設向更高層次發(fā)展,應是政府和社會高度重視、亟待解決的重大問題,建設一個高效、準確的殘疾人服務管理系統(tǒng)已成為當前的迫切需要。
目前通過殘疾證、IC卡等手段對殘疾人進行管理和服務,明顯效率低下,可靠程度不高,應用場景受限。隨著基于互聯(lián)網(wǎng)和開放式數(shù)據(jù)平臺技術的新一代管理技術日趨成熟,以提高整體工作水平和工作效率為目的,加快殘疾人辦公服務和管理信息化,已是大勢所趨。借助于移動終端、二維碼、數(shù)據(jù)庫技術,實現(xiàn)對殘疾人進行身份識別、信息收集管理、行為軌跡分析、建立群體社區(qū)、監(jiān)督投訴等操作,有利于行政管理部門對這一特殊群體精準幫扶,使其充分享受社會福利,實現(xiàn)殘疾人“平等、參與、共享”的權力。
2 基于開放式數(shù)據(jù)平臺實現(xiàn)對殘疾人管理服務的解決方案
隨著移動互聯(lián)網(wǎng)的普及和服務應用的深化,利用開放式數(shù)據(jù)平臺實現(xiàn)對殘疾人管理服務成為可能。開放式數(shù)據(jù)平臺是為了滿足各級組織、機構、企業(yè)對于數(shù)據(jù)的需要而產(chǎn)生的。其海量數(shù)據(jù)存儲、不間斷數(shù)據(jù)流實時計算等特點,為應用場景的順利實施提供了基本保證。本例中使用了中殘聯(lián)殘疾人信息庫,也就是殘聯(lián)為殘疾人提供“量體裁衣”式個性化服務的量服系統(tǒng)和百度地圖。
正是有了這些開放式數(shù)據(jù)平臺,利用手機客戶端應用程序,使得在殘疾人服務管理領域,完全替代原來的殘疾證(卡)服務模式,實現(xiàn)基于互聯(lián)網(wǎng)開放式數(shù)據(jù)平臺的新模式——虛擬卡模式成為可能。該模式使用二維條碼/二維碼(dimensional barcode)技術,在身份認證、數(shù)據(jù)管理等環(huán)節(jié),提高了可靠性,便利性,同時也保護了使用者的隱私。
虛擬卡(Virtual Card):相對于殘疾人管理所使用的第一代卡(紙媒卡)和第二代卡(IC卡),第三代卡虛擬卡借助于計算機網(wǎng)絡技術、數(shù)字媒體技術、數(shù)據(jù)庫技術等手段,利用個人移動終端(手機),實現(xiàn)在線身份認證、信息管理、投訴監(jiān)督等操作,而且本方案立足于個體,建立管理機構與個體、個體與個體間的密切聯(lián)系,通過網(wǎng)絡實時管理用戶,實現(xiàn)為殘疾人提供更優(yōu)質(zhì)的服務。
二維條碼/二維碼(dimensional barcode)技術,是使用若干個與二進制相對應的幾何形體來表示文字、數(shù)值信息,通過圖象輸入設備或光電掃描設備自動識讀,實現(xiàn)信息處理。一個二維碼由多行組成,一般有3-90行,每一行有一個起始部分、數(shù)據(jù)部分、終止部分,是一個多行、連續(xù)性、可變長、包含大量數(shù)據(jù)的符號標識。常用的碼制有:Data Matrix,Maxi Code,Aztec,QR Code,Vericode,PDF417,Ultracode,Code 49,Code 16K等。其字符集包括所有128個字符,最大數(shù)據(jù)含量是1850個字符。不需要連接一個數(shù)據(jù)庫,本身可存儲大量數(shù)據(jù),主要應用于:物料管理、身份認證等需要快速查詢的環(huán)境?,F(xiàn)有的移動終端(如手機、平板電腦等),均能快速掃描識別,現(xiàn)已大量使用在識別、支付等環(huán)節(jié)。
2.1 虛擬卡模式的設計思路
系統(tǒng)實現(xiàn)殘疾人基本信息及虛擬卡信息管理、錄入、查詢,自動生成殘疾證虛擬卡信息簽發(fā)及注銷等,方便殘疾人進行殘疾證遷移工作或在非戶籍地享受政策工作,統(tǒng)計殘疾人信息生成多維度報表,滿足管理上對于殘疾人信息統(tǒng)計分類的要求。殘疾人通過移動客戶端對虛擬卡注冊申領后,系統(tǒng)后臺對殘疾人狀態(tài)變更進行動態(tài)管理,如提供行為軌跡、消費偏好、活動區(qū)域、服務喜好等信息,進而為殘疾人提供更優(yōu)質(zhì)的服務。另外,就業(yè)培訓工作也是當前殘疾人管理服務工作中的一個重點,管理好殘疾人就業(yè)培訓檔案尤為重要。對于殘疾人就業(yè)來說,要建立殘疾人求職信息檔案,推薦就業(yè)人員檔案、已就業(yè)殘疾人檔案、未就業(yè)殘疾人檔案等等,詳細了解每一個殘疾朋友的情況,從而有針對性的開展殘疾人培訓,幫助他們早日實現(xiàn)就業(yè)。
系統(tǒng)設計目標:
(1)高效的管理殘疾人虛擬卡及殘疾人基本信息。
(2)通過移動客戶端殘疾人虛擬卡二維碼可快速直接了解殘疾人信息,使用方便。
使用方便快捷,上手簡單,數(shù)據(jù)安全保證。
2.2 虛擬卡模式的功能
2.2.1 身份證識別
(1)管理殘疾人基本信息及虛擬卡信息,虛擬卡管理、錄入、查詢等基本功能;
(2)管理殘疾人虛擬卡信息,根據(jù)殘疾人三代證情況或最新評定情況,自動生成、簽發(fā)或注銷殘疾證虛擬卡信息,同時生成個人專屬二維碼,并且提供殘疾證虛擬卡的數(shù)據(jù)錄入、識別功能。
在二維碼的選擇上,由于QR碼(由DENSO(日本電裝)公司開發(fā),由JIS和ISO將其標準化)隨著移動終端,特別是國內(nèi)移動支付系統(tǒng)的使用,使其得到迅猛發(fā)展,變得非常流行,其比傳統(tǒng)的Bar Code條形碼能存更多的信息,同時也能表示更多的數(shù)據(jù)類型:比如:字符,數(shù)字,日文,中文等。故本例中采用這一編碼方案。
QR碼有(Model)和版本(Version)兩要素。模式分為Model1和Model2兩種,Model1是對QR的初始定義,Model2是對Model1的擴展,目前使用較為普遍的是Model2,本例中也采用Model2。
QR圖的大小(size)被定義為版本(Version),版本號從1到40。版本1就是一個21*21的矩陣,每增加一個版本號,矩陣的大小就增加4個模塊(Module),因此,版本40就是一個177*177的矩陣。(版本越高,意味著存儲的內(nèi)容越多,糾錯能力也越強)。
每個QR碼符號由名義上的正方形模塊構成,組成一個正方形陣列,它由編碼區(qū)域和包括尋象圖形、分隔符、定位圖形和校正圖形在內(nèi)的功能圖形組成。功能圖形不能用于數(shù)據(jù)編碼。符號的四周由空白區(qū)包圍。下圖為QR碼版本7符號的結構圖。
//生成二維碼
KeyId = model.KeyId;
if (string.IsNullOrEmpty(model.qrcode))
{
qrcode=QRCode.Generate("http://"+ HttpContext.Current.Request.Url.Host + "/CLindex/QRCodeView.aspx?KeyID=" + KeyId, @"CLindex\\images\\logo_1.png", model.identNum);
SqlEasy.ExecuteNonQuery("update CLUserInfo set qrcode='" + qrcode + "' where KeyId=" + KeyId);
model.qrcode = qrcode;
}
//QRCode類和Generate創(chuàng)建二維碼方法
using NetWing.BPM.Core.WeChatApi;
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Drawing.Imaging;
using System.IO;
using ZXing;
using ZXing.Common;
using ZXing.QrCode.Internal;
namespace NetWing.BPM.Core
{
public class QRCode
{
///
/// 生成帶Logo的二維碼
///
/// 鏈接
/// logo地址
/// 文件夾名
public static string Generate(string url, string LogoPath, string PathUrl)
{
//Logo 圖片
String path = AppDomain.CurrentDomain.BaseDirectory + LogoPath;
Bitmap logo = new Bitmap(@path);
//構造二維碼寫碼器
MultiFormatWriter writer = new MultiFormatWriter();
Dictionary
hint.Add(EncodeHintType.CHARACTER_SET, "UTF-8");
hint.Add(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.H);
//生成二維碼
BitMatrix bm = writer.encode(url, BarcodeFormat.QR_CODE, 300, 300, hint);
BarcodeWriter barcodeWriter = new BarcodeWriter();
Bitmap map = barcodeWriter.Write(bm);
//獲取二維碼實際尺寸(去掉二維碼兩邊空白后的實際尺寸)
int[] rectangle = bm.getEnclosingRectangle();
//計算插入圖片的大小和位置
int middleW = Math.Min((int)(rectangle[2] / 3.5), logo.Width);
int middleH = Math.Min((int)(rectangle[3] / 3.5), logo.Height);
int middleL = (map.Width - middleW) / 2;
int middleT = (map.Height - middleH) / 2;
//將img轉(zhuǎn)換成bmp格式,否則后面無法創(chuàng)建Graphics對象
Bitmap bmpimg = new Bitmap(map.Width, map.Height, PixelFormat.Format32bppArgb);
using (Graphics g = Graphics.FromImage(bmpimg))
{
g.InterpolationMode= System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
g.SmoothingMode= System.Drawing.Drawing2D.SmoothingMode.HighQuality;
g.CompositingQuality= System.Drawing.Drawing2D.CompositingQuality.HighQuality;
g.DrawImage(map, 0, 0);
}
//將二維碼插入圖片
Graphics myGraphic = Graphics.FromImage(bmpimg);
//白底
myGraphic.FillRectangle(Brushes.White,middleL,middleT, middleW, middleH);
myGraphic.DrawImage(logo,middleL, middleT, middleW, middleH);
//保存成圖片
string SavePath = AppDomain.CurrentDomain.BaseDirectory;
//string dated = DateTime.Now.ToString("yyyyMMdd");
string dates = DateTime.Now.ToString("yyyyMMddHHmmssfff");
string SavePathUrl = @"Upload/QRCode/" + PathUrl + @"/";
if (!string.IsNullOrEmpty(SavePath))
{
SavePath += @"Upload\\QRCode\\" + PathUrl + @"\\";
if (!Directory.Exists(SavePath))
{
Directory.CreateDirectory(SavePath);
}
SavePath += dates + "_" + Operation.Number(6) + ".png";
SavePathUrl += dates + "_" + Operation.Number(6) + ".png";
bmpimg.Save(@SavePath, ImageFormat.Png);
}
return SavePathUrl;
}
}
}
2.2.2 發(fā)卡管理
(1)提供外部使用用戶界面功能,如殘疾人可通過智能手機輸入手機號注冊殘疾人虛擬卡,系統(tǒng)通過與中殘聯(lián)殘疾人信息庫進行對接,對符合條件的殘疾人進行認證及虛擬卡發(fā)卡管理;
(2)具備行政區(qū)劃調(diào)整、享受政策地區(qū)調(diào)整功能,方便殘疾人進行殘疾證遷移工作或在非戶籍地享受政策工作;
(3)報表生成,殘疾人三代證卡管理系統(tǒng)以時間點作為橫向維度、以多個查詢項目為縱向維度,殘聯(lián)各級機構能夠查看殘疾個人在整個業(yè)務生命周期中所有業(yè)務信息(包括了社會保障享受情況、就失業(yè)情況、康復訓練情況等等);
(4)以此收集和統(tǒng)計殘疾人應用信息來定制統(tǒng)計查詢報表,滿足管理上對殘疾人信息統(tǒng)計分類要求。
2.2.3 卡動態(tài)管理
(1)殘疾人通過移動客戶端對虛擬卡注冊申領后,系統(tǒng)后臺對殘疾人狀態(tài)變更進行動態(tài)管理,例如對殘疾人遷移、死亡、殘疾等級變化等信息進行實時管理;
(2)通過系統(tǒng)平臺后續(xù)為殘疾人提供的量服(市殘聯(lián)為殘疾人提供“量體裁衣”式個性化服務簡稱:量服)及社會化等服務,通過大數(shù)據(jù)動態(tài)跟蹤殘疾人的行為軌跡,分析出殘疾人的服務喜好、消費偏好、活動區(qū)域等信息,進而為殘疾人提供更優(yōu)質(zhì)的服務。