XXX詳細設(shè)計說明書
《XXX詳細設(shè)計說明書》由會員分享,可在線閱讀,更多相關(guān)《XXX詳細設(shè)計說明書(46頁珍藏版)》請在裝配圖網(wǎng)上搜索。
醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 中軟培訓實訓基地 第 1 頁 共 46 頁 編寫 XXX 日期 YYYY MM DD 審核 日期 批準 日期 受控狀態(tài) 是 發(fā)布版次 1 0 日期 YYYY MM DD 編號 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 2 頁 共 46 頁 變更記錄 日期 版本 變更說明 作者 YYYY MM DD 1 0 初始版本 XXX 簽字確認 系統(tǒng)模塊 對應(yīng)章節(jié) 對應(yīng)部門 負責人簽字 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 3 頁 共 46 頁 目 錄 1 引言 5 1 1 編寫目的 5 1 2 背景 5 2 概述 5 2 1 基線 6 2 2 范圍 6 2 3 定義 6 2 4 參考資料 6 2 5 術(shù)語與縮寫解釋 6 3 模塊命名規(guī)則 6 4 模塊匯總 7 4 1 模塊匯總表 7 4 2 塊關(guān)系圖 8 5 子系統(tǒng)模塊設(shè)計 9 5 1 醫(yī)藥管理模塊 9 5 1 1 功能描述 9 5 1 2 相關(guān)模塊 9 5 1 3 類圖 10 5 1 4 MedicineAction 類 10 5 1 5 MedcineDao 類 13 5 2 類別管理模塊 18 5 2 1 功能描述 19 5 2 2 相關(guān)模塊 19 5 2 3 類圖 19 5 2 4 類別管理類 20 5 3 購買藥品 23 5 3 1 功能描述 23 5 3 2 相關(guān)模塊 23 5 3 3 類圖 24 5 3 4 類 SellAction 25 5 4 銷售管理模塊 28 5 4 1 功能描述 28 5 4 2 相關(guān)模塊 28 5 4 3 類圖 28 5 4 4 SellDetail 類 29 5 4 5 SellDao 類 35 5 5 需求管理 40 5 5 1 功能描述 40 5 5 2 相關(guān)模塊 40 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 4 頁 共 46 頁 5 5 3 類圖 40 5 5 4 RequireAction 類 41 5 6 系統(tǒng)管理 43 5 6 1 功能描述 43 5 6 2 相關(guān)模塊 43 5 6 3 類圖 44 5 6 4 類 A 44 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 5 頁 共 46 頁 1 引言 1 1 編寫目的 本說明書是醫(yī)藥管理系統(tǒng)的詳細設(shè)計 其編寫目的是在概要設(shè)計的基礎(chǔ)上 針對該項目的每個模塊 每個功能的實現(xiàn)方法進行詳細的設(shè)計和劃分 按照詳 細設(shè)計說明書的要求 進一步明確系統(tǒng)結(jié)構(gòu) 為項目開發(fā)人員后期的編碼工作 做準備 本文檔的預期的讀者是 項目開發(fā)人員 項目經(jīng)理 項目測試人員 1 2 背景 在前一階段的概要設(shè)計文檔中 已經(jīng)通過順序圖解決了該系統(tǒng)功 能的實現(xiàn)流程 包括系統(tǒng)的各模塊間的關(guān)系設(shè)計等 本文檔就是在 前一階段成果的基礎(chǔ)上 繼續(xù)對系統(tǒng)的各模塊進行詳細的劃分和說 明 2 概述 本項目的任務(wù)提出者 見概要設(shè)計文檔 單位 見概要設(shè)計文檔 開發(fā)者 見概要設(shè)計文檔 用戶 見概要設(shè)計文檔 實現(xiàn)該軟件的計算中心或計算機網(wǎng)絡(luò) 見概要設(shè)計文檔 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 6 頁 共 46 頁 2 1 基線 以需求分析和概要設(shè)計為基準 2 2 范圍 本概要設(shè)計文檔提供給系統(tǒng)設(shè)計開發(fā)人員 包括詳細設(shè)計人員和 項目組成員 2 3 定義 2 4 參考資料 2 5 術(shù)語與縮寫解釋 縮寫 術(shù)語 解 釋 3 模塊命名規(guī)則 駝峰標識 由單詞的全拼組成 除首單詞外每個單詞的首字母大 寫 例如 medcineManager 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 7 頁 共 46 頁 4 模塊匯總 4 1 模塊匯總表 提示 這里模塊是指相對獨立的軟件設(shè)計單元 例如對象類 函數(shù)包等等 子系統(tǒng) A 模塊名稱 功能簡述 添加藥品 管理員添加進貨藥品 查看藥品 管理員查看進貨的信息 高級查詢 管理員按照一定條件查找進貨的信息 查看庫存 管理員查看庫存情況 子系統(tǒng) B 模塊名稱 功能簡述 添加類別 管理員添加藥品類別 查看類別 管理員查看藥品類別 子系統(tǒng) C 模塊名稱 功能簡述 選購藥品 操作員把顧客買的藥品添加進購物車 查看選購 操作員查看購物車里的藥品 子系統(tǒng) D 模塊名稱 功能簡述 查看明細 操作員查看銷售表單明細 今日明細 操作員查看今日銷售表單明細 日期查詢 操作員按照日期查看銷售表單明細 銷售排行 操作員查看銷售排行 子系統(tǒng) E 模塊名稱 功能簡述 添加需求 操作員對藥品需求進行添加 包括庫存量不足和沒有該藥品的庫存 查看需求 操作員查看需求來進行買藥品入庫 子系統(tǒng) F 模塊名稱 功能簡述 添加用戶 管理員添加系統(tǒng)用戶 查看所有用戶 管理員查看所有用戶 并擁有刪除用戶權(quán)限 系統(tǒng)初始化 初始化系統(tǒng) 退出系統(tǒng) 退出系統(tǒng) 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 8 頁 共 46 頁 4 2 塊關(guān)系圖 醫(yī)藥管理系統(tǒng) 需求管理 藥品銷售管理 系統(tǒng)管理基礎(chǔ)信息管理 藥 品 信 息 管 理 藥 品 類 別 管 理 銷 售 排 行 日 期 查 詢 今 日 明 細 查 看 明 細 添 加 需 求 查 看 需 求 用 戶 賬 號 管 理 系 統(tǒng) 初 始 化 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 9 頁 共 46 頁 5 子系統(tǒng)模塊設(shè)計 5 1 醫(yī)藥管理模塊 5 1 1 功能描述 用戶進入系統(tǒng)以后 首先需要添加藥品信息 沒有藥品信息就無法進行庫 存管理了 更做不到藥品入庫和出庫 藥品信息作為庫存管理的一部分 是藥 品入庫和出庫的編號查詢 該功能模塊可以實現(xiàn)藥品的添加 修改 查看 查 詢等 5 1 2 相關(guān)模塊 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 10 頁 共 46 頁 5 1 3 類圖 MedicineAction medicine Medicine new Medicine categoryid Stiring pageNo int kw String MN String NM String FA DP String add blurQuery getallmedicine findMedicineByMedId Deletemedicine update 5 1 4 MedicineAction 類 5 1 4 1方法 5 1 4 1 1 方法 藥品信息的添加 public String add 5 1 4 1 1 1 功能 對藥品信息進行添加 藥品編碼是藥品對象的一個標示 當添加一個藥品信息時 需 要判斷此藥品是否已經(jīng)在數(shù)據(jù)庫中 如果存在只需要更新藥品數(shù)量即可 5 1 4 1 1 2 參數(shù) 無 5 1 4 1 1 3 算法 無 5 1 4 1 2 方法 藥品信息的模糊查詢 public String blurQuery 5 1 4 1 2 1 功能 為了方便用戶查詢藥品 藥品信息管理模塊提供了藥品模糊查詢 此操作將根據(jù)用戶 所輸入的關(guān)鍵字信息 對藥品名稱 藥品描述等多個藥品屬性進行模糊查詢 并以分頁顯 示的方式返回模糊查詢或后的結(jié)果集 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 11 頁 共 46 頁 5 1 4 1 2 2 參數(shù) 無 5 1 4 1 2 3 算法 無 5 1 4 1 3 方法 獲取所有藥品信息 public String getallmedicine 5 1 4 1 3 1 功能 通常情況下 需要查看所以的藥品的信息 可以通過獲取所以藥品信息并顯示出來 5 1 4 1 3 2 參數(shù) 無 5 1 4 1 3 3 算法 無 5 1 4 1 4 方法 通過編號修改藥品信息 public String find Medicine ByMedId 5 1 4 1 4 1 功能 藥品的信息在錄入的時候難免會出錯 通過獲取藥品編號 對藥品信息進行修改 5 1 4 1 4 2 參數(shù) 無 5 1 4 1 4 3 算法 無 5 1 4 1 5 方法 通過編號刪除藥品 public String Deletemedicine 5 1 4 1 5 1 功能 在藥品不再需要或者效果不佳的時候需要對藥品進行刪除 通過獲取藥品編號然后對 藥品信息刪除 在刪除的時候需要確定該藥品是否存在 5 1 4 1 5 2 參數(shù) 無 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 12 頁 共 46 頁 5 1 4 1 5 3 算法 無 5 1 4 1 6 方法 更新藥品信息 public String update 5 1 4 1 6 1 功能 更新藥品信息 5 1 4 1 6 2 參數(shù) 無 5 1 4 1 6 3 算法 無 5 1 4 2屬性 private Medicine medicine new Medicine private String categoryid null private int pageNo private static String kw private static String MN private static String NM private static String FA private static String DP private static String CT private static String TP 5 1 4 2 1 屬性 medicine 藥品的實體對象 5 1 4 2 2 屬性 categoryid 類別對象編號 5 1 4 2 3 屬性 pageNo 信息頁的頁號 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 13 頁 共 46 頁 5 1 4 2 4 屬性 kw 模糊查詢時的關(guān)鍵字 5 1 4 2 5 屬性 MN 藥品編號 5 1 4 2 6 屬性 NM 藥品名 5 1 4 2 7 屬性 FA 藥品生產(chǎn)公司 5 1 4 2 8 屬性 DP 藥品描述 5 1 4 2 9 屬性 CT 藥品數(shù)量 5 1 4 2 10 屬性 TP 藥品類型 5 1 5 MedcineDao 類 5 1 5 1方法 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 14 頁 共 46 頁 5 1 5 1 1 loadMedicine 方法 5 1 5 1 1 1 功能 與數(shù)據(jù)庫交互 通過 id 號從藥品數(shù)據(jù)庫中取得數(shù)據(jù) 采用 hql 查詢語句 并且整個查 詢過程封裝在一個 Transaction 事務(wù)中以保證操作的并發(fā)性 查詢結(jié)果放在一個 Medcine 對 象中 該方法用于給其它方法調(diào)用 5 1 5 1 1 2 參數(shù) int id 為需要查詢的藥品的 id 號 為整型 5 1 5 1 1 3 算法 load 事務(wù)操作過程 1 open Transaction 2 load medcine 3 close medcine 5 1 5 1 2 insert 方法 5 1 5 1 2 1 功能 與數(shù)據(jù)庫交互 將一個實例化的 Medcine 對象插入到數(shù)據(jù)庫中 采用 hql 語句 并且 整個插入過程封裝在一個 Transaction 事務(wù)中以保證操作的并發(fā)性 該方法返回值為 void 該方法用于給其它方法調(diào)用 5 1 5 1 2 2 參數(shù) Medicine medicine 即一個要插入數(shù)據(jù)庫的 Medcine 對象 5 1 5 1 2 3 算法 insert 事務(wù)操作過程 1 open Transaction 2 insert data 3 close medcine 5 1 5 1 3 update 方法 5 1 5 1 3 1 功能 與數(shù)據(jù)庫交互 用于對數(shù)據(jù)庫中的 Medcine 數(shù)據(jù)進行更新操作 采用 hql 語句 并且 整個更新過程封裝在一個 Transaction 事務(wù)中以保證操作的并發(fā)性 該方法返回值為 void 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 15 頁 共 46 頁 該方法用于給其它方法調(diào)用 5 1 5 1 3 2 參數(shù) Medcine medcine 即最新的 Medcine 數(shù)據(jù)狀態(tài) 5 1 5 1 3 3 算法 update 事務(wù)操作過程 1 open Transaction 2 insert data 3 close medcine 5 1 5 1 4 DeleteMedicine 方法 5 1 5 1 4 1 功能 與數(shù)據(jù)庫交互 用于刪除數(shù)據(jù)庫中的制定 id 號的 Medcine 數(shù)據(jù) 采用 hql 語句 并且 整個更新過程封裝在一個 Transaction 事務(wù)中以保證操作的并發(fā)性 該方法返回值為 void 該方法用于給其它方法調(diào)用 5 1 5 1 4 2 參數(shù) int id 即要刪除的 Medcine 的 id 號 5 1 5 1 4 3 算法 Delete 算法的流程圖如下 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 16 頁 共 46 頁 5 1 5 1 5 loadMedicineAndCategory 方法 5 1 5 1 5 1 功能 與數(shù)據(jù)庫交互 用于從數(shù)據(jù)庫中獲得制定 id 號的 Medcine 和 Category 數(shù)據(jù) 采用 hql 語句 并且整個更新過程封裝在一個 Transaction 事務(wù)中以保證操作的并發(fā)性 該方法返回 值為一個 Medcine 對象 該方法用于給其它方法調(diào)用 5 1 5 1 5 2 參數(shù) int id 即要獲得的 medcine 的 id 號 5 1 5 1 5 3 算法 5 1 5 1 6 getMedicineByPage 方法 5 1 5 1 6 1 功能 與數(shù)據(jù)庫交互 用于從數(shù)據(jù)庫中獲得某一頁的 Medcine 數(shù)據(jù) 采用 hql 語句 并且整 個更新過程封裝在一個 Transaction 事務(wù)中以保證操作的并發(fā)性 該方法返回值為一個 Medcine 的 ArrayList 該方法用于給其它方法調(diào)用 5 1 5 1 6 2 參數(shù) int pageNo 即需要獲得數(shù)據(jù)的頁數(shù) 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 17 頁 共 46 頁 5 1 5 1 6 3 算法 5 1 5 2屬性 private Medicine medicine new Medicine private String categoryid null private int pageNo private static String kw private static String MN private static String NM private static String FA private static String DP private static String CT private static String TP 5 1 5 2 1 屬性 medicine 藥品的實體對象 5 1 5 2 2 屬性 categoryid 類別對象編號 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 18 頁 共 46 頁 5 1 5 2 3 屬性 pageNo 信息頁的頁號 5 1 5 2 4 屬性 kw 模糊查詢時的關(guān)鍵字 5 1 5 2 5 屬性 MN 藥品編號 5 1 5 2 6 屬性 NM 藥品名 5 1 5 2 7 屬性 FA 藥品生產(chǎn)公司 5 1 5 2 8 屬性 DP 藥品描述 5 1 5 2 9 屬性 CT 藥品數(shù)量 5 1 5 2 10 屬性 TP 藥品類型 5 2 類別管理模塊 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 19 頁 共 46 頁 5 2 1 功能描述 用戶登錄進入類別管理頁面 能進行藥品類別的管理 主要包括類別的添 加 修改 查看和統(tǒng)計 5 2 2 相關(guān)模塊 5 2 3 類圖 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 20 頁 共 46 頁 5 2 4 類別管理類 5 2 4 1方法 5 2 4 1 1 方法 藥品信息的添加 public String add 5 2 4 1 1 1 功能 對藥品的類別信息進行添加 類別編碼是類別對象的一個標示 當添加一個類別信息 時 需要判斷此類別是否已經(jīng)在數(shù)據(jù)庫中 如果存在 則提示已存在該類別 5 2 4 1 1 2 參數(shù) 無 5 2 4 1 1 3 算法 無 5 2 4 1 2 方法 類別信息的模糊查詢 public String queryallcategory 5 2 4 1 2 1 功能 為了方便用戶查詢已有類別 類別信息管理模塊提供了類別模糊查詢 此操作將根據(jù) 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 21 頁 共 46 頁 用戶所輸入的關(guān)鍵字信息 對類別名稱 類別描述等多個類別屬性進行模糊查詢 并以分 頁顯示的方式返回模糊查詢或后的結(jié)果集 5 2 4 1 2 2 參數(shù) 無 5 2 4 1 2 3 算法 無 5 2 4 1 3 方法 類別信息的更新 public String updatecategory 5 2 4 1 3 1 功能 當用戶需要對類別的信息添加說明或修改屬性時 需要用到類別信息的更新 5 2 4 1 3 2 參數(shù) 無 5 2 4 1 3 3 算法 無 5 2 4 1 4 方法 通過編號修改類別信息 public String Modifycategory 5 2 4 1 4 1 功能 類別的信息在錄入的時候難免會出錯 通過獲取類別編號 對類別信息進行修改 5 2 4 1 4 2 參數(shù) 無 5 2 4 1 4 3 算法 無 5 2 4 1 5 方法 通過編號刪除類別 public String Deletecategory 5 2 4 1 5 1 功能 在類別不再需要或者效果不佳的時候需要對類別進行刪除 通過獲取類別編號然后對 該類別進行刪除 在刪除的時候需要確定該類別是否存在 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 22 頁 共 46 頁 5 2 4 1 5 2 參數(shù) 無 5 2 4 1 5 3 算法 無 5 2 4 2屬性 private Category category new Category private int id private int pageNo private String name private String description private String subDesc private Date createTime private Set meds 5 2 4 2 1 屬性 Category 類別的實體對象 5 2 4 2 2 屬性 id 類別對象編號 5 2 4 2 3 屬性 pageNo 信息頁的頁號 5 2 4 2 4 屬性 name 類別的名稱 5 2 4 2 5 屬性 description 類別的描述 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 23 頁 共 46 頁 5 2 4 2 6 屬性 createTime 類別創(chuàng)建時間 5 3 購買藥品 5 3 1 功能描述 對于用戶所選購的藥品 首先將其加載到一個 List 集合中 然后再將其保 存到 session 會話中 當用戶所購買的藥品發(fā)生改變時 將對 session 會話中 的對象進行操作 這一操作通過 SellAction 類的 order 方法進行處理 購買藥 品后后 會跳到相應(yīng)的該藥品的信息頁面 可以選擇購買數(shù)量 最后跳轉(zhuǎn)到已購 買藥品的頁面 點擊查看選購 會將購物車中藥品信息進行顯示 最后通過結(jié)賬 更新數(shù)據(jù)到數(shù)據(jù)庫中 5 3 2 相關(guān)模塊 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 24 頁 共 46 頁 買 買 買 買 買 買 買 買 買 買 買 買 買 買 買 買 買 買 買 買 買 買買 買 買 買 5 3 3 類圖 SellAction medicine Medicine new Medicine sellDao SellDao new SellDao medId String begin String end String pageNo int getsellmedicine getallmedicine buymedicine deletemedicine blurquerysellmedicine clear get set ModelDriven ActionSupport 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 25 頁 共 46 頁 5 3 4 類 SellAction 5 3 4 1方法 5 3 4 1 1方法 getsellmedicine 5 3 4 1 1 1 功能 獲取銷售單藥品的所有信息 5 3 4 1 1 2 參數(shù) 輸入?yún)?shù)為空 查詢完成 函數(shù)返回 selledmed Struts 配置文件根據(jù)該返回 值跳轉(zhuǎn)到銷售表單列表的 jsp 頁面 5 3 4 1 1 3 算法 根據(jù)前臺傳進來的頁數(shù)在數(shù)據(jù)庫進行查詢 返回查詢值放到 session 中再傳到前臺顯 示銷售信息 5 3 4 1 2方法 getallmedicine 5 3 4 1 2 1 功能 獲取所有的藥品信息 5 3 4 1 2 2 參數(shù) 輸入?yún)?shù)為空 查詢完成 函數(shù)返回 findAllSuccess 5 3 4 1 2 3 算法 根據(jù)前臺傳進來的頁數(shù)在數(shù)據(jù)庫進行查詢 返回查詢值放到 session 中再傳到前臺顯 示銷售信息 5 3 4 1 3 方法 buymedincine 5 3 4 1 3 1 功能 購買藥品 把購買的藥品加入購物車 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 26 頁 共 46 頁 5 3 4 1 3 2 參數(shù) 輸入?yún)?shù)為空 如果添加成功 返回 add 否則返回 error 5 3 4 1 3 3 算法 根據(jù)前臺傳進來的藥品 id 在數(shù)據(jù)庫進行查詢 把 session 里的 order 表單取出來 檢查 該購買藥品購物車里面是不是已經(jīng)有 如果有則出錯 5 3 4 1 4方法 deletemedincine 5 3 4 1 4 1 功能 刪除購物車里的某藥品 5 3 4 1 4 2 參數(shù) 輸入?yún)?shù)為空 返回值是字符串 order 5 3 4 1 4 3 算法 根據(jù)藥品 id 刪除在購物車里面的藥品 并把購物車的藥品數(shù)量和金額重新計算放到 order 里面 5 3 4 1 5方法 blurQuerySellmed 5 3 4 1 5 1 功能 模糊查詢購物車里面的藥品 5 3 4 1 5 2 參數(shù) 輸入?yún)?shù)為空 返回值是字符串 selledmed 表示查找成功 5 3 4 1 5 3 算法 根據(jù)前臺傳進來的關(guān)鍵字在數(shù)據(jù)庫進行查詢 返回查詢值放到 session 中的 sellDetails 再傳到前臺顯示信息 5 3 4 1 6 方法 clear 5 3 4 1 6 1 功能 清空購物車 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 27 頁 共 46 頁 5 3 4 1 6 2 參數(shù) 輸入?yún)?shù)為空 清空成功 函數(shù)返回 success 否則返回 error 5 3 4 1 6 3 算法 從 session 中把取出購物車 order 把它清空 5 3 4 2屬性 5 3 4 2 1 屬性 sellDetails sellDetails 是一個被實例化成 SellDetail 的 ArrayList 屬性名字是 sellDetails 用來存 放每次根據(jù)頁數(shù)在數(shù)據(jù)庫查詢的銷售信息 5 3 4 2 2 屬性 medicine 一個臨時變量 用來暫存一些方法中從數(shù)據(jù)庫查詢的結(jié)果 5 3 4 2 3 屬性 medId 藥品 id 5 3 4 2 4 屬性 begin 開始頁號 5 3 4 2 5 屬性 end 結(jié)束頁號 5 3 4 2 6 屬性 pageNo 當前頁號 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 28 頁 共 46 頁 5 4 銷售管理模塊 5 4 1 功能描述 用于對藥品的銷售情況進行統(tǒng)計和查詢 通過對銷售相關(guān)數(shù)據(jù)的 分析 為藥店的進貨提供依據(jù)和指導 銷售管理模塊主要有查看銷 售明細 今日銷售明細 查詢銷售明細 銷售統(tǒng)計等四個子模塊 5 4 2 相關(guān)模塊 銷售管理模塊和購買藥品模塊之間的關(guān)聯(lián)如上圖所示 當有客戶 購買藥品時 如果購買失敗 則不作任何操作放棄本次購買 如果 購買成功 則相應(yīng)的在銷售管理模塊中增加一條購買記錄 5 4 3 類圖 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 29 頁 共 46 頁 5 4 4 SellDetail 類 5 4 4 1方法 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 30 頁 共 46 頁 5 4 4 1 1 getUser 方法 5 4 4 1 1 1 功能 User 屬性的 getter 方法 獲取對象的 user 值 5 4 4 1 1 2 參數(shù) 無 5 4 4 1 1 3 算法 對方法的算法進行描述 5 4 4 1 2 setUser 方法 5 4 4 1 2 1 功能 User 屬性的 setter 方法 給 user 屬性賦值 5 4 4 1 2 2 參數(shù) User user 即一個 User 對象的實例 5 4 4 1 2 3 算法 無 5 4 4 1 3 getSellName 方法 5 4 4 1 3 1 功能 sellName 屬性的 getter 方法 獲取對象的 sellName 值 5 4 4 1 3 2 參數(shù) 無 5 4 4 1 3 3 算法 無 5 4 4 1 4 setSellName 方法 5 4 4 1 4 1 功能 sellName 屬性的 setter 方法 給 sellName 屬性賦值 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 31 頁 共 46 頁 5 4 4 1 4 2 參數(shù) 該方法的參數(shù)為 String sellName 即用一個 String 類型的字符串作為 sellName 的值 5 4 4 1 4 3 算法 無 5 4 4 1 5 getSellPrice 方法 5 4 4 1 5 1 功能 sellPrice 屬性的 getter 方法 獲取對象的 sellName 值 5 4 4 1 5 2 參數(shù) 無 5 4 4 1 5 3 算法 無 5 4 4 1 6 setSellPrice 方法 5 4 4 1 6 1 功能 sellPrice 屬性的 setter 方法 給 sellPrice 屬性賦值 5 4 4 1 6 2 參數(shù) 該方法的參數(shù)為 double sellPrice 即用一個 double 類型的數(shù)作為 sellPrice 的值 5 4 4 1 6 3 算法 無 5 4 4 1 7 getSellCount 方法 5 4 4 1 7 1 功能 sellCount 屬性的 getter 方法 獲取對象的 sellCount 值 5 4 4 1 7 2 參數(shù) 無 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 32 頁 共 46 頁 5 4 4 1 7 3 算法 無 5 4 4 1 8 setSellCount 方法 5 4 4 1 8 1 功能 sellCount 屬性的 setter 方法 給 sellCount 屬性賦值 5 4 4 1 8 2 參數(shù) 該方法的參數(shù)為 int sellCount 即用一個 int 類型的整數(shù)作為 sellCount 的值 5 4 4 1 8 3 算法 無 5 4 4 1 9 getSellTime 方法 5 4 4 1 9 1 功能 sellTime 屬性的 getter 方法 獲取對象的 sellTime 值 5 4 4 1 9 2 參數(shù) 無 5 4 4 1 9 3 算法 無 5 4 4 1 10 setSellTime 方法 5 4 4 1 10 1 功能 sellTime 屬性的 setter 方法 給 sellTime 屬性賦值 5 4 4 1 10 2 參數(shù) 該方法的參數(shù)為 Date sellTime 即用一個 Date 類型作為 sellTime 的值 5 4 4 1 10 3 算法 無 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 33 頁 共 46 頁 5 4 4 1 11 getMed 方法 5 4 4 1 11 1 功能 med 屬性的 getter 方法 獲取對象的 med 值 5 4 4 1 11 2 參數(shù) 無 5 4 4 1 11 3 算法 無 5 4 4 1 12 setMed 方法 5 4 4 1 12 1 功能 med 屬性的 setter 方法 給 med 屬性賦值 5 4 4 1 12 2 參數(shù) 該方法的參數(shù)為 Medicine med 即用一個 Medcine 類型的對象實例作為 med 的值 5 4 4 1 12 3 算法 無 5 4 4 1 13 getSellTotal 方法 5 4 4 1 13 1 功能 sellTotal 屬性的 getter 方法 獲取對象的 sellTotal 值 5 4 4 1 13 2 參數(shù) 無 5 4 4 1 13 3 算法 無 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 34 頁 共 46 頁 5 4 4 1 14 setSellTotal 方法 5 4 4 1 14 1 功能 sellTotal 屬性的 setter 方法 給 sellTotal 屬性賦值 5 4 4 1 14 2 參數(shù) 該方法的參數(shù)為 double sellTotal 即用一個 double 類型的值作 sellTotal 的值 5 4 4 1 14 3 算法 無 5 4 4 2屬性 5 4 4 2 1 id 屬性 該屬性是銷售列表的 id 唯一標識符 用 int 類型表示 5 1 4 2 2 sellName 屬性 該屬性是指所銷售藥品的名稱 用 String 類型表示 5 1 4 2 3 sellPrice 屬性 該屬性是指所銷售藥品的單價 用 double 類型表示 5 1 4 2 4 sellCount 屬性 該屬性是指在一個訂單中所銷售藥品的數(shù)量 用 int 類型表示 5 1 4 2 5 sellTime 屬性 該屬性是指在銷售藥品訂單的時間 用 Date 類型表示 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 35 頁 共 46 頁 5 1 4 2 6 med 屬性 該屬性是指在一個訂單中所銷售的藥品 用 Medcine 類型表示 5 1 4 2 7 user 屬性 該屬性是指處理某個訂單的操作員或用戶 用 User 類型表示 5 4 5 SellDao 類 5 4 5 1方法 5 4 5 1 1 saveSellDetail 方法 5 4 5 1 1 1 功能 該方法通過調(diào)用基本 dao 類中的 save 方法 對藥品銷售訂單信息數(shù)據(jù)的存儲 并 且實現(xiàn)一整套事務(wù) Transaction 的流程 保證了事務(wù)能夠在并發(fā)環(huán)境下正確執(zhí)行 5 4 5 1 1 2 參數(shù) Void 型參數(shù) 無需返回數(shù)據(jù) 5 4 5 1 1 3 算法 事務(wù)的處理邏輯 當需要進行對數(shù)據(jù)庫的操作時 首先創(chuàng)建一個事務(wù) 執(zhí)行操作后判斷操 作是否成功 如果成功則關(guān)閉事務(wù) 結(jié)束流程 若操作失敗 則對數(shù)據(jù)庫進行 rollback 操 作 之后關(guān)閉事務(wù) 流程結(jié)束 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 36 頁 共 46 頁 saveSellDetail 方法的算法流程圖 5 4 5 1 2 getSellDetailsBykeyword 方法 5 4 5 1 2 1 功能 該方法用于實現(xiàn)通過關(guān)鍵字對藥品銷售信息進行模糊查詢 該方法調(diào)用了 createQuery 方法 用 hql 語句對數(shù)據(jù)庫進行查詢 查詢得到的數(shù)據(jù)放入 SellDetail 類型 的 ArrayList 當中 同時也是用了 transaction 來保證查詢操作的并發(fā)性 5 4 5 1 2 2 參數(shù) String keyword 即為用戶輸入的關(guān)鍵詞 用 String 類型保存 5 4 5 1 2 3 算法 將查詢操作放入事務(wù)之中 以避免發(fā)生讀臟數(shù)據(jù)的問題 步驟如下 1 beginTransaction 2 queryOperation 3 closeTransaction 5 4 5 1 3 getPageCount 方法 5 4 5 1 3 1 功能 通過查詢數(shù)據(jù)庫來計算出數(shù)據(jù)的總頁數(shù) 返回類型為 int 型 5 4 5 1 3 2 參數(shù) 無 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 37 頁 共 46 頁 5 4 5 1 3 3 算法 無 5 4 5 1 4 getSellDetailsByTime 方法 5 4 5 1 4 1 功能 該方法用于實現(xiàn)通過用戶輸入的日期范圍對一段時間內(nèi)的藥品銷售信息進行模糊查詢 需要用戶輸入合法的日期 該方法調(diào)用了 createQuery 方法 用 hql 語句對數(shù)據(jù)庫進行 查詢 查詢得到的數(shù)據(jù)放入 SellDetail 類型的 ArrayList 當中 同時也是用了 transaction 來 保證查詢操作的并發(fā)性 5 4 5 1 4 2 參數(shù) 該方法有兩個參數(shù) 一個是開始時間 beginTime 一個是結(jié)束時間 endTime 開始時間 和結(jié)束時間均用 String 類型來保存 該方法調(diào)用了 createQuery 方法 用 hql 語句對數(shù) 據(jù)庫進行查詢 查詢得到的數(shù)據(jù)放入 SellDetail 類型的 ArrayList 當中 同時也是用了 transaction 來保證查詢操作的并發(fā)性 5 4 5 1 4 3 算法 整個查詢操作封裝在一個事務(wù)中 查詢時 先判斷用戶輸入的日期參數(shù)的合法性 若 合法則進行查詢并返回數(shù)據(jù) 最后關(guān)閉事務(wù)并結(jié)束 若頁數(shù)不合法 則直接結(jié)束事務(wù) 5 4 5 1 4 4 功能 該方法用于實現(xiàn)分頁條件下查詢某一頁的藥品銷售數(shù)據(jù) 該方法調(diào)用了 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 38 頁 共 46 頁 createQuery 方法 用 hql 語句對數(shù)據(jù)庫進行查詢 查詢得到的數(shù)據(jù)放入 SellDetail 類型 的 ArrayList 當中 同時也是用了 transaction 來保證查詢操作的并發(fā)性 5 4 5 1 4 5 參數(shù) int pageNo 即要查詢的數(shù)據(jù)的頁數(shù) 該方法用于其它方法的實現(xiàn) 5 4 5 1 4 6 算法 整個查詢操作封裝在一個事務(wù)中 查詢時 先判斷參數(shù) pageNo 的合法性 若合法則 進行查詢并返回數(shù)據(jù) 最后關(guān)閉事務(wù)并結(jié)束 若頁數(shù)不合法 則直接結(jié)束事務(wù) 5 4 5 1 5 setSellPrice 方法 5 4 5 1 5 1 功能 sellPrice 屬性的 setter 方法 給 sellPrice 屬性賦值 5 4 5 1 5 2 參數(shù) 該方法的參數(shù)為 double sellPrice 即用一個 double 類型的數(shù)作為 sellPrice 的值 5 4 5 1 5 3 算法 無 5 4 5 2屬性 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 39 頁 共 46 頁 5 4 5 2 1 id 屬性 該屬性是銷售列表的 id 唯一標識符 用 int 類型表示 5 1 4 2 2 sellName 屬性 該屬性是指所銷售藥品的名稱 用 String 類型表示 5 1 4 2 3 sellPrice 屬性 該屬性是指所銷售藥品的單價 用 double 類型表示 5 1 4 2 4 sellCount 屬性 該屬性是指在一個訂單中所銷售藥品的數(shù)量 用 int 類型表示 5 1 4 2 5 sellTime 屬性 該屬性是指在銷售藥品訂單的時間 用 Date 類型表示 5 1 4 2 6 med 屬性 該屬性是指在一個訂單中所銷售的藥品 用 Medcine 類型表示 5 1 4 2 7 user 屬性 該屬性是指處理某個訂單的操作員或用戶 用 User 類型表示 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 40 頁 共 46 頁 5 5 需求管理 5 5 1 功能描述 用戶在進入需求管理的時候 可以添加進貨藥品 還可以查看進貨的信息 最后在藥品表 更新信息 5 5 2 相關(guān)模塊 該模塊較為獨立 和其他模塊聯(lián)系不大 5 5 3 類圖 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 41 頁 共 46 頁 5 5 4 RequireAction 類 5 5 4 1方法 5 5 4 1 1 方法 findMedicineByMedNo 5 5 4 1 1 1 功能 類接收了前臺傳進來的藥品編號 此方法就是通過藥品編號檢查數(shù)據(jù)庫中是否存在此藥 如果藥品存在 直接更新藥品需求 否則添加新藥 5 5 4 1 1 2 參數(shù) 1 requireUpdate 藥品存在時返回 2 requireSave 藥品不存在時返回 5 5 4 1 1 3 算法 首先檢查數(shù)據(jù)庫中是否存在該藥品 如果存在 就將查詢值傳到前臺顯示 并直接返回 requireUpdate 如果不存在 就添加新的藥品類別并傳到前臺 同時返回 requireSave 5 5 4 1 2 方法 queryallrequire 5 5 4 1 2 1 功能 查詢已添加成功的所有藥品需求 5 5 4 1 2 2 參數(shù) 返回字符串 findAllSuccess 5 5 4 1 2 3 算法 從數(shù)據(jù)庫中取得藥品需求 并通過分頁方式傳到前臺顯示 并返回 findAllSuccess 5 5 4 1 3 方法 update 5 5 4 1 3 1 功能 更新藥品需求 5 5 4 1 3 2 參數(shù) 1 success 藥品更新成功 2 error 藥品更新失敗 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 42 頁 共 46 頁 5 5 4 1 3 3 算法 根據(jù)前臺傳進來的藥品編號和藥品數(shù)量更新藥品需求 并將更新結(jié)果返回前臺 顯示 5 5 4 1 4 方法 add 5 5 4 1 4 1 功能 添加藥品需求 5 5 4 1 4 2 參數(shù) 1 success 藥品需求添加成功 2 error 藥品需求添加失敗 5 5 4 1 4 3 算法 根據(jù)前臺傳進來的藥品編號 藥品名稱 單價 需求數(shù)量 所屬類別 出廠地址 描述來 添加藥品需求 并將處理結(jié)果返回前臺顯示 5 5 4 1 5 方法 getModel 5 5 4 1 5 1 功能 利用 ModelDriver 接收參數(shù) 5 5 4 1 5 2 參數(shù) 返回 Medicine 對象 5 5 4 1 5 3 算法 返回 Medicine 模型 5 5 4 2屬性 5 5 4 2 1 medicine 接收藥品編號 5 5 4 2 2 categoryid 接收藥品類別 id 號 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 43 頁 共 46 頁 5 5 4 2 3 pageNo 接收頁號 可用于分頁 5 5 4 2 4 category 接收通過 categoryid 從數(shù)據(jù)庫中取出的 Category 對象 5 5 4 2 5 medicineDao 通過 medicineDao 更新和添加藥品需求 5 6 系統(tǒng)管理 5 6 1 功能描述 包括對該管理系統(tǒng)的用戶進行管理 查看 添加 刪除 修改用戶信息 系統(tǒng)初始化和退 出系統(tǒng) 5 6 2 相關(guān)模塊 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 44 頁 共 46 頁 5 6 3 類圖 5 6 4 類 A 5 6 4 1方法 5 6 4 1 1 方法 public String AddUser 5 6 4 1 1 1 功能 添加用戶 5 6 4 1 1 2 參數(shù) 輸入?yún)?shù)為空 當添加用戶成功返回 success 失敗返回 error 5 6 4 1 1 3 算法 把添加的用戶名到數(shù)據(jù)庫里查詢 若已經(jīng)存在則提示用戶已存在 添加失敗 否則把用戶 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 45 頁 共 46 頁 添加進數(shù)據(jù)庫 提示添加成功 5 6 4 1 2 方法 Public String QueryAllUser 5 6 4 1 2 1 功能 查詢所有用戶 5 6 4 1 2 2 參數(shù) 輸入?yún)?shù)為空 查詢成功返回 success 5 6 4 1 2 3 算法 無 5 6 4 1 3 方法 public String ModifyUser 5 6 4 1 3 1 功能 更新用戶信息 5 6 4 1 3 2 參數(shù) 輸入?yún)?shù)為空 當添加用戶成功返回 success 失敗返回 error 5 6 4 1 3 3 算法 無 5 6 4 1 4 方法 Public String deleteUser 5 6 4 1 4 1 功能 刪除用戶 5 6 4 1 4 2 參數(shù) 輸入?yún)?shù)為空 當添加用戶成功返回 success 失敗返回 error 5 6 4 1 4 3 算法 無 醫(yī)藥管理系統(tǒng)項目詳細設(shè)計說明書 內(nèi)部文檔 第 46 頁 共 46 頁 5 6 4 1 5 方法 Public String initialization 5 6 4 1 5 1 功能 系統(tǒng)初始化 5 6 4 1 5 2 參數(shù) 輸入?yún)?shù)為空 當初始化成功返回 success 失敗返回 error 5 6 4 1 5 3 算法 初始化成功自動跳轉(zhuǎn)到登錄頁面 5 6 4 2屬性 5 6 4 2 1 屬性 userDao UserDao 類的對象 用來在本類中使用 UserDao 的方法 5 6 4 2 2 屬性 user 用來接收和暫存前臺 user 對象的信息- 1.請仔細閱讀文檔,確保文檔完整性,對于不預覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點此認領(lǐng)!既往收益都歸您。
下載文檔到電腦,查找使用更方便
15 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計者僅對作品中獨創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- XXX 詳細 設(shè)計 說明書
鏈接地址:http://italysoccerbets.com/p-9293428.html