1. Trang chủ
  2. » Luận Văn - Báo Cáo

Nghiên cứu và xây dựng thử nghiệm hệ thống đơn thuốc điện tử tại việt nam theo mô hình mạng lưới surescripts

128 21 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 128
Dung lượng 3,2 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Tác giả xin đề xuất đề tài: Nghiên cứu và xây dựng thử nghiệm hệ thống đơn thuốc điện tử tại Việt Nam theo mô hình mạng lưới Surescripts Hệ thống được đặt tên là SurescriptVN và gồm có

Trang 2

Học Viên: Võ Tư Duy 1

MỤC LỤC

M ỤC LỤC 1

LỜI CAM ĐOAN 5

LỜI CẢM ƠN 6

DANH M ỤC CÁC TỪ TIẾNG ANH, TỪ VIẾT TẮT 7

DANH M ỤC CÁC BẢNG 9

DANH MỤC CÁC HÌNH VẼ, ĐỒ THI ̣ 10

M Ở ĐẦU 14

PH ẦN 1: NỀN TẢNG CƠ SỞ 17

CHƯƠNGI:TỔNG QUAN VỀ ĐƠN THUỐC ĐIỆN TỬ VÀ MẠNG LƯỚI SURECRIPTS 17

M ở Chương 17

1 T ổng quan về đơn thuốc điện tử 17

1.1 Tổng quan 17

1.2 Lợi ích của đơn thuốc điện tử 17

2 Tổng quan về Mạng Lưới Surescripts 18

2.1 Tổng quan 18

2.2 Thế mạnh của Surescripts 19

2.3 Cách hoạt động 19

2.4 Bảo mật 21

CHƯƠNGII:NỀN TẢNG CÔNG NGHỆ WEB API VÀ MÔ HÌNH PHÁT TRIỂN WEBSITE MVC 22

Mở Chương 22

1 Công nghệ Web API 22

1.1 Tổng quan 22

1.2 Kiến Trúc Web API 23

The hosting layer - Tầng hosting 25

The message handler pipeline - Tầng xử lý thông điệp 25

The controller handling layer - Tầng xử lý của controller 26

1.3 Lợi ích của Web API 27

2 Mô hình phát tri ển website MVC 28

2.1 Tổng quan 28

2.2 Luồng xử lý yêu cầu của người dùng trong MVC 30

2.3 Lợi ích của mô hình MVC 31

Trang 3

Học Viên: Võ Tư Duy 2

SURESCRIPTVN 32

CHƯƠNGIII:HỆ THỐNG ĐƠN THUỐC ĐIỆN TỬ SURESCRIPTVN 32

Mở Chương 32

1 Tổng quan về Hệ Thống Đơn Thuốc Điện Tử SurescriptVN 32

1.1 Mục Đích 32

1.2 Lợi Ích 32

1.3 Các thành phần trong hệ thống 33

1.4 Mô hình hoạt động chung 36

2 Phân tích yêu cầu chức năng 38

2.1 Yêu cầu chức năng của hệ thống SurescriptVN 38

2.1.1 Yêu cầu chức năng của Website SurescriptVN 38

A Ca sử dụng cho người dùng, bệnh viện, nhà thuốc và bệnh nhân 38

B Ca sử dụng cho quản trị viên 45

2.1.2 Yêu cầu APIs của hệ thống SurescriptVN 49

A APIs cho bệnh viện, phòng khám 49

B APIs cho nhà thuốc 55

2.2 Yêu cầu chức năng của Website Bệnh Viện Vinmec 58

Sơ đồ ca sử dụng 58

UC15 – Đăng nhập 58

UC16 – Tra cứu thông tin bệnh nhân 59

UC17 – Thêm bệnh nhân mới 59

UC18 – Sửa thông tin bệnh nhân 60

UC19 – Cập nhật thuốc dị ứng của bệnh nhân 60

UC20 – Kê đơn thuốc mới cho bệnh nhân 61

UC21 – Tra cứu đơn thuốc bệnh nhân 62

UC22 – Xem thông tin một đơn thuốc 62

UC23 – Sửa đơn thuốc 63

UC24 – Hủy đơn thuốc 63

UC25 – In đơn thuốc 64

UC26 – Bác sĩ đăng Xuất 64

2.3 Yêu cầu chức năng của Website Nhà Thuốc Linh Đan 65

Sơ đồ ca sử dụng 65

UC27 – Dược sĩ đăng nhập 65

UC28 – Tra cứu đơn thuốc của nhà thuốc 66

UC29 – Xem thông tin một đơn thuốc 66

UC30 – Xuất đơn thuốc 67

Trang 4

Học Viên: Võ Tư Duy 3

UC31 – In đơn thuốc 67

UC32 – Tra cứu thuốc 68

UC33 – Cập nhật thông tin thuốc 68

UC34 – Dược sĩ đăng xuất 69

CHƯƠNGIV:THI ẾT KẾ HỆ THỐNG ĐƠN THU ỐC ĐI ỆN TỬ SURESCRIPTVN 70

Mở Chương 70

1 Thi ết kế kiến trúc tổng quát 70

2 Thi ết kế hệ thống con SurescriptVN 73

2.1 Thiết kế kiến trúc Website SurescriptVN 73

2.2 Thiết kế kiến trúc SurescriptVN APIs 74

2.2.1 Model 76

2.2.2 Các API Controller 81

2.3 Thiết kế database 90

Sơ đồ mối quan hệ giữa các bảng 90

Thiết kế từng bảng dữ liệu cụ thể 92

2.4 Xây dựng cơ chế kiểm tra thuốc tốt 98

3 Thi ết kế Website Bệnh Viện Vinmec 101

3.1 Thiết kế kiến trúc 101

3.2 Thiết kế database 101

Mối quan hệ giữa các bảng 101

Thiết kế từng bảng dữ liệu cụ thể 101

4 Thi ết kế Website Nhà Thuốc Linh Đan 103

4.1 Thiết kế kiến trúc 103

4.2 Thiết kế database 103

Mối quan hệ giữa các bảng 103

Thiết kế từng bảng dữ liệu cụ thể 103

CHƯƠNGV:THỬ NGHIỆM HỆ THỐNG VÀ ĐÁNH GIÁ 105

Mở Chương 105

1 Môi trường thử nghiệm 105

2 Chương Trình Thử Nghiệm 105

2.1 Hệ Thống SurescriptVN 105

2.1.1 Website SurescriptVN 105

UC07 - Đăng ký Bệnh Viện 105

UC08 - Đăng ký Nhà Thuốc 107

UC09 – Xem thông tin đơn thuốc 109

UC12 – Thêm thuốc vào hệ thống 111

UC13 – Sửa thông tin Thuốc 112

Trang 5

Học Viên: Võ Tư Duy 4

UC14 – Xóa thuốc khỏi hệ thống 112

2.1.2 SurescriptVN APIs 113

2.2 Website Bệnh Viện Vimec 113

UC16 – Tra cứu thông tin bệnh nhân 113

UC19 – Cập nhật thuốc dị ứng bệnh nhân 115

UC20 – Kê đơn thuốc mới 116

UC23 – Sửa đơn thuốc 119

UC24 – Hủy đơn thuốc 121

UC25 – In đơn thuốc 122

2.3 Website Nhà Thuốc Linh Đan 122

UC28 – Tra cứu đơn thuốc của nhà thuốc 122

UC30 – Xuất đơn thuốc 123

UC32 – Tra cứu thuốc của nhà thuốc 123

UC33 – Cập nhật thông tin thuốc 124

3 Kết quả thử nghiệm 124

CHƯƠNG VI.KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 125

TÀI LI ỆU THAM KHẢO 126

Trang 6

Học Viên: Võ Tư Duy 5

LỜI CAM ĐOAN

Tác giả luận văn xin cam đoan đây là công trình nghiên cứu của riêng tác giả luận văn đúc kết từ quá trình nghiên cứu, tập hợp các nguồn tài liệu, các kiến thức

đã học đến việc tự thu thập các thông tin liên quan và liên hệ thực tế tại đơn vị công tác Các số liệu, kết quả nêu trong luận văn là trung thực và chưa từng được ai công

bố trong bất kỳ công trình nào khác

Tác giả luận văn xin cam đoan rằng mọi sự giúp đỡ cho việc thực hiện Luận

văn này đã được cảm ơn và các thông tin trích dẫn trong Luận văn đã được chỉ rõ

nguồn gốc

Tác giả luận văn xin chi ̣u trách nhiê ̣m về nghiên cứu của mı̀nh

Ho ̣c viên thực hiê ̣n luâ ̣n văn

Võ Tư Duy

Trang 7

Học Viên: Võ Tư Duy 6

LỜI CẢM ƠN

Trước tiên, tác giả luận văn xin được gửi lời cảm ơn đến tất cả quý thầy cô

đã giảng dạy trong chương trình đào ta ̣o tha ̣c sỹ, Viện Công Nghê ̣ Thông Tin và

Truyền Thông, Đa ̣i ho ̣c Bách Khoa Hà Nội, những người đã truyền đạt cho tác giả

những kiến thức hữu ích làm cơ sở cho tác giả thực hiện tốt luận văn này

Với lòng kính trọng và biết ơn, tác giả luận văn xin được bày tỏ lời cảm ơn

tới TS Nguyễn Hữu Đức đã khuyến khích, tận tình hướng dẫn trong thời gian thực

hiện luận văn Mặc dù trong quá trình thực hiện luận văn có giai đoạn không được

thuận lợi nhưng những gì thầy đã hướng dẫn, chỉ bảo đã cho tác giả luận văn nhiều

kinh nghiệm trong thời gian thực hiện đề tài

Sau cùng tác giả luận văn xin gửi lời biết ơn sâu sắc đến gia đình đã luôn tạo điều kiện tốt nhất cho tác giả luận văn trong suốt quá trình học cũng như thực hiện

luận văn Do thời gian có hạn và kinh nghiệm nghiên cứu khoa học chưa nhiều nên

luận văn còn nhiều thiếu xót, rất mong nhận được ý kiến góp ý của Thầy/Cô và các

ba ̣n học viên

Học viên thực hiê ̣n luâ ̣n văn

Võ Tư Duy

Trang 8

Học Viên: Võ Tư Duy 7

DANH MỤC CÁC TỪ TIẾNG ANH, TỪ VIẾT TẮT

T ừ Viết Tắt Gi ải Nghĩa

dụng

hoặc chọn dữ liệu có sẵn

các ứng dụng web

đổi giữa Client và Server

Trang 9

Học Viên: Võ Tư Duy 8

Trang 10

Học Viên: Võ Tư Duy 9

DANH MỤC CÁC BẢNG

Bảng 1: clinics – Bệnh Viện/Phòng Khám 92

Bảng 2: pharmacy – Nhà Thuốc 92

Bảng 3: patient – Bệnh Nhân 93

Bảng 4: drug - Thuốc 94

Bảng 5: prescription – Đơn Thuốc 94

Bảng 6: prescriptiondrug – Thuốc trong đơn 95

Bảng 7: pharmacydrug – Thuốc đã được nhà thuốc đăng ký 95

Bảng 8: drugcategory – Nhóm thuốc 96

Bảng 9: drugunit – Đơn vị/Đóng gói thuốc 96

Bảng 10: patientallergy – Thuốc bệnh nhân dị ứng 96

Bảng 11: accstatus – Trạng thái bệnh viện/nhà thuốc 96

Bảng 12: user – người dùng hệ thống SurescriptVN 97

Bảng 13: user – người dùng hệ thống Bệnh Viện Vinmec 101

Bảng 14: doctor – Bác Sĩ 102

Bảng 15: user – người dùng hệ thống Nhà Thuốc Linh Đan 103

Bảng 16: pharmacist – Dược Sĩ 104

Trang 11

Học Viên: Võ Tư Duy 10

DANH MỤC CÁC HÌNH VẼ, ĐỒ THI ̣

Hình 1: Surescripts Network logo 19

Hình 2: Cách hoạt động của Surescripts Network 20

Hình 3: Web API hỗ trợ hầu hết thiết bị 22

Hình 4: Kiến trúc Web API 24

Hình 5: Thành phần xử lý thông điệp - Message Handler 25

Hình 6: Các phương thức của Web API 28

Hình 7: Xử lý yêu cầu người dùng trong MVC 30

Hình 8: Sơ đồ hoạt động chung 36

Hình 9: Sơ đồ ca sử dụng cho người dùng của Website SurescriptVN 38

Hình 10: Sơ đồ ca sử dụng cho quản trị viên của Website SurescriptVN 45

Hình 11: Sơ đồ ca sử dụng cho Bệnh Viện 49

Hình 12: Sơ đồ ca sử dụng cho nhà thuốc 55

Hình 13: Sơ đồ ca sử dụng cho Bác Sĩ 58

Hình 14: Sơ đồ ca sử dụng cho Dược Sĩ 65

Hình 15: Kiến trúc tổng quát Hệ thống Đơn Thuốc Điện Tử SurescriptVN 71

Hình 16: Sơ đồ kiến trúc website theo mô hình MVC 73

Hình 17: Sơ đồ kiến trúc SurescriptVN APIs 74

Hình 18: Thành phần Model cùa SurescriptVN APIs 76

Hình 19: Lớp clinic.cs - Bệnh Viện 77

Hình 20: Lớp pharmacy.cs – Nhà Thuốc 78

Hình 21: Lớp patient.cs - Bệnh Nhân 79

Hình 22: Lớp drug.cs - Thuốc 80

Hình 23: Lớp prescription.cs - Đơn Thuốc 81

Trang 12

Học Viên: Võ Tư Duy 11

Hình 24: Các API Controller 82

Hình 25: Các APIs của PrescriptionController 82

Hình 26: HTTP GET lấy thông tin một đơn thuốc 83

Hình 27: Dữ liệu đơn thuốc dưới dạng JSON 83

Hình 28: HTTP GET lấy danh sách đơn thuốc của nhà thuốc 84

Hình 29: Danh sách đơn thuốc trả về dưới dạng JSON 84

Hình 30: HTTP POST thêm đơn thuốc mới vào hệ thống 85

Hình 31: API trả lại mã đơn thuốc mới 85

Hình 32: HTTP PUT Xuất đơn thuốc 86

Hình 33: APIs của ClinicController 86

Hình 34: APIs của PharmacyController 87

Hình 35: APIs của DrugController 88

Hình 36: APIs của PatientController 89

Hình 37: APIs của PharmacyDrugController2.3 Thiết kế database 89

Hình 38: Mối quan hệ giữa các bảng của Hệ thống SurescriptVN 90

Hình 39: Bảng Patient, Drug và PatientAllergy 98

Hình 40: Sơ đồ nghiệp vụ API.12 - Kiểm tra thuốc tốt 100

Hình 41: Mối quan hệ giữa các bảng của Website Bệnh Viện Vinmec 101

Hình 42: Mối quan hệ giữa các bảng của Website Nhà Thuốc Linh Đan 103

Hình 43: Danh sách Bệnh Viện 105

Hình 44: Dialog Đăng Ký Bệnh Viện 106

Hình 45: Trang Quản Lý Bệnh Viện 106

Hình 46: Dialog Cập nhật trạng thái Bệnh Viện 107

Hình 47: Danh sách Nhà Thuốc 107

Trang 13

Học Viên: Võ Tư Duy 12

Hình 48: Dialog Đăng ký Nhà Thuốc 108

Hình 49: Trang Quản lý Nhà Thuốc 108

Hình 50: Dialog Cập nhật trạng thái Nhà Thuốc 108

Hình 51: Danh sách Đơn Thuốc của Bệnh Bhân 109

Hình 52: Đơn Thuốc 110

Hình 53: Trang Quản lý Thuốc 111

Hình 54: Dialog Thêm Thuốc 111

Hình 55: Dialog Cập nhật Thuốc 112

Hình 56: Dialog Xác nhận xóa 112

Hình 57: Danh sách Bệnh Nhân 113

Hình 58: Dialog Thông tin Bệnh Nhân 114

Hình 59: Thuốc Bệnh Nhân dị ứng 115

Hình 60: Kết quả cập nhật thuốc dị ứng 115

Hình 61: Dialog Kê đơn thuốc 116

Hình 62: Tìm thuốc cho Đơn Thuốc 116

Hình 63: Cảnh báo Thuốc 117

Hình 64: Kê đơn đầy đủ 117

Hình 65: Chọn Nhà Thuốc 118

Hình 66: Kiểm tra đơn thuốc 119

Hình 67: Kết quả sau khi kê Đơn Thuốc 119

Hình 68: Trang Đơn Thuốc Bệnh Nhân 119

Hình 69: Đơn Thuốc đầy đủ 120

Hình 70: Dialog Kê Đơn khi sửa Đơn Thuốc 121

Hình 71: Kết quả Hủy Đơn Thuốc 121

Trang 14

Học Viên: Võ Tư Duy 13

Hình 72: In Đơn Thuốc 122

Hình 73: Danh sách Đơn Thuốc của Nhà Thuốc 122

Hình 74: Kết quả Xuất Đơn Thuốc 123

Hình 75: Danh mục Thuốc của Nhà Thuốc 123

Hình 76: Cập nhật thông tin Thuốc 124

Trang 15

Học Viên: Võ Tư Duy 14

MỞ ĐẦU

Theo số liệu của Tổng Cục Thống Kê (1), tính đến hết năm 2012 nước ta có

910 bệnh viện, ước tính mỗi bệnh viện có 500 đơn thuốc mỗi ngày Như vậy cả

nước có 455.000 đơn thuốc được kê mỗi ngày Hầu hết trong số này là đơn

thuốc tay do bác sĩ viết Tức là viết các loại thuốc lên đơn thuốc và bệnh nhân

sẽ mang đơn thuốc ra nhà thuốc để mua Với số lượng đơn thuốc lớn và quy

trình kê đơn, mua thuốc thủ công như vậy, chắc chắn sẽ có nhưng sai sót xẩy ra

gây nguy hiểm cho người bệnh Đồng thời quy trình kê đơn, mua thuốc này

cũng đang tồn tại rất nhiều bất cập như:

- Bác sĩ lạm dụng kháng sinh trong kê đơn để bệnh nhân nhanh khỏi bệnh

Việc này làm cho tình trạng kháng kháng sinh ở nước ta đang ở mức cao nhất

thế giới và Việt Nam đã được WHO đưa ra cảnh báo (2) Theo Tổ chức Y tế thế giới (WHO), từ năm 2009 đến nay, số lượng thuốc kháng sinh được bán ở Việt

Nam đã tăng gấp 2 lần WHO đưa ra cảnh báo đến năm 2050, tình trạng kháng

thuốc kháng sinh có thể là nguyên nhân gây tử vong cho 10 triệu người trên

toàn cầu Đáng báo động hơn, trong số các quốc gia có tình trạng kháng thuốc

kháng sinh nghiêm trọng thì Việt Nam là một trong số những nước đứng đầu

Ông Lokky Wai – Trưởng đại diện WHO tại Việt Nam cho rằng, trong vài chục năm nữa, khi các phương pháp điều trị như hóa trị bệnh ung thư và phẫu thuật

đơn giản sẽ không thể thực hiện được do phụ thuộc vào thuốc kháng sinh để

bảo vệ bệnh nhân chống nhiễm trùng Trong tương lai khi kháng sinh không

còn tác dụng thì triệu chứng ho hay một vết cắt cũng có thể gây tử vong

- Bác sĩ kê thuốc nằm trong danh sách giới hạn của Bộ Y Tế Đây là những

thuốc đặc biệt, cần cực kỳ hạn chế khi kê đơn như thuốc ngủ Seduxen, thuốc

giảm đau mạnh Morphin, thuốc an thần diazepam, Bộ Y Tế đã có Thông Tư

(3) Quy định quản lý thuốc gây nghiện, thuốc hướng tâm thần và tiền chất dùng làm thuốc để hạn chế việc sản xuất và sử dụng những loại thuốc này

Trang 16

Học Viên: Võ Tư Duy 15

- Sự liên kết giữa bác sĩ, công ty sản xuất/nhập khẩu thuốc và nhà thuốc tạo

ra sự độc quyền một số loại thuốc nhất định, dẫn đến việc bệnh nhân bị mua

thuốc với giá cao Bác sĩ sẽ được hưởng hoa hồng từ việc kê loại thuốc này, còn công ty và nhà thuốc sẽ có lợi nhuận lớn Bộ Y Tế cũng đã có thông tư (4) về

việc nghiêm cấm các công ty thuốc quảng cáo thuốc cho bác sĩ, gây ảnh hưởng

đến việc kê đơn thuốc

- Bệnh nhân có tiền sử dị ứng với loại thuốc trong đơn Nếu bệnh nhân

không thông báo và bác sĩ kê thuốc vào đơn, bệnh nhân sẽ gặp nhiều nguy hiểm khi sử dụng thuốc

- Chữ viết trong đơn xấu hoặc không rõ ràng, dược sĩ khó lấy đúng loại

thuốc cho bệnh nhân

- Những loại thuốc chuyên dụng như thuốc tiêm, thuốc kháng viêm và giảm đau Voltaren, thường ít nhà thuốc bán và bệnh nhân mất nhiều thời gian để

tìm mua

- Thuốc đã dừng sản xuất và được thay thế bằng một loại mới Bệnh nhân sẽ phải quay lại hỏi bác sĩ xem liệu mình có thể dùng loại thuốc mới không, liều

dùng của loại thuốc mới như nào

- Bệnh nhân làm thất lạc đơn thuốc

Tại các quốc gia phát triển như Mỹ, đơn thuốc điện tử đã được chính phủ

cấp phép và nó đang dần thay thế đơn thuốc tay truyền thống Theo thông kê

của Surescripts - mạng lưới đơn thuốc điện tử lớn nhât ở Mỹ, hiện đã có hơn

900.000 chuyên gia, bác sĩ và hơn 1000 bệnh viện tham gia vào mạng lưới và

họ thực hiện kê hơn 1 tỷ đơn thuốc điện tử mỗi năm cho 270 triệu người

Surescripts Network cung cấp các dịch vụ và tiện ích cho phép bác sĩ viết và

gửi đơn thuốc trực tiếp đến nhà thuốc thay cho cách viết tay truyền thống Đơn

thuốc điện tử sẽ đảm bảo đúng loại thuốc, đúng nơi nhận và dược sĩ có thể hiểu

được Đơn thuốc điện tử giúp giảm thiểu rủi ro trong quá trình kê đơn, mua và

Trang 17

Học Viên: Võ Tư Duy 16

sử dụng thuốc của bệnh nhân đồng thời khắc phục những bất cập của quy trình

kê đơn thuốc tay truyền thống

Nhận thấy những ưu điểm của đơn thuốc điện tử và với mong muốn những

bệnh nhân ở nước ta được kê những đơn thuốc tốt, cũng như không gặp phải

khó khăn khi mua và sử dụng thuốc Tác giả xin đề xuất đề tài:

Nghiên cứu và xây dựng thử nghiệm hệ thống đơn thuốc điện tử tại Việt

Nam theo mô hình mạng lưới Surescripts

Hệ thống được đặt tên là SurescriptVN và gồm có 3 hệ thống con:

- Website Bệnh Viện Vinmec: Nơi bác sĩ kê đơn cho bệnh nhân

- Website Nhà Thuốc Linh Đan: Bệnh nhân mua thuốc tại nhà thuốc Linh

Đan Dược sĩ sẽ bàn giao thuốc cho bệnh nhân thông qua Website nhà thuốc

- Hệ thống con SurescriptVN: Hệ thống đóng vai trò quan trọng nhất trong

SurescriptVN, có nhiệm vụ kết nối bệnh viện, nhà thuốc và bệnh nhân

Trang 18

Học Viên: Võ Tư Duy 17

PHẦN 1: Nền tảng cơ sở CHƯƠNG I: Tổng quan về đơn thuốc điện tử và mạng lưới Surecripts

Mở Chương

Trong Chương I, người viết sẽ trình bày 2 vấn đề chính:

- Tổng quan về đơn thuốc điện tử: các khái niệm cơ bản và mục đích của đơn thuốc điện tử

- Tổng quan về Mạng Lưới SurescriptVN: Nhiệm vụ, cách thức hoạt động

của mạng lưới Sự phát triển mạnh mẽ của mạng lưới Surescripts tại Mỹ

1 Tổng quan về đơn thuốc điện tử

1.1 Tổng quan

Đơn thuốc điện tử là một nền tảng công nghệ cho phép bác sĩ viết và gửi đơn thuốc trực tiếp đến nhà thuốc thay cho cách viết tay truyền thống Đơn thuốc điện tử phải đảm bảo đúng loại thuốc, đúng nơi nhận và dược sĩ có thể hiểu được (5)

Một hệ thống đơn thuốc điện tử cơ bản có nhiệm vụ giống như một cuốn cẩm nang tham khảo Nơi mà các bác sĩ và bệnh nhân có thể truy cập vào và tra cứu

thông tin đơn thuốc Các hệ thống phức tạp hơn cho phép bác sĩ kê đơn cho bệnh

nhân, quản lý thuốc, tra cứu thông tin qua trình điều trị của bệnh nhân, kết nối tới

cửa hàng thuốc và tích hợp với hệ thống hồ sơ y tế điện tử

Các hệ thống đơn thuốc điện tử tại Mỹ đều phải có chứng nhận của chính

phủ Một hệ thống được cấp phép cần phải có khả năng gửi đơn thuốc điện tử, cảnh

báo người kê đơn về tác dụng phụ (nếu có) và gợi ý thuốc thay thế Đơn thuốc điện

tử giúp giảm thiểu lỗi do chữ viết xấu, thất lạc đơn thuốc mà đơn thuốc truyền

thống thường đem lại

1.2 L ợi ích của đơn thuốc điện tử

- Đảm bảo sự an toàn cho bệnh nhân

+ Khi bác sĩ kê một loại thuốc kháng sinh, thuốc nằm trong danh sách giới

hạn hoặc thuốc bệnh nhân bị dị ứng, hệ thống sẽ có cảnh báo để nhắc nhở bác sĩ sử

dụng một loại thuốc khác thay thế

Trang 19

Học Viên: Võ Tư Duy 18

+ Đơn thuốc được số hóa nên tên các loại thuốc, số lượng, công dụng, liều

dùng đều được nhìn thấy rõ ràng Dược sĩ sẽ lấy được đúng thuốc, đúng số lượng

cho bệnh nhân Bệnh nhân cũng nắm rõ được thông tin đơn thuốc để có thể sử dụng thuốc đúng liều, đúng cách

- Bệnh nhân có thể mua đơn thuốc với chi phí hợp lý Hệ thống chịu trách nhiệm

quản lý danh sách thuốc Một loại thuốc mới được thêm vào hệ thống sẽ được thông báo đến tất cả các nhà thuốc Các nhà thuốc có thể tra cứu thông tin về thuốc mới và đặt mua từ công ty sản xuất/nhập khẩu Điều này sẽ giúp tránh độc quyền thuốc và

bệnh nhân sẽ không phải mua thuốc với giá cao

- Giảm thiểu chi phí: Một nghiên cứu gần đây (6) cho thấy nếu số lượng đơn thuốc

điện tử tăng 10% sẽ giúp tiết kiệm 140 đến 240 tỷ $ trong vòng 10 năm tới

- Tăng sự hiệu quả: đơn thuốc điện tử được gửi trực tiếp đến hệ thống máy tính nhà

thuốc, giúp giảm thiểu thời gian cũng như khả năng thất lạc đơn thuốc Ngoài ra

dược sĩ nhà thuốc cũng không cần nhập đơn thuốc vào máy tính để thông kê cũng

như tính toán giá thành

- Khả năng mở rộng: Một phòng khám hay một nhà thuốc mới có thể dễ dàng tham

gia vào mạng lưới thông qua các dịch vụ hệ thống cung cấp

2 Tổng quan về Mạng Lưới Surescripts

2.1 Tổng quan

Mạng lưới Surescripts có tên gọi đầy đủ là The Surescripts Electronic

Prescribing Network ( Mạng lưới đơn thuốc điện tử Surescripts) Được tạo ra vào

năm 2001 bởi Hiệp hội dược tại Arlington, Virginia (7) Mục đích của mạng lưới là

cải thiện quá trình kê đơn bằng cách cung cấp khả năng gửi đơn thuốc từ văn phòng bác sĩ tới nhà thuốc thông qua mạng internet Nó cũng tương tự với mạng lưới kết

nối các ngân hàng với các máy rút tiền (ATMs), Surescripts kết nối các bác sĩ với

các nhà thuốc Mạng lưới cho phép truyền tải đơn thuốc an toàn và tin cậy từ máy

tính tại văn phòng bác sĩ tới máy tính của nhà thuốc

Trang 20

Học Viên: Võ Tư Duy 19

Hình 1: Surescripts Network logo

Surescripts không phát triển hoặc bán ứng dụng kê đơn thuốc điện tử mà họ

sẽ xác nhận hệ thống kê đơn điện tử của phòng khám và nhà thuốc, sau đó để các hệ thống đấy kết nối vào mạng lưới của mình

Đơn thuốc điện tử trao đổi qua mạng Surescripts sẽ được đảm bảo an toàn,

tăng hiệu quả và chất lượng đơn thuốc cũng tốt hơn so với phương pháp đơn tay

truyền thống

2.2 Thế mạnh của Surescripts

Mục đích của mạng lưới Surescripts là mang các dịch vụ và sản phẩm y tế đến

với tất cả mọi người thông qua internet 3 khả năng cốt lõi cũng như thế mạnh của

mạng lưới Surescripts là :

- Kết nối với cộng động rộng lớn các đối tác chăm sóc sức khỏe Bao gồm hơn

700 ứng dụng chăm sóc sức khỏe, được sử dụng bởi hơn 900.000 chuyên gia, hơn

1.000 bệnh viện và hơn 270 triệu người tham gia vào mạng lưới

- Trao đổi một khối lượng thông tin khổng lồ và an toàn trên internet

Surecripts thực hiện hơn 6 tỷ giao dịch mỗi năm, bao gồm 700 triệu bệnh án, hơn 1

tỷ đơn thuốc điện tử và gần 10 triệu tin nhắn chuẩn đoán bệnh

- Tích hợp với các phần mềm, ứng dụng của bệnh viện và nhà thuốc mà không cần mua thêm phần mềm và phần cứng

2.3 Cách h oạt động

Để có thể gửi được đơn thuốc điện tử từ bác sĩ đến nhà thuốc, Surescripts cung

cấp nhiều dịch vụ cho bệnh viện và nhà thuốc Thông qua các dịch vụ, bác sĩ có thể

truy xuất thông tin bệnh nhân, kê đơn thuốc và gửi đơn đến nhà thuốc Bệnh nhân

có thể nhận thuốc tại nhà thuốc hoặc có thể yêu cầu nhà thuốc gửi thuốc về nơi ở

Trang 21

Học Viên: Võ Tư Duy 20

Hình 2: Cách hoạt động của Surescripts Network Các dịch vụ mạng lưới Surescripts cung cấp:

- Đơn thuốc mới: gửi một đơn thuốc mới cho bệnh nhân tới nhà thuốc

- Đơn thuốc chỉnh sửa: gửi đơn thuốc được chỉnh sửa đến nhà thuốc

- Đơn thuốc tốt: cho phép người kê đơn lựa chọn thuốc trên dữ liệu thuốc có

sẵn và thông tin về các loại thuốc tốt cho bệnh nhân

- Bệnh án: truy cập bệnh án bệnh nhân sẽ giúp bác sĩ nắm rõ tình trạng sức

khỏe bệnh nhân, cũng như các loại thuốc mà bệnh nhân bị dị ứng Qua đó bác sĩ có

thể kê đơn thuốc hiệu quả hơn, tránh được các tác dụng phụ không mong muốn

- Tình trạng bệnh nhân: thông báo cho bác sĩ và nhà thuốc khi tình trạng bệnh

nhân thay đổi Ví dụ: khi bệnh nhân đến hoặc ra khỏi một bệnh viện, hoặc thay đổi

số phòng, số bảo hiểm …

- Cung cấp thêm thuốc: cho phép bệnh viện yêu cầu nhà thuốc cấp thêm thuốc

cho bệnh nhân điều trị lâu dài hoặc bị bệnh mãn tính

- Hủy đơn thuốc: hủy đơn thuốc đã gửi đến nhà thuốc

- Yêu cầu chỉnh sửa đơn thuốc: cho phép nhà thuốc gửi yêu cầu chỉnh sửa đơn

thuốc tới người kê đơn nếu thấy sự bất thường trong đơn thuốc

Trang 22

Học Viên: Võ Tư Duy 21

2.4 Bảo mật

Thông tin đơn thuốc và bệnh nhân là những thông tin cực kỳ quan trọng,

chúng cần được đảm bảo chính xác cũng như an toàn khi lưu chuyển trong mạng

Surescripts Vì vậy để đảm bảo sự tin tưởng từ khách hàng mạng lưới Surescripts đã đạt được các chứng chỉ an toàn thông tin ở mức cao nhất

- Surescripts đạt được chứng chỉ bảo mật an toàn thông tin ISO27001 (8) vào năm 2013, chỉ có 105 công ty ở Mỹ có thể đạt được chứng chỉ này ISO27001 là

một tiêu chuẩn quốc tế, nó định nghĩa các yêu cầu mà một hệ thống quản lý thông

tin cần phải có, từ đó đảm bảo rằng thông tin trong hệ thống được an toàn

- Surescripts đã được chứng nhận bởi WebTrust (9) WebTrust được quản lý

bởi Hiệp hội kế toán chuyên nghiệp Canada Nó được phát triển nhằm tăng sự tin

tưởng của người dùng khi trao đổi thông tin trên mạng internet WebTrust định

nghĩa ra các tiêu chí và nguyên tắc (10), các hệ thống cần đáp ứng được các tiêu chí đấy để nhận được chứng chỉ

Trang 23

Học Viên: Võ Tư Duy 22

CHƯƠNG II: Nền tảng công nghệ Web API và mô hình phát triển website

MVC

Mở Chương

Trong chương II, người viết sẽ trình bày về 2 công nghệ chính để xây dựng Hệ

thống Đơn Thuốc Điện Tử SurescriptVN

- Công nghệ Web API: tạo ra các SurescriptVN APIs, kết nối bệnh viện, nhà thuốc và bệnh nhân

- Mô hình phát triển website MVC: Dùng để xây dựng Website

SurescriptVN, Bệnh Viện Vinmec cũng như Nhà Thuốc Linh Đan

1 Công nghệ Web API

1.1 Tổng quan

Web API (11) là một công nghệ giúp chúng ta tạo ra các dịch vụ web trực

tuyến dùng chung cho ứng dụng web, ứng dụng window, cũng như smartphone,

tablet … Đây là công nghệ kế tiếp của WCF và Web Services với nhiều cải tiến

hơn

Hình 3: Web API hỗ trợ hầu hết thiết bị

- Web Serives: Chỉ hỗ trợ giao thức HTTP, trao đổi dữ liệu dạng SOAP

(Simple Object Access protocol) dưới định dạng XML Ưu điểm là dễ dàng cài đặt

nhưng chỉ có thể triển khai trên IIS, kiểu dữ liệu SOAP tốn nhiều dung lượng lưu

trữ và khó xử lý, vị vậy hiệu năng không cao

Trang 24

Học Viên: Võ Tư Duy 23

- WCF - Windowns Communication Foundation: Có thể trao đổi nhiều định

dạng dữ liệu SOAP, JSON, và hỗ trợ nhiều giao thức hơn TCP, HTTP, HTTPS,

Ưu điểm là đã hỗ trợ kiểu dữ liệu JSON, nhẹ hơn nhiều so với SOAP Nhược

điểm lớn của WCF là kiến trúc phức tạp, khó cài đặt và cầu hình

- Web API: Có thể trao đổi kiểu dữ liệu bất kỳ, nhưng thường là JSON thông qua các phương thức của HTTP (GET/POST/PUT/DELETE) Ưu điểm lớn là dễ cài đặt, có thể trao đổi dữ liệu với bất cứ Client nào hỗ trợ JSON Vì vậy hiệu năng của Web API là rất cao

Chúng ta có thể tạo ra 1 Web API đơn giản cung cấp chỉ số chứng khoán, kết quả

bóng đá, Hầu hết Client có thể sử dụng được API này thông qua phương thức

HTTP Get Không phân biệt công nghệ mà Client sử dụng (.Net, Java, PHP, ),

không phân biệt hệ điều hành (Windowns, Linux, MacOS, ), không phân biệt thiết

bị (desktop, mobile, tablet )

1.2 Kiến Trúc Web API

Kiến trúc ASP NET Web API gồm có 3 tầng chính: tầng hosting, tầng xử lý

thông điệp và tầng xử lý của Controller (12)

Trang 25

Học Viên: Võ Tư Duy 24

Hình 4: Kiến trúc Web API

Trang 26

Học Viên: Võ Tư Duy 25

The hosting layer - Tầng hosting

Là nơi triển khai các APIs sau khi được cài đặt xong Web API có thể được

triển khai trên nhiều môi trường khác nhau như IIS ( Web Host), trong một ứng

dụng khác (Self Host) hoặc một loại tùy chọn khác (Custom Hosts)

Khi người dùng gửi một yêu cầu như tìm kiếm bệnh viện, tầng hosting sẽ tạo

ra một thể hiện của lớp HttpRequestMessage, chứa các thông tin của yêu cầu

HttpRequestMessage được gửi đến tầng xử lý thông điệp Sau khi yêu cầu được các

tầng khác xử lý xong, tầng hosting sẽ nhận về HttpResponseMessage chứa kết quả

tương ứng với yêu cầu như danh sách các bệnh viện thỏa mãn điều kiện

The message handler pipeline - Tầng xử lý thông điệp

Gồm có nhiều thành phần con như Message Handler ( xử lý thông điệp),

Route Dispatcher ( điều phối luồng) và Controller Dispatcher ( điều phối

Controller)

Có thể có một hoặc nhiều Message Handler, mỗi Message Handler thực hiện

một nhiệm vụ riêng như là: kiểm tra trạng thái đăng nhập, thay đổi phương thức của

yêu cầu HTTP hoặc thêm tiêu đề cho thông điệp phản hồi, …

Hình 5: Thành phần xử lý thông điệp - Message Handler Trong sơ đồ bên phải của Hình 5, Message Handler đầu tiên phát hiện người

dùng chưa đăng nhập nên trả lại một HttpResponseMessage với mã 401

Trang 27

Học Viên: Võ Tư Duy 26

Unauthorized ( chưa đăng nhập) Yêu cầu của người dùng được xử lý và trả lại ngay tại tầng này, không nhất thiết phải chạy qua tất cả các tầng

Kết thúc chuỗi xử lý của Message Handler, yêu cầu sẽ được phần luồng bởi

thành phần điều phối luồng Mỗi yêu cầu của người dùng đều chứa thông tin về

luồng Ví dụ một yêu cầu tìm kiếm bệnh viện có url là

http://localhost:50650/api/hospital?name=vinmec

thì luồng xử lý thông điệp là Hospital Nếu không tìm được luồng thích hợp thì một thông điệp phản hồi với mã 404 Not Found ( không tìm thấy) được trả lại

The controller dispatcher - Điều phối Controller

Sử dụng thông tin luồng để lấy mô tả của Controller xử lý yêu cầu Nếu

không tìm thấy mô tả của Controller thích hợp sẽ trả lại phản hồi với mã 404 Not

Found Nếu tìm thấy sẽ khởi tạo Controller và chạy phương thức ExecuteAsync với tham số truyền vào là HttpRequestMessage

Điều phối luồng cũng có nhiệm vụ xử lý các ngoại lệ ( exception) được trả

về bởi ApiController, tạo ra một HttpResponseMessage với mã 500 Internal Service Error ( lỗi nội bộ)

The controller handling layer - Tầng xử lý của controller

ApiController tiếp nhận yêu cầu, gọi đến phương thức tương ứng để xử lý yêu

cầu dựa trên loại yêu cầu (GET, POST, PUT hoặc DELETE) Đối với yêu cầu tìm

kiếm bệnh viện thì loại yêu cầu là GET

Xử lý nghiệp vụ có thể được đặt ngay trong phương thức của ApiController,

nhưng thông thường người phát triển sẽ đặt toàn bộ nghiệp vụ của hệ thống trong

thành phần Model Model sẽ chịu trách nhiệm kết nối đến cơ sở dữ liệu, lấy hoặc

cập nhật dữ liệu tùy thuộc vào yêu cầu Sau đó trả kết quả lại cho ApiController

ApiController sẽ nhận lại kết quả, tạo ra một HttpResponseMessage chứa kết quả và đẩy lại cho tầng xử lý thông điệp

Trang 28

Học Viên: Võ Tư Duy 27

1.3 Lợi ích của Web API

Các lợi ích khi chúng ta sử dụng công nghệ Web API

- Không cần cấu hình để sử dụng

Ngay khi xây dựng xong một API dựa trên ASP.NET Web API, người dùng có

thể tạo một yêu cầu HTTP đến API để sử dụng Khái niệm điểm đầu cuối trong

WCF không còn Đây là một thiết kế dịch vụ lỏng lẻo hơn nhiều so với dịch vụ

WCF nhưng nó hợp với xu thế hiện nay

- Không cần khai báo kiểu dữ liệu khi cài đặt API

Với WCF, chúng ta cần các hợp đồng về dữ liệu khi trao đổi dữ liệu giữa Client

và Server Nhưng với ASP.NET Web API, các phương thức Controller chỉ cần trả

về dữ liệu gốc, còn kiểu dữ liệu thực sự được trao đổi (JSON, XML, …) sẽ được tự

động chuyển đổi tùy theo yêu cầu từ Client gọi tới Trong đó, Client sẽ sử dụng tiêu

đề (header) Accept hoặc Content-Type để thông báo kiểu dữ liệu trao đổi

- Cung cấp đầy đủ các phương thức của HTTP (Get, Post, Put, Delete) tương ứng

với lấy dữ liệu, thêm dữ liệu, sửa dữ liệu và xóa dữ liệu Người dùng chỉ cần sử

dụng các yêu cầu HTTP để thực hiện việc quản lý dữ liệu

Trang 29

Học Viên: Võ Tư Duy 28

Hình 6: Các phương thức của Web API

- Hỗ trợ CORS (Cross-Origin Resource Sharing - Chia sẻ nguồn tài nguyên giữu

các domain/website khác nhau)

Trong ASP.NET Web API ta nên kích hoạt chức năng này bằng việc thêm một

thuộc tính EnableCorsAttribute để cho phép các yêu cầu bằng Ajax từ các domain

khác, trang web khác và các ứng dụng khác có thể gọi đến API mà bạn cài đặt

2 Mô hình phát triển website MVC

2.1 Tổng quan

MVC (13) là tên viết tắt của 3 thành phần Model – View – Controller Mô hình

MVC sẽ tách hệ thống thành 3 phần riêng biệt Mỗi thành phần sẽ có những chức

năng, nhiệm vụ riêng để xử lý các yêu cầu của người dùng gửi tới Việc tách hệ

thống ra thành 3 phần riêng biệt sẽ giúp việc phát triển hệ thông trở nên đơn giản

Trang 30

Học Viên: Võ Tư Duy 29

hơn, nhanh hơn bằng cách giao mỗi phần cho một người làm và kết nối lại sau khi

các phần đã được hoàn thành Đồng thời cũng giúp chúng ta dễ dàng thêm các tính

năng mới vào hệ thống

Nhiệm vụ các thành phần của mô hình MVC:

- Model: Là nơi xử lý nghiệp vụ của hệ thống, tương tác với dữ liệu hoặc hệ quản trị

cơ sở dữ liệu (mysql, mssql… ) Model sẽ bao gồm các class/function xử lý nhiều

nghiệp vụ như kết nối database, truy vấn dữ liệu, thêm /xóa /sửa dữ liệu…

- View: Là nới chứa những giao diện như một nút bấm, khung nhập liệu, menu,

hình ảnh… nó đảm nhiệm nhiệm vụ hiển thị dữ liệu và giúp người dùng tương tác

với hệ thống

- Controller: Là nơi tiếp nhận những yêu cầu cần xử lý được gửi từ người dùng Tùy thuộc vào từng yêu cầu, sẽ gọi đến những thành phần khác nhau như View hay

Model, hoặc chỉ trả lại kết quả

S ự tương tác giữa các thành phần trong mô hình MVC

Controller – View: View sẽ lấy những hình ảnh, nút bấm…hoặc dữ liệu được trả ra từ Controller để hiển thị cho người dùng có thể quan sát và thao tác Trong sự tương tác này cũng có thể không cần dữ liệu được lấy từ Model và khi đó View chỉ

chịu trách nhiệm hiển thị những phần tử HTML như hình ảnh, nút bấm…

Controller – Model: là luồng xử lý khi Controller tiếp nhận yêu cầu và các

tham số đầu vào từ người dùng, Controller sẽ gọi đến Model tương ứng để lấy ra

những dữ liệu chính xác

View – Model: có thể tương tác với nhau mà không qua Controller, nó chỉ

đảm nhận hiển thị dữ liệu chứ không phải qua bất kỳ xử lý nghiệp vụ nào

Mô hình MVC có thể áp dụng cho nhiều loại dự án khác nhau : dự án website, dự

án ứng dụng – phần mềm,… nhưng trong phạm vi luận văn, người viết chỉ đi sâu

vào tìm hiểu mô hình này được áp dụng như nào trong các dự án xây dựng và phát

triển website

Trang 31

Học Viên: Võ Tư Duy 30

2.2 Luồng xử lý yêu cầu của người dùng trong MVC

Luồng xử lý yêu cầu trong MVC

Hình 7: Xử lý yêu cầu người dùng trong MVC Bước 1: Người dùng sử dụng một trình duyệt web bất kỳ (Firefox, Chrome,

IE,…) để có thể gửi những yêu cầu (HTTP Request), có thể kèm theo những dữ liệu

tới những Controller Việc xác định Controller nào xử lý yêu cầu sẽ thông qua một

bộ Routing điều hướng trong mô hình MVC ( Người viết sẽ chỉ đề cập đến luồng

xử lý cơ bản và các thành phần cơ bản trong mô hình MVC, không đi sâu vào trình

bày mọi thành phần như Routing)

Bước 2: Khi Controller nhận được yêu cầu gửi tới, nó sẽ chịu trách nhiệm

kiểm tra yêu cầu đó có cần dữ liệu từ Model hay không Nếu có, nó sẽ gọi đến

Model, Model xử lý yêu cầu và trả ra kết quả( Resulting Arrays) Controller nhận

kết quả và gửi đến View để hiển thị Controller sẽ xác định View tương ứng để hiển thị đúng với yêu cầu từ người dùng

Bước 3: Khi nhận được dữ liệu từ Controller, View sẽ chịu trách nhiệm xây

dựng các thành phẩn hiển thị như hình ảnh, thông tin dữ liệu… và trả về GUI

Content ( giao diện người dùng dạng html) để Controller đưa kết quả lên màn hình

trình duyệt

Trang 32

Học Viên: Võ Tư Duy 31

Bước 4: Trình duyệt sẽ nhận giá trị trả về( HTTP Response) và sẽ hiển thị

với người dùng Kết thúc một luồng xử lý yêu cầu

2.3 Lợi ích của mô hình MVC

Lợi ích quan trọng nhất của mô hình MVC là nó giúp cho ứng dụng dễ bảo

trì, module hóa các chức năng, và được xây dựng nhanh chóng MVC tách các tác

vụ của ứng dụng thành các phần riêng lẻ Model, View, Controller giúp cho việc xây dựng ứng dụng nhẹ nhàng hơn Dễ dàng thêm các tính năng mới, và các tính năng

cũ có thể dễ dàng thay đổi MVC cho phép các nhà phát triển và các nhà thiết kế có

thể làm việc đồng thời với nhau Nó cho phép thay đổi trong 1 phần của ứng dụng

mà không ảnh hưởng đến các phần khác

Ví dụ: Người phát triển có thể thay đổi nghiệp vụ xử lý ở Model, để lấy ra

nhưng kết quả khác Phần View có nhiệm vụ hiển thị kết quả nên không cần thay

đổi gì Kết quả người dùng thấy được sự thay đổi trên View

Sở dĩ như vậy vì kiến trúc MVC đã tách biệt (decoupling) sự phụ thuộc giữa

các thành phần trong một đối tượng, làm tăng tính linh động (flexibility) và tính tái

sử dụng (reusebility) của đối tượng đó Một đối tượng bây giờ có thể dễ dàng thay

đổi giao diện bằng cách thay đổi thành phần View của nó trong khi cách thức lưu

trữ cũng như xử lý (Model) không hề thay đổi Tương tự, ta có thể thay đổi Model

hoặc Controller của đối tượng nhưng giữ nguyên phần View

Chính vì vậy mô hình kiến trúc MVC đã được ứng dụng để xây dựng rất

nhiều nền tảng và thư viện đồ họa khác nhau Tiêu biểu là bộ thư viện đồ họa của

ngôn ngữ lập trình hướng đối tượng SmallTalk (cũng do Xerox PARC nghiên cứu

và phát triển vào thập niên 70 của thế kỷ 20) Các Swing Components của Java

cũng được xây dựng dựa trên kiến trúc MVC Đặc biệt là nền tảng ASP.NET MVC

Framework

Trang 33

Học Viên: Võ Tư Duy 32

PHẦN 2: Xây dựng Hệ Thống Đơn Thuốc Điện Tử SurescriptVN

CHƯƠNG III: Hệ Thống Đơn Thuốc Điện Tử SurescriptVN

Mở Chương

Trong Chương III, người viết sẽ trình bày 2 vấn đề chính:

- Tổng quan về Hệ thống Đơn Thuốc Điện Tử SurescriptVN

- Phân tích yêu cầu chức năng của từng hệ thống con:

+ Hệ thống SurescriptVN gồm có Website SurescriptVN và SurescriptVN

APIs

+ Website Bệnh Viện Vinmec

+ Website Nhà Thuốc Linh Đan

1 Tổng quan về Hệ Thống Đơn Thuốc Điện Tử SurescriptVN

1.1 Mục Đích

Mục đích chính của hệ thống là giúp bác sĩ kê đơn thuốc điện tử cho bệnh

nhân Đơn thuốc thay vì được viết tay như truyền thống, sẽ được bác sĩ kê trên máy

tính, sau đó được gửi trực tiếp đến nhà thuốc thông qua mạng Internet

Ngoài ra hệ thống cung cấp nhiều dịch vụ tiện ích khác, giúp ích cho bác sĩ

và bệnh nhân trông quá trình kê đơn và sử dụng thuốc như cảnh báo thuốc, tra cứu

bệnh án bệnh nhân, tra cứu thông tin bệnh viện và nhà thuốc, tra cứu thông tin

thuốc, …

Để có thể gửi đơn thuốc trực tiếp từ bệnh viện đến nhà thuốc, hệ thống được

xây dựng theo dạng mạng lưới, kết nối nhiều bệnh viện và nhà thuốc với nhau thông qua các APIs

1.2 Lợi Ích

Hệ thống đơn thuốc điện tử SurescriptVN giúp giảm thiểu rủi ro cũng như

bất cập của đơn thuốc tay, cung cấp các dịch vụ tiện ích giúp bác sĩ kê đơn thuốc tốt cho bệnh nhân

- Đơn thuốc được kê trên máy tính nên rất rõ ràng, dược sĩ có thể lấy đúng thuốc

cho bệnh nhân Bệnh nhân hiểu được đơn thuốc nên có thể dùng thuốc đúng liều

Trang 34

Học Viên: Võ Tư Duy 33

- Đơn thuốc được gửi trực tiếp đến nhà thuốc nên sẽ không xẩy ra tình trạng thất lạc đơn thuốc Bệnh nhân không cần đi nhiều nhà thuốc để tìm mua thuốc, bởi lẽ hệ

thống đã xác minh nhà thuốc có đủ số lượng thuốc trước khi gửi đơn

- Hệ thống SurescriptVN cung cấp dịch vụ cảnh báo thuốc kháng sinh, thuốc giới

hạn và thuốc dị ứng Nó sẽ giúp bác sĩ kê các loại thuốc phù hợp cho bệnh nhân và

hạn chế tối đa các tác dụng phụ của thuốc Ngoài ra bác sĩ có thể tra cứu lịch sử đơn thuốc bệnh nhân, lấy đó làm cơ sở để kê các loại thuốc phù hợp

1.3 Các thành p hần trong hệ thống

Hệ thống đơn thuốc điện tử SurescriptVN gồm có 3 hệ thống con:

- Hệ thống con SurescriptVN: cung cấp các APIs để kết nối bệnh viện và nhà thuốc, tạo thành một mạng lưới

- Website Bệnh Viện Vinmec: Nơi bác sĩ kê đơn cho bệnh nhân

- Website Nhà Thuốc Linh Đan: Nơi dược sĩ xuất thuốc cho bệnh nhân

Hệ thống có thể kết nối nhiều bệnh viện và nhà thuốc với nhau thông qua các APIs Trong phạm vị luận văn, tác giả sẽ nghiên cứu và xây dựng thử nghiệm một

Website bệnh viện (Vinmec) và một Website nhà thuốc (Linh Đan) theo mô hình

phát triển website MVC Bệnh viện Vinmec và nhà thuốc Linh Đan sẽ sử dụng các

APIs do hệ thống con SurescriptVN cung cấp để kê đơn và xuất đơn cho bệnh nhân Các bệnh viện và nhà thuốc khác có thể xây dựng theo mô hình tương tự hoặc có

thể sử dụng công nghệ, kiến trúc khác Tùy thuộc vào mục đích và đặc thù riêng của từng bệnh viện, nhà thuốc

Sau đây, chúng ta sẽ tìm hiểu về vai trò và nhiệm vụ của từng thành phần

trong hệ thống

H ệ thống con SurescriptVN

Đây là thành phần đóng vai trò quan trọng nhất trong hệ thống đơn thuốc

điện tử SurescriptVN Nó tạo ra các APIs dùng chung cho nhiều bệnh viện và nhà

thuốc dựa trên công nghệ Web API

Các APIs hệ thống cung cấp cho bệnh viện:

- Đăng ký bệnh nhân: giúp bác sĩ bệnh viện thêm mới bệnh nhân vào hệ thống

- Sửa thông tin bệnh nhân: giúp bác sĩ cập nhật thông tin bệnh nhân khi có thay đổi

Trang 35

Học Viên: Võ Tư Duy 34

- Cập nhật thuốc dị ứng của bệnh nhân: giúp bác sĩ thêm hoặc xóa các loại thuốc dị

- Sửa đơn thuốc: giúp bác sĩ sửa đơn thuốc của bệnh nhân sau khi đã gửi

- Hủy đơn thuốc: bác sĩ có thể hủy đơn thuốc đã kê cho bệnh nhân

- Tra cứu bệnh án: bác sĩ có thể xem danh sách các đơn thuốc đã kê cho bệnh nhân

- Kiểm tra thuốc tốt: kiểm tra và đưa ra cảnh báo cho bác sĩ khi bác sĩ kê thuốc

kháng sinh, thuốc giới hạn hoặc thuốc bệnh nhân bị dị ứng

Các APIs hệ thống cung cấp cho nhà thuốc:

- Tra cứu đơn thuốc của nhà thuốc: giúp dược sĩ tra cứu các đơn thuốc được gửi đến nhà thuốc

- Bàn giao thuốc cho bệnh nhân: khi dược sĩ xác nhận đã bàn giao thuốc thành công cho bệnh nhân, API này sẽ chuyển trạng thái đơn thuốc thành “Hoàn Thành”, đồng

thời giảm số lượng thuốc tồn kho của nhà thuốc trong hệ thống xuống

- Cập nhật giá và số lượng thuốc tồn kho: giúp dược sĩ cập nhật giá và số lượng tồn

kho của từng loại thuốc trong nhà thuốc vào hệ thống

Ngoài ra hệ thống SurescriptVN cung cấp một website cho phép người dùng

tìm kiếm thông tin bệnh viện và nhà thuốc có trong mạng lưới Bệnh viện và nhà

thuốc mới sẽ đăng ký tham gia vào mạng lưới thông qua website này Bệnh nhân có thể đăng nhập để xem thông tin đơn thuốc của mình hoặc tra cứu thông tin về các

loại thuốc ( hoạt chất, tác dụng, công ty sản xuất …) Quản trị viên hệ thống quản lý bệnh viện, nhà thuốc và thuốc thông qua website này

Website B ệnh Viện Vinmec

Trang 36

Học Viên: Võ Tư Duy 35

Nhiệm vụ chính là cung cấp giao diện để bác sĩ kê đơn thuốc cho bệnh nhân, sau đó đơn thuốc được gửi trực tiếp đến nhà thuốc thích hợp thông qua

SurescriptVN APIs Sau khi khám bệnh cho bệnh nhân, bác sĩ đăng nhập vào

website, sử dụng các APIs để lựa chọn các loại thuốc phù hợp cho bệnh nhân, chọn

nhà thuốc có đủ số lượng thuốc cần thiết và gửi đơn thuốc đến nhà thuốc đấy

Ngoài ra Website bệnh viện cũng cung cấp các giao diện giúp bác sĩ tra cứu

thông tin bệnh nhân, bệnh án bệnh nhân, thêm bệnh nhân mới vào hệ thống …

Website Nhà Thu ốc Linh Đan

Nhiệm vụ chính là cung cấp giao diện để dược sĩ tra cứu thông tin đơn thuốc bệnh nhân, bàn giao các loại thuốc trong đơn và xác nhận đã bàn giao thuốc thông

qua SurescriptVN APIs

Ngoài ra website nhà thuốc cũng cung cấp giao diện để dược sĩ cập nhật giá

và số lượng thuốc tồn kho của nhà thuốc đến hệ thống SurescriptVN Các chức

năng trên của nhà thuốc sẽ gọi đến các APIs được cung cấp bởi hệ thống con

SurescriptVN

Trang 37

Học Viên: Võ Tư Duy 36

1.4 Mô hình hoạt động chung

Sơ đồ hoạt động chung

Hình 8: Sơ đồ hoạt động chung

Hệ thống con SurescriptVN cung cấp các Surescript APIs lên mạng Internet Các bệnh viện và nhà thuốc sau khi đăng ký tham gia mạng lưới sẽ được cung cấp

một mã truy cập riêng biệt Khi gọi đến các APIs để sử dụng, bệnh viện và nhà

Trang 38

Học Viên: Võ Tư Duy 37

thuốc cần gửi theo mã truy cập này Hệ thống sẽ dùng mã truy cập để xác minh

bệnh viện hay nhà thuốc nào đang tương tác với hệ thống

Bệnh viện và nhà thuốc sẽ sử dụng các APIs để thực hiện các nghiệp vụ khác nhau Tác nhân chính của Website bệnh viện là bác sĩ và nghiệp vụ chính là kê đơn

thuốc cho bệnh nhân Tác nhân chính của Website nhà thuốc là dược sĩ, nghiệp vụ

chính là bàn giao thuốc cho bệnh nhân và cập nhật giá thành, số lượng thuốc tồn

kho vào hệ thống đơn thuốc điện tử SurescriptVN

Bệnh viện và nhà thuốc có thể xây dựng ứng dụng để sử dụng APIs theo bất

kỳ mô hình hoặc kiến trúc nào, không nhất thiết phải là website theo mô hình MVC

Nó có thể là website theo mô hình 3 tầng ( 3-tiers), có thể là ứng dụng window, ứng dụng mobile, chỉ cần ứng dụng đấy có thể thực hiện được các yêu cầu HTTP là có

thể tham gia vào mạng lưới

Trang 39

Học Viên: Võ Tư Duy 38

2 Phân tích yêu cầu chức năng

2.1 Y êu cầu chức năng của hệ thống SurescriptVN

2.1.1 Y êu cầu chức năng của Website SurescriptVN

A C a sử dụng cho người dùng, bệnh viện, nhà thuốc và bệnh nhân

a Sơ đồ ca sử dụng

Hình 9: Sơ đồ ca sử dụng cho người dùng của Website SurescriptVN

Có 4 tác nhân trong ca sử dụng này:

+ Người dùng: người dùng thông thường, không yêu cầu đăng nhập

+ Bệnh viện: nhân viên bệnh viện, cần biết thông tin về bệnh viện

+ Nhà thuốc: nhân viên nhà thuốc, cần biết thông tin về nhà thuốc

+ Bệnh nhân: bệnh nhân đã đăng ký thông tin với hệ thống thông qua các bệnh viện trong hệ thống

Trang 40

Học Viên: Võ Tư Duy 39

b Đặc tả ca sử dụng cho người dùng

Tác Nhân: Người dùng

Mục Đích: Tra cứu thông tin bệnh viện, nhà thuốc và thông tin thuốc trong

hệ thống

Tiền điều kiện: Không có

Hiển thị các thông tin cơ bản như tên, địa chỉ, SĐT, địa chỉ email và GPKD

của bệnh viện

sách bệnh viện Hiển thị danh sách các bệnh viện trong hệ thống

Chức năng này sẽ giúp bệnh nhân tìm được bệnh viện ở gần nơi mình ở,

hoặc kiểm tra xem bệnh viện mình dự định đến khám có nằm trong mạng lưới

không

sách bệnh viện Hiển thị danh sách các bệnh viện trong hệ thống

Nhập dữ liệu vào Input, dữ liệu có thể là

tên, địa chỉ, SĐT, địa chỉ email hoặc

GPKD của bệnh viện

Hệ thống lọc kết quả bệnh viện dựa trên

dữ liệu người dùng nhập vào và hiển thị danh sách bệnh viện thỏa mãn điều kiện

Ngày đăng: 27/02/2021, 23:47

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w