

下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、腿螅蒞袂螈裊螆芀袁羅羃羂薀肅莄螃荿膅螄賺腿膅袃 膀 蒞節(jié)編寫:XXX莁日期:YYYY-MM-DD罿審核:莄日期:蚃批準:肅日期:蚈受控狀態(tài):螈是蒅變更記錄芃蒀日期羈版本祎變更說明蟻作者艿YYYY-MM-DD羈1.0羃初始版本莂XXX肇肇莃袀肀膈螄薂衿羋膅肀蚈莈莂螂莇蕆螃膀蒀薇膄袂薁簽字確認蒆肄系統(tǒng)模塊螃對應章節(jié)羂對應部門膈負責人簽字肇袃腿袀祎羃薀莇薅肅羀聿莃肅莁蕆莆膃蒈腿膅芃衿蚇艿羄莂芀荿羇蒂蟻袇螆薂肂蕿羆1 引言.錯誤!芄1.1編寫目的.錯誤!螞1.2背景.錯誤!蠆2 概述.錯誤!螈2.1基線.錯誤!芆22范圍.錯誤!螂2.3定義.錯誤!肀2.4參考資料.錯誤!膆2.5術語與縮寫解釋. 錯誤
2、!肅3 模塊命名規(guī)則 .錯誤!袂4 模塊匯總.錯誤!蒁4.1模塊匯總表.錯誤!袈4.2塊關系圖.錯誤!襖5 子系統(tǒng)模塊設計 .錯誤!羈5.1醫(yī)藥管理模塊.錯誤!袂5.1.1功能描述.錯誤!莆5.1.2相關模塊.錯誤!未定義書簽。未定義書簽。未定義書簽。未定義書簽。未定義書簽。未定義書簽。未定義書簽。未定義書簽。未定義書簽。未定義書簽。未定義書簽。未定義書簽。未定義書簽。未定義書簽。未定義書簽。未定義書簽未定義書簽未定義書簽袇5.1.3類圖.錯誤!肁5.1.4Medic in eActio n類.錯誤! 未定義書簽罿5.1.5Medc in eDao類.錯誤! 未定義書簽肇5.2類別管理模塊.錯
3、誤!未定義書簽。蚆5.2.1功能描述.錯誤!未定義書簽賺5.2.2相關模塊. 錯誤!未定義書簽莀5.2.3類圖.錯誤!未定義書簽螀5.2.4類別管理類.錯誤!未定義書簽蒅5.3購買藥品. 錯誤!未定義書簽。賺5.3.1功能描述.錯誤!未定義書簽螁5.3.2相關模塊. 錯誤!未定義書簽羋5.3.3類圖.錯誤!未定義書簽膄5.3.4類SellAction .錯誤!未定義書簽芁5.4 銷售管理模塊. 錯誤!未定義書簽。膂5.4.1功能描述.錯誤!未定義書簽罿5.4.2相關模塊.錯誤!未定義書簽芇5.4.3類圖.錯誤!未定義書簽莁5.4.4SellDetail類.錯誤!未定義書簽莈5.4.5SellD
4、ao類.錯誤!未定義書簽莇5.5需求管理. 錯誤!未定義書簽。羅5.5.1功能描述.錯誤!未定義書簽蒁5.5.2相關模塊. 錯誤!未定義書簽蝿5.5.3類圖.錯誤!未定義書簽腿腿5.5.4RequireAction類.錯誤!未定義書簽螄5.6 系統(tǒng)管理.錯誤! 未定義書簽。裊5.6.1功能描述.錯誤!未定義書簽膀5.6.2相關模塊.錯誤!未定義書簽薇5.6.3類圖.錯誤!未定義書簽螇5.6.4類A.錯誤!未定義書簽裊羈袁蚈祎莄-+-幾肆蚄蔻莈螈篆蔻蝿芆蒆薄膀羈12芅引言2.12.2蚃編寫目的薁本說明書是醫(yī)藥管理系統(tǒng)的詳細設計。其編寫目的是在概要設計的基礎上, 針對該項目的每個模塊,每個功能的實
5、現(xiàn)方法進行詳細的設計和劃分, 按照詳細 設計說明書的要求,進一步明確系統(tǒng)結構,為項目開發(fā)人員后期的編碼工作做準 備。蒆本文檔的預期的讀者是:肄項目開發(fā)人員螃項目經(jīng)理羂項目測試人員膈2.32.4肇背景袃在前一階段的概要設計文檔中,已經(jīng)通過順序圖解決了該系統(tǒng)功能的實現(xiàn)流程,包括系統(tǒng)的各模塊間的關系設計等。 本文檔就是在前一階段成果的基礎上,繼續(xù)對系統(tǒng)的各模塊進行詳細的劃分和說明34腿概述袀本項目的任務提出者:見概要設計文檔祎單位:見概要設計文檔羃開發(fā)者:見概要設計文檔薀用戶:見概要設計文檔莇實現(xiàn)該軟件的計算中心或計算機網(wǎng)絡:見概要設計文檔薅4.14.2肅基線羀以需求分析和概要設計為基準4.3 4.
6、4莃范圍肅本概要設計文檔提供給系統(tǒng)設計開發(fā)人員,包括詳細設計人員和 項目組成員。4.54.6莁定義4.74.8蕆參考資料莆4.94.10膃術語與縮寫解釋蒈縮寫、術語腿解釋膅芃衿蚇羄莂芀荿羇蒂56蟻模塊命名規(guī)則袇駝峰標識,由單詞的全拼組成,除首單詞外每個單詞的首字母大寫,例如:medc in eMa nager螆78薂模塊匯總8.18.2肂模塊匯總表蕿提示這里模塊是指相對獨立的軟件設計單元,例如對象類、函數(shù)包等等。蒅子系統(tǒng)A螞模塊名稱艿功能簡述羆添加藥品芄管理員添加進貨藥品螞查看藥品蠆管理員查看進貨的信息螈咼級查詢芆管理員按照一定條件查找進貨的信息螂查看庫存肀管理員查看庫存情況膆子系統(tǒng)B肅模塊名
7、稱袂功能簡述蒁添加類別袈管理員添加藥品類別襖查看類別羈管理員查看藥品類別袂子系統(tǒng)C莆模塊名稱袇功能簡述肁選購藥品罿操作員把顧客買的藥品添加進購物車肇查看選購蚆操作員查看購物車里的藥品賺子系統(tǒng)D莀模塊名稱螀功能簡述蒅查看明細賺操作員查看銷售表單明細螁今日明細羋操作員查看今日銷售表單明細膄日期查詢芁操作員按照日期查看銷售表單明細膂銷售排行罿操作員查看銷售排行芇子系統(tǒng)E莁模塊名稱莈功能簡述莇添加需求羅操作員對藥品需求進行添加,包括庫存量不足和沒有該藥品的庫存蒁查看需求蝿操作員查看需求來進行買藥品入庫腿子系統(tǒng)F螄模塊名稱裊功能簡述膀添加用戶薇管理員添加系統(tǒng)用戶螇查看所有用戶裊管理員查看所有用戶,并擁有
8、刪除用戶權限薁系統(tǒng)初始化艿初始化系統(tǒng)薆退出系統(tǒng)羄退出系統(tǒng)羂8.38.4螇塊關系圖蒞910肄子系統(tǒng)模塊設計10.1 10.2聿醫(yī)藥管理模塊10.2.1 10.2.2葿葿功能描述功能描述肄用戶進入系統(tǒng)以后,首先需要添加藥品信息,沒有藥品信息就無法進行庫存管理了,更做不到藥品入庫和出庫。藥品信息作為庫存管理的一部分,是藥品入 庫和出庫的編號查詢。該功能模塊可以實現(xiàn)藥品的添加,修改,查看,查詢等。10.2.3 10.2.4膄膄相關模塊相關模塊10.2.510.2.6袇類圖Medic in eActi on+medic ine: Medici ne = new Medici ne() +category
9、id: Stiring+pageNo: int+kw: Stri ng+MN: Stri ng+NM: Stri ng+FA+DP: Stri ng+add()+blurQuery()+getallmedici ne()+fin dMedici neByMedld() +Deletemedic in e()+update()10.2.710.2.8芄MedicineAction 類1028.1 1028.2袁方法10 2 8 2 110 2 8 2 2蚈方法一藥品信息的添加:public String add()10.2.8.2.2.110.2.8.2.2.2祎功能莄對藥品信息進行添加,藥品編
10、碼是藥品對象的一個標示,當添加一個藥品信息時,需 要判斷此藥品是否已經(jīng)在數(shù)據(jù)庫中,如果存在只需要更新藥品數(shù)量即可。10.2.8.2.2.310.2.8.2.2.3芁參數(shù)肆無1028.2251028.226蚄算法蒄無10 2 8 2 310 2 8 2 4莈方法一藥品信息的模糊查詢:public String blurQuery()10.2.8.2.4.110.2.8.2.4.2螈功能蒃為了方便用戶查詢藥品,藥品信息管理模塊提供了藥品模糊查詢。此操作將根據(jù)用 戶所輸入的關鍵字信息,對藥品名稱、藥品描述等多個藥品屬性進行模糊查詢,并以分頁 顯示的方式返回模糊查詢或后的結果集。10.2.8.2.4.
11、310.2.8.2.4.3蒄參數(shù)蝿無10.2.8.2.4.510.2.8.2.4.4芆算法蒆無10 2 8 4 510 2 8 2 6薄方法一獲取所有藥品信息:public String getallmedicine()1028.2611028.262膀功能羈通常情況下,需要查看所以的藥品的信息,可以通過獲取所以藥品信息并顯示出來。10.2.8.2.6.310.2.8.2.6.4芅參數(shù)蚃無10.2.8.2.6.510.2.8.2.6.5薁算法蒆無10 2 8 2 710 2 8 2 8肄方法一通過編號修改藥 品信息:public String findMedicine -ByMedld()10
12、.2.8.2.8.110.2.8.2.8.2螃功能羂藥品的信息在錄入的時候難免會出錯,通過獲取藥品編號,對藥品信息進行修改。10.2.8.2.8.310 2 8 4 610.2.8.2.8.3膈參數(shù)肇無102828.5102828.6袃算法腿無10 2 8 2 910.2.8.2.10袀方法一通過編號刪除藥品:publicDeletemedicine()10.2.8.2.10.110.2.8.2.10.2祎功能羃在藥品不再需要或者效果不佳的時候需要對藥品進行刪除,通過獲取藥品編號然后對藥品信息刪除,在刪除的時候需要確定該藥品是否存在。10.2.8.2.10.310.2.8.2.10.3薀參數(shù)莇
13、無10.2.8.2.10.510.2.8.2.10.4薅算法肅無String10 2 8 2 1110 2 8 2 12羀方法一更新藥品信息:public String update()1028212.11028212.2聿功能莃更新藥品信息。10.2.8.2.12.310.2.8.2.12.4肅參數(shù)莁無10.2.8.2.12.510.2.8.2.12.5蕆算法莆無膃10.2.8.310.2.8.4蒈屬性腿private Medici ne medici ne=new Medici ne();膅private String categoryid=null;芃private int pageNo
14、;衿private static Stri ng kw;蚇private static Stri ng MN ;羄private static Stri ng NM;10 2 8 2 11莂private static String FA;芀private static Stri ng DP;荿private static Stri ng CT;羇private static Stri ng TP;10 2 8 4 110 2 8 4 2蒂屬性 medicine蟻藥品的實體對象。10 2 8 4 310 2 8 4 4袇屬性 categoryid螆類別對象編號。10 2 8 4 510 2 8
15、 4 6薂屬性 pageNo肂信息頁的頁號。10 2 8 4 710 2 8 4 8蕿屬性 kw蒅模糊查詢時的關鍵字。10 2 8 4 910.2.8.4.10螞屬性 MN艿藥品編號。10 2 8 4 1110 2 8 4 12羆屬性 NM芄藥品名。10 2 8 4 1310 2 8 4 14螞屬性 FA蠆藥品生產(chǎn)公司。10 2 8 4 1510 2 8 4 16螈屬性 DP芆藥品描述。10 2 8 4 1710 2 8 4 18螂屬性 CT10 2 8 4 19肀藥品數(shù)量。10.2.8.4.20膆屬性 TP肅藥品類型。袂10.2.910.2.10蒁MedcineDao 類10210.1102
16、10.2袈方法10.2.10.2.110.2.10.2.2襖loadMedicine 方法10210.22110210.222羈功能袂與數(shù)據(jù)庫交互,通過 id 號從藥品數(shù)據(jù)庫中取得數(shù)據(jù),采用hql 查詢語句,并且整個查詢過程圭寸裝在一個 Transaction 事務中以保證操作的并發(fā)性。查詢結果放在一個Medeine 對象中。該方法用于給其它方法調(diào)用。10.2.10.2.2.310.2.10.2.2.4莆參數(shù)袇int id,為需要查詢的藥品的 id 號,為整型。10210.22510210.226肁算法罿load 事務操作過程:肇1.ope n Tran sact ion;蚆2.load me
17、dci ne;賺3.close medci ne.10.2.10.2.310.2.10.2.3莀insert 方法10.2.10.2.4.110.2.10.2.4.2螀功能蒅與數(shù)據(jù)庫交互,將一個實例化的 Medcine 對象插入到數(shù)據(jù)庫中。采用 hql 語句,并且整 個插入過程封裝在一個 Transaction 事務中以保證操作的并發(fā)性。該方法返回值為void。該方法用于給其它方法調(diào)用。賺10.2.10.2.4.310.2.10.2.4.3螁參數(shù)羋Medicine medicine,即一個要插入數(shù)據(jù)庫的Medcine 對象。10.2.10.2.4.510.2.10.2.4.4膄算法芁in se
18、rt 事務操作過程:膂1.ope n Tran sact ion;罿2.i nsert data;芇3.close medci ne.莁10.2.10.2.510.2.10.2.4莈update 方法10.2.10.2.6.110.2.10.2.6.2莇功能薂與數(shù)據(jù)庫交互,用于對數(shù)據(jù)庫中的 Medcine 數(shù)據(jù)進行更新操作。采用 hql 語句,并且 整個更新過程封裝在一個 Transaction 事務中以保證操作的并發(fā)性。該方法返回值為void。該方法用于給其它方法調(diào)用。10.2.10.2.6.310.2.10.2.6.3羈參數(shù)芆Medcine medcine ,即最新的 Medcine 數(shù)據(jù)
19、狀態(tài)。10.2.10.2.6.510.2.10.2.6.4蚆算法芁update 事務操作過程:莂1.ope n Tran sact ion;蚇2.i nsert data;肄3.close medci ne.10.2.10.2.710 2 10.2.8莄DeleteMedicine 方法1021028.11021028.2蒁功能肇與數(shù)據(jù)庫交互,用于刪除數(shù)據(jù)庫中的制定id 號的 Medeine 數(shù)據(jù)。采用 hql 語句,并且整個更新過程封裝在一個 Transaetion 事務中以保證操作的并發(fā)性。該方法返回值為void。該方法用于給其它方法調(diào)用。祎10.2.10.2.8.310.2.10.2.8
20、.4肅參數(shù)薁int id,即要刪除的 Medcine 的 id 號。10.2.10.2.8.510.2.10.2.8.5葿算法芄Delete 算法的流程圖如下:10.2.10.2.910 2 10.2.10蟻loadMedicineAndCategory 方法10210210.110210210.2薆功能羆與數(shù)據(jù)庫交互,用于從數(shù)據(jù)庫中獲得制定 id 號的 Medeine 和 Category 數(shù)據(jù)。采用 hql語句,并且整個更新過程封裝在一個Transaetion 事務中以保證操作的并發(fā)性。該方法返回值為一個 Medcine 對象。該方法用于給其它方法調(diào)用。10.2.10.2.10.310.2
21、.10.2.10.4蟻參數(shù)蟻int id,即要獲得的 medcine 的 id 號。10.2.10.2.10.510.2.10.2.10.5羇算法10.2.10.2.1110.2.10.2.12蚄getMedicineByPage 方法10210212.110210212.2螁功能莈與數(shù)據(jù)庫交互,用于從數(shù)據(jù)庫中獲得某一頁的Medcine 數(shù)據(jù)。采用 hql 語句,并且整個更新過程封裝在一個Transaction 事務中以保證操作的并發(fā)性。該方法返回值為一個Medcine 的 ArrayList。該方法用于給其它方法調(diào)用。10.2.10.2.12.310.2.10.2.12.4膅參數(shù)蒂int p
22、ageNo,即需要獲得數(shù)據(jù)的頁數(shù)。10.2.10.2.12.510.2.10.2.12.5袁算法螈 蚃10210.310210.4芁屬性羈private Medici ne medici ne=new Medic in e();羅private String categoryid=null;蒞private int pageNo;羀private static Stri ng kw;肁private static Stri ng MN ;莆private static Stri ng NM;螃private static String FA;肅private static String DP;
23、膀private static Stri ng CT;螇private static Stri ng TP;10.2.10.4.110.2.10.4.2蒅屬性 medicine螂藥品的實體對象。10.2.10.4.310.2.10.4.3芀屬性 categoryid膈類別對象編號。10.2.10.4.510.2.10.4.4羃屬性 pageNo薁信息頁的頁號。10.2.10.4.710.2.10.4.5芀屬性 kw蕿模糊查詢時的關鍵字。10.2.10.4.910.2.10.4.6蚅屬性 MN薄藥品編號。薆10.2.10.4.1110.2.10.4.7莀屬性 NM蚆藥品名。10.2.10.4.1
24、310.2.10.4.8莇屬性 FA莃藥品生產(chǎn)公司。10.2.10.4.1510.2.10.4.9蒀屬性 DP肇藥品描述。10.2.10.4.1710.2.10.4.10襖屬性 CT賺藥品數(shù)量。10.2.10.4.1910.2.10.4.11薀屬性 TP蕆藥品類型。蝕袈10.310.4肄類別管理模塊10.4.110.4.2羃功能描述螀用戶登錄進入類別管理頁面,能進行藥品類別的管理, 修改,查看和統(tǒng)計。10.4.310.4.4肅相關模塊主要包括類別的添加,蒆10.4.6螞類圖蝿匚ategoryAction+pageNo; int+ceagtNoC+住tP和已如f +oddQ+querYalkat
25、EQoryO+f-lodify,GatEgorQ+upcatecatgor?C+Detecatffgoiv+getCategor/Q-4-seXateQOryQCategory-nd:-nd: int-Hiame: StringKIEscription: Sirg+siibesc; String+crea:eTire: Dste+getSLibD&scO4-getIdQ+?etIDC +g&tLameOHE:hmLE:+aetDe5cr3feoni+5&tDe&criDtJor Q-hgetCreateTimeO+setCeiteTimeO+getfirec5C+5E:卜9c成i10.4.71
26、0.4.8膄類別管理類1048.11048.2蒁方法10 4 8 2 110 4 8 2 2衿方法一藥品信息的添加:public String add()10.4.8.2.2.110.4.8.2.2.2袇功能羆對藥品的類別信息進行添加,類別編碼是類別對象的一個標示,當添加一個類別信息時,需要判斷此類別是否已經(jīng)在數(shù)據(jù)庫中,如果存在,則提示已存在該類別。:1048.2231048.224蒄參數(shù)罿無10.4.8.2.2.510.4.8.2.2.6羋算法莄無10 4 8 2 310 4 8 2 4芃方法一類別信息的模糊查詢:publicqueryallcategory()10.4.8.2.4.110.
27、4.8.2.4.2聿功能蠆為了方便用戶查詢已有類別,類別信息管理模塊提供了類別模糊查詢。此操作將根 據(jù)用戶所輸入的關鍵字信息,對類別名稱、類別描述等多個類別屬性進行模糊查詢,并以 分頁顯示的方式返回模糊查詢或后的結果集。10.4.8.2.4.310.4.8.2.4.3肅參數(shù)肂無10.4.8.2.4.510.4.8.2.4.4腿算法螅無10 4 8 2 5 10 4 8 2 6薃方法一類別信息的更新:public Stringupdatecategory()String1048.2611048.262袀功能艿當用戶需要對類別的信息添加說明或修改屬性時,需要用到類另 M 言息的更新。1048.26
28、31048.263膆參數(shù)芅無1048.2651048.264袃算法荿無10 4 8 2 710 4 8 2 8薇方法一通過編號修改類別信息:public StringModifycategory()10.4.8.2.8.110.4.8.2.8.2蚃功能螞類別的信息在錄入的時候難免會出錯,通過獲取類別編號,對類別信息進行修改。10.4.8.2.8.310.4.8.2.8.3荿參數(shù)羈無104828.5104828.6蒅算法莁無10 4 8 2 910.4.8.2.10蒈方法一通過編號刪除類別:publicDeletecategory()10.4.8.2.10.11048210.2荿功能袃在類別不再
29、需要或者效果不佳的時候需要對類別進行刪除,通過獲取類別編號然后對 該類別進行刪除,在刪除的時候需要確定該類別是否存在。1048.2.10.31048.2.10.4蒄參數(shù)薈無10.4.8.2.10.510.4.8.2.10.6薆算法薅無膃10.4.8.310.4.8.4蚈屬性羇private Category category=new Category。;莇private int id;羂private int pageNo;螈private String n ame;String莈private String descripti on;螄private String subDesc;螁priv
30、ate Date createTime;袈private Set meds;10 4 8 4 110 4 8 4 2蝿屬性 Category蒆類別的實體對象。10 4 8 4 310 4 8 4 4螃屬性 id羈類別對象編號。10 4 8 4 510 4 8 4 6裊屬性 pageNo羄信息頁的頁號。10 4 8 4 710 4 8 4 8薂屬性 name羈類別的名稱。10 4 8 4 910.4.8.4.10芆屬性 description蚆類別的描述。10 4 8 4 1110 4 8 4 12芁屬性 createTime莂類別創(chuàng)建時間。10.510.6蚇購買藥品10 6 110 6 2肄功
31、能描述莄對于用戶所選購的藥品,首先將其加載到一個 List 集合中,然后再將其保存 到session 會話中,當用戶所購買的藥品發(fā)生改變時, 將對 session 會話中的對 象進行操作,這一操作通過 SellAction 類的 order 方法進行處理。購買藥品后 后,會跳到相應的該藥品的信息頁面,可以選擇購買數(shù)量,最后跳轉到已購買藥品的頁面,點擊查看選購,會將購物車中藥品信息進行顯示,最后通過結賬,更新 數(shù)據(jù)到數(shù)據(jù)庫中。10.6.310.6.4蒁相關模塊祎10.6.5 10.6.6肅類圖SellAction+medicine: Medicine = newMedicine。;+sellDa
32、o: SellDao =new SellDao(); +medId: String+begin: String+end: String+pageNo: int+getsellmedicine() +getallmedicine()+buymedicine() +deletemedicine()+blurquerysellmedicine()+clear()+get*()+set*()10.6.710.6.8葿類SellAction1068.11068.2芄方法10 6 8 2 110 6 8 2 2袂方法 getsellmedicine10.6.8.2.2.110.6.8.2.2.2蟻功能薆獲
33、取銷售單藥品的所有信息10.6.8.2.2.310.6.8.2.2.3羆參數(shù)蟻輸入?yún)?shù)為空,查詢完成,函數(shù)返回selledmed值跳轉到銷售表單列表的jsp頁面。ModelDrivenActionSupportStruts配置文件根據(jù)該返回1068.2251068.226蟻算法羇根據(jù)前臺傳進來的頁數(shù)在數(shù)據(jù)庫進行查詢,返回查詢值放銷售信息。10 6 8 2 310 6 8 2 4蒃方法 getallmedicine10.6.8.2.4.110.6.8.2.4.2蚄功能螁獲取所有的藥品信息。10.6.8.2.4.310.6.8.2.4.3莈參數(shù)膅輸入?yún)?shù)為空,查詢完成,函數(shù)返回fin dAIISu
34、ccess10.6.8.2.4.510.6.8.2.4.4蒂算法袁根據(jù)前臺傳進來的頁數(shù)在數(shù)據(jù)庫進行查詢,返回查詢值放銷售信息。至 U session中再傳到前臺顯示至 U session中再傳到前臺顯示膀輸入?yún)?shù)為空,返回值是字符串“ order ”。1068.2611068.262蚃功能芁購買藥品,把購買的藥品加入購物車。1068.2631068.263羈參數(shù)羅輸入?yún)?shù)為空,如果添加成功,返回“ add “,否則返回“ error”。1068.2651068.264蒞算法羀根據(jù)前臺傳進來的藥品 id 在數(shù)據(jù)庫進行查詢,把 session 里的 order 表單取出來,購買藥品購物車里面是不是
35、已經(jīng)有,如果有則出錯。10 6 8 2 710 6 8 2 8肁方法 deletemedincine10.6.8.2.8.110.6.8.2.8.2莆功能螃刪除購物車里的某藥品。10.6.8.2.8.310.6.8.2.8.3肅參數(shù)10 6 8 2 510 6 8 2 6螈方法 buymedincine檢查該106828.5106828.6螇算法蒅根據(jù)藥品 id 刪除在購物車里面的藥品,并把購物車的藥品數(shù)量和金額重新計算放到order里面。10 6 8 2 910.6.8.2.10.110.6.8.2.10.2芀功能膈模糊查詢購物車里面的藥品10.6.8.2.10.310.6.8.2.10.3
36、羃參數(shù)薁輸入?yún)?shù)為空,返回值是字符串“selledmed”,表示查找成功。10.6.8.2.10.510.6.8.2.10.4芀算法蚅根據(jù)前臺傳進來的關鍵字在數(shù)據(jù)庫進行查詢,返回查詢值放到 session中的sellDetails再傳到前臺顯示信息。10.6.8.2.10螂方法 blurQuerySellmed10 6 8 2 1110 6 8 2 12螁方法 clea1068212.11068212.2蝕功能蒆清空購物車。10.6.8.2.12.310.6.8.2.12.4螂?yún)?shù)蒃輸入?yún)?shù)為空,清空成功,函數(shù)返回success”,否則返回error10.6.8.2.12.510.6.8.2.
37、12.5葿算法薆從 session 中把取出購物車 order,把它清空。膃10.6.8.310.6.8.4羈屬性10 6 8 4 110 6 8 4 2膈屬性sellDetails每次根據(jù)頁數(shù)在數(shù)據(jù)庫查詢的銷售信息。蚆sellDetails 是一個被實例化成SellDetail 的 ArrayList,屬性名字是sellDetails,用來存放螈10 6 8 4 310 6 8 4 4薄屬性 medicine蚃一個臨時變量,用來暫存一些方法中從數(shù)據(jù)庫查詢的結果。10 6 8 4 510 6 8 4 6羇屬性 medld蚆藥品 id。10 6 8 4 710 6 8 4 8羅屬性 begin肀
38、開始頁號。10 6 8 4 910.6.8.4.10罿屬性 end螆結束頁號。10 6 8 4 1110 6 8 4 12肁屬性 pageNo螈螂當前頁號。10.4 10.5蒂銷售管理模塊10.5.110.5.2芀功能描述薇用于對藥品的銷售情況進行統(tǒng)計和查詢,通過對銷售相關數(shù)據(jù)的 分析,為藥店的進貨提供依據(jù)和指導。銷售管理模塊主要有查看銷售 明細、今日銷售明細、查詢銷售明細、銷售統(tǒng)計等四個子模塊。10.5.3 10.5.4羆羆相關模塊相關模塊銷售管理模塊和購買藥品模塊之間的關聯(lián)如上圖所示,當有客戶購買藥品時,如果購買失敗,則不作任何操作放棄本次購買;如果購 買成功,則相應的在銷售管理模塊中增加
39、一條購買記錄肅10.5.510.5.6芄類圖蒀SuperDaoSuperDao+sav亡(Object M; vd +M;eOf Update Object 0)1 void +deleie(ObjKt o): void+findEYH(X(StJing bql): List keleteElyHQLString hcfl: void +jriqueftKLit (String hql, objectf肋ere): Object +findPagirig(5tnng hqlrint offset, int lengthrObject where): LstSellDaoSellDao+save
40、SelDetailSellDetail sti): voidMdSaqOMdSaqO:ListetSellDetaiisB/kyord (S tr ng kw): ArrayList +gejPageCointO! intgetSellDetBisEvTimeQ: AnayL!st +getMedByRequirent pageNo):ArralistHetSdDelsByPagHjnt pageNo): AnayUstUserUsercategory; Category+QetXX0+QetXX0(網(wǎng)10.5.710.5.8膅SellDetail 類10.581 10.582蚅方法10 5
41、8 2 1 10 5 8 2 2膂+orderQ: String+gEtAllMeddneQ; Sting4eteeHniedicineQ: String+blurQuffyO: String+5ecuenceQ: StringFblurQub書曲禪d0:Strng +dearQ: String+buyQ: StrngHielEtEMeandneO; String+today0; String+hjymetindneO;StnngetModelO:軸Detail41SeIKkteilSeIKkteilidi int-jeJName: 5丁叫-seflPrice;double-sellCoifi
42、tt int-serine: Date-med: Medan電-user: UsereCOiO-seiTotal!double+sEtXXQ;void+getXX0+getXX0id:nt-usnarne:String-passAcrd:String日teTiiiE:能beCategoryCategoryMeddneMeddneid: int-nsine: StringqiedNa: Stmj-factoryAdd-desoiption:String pnce:double-medCoumt: mt-f&qCointr intphotnPatlh:Siring edffiate:Date4d:
43、 mtname: String-descrotKn: StrngabDesc; StmqratETm: Datemireds: Set+retW(XX)SelAcbofiSelAcbofi-sdlDetal: SeDetalHiedtneDao:MeddneOao噸elDao:5EIIDSJrneddne:Wedcine巾edld: Strngbegn: Siring -end: Stringpage聞:intActionAction SupportSupportModModgetUser()方法10.5.8.22110.5.8.222肇功能芅User 屬性的 getter 方法,獲取對象的
44、user 值。10.5.8.2.2.310.5.8.2.2.4袂參數(shù)薀無10.5.8.2.2.510.5.8.2.2.5袇算法芅對方法的算法進行描述10 5 8 2 310 5 8 2 4芃setUser(方法10.5.8.2.4.110.5.8.2.4.2莁功能袀User 屬性的 setter 方法,給 user 屬性賦值。10.5.8.2.4.310.5.8.2.4.3蒞參數(shù)蚄User user,即一個 User對象的實例。1058.2451058.246aw#亠0 0 5 5 8 8 2 2 5 50 0 5 5 8 8 2 2 6 6M Mg ga as se e= =N Na am
45、me e( ( M M105826.1105826.2105826.5105826.6昌幷耳亠0 0 5 5 8 8 2 2 7 7亠0 0 5 5 8 8 2 2 8 8酣s sa as se e- -乏 ame(耳M M105828.1105828.2黑10.5.828.310.5.8.2.8.4蟻參數(shù)艿該方法的參數(shù)為String sellName,即用一個 String 類型的子符串作為 sellName 的值。10.5.828.510.5.8.2.8.6螄算法羃無10 5 8 2 910.5.8.2.10莃getSellPrice(方法10.5.8.2.10.110.5.8.2.10.
46、2肇功能襖sellPrice 屬性的 getter 方法,獲取對象的 sellName 值。10.5.8.2.10.310.5.8.2.10.4莄參數(shù)袁無10.5.8.2.10.510.5.8.2.10.6螇算法襖無10 5 8 2 1110 5 8 2螅setSellPrice(方法10.5.8212.110.5.8.2.12.2薃功能袀sellPrice 屬性的 setter 方法,給 sellPrice 屬性賦值。10.5.8212.310.5.8.2.12.4羄參數(shù)羂該方法的參數(shù)為double sellPrice,即用一個 double 類型的數(shù)作為 sellPrice 的值。10.5
47、.8.2.12.510.5.8.2.12.6羀算法蕿無肄10 5 8 2 1310 5 8 2 14莃getSellCount(方 法10.5.8.2.14.110.5.8.2.14.2螂功能莇sellCount 屬性的 getter 方法,獲取對象的 sellCount 值。10.5.8.2.14.310.5.8.2.14.4蒈參數(shù)羈螃無10.5.8214.510.5.8.2.14.6膀算法莀無10 5 8 2 1510 5 8 2 16蒈setSellCount (方法10.5.8.2.16.110.5.8.2.16.2膄功能袂sellCount 屬性的 setter 方法,給 sellC
48、ount 屬性賦值。10.5.8216.310.5.8.2.16.4腿參數(shù)薈該方法的參數(shù)為int sellCount,即用一個 int 類型的整數(shù)作為 sellCount 的值。10.5.8.2.16.510.5.8.2.16.6薅算法莀無10 5 8 2 1710 5 8 2蚇getSellTime()方法10.5.8218.110.5.8.2.18.2螞功能肂sellTime 屬性的 getter 方法,獲取對象的 sellTime 值。10.5.8218.310.5.8.2.18.4蚇參數(shù)螇無10.5.8.2.18.510.5.8.2.18.6肅算法薀無10 5 8 2 1910.5.8
49、.2.20螀setSellTime (方法10.5.8.2.20.110.5.8.2.20.2袇功能蒄sellTime 屬性的 setter 方法,給 sellTime 屬性賦值。10.5.8.2.20.310.5.8.2.20.4節(jié)參數(shù)葿該方法的參數(shù)為Date sellTime,即用一個 Date 類型作為 sellTime 的值。10.5.8220.510.5.8220.6羇算法裊無蠆羋10 5 8 2 2110 5 8 2 22肇getMed()方法10.5.8.2.22.110.5.8.2.22.2羈功能莁med 屬性的 getter 方法,獲取對象的10.5.8.2.22.310.5
50、.8.2.22.3肆參數(shù)肇無10.5.8.2.22.510.5.8.2.22.4莂算法衿無med 值。10 5 8 2 2310 5 8 2聿setMed ()方法10.5.8224.110.5.8.2.24.2腿功能螃med 屬性的 setter 方法,給 med 屬性賦值。10.5.8.2.24.310.5.8.2.24.4薁參數(shù)袈該方法的參數(shù)為Medicine med,即用一個 Medcine 類型的對象實例作為 med 的值。10.5.8.2.24.510.5.8.2.24.6芇算法膄無聿10 5 8 2 2510 5 8 2 26蚇getSellTotal(方法10.5.8.2.26
51、.110.5.8.2.26.2莆功能蚅sellTotal 屬性的 getter 方法,獲取對象的sellTotal 值。10.5.8.2.26.310.5.8.2.26.4螁參數(shù)蝕無10.5.8226.510.5.8.2.26.6蒆算法螂無10 5 8 2 2710 5 8 2 28蒃setSellTotal (方法10.5.8.2.28.110.5.8.2.28.2葿功能薆sellTotal 屬性的 setter 方法,給 sellTotal 屬性賦值。10.5.8.2.28.310.5.8.2.28.4膃參數(shù)羇該方法的參數(shù)為double sellTotal,即用一個 double 類型的值
52、作 sellTotal 的值。10.5.8.2.28.510.5.8.2.28.6芄算法螞無蝕10.5.8.310.5.8.4蠆屬性羂10 5 8 4 110 5 8 4 2肅id 屬性螂該屬性是銷售列表的 id 唯一標識符,用 int 類型表示。肁sellName 屬性腿該屬性是指所銷售藥品的名稱,用String 類型表示。肆sellPrice 屬性袂該屬性是指所銷售藥品的單價,用膈double 類型表示。衿sellCount 屬性裊該屬性是指在一個訂單中所銷售藥品的數(shù)量,用int 類型表示。sellTime 屬性莆該屬性是指在銷售藥品訂單的時間,用Date 類型表示。薃肂med 屬性罿該屬
53、性是指在一個訂單中所銷售的藥品,用Medeine 類型表示。肇蚆user 屬性肂該屬性是指處理某個訂單的操作員或用戶,用User 類型表示。莀蒆10.5.910.5.10蒞SellDao 類10.5.10.110.5.10.2膂方法10.5.10.2.110.5.10.2.2螁saveSellDetail(方法10.5.10.22110.5.10.222膈功能膄該方法通過調(diào)用基本 dao 類中的 save()方法,對藥品銷售訂單信息數(shù)據(jù)的存儲,并且實現(xiàn)一整套事務 Transaction 的流程,保證了事務能夠在并發(fā)環(huán)境下正確執(zhí)行。10.5.10.2.2.310.5.10.2.2.4芁參數(shù)袈Vo
54、id 型參數(shù),無需返回數(shù)據(jù)。10.5.10.2.2.510.5.10.2.2.5蚆算法羃事務的處理邏輯:當需要進行對數(shù)據(jù)庫的操作時,首先創(chuàng)建一個事務,執(zhí)行操作后判斷操 作是否成功,如果成功則關閉事務,結束流程;若操作失敗,則對數(shù)據(jù)庫進行 rollback 操作,之后關閉事務,流程結束。艿saveSellDetail()方法的算法流程圖10.5.10.2.310 5 10.2.4羆getSellDetailsBykeyword (方法10.5.10.24110.5.10.242蒁功能蝕該方法用于實現(xiàn)通過關鍵字對藥品銷售信息進行模糊查詢,該方法調(diào)用了()方法,用 hql 語句對數(shù)據(jù)庫進行查詢。查詢
55、得到的數(shù)據(jù)放入SellDetail當中。同時也是用了 transaction 來保證查詢操作的并發(fā)性。10.5.10.24310.5.10.243祎參數(shù)螅String keyword,即為用戶輸入的關鍵詞,用String 類型保存。10.5.10.2.4.510.5.10.2.4.6薁算法肁將查詢操作放入事務之中,以避免發(fā)生讀臟數(shù)據(jù)的問題。步驟如下:薇1.beg inTran sacti on薄2.queryOperati on蟻3.closeTra nsacti oncreateQuery類型的 ArrayList10.5.10.2.510 5 10.2.6蒂getPageCount(方法1
56、0.5.1026.110.5.1026.2羅功能薆通過查詢數(shù)據(jù)庫來計算出數(shù)據(jù)的總頁數(shù)。返回類型為int 型。10.5.10.2.6.310.5.10.2.6.4蟻參數(shù)蚈無10.5.10.2.6.510.5.10.2.6.5螇算法蒞無10.5.10.2.710.5.10.2.8螁getSellDetailsByTime (方法10.5.10.2.8.110.5.10.2.8.2聿功能葿該方法用于實現(xiàn)通過用戶輸入的日期范圍對一段時間內(nèi)的藥品銷售信息進行模糊查詢, 需要用戶輸入合法的日期。該方法調(diào)用了createQuery ()方法,用 hql 語句對數(shù)據(jù)庫進行查詢。查詢得到的數(shù)據(jù)放入SellDet
57、ail 類型的 ArrayList 當中。同時也是用了 transaction 來保證查詢操作的并發(fā)性。10.5.1028.310.5.1028.4肄參數(shù)該方法有兩個參數(shù),一個是開始時間beginTime,個是結束時間endTime,開始時間和結束時間均用 String 類型來保存。該方法調(diào)用了 createQuery ()方法,用 hql 語句對數(shù)據(jù) 庫進行查詢。查詢得到的數(shù)據(jù)放入SellDetail 類型的 ArrayList 當中。同時也是用了 transaction來保證查詢操作的并發(fā)性。10.5.10.2.8.5算法整個查詢操作封裝在一個事務中,查詢時,先判斷用戶輸入的日期參數(shù)的合法
58、性,若合法則進行查詢并返回數(shù)據(jù),最后關閉事務并結束;若頁數(shù)不合法,則直接結束事務。10.5.10.2.8.6功能該方法用于實現(xiàn)分頁條件下查詢某一頁的藥品銷售數(shù)據(jù),該方法調(diào)用了createQuery()方法,用 hql 語句對數(shù)據(jù)庫進行查詢。 查詢得到的數(shù)據(jù)放入 SellDetail 類型的 ArrayList 當中。 同時也是用了 transaction 來保證查詢操作的并發(fā)性。10.5.10.2.8.7參數(shù)int pageNo,即要查詢的數(shù)據(jù)的頁數(shù)。該方法用于其它方法的實現(xiàn)。10.5.10.2.8.8算法整個查詢操作封裝在一個事務中,查詢時,先判斷參數(shù)pageNo 的合法性,若合法則進該屬性
59、是指所銷售藥品的單價,用double 類型表示。行查詢并返回數(shù)據(jù),最后關閉事務并結束;若頁數(shù)不合法,則直接結束事務。10.5.10.2.9setSellPrice(方法10.5.1029.1功能10.5.10.2.9.2參數(shù)該方法的參數(shù)為 double sellPrice,即用一個 double 類型的數(shù)作為 sellPrice 的值。10.5.10.2.9.3算法無10.5.10.3 屬性10.5.10.3.1id 屬性該屬性是銷售列表的 id 唯一標識符,用 int 類型表示。sellName 屬性該屬性是指所銷售藥品的名稱,用String 類型表示。sellPrice 屬性的 setter 方法,給sellPrice 屬性賦值。該屬性是指所銷售藥品的單價,用double 類型表示。sellPrice 屬性sellCount 屬性該屬性是指在一個訂單中所銷售藥品的數(shù)量,用int 類型表示。sellTime 屬性該屬性是指在銷售藥品訂單的時間,用Date 類型表示。med 屬性該屬性是指在一個訂單中所銷售的藥品,用Medcine 類型表示。user 屬性該屬性是指處理某個訂單的操作員或用戶,用User
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025復印機維護合同模板
- 2024年陪診師考試指導原則試題及答案
- 中職電子商務教師資格證高效復習策略
- 2024年陪診師考試預測與試題及答案匯編
- 《第一單元 體驗圖形化編程 第4課 測測我的運算力》教學設計-2024-2025學年泰山版信息技術五年級上冊
- 2025年激光影像輸出膠片合作協(xié)議書
- 2024秋五年級英語上冊 Unit 1 What's he like part B 第二課時教學實錄 人教PEP
- 2024年三年級道德與法治下冊 第一單元 我和我的同伴 2不一樣的你我他教學實錄 新人教版
- 五年級下冊道德與法治-10 奪取抗日戰(zhàn)爭和人民解放戰(zhàn)爭的勝利第一課時(教學設計)
- 農(nóng)村租房旅游合同標準文本
- 對配合和服從總包管理的認識和協(xié)調(diào)方案
- 2025年上海市各區(qū)高三語文一模試題匯編之文言文閱讀試題和答案
- 江蘇省常州市金壇區(qū)2023-2024學年小升初語文試卷(有答案)
- 《橋梁工程中的預應力混凝土技術》課件
- DeepSeek介紹及其典型使用案例
- 危險性較大的分部分項工程安全監(jiān)理實施細則
- 2025年四川省國有資產(chǎn)經(jīng)營投資管理有限責任公司招聘筆試參考題庫附帶答案詳解
- 安全駕駛培訓:路標篇
- 《財政基礎知識介紹》課件
- 西安電子科技大學《科技英語寫作》2021-2022學年第一學期期末試卷
- 臨床經(jīng)鼻高流量濕化氧療患者護理查房
評論
0/150
提交評論