public async Task <IHttpActionResult> DeleteToaThuoc(int id) { ToaThuoc toaThuoc = await db.ToaThuocs.FindAsync(id); if (toaThuoc == null) { return(NotFound()); } db.ToaThuocs.Remove(toaThuoc); await db.SaveChangesAsync(); return(Ok("SUCCESS")); }
public static Result CheckToaThuocExistCode(string toaThuocGUID, string code) { Result result = new Result(); MMOverride db = null; try { db = new MMOverride(); ToaThuoc tt = null; if (toaThuocGUID == null || toaThuocGUID == string.Empty) { tt = db.ToaThuocs.SingleOrDefault <ToaThuoc>(o => o.MaToaThuoc.ToLower() == code.ToLower()); } else { tt = db.ToaThuocs.SingleOrDefault <ToaThuoc>(o => o.MaToaThuoc.ToLower() == code.ToLower() && o.ToaThuocGUID.ToString() != toaThuocGUID); } if (tt == null) { result.Error.Code = ErrorCode.NOT_EXIST; } else { result.Error.Code = ErrorCode.EXIST; } } catch (System.Data.SqlClient.SqlException se) { result.Error.Code = (se.Message.IndexOf("Timeout expired") >= 0) ? ErrorCode.SQL_QUERY_TIMEOUT : ErrorCode.INVALID_SQL_STATEMENT; result.Error.Description = se.ToString(); } catch (Exception e) { result.Error.Code = ErrorCode.UNKNOWN_ERROR; result.Error.Description = e.ToString(); } finally { if (db != null) { db.Dispose(); db = null; } } return(result); }
public async Task <IHttpActionResult> GetByIDHistory(int id) { ToaThuoc toaThuoc = await db.ToaThuocs.FirstOrDefaultAsync(q => q.IDHistory == id); if (toaThuoc == null) { return(NotFound()); } var acc = LoginHelper.GetAccount(); if (string.IsNullOrWhiteSpace(acc.POSITION) && acc.IDAccount != toaThuoc.HistoryKhamBenh.Register.IDAccount) { return(NotFound()); } return(Ok(ConvertToToaThuocDTO(toaThuoc))); }
public async Task <IHttpActionResult> GetToaThuoc(int id) { ToaThuoc toaThuoc = await db.ToaThuocs.FindAsync(id); if (toaThuoc == null) { return(NotFound()); } var acc = LoginHelper.GetAccount(); if (string.IsNullOrWhiteSpace(acc.POSITION) && acc.IDAccount != toaThuoc.HistoryKhamBenh.Register.IDAccount) { return(NotFound()); } return(Ok(toaThuoc)); }
//Lưu toa thuốc nhập vào thông tin PSthuoc (toa thuoc ) và danh sách pschitietthuoc public static string NhapToaThuoc(ToaThuoc toathuoc) { var toa = toathuoc.Toa; var chitietthuoc = toathuoc.Chitietthuoc; foreach (PSChiTietThuoc thuoc in chitietthuoc) { if (thuoc.Idpsthuoc != toa.Idpsthuoc) { return("mã toa của chi tiết thuốc không trùng khớ với mã số toa tại thuốc: " + thuoc.Mahh); } } var luutoa = PSThuocRepository.AddPSThuoc(toa); if (luutoa == tb.add_successed) { foreach (PSChiTietThuoc thuoc in chitietthuoc) { var luuctthuoc = PSChiTietThuocRepository.AddPSChiTietThuoc(thuoc); } } return(tb.add_failed); }
private void btnThem_Click(object sender, EventArgs e) { var tb = new HideNotifications(); if (txtCachDung.Text.Trim() != "" && txtSoLuong.Text.Trim() != "") { int SoLuong = int.Parse(txtSoLuong.Text);//Kiểm tra tính đúng đắn của số lượng nhập vào try { int MaPK = frmPhieuKhamBenh.MaPK; int MaThuoc = (int)cbxThuoc.SelectedValue; string CachDung = txtCachDung.Text; ToaThuoc.ThemDuLieu(MaPK, MaThuoc, SoLuong, CachDung); lblThongBao.ForeColor = Color.Green; lblThongBao.Text = "Thêm thuốc thành công"; tb.stt(lblThongBao); txtSoLuong.Text = ""; txtCachDung.Text = ""; } catch { lblThongBao.ForeColor = Color.Red; lblThongBao.Text = "Thuốc đã tồn tại trong hoá đơn"; tb.stt(lblThongBao); } } else { lblThongBao.ForeColor = Color.Red; lblThongBao.Text = "Chưa nhập đủ dữ liệu"; tb.stt(lblThongBao); txtCachDung.Focus(); } }
public string LuuToa([FromBody] ToaThuoc toathuoc) { return(ToaThuocRepository.NhapToaThuoc(toathuoc)); }
//Load dữ liệu private void LoadData() { MaBN = 0; try { cbxHoTen.DisplayMember = "TenBN"; cbxHoTen.ValueMember = "MaBN"; cbxHoTen.DataSource = BenhNhan.LayDSBenhNhan(dtpNgayKham.Text);//Lầy dữ liệu cho cbxHoTen theo ngày khám cbxHoTen.SelectedIndex = 0; MaBN = (int)cbxHoTen.SelectedValue; dgvToaThuoc.DataSource = ToaThuoc.LayChiTietDonThuoc(MaPK); dgvToaThuoc.Columns["STT"].HeaderText = "STT"; dgvToaThuoc.Columns["MaThuoc"].HeaderText = "Mã Thuốc"; dgvToaThuoc.Columns["TenThuoc"].HeaderText = "Tên thuốc"; dgvToaThuoc.Columns["SoLuong"].HeaderText = "Số lượng"; dgvToaThuoc.Columns["DonVi"].HeaderText = "Đơn vị"; dgvToaThuoc.Columns["CachDung"].HeaderText = "Cách dùng"; dgvToaThuoc.Columns["STT"].Width = 50; dgvToaThuoc.Columns["MaThuoc"].Width = 100; dgvToaThuoc.Columns["TenThuoc"].Width = 120; dgvToaThuoc.Columns["SoLuong"].Width = 80; dgvToaThuoc.Columns["DonVi"].Width = 100; dgvToaThuoc.Columns["CachDung"].Width = 250; MaPK = PhieuKham.TimPhieuKham(dtpNgayKham.Text, MaBN);//Lầy ra MaPk dựa vào Ngày khám và MABN List <ChiTietToaThuoc> toaThuoc = ToaThuoc.LayChiTietDonThuoc(MaPK); if (toaThuoc.Count > 0) { dgvToaThuoc.DataSource = toaThuoc;//Lầy chi tiết toa thuốc của phiếu khám } else { dgvToaThuoc.DataSource = null; } string TrieuChung; string LoaiBenh; PhieuKham.LayDuLieu(MaPK, out LoaiBenh, out TrieuChung);//Lấy ra triệu chứng và loại bệnh của bệnh nhân. nếu có txtTrieuChung.Text = TrieuChung; txtLoaiBenh.Text = LoaiBenh; if (DateTime.Now.Day == dtpNgayKham.Value.Day && DateTime.Now.Month == dtpNgayKham.Value.Month && DateTime.Now.Year == dtpNgayKham.Value.Year) { btnXemHD.Enabled = true; btnThemThuoc.Enabled = true; btnCapNhapTT.Enabled = true; if (ToaThuoc.LayChiTietDonThuoc(MaPK).Count > 0) { btnXoaThuoc.Enabled = true; } else { btnXoaThuoc.Enabled = false; } } else { btnXemHD.Enabled = false; btnThemThuoc.Enabled = false; btnCapNhapTT.Enabled = false; btnXoaThuoc.Enabled = false; } } catch//Không có bệnh nhân nào { cbxHoTen.Text = ""; btnXemHD.Enabled = false; btnThemThuoc.Enabled = false; btnCapNhapTT.Enabled = false; btnXoaThuoc.Enabled = false; txtLoaiBenh.Text = ""; txtTrieuChung.Text = ""; } }
public static Result ChuyenBenhAn(string patientGUID, List <DataRow> rows) { Result result = new Result(); MMOverride db = null; try { db = new MMOverride(); using (TransactionScope t = new TransactionScope(TransactionScopeOption.RequiresNew)) { foreach (DataRow row in rows) { string toaThuocGUID = row["ToaThuocGUID"].ToString(); ToaThuoc toaThuoc = (from s in db.ToaThuocs where s.ToaThuocGUID.ToString() == toaThuocGUID select s).FirstOrDefault(); if (toaThuoc == null) { continue; } //Tracking string desc = string.Format("- ToaThuocGUID: '{0}': PatientGUID: '{1}' ==> '{2}' (ToaThuoc)", toaThuocGUID, toaThuoc.BenhNhan.ToString(), patientGUID); toaThuoc.BenhNhan = Guid.Parse(patientGUID); Tracking tk = new Tracking(); tk.TrackingGUID = Guid.NewGuid(); tk.TrackingDate = DateTime.Now; tk.DocStaffGUID = Guid.Parse(Global.UserGUID); tk.ActionType = (byte)ActionType.Edit; tk.Action = "Chuyển bệnh án"; tk.Description = desc; tk.TrackingType = (byte)TrackingType.None; tk.ComputerName = Utility.GetDNSHostName(); db.Trackings.InsertOnSubmit(tk); } db.SubmitChanges(); t.Complete(); } } catch (System.Data.SqlClient.SqlException se) { result.Error.Code = (se.Message.IndexOf("Timeout expired") >= 0) ? ErrorCode.SQL_QUERY_TIMEOUT : ErrorCode.INVALID_SQL_STATEMENT; result.Error.Description = se.ToString(); } catch (Exception e) { result.Error.Code = ErrorCode.UNKNOWN_ERROR; result.Error.Description = e.ToString(); } finally { if (db != null) { db.Dispose(); db = null; } } return(result); }
public static Result InsertToaThuoc(ToaThuoc toaThuoc, List <ChiTietToaThuoc> addedList, List <string> deletedKeys) { Result result = new Result(); MMOverride db = null; try { db = new MMOverride(); string desc = string.Empty; using (TransactionScope tnx = new TransactionScope(TransactionScopeOption.RequiresNew)) { //Insert if (toaThuoc.ToaThuocGUID == null || toaThuoc.ToaThuocGUID == Guid.Empty) { toaThuoc.ToaThuocGUID = Guid.NewGuid(); toaThuoc.IsWarning = true; db.ToaThuocs.InsertOnSubmit(toaThuoc); db.SubmitChanges(); string ngayTaiKhamStr = string.Empty; if (toaThuoc.NgayTaiKham != null && toaThuoc.NgayTaiKham.HasValue) { ngayTaiKhamStr = toaThuoc.NgayTaiKham.Value.ToString("dd/MM/yyyy HH:mm:ss"); } desc += string.Format("- Toa thuốc: GUID: '{0}', Mã toa thuốc: '{1}', Ngày khám: '{2}', Ngày tái khám: '{3}', Bác sĩ kê toa: '{4}', Bệnh nhân: '{5}', Chẩn đoán: '{6}', Lời dặn: '{7}'\n", toaThuoc.ToaThuocGUID.ToString(), toaThuoc.MaToaThuoc, toaThuoc.NgayKham.Value.ToString("dd/MM/yyyy HH:mm:ss"), ngayTaiKhamStr, toaThuoc.DocStaff.Contact.FullName, toaThuoc.Patient.Contact.FullName, toaThuoc.ChanDoan, toaThuoc.Note); if (addedList != null && addedList.Count > 0) { desc += "- Chi tiết toa thuốc được thêm:\n"; //Chi tiet toa thuoc foreach (ChiTietToaThuoc cttt in addedList) { cttt.ChiTietToaThuocGUID = Guid.NewGuid(); cttt.ToaThuocGUID = toaThuoc.ToaThuocGUID; db.ChiTietToaThuocs.InsertOnSubmit(cttt); db.SubmitChanges(); string tenThuoc = string.Empty; if (cttt.Thuoc != null) { tenThuoc = cttt.Thuoc.TenThuoc; } else { tenThuoc = cttt.TenThuocNgoai; } desc += string.Format(" + GUID: '{0}', Thuốc: '{1}', Số lượng: '{2}'\n", cttt.ChiTietToaThuocGUID.ToString(), tenThuoc, cttt.SoLuong); } } //Tracking desc = desc.Substring(0, desc.Length - 1); Tracking tk = new Tracking(); tk.TrackingGUID = Guid.NewGuid(); tk.TrackingDate = DateTime.Now; tk.DocStaffGUID = Guid.Parse(Global.UserGUID); tk.ActionType = (byte)ActionType.Add; tk.Action = "Thêm thông tin toa thuốc"; tk.Description = desc; tk.TrackingType = (byte)TrackingType.None; tk.ComputerName = Utility.GetDNSHostName(); db.Trackings.InsertOnSubmit(tk); db.SubmitChanges(); } else //Update { ToaThuoc tt = db.ToaThuocs.SingleOrDefault <ToaThuoc>(o => o.ToaThuocGUID.ToString() == toaThuoc.ToaThuocGUID.ToString()); if (tt != null) { tt.MaToaThuoc = toaThuoc.MaToaThuoc; tt.NgayKeToa = toaThuoc.NgayKeToa; tt.NgayKham = toaThuoc.NgayKham; tt.NgayTaiKham = toaThuoc.NgayTaiKham; tt.BacSiKeToa = toaThuoc.BacSiKeToa; tt.BenhNhan = toaThuoc.BenhNhan; tt.ChanDoan = toaThuoc.ChanDoan; tt.Note = toaThuoc.Note; tt.Loai = toaThuoc.Loai; tt.CreatedDate = toaThuoc.CreatedDate; tt.CreatedBy = toaThuoc.CreatedBy; tt.UpdatedDate = toaThuoc.UpdatedDate; tt.UpdatedBy = toaThuoc.UpdatedBy; tt.DeletedDate = toaThuoc.DeletedDate; tt.DeletedBy = toaThuoc.DeletedBy; tt.Status = toaThuoc.Status; db.SubmitChanges(); string ngayTaiKhamStr = string.Empty; if (tt.NgayTaiKham != null && tt.NgayTaiKham.HasValue) { ngayTaiKhamStr = tt.NgayTaiKham.Value.ToString("dd/MM/yyyy HH:mm:ss"); } desc += string.Format("- Toa thuốc: GUID: '{0}', Mã toa thuốc: '{1}', Ngày khám: '{2}', Ngày tái khám: '{3}', Bác sĩ kê toa: '{4}', Bệnh nhân: '{5}', Chẩn đoán: '{6}', Lời dặn: '{7}'\n", tt.ToaThuocGUID.ToString(), tt.MaToaThuoc, tt.NgayKham.Value.ToString("dd/MM/yyyy HH:mm:ss"), ngayTaiKhamStr, tt.DocStaff.Contact.FullName, tt.Patient.Contact.FullName, tt.ChanDoan, toaThuoc.Note); //Delete chi tiet toa thuoc if (deletedKeys != null && deletedKeys.Count > 0) { desc += "- Chi tiết toa thuốc được xóa:\n"; foreach (string key in deletedKeys) { ChiTietToaThuoc cttt = db.ChiTietToaThuocs.SingleOrDefault <ChiTietToaThuoc>(c => c.ChiTietToaThuocGUID.ToString() == key); if (cttt != null) { cttt.DeletedDate = DateTime.Now; cttt.DeletedBy = Guid.Parse(Global.UserGUID); cttt.Status = (byte)Status.Deactived; string tenThuoc = string.Empty; if (cttt.Thuoc != null) { tenThuoc = cttt.Thuoc.TenThuoc; } else { tenThuoc = cttt.TenThuocNgoai; } desc += string.Format(" + GUID: '{0}', Thuốc: '{1}', Số lượng: '{2}'\n", cttt.ChiTietToaThuocGUID.ToString(), tenThuoc, cttt.SoLuong); } } db.SubmitChanges(); } //Add chi tiet toa thuoc if (addedList != null && addedList.Count > 0) { desc += "- Chi tiết toa thuốc được thêm:\n"; foreach (ChiTietToaThuoc cttt in addedList) { cttt.ToaThuocGUID = tt.ToaThuocGUID; if (cttt.ChiTietToaThuocGUID == Guid.Empty) { cttt.ChiTietToaThuocGUID = Guid.NewGuid(); db.ChiTietToaThuocs.InsertOnSubmit(cttt); db.SubmitChanges(); string tenThuoc = string.Empty; if (cttt.Thuoc != null) { tenThuoc = cttt.Thuoc.TenThuoc; } else { tenThuoc = cttt.TenThuocNgoai; } desc += string.Format(" + GUID: '{0}', Thuốc: '{1}', Số lượng: '{2}'\n", cttt.ChiTietToaThuocGUID.ToString(), tenThuoc, cttt.SoLuong); } else { ChiTietToaThuoc chiTietToaThuoc = db.ChiTietToaThuocs.SingleOrDefault <ChiTietToaThuoc>(c => c.ChiTietToaThuocGUID == cttt.ChiTietToaThuocGUID); if (chiTietToaThuoc != null) { chiTietToaThuoc.ThuocGUID = cttt.ThuocGUID; chiTietToaThuoc.TenThuocNgoai = cttt.TenThuocNgoai; chiTietToaThuoc.SoLuong = cttt.SoLuong; chiTietToaThuoc.LieuDung = cttt.LieuDung; chiTietToaThuoc.Note = cttt.Note; chiTietToaThuoc.Sang = cttt.Sang; chiTietToaThuoc.Trua = cttt.Trua; chiTietToaThuoc.Chieu = cttt.Chieu; chiTietToaThuoc.Toi = cttt.Toi; chiTietToaThuoc.TruocAn = cttt.TruocAn; chiTietToaThuoc.SauAn = cttt.SauAn; chiTietToaThuoc.Khac_TruocSauAn = cttt.Khac_TruocSauAn; chiTietToaThuoc.Uong = cttt.Uong; chiTietToaThuoc.Boi = cttt.Boi; chiTietToaThuoc.Dat = cttt.Dat; chiTietToaThuoc.Khac_CachDung = cttt.Khac_CachDung; chiTietToaThuoc.SangNote = cttt.SangNote; chiTietToaThuoc.TruaNote = cttt.TruaNote; chiTietToaThuoc.ChieuNote = cttt.ChieuNote; chiTietToaThuoc.ToiNote = cttt.ToiNote; chiTietToaThuoc.TruocAnNote = cttt.TruocAnNote; chiTietToaThuoc.SauAnNote = cttt.SauAnNote; chiTietToaThuoc.Khac_TruocSauAnNote = cttt.Khac_TruocSauAnNote; chiTietToaThuoc.UongNote = cttt.UongNote; chiTietToaThuoc.BoiNote = cttt.BoiNote; chiTietToaThuoc.DatNote = cttt.DatNote; chiTietToaThuoc.Khac_CachDungNote = cttt.Khac_CachDungNote; chiTietToaThuoc.Status = (byte)Status.Actived; chiTietToaThuoc.UpdatedDate = cttt.UpdatedDate; chiTietToaThuoc.UpdatedBy = cttt.UpdatedBy; db.SubmitChanges(); string tenThuoc = string.Empty; if (cttt.Thuoc != null) { tenThuoc = cttt.Thuoc.TenThuoc; } else { tenThuoc = cttt.TenThuocNgoai; } desc += string.Format(" + GUID: '{0}', Thuốc: '{1}', Số lượng: '{2}'\n", chiTietToaThuoc.ChiTietToaThuocGUID.ToString(), tenThuoc, chiTietToaThuoc.SoLuong); } } } } //Tracking desc = desc.Substring(0, desc.Length - 1); Tracking tk = new Tracking(); tk.TrackingGUID = Guid.NewGuid(); tk.TrackingDate = DateTime.Now; tk.DocStaffGUID = Guid.Parse(Global.UserGUID); tk.ActionType = (byte)ActionType.Edit; tk.Action = "Sửa thông tin toa thuốc"; tk.Description = desc; tk.TrackingType = (byte)TrackingType.None; tk.ComputerName = Utility.GetDNSHostName(); db.Trackings.InsertOnSubmit(tk); db.SubmitChanges(); } } tnx.Complete(); } } catch (System.Data.SqlClient.SqlException se) { result.Error.Code = (se.Message.IndexOf("Timeout expired") >= 0) ? ErrorCode.SQL_QUERY_TIMEOUT : ErrorCode.INVALID_SQL_STATEMENT; result.Error.Description = se.ToString(); } catch (Exception e) { result.Error.Code = ErrorCode.UNKNOWN_ERROR; result.Error.Description = e.ToString(); } finally { if (db != null) { db.Dispose(); db = null; } } return(result); }
public static Result TatCanhBaoToaThuoc(List <string> toaThuocKeys) { Result result = new Result(); MMOverride db = null; try { db = new MMOverride(); using (TransactionScope t = new TransactionScope(TransactionScopeOption.RequiresNew)) { string desc = string.Empty; foreach (string key in toaThuocKeys) { ToaThuoc toaThuoc = db.ToaThuocs.SingleOrDefault <ToaThuoc>(tt => tt.ToaThuocGUID.ToString() == key); if (toaThuoc != null) { toaThuoc.UpdatedDate = DateTime.Now; toaThuoc.UpdatedBy = Guid.Parse(Global.UserGUID); toaThuoc.IsWarning = false; string ngayTaiKhamStr = string.Empty; if (toaThuoc.NgayTaiKham != null && toaThuoc.NgayTaiKham.HasValue) { ngayTaiKhamStr = toaThuoc.NgayTaiKham.Value.ToString("dd/MM/yyyy HH:mm:ss"); } desc += string.Format("- GUID: '{0}', Mã toa thuốc: '{1}', Ngày khám: '{2}', Ngày tái khám: '{3}', Bác sĩ kê toa: '{4}', Bệnh nhân: '{5}', Chẩn đoán: '{6}', Lời dặn: '{7}'\n", toaThuoc.ToaThuocGUID.ToString(), toaThuoc.MaToaThuoc, toaThuoc.NgayKham.Value.ToString("dd/MM/yyyy HH:mm:ss"), ngayTaiKhamStr, toaThuoc.DocStaff.Contact.FullName, toaThuoc.Patient.Contact.FullName, toaThuoc.ChanDoan, toaThuoc.Note); } } //Tracking desc = desc.Substring(0, desc.Length - 1); Tracking tk = new Tracking(); tk.TrackingGUID = Guid.NewGuid(); tk.TrackingDate = DateTime.Now; tk.DocStaffGUID = Guid.Parse(Global.UserGUID); tk.ActionType = (byte)ActionType.Edit; tk.Action = "Tắt cảnh báo toa thuốc"; tk.Description = desc; tk.TrackingType = (byte)TrackingType.None; tk.ComputerName = Utility.GetDNSHostName(); db.Trackings.InsertOnSubmit(tk); db.SubmitChanges(); t.Complete(); } } catch (System.Data.SqlClient.SqlException se) { result.Error.Code = (se.Message.IndexOf("Timeout expired") >= 0) ? ErrorCode.SQL_QUERY_TIMEOUT : ErrorCode.INVALID_SQL_STATEMENT; result.Error.Description = se.ToString(); } catch (Exception e) { result.Error.Code = ErrorCode.UNKNOWN_ERROR; result.Error.Description = e.ToString(); } finally { if (db != null) { db.Dispose(); db = null; } } return(result); }