備管理系統(tǒng)OAMS:從狀態(tài)機(jī)設(shè)計(jì)到二維碼盤點(diǎn)的全流程實(shí)踐)
簡(jiǎn)介辦公設(shè)備管理系統(tǒng)OAMS是一套面向企事業(yè)單位的Java Web項(xiàng)目覆蓋設(shè)備采購(gòu)、入庫(kù)、領(lǐng)用、維修、報(bào)廢等全生命周期管理并支持庫(kù)存與供應(yīng)商管理能有效提升辦公設(shè)備使用效率。資源共451個(gè)文件以JSP頁(yè)面、Java業(yè)務(wù)類、XML/Properties配置文件和Jar依賴包為主另含GIF/JPG操作截圖與數(shù)據(jù)庫(kù)文件如mdf/ldf壓縮包約6.7MB。源碼中Action、DAO等類結(jié)構(gòu)清晰詳細(xì)實(shí)現(xiàn)了設(shè)備唯一標(biāo)識(shí)與分類管理、領(lǐng)用歸還電子審批、維修進(jìn)度跟蹤、報(bào)廢評(píng)估及統(tǒng)計(jì)報(bào)表生成等核心模塊數(shù)據(jù)庫(kù)腳本可輔助快速搭建運(yùn)行環(huán)境。已有269人學(xué)習(xí)下載適合需要完成課程設(shè)計(jì)、畢業(yè)設(shè)計(jì)或進(jìn)行SSH框架二次開(kāi)發(fā)的技術(shù)人員參考。1. 項(xiàng)目背景與需求拆解1.1 辦公設(shè)備管理的真實(shí)痛點(diǎn)遠(yuǎn)不止“記個(gè)賬”這么簡(jiǎn)單做這個(gè)辦公設(shè)備管理系統(tǒng)OAMS起因其實(shí)挺現(xiàn)實(shí)的。公司規(guī)模到一百多人之后行政手里的設(shè)備臺(tái)賬已經(jīng)亂成一鍋粥筆記本、顯示器、打印機(jī)、投影儀、辦公桌椅、電話機(jī)雜七雜八加起來(lái)上千件。以前用Excel登記誰(shuí)領(lǐng)了什么、什么時(shí)候還的、哪臺(tái)機(jī)器送修了、修了幾次全靠行政小姐姐的記憶力。設(shè)備找到不到、報(bào)銷對(duì)不上、盤點(diǎn)要翻半天表這些事每天都在發(fā)生。所以我做OAMS的初衷是要解決三個(gè)核心問(wèn)題設(shè)備去向可追溯、全生命周期可管理、盤點(diǎn)對(duì)賬不再靠人肉。用一句話概括就是讓行政從“人肉記憶維護(hù)臺(tái)賬”變成“系統(tǒng)自動(dòng)記錄每一臺(tái)設(shè)備的完整軌跡”。這件事聽(tīng)起來(lái)簡(jiǎn)單做起來(lái)其實(shí)有不少門道。1.2 系統(tǒng)定位不是資產(chǎn)管理系統(tǒng)而是“能管到日常動(dòng)作”的設(shè)備系統(tǒng)做之前我特意對(duì)比了市面上成熟的資產(chǎn)管理系統(tǒng)比如用友、金蝶的資產(chǎn)模塊還有專門的EAM軟件。它們功能確實(shí)強(qiáng)大但普遍存在兩個(gè)問(wèn)題一是太重光基礎(chǔ)資料維護(hù)就能折騰一個(gè)月二是太貴按年收費(fèi)的授權(quán)模式對(duì)小團(tuán)隊(duì)不友好。所以我給OAMS的定位很明確做一套“輕量但動(dòng)作完整”的設(shè)備管理系統(tǒng)。所謂“完整動(dòng)作”就是設(shè)備從入庫(kù)、領(lǐng)用、歸還、調(diào)撥、維修、報(bào)廢到盤點(diǎn)的全周期流程每個(gè)動(dòng)作都要在系統(tǒng)里有記錄、有狀態(tài)、有時(shí)間戳。它不需要對(duì)接財(cái)務(wù)折舊也不需要復(fù)雜的審批流引擎但日常行政運(yùn)營(yíng)需要的功能一個(gè)都不能少。這套系統(tǒng)的目標(biāo)用戶也很清晰中小企業(yè)的行政人員、IT運(yùn)維、部門設(shè)備管理員以及需要查詢名下設(shè)備信息的普通員工。2. 核心模塊設(shè)計(jì)與數(shù)據(jù)建模思路2.1 設(shè)備檔案唯一標(biāo)識(shí)是尊嚴(yán)也是系統(tǒng)的命根子整個(gè)OAMS的數(shù)據(jù)基礎(chǔ)是設(shè)備檔案表。這里最關(guān)鍵的決策就是“設(shè)備編號(hào)”規(guī)則。我見(jiàn)過(guò)很多公司用純流水號(hào)比如001、002結(jié)果設(shè)備一多根本看不出是什么東西。也有用資產(chǎn)編號(hào)貼標(biāo)簽的但標(biāo)簽掉了就徹底失聯(lián)。我做OAMS時(shí)定的編號(hào)規(guī)則是設(shè)備類別碼購(gòu)置年份部門代碼三位流水號(hào)。舉個(gè)例子PC-2024-IT-021 代表IT部門2024年購(gòu)入的第21臺(tái)電腦PRT-2023-ADM-005 是行政部2023年第5臺(tái)打印機(jī)。這套規(guī)則有幾個(gè)好處看到編號(hào)就能知道設(shè)備類型、歸屬部門和大致購(gòu)置時(shí)間盤點(diǎn)時(shí)不用逐個(gè)掃系統(tǒng)按部門或類別篩選時(shí)前綴本身就具備分區(qū)能力即使標(biāo)簽貼紙掉了靠編號(hào)也能快速定位設(shè)備。設(shè)備檔案表的字段設(shè)計(jì)我的建議是“基礎(chǔ)信息擴(kuò)展屬性狀態(tài)信息”三段式?;A(chǔ)信息包含設(shè)備編號(hào)、名稱、類別、品牌型號(hào)、序列號(hào)SN、購(gòu)置日期、購(gòu)置價(jià)格、供應(yīng)商、質(zhì)保期擴(kuò)展屬性用JSON字段存方便不同設(shè)備類型存不同參數(shù)比如筆記本存CPU、內(nèi)存、硬盤投影儀存亮度和分辨率狀態(tài)信息包含當(dāng)前狀態(tài)、當(dāng)前使用者、存放位置、上次盤點(diǎn)時(shí)間。用JSON存擴(kuò)展屬性是核心技術(shù)決策因?yàn)橛簿幋a列的話每新增一種設(shè)備類型就要改表結(jié)構(gòu)用JSON字段則只需要在配置里加屬性模板即可靈活性高很多。2.2 狀態(tài)機(jī)設(shè)計(jì)讓設(shè)備的每一次流轉(zhuǎn)都按規(guī)則走設(shè)備管理最怕的就是狀態(tài)混亂。一臺(tái)電腦領(lǐng)出去了過(guò)了半年想不起來(lái)是在誰(shuí)手里還是在庫(kù)里送修的設(shè)備修好了沒(méi)人領(lǐng)一直掛著“維修中”狀態(tài)。我在OAMS里設(shè)計(jì)了一個(gè)嚴(yán)格的狀態(tài)機(jī)全部狀態(tài)只有五個(gè)在庫(kù)、已領(lǐng)用、維修中、已報(bào)廢、待處置。任何設(shè)備在同一時(shí)刻只能處于其中一個(gè)狀態(tài)而狀態(tài)之間只能按固定路徑轉(zhuǎn)移。比如“在庫(kù)”可以領(lǐng)用變成“已領(lǐng)用”也可以送修變成“維修中”“已領(lǐng)用”可以歸還變“在庫(kù)”也可以直接送修變“維修中”“維修中”可以修好變“在庫(kù)”修不好走報(bào)廢流程變“已報(bào)廢”。這套狀態(tài)機(jī)不只是理論設(shè)計(jì)我在數(shù)據(jù)庫(kù)層面用觸發(fā)器和應(yīng)用層雙重做了校驗(yàn)防止有人繞過(guò)流程直接改狀態(tài)。為什么這樣設(shè)計(jì)因?yàn)樵O(shè)備管理的本質(zhì)是追蹤“設(shè)備當(dāng)前在哪、處于什么狀態(tài)”狀態(tài)混亂往往不是責(zé)任心問(wèn)題而是流程沒(méi)有強(qiáng)制約束。狀態(tài)機(jī)把規(guī)則寫死之后行政不需要思考“這臺(tái)設(shè)備該不該出庫(kù)”系統(tǒng)直接攔截非法操作。比如一臺(tái)已經(jīng)報(bào)廢的設(shè)備無(wú)論如何都走不了“領(lǐng)用”流程。2.3 流程設(shè)計(jì)領(lǐng)用、歸還、調(diào)撥的字段和審批邏輯設(shè)備領(lǐng)用流程是我做得最細(xì)的一塊。員工提交領(lǐng)用申請(qǐng)選擇設(shè)備、填寫用途和使用期限部門管理員審批IT或行政確認(rèn)發(fā)放系統(tǒng)自動(dòng)把設(shè)備狀態(tài)改為“已領(lǐng)用”并關(guān)聯(lián)到申請(qǐng)人名下。這里有個(gè)細(xì)節(jié)領(lǐng)用記錄并不是簡(jiǎn)單插入一條數(shù)據(jù)就完事而是同時(shí)更新設(shè)備主表的狀態(tài)、寫入資產(chǎn)流水表Asset Ledger、生成一條待確認(rèn)的“使用記錄”。資產(chǎn)流水表是系統(tǒng)的操作日志每一次狀態(tài)變更、每一次信息修改都會(huì)留下痕跡這個(gè)表在盤點(diǎn)和審計(jì)時(shí)作用巨大沒(méi)有它系統(tǒng)就是個(gè)普通登記本。歸還流程的設(shè)計(jì)也講究。員工提交歸還行政檢查設(shè)備外觀和功能填寫歸還備注系統(tǒng)更新設(shè)備狀態(tài)為“在庫(kù)”同時(shí)關(guān)閉對(duì)應(yīng)的領(lǐng)用記錄。如果檢查發(fā)現(xiàn)問(wèn)題可以選擇直接發(fā)起維修流程而不是先歸還再單獨(dú)提交維修單少一步操作就少一次出錯(cuò)概率。調(diào)撥流程則是“部門A歸還部門B領(lǐng)用”的原子化合并操作我在數(shù)據(jù)庫(kù)事務(wù)里做了保證要么兩個(gè)動(dòng)作同時(shí)成功要么全部回滾避免出現(xiàn)設(shè)備在兩個(gè)部門之間“懸空”的情況。3. 實(shí)操過(guò)程與關(guān)鍵環(huán)節(jié)實(shí)現(xiàn)3.1 技術(shù)選型我為什么選了 Spring Boot Vue MySQL 這套組合OAMS的技術(shù)棧選擇我權(quán)衡過(guò)不少方案。最終定的是 Spring Boot 2.7 Vue 3 Element Plus MySQL 8.0部署在單臺(tái)8核16G的云服務(wù)器上。選這套組合的原因團(tuán)隊(duì)熟悉度優(yōu)先這套技術(shù)棧在中國(guó)中小企業(yè)的軟件團(tuán)隊(duì)里普及率最高后面有人接手也好找人。Spring Boot在權(quán)限框架Spring Security、事務(wù)管理、JPA/MyBatis的生態(tài)支持上都很成熟做這類管理系統(tǒng)的開(kāi)發(fā)效率遠(yuǎn)高于從零寫Python Flask或Node.js。MySQL 8.0作為數(shù)據(jù)庫(kù)足夠。這套系統(tǒng)實(shí)際并發(fā)量不大峰值也就幾十個(gè)人同時(shí)用MySQL完全扛得住。更重要的是MySQL的JSON字段、窗口函數(shù)、CTE這些特性在8.0里已經(jīng)很穩(wěn)定做統(tǒng)計(jì)報(bào)表、樹(shù)形部門結(jié)構(gòu)查詢都很順手。緩存方面我暫時(shí)沒(méi)有引入Redis因?yàn)橄到y(tǒng)的讀寫比例還沒(méi)到需要緩存的量級(jí)等后續(xù)設(shè)備負(fù)責(zé)人埋點(diǎn)、消息通知多起來(lái)再考慮。3.2 核心表結(jié)構(gòu)與關(guān)鍵SQL直接抄作業(yè)設(shè)備主表和資產(chǎn)流水表是整個(gè)數(shù)據(jù)庫(kù)的核心結(jié)構(gòu)我貼出來(lái)給大家參考。設(shè)備主表我用的是單表設(shè)計(jì)不拆主表和子表因?yàn)檗k公設(shè)備字段差異靠JSON擴(kuò)展字段解決拆表反而讓查詢邏輯復(fù)雜。核心字段包括id、device_code設(shè)備編號(hào)、device_name、category_code類別碼、brand_model、serial_number設(shè)備SN唯一索引、status當(dāng)前狀態(tài)字典值、current_user_id、location、purchase_date、purchase_price、supplier、warranty_end、ext_json、created_at、updated_at。資產(chǎn)流水表的重點(diǎn)字段是id、device_id外鍵、action_type動(dòng)作類型入庫(kù)/領(lǐng)用/歸還/報(bào)修/報(bào)廢/盤點(diǎn)/調(diào)撥、operator_id操作人、target_user_id涉及的目標(biāo)人、new_status、old_status、remark、created_at。這張表我只做插入不做更新和刪除。誰(shuí)動(dòng)了哪臺(tái)設(shè)備、把狀態(tài)從什么改成了什么、操作時(shí)間是多少都永久保留。系統(tǒng)里所有“最近做了什么”的頁(yè)面都直接查這張表性能好而且邏輯統(tǒng)一。這里給一個(gè)實(shí)用的SQL示例查詢每臺(tái)設(shè)備的當(dāng)前狀態(tài)和最近的領(lǐng)用人SELECT d.device_code, d.device_name, d.status, u.real_name AS current_user, d.location, d.purchase_date FROM asset_device d LEFT JOIN sys_user u ON d.current_user_id u.id WHERE d.is_deleted 0 ORDER BY d.category_code, d.device_code;這個(gè)查詢很簡(jiǎn)單但要注意加 is_deleted 軟刪除標(biāo)記不要物理刪除設(shè)備記錄。設(shè)備是資產(chǎn)哪怕報(bào)廢了歷史記錄也要留著供審計(jì)和折舊參考。3.3 盤點(diǎn)功能的實(shí)現(xiàn)思路二維碼刮獎(jiǎng)式盤點(diǎn)盤點(diǎn)功能是行政最剛需的功能也是系統(tǒng)里最出彩的部分。我的實(shí)現(xiàn)思路是為每臺(tái)設(shè)備生成唯一的二維碼貼在設(shè)備上盤點(diǎn)時(shí)用手機(jī)小程序或H5掃碼掃到后自動(dòng)標(biāo)記“已盤點(diǎn)”不需要手動(dòng)勾選。實(shí)現(xiàn)細(xì)節(jié)上有一個(gè)難點(diǎn)二維碼貼紙上必須包含設(shè)備編號(hào)和設(shè)備ID但設(shè)備ID是對(duì)內(nèi)主鍵直接暴露在二維碼里有安全風(fēng)險(xiǎn)。我的做法是把ID做一次短碼轉(zhuǎn)換用設(shè)備編號(hào)隨機(jī)鹽做MD5截?cái)嘁部梢栽诙S碼里存一個(gè)UUID這個(gè)UUID在系統(tǒng)中映射到具體設(shè)備。實(shí)際跑下來(lái)的體驗(yàn)是盤點(diǎn)100臺(tái)設(shè)備用時(shí)不到30分鐘而以前對(duì)著Excel逐個(gè)勾選至少要一下午。盤點(diǎn)的報(bào)表邏輯是后臺(tái)自動(dòng)對(duì)比“系統(tǒng)應(yīng)有設(shè)備”和“掃碼盤點(diǎn)設(shè)備”生成差異表。差異分三類未掃碼可能漏盤或流失、多掃碼重復(fù)計(jì)數(shù)、盤到了但位置登記不符位置更新提示。每類差異都有對(duì)應(yīng)的處理動(dòng)作行政確認(rèn)后一鍵生成盤點(diǎn)報(bào)告。這個(gè)設(shè)計(jì)把最耗人工的盤點(diǎn)對(duì)賬工作壓縮到了分鐘級(jí)。4. 開(kāi)發(fā)與上線中的常見(jiàn)問(wèn)題以及我的排查方法4.1 設(shè)備編號(hào)重復(fù)導(dǎo)致領(lǐng)用記錄錯(cuò)亂的排查實(shí)錄系統(tǒng)上線第二周就出了一個(gè)問(wèn)題有一批設(shè)備編號(hào)重復(fù)了原因是早期Excel臺(tái)賬里PRT-2023-ADM-005這個(gè)編號(hào)被錄入了兩次導(dǎo)入工具沒(méi)有做唯一性校驗(yàn)。結(jié)果在領(lǐng)用的時(shí)候系統(tǒng)按編號(hào)關(guān)聯(lián)設(shè)備兩臺(tái)物理設(shè)備同時(shí)被關(guān)聯(lián)到了同一個(gè)編號(hào)下領(lǐng)用記錄、盤點(diǎn)結(jié)果全部亂了。排查過(guò)程花費(fèi)了大約半天。我先從流水表倒查發(fā)現(xiàn)同一時(shí)刻有兩臺(tái)設(shè)備產(chǎn)生了“領(lǐng)用”操作再查設(shè)備主表發(fā)現(xiàn)有兩條記錄的device_code完全相同。搞明白原因后做了兩處修復(fù)數(shù)據(jù)庫(kù)層面給device_code加唯一索引并在導(dǎo)入Excel時(shí)先做一次編號(hào)重復(fù)校驗(yàn)線上數(shù)據(jù)處理則通過(guò)“預(yù)留一個(gè)編號(hào)副本給重復(fù)設(shè)備重新編號(hào)”的方式修復(fù)同時(shí)用流水表的操作記錄反推哪一臺(tái)是真實(shí)領(lǐng)用設(shè)備。這件事給我的教訓(xùn)是從外部導(dǎo)入數(shù)據(jù)時(shí)必須做完整的數(shù)據(jù)清洗和校驗(yàn)不能過(guò)分信任源表數(shù)據(jù)。4.2 掃碼盤點(diǎn)的掃碼結(jié)果和實(shí)際設(shè)備對(duì)不上剛開(kāi)始使用二維碼盤點(diǎn)時(shí)反饋?zhàn)疃嗟木褪恰皰吡薃設(shè)備系統(tǒng)卻顯示B設(shè)備”。排查第一輪我以為是我二維碼映射表的問(wèn)題檢查了UUID和設(shè)備ID的映射邏輯沒(méi)發(fā)現(xiàn)異常。后來(lái)讓現(xiàn)場(chǎng)操作人員記錄了一個(gè)故障點(diǎn)才發(fā)現(xiàn)是場(chǎng)景問(wèn)題二維碼貼紙是用普通A4紙打印后用膠帶粘在設(shè)備上的用了兩個(gè)月貼紙邊緣磨損二維碼圖案不清晰手機(jī)掃描時(shí)OCR自動(dòng)糾錯(cuò)誤識(shí)別成了鄰近設(shè)備的碼。解決方案分兩步改用PVC材質(zhì)的標(biāo)簽紙配合條碼打印機(jī)打印貼在設(shè)備側(cè)后方不易磨損的位置同時(shí)在小程序端增加了掃碼后的確認(rèn)彈窗顯示設(shè)備編號(hào)和設(shè)備名稱需要操作人點(diǎn)擊確認(rèn)才算盤點(diǎn)成功。這個(gè)改動(dòng)之后誤掃率基本降到零。其實(shí)掃描確認(rèn)這一層在任何掃碼系統(tǒng)里都值得加看起來(lái)多一步操作實(shí)則避免了大范圍返工的尷尬。4.3 權(quán)限設(shè)計(jì)踩坑普通員工看到了所有人的領(lǐng)用記錄OAMS的權(quán)限設(shè)計(jì)做的是三層系統(tǒng)管理員、部門管理員、普通用戶。系統(tǒng)管理員管所有配置和全局?jǐn)?shù)據(jù)部門管理員管本部門的設(shè)備和人員普通用戶只能看自己名下和可申請(qǐng)的設(shè)備。上線后不久有業(yè)務(wù)部門反饋普通員工登錄系統(tǒng)后能看到全公司設(shè)備的領(lǐng)用記錄列表。原因很典型我在后端查詢接口里漏了權(quán)限過(guò)濾條件只在前端菜單上做了按鈕隱藏。懂前端的都明白前端隱藏只是視覺(jué)上的接口依然返回了全量數(shù)據(jù)。修復(fù)方案是后端在查詢方法上加數(shù)據(jù)權(quán)限攔截器根據(jù)當(dāng)前登錄用戶的角色自動(dòng)拼接部門過(guò)濾條件前端隱藏邏輯只作為輔助。這里我也建議各位開(kāi)發(fā)同類系統(tǒng)時(shí)從一開(kāi)始就把數(shù)據(jù)權(quán)限放在后端解決前端只做交互展示。5. 上線運(yùn)營(yíng)后的經(jīng)驗(yàn)沉淀5.1 系統(tǒng)好不好用取決于錄入的歷史數(shù)據(jù)準(zhǔn)不準(zhǔn)OAMS從上線到穩(wěn)定運(yùn)行最大的阻力不是開(kāi)發(fā)而是歷史數(shù)據(jù)的清洗和錄入。我們花了整整三個(gè)工作日盤點(diǎn)線下資產(chǎn)對(duì)照Excel臺(tái)賬、采購(gòu)發(fā)票、實(shí)物標(biāo)簽逐臺(tái)核對(duì)設(shè)備型號(hào)、SN、購(gòu)買日期和使用人。這個(gè)過(guò)程不能省如果帶著臟數(shù)據(jù)上線系統(tǒng)后續(xù)所有統(tǒng)計(jì)都不可信連盤點(diǎn)都做不明白。有一個(gè)經(jīng)驗(yàn)值得分享批量導(dǎo)入前先用腳本對(duì)Excel做數(shù)據(jù)質(zhì)量檢查檢查項(xiàng)包括必填字段是否為空、編號(hào)是否重復(fù)、購(gòu)買價(jià)格是否為合法數(shù)字、購(gòu)買日期是否在合理范圍內(nèi)。檢查報(bào)告先人工review一輪再執(zhí)行導(dǎo)入這樣系統(tǒng)一上線就是干凈的數(shù)據(jù)員工和行政同學(xué)對(duì)系統(tǒng)的信任度也會(huì)高很多。5.2 設(shè)備使用率統(tǒng)計(jì)比想象中有價(jià)值后續(xù)可以繼續(xù)擴(kuò)展系統(tǒng)跑通之后我加了一個(gè)使用率統(tǒng)計(jì)模塊按部門和設(shè)備類別統(tǒng)計(jì)設(shè)備利用率總設(shè)備數(shù)、在庫(kù)閑置數(shù)、領(lǐng)用中數(shù)量、維修中數(shù)量以及平均領(lǐng)用時(shí)長(zhǎng)。這個(gè)模塊最初只是為了讓行政好看數(shù)據(jù)但實(shí)際跑起來(lái)后發(fā)現(xiàn)一個(gè)很有價(jià)值的應(yīng)用場(chǎng)景可以用來(lái)指導(dǎo)新設(shè)備采購(gòu)決策。比如我們統(tǒng)計(jì)后發(fā)現(xiàn)研發(fā)部的筆記本平均領(lǐng)用時(shí)長(zhǎng)達(dá)26個(gè)月而市場(chǎng)部普遍只有14個(gè)月左右不同部門對(duì)設(shè)備的老化速度差異很大某部門在庫(kù)閑置設(shè)備占比超過(guò)30%但還在提采購(gòu)申請(qǐng)。這些數(shù)據(jù)直接推給了財(cái)務(wù)和老板后續(xù)采購(gòu)預(yù)算的審批越來(lái)越有依據(jù)行政從“被催采購(gòu)”變成了“按數(shù)據(jù)配給”。這個(gè)體驗(yàn)讓我覺(jué)得做管理系統(tǒng)不要停留在“記錄事實(shí)”層面多一些統(tǒng)計(jì)和洞察系統(tǒng)的價(jià)值就會(huì)立刻上一個(gè)臺(tái)階。5.3 移動(dòng)端輕量化是用戶體驗(yàn)的勝負(fù)手OAMS最初的交互頁(yè)面都是基于PC端設(shè)計(jì)的但實(shí)際使用場(chǎng)景中領(lǐng)用設(shè)備、掃碼盤點(diǎn)幾乎都是發(fā)生在工位、庫(kù)房、會(huì)議室這些不在電腦前的地方。后來(lái)我把員工常用功能做成了移動(dòng)端H5頁(yè)面申請(qǐng)領(lǐng)用、查看名下設(shè)備、提交歸還、掃碼盤點(diǎn)都是手機(jī)瀏覽器里直接能用的輕頁(yè)面。移動(dòng)端H5的實(shí)現(xiàn)成本不高因?yàn)槲覀兒蠖吮緛?lái)就是RESTful接口前端Vue項(xiàng)目可以直接復(fù)用大部分組件只是用CSS做了響應(yīng)式適配。但收益很明顯員工不用每次都要打開(kāi)電腦、輸入網(wǎng)址、登錄系統(tǒng)直接在手機(jī)上點(diǎn)鏈接就能完成行政同事的負(fù)擔(dān)也大大減輕。我覺(jué)得辦公設(shè)備管理系統(tǒng)這種典型的內(nèi)部工具移動(dòng)端支持是剛需做系統(tǒng)時(shí)最好從第一天就考慮進(jìn)去。本文還有配套的精品資源點(diǎn)擊獲取