Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 31 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
31
Dung lượng
1,9 MB
Nội dung
BỘ LAO ĐỘNG THƯƠNG BINH VÀ Xà HỘI TRƯỜNG CAO ĐẲNG NGHỀ ISPACE -o0o KHOA: CÔNG NGHỆ THÔNG TIN NGÀNH: LẬP TRÌNH MOBILE ĐỒ ÁN TỐT NGHIỆP ỨNG DỤNG QUẢN LÝ ĐÔNG Y GVHD: LÊ HỒNG KỲ SVTH: NGUYỄN NGỌC THẠCH – 97510010015 HỒ CHÍ MINH, năm 2015 LỜI CẢM ƠN Trước tiên, em xin gửi lời cảm ơn đến tất quý thầy cô tham gia giảng dạy Trường Cao đẳng nghề CNTT iSpace truyền đạt kiến thức hữu ích làm sở cho em thực đồ án Em xin chân thành cảm ơn đến thầy Lê Hồng Kỳ, người tận tình hướng dẫn, tạo điều kiện thuận lợi để em hoàn thành tốt đồ án Sau em xin gửi lời biết ơn sâu sắc đến gia đình tạo điều kiện cho em suốt trình học tập thực đồ án Hồ Chí Minh, tháng 06 năm 2015 Trân trọng TÓM TẮT ĐỒ ÁN Tin học hóa lĩnh vực chủ trương nhà nước, thực tế Việt Nam, vấn đề sử dụng công nghệ quản lý trở nên phổ biến, dần thay cách quản lý tay thông thường Đông y lĩnh vực có nước ta hàng nghìn năm, với hình thức cha truyền nối cộng với trẻ hóa Đông Y nay, vấn đề áp dụng tin học vào quản lý Đông Y không xa lạ Nắm bắt nhu cầu nhiều người, cho đời ứng dụng “QUẢN LÝ THUỐC ĐÔNG Y”nhằm để đáp ứng lại nhu cầu sống sức khỏe vàng có sức khỏe làm tất Sau xin giới thiệu đôi nét sản phẩm Ứng dụng “QUẢN LÝ THUỐC ĐÔNG Y” phần mềm dùng để tra cứu tên thuốc,tên bệnh,cách chăm sóc sức khỏe qua chế độ ăn uốn sinh hoạt, cách ngắn gọn dễ hiểu nhất.Ứng dụng chia làm hai phần thứ phần quản lý admin bao gồm: + Thêm thuốc +Thêm bệnh + Giới thiệu phần mềm Thứ hai phần người dùng bao gồm: +Tìm kiếm tên thuốc +Tìm kiếm tên bệnh +Tư vấn sức khỏe +BIM(tính số cân nặng chiều cao) +Tủ thuốc(nhật ký loại thuốc mà người dùng sữ dụng +Giới thiệu phần mềm Để làm vào chi tiết ứng dụng mời bạn đọc tìm hiểu cách làm bên Mục tiêu phần mềm “QUẢN LÝ THUỐC ĐÔNG Y” viết nhằm đáp ứng nhu cầu bảo vệ sức khỏe người dùng, giúp họ tra tìm tên thuốc,tên bệnh cách nhanh dễ hiểu song song với phần mềm giúp cho người dùng cách chế độ ăn uốn hợp lý cho bệnh tình mau chóng bình phục 3.1 CÀI ĐẶT .14 3.1.1 Chuẩn bị hệ điều hành 14 3.1.2 Chuẩn bị gói cài đặt .15 MỞ ĐẦU "Đông y" thuật ngữ sử dụng song song với "Y học cổ truyền", dùng y học có nguồn gốc Trung Quốc Việt Nam xưa, để phân biệt với Tây y (y học đại từ phương Tây) Chẩn bệnh? Chẩn đoán Đông y dùng phương pháp vọng chẩn (quan sát bệnh nhân hoàn cảnh), văn chẩn (lắng nghe âm từ thể trạng tâm bệnh nhân), vấn chẩn (hỏi bệnh nhân người nhà điều liên quan), thiết chẩn (khám tay dụng cụ) để xác định bệnh trạng Điều trị? Phương pháp châm cứu dựa hệ thống kinh mạch miêu tả chi tiết với hàng trăm huyệt thể Các huyệt đường kinh mạch có mối liên hệ với tạng, phủ thể, để điều trị rối loạn tạng phủ nào, rối loại kiểu can thiệp vào huyệt tương ứng số huyệt khác để hỗ trợ cần thiết Điều đặc biệt hệ thống huyệt, kinh mạch dùng phương pháp giải phẫu, sinh lý Tây y để miêu tả được, thời đại ngày nay, châm cứu sử dụng phương pháp gây vô cảm (gây tê) số phẫu thuật (Đông Tây y kết hợp) Với mong muốn người dùng có nhìn khác Đông Y Cổ truyền nên phần mềm “Quản lý thuốc Đông Y” đời nhằm cải thiện y học giúp phổ biến rộng rãi với người dùng, phần mềm hỗ trợ nhiều tính có ích,giúp ta tiềm hiểu rõ nguồn gốc tác dụng thuốc loại bệnh thường gặp có nguồn gốc dân gian mà ta không biết, cung cấp nhiều loại thuốc khác chữa nhiều bệnh giá thành lại hợp lý vừa túi tiền người dùng, phần mềm hướng tới sức khỏe người dùng giúp người dùng hiểu biết bệnh tình ý cách chăm sóc cho sức khỏe tốt CHƯƠNG 1: TỔNG QUAN 1.1 TÌNH HÌNH TRONG VÀ NGOÀI NƯỚC Theo tìm hiểu em App Store (iPhone & iPad) CH Play (Android) ứng dụng liên quan đến quản lý thuốc như: thầy thuốc bạn, thuốc tây, tủ thuốc,từ điển thuốc đa phần ứng dụng có chức tìm thuốc,tìm kiếm bệnh,nhật ký sử dụng thuốc ,…ngoài ứng dụng đề cập tới chế độ ăn uống người bệnh sau điều trị, em dựa ứng dụng có sẵn mà phát triển thêm số tính hỗ trợ đến sức khỏe người dùng tốt với tiêu chí đặt vị trí người dùng người viết nên ứng dụng 1.1 MỤC ĐÍCH ĐỒ ÁN Đồ án “QUẢN LÝ THUỐC ĐÔNG Y” viết nhằm đáp ứng nhu cầu bảo vệ sức khỏe người dùng, giúp họ tra tìm tên thuốc,tên bệnh cách nhanh dễ hiểu song song với phần mềm giúp cho người dùng cách chế độ ăn uốn hợp lý cho bệnh tình mau chóng bình phục Phần mềm hướng đến lợi ích người dùng “sức khỏe vàng”, có sức khỏe ta làm tất ta nên phòng bệnh chữa bệnh mà phần mềm tối giới thiệu với bạn hỗ trợ tốt cho sức khỏe người dùng Đồ án gồm 03 chương: Chương 1: Trình bày tổng quan bao gồm: tình hình nước liên quan đến thuốc đông y, mục tiêu đề tài Chương 2: Phân tích thiết kế:trình bày tổng quan mục đích thiết kế giao diện cho ứng dụng Chương 3: Xây dựng chương trình,hướng dẫn cài đặt JDK eclipse, trình bày code chức ứng dụng.Kết đạt hướng phát triển CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ 2.1PHÂN TÍCH Theo tìm hiểu em App Store (iPhone & iPad) CH Play (Android) ứng dụng liên quan đến quản lý thuốc như: thầy thuốc bạn, thuốc tây, tủ thuốc,từ điển thuốc đa phần ứng dụng có chức tìm thuốc,tìm kiếm bệnh,nhật ký sử dụng thuốc ,…ngoài ứng dụng đề cập tới chế độ ăn uống người bệnh sau điều trị, em dựa ứng dụng có sẵn mà phát triển thêm số tính hỗ trợ đến sức khỏe người dùng tốt với tiêu chí đặt vị trí người dùng người viết nên ứng dụng Phần sở liệu ứng dụng bao gồm: cở sở liệu phần thêm bệnh thêm thuốc Cấu trúc bảng thêm bệnh Cấu trúc bảng thêm thuốc 2.2 THIẾT KẾ BẢNG THÊM THUỐC Tên cột ID Mà THUỐC TÊN THUỐC Kiểu liệu INT Text Text THÔNG TIN THUỐC Text Ghi Khoá BẢNG THÊM BỆNH Tên cột ID Mà BỆNH TÊN BỆNH Kiểu liệu INT Text Text THÔNG TIN BỆNH Text Ghi Khoá Phần dành cho quản trị: Hình 2.1 Màn hình phần quản lý +Thêm thuốc: Thêm thông tin công dụng thuốc Hình 2.2 Thêm thông tin thuốc +Thêm bệnh: Thêm tên bệnh thông tin bệnh Hình 2.3 Thêm thông tin bệnh +Giới thiệu phần mềm thoát ứng dụng Các bạn chạy file eclipse.exe thư mục eclipse để khởi động eclipse Bạn bấm dấu x cạnh chữ welcome để bỏ qua phần này, bạn thấy hình làm việc sau: Tới đây, bạn cài đặt thành công Java & Eclipse để bắt đầu lập trình với Java Phần code em xin trình bày tóm tắt chức ứng dụng: Phần dành cho quản trị: Bao gồm class bệnh thuốc: dùng để get set liệu Phần Code class bệnh: public class Benh { private String id; private String mabenh; private String tenbenh; private String thongtinbenh; public String getId() { return id; } public void setId(String id) { this.id = id; } Phần Code class thuốc: public class Thuoc { private String id; private String mathuoc; private String tenthuoc; private String thongtinthuoc; public String getId() { return id; } public void setId(String id) { this.id = id; } public String getmathuoc() { return mathuoc; Home: Màn hình Bao gồm Image Button Thêm bệnh, thêm thuốc,…(code scale imagefit with), MyArrayAdapter(2) Myprovider(2): Adapter Content Providers bệnh thuốc Hai class Thembenh Themthuoc: chức dùng để thêm bệnh thuốc(về code giống khác tên bệnh thuốc) Mỗi class bao gồm layout(1 layout listview layout thêm bệnh)và class Themthuoc giống vậy,sau phần code xử lý thêm bệnhvà phần xử lý thêm thuốc tương tự: Cursor cursor = getContentResolver().query(MyProvider2.CONTENT_URI, null, null, null, null); if(cursor == null) Log.d("Loi Null Curor", "Cursor bi null roi"); else if(cursor.getCount() 2.5 || chieucao < 0) { Toast.makeText(BMI.this, "Vui lòng nhập chiều cao hợp lệ theo đơn vị m", Toast.LENGTH_SHORT).show(); } else if (cannang > 150 || cannang < 0) { Toast.makeText(BMI.this, "Vui lòng nhập cân nặng hợp lệ theo đơn vị kg", Toast.LENGTH_SHORT).show(); } else { //tinh bmi bmi = cannang / (chieucao * chieucao); if (bmi < 18.5) kq = 0; else if (bmi < 25) kq = 1; else if (bmi < 30) kq = 2; else if (bmi < 40) kq = 3; else kq = 4; switch (kq) { case 0: txtkq.setText("Bạn gầy!"); break; case 1: txtkq.setText("Bạn chuẩn!"); break; case 2: txtkq.setText("Bạn béo tý!"); break; case 3: txtkq.setText("Bạn béo!"); break; case 4: txtkq.setText("Bạn rất béo!"); break; default: break; } MaiActivity:Màn hình gồm Image button tìm thuốc, tìm bệnh: imgexit.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub Thoat(); } }); imgabout.setOnClickListener(new OnClickListener() { imgbmi.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { // Xử lí ấn nút BMI Intent bmi = new Intent(MainActivity.this,BMI.class); startActivity(bmi); } }); Class TimBenh TimThuoc: phần code xử lý ấn nút tìm Cursor cursor = getContentResolver().query(Uri.parse("content://com.thach.thuoctayproql.MyProvider/cte"), null, null, null, null); // gọi hàm xử lý nhập thông tin if (cursor == null) Log.d("Loi Null Curor", "Cursor bi null roi"); else if (cursor.getCount() < 1) { Thuoc thuoc = new Thuoc(); thuoc.setmathuoc("Không có liệu"); thuoc.settenthuoc("Không có liệu"); thuoc.setthongtinthuoc("Không có liệu"); arrEmployee.add(thuoc); } else { cursor.moveToFirst(); while (cursor.isAfterLast() == false) { if(cursor.getString(2).indexOf(edittimthuoc.getText().toString())! =-1){ dem=dem+1;// tìm thấy bn thuốc Thuoc thuoc = new Thuoc(); thuoc.setmathuoc(cursor.getString(1)); thuoc.settenthuoc(cursor.getString(2)); thuoc.setthongtinthuoc(cursor.getString(3)); arrEmployee.add(thuoc);// Lấy dữ liệu spinner } cursor.moveToNext(); } cursor.close(); if(dem>0) getActionBar().setTitle("Tìm thấy "+dem+" thuốc"); else { Thuoc thuoc = new Thuoc(); thuoc.setmathuoc(""); thuoc.settenthuoc("Không tìm thấy thuốc "+ edittimthuoc.getText().toString()); thuoc.setthongtinthuoc("Vui lòng kiểm tra lại"); arrEmployee.add(thuoc); getActionBar().setTitle("Không tìm thấy"); } } // gọi hàm cập nhật giao diện adapter.notifyDataSetChanged(); // Sau update xóa trắng liệu cho editma focus } Trình Duyệt: xem chức tư vấn sức khỏe chế độ ăn uống cho người dùng sau code phần xử lý phần loadUrl: webview = (WebView)findViewById(R.id.webview); WebSettings webSettings = webview.getSettings(); webSettings.setJavaScriptEnabled(true); webview.loadUrl(url); Chức tư vấn sức khỏe chế độ ăn uống cho người dùng sau code phần xử lý người dùng nhấn vào list view: final String[] arrTraiCay = { "Chế độ ăn uống, kiêng kị cho bà bầu", "Chế độ ăn uống, kiêng kị cho bệnh dày", "Chế độ ăn uống kiêng kị cho bệnh tiểu đường", "Chế độ ăn cho bệnh cảm cúm"}; // Gán DataSource vào ArrayAdapter ArrayAdapter arrAdp = new ArrayAdapter(this, android.R.layout.simple_list_item_1, arrTraiCay); // Gán ArrayAdapter vào ListView listtvsk.setAdapter(arrAdp); listtvsk.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView arg0, View arg1, int position, long arg3) { Toast.makeText(getApplicationContext(), "Bạn chọn " + position, Toast.LENGTH_LONG).show(); switch (position) { case 0: Intent intent0 = new Intent(TVSK.this, Trinhduyet.class); intent0.putExtra("URL", "http://www.thaythuoccuaban.com/chedoan/che-do-an-cho-ba-bau.html"); intent0.putExtra("TITLE","Bà bầu"); startActivity(intent0); break; } } }); } ExpandAdapter: adapter list view xem bệnh theo vầng A,B,C… public ExpandableListAdapter(Context context, List listDataHeader, HashMap listChildData) { this._context = context; this._listDataHeader = listDataHeader; this._listDataChild = listChildData; } @Override public Object getChild(int groupPosition, int childPosititon) { return this._listDataChild.get(this._listDataHeader.get(groupPosition)) get(childPosititon); } @Override public long getChildId(int groupPosition, int childPosition) { return childPosition; } @Override public View getChildView(int groupPosition, final int childPosition, boolean isLastChild, View convertView, ViewGroup parent) { final String childText = (String) getChild(groupPosition, childPosition); if (convertView == null) { LayoutInflater infalInflater = (LayoutInflater) this._context getSystemService(Context.LAYOUT_INFLATER_SERVICE); convertView = infalInflater.inflate(R.layout.list_item, null); } TextView txtListChild = (TextView) convertView findViewById(R.id.lblListItem); txtListChild.setText(childText); return convertView; } @Override public int getChildrenCount(int groupPosition) { return this._listDataChild.get(this._listDataHeader.get(groupPosition)) size(); } @Override public Object getGroup(int groupPosition) { return this._listDataHeader.get(groupPosition); } @Override public int getGroupCount() { return this._listDataHeader.size(); } @Override public long getGroupId(int groupPosition) { return groupPosition; } @Override public View getGroupView(int groupPosition, boolean isExpanded, View convertView, ViewGroup parent) { String headerTitle = (String) getGroup(groupPosition); if (convertView == null) { LayoutInflater infalInflater = (LayoutInflater) this._context getSystemService(Context.LAYOUT_INFLATER_SERVICE); convertView = infalInflater.inflate(R.layout.list_group, null); } TextView lblListHeader = (TextView) convertView findViewById(R.id.lblListHeader); lblListHeader.setTypeface(null, Typeface.BOLD); lblListHeader.setText(headerTitle); return convertView; } Chức Tủ thuốc: MyArrayadapter TuThuoc,MyProviderTuThuoc,class thuoc,ThuocTuTuThuoc,TuThuoc, sau code phần xử lý xemTủ thuốc: Cursor cursor = getContentResolver().query(MyProviderTuThuoc.CONTENT_URI, null, null, null, null); if(cursor == null) Log.d("Loi Null Curor", "Cursor bi null roi"); else if(cursor.getCount()[...]... thuốc,…(code scale imagefit with), MyArrayAdapter(2) và Myprovider(2): Adapter và Content Providers của bệnh và thuốc Hai class Thembenh và Themthuoc: chức năng dùng để thêm bệnh và thuốc(về code thì giống nhau chỉ khác tên bệnh và thuốc) Mỗi class bao gồm 2 layout(1 layout listview và 1 layout thêm bệnh)và class Themthuoc cũng giống v y, sau đ y phần code xử lý thêm bệnhvà phần xử lý thêm thuốc cũng tương tự:... null) { LayoutInflater infalInflater = (LayoutInflater) this._context getSystemService(Context.LAYOUT_INFLATER_SERVICE); convertView = infalInflater.inflate(R.layout.list_group, null); } TextView lblListHeader = (TextView) convertView findViewById(R.id.lblListHeader); lblListHeader.setTypeface(null, Typeface.BOLD); lblListHeader.setText(headerTitle); return convertView; } Chức năng Tủ thuốc: MyArrayadapter... cursor.moveToNext(); } cursor.close(); } // gọi hàm cập nhật giao diện adapter.notifyDataSetChanged(); } KẾT QUẢ ĐẠT ĐƯỢC VÀ HƯỚNG PHÁT TRIỂN KẾT QUẢ ĐẠT ĐƯỢC: Qua quá trình tìm hiểu về thuốc đông y và x y dựng ứng dụng thử nghiệm đồ án đã làm được như sau: - Giúp người dùng có thể hiểu rõ hơn về công dụng, nguồn gốc của những c y thuốc Đông Y 8 - Liệt kê những bệnh án thường gặp giúp người dùng có thể hiểu biết... đúng hệ điều hành mình đang sử dụng : 8 Các bạn ch y file eclipse.exe trong thư mục eclipse để khởi động eclipse Bạn bấm dấu x cạnh chữ welcome để bỏ qua phần n y, bạn sẽ th y màn hình làm việc sau: 8 Tới đ y, các bạn đã cài đặt thành công Java & Eclipse để bắt đầu lập trình với Java Phần code em xin trình b y tóm tắt những chức năng chính của ứng dụng: Phần dành cho quản trị: 8 Bao gồm 2 class bệnh... vào list view: final String[] arrTraiCay = { "Chế độ ăn uống, kiêng kị cho bà bầu", "Chế độ ăn uống, kiêng kị cho bệnh dạ d y" , "Chế độ ăn uống kiêng kị cho bệnh tiểu đường", "Chế độ ăn cho bệnh cảm cúm"}; // Gán DataSource vào ArrayAdapter ArrayAdapter arrAdp = new ArrayAdapter(this, android. R.layout.simple_list_item_1, arrTraiCay); // Gán ArrayAdapter vào ListView listtvsk.setAdapter(arrAdp);... sách setContentView(R.layout.activity_xemthuoc); xulixemthuoc(); break; +Phần dành cho người sử dụng: MyArrayAdapter (2,3) và MyproviderTuthuoc:Adapter của Bệnh và Thuốc, Content Providers của tủ thuốc Danh sách bệnh viện: switch (arg0.getItemAtPosition(arg2).toString()) case "Quận 1": adapterbv.clear(); BenhVien bvq1 = new BenhVien(); bvq1.settenbenhvien("BỆNH VIỆN TRUYỀN MÁU HUYẾT HỌC"); bvq1.setdiachi("201... 5.http://stackoverflow.com/questions/2257963/how-to-show-a-dialog-toconfirm-that-the-user-wishes-to-exit-an -android- activity Dialog exit 6.http://stackoverflow.com/questions/2662531/launching-google-mapsdirections-via-an-intent-on -android Intent tim duong di map 7.http://www.mkyong.com /android/ how-to-make-a-phone-call-in -android/ Call intent phone 8.https://duythanhcse.wordpress.com/2013/06/14/bai-tap-33-su-dungcontentprovider-trong -android/ Content provider 8 ...Hình 2.4 Giới thiệu và thoát phần quản lý +Phần dành cho người sử dụng: Hình 2.5 Màn hình chính phần người dùng +Tìm thuốc: tìm thông tin của c y thuốc 8 Hình 2.6 Tìm kiếm thông tin về c y thuốc được nhập từ bên quản lý +Tìm bệnh: tìm thông tin của bệnh theo vầng abc,… sẽ link tới một trang web Hình 2.7 Tìm kiếm bệnh theo vầng... onClick(View arg0) { // Xử lí ấn nút BMI 8 Intent bmi = new Intent(MainActivity.this,BMI.class); startActivity(bmi); } }); 2 Class TimBenh và TimThuoc: phần code xử lý khi ấn nút tìm Cursor cursor = getContentResolver().query(Uri.parse("content://com.thach.thuoctayproql.MyProvider/cte"), null, null, null, null); // gọi hàm xử lý nhập thông tin if (cursor == null) Log.d("Loi Null Curor", "Cursor bi null... benh.setthongtinbenh(cursor.getString(3)); arrEmployee.add(benh);// LẠy dữ liệu spinner cursor.moveToNext(); } cursor.close(); } Phần xử lý xem thuốc hoặc xem bệnh của 2 class đều bao gồm 1 option menu có 2 nút là thêm và xem dùng để thêm và xem thuốc(bệnh) sau đ y là code của phần xủ lý xem thuốc, xem bệnh code tương tự: switch (item.getItemId()) { case R.id.themthuoc:// khi nhấn thêm setContentView(R.layout.activity_themthuoc);