private void HuyThanhtoan() { try { string ma_lydohuy = ""; if (!Utility.isValidGrid(grdRegExam)) return; if (objLuotkham == null) { objLuotkham = CreatePatientExam(); } if (objLuotkham == null) { Utility.ShowMsg("Không lấy được thông tin bệnh nhân dựa vào dữ liệu trên lưới danh sách bệnh nhân. Liên hệ 0915 150148 để được hỗ trợ"); return; } if (PropertyLib._ThanhtoanProperties.Hoitruockhihuythanhtoan) if (!Utility.AcceptQuestion("Bạn có muốn thực hiện việc hủy thanh toán cho dịch vụ KCB đang chọn không ?", "Thông báo", true)) return; int v_Payment_ID = Utility.Int32Dbnull(grdRegExam.CurrentRow.Cells["Id_thanhtoan"].Value, -1); if (v_Payment_ID != -1) { List<int> lstRegID = GetIDKham(); if (PropertyLib._ThanhtoanProperties.Hienthihuythanhtoan) { frm_HuyThanhtoan frm = new frm_HuyThanhtoan(); frm.objLuotkham = objLuotkham; frm.v_Payment_Id = v_Payment_ID; frm.Chuathanhtoan = 0; frm.ShowCancel = true; frm.ShowDialog(); if (!frm.m_blnCancel) { foreach (DataRow _row in m_dataDataRegExam.Rows) { if (lstRegID.Contains(Utility.Int32Dbnull(_row[KcbDangkyKcb.Columns.IdKham], -1))) { _row["ten_trangthai_thanhtoan"] = "Chưa thanh toán"; _row[KcbDangkyKcb.Columns.IdThanhtoan] = -1; _row[KcbDangkyKcb.Columns.TrangthaiThanhtoan] = 0; } } } } else { if (PropertyLib._ThanhtoanProperties.Nhaplydohuythanhtoan) { frm_Nhaplydohuythanhtoan _Nhaplydohuythanhtoan = new frm_Nhaplydohuythanhtoan(); _Nhaplydohuythanhtoan.ShowDialog(); if (_Nhaplydohuythanhtoan.m_blnCancel) return; ma_lydohuy = _Nhaplydohuythanhtoan.ma_lydohuy; } bool HUYTHANHTOAN_HUYBIENLAI = THU_VIEN_CHUNG.Laygiatrithamsohethong("HUYTHANHTOAN_HUYBIENLAI", "1", true) == "1"; ActionResult actionResult = new KCB_THANHTOAN().HuyThanhtoan(v_Payment_ID, objLuotkham, ma_lydohuy, Utility.Int32Dbnull(grdRegExam.CurrentRow.Cells[KcbThanhtoan.Columns.IdHdonLog], -1), HUYTHANHTOAN_HUYBIENLAI); switch (actionResult) { case ActionResult.Success: foreach (DataRow _row in m_dataDataRegExam.Rows) { if (lstRegID.Contains(Utility.Int32Dbnull(_row[KcbDangkyKcb.Columns.IdKham], -1))) { _row["ten_trangthai_thanhtoan"] = "Chưa thanh toán"; _row[KcbDangkyKcb.Columns.IdThanhtoan] = -1; _row[KcbDangkyKcb.Columns.TrangthaiThanhtoan] = 0; } } break; case ActionResult.ExistedRecord: break; case ActionResult.Error: Utility.ShowMsg("Lỗi trong quá trình hủy thông tin thanh toán", "Thông báo", MessageBoxIcon.Error); break; case ActionResult.UNKNOW: Utility.ShowMsg("Lỗi không xác định", "Thông báo", MessageBoxIcon.Error); break; case ActionResult.Cancel: break; } } } } catch(Exception ex) { Utility.ShowMsg("Lỗi khi hủy thanh toán", "Thông báo", MessageBoxIcon.Error); } finally { ModifyButtonCommandRegExam(); } }
private void HuyPhieuThu() { ma_lydohuy = ""; if (!Utility.isValidGrid(grdPayment)) return; if (grdPayment.CurrentRow != null) { if (objLuotkham == null) { objLuotkham = CreatePatientExam(); } v_Payment_ID = Utility.Int32Dbnull(grdPayment.CurrentRow.Cells["Id_thanhtoan"].Value, -1); KcbThanhtoan objPayment = KcbThanhtoan.FetchByID(v_Payment_ID); if (objPayment != null) { if (PropertyLib._ThanhtoanProperties.Hienthihuythanhtoan) { frm_HuyThanhtoan frm = new frm_HuyThanhtoan(); frm.objLuotkham = objLuotkham; frm.v_Payment_Id = Utility.Int32Dbnull(objPayment.IdThanhtoan, -1); frm.Chuathanhtoan = Chuathanhtoan; frm.ShowCancel = true; frm.ShowDialog(); if (!frm.m_blnCancel) { getData(); } } else { if (PropertyLib._ThanhtoanProperties.Nhaplydohuythanhtoan) { frm_Nhaplydohuythanhtoan _Nhaplydohuythanhtoan = new frm_Nhaplydohuythanhtoan(); _Nhaplydohuythanhtoan.ShowDialog(); if (_Nhaplydohuythanhtoan.m_blnCancel) return; ma_lydohuy = _Nhaplydohuythanhtoan.ma_lydohuy; } ActionResult actionResult = _THANHTOAN.HuyThanhtoan(Utility.Int32Dbnull(objPayment.IdThanhtoan, -1), objLuotkham, ma_lydohuy); switch (actionResult) { case ActionResult.Success: getData(); break; case ActionResult.ExistedRecord: break; case ActionResult.Error: Utility.ShowMsg("Lỗi trong quá trình hủy thông tin thanh toán", "Thông báo", MessageBoxIcon.Error); break; case ActionResult.UNKNOW: Utility.ShowMsg("Lỗi không xác định", "Thông báo", MessageBoxIcon.Error); break; case ActionResult.Cancel: break; } } } } }