OFBIZ為我們提供了POS模塊,它已經(jīng)可以滿足我們?nèi)粘J浙y的大部分要求了。但是美中不足的是它沒(méi)有提供庫(kù)存查詢功能。我也沒(méi)看出來(lái)OFBIZ有近期實(shí)現(xiàn)此功能的計(jì)劃,所以打算自己做一個(gè)。
首先研究一下POS模塊的代碼結(jié)構(gòu):
1、POS模塊同其它模塊的實(shí)現(xiàn)方式有所區(qū)別,它用了XUL技術(shù)來(lái)定制展示的界面。所有屏幕文件使用XUL格式定義于screens目錄之下
2、按鈕事件與java代碼映射關(guān)系,記錄在config\buttonevents.xml下
3、資源文件存放在XuiLabels_[locale].properties與config\PosUiLabels.xml中
了解結(jié)構(gòu)后,加上庫(kù)存查詢功能就很簡(jiǎn)單了,我是這樣做的:
1、在screens/default/menu/mgrmain.xml中增加一個(gè)mgrInquiryInventory庫(kù)存查詢按鈕,它會(huì)出現(xiàn)在POS的“經(jīng)理”界面中的
2、在buttonevents.xml中加上以下行,映射事件代碼
<event button-name="mgrInquiryInventory" class-name="org.ofbiz.pos.event.ManagerEvents" method-name="inquiryInventory" disable-lock="false"/>
3、在ManagerEvents.java中加入inquiryInventory方法代碼(我是使用了一個(gè)ShowInventory的XPage來(lái)展現(xiàn)當(dāng)前選中項(xiàng)的庫(kù)存分布)
4、完工。
算了算,包括閱讀代碼和編寫這些東東總共也就花了七八個(gè)小時(shí)的effort,不知道為什么ofbiz就不肯加上這個(gè)功能呢?或者pos模塊不再發(fā)展了?