老司机深夜免费福利-老司机深夜影院入口aaaa-老司机午夜精品99久久免费-老司机午夜精品视频-老司机午夜精品视频播放-老司机午夜精品视频你懂的

行業動態

當前位置:首頁>>新聞中心>>行業動態 發布時間:2017-06-22 06:56:52

基于Android平臺的收銀秤系統的設計與實現

時間:2017-06-22 06:56:52 來源:本站 點擊數:706

針對傳統收銀秤系統功能簡單、操作復雜的問題,研究了在Android開發平臺下收銀秤系統的設計與 實現。該系統利用Android集成的小型嵌入式數據庫SQLite的開發接口、基于Java語言開發完成,實現了收銀 秤系統的稱重、計價和收銀等功能內置了相應的商品資料庫,也允許用戶導入需要的商品導出相應的統計數 ,并且已經在設備模擬器上測試通過。

0.引言

目前,集稱重、打印與收銀機管理功能于一體的收銀秤已廣泛應用于商業流通領域、百貨超市、 便利店、酒店、餐飲、快餐連鎖等多個領域。

這些品牌的收銀秤大都以單片機作為主控CPU, 沒有使用操作系統或者使用UCOS系統,功能較 為簡單響應速度慢,操作比較復雜,不適合計算 機水平程度較低的操作人員使用。

而使用Wintel系統收銀秤單價太高是其難 以取代單片機或ARM的重要原因。一臺采用 Intel核心與Microsoft平臺的收銀秤的到港報價 3000?5000元人民幣,終端市場的報價6000? 20000元人民幣,對于規模較小的生鮮及食品專 賣店而言是一筆不小的資本負擔。

200711月,Google推出基于Linux的操作 系統AndroidAndroid開放了源代碼,這給全世 界的應用程序開發人員提供了開放的開發平臺, 出現了基于Android平臺的各種各樣的應用程序, 應用領域廣泛、內容豐富,也使得Android很快就 統治了手機、平板電腦等領域。

1.收銀秤系統的硬件設計與實現

根據收銀秤的功能需求,系統采用三星公司 高性價比的、基于ARM Cortex-A8內核的 S5PV210處理器設計的硬件平臺。S5PV210處理 器采用了 32/64位的內部總線結構和最大833 MHz的運算速度。包括強大的硬件加速器,支持多 種格式的硬件編解碼等。S5PV210開發平臺具有 豐富的硬件資源,包含如下:512MB NAND Flash 512MB DDR2 內存,HDMI 顯示接口, USB Host2.0,USB OTG2.0 接口,1  SDIO   (Micro SD卡接口),支持1RS232串口接口 (調試串口)等。整個收銀秤系統硬件總體設計 框圖如圖1。利用該片內的512 MBFlash 512MBRAM分別實現控制程序和上萬個商品 PLU信息的存儲,外接I/O器件實現USB以太網 無線網絡的通訊以及支持7.0177.80mm) 10.1256.54mm)規格的LCD液晶顯示。利用 RS232串口外接電子秤器件和常見的LP-50打印 機和內置連續熱敏紙打印機接口,內置熱敏標簽 打印機接口,利用PS2接口連接掃描槍等。

體重1.jpg

2.系統功能和總體架構

按照收銀秤系統的功能需求及軟件的特點, 本收銀秤系統劃分為5個功能模塊,每個模塊有 多個子模塊,詳細說明如下。

收銀模塊:包含稱重、去皮、清零、付款、折 扣、掛單、取單等功能可接錢箱,進行現金的收支 和管理,可外接掃描槍掃描稱重或者非稱重商品, 進行收銀,可自動計算單品折扣或者總價的比例 折扣。

基礎數據模塊:包含部門的管理、商品分 組管理、商品類別的管理、商品PLU的管理、商品 批量添加和更新管理、商品折扣的管理、會員管理 和商品庫存管理等。

系統設置模塊:1)網絡設置;)用戶權限 的控制:收銀員的角色管理,包含銷售員、店鋪經 理等;收銀員的管理;設置收銀員的業務操作權限, 包括退貨、退款、掛單、取單、取消商品訂單和刪除 商品訂單等;設置商店名稱、地址和聯系電話等。

打印設置模塊:打印機的配置;打印格式 的配置如打印頭信息、打印尾信息、打印日期時 間格式和打印字體信息的配置等。

報表設置模塊:可以查看各種銷售報表, 如實時查看單個商品日銷售報表、當日銷售報表、 當曰銷售明細報表和店員銷售統計報表等。能對 銷售的各類商品進行銷存管理,查看打印商品庫 存報表,統計庫存量,根據單據來盤點庫存扣除 合理的損耗。

如上所述,該收銀秤系統基本上實現了市場 上收銀秤的所有功能,甚至包含了簡單的進銷存 和會員管理功能,能夠滿足大多數客戶的需求。

3.系統的關鍵功能具體實現

3.1商品管理的實現

商品管理包含商品名、商品編碼和商品價格 等基本信息的保存修改操作,它是收銀秤系統的 基礎。對于小型連鎖生鮮食品店、休閑食品專賣 店,中小型的商場、超市或商品數量較多的賣場, 商品管理是一個很繁重的任務。用戶需要將所有 商品進行編碼并逐個錄入到收銀秤系統中,以備 銷售。一個良好的商品管理模塊應能夠提供用戶 錄入商品,優化銷售報表,方便計算銷售利潤等。

3.1.1商品表的設計

商品表是整個收銀秤系統設計的核心與基 礎。通過梳理實際銷售業務流程,可分析各個功能 模塊所需要存儲的數據,整理相互之間的關聯, 而設計對應的商品表。根據收銀秤系統的需求,設 計了商品管理的數據表如表1

3.1.2表現層設計

商品管理列表界面采用LinearLayout布局, 并使用了自定義翻頁列表組件ListViewPage, 組件繼承自ListViewListViewAndroid界面設計中比較常用的組件它以列表的形式展示數據 庫表中的具體內容,并且能夠根據數據的長度和 屏幕的大小自適應顯示。ListView本身沒有顯示 上一頁和下一頁的按鈕,可通過手滑動方式動態 地加載數據,當向下滾動時最下邊顯示Loading …數據加載結束后,所顯示的Loading底欄消 失。本項目因為經常會用到顯示上一頁和下一頁 按鈕的分頁列表,所以自定義了 ListViewPage ,可以在多個模塊的列表中使用。ListViewPage 實現了 onPrevPageonNextPage函數,對應兩個 按鈕上一頁下一頁的方法。設置兩個變 iPageSize10iPageid默認為1,代表每頁只 顯示10條記錄,默認從第一頁開始。

體重2.jpg

商品信息界面采用LinearLayout布局,里面 包含ScrollView支持垂直滾動。使用Tablelayout 類以表格的形式對控件進行管理,有多個行和列 每一行為個TableRow對象,在TableRow下根 據需要添加子控件標簽或輸入框或單選框或下拉 框做為列,默認情況下,每個子控件占據一列。

3.1.3業務邏輯層設計

針對收銀秤系統的硬件內存等資源有限問 題,通過SQLite嵌入式數據庫引擎來實現結構 化數據存儲,封裝了 SQLite提供的API,編寫了 DBHelper工具類,進行數據庫增刪改查和事務處 理的基本操作。在商品添加或者編輯的界面中,使 用產品類別的下拉框。下拉框中的內容通過 DBHelper獲取時間放在字符串數組中將字符串 數組與ArrayAdapter連接起來,然后通過 setDropDownViewResource可以設置下拉列表的 風格,最后通過setAdapterAdapter添加到 Spinner,而使用 setOnltemSelectedListener Spinner添加事件監聽函數。為自動計算商品在收 銀銷售主界面的顯示位置,定義getShowPosit() 數,函數循環從數據庫中的同類商品中查找該類 別商品的頁面數及最小的空位置數。

3.1.4商品的批量增加和更新

針對收銀秤系統的商品品種較多問題,系統 設計了商品的批量增加和更新的功能,利用常用 .txt或者.csv文件保存商品的基本信息,含商品 的PLU碼、類別、名稱、價格及計量單位;同時將 商品的圖片命名為相應的PLU編碼的圖片,如商 APLU編碼為2201134則其圖片名稱為 2201134.jpg ;把商品信息和相應的圖片存放在同 個目錄下,通過網絡或U盤將文件夾拷貝到系統 data目錄中,就可以實現自動導入和更新數據。

3.2收銀功能的實現

收銀功能包含以下子模塊自動去皮、稱重、修 改商品售價、修改商品數量、掛單、取單、會員折扣、 計價、付款、打印、查看日報表和店員銷售報表等, 并支持收銀員登錄和暫時離開時對系統的鎖定。

3.2.1表現層設計

收銀秤的收銀界面比較復雜筆者采用分層 結構,并使用動態生成的方法。最頂層使用 RelativeLayout 布局,設置 Theme.NoTitleBar. Fullscreen風格。讓整個應用窗口是不含標題欄并 且全屏的。內部的商品顯示界面使用Tab控件,以 實現在同個界面中分別顯示不同類別的商品。每 個Tab控件顯示一種類別的商品,使用Tab控件 顯示時首先使用TabActivtiy里的getTabHsot() 法獲取TabHost對象,接著調用tabHost.addTab (TabSpec)方法添加商品類別頁[6]TabSpec則是通  TabHost.newTabSpec (Stringtag)類方法來創建的實例實例化后通過setIndicator方法可對其屬 性進行設置,設置屬性標簽頁的label (顯示的名 字)的值為商品類別的值。另外通過setContent 法是指定的是Tab的內容。內容是使用 FrameLayout來設置商品顯示的位置和圖片。 FrameLayout 是通過 FragmentManager 來對 Activity 運行時Fragment的添加、刪除、替換進行操作,而 不是在XML布局文件中進行定義。

通過FrameLayout動態顯示商品的位置和圖 片的步驟如下:

通過 Activity  getFragmentManager() 獲得 FragmentManager 對象;

  FragmentManager beginFragmentTransaction ()方法獲得 FragmentTransaction 對象;

通過 FsragmentTransaction  add()方法來 添加一個Fragment到當前的Activity中;

通過 FragmentTransaction  commit() 法來提交保存一個Fragment到當前Activity中。

3.2.2業務邏輯層設計

收銀功能是核心功能。包含許多子模塊:稱 重、計價、修改價格、會員折扣、掛單、取單和收款 等。稱重功能是通過創建電子秤監聽服務類 ScaleService 來實現,ScaleService 繼承自 Service 類。在AndroidService服務類類似于Linux 的后臺進程,是用來進行后臺數據處理的進程,該 進程能夠對用戶的行動進行跟蹤,收銀秤系統要 不斷采集電子秤發送過來的稱重信息,就需要編 寫 ScaleServicec 自定義的ScaleService繼承自系 統的Service類,然后重載其中的OnCreate ()OnStart ()OnDestroy ()三個方法,并需要在 AndroidManifest.xml 中注冊。

Activity 通過 Intent 啟動 ScaleService,如果 ScaleService還沒有運行,則Android先調用 onCreate ()方法然后調用OnStart ()方法;如果 ScaleService 已經運行,則只調用OnStart(),所以 一個ScaleServiceOnStart()方法可能會重復調 用多次。收銀秤系統關閉后則調用stopService() 法就會觸發ScaleServiceOnDestroy()方法。

在自定義的 ScaleService 中不能直接訪問數 據庫,只能通過ContentResolver訪問[8],實現步驟

如下:

創建 myContentProvider 繼承自ContentProvider 類;

AndroidManifest.xml中添加對應權限 并且注冊;

通過 Activity  getContentResolver()返回 ContentResolver實例對應的query函數獲得返 回為Cursor對象的數據集利用Cursor對象操作 數據庫;

ContentResolver實例提供的類似數據庫的 增刪改查的基本操作,分別對應insert()delete()update() query()函數。

4.仿真結果和測試

4.1仿真結果

 ADT (Android Developer Tools)開發環境 ,使用Java語言,設計和實現了基于Android 臺的收銀秤系統,并在開發板上測試了各項功能, 均按要求輸出了預期的結果,采用的開發板平臺 Android4.12所示為程序在模擬器上運行 時的功能主界面,當用戶登錄后可以選擇進去某 個模塊。圖3為收銀秤的收銀操作界面,具有計 價、稱重等功能。

體重3.jpg

4.2易用性測試

易用性測試的目的在于讓用戶容易接受使用 軟件。因為易用性是非功能性需求,有很多的主觀 成分無法量化。筆者使用B/T 16260.2-2006/ ISO/IEC 9126-2:2001軟件工程產品質量(第2 )外部度量”9]中的兩個指標:功能學習的難易 性(用戶要用多長時間學習使用一項功能)及操 作規程的減少(用戶能否減少操作規程)。測試對 象選擇CS2(LH51)收銀秤和RM-60 收銀秤在功能學習的難易性和的操作規程的減少 兩個指標上進行比較。選擇的功能集中在常用的 功能,含單個商品銷售、多個商品銷售、掛單、取 單、會員打折、修改價格、單品作廢、交易作廢和退 貨操作。收銀員的培訓時間測試情況如下:CS2 (LH51), 16h ,RM-60,16h ;Android CRS,2h培訓 時間從原來的16h大幅縮短為2h主要是由于智 能手機的廣泛使用,收銀員對于Android系統的使 用有著親切感,對于收銀秤系統更容易上手操作。

根據《CS2(LH51)收銀秤銷售操作 使用說明手冊》和《 RM-60操作培訓手冊》,估算出收銀秤的在8 常用的功能上的操作按鍵次數如表2

體重4.jpg

從表2可以看出對于常用的功能操作,按鍵 次數減少,可以大幅減少操作員的工作強度,提高 工作效率。由于界面更直觀,還能減少錯誤。

4.3響應時間測試

由于收銀秤的工作特性,在商品數量達到1 萬個時,需要收銀秤的響應時間不超過1s筆者對 收銀秤系統的最常用的3個操作:定位商品、計 價、計重進行響應時間測試。每個操作分別在100 100010000個商品的情況下進行30次的操 ,分別取其平均響應時間,結果見表3

體重5.jpg

從測試結果可以獲知由于稱重過程需要與 外部串口通信所以響應時間相對定位商品和計價較多但是總體上滿足收銀秤操作響應時間不 超過1s的要求。

5.結束語

傳統的收銀秤系統一般采用單片機作為主控 核心,沒有采用操作系統,內存容量少,操作不方 便。筆者根據收銀秤的應用需求,采用基于ARM Cortex-A8為內核的S5PV210開發板,設計了基于 Android的收銀秤硬件系統,并實現了大屏幕、可 視化、易操作的收銀秤軟件系統,并已開發出樣 機。經過整體測試證明了提供的設計方法的可用 性和可靠性。此外,由于需求的不斷豐富和更新 有些功能仍需完善,如銀聯卡刷卡消費和會員積 分卡管理等。此外,考慮提高系統的可擴展性以滿 足不同的應用場景,整個收銀界面的操作按鍵應 該是可配置的。

 

 


国产高清在线精品一区a| 国产精品1024永久免费视频| 日本特黄特色aaa大片免费| 亚洲第一色在线| 四虎影视久久久免费| 99热热久久| 日韩av东京社区男人的天堂| 亚洲天堂在线播放| 欧美另类videosbestsex视频| 欧美另类videosbestsex高清| 沈樵在线观看福利| 韩国毛片免费| 久草免费在线观看| 麻豆系列 在线视频| 精品在线免费播放| 麻豆网站在线免费观看| 欧美a免费| 国产一区二区福利久久| 亚洲精品影院久久久久久| 精品国产亚洲人成在线| 高清一级毛片一本到免费观看| 韩国三级视频网站| 成人a级高清视频在线观看| 亚洲爆爽| 四虎久久精品国产| 美女免费精品视频在线观看| 日日夜夜婷婷| 午夜在线影院| 欧美另类videosbestsex高清| 久久精品大片| 亚久久伊人精品青青草原2020| 国产韩国精品一区二区三区| 精品国产香蕉在线播出| 精品视频在线看| 国产伦精品一区二区三区在线观看 | 可以免费看污视频的网站| 久久久久久久久综合影视网| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 99久久精品国产片| 亚洲精品永久一区| 亚洲wwwwww| 青青久久精品| 国产麻豆精品免费视频| 欧美激情在线精品video| 精品国产一区二区三区免费| 超级乱淫黄漫画免费| 日本免费区| 免费一级片在线| 精品国产一区二区三区久| 一a一级片| 国产激情一区二区三区| 欧美激情一区二区三区视频| 日本特黄特色aaa大片免费| 日韩在线观看网站| 久久99中文字幕久久| 一级毛片视频在线观看| 日韩免费在线| 99热精品在线| 精品国产三级a| 国产韩国精品一区二区三区| 精品视频在线看| 成人免费观看网欧美片| 日本乱中文字幕系列| 韩国三级视频网站| 精品国产一区二区三区久| 成人免费高清视频| 成人a大片高清在线观看| 久久国产影院| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 精品久久久久久综合网| 欧美另类videosbestsex高清| 国产一区免费观看| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 国产网站免费视频| 日韩中文字幕在线亚洲一区| 国产麻豆精品| 色综合久久手机在线| 91麻豆精品国产自产在线观看一区 | 欧美国产日韩精品| 麻豆网站在线免费观看| 亚欧视频在线| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 免费国产在线视频| 日本在线www| 美国一区二区三区| 国产不卡精品一区二区三区| 韩国三级视频在线观看| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 日本免费区| 久久久久久久男人的天堂| 天天色成人网| 一a一级片| 午夜在线影院| 国产成人女人在线视频观看| 精品国产一区二区三区国产馆| 成人免费高清视频| 日韩avdvd| 国产伦理精品| 精品国产三级a| 国产不卡精品一区二区三区| 成人免费网站久久久| 日本免费区| 久久成人性色生活片| 精品在线免费播放| 高清一级毛片一本到免费观看| 青青青草视频在线观看| 国产视频一区二区在线观看| 欧美激情一区二区三区在线| 九九精品在线播放| 国产伦精品一区二区三区无广告| 黄视频网站免费看| 国产一区二区精品久久91| a级毛片免费观看网站| 成人a级高清视频在线观看| 中文字幕一区二区三区精彩视频| 高清一级淫片a级中文字幕 | 精品国产一区二区三区国产馆| 欧美激情一区二区三区在线| 日本免费看视频| 日本特黄特色aaa大片免费| 999精品视频在线| 999精品在线| 久久99这里只有精品国产| 91麻豆精品国产自产在线观看一区 | 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 日本在线www| 国产一区二区精品久久91| 韩国三级视频网站| 久久精品大片| 欧美国产日韩精品| 日韩一级精品视频在线观看| 美国一区二区三区| 亚洲精品久久久中文字| 日韩欧美一二三区| 日日日夜夜操| 999精品在线| 99色视频在线观看| 九九久久国产精品大片| 欧美一级视频免费| 久久99这里只有精品国产| 四虎久久精品国产| 国产伦精品一区二区三区在线观看 | 精品国产一区二区三区免费| 999精品在线| 久久国产影院| 成人高清免费| 成人免费一级毛片在线播放视频| 欧美激情一区二区三区在线| 日本乱中文字幕系列| 夜夜操网| 久久久久久久久综合影视网| 可以免费看毛片的网站| 国产精品自拍一区| 国产91视频网| 日本乱中文字幕系列| 久久国产精品只做精品| 精品视频在线观看视频免费视频| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 国产成人精品综合在线| 999久久狠狠免费精品| 国产精品免费久久| 国产一区二区精品久| 国产网站免费视频| 台湾美女古装一级毛片| 国产成人精品影视| 韩国三级视频在线观看| 国产成人精品在线| 国产精品免费久久| 久草免费资源| 国产91精品一区| 台湾美女古装一级毛片| a级毛片免费观看网站| 91麻豆精品国产自产在线观看一区 | 欧美a级成人淫片免费看| 一a一级片| 精品国产一区二区三区国产馆| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 香蕉视频久久| 国产伦理精品| 99色视频在线观看| 日日日夜夜操| 午夜精品国产自在现线拍| 国产精品1024永久免费视频| 国产不卡在线观看视频| 久久国产一久久高清| 91麻豆国产| 精品视频一区二区| 日韩免费在线| 亚洲 激情| 免费一级片在线| 亚洲精品永久一区| 国产一区二区精品久久91| 亚洲精品永久一区| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 麻豆网站在线免费观看| 天天做人人爱夜夜爽2020| a级毛片免费观看网站| 午夜欧美福利| 成人高清视频在线观看| 久草免费在线观看|