Điều độ ca làm việc cho điều dưỡng khoa ngoại thần kinh bệnh viện Chợ Rẫy

108 87 0
Điều độ ca làm việc cho điều dưỡng khoa ngoại thần kinh bệnh viện Chợ Rẫy

Đ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

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA NGUYỄN CHÂU TUẤN ĐIỀU ĐỘ CA LÀM VIỆC CHO ĐIỀU DƯỠNG KHOA NGOẠI THẦN KINH BỆNH VIÊN CHỢ RẪY Chuyên ngành: Kỹ Thuật Hệ Thống Công Nghiệp Mã số : 60 52 06 LUẬN VĂN THẠC SĨ Thành phố Hồ Chí Minh, Tháng 01/2016 CƠNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI TRƯỜNG ĐẠI HỌC BÁCH KHOA -ĐHQG HCM Cán hướng dẫn khoa học: TS Đỗ Ngọc Hiền (Ghi rõ họ, tên, học hàm, học vị chữ ký) Cán chấm nhận xét 1: TS Đỗ Thành Lưu (Ghi rõ họ, tên, học hàm, học vị chữ ký) Cán chấm nhận xét 2: TS Nguyễn Văn Chung (Ghi rõ họ, tên, học hàm, học vị chữ ký) Luận văn thạc sĩ bảo vệ Trường Đại học Bách Khoa, ĐHQG Tp HCM ngày 10 tháng 01 năm 2016 Thành phần Hội đồng đánh giá luận văn thạc sĩ gồm: (Ghi rõ họ, tên, học hàm, học vị Hội đồng chấm bảo vệ luận văn thạc sĩ ) TS Đặng Quang Vinh TS Đinh Bá Hùng Anh TS Đỗ Thành Lưu TS Nguyễn Văn Chung PGS TS Lê Ngọc Quỳnh Lam Xác nhận Chủ tịch Hội đồng đánh giá LV Trưởng Khoa quản lý chuyên ngành sau luận vãn sửa chữa (nếu có) CHỦ TỊCH HỘI ĐỒNG TS Đặng Quang Vinh TRƯỞNG KHOA TRƯỜNG ĐH BÁCH KHOA TP.HCM CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự - Hạnh phúc PHÒNG ĐÀO TẠO SĐH Tp HCM, ngày 10 tháng 01 năm 2016 NHIỆM VỤ LUẬN VĂN THẠC SĨ Họ tên học viên: Nguyễn Châu Tuấn Ngày, tháng, năm sinh: 11/7/1984 Chuyên ngành: Kỹ Thuật Hệ Thống Công Nghiệp Mã số: 60 52 06 TÊN ĐỀ TÀI: I ĐIỀU ĐỘ CA LÀM VIỆC CHO ĐIỀU DƯỠNG KHOA NGOẠI THẦN KINH BỆNH VIỆN CHỢ RẪY II NHIỆM VỤ VÀ NỘI DUNG: Nghiên cứu vấn đề điều độ nguồn nhân lực; Tìm hiểu lý thuyết liên quan, tìm hiểu giải thuật Heuristic Nghiên cứu, đánh giá cách điều độ đơn vị; Thiết lập mơ hình toán; Lập phần mềm điều độ, nghiên cứu áp dụng vào thực tế đơn vị; Kết luận kiến nghị III NGÀY GIAO NHIỆM VỤ: Ngày 15 tháng năm 2015 IV NGÀY HOÀN THÀNH NHIỆM VỤ: Ngày 10 tháng 12 năm 2015 V CÁN BỘ HƯỚNG DẪN : TS Đỗ Ngọc Hiển CÁN BỘ HƯỚNG DẪN CN BỘ MÔN QL CHUYÊN NGÀNH TS Đỗ Ngọc Hiền TS Đỗ Ngọc Hiền TRƯỞNG KHOA (Họ tên chữ ký) LỜI CẢM ƠN Lời cho xin gửi lời cảm ơn chân thành đến với tất Thầy Cô Bộ môn Kỹ thuật Hệ thống Công nghiệp truyền đạt cho kiến thức thật hữu ích, góp phần hỗ trợ tơi suốt thời gian vừa qua Tơi xin gửi lòng biết ơn sâu sắc đến với thầy TS.ĐỖ Ngọc Hiền truyền đạt kiến thức, bảo tận tâm huớng dẫn tơi q trình học tập thực đề tài Cảm ơn Ban giám đốc Bệnh viện Chợ Rẩy, Trưởng khoa Ngoại Thần kinh tạo điều kiện cho tơi tìm hiểu thực tế thu thập số liệu để thực luận văn Con xin cảm ơn gia đình, người thân u ni dưỡng, quan tâm, lo lắng động viên học tập học sống lúc khó khăn Cảm ơn người bạn động viên, giúp đỡ Cảm ơn tất quan tâm hỗ trợ người giúp tơi hồn thành luận văn Thành phố Hồ Chí Minh, 10 tháng 01 năm 2016 Nguyễn Châu Tuấn TÓM TẮT LUẬN VĂN Qua trình học tập nghiên cứu lý thuyết lĩnh vực điều độ, đồng thời với sụ gợi ý nhu cầu xã hội, xây dựng luận văn Điều độ nguồn nhân lực lĩnh vực dịch vụ, sở sau : - Nghiên cứu lý thuyết điều độ, đặc biệt phương pháp Heuristic - Tìm hiểu tình trạng phân bổ lịch làm việc Khoa Ngoại thần kinh Bệnh viện Chợ Rẩy Từ xác định nhu cầu cần có cơng cụ hỗ trợ việc xây dựng thời khóa biểu làm việc điều dưỡng Trên sở số liệu sở lý thuyết nêu trên, đề tài giải vấn đề sau: - Tìm phương pháp xếp lịch làm việc hợp lý (đảm bảo số lượng điều dưỡng cần thiết ca làm việc, đảm bảo thời gian nghỉ ngơi, không vi phạm luật lao động thời gian làm việc, cực đại thời gian khả dụng Tổ điều dưỡng) - So sánh kết phương pháp kinh nghiệm đơn vị phương pháp đánh giá khả áp dụng phần mềm vào thực tế 11 ABSTRACT Through the process of learning and theoretical research in the field of scheduling, in conjunction with the suggestion of the society’s current needs, I have built a thesis on Human Moderation in services sector, on the basis as follows: - Research on the theory of scheduling, especially Heuristic’s methods - Learn about the state allocating current work schedule at the Department of Cho Ray Hospital’s nerve surgery Thereby, determining the need for one tool support in the construction schedule of the nursing work On the basis of data and theoretical background above, topics will address the following issues: - Find out the most appropriate work scheduling method (make sure the number of nurses needed in one work shift, ensure respite, does not violate labor laws on working time, maximum the time availability of nursing) - Compare the results of the methods of experience at the unit and new methods notified body of the ability to apply to the actual software iii MỤC LỤC CHƯƠNG 1: GIỚI THIỆU 1.1 Đặt vấn đề 1.2 Mục tiêu luận văn nội dung thực 1.2.1 Mục tiêu luận văn 1.2.2 Nội dung thực .2 1.3 Bố cục luận văn: 1.4 Phạm vi giới hạn đề tài: 1.5 Phương pháp nghiên cứu .3 1.6 Các nghiên cứu liên quan CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 Phương pháp luận 2.2 Tổng quan điều độ 2.2.1 Các loại hình điều độ 2.2.2 Các luật điều độ kinh nghiệm .9 2.3 Điều độ nguồn nhân lực: 11 2.3.1 Khái niệm 11 2.3.2 Các mục tiêu điều độ nguồn nhân lực: 12 2.4 Giải thuật Tabu search: .12 2.4.1 Giới thiệu chung : .12 2.4.2 Ưu điểm giải thuật Tabu search : .13 2.4.3 Các bước giải toán Tabu search tổng quát: 13 2.5 Giải thuật Heuristic: 14 2.5.1 Giới thiệu chung: 14 2.5.2 Phương pháp: 15 2.6 Tình trạng thực tế: .15 2.6.1 Tổng quát 15 2.6.2 Giải thích 16 2.6.3 Đánh giá 16 CHƯƠNG 3: PHÂN TÍCH ĐỐI TƯỢNG NGHIÊN CỨU 18 3.1 Mục tiêu: 18 3.2 Ràng buộc: 18 3.3 Các bước giải thuật: 18 IV ID_Ca = 7, ID_Kip = 10, Tuan = sotuan, Ca = cahotro }; de.Liches.AddObject(item); de.SaveChangesO; } foreach (var dd in ddE) { var item = new Lich() { ID_DD = dd.ID_DD, Ten_DD = dd.Ten_DD, Ngay = tg, //Loai_DD = dd.Loai_LDD, Thu = tg.DayOfWeek.ToString(), ID_Ca = 6, ID_Kip = 11, Tuan = sotuan, Ca = cahanhchanh }; de.Liches.AddObject(item); de.SaveChangesO; } foreach (var dd in ddF) { var item = new Lich() { ID_DD = dd.ID_DD, Ten_DD = dd.Ten_DD, Ngay = tg, 80 //Loai_DD = dd.Loai_LDD, Thu = tg.DayOfWeek.ToString(), ID_Ca = 6, ID_Kip = 12, Tuan = sotuan, Ca = cahanhchanh }; de.Liches.AddObject(item); de.SaveChangesO; } } var ddCl = de.DDs.Where(p => p.ID_LDD == 3).OrderBy(p => p.ID_DD).ToList(); var ddC2 = de.DDs.Where(p => p.ID_LDD == 3).OrderByDescending(p => p.ID_DD).ToList(); var ddDl = de.DDs.Where(p => p.ID_LDD == 4).OrderBy(p => p.ID_DD).ToList(); var ddD2 = de.DDs.Where(p => p.ID_LDD == 4).OrderByDescending(p => p.ID_DD).ToList(); var ddFl = de.DDs.Where(p => p.ID_LDD == 6).0rderBy(p => p.ID_DD).ToList(); var ddF2 = de.DDs.Where(p => p.ID_LDD == 6).0rderByDescending(p => p.ID_DD).ToList(); var ddEl = de.DDs.Where(p => p.ID_LDD == 5).ToList(); //if (sotuan % ==0) //{ if (dateofweek == DayOfWeek.Saturday) { var chunhatruoc = tg.AddDays(-ố); if (de.Liches.Any(p => p.Ngay == chunhatruoc)) { var thanhvien = de.Liches.Where(p => p.Ngay == chunhatruoc && p.ID_Kip == 9).ToList(); //var stt = thanhvien.CountO - 1; 81 var thanhviencuoi = thanhvien[O]; tviencuoi.Add(thanhviencuoi); thanhvien.Remove(thanhviencuoi); foreach (var ddc in thanhvien) { var item = new Lich() { ID_DD = ddc.ID_DD, Ten_DD = ddc.Ten_DD, Ngay = tg, //Loai_DD = ddc.Loai_DD, Thu = tg.DayOfWeek.ToString(), ID_Ca = 6, ID_Kip = 9, Tuan = sotuan, Ca = cahanhchanh }; de.Liches.AddObject(item); de.SaveChangesQ; } //add dieu duong ho ho var dieuduonghotro = de.Liches.Single(p => p.Ngay == chunhatruoc && p.ID_Kip == 10); //var dieuduonghotroconlai = de.DDs.Single(p => p.ID_Kip == 10 && p.ID_DD != dieuduonghotro.ID_DD); var iteml = new Lich() { ID_DD = dieuduonghotro.ID_DD, Ten_DD = dieuduonghotro.Ten_DD, Ngay = tg, //Loai_DD = dieuduonghotroconlai.Loai_LDD, Thu = tg.DayOfWeek.ToString(), ID_Ca = 7, ID_Kip = 10, 82 Tuan = sotuan, Ca = cahanhchanh }; de.Liches.AddObject(iteml); de.SaveChangesO; //add dieu duong ho so var dieuduonghoso = de.Liches.Single(p => p.Ngay == chunhatruoc && p.IDKip == 12); var dieuduonghosoconlai = de.DDs.Single(p => p.ID_Kip ==12 && p.ID_DD != dieuduonghoso.ID_DD); var item2 = new Lich() { ID_DD = dieuduonghoso.ID_DD, Ten_DD = dieuduonghoso.Ten_DD, Ngay = tg, //Loai_DD = dieuduonghosoconlai.Loai_LDD, Thu = tg.DayOfWeek.ToString(), ID_Ca = 6, ID_Kip = 12, Tuan = sotuan, Ca = cahanhchanh }; de.Liches.AddObject(item2); de.SaveChangesO; // add dieu duong truong var ddtruong = de.DDs.Single(p => p.ID_Kip == 11); var item3 = new Lich() { ID_DD = ddtruong.ID_DD, Ten_DD = ddtruong.Ten_DD, Ngay = tg, //Loai_DD = ddtruong.Loai_LDD, Thu = tg.DayOfWeek.ToString(), ID_Ca = 6, 83 ID_Kip= 11, Tuan = sotuan, Ca = cahanhchanh }; de.Liches.AddObject(item3); de.SaveChangesO; } else { int j = 1; foreach (var ddc in ddCl) { var item = new Lich() { ID_DD = ddc.ID_DD, Ten_DD = ddc.Ten_DD, Ngay = tg, //Loai_DD = ddc.Loai_LDD, Thu = tg.DayOfWeek.ToString(), ID_Ca = 6, ID_Kip = 9, Tuan = sotuan, Ca = cahanhchanh }; de.Liches.AddObject(item); de.SaveChangesO; j++; //dieuduongC DequeueO; if (j >4) { break; } } foreach (var ddc in ddDl) 84 { var item = new Lich() { ID_DD = ddc.ID_DD, Ten_DD = ddc.Ten_DD, Ngay = tg, //Loai_DD = ddc.Loai_LDD, Thu = tg.DayOfWeek.ToString(), ID_Ca = 7, ID_Kip = 10, Tuan = sotuan, Ca = cahotto }; de.Liches.AddObject(item); de.SaveChangesO; //dieuduongD.DequeueO; break; } foreach (var ddc in ddFl) { var item = new Lich() { ID_DD = ddc.ID_DD, Ten_DD = ddc.Ten_DD, Ngay = tg, //Loai_DD = ddc.Loai_LDD, Thu = tg.DayOfWeek.ToString(), ID_Ca = 6, ID_Kip = 12, Tuan = sotuan, Ca = cahanhchanh }; de.Liches.AddObject(item); de.SaveChangesO; 85 //dieuduongF.DequeueO; break; } foreach (var dd in ddEl) { var item = new Lich() { ID_DD = dd.ID_DD, Ten_DD = dd.Ten_DD, Ngay = tg, //Loai_DD = dd.Loai_LDD, Thu = tg.DayOfWeek.ToString(), ID_Ca = 6, ID_Kip= 11, Tuan = sotuan, Ca = cahanhchanh }; de.Liches.AddObject(item); de.SaveChangesO; } } } if (dateofweek == DayOfWeek Sunday) { var thubaytruoc = tg.AddDays(-8); if (de.Liches.Any(p => p.Ngay == thubaytruoc)) { var thanhvien = de.Liches.Where(p => p.Ngay == thubaytruoc && p.ID_Kip == 9).ToList(); foreach (var tv in tviencuoi) { thanhvien.Add(tv); } 86 tviencuoi.ClearO; foreach (var ddc in thanhvien) { var item = new Lich() { ID_DD = ddc.ID_DD, Ten_DD = ddc.Ten_DD, Ngay = tg, //Loai_DD = ddc.Loai_DD, Thu = tg.DayOfWeek.ToString(), ID_Ca = 6, ID_Kip = 9, Tuan = sotuan, Ca = cahanhchanh }; de.Liches.AddObject(item); de.SaveChangesO; //dieuduongC DequeueO; } //add dieu duong ho tro //var chunhatruoc = tg.AddDays(-7); var dieuduonghotro = de.Liches.Single(p => p.Ngay == thubaytruoc && p.ID_Kip == 10); var dieuduonghotroconlai = de.DDs.Single(p => p.ID_Kip == 10 && p.ID_DD != dieuduonghotro.ID_DD); var iteml = new Lich() { ID_DD = dieuduonghotro.ID_DD, Ten_DD = dieuduonghotro.Ten_DD, Ngay = tg, //Loai_DD = dieuduonghotroconlai.Loai_LDD, Thu = tg.DayOfWeek.ToString(), ID_Ca = 7, ID_Kip = 10, 87 Tuan = sotuan, Ca = cahanhchanh }; de.Liches.AddObject(iteml); de.SaveChangesO; //add dieu duong ho so var dieuduonghoso = de.Liches.Single(p => p.Ngay == thubaytruoc && p.IDKip == 12); var dieuduonghosoconlai = de.DDs.Single(p => p.ID_Kip ==12 && p.ID_DD != dieuduonghoso.ID_DD); var item2 = new Lich() { ID_DD = dieuduonghoso.ID_DD, Ten_DD = dieuduonghoso.Ten_DD, Ngay = tg, //Loai_DD = dieuduonghotroconlai.Loai_LDD, Thu = tg.DayOfWeek.ToString(), ID_Ca = 6, ID_Kip = 12, Tuan = sotuan, Ca = cahanhchanh }; de.Liches.AddObject(item2); de.SaveChangesO; Illi add dieu duong truong //var ddtruong = de.DDs.Single(p => p.ID_Kip == 11); //var item3 = new Lich() //{ // ID_DD = ddtruong.ID_DD, // Ten_DD = ddtruong.Ten_DD, // Ngay = tg, // Thu = tg.DayOfWeek.ToString(), // ID_Ca = 6, 88 // ID_Kip=ll, // Tuan = sotuan, // Ca = cahanhchanh //}; //de.Liches.AddObject(item3); //de.SaveChangesO; } else { int j = 1; foreach (var ddc in ddC2) { var item = new Lich() { ID_DD = ddc.ID_DD, Ten_DD = ddc.Ten_DD, Ngay = tg, //Loai_DD = ddc.Loai_LDD, Thu = tg.DayOfWeek.ToString(), ID_Ca = 6, ID_Kip = 9, Tuan = sotuan, Ca = cahanhchanh }; de.Liches.AddObject(item); de.SaveChangesO; //dieuduongC DequeueO; j++; if (j > 5) { break; } } foreach (var ddc in ddD2) { 89 var item = new Lich() { ID_DD = ddc.ID_DD, Ten_DD = ddc.Ten_DD, Ngay = tg, //Loai_DD = ddc.Loai_LDD, Thu = tg.DayOfWeek.ToString(), ID_Ca = 7, ID_Kip = 10, Tuan = sotuan, Ca = cahotro }; de.Liches.AddObject(item); de.SaveChangesO; //dieuduongD DequeueO; break; } foreach (var ddc in ddF2) { var item = new Lich() { ID_DD = ddc.ID_DD, Ten_DD = ddc.Ten_DD, Ngay = tg, //Loai_DD = ddc.Loai_LDD, Thu = tg.DayOfWeek.ToString(), ID_Ca = 6, ID_Kip = 12, Tuan = sotuan, Ca = cahanhchanh }; de.Liches.AddObject(item); //dieuduongF.DequeueO; break; } } } thoigian.Enqueue(tg.AddDays(l)); 90 de.SaveChangesO; thoigian.DequeueO; } progressBarl Value = 0; } public void SapXepCaKip8dieuduong(DateTime batdau, DateTime ketthuc) { Queue thoigian = new Queue(); //Queue dieuduongC = new Queue(); //Queue dieuduongD = new Queue(); //Queue dieuduongE = new Queue(); //Queue dieuduongF = new Queue(); //var tviencuoi = new List(); var de = new DieuDuongEntitiesO; //int i = 1; thoigian.Enqueue(batdau); TimeSpan Time = ketthuc - batdau; int TongSoNgay = Time.Days; var cal = de.Cas.Single(p => p.ID_Ca == l).TenCa; var ca2 = de.Cas.Single(p => p.ID_Ca == 2).TenCa; var ca3 = de.Cas.Single(p => p.ID_Ca == 3).TenCa; int i = 0; while (thoigian.Peek()

Ngày đăng: 12/02/2020, 19:06

Tài liệu liên quan