Đang tải lên

Vui lòng đợi trong giây lát...

Preview text:

PHÂN TÍCH YÊU CẦU
ĐỀ TÀI QUẢN LÝ PHÒNG MẠCH TƯ Danh sách yêu cầu:
II. LẬP DANH SÁCH KHÁM BỆNH....................................................................1 III.
LẬP PHIẾU KHÁM BỆNH..........................................................................2
IV. TRA CỨU BỆNH NHÂN................................................................................3
V. LẬP HÓA ĐƠN THANH TOÁN......................................................................4 VI.
LẬP BÁO CÁO DOANH THU THÁNG.........................................................5 VII.
LẬP BÁO CÁO SỬ DỤNG THUỐC THÁNG.................................................7
VIII. LẬP PHIẾU NHẬP THUỐC.........................................................................8 IX.
THAY ĐỔI SỐ LƯỢNG BỆNH NHÂN TỐI ĐA TRONG NGÀY.......................8
X. THAY ĐỔI DANH SÁCH THUỐC...................................................................9 XI.
THAY ĐỔI DANH SÁCH LOẠI BỆNH........................................................10 XII.
THAY ĐỔI DANH SÁCH ĐƠN VỊ TÍNH.....................................................11
XIII. THAY ĐỔI DANH SÁCH CÁCH DÙNG......................................................12
XIV. THAY ĐỔI TIỀN KHÁM...........................................................................13 I.
LẬP PHIẾU NHẬP THUỐC BM1 Phiếu Nhập Thuốc
Mã phiếu nhập: ……………………………………….
Ngày nhập: ……………………………………………

Tổng tiền nhập: ……………………………………… STT Mã thuốc Số lượng nhập Đơn giá nhập 1 2
1. Sơ đồ luồng dữ liệu
2. Mô tả các luồng dữ liệu
- D1: Ngày nhập, Danh sách Thuốc nhập (Mã thuốc, Số lượng nhập, Đơn giá nhập). - D2: Không có.
- D3: Danh sách Thuốc (Mã thuốc, Số lượng tồn) đã có, tỉ lệ đơn giá bán.
- D4: D1 + Số lượng tồn mới của các thuốc (D1) + Tổng tiền nhập +
Danh sách đơn giá bán của từng loại thuốc đã nhập. - D5: D4. - D6: Không có. 3. Thuật toán
- B1: Nhận D1 từ người dùng.
- B2: Kết nối cơ sở dữ liệu.
- B3: Đọc D3 từ bộ nhớ phụ.
- B4: Kiểm tra mã thuốc (D1) có nằm trong danh sách Mã thuốc (D3) hay
không, nếu không thì thông báo người dùng và đến B9.
- B5: Tính Số lượng tồn sau khi nhập của các loại thuốc được nhập= Số
lượng tồn cũ + Số lượng nhập.
- B6: Tính Tổng tiền nhập = ∑Số lượng nhập * Đơn giá nhập của từng
loại thuốc được nhập trong (D1)
- B7: Tính Đơn giá bán của từng loại thuốc mới nhập = Đơn giá nhập của
từng loại thuốc (D1) * Tỉ lệ đơn giá bán.
- B8: Lưu D4 xuống bộ nhớ phụ
- B9: Đóng kết nối cơ sở dữ liệu. - B10: Kết thúc. II.
LẬP DANH SÁCH TIẾP NHẬN BM1:
Tiếp Nhận Bệnh Nhân STT Họ tên Giới tính Năm sinh Địa chỉ 1 2
1. Sơ đồ luồng dữ liệu
2. Mô tả các luồng dữ liệu
Trường hợp 1: Bệnh nhân mới, chưa có mã bệnh nhân:
D1: Ngày khám, Danh sách Bệnh nhân (Họ tên, Giới
tính, Năm sinh, Địa chỉ) D2: Không có.
D3: Danh sách Bệnh nhân (Mã bệnh nhân) mới tạo. D4: D1 + D3 D5: D4. D6: Không có.
Trường hợp 2: Bệnh nhân cũ, đã có mã bệnh nhân:
D1: Ngày khám, Danh sách Bệnh nhân (Mã bệnh nhân). D2: Không có.
D3: Danh sách Bệnh nhân (Họ tên, Giới tính, Năm sinh, Địa chỉ). D4: D1. D5: D4. D6: Không có. 3. Thuật toán
Trường hợp 1: Bệnh nhân mới, chưa có mã bệnh nhân:
B1: Nhận D1 từ người dùng. B2: Kết nối CSDL.
B3: Đọc D3 từ bộ nhớ phụ.
B4: Lưu D4 xuống bộ nhớ phụ. B5: Xuất D5 ra máy in.
B6: Đóng kết nối cơ sở dữ liệu. B7: Kết thúc.
Trường hợp 2: Bệnh nhân cũ, đã có mã bệnh nhân:
B1: Nhận D1 từ người dùng. B2: Kết nối CSDL.
B3: Đọc D3 từ bộ nhớ phụ.
B4: Lưu D4 xuống bộ nhớ phụ. B5: Xuất D5 ra máy in.
B6: Đóng kết nối cơ sở dữ liệu. B7: Kết thúc. III.
LẬP DANH SÁCH HẸN KHÁM
Quy định: Mỗi ngày hẹn chỉ hẹn tối đa 10 người BM3: Danh Sách Hẹn Khám STT Mã bệnh Họ tên Năm sinh Ngày hẹn Trạng thái nhân 1 2
1. Sơ đồ luồng dữ liệu
2. Mô tả sơ đồ luồng dữ liệu
- D1: Mã bệnh nhân, Ngày hẹn, Trạng thái. - D2: Không có.
- D3: Danh sách Bệnh nhân (Họ tên, Năm Sinh), Danh sách Lịch hẹn (Mã bệnh nhân, Ngày hẹn) - D4: D1. - D5: D4. D6: Không có 3. Thuật toán
- B1: Nhận D1 từ người dùng. - B2: Kết nối CSDL.
- B3: Đọc D3 từ bộ nhớ phụ.
- B4: Kiểm tra số lượng bệnh nhân hẹn khám trong Ngày hẹn (D1) tại
(D3) có < số lượng bệnh nhân hẹn khám tối đa trong ngày không. Nếu
không thì thông báo người dùng rồi tới B7.
- B5: Lưu D4 xuống bộ nhớ phụ. - B6: Xuất D5 ra máy in.
- B7: Đóng kết nối cơ sở dữ liệu. - B8: Kết thúc. IV.
LẬP PHIẾU KHÁM BỆNH BM3: Phiếu Khám Bệnh
Mã phiếu khám: ……………………….
Ngày khám: ……………………………
Mã bệnh nhân: ………………………..
Họ tên: ………………………………
Triệu chứng: ………………………..
Dự đoán loại bệnh: ……………………… STT Mã thuốc Tên Đơn vị Số lượng Cách dùng Đơn giá thuốc tính 1 2
1. Sơ đồ luồng dữ liệu
2. Mô tả các luồng dữ liệu
- D1: Mã bệnh nhân, Ngày khám, Triệu chứng, Dự đoán loại bệnh (Mã
loại bệnh), Danh sách thuốc (Mã thuốc, Số lượng dùng). - D2: Không có.
- D3: Họ tên, Dự đoán bệnh (Mã loại bệnh, Tên loại bệnh), Danh sách
thuốc (Mã thuốc, Tên Thuốc, Mã đơn vị tính, Mã cách dùng, Số lượng
tồn, Đơn giá bán), Danh sách đơn vị tính (Mã đơn vị tính, Tên đơn vị
tính), Danh sách cách dùng (Mã cách dùng, tên cách dùng), Tiền khám.
- D4: D1 + Tổng tiền thuốc + Tiền khám + Danh sách số lượng tồn. - D5: D4. - D6: Không có. 3. Thuật toán
- B1: Nhận D1 từ người dùng.
- B2: Kết nối cơ sở dữ liệu.
- B3: Đọc D3 từ bộ nhớ phụ. - B4: Kiểm tra:
oMã loại bệnh (Mã loại bệnh (D1)) có nằm trong danh sách bệnh
(Mã loại bệnh (D3)) hay không?
oDanh sách thuốc (Mã thuốc (D1)) có nằm trong danh sách thuốc (Mã thuốc (D3)) hay không?
oDanh sách số lượng dùng (D1) có ≤ danh sách số lượng tồn (D3) hay không?
oNếu không thỏa bất kì điều kiện nào trong 3 điều kiện trên thì
thông báo người dùng rồi đến B9.
- B5: Tính tổng tiền thuốc = ∑ĐơngiáthuốcSố lượngdùng
- B6: Tính số lượng tồn = Số lượng tồn – Số lượng dùng.
- B7: Lưu D4 xuống bộ nhớ phụ. - B8: Xuất D5 ra máy in.
- B9: Đóng kết nối cơ sở dữ liệu. - B10: Kết thúc. V.
LẬP DANH SÁCH KHÁM BỆNH BM2: Danh Sách Khám Bệnh
Ngày khám: ………………………… STT Họ tên Giới tính Năm sinh Địa chỉ
1. Sơ đồ luồng dữ liệu
2. Mô tả các luồng dữ liệu
- D1: Ngày khám, Danh sách Bệnh nhân (Mã bệnh nhân). - D2: Không có.
- D3: Danh sách Bệnh nhân (Họ tên, Giới Tính, Năm Sinh, Địa Chỉ). - D4: D1. - D5: D4. - D6: Không có. 3. Thuật toán
- B1: Nhận D1 từ người dùng. - B2: Kết nối CSDL.
- B3: Đọc D3 từ bộ nhớ phụ.
- B4: Lưu D4 xuống bộ nhớ phụ. - B5: Xuất D5 ra máy in.
- B6: Đóng kết nối cơ sở dữ liệu. - B7: Kết thúc. VI. TRA CỨU BỆNH NHÂN BM DANH SÁCH BỆNH NHÂN 4
STT Mã bệnh nhân Họ tên
Ngày khám Loại bệnh Triệu chứng 1 2
1. Sơ đồ luồng dữ liệu
2. Mô tả các luồng dữ liệu
- D1: Tiêu chuẩn tra cứu (Mã bệnh nhân, Họ tên, Ngày khám, Loại bệnh, Triệu chứng. - D2: Không có.
- D3: Danh sách phiếu khám bệnh (Mã bệnh nhân, Họ tên, Ngày khám,
Loại bệnh, Triệu chứng) thỏa tiêu chuẩn tra cứu D1. - D4: Không có. - D5: D3. - D6: D5. 3. Thuật toán
-B1: Nhận D1 từ người dùng.
-B2: Kết nối cơ sở dữ liệu.
-B3: Đọc D3 từ bộ nhớ phụ.
-B4: Xuất D5 ra máy in.
-B5: Trả D6 cho người dùng.
-B6: Đóng kết nối cơ sở dữ liệu. -B7: Kết thúc VII.
LẬP HÓA ĐƠN THANH TOÁN BM5 HÓA ĐƠN THANH TOÁN
Mã phiếu khám: ……………………
Ngày khám: …………………………
Mã bệnh nhân: …………………….
Họ tên: ………………………………
Tiền khám: …………………………
Tiền thuốc: …………………………
Tổng tiền phải trả: …………………………….
1. Sơ đồ luồng dữ liệu
2. Mô tả các luồng dữ liệu
- D1: Mã phiếu khám bệnh. - D2: Không có.
- D3: Phiếu khám bệnh (Mã bệnh nhân, Họ tên, Ngày khám, Tiền khám, Tổng tiền thuốc).
- D4: D1 + Tổng tiền phải trả. - D5: D4. - D6: Không có. 3. Thuật toán
- B1: Nhận D1 từ người dùng.
- B2: Kết nối cơ sở dữ liệu.
- B3: Đọc D3 từ bộ nhớ phụ.
- B4: Tính tổng tiền phải trả = Tiền khám (D3) + Tổng tiền thuốc (D3).
- B5: Lưu D4 xuống bộ nhớ phụ. - B6: Xuất D5 ra máy in.
- B7: Đóng kết nối cơ sở dữ liệu. - B8: Kết thúc. VIII.
LẬP BÁO CÁO DOANH THU THÁNG BM6
BÁO CÁO DOANH THU THEO THÁNG
Tháng: …………………………
Tổng doanh thu: ………………… STT Ngày Số bệnh nhân Doanh thu Tỉ lệ 1 2
1. Sơ đồ luồng dữ liệu
2. Mô tả các luồng dữ liệu - D1: Tháng + Năm. - D2: Không có.
- D3: Danh sách các Hóa Đơn Thanh Toán, Phiếu Khám Bệnh trong tháng D1.
- D4: D1 + thông tin thống kê theo doanh thu từng ngày trong tháng
(Ngày khám, Số bệnh nhân, Doanh thu, Tỉ lệ) + Tổng doanh thu. - D5: D4. - D6: D5 3. Thuật toán
- B1: Nhận D1 từ người dùng.
- B2: Kết nối cơ sở dữ liệu.
- B3: Đọc D3 từ bộ nhớ phụ.
- B4: Đếm số lượng bệnh nhân theo ngày khám từ danh sách các Phiếu Khám Bệnh (D3).
- B5: Tính Doanh thu theo ngày khám từ danh sách các Hóa Đơn Thanh Toán (D3):
Doanh thu = ∑Tổngtiền phảitrả
- B6: Tính Tổng doanh thu theo tháng từ Doanh thu của các ngày trong tháng.
Tổng doanh thu = ∑Doanhthu
-B7: Tính Tỉ lệ doanh thu từng ngày dựa vào Doanh thu từng ngày và Tổng doanh thu tháng.
Tỉ lệ = Doanh thu / Tổng doanh thu
- B8: Lưu D4 xuống bộ nhớ phụ. - B9: Xuất D5 ra máy in.
- B10: Trả D6 cho người dùng.
- B11: Đóng kết nối cơ sở dữ liệu. - B12: Kết thúc. IX.
LẬP BÁO CÁO SỬ DỤNG THUỐC THÁNG BM7
BÁO CÁO SỬ DỤNG THUỐC
Tháng: ………………………….. STT Tên thuốc Đơn vị tính Số lượng Số lần dùng 1 2
1. Sơ đồ luồng dữ liệu
2. Mô tả các luồng dữ liệu - D1: Tháng + Năm. - D2: Không có.
- D3: Danh sách các phiếu khám bệnh trong tháng (D1)
- D4: D1 + thông tin báo cáo sử dụng thuốc theo tháng (thuốc, đơn vị
tính, số lượng, số lần dùng). - D5: D4. - D6: D5. 3. Thuật toán
- B1: Nhận D1 từ người dùng.
- B2: Kết nối cơ sở dữ liệu.
- B3: Đọc D3 từ bộ nhớ phụ.
- B4: Tính Tổng số lượng dùng của từng Tên thuốc từ danh sách Phiếu
Khám Bệnh trong tháng (D3).
Số lượng = ∑Số lượngdùng
- B5: Tính Số lần dùng = Số Phiếu Khám Bệnh có dùng thuốc đó của từng thuốc.
- B6: Lưu D4 xuống bộ nhớ phụ. - B7: Xuất D5 ra máy in.
- B8: Trả D6 cho người dùng.
- B9: Đóng kết nối cơ sở dữ liệu. - B10: Kết thúc. X.
THAY ĐỔI SỐ LƯỢNG BỆNH NHÂN KHÁM TỐI ĐA TRONG NGÀY/ SỐ
LƯỢNG BỆNH NHÂN HẸN TỐI ĐA TRONG NGÀY/ TIỀN KHÁM/ TỈ LỆ ĐƠN GIÁ BÁN
1. Sơ đồ luồng dữ liệu
2. Mô tả các luồng dữ liệu
- D1: Số lượng bệnh nhân khám tối đa trong ngày/ hẹn tối đa trong ngày/
tiền khám/ tỉ lệ đơn giá bán. - D2: Không có.
- D3: Số lượng bệnh nhân khám tối đa trong ngày/ hẹn tối đa trong ngày/
tiền khám/ tỉ lệ đơn giá bán hiện tại. - D4: D1. - D5: D4. - D6: Không có. 3. Thuật toán
- B1: Nhận D1 từ người dùng.
- B2: Kết nối cơ sở dữ liệu.
- B3: Đọc D3 từ bộ nhớ phụ.
- B4: Kiểm tra Số lượng bệnh nhân khám tối đa trong ngày/ hẹn tối đa
trong ngày/ tiền khám/ tỉ lệ đơn giá bán (D1) có khác Số lượng bệnh
nhân khám tối đa trong ngày/ tiền khám/ tỉ lệ đơn giá bán (D3) hay
không, nếu không thì đến B7.
- B5: Lưu D4 xuống bộ nhớ phụ. - B6: Xuất D5 ra máy in.
- B7: Đóng kết nối cơ sở dữ liệu. - B8: Kết thúc. XI.
THAY ĐỔI DANH SÁCH THUỐC
1. Sơ đồ luồng dữ liệu
2. Mô tả các luồng dữ liệu
- D1: Thuốc (Mã thuốc, Tên thuốc, Mã đơn vị tính, Mã cách dùng). - D2: Không có.
- D3: Danh sách các Thuốc (Mã thuốc, Tên thuốc, Mã đơn vị tính, Mã cách dùng) đã có. - D4: D1. - D5: D4. - D6: Không có 3. Thuật toán
- B1: Nhận D1 từ người dùng.
- B2: Kết nối cơ sở dữ liệu.
- B3: Đọc D3 từ bộ nhớ phụ.
- B4: Kiểm tra Thuốc (D1) có nằm trong danh sách Thuốc (D3) hay chưa, nếu có rồi, đến B7.
- B5: Lưu D4 xuống bộ nhớ phụ. - B6: Xuất D5 ra máy in.
- B7: Đóng kết nối cơ sở dữ liệu. - B8: Kết thúc. XII.
THAY ĐỔI DANH SÁCH LOẠI BỆNH
1. Sơ đồ luồng dữ liệu
2. Mô tả các luồng dữ liệu
- D1: Loại bệnh (Mã loại bệnh, Tên loại bệnh). - D2: Không có.
- D3: Danh sách Loại bệnh (Mã loại bệnh, Tên loại bệnh) đã có. - D4: D1. - D5: D4. - D6: Không có. 3. Thuật toán
- B1: Nhận D1 từ người dùng.
- B2: Kết nối cơ sở dữ liệu.
- B3: Đọc D3 từ bộ nhớ phụ.
- B4: Kiểm tra Loại bệnh (D1) có nằm trong danh sách Loại bệnh (D3)
chưa, nếu có rồi, đến B7.
- B5: Lưu D4 xuống bộ nhớ phụ. - B6: Xuất D5 ra máy in.
- B7: Đóng kết nối cơ sở dữ liệu. - B8: Kết thúc. XIII.
THAY ĐỔI DANH SÁCH ĐƠN VỊ TÍNH
1. Sơ đồ luồng dữ liệu
2. Mô tả các luồng dữ liệu
- D1: Đơn vị tính (Mã đơn vị tính, Tên đơn vị tính). - D2: Không có.
- D3: Danh sách Đơn vị tính (Mã đơn vị tính, Tên đơn vị tính) đã có. - D4: D1. - D5: D4. - D6: Không có. 3. Thuật toán
- B1: Nhận D1 từ người dùng.
- B2: Kết nối cơ sở dữ liệu.
- B3: Đọc D3 từ bộ nhớ phụ.
- B4: Kiểm tra Đơn vị tính (D1) có nằm trong danh sách Đơn vị tính (D3)
chưa, nếu có rồi thì đến B7.
- B5: Lưu D4 xuống bộ nhớ phụ. - B6: Xuất D5 ra máy in.
- B7: Đóng kết nối cơ sở dữ liệu. - B8: Kết thúc. XIV.
THAY ĐỔI DANH SÁCH CÁCH DÙNG
1. Sơ đồ luồng dữ liệu
2. Mô tả các luồng dữ liệu
- D1: Cách dùng (Mã cách dùng, Tên cách dùng). - D2: Không có.
- D3: Danh sách Cách dùng (Mã cách dùng, Tên cách dùng) đã có. - D4: D1. - D5: D4. - D6: Không có. 3. Thuật toán
- B1: Nhận D1 từ người dùng.
- B2: Kết nối cơ sở dữ liệu.
- B3: Đọc D3 từ bộ nhớ phụ.
- B4: Kiểm tra Cách dùng (D1) có nằm trong danh sách Cách dùng (D3)
chưa, nếu có rồi thì đến B7.
- B5: Lưu D4 xuống bộ nhớ phụ. - B6: Xuất D5 ra máy in.
- B7: Đóng kết nối cơ sở dữ liệu. - B8: Kết thúc.
Mỗi lần nhập thuốc, tự động tính lại đơn giá bán theo đơn giá nhập * tỉ lệ đơn giá bán.
Khi nhập thuốc mới, phải thêm thuốc mới vô danh sách thuốc trước và đặt số lượng tồn
bằng 0. Sau đó mới lập phiếu nhập thuốc.
Lưu ý cẩn thận khúc lập danh sách khám bệnh, cẩn thận không để chương trình gặp lỗi
không cho nhập quá số lượng bệnh nhân khám tối đa trong ngày (ý là rạch ròi số lượng
trong ngày chứ không phải tổng số lượng bệnh nhân trong database) Pipeline:
Bệnh nhân đến khám -> Gặp tiếp nhân -> Tiếp tân nhập thông tin bệnh nhân vào DANH SÁCH TIẾP NHẬN ->
Nếu chưa đủ max người: đưa bệnh nhân qua chờ khám -> Bác sĩ gọi bệnh nhân vào (stt
theo stt trên ds tiếp nhận) -> Bác sĩ LẬP PHIẾU KHÁM BỆNH cho bệnh nhân -> Bác sĩ
lập DANH SÁCH KHÁM BỆNH (chứa bệnh nhân mình đã khám rồi trong ngày đó)
Nếu max người rồi: Tiếp tân quan sát trên màn hình đã nhập bao nhiêu người, nếu quá số
lượng cho phép rồi (30) thì chủ động hỏi bệnh nhân có muốn lập lịch hẹn hay không (vẫn
nhập thông tin vào danh sách tiếp nhận) -> Nếu bệnh nhân muốn lập lịch hẹn thì dùng
tính năng LẬP DANH SÁCH HẸN KHÁM.
Nếu bác sĩ gọi hết 30 người đầu tiên trong danh sách tiếp nhận nhưng SỐ PHIẾU KHÁM
BỆNH vẫn chưa đủ 30 thì có thể thông báo đến tiếp tân để nhận thêm người mới vào mà
không phải hỏi đặt LỊCH HẸN nữa.
Vào ngày mới, đưa các bệnh nhân có lịch hẹn trong ngày đó vào danh sách tiếp nhận ->
chỉ tiếp nhận 20 bệnh nhân mới -> Sau khi qua 9h, nếu có bệnh nhân nào có lịch hẹn mà
không đến thì hủy lịch hẹn của họ, xóa họ khỏi danh sách tiếp nhận trọng ngày và thực
hiện thủ tục tiếp nhận như bình thường.
*Cô sửa: Bỏ hồ sơ tiếp nhận, bỏ đặt lịch, tỉ lệ đơn giá thuốc thành tham số nếu giống
nhau, đảm bảo danh sách khám bệnh(max, điều chỉnh max, thêm chi tiết phiếu
khám+xóa, sửa), báo cáo theo tháng mới đúng>