呂克山
(蘭州晨熙電子科技有限公司,甘肅 蘭州 730030)
醫(yī)藥行業(yè)是一個(gè)比較特殊的行業(yè),與人們?nèi)粘I钕⑾⑾嚓P(guān)。我國(guó)存在很多大小不一的醫(yī)藥銷(xiāo)售企業(yè),總的來(lái)看,大部分企業(yè)的庫(kù)存管理模式還比較落后,沒(méi)有實(shí)施精確的庫(kù)存控制,庫(kù)存周轉(zhuǎn)率較低。為了避免缺貨導(dǎo)致的客戶(hù)流失,在供應(yīng)鏈的各個(gè)環(huán)節(jié)都保有過(guò)高的安全庫(kù)存。目前中小醫(yī)藥零售企業(yè)的庫(kù)存管理系統(tǒng)功能過(guò)于簡(jiǎn)單,僅限于入庫(kù)、出庫(kù)、盤(pán)點(diǎn)等基本功能,沒(méi)有庫(kù)存優(yōu)化的理念和功能。造成大部分企業(yè)壓貨嚴(yán)重、物流效率低、庫(kù)存管理水平低。
醫(yī)藥企業(yè)大約35%的年度預(yù)算花費(fèi)在庫(kù)存管理中,藥品的庫(kù)存管理的目的是在成本控制和提高效率上。藥品的庫(kù)存管理對(duì)醫(yī)藥企業(yè)的經(jīng)營(yíng)活動(dòng)至關(guān)重要,對(duì)企業(yè)的資金周轉(zhuǎn)率也有一定影響。合理控制企業(yè)庫(kù)存量,有效減少藥品積壓,避免藥品過(guò)期失效,提高藥品周轉(zhuǎn)率,加快資金流動(dòng),對(duì)提高企業(yè)的經(jīng)濟(jì)效益起著積極的作用。
提高庫(kù)存周轉(zhuǎn)率、降低安全庫(kù)存,甚至實(shí)現(xiàn)零庫(kù)存是庫(kù)存管理終極目標(biāo)。擬采用Web技術(shù),借助庫(kù)存管理、數(shù)據(jù)挖掘、機(jī)器學(xué)習(xí)理論,建立B/S模式的醫(yī)藥零售企業(yè)庫(kù)存優(yōu)化管理系統(tǒng)。具體實(shí)現(xiàn)內(nèi)容如下:
1)采用“ABC”庫(kù)存分類(lèi)管理方法,將庫(kù)存分為重中之重庫(kù)存、一般重要庫(kù)存和不重要庫(kù)存,然后根據(jù)不同等級(jí)分別進(jìn)行管理和控制。
2)數(shù)據(jù)庫(kù)接口模塊,對(duì)接庫(kù)存和銷(xiāo)售管理系統(tǒng),提取庫(kù)存數(shù)據(jù)和銷(xiāo)售數(shù)據(jù)。使得本系統(tǒng)能獨(dú)立于庫(kù)存管理系統(tǒng)和銷(xiāo)售管理系統(tǒng)獨(dú)立運(yùn)行。
3)庫(kù)存結(jié)構(gòu)分析模塊,分別統(tǒng)計(jì)藥品庫(kù)存數(shù)量、庫(kù)存金額、日銷(xiāo)售量、銷(xiāo)售天數(shù),計(jì)算各類(lèi)藥品的庫(kù)存周轉(zhuǎn)率,找出滯銷(xiāo)和快銷(xiāo)藥品,幫助企業(yè)優(yōu)化庫(kù)存結(jié)構(gòu),提高庫(kù)存周轉(zhuǎn)率。
4)失效及近效期藥品分析模塊,根據(jù)GSP規(guī)范,統(tǒng)計(jì)分析失效和近效期藥品,并進(jìn)行報(bào)警,嚴(yán)格有效期管理減少藥品積壓。
5)報(bào)表輸出模塊,輸出日銷(xiāo)售報(bào)表、周銷(xiāo)售報(bào)表、月銷(xiāo)售報(bào)表及自定義周期銷(xiāo)售報(bào)表,日庫(kù)存量報(bào)表、周庫(kù)存量報(bào)表、月庫(kù)存量報(bào)表及自定義周期庫(kù)存量報(bào)表。
6)銷(xiāo)售預(yù)測(cè)模塊,利用銷(xiāo)售數(shù)據(jù)、銷(xiāo)售門(mén)店所在地氣象數(shù)據(jù)、銷(xiāo)售門(mén)店所在地空氣質(zhì)量數(shù)據(jù),對(duì)重要庫(kù)存產(chǎn)品進(jìn)行銷(xiāo)售預(yù)測(cè),根據(jù)銷(xiāo)售預(yù)測(cè)數(shù)據(jù)制定安全庫(kù)存。銷(xiāo)售預(yù)測(cè)模塊包括網(wǎng)絡(luò)爬蟲(chóng)功能,用于收集氣象和空氣質(zhì)量數(shù)據(jù);數(shù)據(jù)預(yù)處理功能,把歷史銷(xiāo)售數(shù)據(jù)、氣象數(shù)據(jù)、空氣質(zhì)量數(shù)據(jù)整理成預(yù)測(cè)模型輸入數(shù)據(jù);預(yù)測(cè)結(jié)果展示功能,可視化展示預(yù)測(cè)結(jié)果。
開(kāi)發(fā)涉及到大量數(shù)據(jù)分析和機(jī)器學(xué)習(xí)內(nèi)容,目前機(jī)器學(xué)習(xí)首選Python為主要開(kāi)發(fā)語(yǔ)言。銷(xiāo)售預(yù)測(cè)中的算法采用Python結(jié)合Scikit-Learn開(kāi)發(fā),網(wǎng)絡(luò)爬蟲(chóng)框架采用Scrapy。
IDE 選擇 Pycharm,Python版本為 3.6,Web框架為Django2.0。
Django是一個(gè)開(kāi)放源代碼的Web應(yīng)用框架,由Python寫(xiě)成。Django的主要目的是簡(jiǎn)便、快速地開(kāi)發(fā)數(shù)據(jù)庫(kù)驅(qū)動(dòng)的網(wǎng)站。
3.2.1 系統(tǒng)硬件網(wǎng)絡(luò)環(huán)境
網(wǎng)絡(luò)架構(gòu)采用 TCP/IP協(xié)議,windows、Linux操作系統(tǒng),各軟件服務(wù)器可分別運(yùn)行在不同的服務(wù)器上,也可裝備在同一臺(tái)服務(wù)器上,硬件建議采用專(zhuān)用服務(wù)器(IBM、HP、DELL 等)。
3.2.2 系統(tǒng)軟件環(huán)境
1)數(shù)據(jù)庫(kù)服務(wù)器:
操作系統(tǒng):Windows 2008 Server/Linux
數(shù)據(jù)庫(kù):MySql 5.0以上。
2)應(yīng)用服務(wù)器
操作系統(tǒng):Linux Nginx+uWSGI+Django;
Web服務(wù)器軟件:Nginx+uWSGI+Django。
3)客戶(hù)端
瀏覽器:Internet Explorer8以上/谷歌 Chrome瀏覽器/360瀏覽器;
顯示器:分辨率不低于1366×768。
系統(tǒng)功能結(jié)構(gòu)如圖1所示。根據(jù)項(xiàng)目的主要功能,把項(xiàng)目分為不同的應(yīng)用。首先創(chuàng)建Django項(xiàng)目,命名為MedicineStore,然后在項(xiàng)目中分別創(chuàng)建index、sales、store、report、sysAdmin、user應(yīng)用。完成項(xiàng)目和項(xiàng)目應(yīng)用創(chuàng)建后,在mediniceStore根目錄下創(chuàng)建static文件夾,用于存放靜態(tài)資源,包括css、js、font、image等。其中index處理項(xiàng)目首頁(yè)以及包含數(shù)據(jù)庫(kù)models,sales處理銷(xiāo)售分析模塊功能、store處理庫(kù)存分析模塊功能、report處理報(bào)表模塊功能、sysAdmin處理系統(tǒng)管理功能、user處理用戶(hù)管理功能。

圖1 系統(tǒng)功能結(jié)構(gòu)圖
Amaze UI以移動(dòng)優(yōu)先(Mobile first)為理念,從小屏逐步擴(kuò)展到大屏,最終實(shí)現(xiàn)所有屏幕適配,適應(yīng)移動(dòng)互聯(lián)潮流。系統(tǒng)前端使用了Amaze UI。主界面如圖2所示。

圖2 系統(tǒng)主頁(yè)面設(shè)計(jì)
采用黑盒測(cè)試方法,對(duì)醫(yī)藥庫(kù)存優(yōu)化管理系統(tǒng)進(jìn)行測(cè)試,包括功能測(cè)試、界面測(cè)試見(jiàn)表1。整個(gè)過(guò)程采用自底向上,逐個(gè)集成的的辦法,依次進(jìn)行單元測(cè)試,組裝測(cè)試,測(cè)試用例的設(shè)計(jì)包括合理的和不合理的輸入條件。

表1 對(duì)醫(yī)藥庫(kù)存優(yōu)化管理系統(tǒng)測(cè)試