private static void XoaRaVien(int _mabn) { Hospital data = new Hospital(); RaVien qravien = data.RaViens.Where(parameters => parameters.MaBNhan == _mabn).FirstOrDefault(); if (qravien != null) { data.RaViens.Remove(qravien); data.SaveChanges(); } }
public static bool LuuVaXoaRaVienCu(Hospital _data, int _mabn, DateTime dtNgayTT, string Luu_Xoa, int RaChuyenVien) { try { var ktrvien = _data.RaViens.Where(p => p.MaBNhan == _mabn).ToList(); if (Luu_Xoa == "Luu") { var bnkb = _data.BNKBs.Where(p => p.MaBNhan == _mabn).OrderByDescending(p => p.IDKB).ToList(); if (ktrvien.Count <= 0) { if (bnkb.Count > 0) { string[] maicd = new string[6] { "", "", "", "", "", "0" }; maicd = ICDProvider.getMaICDarr(_data, _mabn, Common.GetICD); DateTime _ngayvao = dtNgayTT; if (bnkb.Last().NgayKham != null) { _ngayvao = bnkb.Last().NgayKham.Value; } else { _ngayvao = dtNgayTT.AddMinutes(-1); } TimeSpan ts = dtNgayTT - _ngayvao; if (ts.TotalMinutes < 1) { //MessageBox.Show("Ngày giờ ra viện: " + dtNgayTT.Tostring() + " phải > ngày giờ vào viện: " + _ngayvao.Tostring()); return(false); } RaVien _ravien = new RaVien(); _ravien.MaKP = string.IsNullOrEmpty(maicd[2]) ? 0 : Convert.ToInt32(maicd[2]); _ravien.MaICD = maicd[0]; _ravien.ChanDoan = maicd[1]; _ravien.MaCK = Convert.ToInt16(maicd[5]); if (bnkb.First().PhuongAn != null && bnkb.First().PhuongAn == 2) { _ravien.Status = 1; } else { _ravien.Status = 2; } // kiểm tra lại số ngày điều trị int songaydt = 11;// FormNhap.frm_Ravien.getDaysOfStay(_mabn, _ngayvao, dtNgayTT); // doi voi benh nhan ngoai tru, dt ngoai tru = ngay ra - ngay vao, quynv yeu cau if (songaydt > 1) { songaydt = songaydt - 1; } _ravien.SoNgaydt = 1; _ravien.NgayRa = dtNgayTT; _ravien.MaBNhan = _mabn; _ravien.NgayVao = _ngayvao; _data.RaViens.Add(_ravien); _data.SaveChanges(); try { BenhNhanProvider.SetStatus(_mabn, 2); } catch { } } else { return(false); } } } if (Luu_Xoa == "Xoa") { try { var xoa = _data.RaViens.Single(p => p.MaBNhan == _mabn); _data.RaViens.Remove(xoa); _data.SaveChanges(); var qcls = _data.CLS.Where(p => p.MaBNhan == _mabn).ToList(); if (qcls.Count == 0) { BenhNhanProvider.SetStatus(_mabn, 1);// bệnh nhân đã khám } else { BenhNhanProvider.SetStatus(_mabn, 5);// bệnh nhân đã có kqCLS } } catch (Exception) { return(false); } } return(true); } catch { //MessageBox.Show("Lỗi tạo ra viện: " + ex.Message); return(false); } }