蘭天 鄧小云
摘 要:利用現(xiàn)有OA系統(tǒng)的電子假條圖片和計(jì)算機(jī)OCR(Optical Character Recognition)技術(shù),實(shí)現(xiàn)假條圖片中員工姓名、請假時(shí)段、事由等信息的自動(dòng)識別與摳取。將相關(guān)信息自動(dòng)匯總,最終通過使用命令批處理調(diào)用Node.js連接百度OCR接口,摳取假條圖片上相關(guān)信息。在后臺調(diào)用Excel假條統(tǒng)計(jì)文件,使用VBA宏將摳取的假條信息填入,并使用Excel相關(guān)公式去除本年度法定節(jié)假日和周末,最終計(jì)算出員工實(shí)際請假天數(shù),并自動(dòng)填入,以實(shí)現(xiàn)假條自動(dòng)化匯總,減少人事部門人工匯總的工作壓力,降低出錯(cuò)率。
關(guān)鍵詞:OCR技術(shù);OA系統(tǒng);綠色人力資源
中圖分類號:F272.92;TP391.4? ? ? 文獻(xiàn)標(biāo)志碼:A? ? ? 文章編號:1673-291X(2020)23-0073-02
長期以來,人事部門假條匯總工作都以紙質(zhì)請假條的人工保管為主,假條的保管、查詢、統(tǒng)計(jì)和數(shù)據(jù)分析等都十分不便捷,并需要消耗大量的人力物力,且出錯(cuò)率高。然而,隨著信息化的發(fā)展,現(xiàn)階段很多單位都已經(jīng)擁有OA系統(tǒng)(Office Automation System),這樣就使得人事管理員可以獲取制式的請假條圖片。另一方面,OCR(Optical Character Recognition)技術(shù)近年來發(fā)展迅速,精準(zhǔn)度高,百度、搜狗、騰訊、漢王等行業(yè)巨頭都提供了OCR接口,方便其他程序調(diào)用。因此,可以通過使用Node.js調(diào)用OCR接口,完成圖片有效內(nèi)容的摳取,再調(diào)用Excel文件,將有效內(nèi)容自動(dòng)填入Excel文件中,并配合Excel中的相關(guān)公式和預(yù)留信息,完成自動(dòng)匯總和統(tǒng)計(jì)員工及二級部門的全年請假狀況。
一、使用Node.js調(diào)用百度OCR接口
1. var image = fs.readFileSync("./image/1.png").toString("base64");
2. var client = new AipOcrClient("118298", "Oj4LWg9LUH", "pKtcyr7cxIRAGlg");
使用Node.js調(diào)用百度OCR,摳取制式圖片上的信息,并將它們以項(xiàng)的形式存儲在JavaScript的數(shù)組里。
二、調(diào)用自定義模板文字識別
1. var fs = require(′fs′);
2. var xlsx=require("node-xlsx");
3. client.custom(image, options).then(function(result) {
4.? ? ?var datas=[];
5.? ? ?var result3=`=HYPERLINK("假條照片`+′\\′ + result.data.ret[1].word + result.data.ret[2].word.replace(/-/g, ′′) + "-" + result.data.ret[0].word.replace(/-/g, ′′) + `.png")`;
6.? ? ?var result2=result.data.ret[2].word.replace(/^(\d{4})(\d{2})(\d{2})$/, "$1-$2-$3");
7.? ? ?var result0=result.data.ret[0].word.replace(/^(\d{4})(\d{2})(\d{2})$/, "$1-$2-$3");
8.? ? ?var data=["",result.data.ret[1].word,result2,result0,"",result3];
9.? ? ?datas.push(data);
10.? ? ? ?var buffer=xlsx.build([
11.? ? ? ? ? ?{
12.? ? ? ? ? ? ? ? ?name:′sheet3′,
13.? ? ? ? ? ? ? ? ?data:datas
14.? ? ? ? ? ?}
15.? ? ? ? ?]);
16. fs.writeFileSync(′../newAdd.xlsx′, buffer, {′flag′:′w′});
17.? ? ?fs.rename(′./image/1.png′, ′../假條照片/′ + result.data.ret[1].word + result.data.ret[2].word.replace(/-/g, ′′) + "-" + result.data.ret[0].word.replace(/-/g, ′′) + ′.png′, function(err) {
18.? ? ? ? ?if (err) {
19.? ? ? ? ? ? ?throw err;
20.? ? ? ? ?}
21.? ? ?});
22. }).catch(function(err) {
23.? ? ?// 如果發(fā)生網(wǎng)絡(luò)錯(cuò)誤
24.? ? ?console.log(err);
25. });
調(diào)用文字模板進(jìn)行摳取,并使用npm安裝node-xlsx模塊,將存入數(shù)組中的項(xiàng)依次存入Excel文檔的各字段中,并產(chǎn)生圖片鏈接,將假條圖片存放在數(shù)據(jù)庫中,可以在Excel文件里直接點(diǎn)擊調(diào)取。
三、使用Excel公式調(diào)取相關(guān)員工的工號信息,并計(jì)算其除去法定節(jié)假日和公休日的請假天數(shù)
匹配員工的姓名、工號與所屬部門采用了VLOOKUP公式。使用它的好處是可以將其他sheet中提前儲存的員工姓名、工號、所屬部門等相關(guān)信息調(diào)用出來,以達(dá)到OCR識別員工工號后即可獲得員工姓名、所屬部門等一切相關(guān)信息。同樣,在統(tǒng)計(jì)請假天數(shù)時(shí)采用了NETWORKDAYS與NETWORKDAYS.INTL兩個(gè)公式,不但可以獲取本年度工作日等信息,還可以調(diào)用在其他sheet中預(yù)先設(shè)置的法定節(jié)假日、寒暑假等信息。這樣就做到了根據(jù)具體年份的具體情況進(jìn)行靈活調(diào)整,保證了員工請假時(shí)長統(tǒng)計(jì)的精準(zhǔn)性。匯總同一員工多張假條請假天數(shù)總和時(shí),則使用了SUMIF公式,這樣可以靈活統(tǒng)計(jì)某位員工全年請假的多張假條,計(jì)算出他總計(jì)請假天數(shù),并可以預(yù)警某員工的總計(jì)請假天數(shù)是否已達(dá)到紅線,以及預(yù)警某二級部門的所有員工的總計(jì)請假天數(shù)是否已達(dá)到紅線。
四、結(jié)論
隨著無紙化辦公和綠色人力資源的發(fā)展,請假條的管理和匯總統(tǒng)計(jì)對精確性和高效性有著越來越高的要求。同時(shí),伴隨著OCR(Optical Character Recognition)技術(shù)的發(fā)展,我們有許多優(yōu)秀的漢字OCR平臺向大眾提供接口,如漢王OCR、百度OCR、搜狗OCR、騰訊OCR等。它們能做到精確識別漢字人名中的生僻字,甚至對部分手寫字體也有一定的識別能力。并且支持使用Java、JavaScript、Python、C、C++、C#、PHP等主流編程語言接入相關(guān)接口。
本文的實(shí)現(xiàn)方案即是使用JavaScript調(diào)用Node.js連接百度OCR的接口,以達(dá)到對制式電子假條的精確識別和摳取。再運(yùn)用Node.js中的node-xlsx模塊將摳取的內(nèi)容導(dǎo)入Excel文件中進(jìn)行各種匯總統(tǒng)計(jì)工作。整個(gè)過程只需人事管理員點(diǎn)擊“運(yùn)行.bat”便可自動(dòng)化完成,是辦公自動(dòng)化和綠色人力資源管理的一次較好的實(shí)踐。
參考文獻(xiàn):
[1]? 蘭天,張榮慶,梁乾.Excel協(xié)同匯總的Nodejs算法解決方案[J].數(shù)碼世界,2020:39.
[2]? 蘭天,馬葉.企業(yè)人力資源績效管理的創(chuàng)新探討[J].商訊,2019,(4):192-194.
[3]? 蘭天,馬葉.綠色人力資源管理研究述評與展望[J].商訊,2019,(3):193-195.
[4]? 許正義.基于NodeJs的成果管理輔助系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].南昌:江西師范大學(xué),2018.
[5]? 邵明浩.基于NodeJS的接口管理平臺設(shè)計(jì)與實(shí)現(xiàn)[D].南京:東南大學(xué),2017.
[6]? 黃孝羽.基于NodeJS函數(shù)接口描述的正則引擎的設(shè)計(jì)和實(shí)現(xiàn)[D].南京:東南大學(xué),2017.
[7]? 張海波.基于Android的學(xué)生電子假條管理平臺[J].電腦知識與技術(shù),2018,(30).
[8]? 吳建軍.淺談人力資源管理中請假條標(biāo)準(zhǔn)格式設(shè)計(jì)[J].中小企業(yè)管理與科技(中旬刊),2015,(10).
[9]? 張婷婷,馬明棟,王得玉.OCR文字識別技術(shù)的研究[J].計(jì)算機(jī)技術(shù)與發(fā)展,2019,(4).
[10]? 王學(xué)梅.OCR文字識別系統(tǒng)的應(yīng)用[J].現(xiàn)代信息科技,2020,(18).
收稿日期:2020-06-08
作者簡介:蘭天(1990-),男,陜西漢中人,助教,碩士,從事人力資源管理研究;鄧小云(1984-),女,陜西漢中人,碩士,從事公共管理研究。