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

LẬP TRÌNH SHELL SCRIPT cập NHẬP và tìm KIẾM các THÔNG TIN PHÒNG BỆNH báo cáo + CODE SH

16 518 3

Đ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 16
Dung lượng 417,82 KB
File đính kèm bao cao lap trinh shell.rar (810 KB)

Nội dung

Đề tài 10: Với các yêu cầu – cập nhật, tìm kiếm và hiển thị thông tin các phòng bệnh của phòng khám và thông tin các bệnh nhân trong các phòng bệnh, ta lưu trữ thông tin về các phòng bện

Trang 1

Đề tài 10: Với các yêu cầu – cập nhật, tìm kiếm và hiển thị thông tin các phòng

bệnh của phòng khám và thông tin các bệnh nhân trong các phòng bệnh, ta lưu trữ thông tin về các phòng bệnh và tổ chức dữ liệu gồm:

1> Thông tin về phòng bệnh như sau:

2> Thông tin về bệnh nhân trong từng phòng bệnh gồm:

Yêu cầu:

1> Tổ chức dữ liệu: Thông tin về các phòng bênh và các bệnh nhân được lưu thành

2 tệp tin

2> Xây dựng thực đơn chương trình gồm các mục: Thêm phòng bệnh mới, Tìm thông tin về phòng bệnh, thống kê phòng bệnh theo chủng loại, Thoát chương trình 3> Xây dựng các tính năng tương ứng với các mục trong thực đơn

Chú ý:

- Khi chạy chương trình sẽ hiển thị menu chọn (mỗi mục chọn được qui định bởi một phím chữ, ví dụ: thoát chương trình là phím q,….), khi người sử dụng chọn mục nào sẽ thực hiện tính năng tương ứng

- Chương trình cho phép người sử dụng cập nhật thêm các thông tin về phòng bệnh mới, cập nhật danh mục bệnh nhân trong phòng bệnh, sửa đổi thông tin về phòng bệnh và các bệnh nhân trong phòng bệnh, hiển thị danh mục các phòng bệnh, danh mục bệnh nhân của từng phòng bệnh, tìm kiếm thông tin về phòng bệnh và thông tin

về các bệnh nhân trong phòng bệnh

PHÂN TÍCH

Trang 2

- Để xây dựng được ứng dụng theo yêu cầu ta xây dựng các hàm con sau đó gọi khi cần dùng

1. Xây dựng hàm thêm bệnh nhân

- Mục đích: Hàm có chức năng thêm mới bệnh nhân và lưu thông tin bệnh nhân vào tệp benhnhan.txt

- Ý tưởng: Xóa hết màn hình-> Nhập Id phòng bệnh->Lưu dữ liệu vào tệp Benhnhan.txt->Nhập Số giường->Lưu dữ liệu vào tệp benhnhan.txt->Nhập tên bệnh nhân->Lưu dữ liệu vào tệp benhnhan.txt->Gọi lại hàm Menu hiển thị các chức năng.

- Code:

function thembenhnhan()

{

clear echo " -THEM MOI BENH NHAN -"

echo "ID PHONG BENH: "

read chuoi echo "ID PHONG BENH: $chuoi">>benhnhan.txt echo "SO GIUONG: "

read chuoi echo "SO GIUONG: $chuoi">>benhnhan.txt echo "TEN BENH NHAN: "

read chuoi echo "TEN: $chuoi">>benhnhan.txt echo " -Da them thanh cong du lieu vao tep BENHNHAN.txt -"

Menu }

2. Xây dựng hàm thêm mới phòng bệnh

- Mục đích: Hàm có chức năng thêm mới phòng bệnh và lưu thông tin vào tệp phong.txt

- Ý tưởng: Xóa hết màn hình-> Nhập Id phòng bệnh->Lưu dữ liệu vào tệp phong.txt->Nhập tên phòng->Lưu dữ liệu vào tệp phong.txt->Nhập loại phòng->Lưu dữ liệu vào tệp phong.txt -> Nhập trưởng phòng->Lưu dữ liệu vào tệp phong.txt->Gọi lại hàm Menu hiển thị các chức năng.

Trang 3

- Code:

function themphongbenh() {

clear echo " -THEM MOI KHOA -"

echo "ID PHONG BENH: "

read chuoi echo "ID PHONG BENH: $chuoi">>phong.txt echo "TEN PHONG: "

read chuoi echo "TEN PHONG: $chuoi">>phong.txt echo "LOAI PHONG: "

read chuoi echo "LOAI PHONG: $chuoi">>phong.txt echo "TRUONG PHONG: "

read chuoi echo "TRUONG PHONG: $chuoi">>phong.txt echo " -Da them thanh cong du lieu vao tep PHONG.txt -"

Menu }

3. Hàm tìm kiếm bệnh nhân

- Mục đích: Hàm sử dụng để tìm kiếm và hiển thị các thông tin của bệnh nhân

- Ý tưởng:

Nhập tên bệnh nhân cần tìm kiếm->đọc dữ liệu từ tệp tin benhnhan.txt ->So sánh tên bệnh nhân với các trường dữ liệu đọc được-> Nếu tồn tại thì

in da thông tin bệnh nhân tìm kiếm

- Code

function timkiembenhnhan {

clear echo "Nhap ten benh nhan can tim kiem: "

read tenbn file=benhnhan.txt;

dong=0;

chisokt=2;

timkiem=0;

dongtimkiem=0;

Trang 4

while read banghi; do

if [ $dong -eq $chisokt ] then

#echo "$banghi"

chisokt=$(($chisokt+3)) case $banghi in

"TEN: $tenbn") echo "Reply: Benh nhan:

$tenbn ton tai trong tep benhnhan.txt "

dongtimkiem=$dong timkiem="1"

;;*) esac fi

dong=$(($dong+1)) done <$file

# echo "So dong: $dong"

if [ $timkiem != 1 ] then

echo "Reply: $tenbn khong ton tai trong tep benhnhan.txt"

else

dong=0;

while read banghi; do

if [ $dong -ge $dongtimkiem ] #Dong 66 then

if [ $dong -le $(($dongtimkiem+2)) ] then

echo "$banghi"

fi fi

dong=$(($dong+1)) done <$file

fi Menu }

4. Hàm thống kê bệnh nhân

- Mục đích: Hàm có chức năng liệt kê ra tất cả các bênh nhân thuộc một phòng mà người dùng nhập vào từ bàn phím

Trang 5

- Ý tưởng: Nhập ID phòng bênh cần thống kê-> Đọc dữ liệu từ tệp bệnh

nhân->So sánh và lọc ra tất cả các bênh nhận có chung một ID Phòng

- Code

function thongkebenhnhan {

clear echo "Nhap ID Phong can thong ke: "

read idphong file=benhnhan.txt;

dong=0;

chisokt=0;

timkiem=0;

dongtimkiem=0;

echo " -DANH SACH BENH NHAN THUOC ID PHONG

$idphong "

while read banghi; do

# echo "Dong so: $dong co ban ghi: $banghi, chi so kt:

$chisokt"

if [ $dong -eq $chisokt ] then

#echo "$banghi"

chisokt=$(($chisokt+3)) case $banghi in

"ID PHONG BENH: $idphong") dongtimkiem=$dong

readfilebenhnhan

;;*) esac fi

dong=$(($dong+1)) done <$file

# echo "So dong: $dong"

Menu }

5. Hàm hiển thị danh mục Phòng(Hiển thị danh sách tất cả các phòng)

- Mục đích: Hàm sử dụng để hiển thị danh mục phòng, liệt kê ra danh sách tất cả các phòng có trong dữ liệu.

- Ý tưởng: Người dùng chọn chức năng hiển thị danh mục -> Đọc dữ liệu từ file phong.txt, in tất tất cả các thông tin trong tệp.

Trang 6

- Code:

function hienthidmphong {

clear echo "=====DANH MUC PHONG BENH======="

file=phong.txt;

while read banghi; do

echo "$banghi"

done <$file Menu }

6. Hàm hiển thị danh mục bệnh nhân

- Mục đích: Hàm sử dụng để hiển thị da tất cả các bệnh nhân có trong dữ liệu

- Ý tưởng: Người dùng chọn chức năng hiển thị bệnh nhân -> Đọc dữ liệu từ file benhnhan.txt, in tất tất cả các thông tin trong tệp.

- Code:

function hienthidmbenhnhan {

clear echo "=====DANH MUC BENH NHAN======="

file=benhnhan.txt;

while read banghi; do

echo "$banghi"

done <$file Menu }

- Mục đích: Hàm Menu là hàm hiển thị các chức năng của chương trình, Hàm

sẽ được gọi lai nhiều lần để hiển thị chức năng

- Ý tưởng:

Hệ thống hiển thị ra danh sách các chức năng->người dùng chọn các chức năng tương ứng và gọi các hàm tương ướng với chức năng người dùng yêu cầu

- Code

function Menu

Trang 7

echo "=============MENU=============="

echo "1: THEM MOI PHONG BENH"

echo "2: THEM MOI BENH NHAN"

echo "3: TIM BENH NHAN"

echo "4: TIM PHONG BENH"

echo "5: THONG KE THEO CHUNG LOAI PHONG"

echo "6: HIEN THI DANH SACH PHONG BENH"

echo "7: HIEN THI DANH SACH BENH NHAN"

echo "8: THOAT CHUONG TRINH"

echo "******CODE DESIGN BY 0946189990********"

echo " -Vui long chon 1 lenh tuong ung de tiep tuc -"

read kytu case $kytu in

1)themphongbenh;;

2)thembenhnhan;;

3)timkiembenhnhan;;

4)timkiemphong;;

5)thongkebenhnhan;;

6)hienthidmphong;;

7)hienthidmbenhnhan;;

8)exit 0;;*)

esac }

CODE CHƯƠNG TRÌNH

#!/bin/bash

# declare STRING variablfor

function thembenhnhan()

{

clear echo " -THEM MOI BENH NHAN -"

echo "ID PHONG BENH: "

read chuoi echo "ID PHONG BENH: $chuoi">>benhnhan.txt echo "SO GIUONG: "

read chuoi echo "SO GIUONG: $chuoi">>benhnhan.txt echo "TEN BENH NHAN: "

Trang 8

read chuoi echo "TEN: $chuoi">>benhnhan.txt echo " -Da them thanh cong du lieu vao tep BENHNHAN.txt -"

Menu }

function themphongbenh()

{

clear echo " -THEM MOI KHOA -"

echo "ID PHONG BENH: "

read chuoi echo "ID PHONG BENH: $chuoi">>phong.txt echo "TEN PHONG: "

read chuoi echo "TEN PHONG: $chuoi">>phong.txt echo "LOAI PHONG: "

read chuoi echo "LOAI PHONG: $chuoi">>phong.txt echo "TRUONG PHONG: "

read chuoi echo "TRUONG PHONG: $chuoi">>phong.txt echo " -Da them thanh cong du lieu vao tep PHONG.txt -"

Menu }

function timkiembenhnhan

{

clear echo "Nhap ten benh nhan can tim kiem: "

read tenbn file=benhnhan.txt;

dong=0;

chisokt=2;

timkiem=0;

dongtimkiem=0;

while read banghi; do

if [ $dong -eq $chisokt ] then

#echo "$banghi"

chisokt=$(($chisokt+3)) case $banghi in

"TEN: $tenbn") echo "Reply: Benh nhan: $tenbn ton tai trong tep benhnhan.txt "

dongtimkiem=$dong timkiem="1"

;;*) esac fi

Trang 9

dong=$(($dong+1)) done <$file

# echo "So dong: $dong"

if [ $timkiem != 1 ] then

echo "Reply: $tenbn khong ton tai trong tep benhnhan.txt"

else

dong=0;

while read banghi; do

if [ $dong -ge $dongtimkiem ] #Dong 66 then

if [ $dong -le $(($dongtimkiem+2)) ] then

echo "$banghi"

fi fi

dong=$(($dong+1)) done <$file

fi Menu }

function thongkebenhnhan

{

clear echo "Nhap ID Phong can thong ke: "

read idphong file=benhnhan.txt;

dong=0;

chisokt=0;

timkiem=0;

dongtimkiem=0;

echo " -DANH SACH BENH NHAN THUOC ID PHONG $idphong " while read banghi; do

# echo "Dong so: $dong co ban ghi: $banghi, chi so kt:

$chisokt"

if [ $dong -eq $chisokt ] then

#echo "$banghi"

chisokt=$(($chisokt+3)) case $banghi in

"ID PHONG BENH: $idphong") dongtimkiem=$dong

readfilebenhnhan

;;*) esac fi

Trang 10

dong=$(($dong+1)) done <$file

# echo "So dong: $dong"

Menu

}

function readfilebenhnhan

{

file=benhnhan.txt;

dongl1=0;

while read banghi; do

if [ $dongl1 -ge $dongtimkiem ] #Dong 66 then

if [ $dongl1 -le $(($dongtimkiem+2)) ] then

echo "$banghi"

fi fi

dongl1=$(($dongl1+1)) done <$file

}

function timkiemphong

{

clear echo "Nhap ID Phong can tim kiem: "

read idphong file=phong.txt;

dong=0;

chisokt=0;

timkiem=0;

dongtimkiem=0;

while read banghi; do

if [ $dong -eq $chisokt ] then

# echo "$banghi"

chisokt=$(($chisokt+4)) case $banghi in #Dong 50

"ID PHONG BENH: $idphong") echo "Reply:

Phong : $idphong ton tai trong tep phong.txt "

dongtimkiem=$dong timkiem="1"

;;*) esac fi

dong=$(($dong+1)) done <$file

# echo "So dong: $dong"

if [ $timkiem != 1 ]

Trang 11

echo "Reply: Phong $idphong khong ton tai trong tep phong.txt"

else

dong=0;

while read banghi; do

if [ $dong -ge $dongtimkiem ] #Dong 66 then

if [ $dong -le $(($dongtimkiem+3)) ] then

echo "$banghi"

fi fi

dong=$(($dong+1)) done <$file

fi Menu }

function hienthidmphong

{

clear echo "=====DANH MUC PHONG BENH======="

file=phong.txt;

while read banghi; do

echo "$banghi"

done <$file Menu

}

function hienthidmbenhnhan

{

clear echo "=====DANH MUC BENH NHAN======="

file=benhnhan.txt;

while read banghi; do

echo "$banghi"

done <$file Menu

}

function Menu

{

echo "=============MENU=============="

echo "1: THEM MOI PHONG BENH"

echo "2: THEM MOI BENH NHAN"

echo "3: TIM BENH NHAN"

echo "4: TIM PHONG BENH"

echo "5: THONG KE THEO CHUNG LOAI PHONG"

echo "6: HIEN THI DANH SACH PHONG BENH"

echo "7: HIEN THI DANH SACH BENH NHAN"

Trang 12

echo "8: THOAT CHUONG TRINH"

echo "******CODE DESIGN BY 0946189990********"

echo " -Vui long chon 1 lenh tuong ung de tiep tuc -"

read kytu case $kytu in

1)themphongbenh;;

2)thembenhnhan;;

3)timkiembenhnhan;;

4)timkiemphong;;

5)thongkebenhnhan;;

6)hienthidmphong;;

7)hienthidmbenhnhan;;

8)exit 0;;*)

esac }

Menu

HÌNH ẢNH DEMO

Trang 13

Hình ảnh khởi động men chương trình

Màn hình thêm mới phòng bệnh

Trang 14

Giao diện thêm mới bệnh nhân

Giao diện tìm bệnh nhân

Trang 15

Giao diện tìm phòng bệnh

Trang 16

Giao diện thống kê theo chủng loại

Ngày đăng: 01/06/2016, 18:35

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w