Example #1
0
        public static bool HuyPhieuThuTien(PHIEUTHU _phieuthu)
        {
            try
            {
                using (TransactionScope ts = new TransactionScope())
                {
                    var phieuthuCu = SelectSingle(_phieuthu.PhieuThuId);
                    phieuthuCu.IsRemove     = _phieuthu.IsRemove;
                    phieuthuCu.LyDoHuy      = _phieuthu.LyDoHuy;
                    phieuthuCu.NguoiHuy     = _phieuthu.NguoiHuy;
                    phieuthuCu.ThoiGianHuy  = _phieuthu.ThoiGianHuy;
                    phieuthuCu.ModifiedDate = DateTime.Now;
                    phieuthuCu.ModifiedBy   = GlobalSettings.UserCode;
                    phieuthuCu.ModifiedLog  = GlobalSettings.SessionMyIP;
                    Database.SubmitChanges();
                    //update PHIEUGHIDANH
                    PHIEUGHIDANH _pgdanh = PhieuGhiDanhLogic.SelectSingle(_phieuthu.PhieuGhiDanhId ?? 0);
                    _pgdanh.DaDong       = _pgdanh.DaDong - _phieuthu.SoTien;
                    _pgdanh.ConNo        = _pgdanh.ConNo + _phieuthu.SoTien;
                    _pgdanh.ModifiedDate = DateTime.Now;
                    _pgdanh.ModifiedBy   = GlobalSettings.UserCode;
                    _pgdanh.ModifiedLog  = GlobalSettings.SessionMyIP;
                    ts.Complete();
                    return(true);
                }
            }
            catch (System.Exception ex)
            {
                return(false);

                O2S_Common.Logging.LogSystem.Error(ex);
            }
        }
Example #2
0
        // GET: PDT/PHIEUTHUs/Create
        public ActionResult Create(int id = 0, string id_pt = "")
        {
            ViewBag.m = "dung";
            if (id == 1)
            {
                ViewBag.m = "Sai";
            }
            ViewBag.SoPhieuDK = new SelectList(db.PHIEU_DK, "SoPhieuDK", "SoPhieuDK");
            ViewBag.conlai    = "";
            if (id_pt != "")
            {
                ViewBag.conlai = db.PHIEU_DK.Find(id_pt).SoTienConLai.ToString();
            }
            //Tạo id phiếu thu tăng dần
            int id_num = 1000;

            if (db.PHIEUTHUs.Count() != 0)
            {
                var phieu_last = db.PHIEUTHUs.OrderByDescending(p => p.SoPhieuThu).FirstOrDefault();
                id_num = Int32.Parse(phieu_last.SoPhieuThu) + 1;
            }
            ViewBag.id_phieu = id_num.ToString();

            PHIEUTHU model = new PHIEUTHU();     //Tạo mới phiếu đk

            model.SoPhieuThu = ViewBag.id_phieu; //Tạo id tự tăng cho phiếu đk
            model.NgayLap    = DateTime.Now;     //Gán ngày đk
            model.SoTienThu  = 0;
            ViewBag.NgayLap  = model.NgayLap;
            return(View(model));
        }
Example #3
0
        public String XoaPT(String maPT)
        {
            // Kiểm tra sinh viên có tồn tại không ?
            PHIEUTHU check = _pt.TimPTTheoSoPT(maPT);

            // Không tồn tại
            if (check == null)
            {
                return("Không tìm thấy dữ liệu cần xóa, xin vui lòng thử lại!");
            }
            // Tồn tại
            else
            {
                // Hàm xóa phiếu thu
                PHIEUTHU result = _pt.XoaPT(check.SoPT);
                // Kiểm tra kết quả của hàm xóa phiếu thu
                if (result == null)
                {
                    return("Đã xảy ra lỗi trong quá trình xóa phiếu thu, xin vui lòng thử lại!");
                }
                else
                {
                    return(null);
                }
            }
        }
Example #4
0
 private void btnLuuThongTin_Click(object sender, EventArgs e)
 {
     try
     {
         PHIEUTHU _phieuGD = PhieuThuLogic.SelectSingle(this.PhieuThuId);
         _phieuGD.IsRemove    = 1;
         _phieuGD.LyDoHuy     = txtLyDoHuy.Text;
         _phieuGD.NguoiHuy    = GlobalSettings.UserCode + " - " + GlobalSettings.UserName;
         _phieuGD.ThoiGianHuy = DateTime.Now;
         if (PhieuThuLogic.HuyPhieuThuTien(_phieuGD))
         {
             MessageBox.Show("Hủy phiếu thu thành công", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
             this.Close();
         }
         else
         {
             O2S_Common.Utilities.ThongBao.frmThongBao frmthongbao = new O2S_Common.Utilities.ThongBao.frmThongBao(Base.ThongBaoLable.THAO_TAC_THAT_BAI);
             frmthongbao.Show();
         }
     }
     catch (Exception ex)
     {
         O2S_Common.Logging.LogSystem.Error(ex);
     }
 }
Example #5
0
        public static void giamno(PHIEUTHU pt)
        {
            var ch = db.NCCs.Find(pt.IDCH);

            ch.TIENNO         -= pt.TIEN;
            db.Entry(ch).State = EntityState.Modified;
            db.SaveChanges();
        }
Example #6
0
        public ActionResult DeleteConfirmed(string id)
        {
            PHIEUTHU pHIEUTHU = db.PHIEUTHUs.Find(id);

            db.PHIEUTHUs.Remove(pHIEUTHU);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
        public static bool InsertQLHocPhi_Option1(PHIEUGHIDANH _phieughidanh, PHIEUTHU _phieuthu, HOCPHIHOCVIEN _hocphiHV, ref int _PhieuThuId)
        {
            try
            {
                using (TransactionScope ts = new TransactionScope())
                {
                    //update Phieu ghi danh
                    PHIEUGHIDANH _PGD_select = PhieuGhiDanhLogic.SelectSingle(_phieughidanh.PhieuGhiDanhId);
                    _PGD_select.DaDong       = _phieughidanh.DaDong;
                    _PGD_select.ConNo        = _phieughidanh.ConNo;
                    _PGD_select.ModifiedDate = DateTime.Now;
                    _PGD_select.ModifiedBy   = GlobalSettings.UserCode;
                    _PGD_select.ModifiedLog  = GlobalSettings.SessionMyIP;
                    Database.SubmitChanges();

                    //insert bang PHIEUTHU
                    if (_phieuthu != null && _phieuthu.HocVienId > 0)
                    {
                        _phieuthu.PhieuGhiDanhId = _phieughidanh.PhieuGhiDanhId;
                        _phieuthu.CreatedDate    = DateTime.Now;
                        _phieuthu.CreatedBy      = GlobalSettings.UserCode;
                        _phieuthu.CreatedLog     = GlobalSettings.SessionMyIP;
                        _phieuthu.IsRemove       = 0;
                        Database.PHIEUTHUs.InsertOnSubmit(_phieuthu);
                        Database.SubmitChanges();
                        _PhieuThuId          = _phieuthu.PhieuThuId;
                        _phieuthu.MaPhieuThu = string.Format("{0}{1:D7}", "PT", _phieuthu.PhieuThuId);
                        Database.SubmitChanges();
                    }
                    //Insert HocPhiHocVien
                    if (_phieuthu.PhieuThuId != 0)
                    {
                        _hocphiHV.PhieuThuId  = _phieuthu.PhieuThuId;
                        _hocphiHV.CreatedDate = DateTime.Now;
                        _hocphiHV.CreatedBy   = GlobalSettings.UserCode;
                        _hocphiHV.CreatedLog  = GlobalSettings.SessionMyIP;
                        _hocphiHV.IsRemove    = 0;
                        Database.HOCPHIHOCVIENs.InsertOnSubmit(_hocphiHV);
                        Database.SubmitChanges();
                    }
                    ts.Complete();
                    return(true);
                }
            }
            catch (System.Exception ex)
            {
                return(false);

                O2S_Common.Logging.LogSystem.Error(ex);
            }
        }
Example #8
0
 public static int them(PHIEUTHU pt)
 {
     try
     {
         DAO.QLTHUCHI.them(pt);
         DAO.QLDOITAC.giamno(pt);
         return(1);
     }
     catch (Exception ex)
     {
         Console.WriteLine(ex.Message);
         return(0);
     }
 }
Example #9
0
        // GET: PDT/PHIEUTHUs/Details/5
        public ActionResult Details(string id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            PHIEUTHU pHIEUTHU = db.PHIEUTHUs.Find(id);

            if (pHIEUTHU == null)
            {
                return(HttpNotFound());
            }
            return(View(pHIEUTHU));
        }
 private void btnInBienLai_Click(object sender, EventArgs e)
 {
     try
     {
         if (this.PhieuThu_Insert != 0)
         {
             PHIEUTHU _phieuthu = PhieuThuLogic.SelectSingle(this.PhieuThu_Insert);
             InBienLaiThuTien(_phieuthu);
         }
     }
     catch (Exception ex)
     {
         O2S_Common.Logging.LogSystem.Error(ex);
     }
 }
        private void repositoryItemButton_In_Click(object sender, EventArgs e)
        {
            try
            {
                var rowHandle   = gridViewPhieuThu.FocusedRowHandle;
                int _PhieuThuId = O2S_Common.TypeConvert.Parse.ToInt32(gridViewPhieuThu.GetRowCellValue(rowHandle, "PhieuThuId").ToString());

                PHIEUTHU _phieuthu = PhieuThuLogic.SelectSingle(_PhieuThuId);
                InBienLaiThuTien(_phieuthu);
            }
            catch (Exception ex)
            {
                O2S_Common.Logging.LogSystem.Error(ex);
            }
        }
        // GET: SinhVien/PHIEUTHUs/Details/5
        public ActionResult Details(string id, string id_sv)
        {
            ViewData["TenDangNhap"] = id_sv;
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            PHIEUTHU pHIEUTHU = db.PHIEUTHUs.Find(id);

            if (pHIEUTHU == null)
            {
                return(HttpNotFound());
            }
            return(View(pHIEUTHU));
        }
        public void ThemPhieuThuPost(string SoPhieuDK, string NgayLap, decimal SoTienThu, string expected)
        {
            PHIEUTHUsController pHIEUTHUsController = new PHIEUTHUsController();
            PHIEUTHU            pHIEUTHU            = new PHIEUTHU
            {
                SoPhieuThu = "",
                SoPhieuDK  = SoPhieuDK,
                NgayLap    = Convert.ToDateTime(NgayLap),
                SoTienThu  = SoTienThu,
            };

            pHIEUTHUsController.Create(0, pHIEUTHU.SoPhieuThu);
            var result = pHIEUTHUsController.Create(pHIEUTHU) as RedirectToRouteResult;

            Assert.AreEqual(result.RouteValues["action"].ToString(), expected);
        }
        private void btnLuuLai_Click(object sender, EventArgs e)
        {
            try
            {
                ValidateLuu();
                //Update PHIEUGHIDANH
                PHIEUGHIDANH _phieughidanh = PhieuGhiDanhLogic.SelectSingle(this.PhieuGhiDanhId_Select);
                _phieughidanh.DaDong = _phieughidanh.DaDong + O2S_Common.TypeConvert.Parse.ToDecimal(numNopThem.Text);

                decimal _mienggiam = _phieughidanh.MienGiam_Tien ?? 0;
                _phieughidanh.ConNo = _phieughidanh.TongTien - _phieughidanh.DaDong - _mienggiam;
                //Insert Phieu Thu
                var      rowHandle = gridViewDSHocVien.FocusedRowHandle;
                PHIEUTHU _phieuthu = new PHIEUTHU();
                _phieuthu.CoSoId         = GlobalSettings.CoSoId;
                _phieuthu.PhieuGhiDanhId = this.PhieuGhiDanhId_Select;
                _phieuthu.HocVienId      = this.HocVienId_Select;
                _phieuthu.ThoiGianThu    = DateTime.Now;
                _phieuthu.SoTien         = O2S_Common.TypeConvert.Parse.ToDecimal(numNopThem.Text);
                _phieuthu.GhiChu         = "";//gridViewDSHocVien.GetRowCellValue(rowHandle, "TenKhoaHoc").ToString();
                if (PhieuGhiDanhLogic.InsertQLHocPhi(_phieughidanh, _phieuthu, ref this.PhieuThu_Insert))
                {
                    O2S_Common.Utilities.ThongBao.frmThongBao frmthongbao = new O2S_Common.Utilities.ThongBao.frmThongBao(Base.ThongBaoLable.LUU_THANH_CONG);
                    frmthongbao.Show();
                    //
                    LoadDanhSachHocVien();
                    gridViewDSHocVien_Click(null, null);

                    PhieuThuFilter _filter = new PhieuThuFilter();
                    _filter.HocVienId      = this.HocVienId_Select;
                    _filter.PhieuGhiDanhId = this.PhieuGhiDanhId_Select;
                    LoadDanhSachPhieuThu(_filter);

                    btnInBienLai.Enabled = true;
                }
            }
            catch (ArgumentException ex)
            {
                MessageBox.Show(ex.Message, "Cảnh báo", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            catch (Exception ex)
            {
                O2S_Common.Logging.LogSystem.Error(ex);
            }
        }
Example #15
0
 public ActionResult Edit([Bind(Include = "SoPhieuThu,SoPhieuDK,NgayLap,SoTienThu")] PHIEUTHU pHIEUTHU)
 {
     try
     {
         if (ModelState.IsValid)
         {
             db.Entry(pHIEUTHU).State = EntityState.Modified;
             db.SaveChanges();
             return(RedirectToAction("Index"));
         }
         ViewBag.SoPhieuDK = new SelectList(db.PHIEU_DK, "SoPhieuDK", "SoPhieuDK", pHIEUTHU.SoPhieuDK);
         return(View(pHIEUTHU));
     }
     catch (Exception e)
     {
         return(RedirectToAction("Edit", "PHIEUTHUs", new { id = pHIEUTHU.SoPhieuThu, ed = 1 }));
     }
 }
Example #16
0
        // GET: PDT/PHIEUTHUs/Edit/5
        public ActionResult Edit(string id, int ed = 0)
        {
            ViewBag.m = "dung";
            if (ed == 1)
            {
                ViewBag.m = "sai";
            }
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            PHIEUTHU pHIEUTHU = db.PHIEUTHUs.Find(id);

            if (pHIEUTHU == null)
            {
                return(HttpNotFound());
            }
            ViewBag.SoPhieuDK = new SelectList(db.PHIEU_DK, "SoPhieuDK", "SoPhieuDK", pHIEUTHU.SoPhieuDK);
            return(View(pHIEUTHU));
        }
Example #17
0
        public static bool UpdateMaPhieuThu7So()
        {
            try
            {
                List <PHIEUTHU> _lstHocvien = (from p in GlobalSettings.Database.PHIEUTHUs
                                               select p).ToList();

                foreach (var item in _lstHocvien)
                {
                    PHIEUTHU _hocvien = SelectSingle(item.PhieuThuId);
                    _hocvien.MaPhieuThu = string.Format("{0}{1:D7}", "PT", item.PhieuThuId);
                    Database.SubmitChanges();
                }

                return(true);
            }
            catch (Exception ex)
            {
                return(false);
            }
        }
Example #18
0
        public static bool Insert(PHIEUTHU _phieuthu, ref int _phieuthuId)
        {
            try
            {
                _phieuthu.CreatedDate = DateTime.Now;
                _phieuthu.CreatedBy   = GlobalSettings.UserCode;
                _phieuthu.CreatedLog  = GlobalSettings.SessionMyIP;
                _phieuthu.IsRemove    = 0;
                _phieuthu.CoSoId      = GlobalSettings.CoSoId;
                Database.PHIEUTHUs.InsertOnSubmit(_phieuthu);
                Database.SubmitChanges();
                _phieuthuId          = _phieuthu.PhieuThuId;
                _phieuthu.MaPhieuThu = string.Format("{0}{1:D7}", "PT", _phieuthuId);
                Database.SubmitChanges();
                return(true);
            }
            catch (System.Exception ex)
            {
                return(false);

                O2S_Common.Logging.LogSystem.Error(ex);
            }
        }
Example #19
0
        public static bool Update(PHIEUTHU _phieuthu)
        {
            try
            {
                var phieuthuCu = SelectSingle(_phieuthu.PhieuThuId);

                phieuthuCu.IsRemove     = _phieuthu.IsRemove;
                phieuthuCu.LyDoHuy      = _phieuthu.LyDoHuy;
                phieuthuCu.NguoiHuy     = _phieuthu.NguoiHuy;
                phieuthuCu.ThoiGianHuy  = _phieuthu.ThoiGianHuy;
                phieuthuCu.ModifiedDate = DateTime.Now;
                phieuthuCu.ModifiedBy   = GlobalSettings.UserCode;
                phieuthuCu.ModifiedLog  = GlobalSettings.SessionMyIP;
                Database.SubmitChanges();
                return(true);
            }
            catch (Exception ex)
            {
                return(false);

                O2S_Common.Logging.LogSystem.Error(ex);
            }
        }
Example #20
0
        //Hàm thêm sinh viên
        public String ThemPT(PHIEUTHUDTO pt)
        {
            // Kiểm tra mã phiếu thu đã tồn tại chưa ?
            PHIEUTHU kiemTraPTTonTai = _pt.TimPTTheoSoPT(pt.SoPT);

            // Nếu mã chưa tồn tại
            if (kiemTraPTTonTai == null)
            {
                // Kiểm tra phiếu thu có hợp lệ không ?
                String check = kiemTraPhieuThu(pt);
                // Không hợp lệ
                if (check != null)
                {
                    return(check);
                }
                // Hợp lệ
                else
                {
                    // Hàm thêm sinh viên
                    PHIEUTHU result = _pt.ThemPT(pt);
                    // Kiếm tra kết quả của hàm thêm
                    if (result != null)
                    {
                        return(null);
                    }
                    else
                    {
                        return("Đã xảy ra lỗi trong quá trình thêm phiếu thu, xin vui lòng thử lại!");
                    }
                }
            }
            // Nếu mã đã tồn tại
            else
            {
                return("Số phiếu thu đã tồn tại!");
            }
        }
Example #21
0
        public ActionResult Create([Bind(Include = "SoPhieuThu,SoPhieuDK,NgayLap,SoTienThu")] PHIEUTHU pHIEUTHU)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    db.PHIEUTHUs.Add(pHIEUTHU);
                    db.SaveChanges();
                    return(RedirectToAction("Index"));
                }

                ViewBag.SoPhieuDK = new SelectList(db.PHIEU_DK, "SoPhieuDK", "SoPhieuDK", pHIEUTHU.SoPhieuDK);
                return(View(pHIEUTHU));
            }
            catch (Exception e)
            {
                string id_pt   = pHIEUTHU.SoPhieuDK;
                string con_lai = db.PHIEU_DK.Find(id_pt).SoTienConLai.ToString();
                int    cl;
                Int32.TryParse(con_lai, out cl);

                return(RedirectToAction("Create", "PHIEUTHUs", new { id = 1, id_pt = id_pt }));
            }
        }
Example #22
0
 public static void xoa(PHIEUTHU pt)
 {
     DAO.QLTHUCHI.xoa(pt);
 }
        private void btnLuuPhieu_Click(object sender, EventArgs e)
        {
            try
            {
                ValidateLuuPhieu();
                DOTHOC _dotHoc = null;
                if (cboDotHoc.SelectedValue != null)
                {
                    _dotHoc = DotHocLogic.SelectSingle(O2S_Common.TypeConvert.Parse.ToInt32(cboDotHoc.SelectedValue.ToString()));
                }
                //Insert bang PHIEUGHIDANH
                //insert bang PHIEUTHU; HOCPHIHOCVIEN
                //cap nhat bang HOCVIEN trang thai hoc vien = hoc vien chinh thuc + TAIKHOAN=chinh thuc
                PHIEUGHIDANH _phieughidanh = new PHIEUGHIDANH();
                _phieughidanh.HocVienId   = this.HocVienId_Select;
                _phieughidanh.KhoaHocId   = O2S_Common.TypeConvert.Parse.ToInt32(cboKhoaHoc.SelectedValue.ToString());
                _phieughidanh.LopHocId    = O2S_Common.TypeConvert.Parse.ToInt32(cboLopHoc.SelectedValue.ToString());
                _phieughidanh.NgayGhiDanh = DateTime.ParseExact(dateNgayGhiDanh.Text, "HH:mm:ss dd/MM/yyyy", CultureInfo.InvariantCulture);
                //tong tien cua lop hoc den thoi diem hien tai
                List <DOTHOC> _lstDotHoc = DotHocLogic.SelectTheoLopHoc(_phieughidanh.LopHocId ?? 0);
                _phieughidanh.HocPhiKH = _lstDotHoc != null?_lstDotHoc.Sum(o => o.HocPhi) : 0;

                _phieughidanh.SoTietKH = _lstDotHoc != null?_lstDotHoc.Sum(o => o.SoBuoiHoc) : 0;

                _phieughidanh.HocPhiHocVienKH   = O2S_Common.TypeConvert.Parse.ToDecimal(lblThanhTienKhoaHoc.Text.Replace(",", ""));
                _phieughidanh.SoTietHocVienKH   = O2S_Common.TypeConvert.Parse.ToDecimal(numSoBuoiHVDangKy.Text);
                _phieughidanh.ThuKhoanKhac      = TinhTongTien_ThuThem();
                _phieughidanh.TongTien          = O2S_Common.TypeConvert.Parse.ToDecimal(numTongTien.Text);
                _phieughidanh.DaDong            = O2S_Common.TypeConvert.Parse.ToDecimal(numDaDong.Text.Replace(",", ""));
                _phieughidanh.ConNo             = O2S_Common.TypeConvert.Parse.ToDecimal(numConNo.Text);
                _phieughidanh.MienGiam_PhanTram = O2S_Common.TypeConvert.Parse.ToInt16(numMienGiam_PTram.Value.ToString());
                _phieughidanh.MienGiam_Tien     = O2S_Common.TypeConvert.Parse.ToDecimal(numMienGiam_Tien.Text.Replace(",", ""));
                _phieughidanh.LyDoMienGiam      = txtLyDoMienGiam.Text;
                if (GlobalSettings.UserID != -1)
                {
                    _phieughidanh.NhanVienId = GlobalSettings.UserID;
                }

                //insert bang PHIEUTHU
                PHIEUTHU             _phieuthu = new PHIEUTHU();
                List <HOCPHIHOCVIEN> _lsthphv  = new List <HOCPHIHOCVIEN>();
                if (O2S_Common.TypeConvert.Parse.ToDecimal(numDaDong.Text.Replace(",", "")) > 0)
                {
                    //_phieuthuInsert.PhieuGhiDanhId = this.PhieuGhiDanhId;
                    _phieuthu.CoSoId      = GlobalSettings.CoSoId;
                    _phieuthu.HocVienId   = this.HocVienId_Select;
                    _phieuthu.ThoiGianThu = DateTime.Now;
                    _phieuthu.SoTien      = O2S_Common.TypeConvert.Parse.ToDecimal(numDaDong.Text.Replace(",", ""));
                    _phieuthu.NoiDung     = cboDotHoc.Text;
                    _phieuthu.GhiChu      = "Thu tiền đợt học: " + cboDotHoc.Text;
                    //Tien Dot Hoc
                    if (cboDotHoc.SelectedValue != null)
                    {
                        HOCPHIHOCVIEN _hphv_kh = new HOCPHIHOCVIEN()
                        {
                            Stt        = 1,
                            HocVienId  = this.HocVienId_Select,
                            DmDichVuId = O2S_Common.TypeConvert.Parse.ToInt32(cboDotHoc.SelectedValue.ToString()),
                            TenDichVu  = cboDotHoc.Text,
                            SoTien     = O2S_Common.TypeConvert.Parse.ToDecimal(lblThanhTienKhoaHoc.Text.Replace(",", "")),
                            SoLuong    = O2S_Common.TypeConvert.Parse.ToDecimal(numSoBuoiHVDangKy.Text.Replace(",", "")),
                            DonGia     = O2S_Common.TypeConvert.Parse.ToDecimal(numHocPhi.Text) / O2S_Common.TypeConvert.Parse.ToDecimal(numSoTietHoc.Text),
                            //PhieuThuId = _phieuthuId,
                            GhiChu = "",
                        };
                        _lsthphv.Add(_hphv_kh);
                    }
                    //tien khoan Khac
                    if (gridViewKhoanKhac.RowCount > 0)
                    {
                        _phieuthu.NoiDung += " và khoản khác";
                        _phieuthu.GhiChu  += " và khoản khác";
                        int _stt_thuthem = 2;
                        for (int i = 0; i < gridViewKhoanKhac.RowCount; i++)
                        {
                            object _noidungkt = gridViewKhoanKhac.GetRowCellValue(i, "noidung");
                            if (_noidungkt != null)
                            {
                                HOCPHIHOCVIEN _hphv_khac = new HOCPHIHOCVIEN()
                                {
                                    Stt        = _stt_thuthem,
                                    HocVienId  = this.HocVienId_Select,
                                    DmDichVuId = 0,
                                    TenDichVu  = gridViewKhoanKhac.GetRowCellValue(i, "noidung") == null ? "" : gridViewKhoanKhac.GetRowCellValue(i, "noidung").ToString(),
                                    SoTien     = O2S_Common.TypeConvert.Parse.ToDecimal(gridViewKhoanKhac.GetRowCellValue(i, "sotien").ToString()),
                                    SoLuong    = 1,
                                    DonGia     = O2S_Common.TypeConvert.Parse.ToDecimal(gridViewKhoanKhac.GetRowCellValue(i, "sotien").ToString()),
                                    //PhieuThuId = _phieuthuId,
                                    GhiChu = gridViewKhoanKhac.GetRowCellValue(i, "ghichu") == null ? "" : gridViewKhoanKhac.GetRowCellValue(i, "ghichu").ToString(),
                                };
                                _lsthphv.Add(_hphv_khac);
                                _stt_thuthem += 1;
                            }
                        }
                    }
                }
                //bang diem
                BANGDIEM _bangdiem = new BANGDIEM();
                _bangdiem.HocVienId = this.HocVienId_Select;
                _bangdiem.LopHocId  = O2S_Common.TypeConvert.Parse.ToInt32(cboLopHoc.SelectedValue.ToString());
                // _bangdiem.PhieuGhiDanhId = item.PhieuGhiDanhId ?? 0;
                _bangdiem.KhoaHocId = O2S_Common.TypeConvert.Parse.ToInt32(cboKhoaHoc.SelectedValue.ToString());
                _bangdiem.TrangThai = 0;//=0: xep lop; =1: dang hoc; =3: co diem; =99:ket thu

                if (PhieuGhiDanhLogic.InsertPGDFull_XepLop(_phieughidanh, _phieuthu, _lsthphv, _bangdiem, ref this.PhieuGhiDanhId, ref this.PhieuThuId))
                {
                    HOCVIEN _hv = HocVienLogic.SelectSingle(this.HocVienId_Select);
                    MessageBox.Show(string.Format("Học viên {0} đã được chuyển thành học viên chính thức với tài khoản:{1}Tên đăng nhập: {2}{3}Mật khẩu: {4}",
                                                  _hv.TenHocVien, Environment.NewLine, _hv.MaHocVien, Environment.NewLine, _hv.MaHocVien),
                                    "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    isSave = true;

                    btnLuuPhieu.Enabled = false;
                    LoadPhieuGhiDanh();

                    if (this.PhieuThuId != 0)
                    {
                        btnInBienLai.Enabled = true;
                        if (MessageBox.Show("Bạn có muốn in phiếu ghi danh vừa lưu?", "Thông báo", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                        {
                            InBienLaiThuTien_Process(this.PhieuThuId);
                        }
                    }
                }
                else
                {
                    O2S_Common.Utilities.ThongBao.frmThongBao frmthongbao = new O2S_Common.Utilities.ThongBao.frmThongBao(Base.ThongBaoLable.THEM_MOI_THAT_BAI);
                    frmthongbao.Show();
                }
            }
            catch (ArgumentException ex)
            {
                MessageBox.Show(ex.Message, "Cảnh báo", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Example #24
0
        private void SaveInfo(string strLink = "")
        {
            try
            {
                if (m_ad_id == 0)
                {
                    //insert
                    PHIEUTHU g_insert = new PHIEUTHU();

                    g_insert.PHIEUTHU_NAMEHV     = Txtname.Value;
                    g_insert.PHIEUTHU_PHONEHV    = Txtphone.Value;
                    g_insert.PHIEUTHU_NAMESCHOOL = Txtnameschool.Value;
                    g_insert.PHIEUTHU_NGANH      = Txtnganh.Value;
                    g_insert.PHIEUTHU_REASON     = txtDesc.Value;
                    g_insert.PHIEUTHU_PRICE      = Utils.CDecDef(Txtprice.Value);
                    g_insert.PHIEUTHU_PRICENAME  = Txtpricechar.Value;
                    g_insert.PHIEUTHU_STATUS     = Utils.CIntDef(Rdactive.SelectedValue);
                    g_insert.PHIEUTHU_DATE       = DateTime.Now;
                    g_insert.PHIEUTHU_NAMECREATE = Txtnamecreateph.Value;
                    DB.PHIEUTHUs.InsertOnSubmit(g_insert);

                    DB.SubmitChanges();

                    //get new id
                    var _new = DB.GetTable <PHIEUTHU>().OrderByDescending(g => g.PHIEUTHU_ID).Take(1);
                    m_ad_id = _new.Single().PHIEUTHU_ID;

                    strLink = string.IsNullOrEmpty(strLink) ? "list-phieuthu.aspx?m_ad_id=" + m_ad_id : strLink;
                }
                else
                {
                    //update
                    var g_update = DB.GetTable <PHIEUTHU>().Where(g => g.PHIEUTHU_ID == m_ad_id);

                    if (g_update.ToList().Count > 0)
                    {
                        g_update.First().PHIEUTHU_NAMEHV     = Txtname.Value;
                        g_update.First().PHIEUTHU_PHONEHV    = Txtphone.Value;
                        g_update.First().PHIEUTHU_NAMESCHOOL = Txtnameschool.Value;
                        g_update.First().PHIEUTHU_NGANH      = Txtnganh.Value;
                        g_update.First().PHIEUTHU_REASON     = txtDesc.Value;
                        g_update.First().PHIEUTHU_PRICE      = Utils.CDecDef(Txtprice.Value);
                        g_update.First().PHIEUTHU_PRICENAME  = Txtpricechar.Value;
                        g_update.First().PHIEUTHU_STATUS     = Utils.CIntDef(Rdactive.SelectedValue);
                        g_update.First().PHIEUTHU_DATE       = DateTime.Now;
                        g_update.First().PHIEUTHU_NAMECREATE = Txtnamecreateph.Value;
                        DB.SubmitChanges();

                        strLink = string.IsNullOrEmpty(strLink) ? "list-phieuthu.aspx" : strLink;
                    }
                }
            }
            catch (Exception ex)
            {
                clsVproErrorHandler.HandlerError(ex);
            }
            finally
            {
                if (!string.IsNullOrEmpty(strLink))
                {
                    Response.Redirect(strLink);
                }
            }
        }
        public static bool InsertPGDFull(PHIEUGHIDANH _phieughidanh, PHIEUTHU _phieuthu, List <HOCPHIHOCVIEN> _lsthphv, ref int _PhieuGhiDanhId, ref int _PhieuThuId)
        {
            try
            {
                //   O2S_Common.Logging.LogSystem.Error("Luu log InsertPGDFull");
                using (TransactionScope ts = new TransactionScope())
                {
                    //Phieu ghi danh
                    _phieughidanh.CoSoId      = GlobalSettings.CoSoId;
                    _phieughidanh.CreatedDate = DateTime.Now;
                    _phieughidanh.CreatedBy   = GlobalSettings.UserCode;
                    _phieughidanh.CreatedLog  = GlobalSettings.SessionMyIP;
                    _phieughidanh.IsRemove    = 0;
                    Database.PHIEUGHIDANHs.InsertOnSubmit(_phieughidanh);
                    Database.SubmitChanges();
                    _PhieuGhiDanhId = _phieughidanh.PhieuGhiDanhId;
                    _phieughidanh.MaPhieuGhiDanh = string.Format("{0}{1:D7}", "PGD", _PhieuGhiDanhId);
                    Database.SubmitChanges();

                    //insert bang PHIEUTHU
                    if (_phieuthu != null && _phieuthu.HocVienId > 0)
                    {
                        _phieuthu.PhieuGhiDanhId = _PhieuGhiDanhId;
                        _phieuthu.CreatedDate    = DateTime.Now;
                        _phieuthu.CreatedBy      = GlobalSettings.UserCode;
                        _phieuthu.CreatedLog     = GlobalSettings.SessionMyIP;
                        _phieuthu.IsRemove       = 0;
                        Database.PHIEUTHUs.InsertOnSubmit(_phieuthu);
                        Database.SubmitChanges();
                        _PhieuThuId          = _phieuthu.PhieuThuId;
                        _phieuthu.MaPhieuThu = string.Format("{0}{1:D7}", "PT", _phieuthu.PhieuThuId);
                        Database.SubmitChanges();
                    }
                    //Hocphihocvien
                    if (_lsthphv != null && _lsthphv.Count > 0)
                    {
                        foreach (var item in _lsthphv)
                        {
                            item.PhieuGhiDanhId = _PhieuGhiDanhId;
                            item.PhieuThuId     = _phieuthu.PhieuThuId;
                            item.CreatedDate    = DateTime.Now;
                            item.CreatedBy      = GlobalSettings.UserCode;
                            item.CreatedLog     = GlobalSettings.SessionMyIP;
                            item.IsRemove       = 0;
                            Database.HOCPHIHOCVIENs.InsertOnSubmit(item);
                            Database.SubmitChanges();
                        }
                    }
                    //Update HOCVIEN = Hoc vien chinh thuc
                    HOCVIEN _hocvien = HocVienLogic.SelectSingle(_phieughidanh.HocVienId ?? 0);
                    _hocvien.LOAIHOCVIEN = LoaiHocVienLogic.Select(KeySetting.LOAIHOCVIEN_CHINHTHUC);
                    //Database.SubmitChanges();
                    //Update TAIKHOAN = được sử dụng
                    TAIKHOAN _taikhoan = TaiKhoanLogic.SelectTheoTenDangNhap(_hocvien.MaHocVien);
                    _taikhoan.IsRemove = 0;
                    Database.SubmitChanges();
                    ts.Complete();
                    return(true);
                }
            }
            catch (Exception ex)
            {
                O2S_Common.Logging.LogSystem.Error(ex);
                return(false);
            }
        }
        public static bool InsertPGDFull_XepLop(PHIEUGHIDANH _phieughidanh, PHIEUTHU _phieuthu, List <HOCPHIHOCVIEN> _lsthphv, BANGDIEM _bangdiem, ref int _PhieuGhiDanhId, ref int _PhieuThuId)
        {
            try
            {
                //   O2S_Common.Logging.LogSystem.Error("Luu log InsertPGDFull");
                using (TransactionScope ts = new TransactionScope())
                {
                    //Phieu ghi danh
                    _phieughidanh.CoSoId      = GlobalSettings.CoSoId;
                    _phieughidanh.CreatedDate = DateTime.Now;
                    _phieughidanh.CreatedBy   = GlobalSettings.UserCode;
                    _phieughidanh.CreatedLog  = GlobalSettings.SessionMyIP;
                    _phieughidanh.IsRemove    = 0;
                    Database.PHIEUGHIDANHs.InsertOnSubmit(_phieughidanh);
                    Database.SubmitChanges();
                    _PhieuGhiDanhId = _phieughidanh.PhieuGhiDanhId;
                    _phieughidanh.MaPhieuGhiDanh = string.Format("{0}{1:D7}", "PGD", _PhieuGhiDanhId);
                    Database.SubmitChanges();

                    //insert bang PHIEUTHU
                    if (_phieuthu != null && _phieuthu.HocVienId > 0)
                    {
                        _phieuthu.PhieuGhiDanhId = _PhieuGhiDanhId;
                        _phieuthu.CreatedDate    = DateTime.Now;
                        _phieuthu.CreatedBy      = GlobalSettings.UserCode;
                        _phieuthu.CreatedLog     = GlobalSettings.SessionMyIP;
                        _phieuthu.IsRemove       = 0;
                        Database.PHIEUTHUs.InsertOnSubmit(_phieuthu);
                        Database.SubmitChanges();
                        _PhieuThuId          = _phieuthu.PhieuThuId;
                        _phieuthu.MaPhieuThu = string.Format("{0}{1:D7}", "PT", _phieuthu.PhieuThuId);
                        Database.SubmitChanges();
                    }
                    //Hocphihocvien
                    if (_lsthphv != null && _lsthphv.Count > 0)
                    {
                        foreach (var item in _lsthphv)
                        {
                            item.PhieuGhiDanhId = _PhieuGhiDanhId;
                            item.PhieuThuId     = _phieuthu.PhieuThuId;
                            item.CreatedDate    = DateTime.Now;
                            item.CreatedBy      = GlobalSettings.UserCode;
                            item.CreatedLog     = GlobalSettings.SessionMyIP;
                            item.IsRemove       = 0;
                            Database.HOCPHIHOCVIENs.InsertOnSubmit(item);
                            Database.SubmitChanges();
                        }
                    }
                    //insert BANGDIEM
                    if (_bangdiem.LopHocId != 0)
                    {
                        _bangdiem.PhieuGhiDanhId = _PhieuGhiDanhId;
                        _bangdiem.CreatedDate    = DateTime.Now;
                        _bangdiem.CreatedBy      = GlobalSettings.UserCode;
                        _bangdiem.CreatedLog     = GlobalSettings.SessionMyIP;
                        _bangdiem.IsRemove       = 0;
                        Database.BANGDIEMs.InsertOnSubmit(_bangdiem);
                        Database.SubmitChanges();
                        int _id = _bangdiem.BangDiemId;

                        //Insert Bang diem chi tiet
                        List <KHOAHOC_MONHOC> _khmh = KhoaHocMonHocLogic.SelectTheoKhoaHoc(_bangdiem.KhoaHocId);
                        foreach (var item in _khmh)
                        {
                            BANGDIEMCHITIET _chitiet = new BANGDIEMCHITIET();
                            _chitiet.BangDiemId = _id;
                            _chitiet.MonHocId   = item.MonHocId ?? 0;
                            _chitiet.TenMonHoc  = item.TenMonHoc;
                            _chitiet.IsRemove   = 0;
                            //_chitiet.CreatedDate = DateTime.Now;
                            //_chitiet.CreatedBy = GlobalSettings.UserCode;
                            //_chitiet.CreatedLog = GlobalSettings.SessionMyIP;
                            Database.BANGDIEMCHITIETs.InsertOnSubmit(_chitiet);
                            Database.SubmitChanges();
                        }

                        //Update  SiSo cua LOPHOC
                        LOPHOC _lophoc = LopHocLogic.SelectSingle(_bangdiem.LopHocId);
                        LopHocLogic.Update(new LOPHOC()
                        {
                            //LopHocId = _lophoc.LopHocId,
                            //TenLopHoc = _lophoc.TenLopHoc,
                            //NgayBatDau = _lophoc.NgayBatDau,
                            //NgayKetThuc = _lophoc.NgayKetThuc,
                            //SiSoToiDa = _lophoc.SiSoToiDa,
                            SiSo = _lophoc.SiSo + 1,
                            //KhoaHocId = _lophoc.KhoaHocId,
                            //IsLock = _lophoc.IsLock
                        });
                    }

                    //Update HOCVIEN = Hoc vien chinh thuc
                    HOCVIEN _hocvien = HocVienLogic.SelectSingle(_phieughidanh.HocVienId ?? 0);
                    _hocvien.LOAIHOCVIEN = LoaiHocVienLogic.Select(KeySetting.LOAIHOCVIEN_CHINHTHUC);
                    //Database.SubmitChanges();
                    //Update TAIKHOAN = được sử dụng
                    TAIKHOAN _taikhoan = TaiKhoanLogic.SelectTheoTenDangNhap(_hocvien.MaHocVien);
                    _taikhoan.IsRemove = 0;
                    Database.SubmitChanges();
                    ts.Complete();
                    return(true);
                }
            }
            catch (Exception ex)
            {
                O2S_Common.Logging.LogSystem.Error(ex);
                return(false);
            }
        }
        private void SaveInfo(string strLink = "")
        {
            try
            {



                if (m_ad_id == 0)
                {
                    //insert
                    PHIEUTHU g_insert = new PHIEUTHU();

                    g_insert.PHIEUTHU_NAMEHV = Txtname.Value;
                    g_insert.PHIEUTHU_PHONEHV = Txtphone.Value;
                    g_insert.PHIEUTHU_NAMESCHOOL = Txtnameschool.Value;
                    g_insert.PHIEUTHU_NGANH = Txtnganh.Value;
                    g_insert.PHIEUTHU_REASON = txtDesc.Value;
                    g_insert.PHIEUTHU_PRICE = Utils.CDecDef(Txtprice.Value);
                    g_insert.PHIEUTHU_PRICENAME = Txtpricechar.Value;
                    g_insert.PHIEUTHU_STATUS = Utils.CIntDef(Rdactive.SelectedValue);
                    g_insert.PHIEUTHU_DATE = DateTime.Now;
                    g_insert.PHIEUTHU_NAMECREATE = Txtnamecreateph.Value;
                    DB.PHIEUTHUs.InsertOnSubmit(g_insert);

                    DB.SubmitChanges();

                    //get new id
                    var _new = DB.GetTable<PHIEUTHU>().OrderByDescending(g => g.PHIEUTHU_ID).Take(1);
                    m_ad_id = _new.Single().PHIEUTHU_ID;

                    strLink = string.IsNullOrEmpty(strLink) ? "list-phieuthu.aspx?m_ad_id=" + m_ad_id : strLink;
                }
                else
                {
                    //update
                    var g_update = DB.GetTable<PHIEUTHU>().Where(g => g.PHIEUTHU_ID == m_ad_id);

                    if (g_update.ToList().Count > 0)
                    {
                        g_update.First().PHIEUTHU_NAMEHV = Txtname.Value;
                        g_update.First().PHIEUTHU_PHONEHV = Txtphone.Value;
                        g_update.First().PHIEUTHU_NAMESCHOOL = Txtnameschool.Value;
                        g_update.First().PHIEUTHU_NGANH = Txtnganh.Value;
                        g_update.First().PHIEUTHU_REASON = txtDesc.Value;
                        g_update.First().PHIEUTHU_PRICE = Utils.CDecDef(Txtprice.Value);
                        g_update.First().PHIEUTHU_PRICENAME = Txtpricechar.Value;
                        g_update.First().PHIEUTHU_STATUS = Utils.CIntDef(Rdactive.SelectedValue);
                        g_update.First().PHIEUTHU_DATE = DateTime.Now;
                        g_update.First().PHIEUTHU_NAMECREATE = Txtnamecreateph.Value;
                        DB.SubmitChanges();

                        strLink = string.IsNullOrEmpty(strLink) ? "list-phieuthu.aspx" : strLink;
                    }
                }


            }
            catch (Exception ex)
            {
                clsVproErrorHandler.HandlerError(ex);
            }
            finally
            {
                if (!string.IsNullOrEmpty(strLink))
                { Response.Redirect(strLink); }
            }
        }
Example #28
0
 public static void them(PHIEUTHU pt)
 {
     db.PHIEUTHUs.Add(pt);
     db.SaveChanges();
 }
Example #29
0
 public static void xoa(PHIEUTHU pt)
 {
     db.PHIEUTHUs.Remove(pt);
     db.SaveChanges();
 }
        private void InBienLaiThuTien(PHIEUTHU _phieuthu)
        {
            try
            {
                SplashScreenManager.ShowForm(typeof(O2S_Common.Utilities.ThongBao.WaitForm_Wait));

                PHIEUGHIDANH _phieughidanh = PhieuGhiDanhLogic.SelectSingle(_phieuthu.PhieuGhiDanhId ?? 0);


                var rowHandle = gridViewDSHocVien.FocusedRowHandle;
                List <reportExcelDTO> thongTinThem = new List <reportExcelDTO>();

                reportExcelDTO item_MAPHIEUTHU = new reportExcelDTO();
                item_MAPHIEUTHU.name  = "MAPHIEUTHU";
                item_MAPHIEUTHU.value = _phieuthu.MaPhieuThu;
                thongTinThem.Add(item_MAPHIEUTHU);

                reportExcelDTO item_MAHOCVIEN = new reportExcelDTO();
                item_MAHOCVIEN.name  = "MAHOCVIEN";
                item_MAHOCVIEN.value = lblMaHocVien.Text;
                thongTinThem.Add(item_MAHOCVIEN);

                reportExcelDTO item_TENHOCVIEN = new reportExcelDTO();
                item_TENHOCVIEN.name  = "TENHOCVIEN";
                item_TENHOCVIEN.value = lblTenHocVien.Text;
                thongTinThem.Add(item_TENHOCVIEN);

                reportExcelDTO item_DIACHI = new reportExcelDTO();
                item_DIACHI.name  = "DIACHI";
                item_DIACHI.value = gridViewDSHocVien.GetRowCellValue(rowHandle, "DiaChi").ToString();
                thongTinThem.Add(item_DIACHI);

                reportExcelDTO item_KHOAHOC = new reportExcelDTO();
                item_KHOAHOC.name  = "KHOAHOC";
                item_KHOAHOC.value = gridViewDSHocVien.GetRowCellValue(rowHandle, "TenKhoaHoc").ToString();
                thongTinThem.Add(item_KHOAHOC);

                DateTime       _namsinh     = O2S_Common.TypeConvert.Parse.ToDateTime(gridViewDSHocVien.GetRowCellValue(rowHandle, "NgaySinh").ToString());
                reportExcelDTO item_NAMSINH = new reportExcelDTO();
                item_NAMSINH.name  = "NAMSINH";
                item_NAMSINH.value = _namsinh.ToString("dd/MM/yyyy");
                thongTinThem.Add(item_NAMSINH);

                reportExcelDTO item_LOPHOC = new reportExcelDTO();
                item_LOPHOC.name  = "LOPHOC";
                item_LOPHOC.value = gridViewDSHocVien.GetRowCellValue(rowHandle, "TenLopHoc").ToString();
                thongTinThem.Add(item_LOPHOC);
                //
                reportExcelDTO item_TONGTIEN = new reportExcelDTO()
                {
                    name  = "TONGTIEN",
                    value = O2S_Common.Number.Convert.NumberToString(_phieughidanh.TongTien ?? 0, 0) + " đ",
                };
                thongTinThem.Add(item_TONGTIEN);

                reportExcelDTO item_MIENGIAM_TIEN = new reportExcelDTO()
                {
                    name  = "MIENGIAM_TIEN",
                    value = O2S_Common.Number.Convert.NumberToString(_phieughidanh.MienGiam_Tien ?? 0, 0) + " đ",
                };
                thongTinThem.Add(item_MIENGIAM_TIEN);

                reportExcelDTO item_CONNO = new reportExcelDTO()
                {
                    name  = "CONNO",
                    value = O2S_Common.Number.Convert.NumberToString(_phieughidanh.ConNo ?? 0, 0) + " đ",
                };
                thongTinThem.Add(item_CONNO);

                reportExcelDTO item_SOTIEN = new reportExcelDTO()
                {
                    name  = "SOTIEN",
                    value = O2S_Common.Number.Convert.NumberToString(_phieuthu.SoTien ?? 0, 0) + " đ",
                };
                thongTinThem.Add(item_SOTIEN);

                reportExcelDTO item_sotienchu = new reportExcelDTO();
                item_sotienchu.name  = "SOTIENBANGCHU";
                item_sotienchu.value = O2S_Common.Strings.Convert.CurrencyToVneseString(O2S_Common.Number.Convert.NumberToNumberRoundAuto(_phieuthu.SoTien ?? 0, 0).ToString());
                thongTinThem.Add(item_sotienchu);

                //
                DataTable dataExport = new DataTable();
                dataExport.Columns.Add("STT", typeof(string));
                dataExport.Columns.Add("KHOANTHU", typeof(string));
                dataExport.Columns.Add("SOTIEN", typeof(string));
                dataExport.Columns.Add("GHICHU", typeof(string));
                HocPhiHocVienFilter _filter = new HocPhiHocVienFilter()
                {
                    PhieuThuId = _phieuthu.PhieuThuId,
                    HocVienId  = this.HocVienId_Select,
                };
                List <HocPhiHocVien_PlusDTO> _lsthocPhiHV = HocPhiHocVienLogic.Select(_filter);
                if (_lsthocPhiHV != null && _lsthocPhiHV.Count > 0)
                {
                    _lsthocPhiHV.OrderBy(o => o.Stt).ToList();
                    for (int i = 0; i < _lsthocPhiHV.Count; i++)
                    {
                        DataRow newRow_khac = dataExport.NewRow();
                        newRow_khac["STT"]      = _lsthocPhiHV[i].Stt;
                        newRow_khac["KHOANTHU"] = _lsthocPhiHV[i].TenDichVu == null ? "" : _lsthocPhiHV[i].TenDichVu;
                        newRow_khac["SOTIEN"]   = O2S_Common.Number.Convert.NumberToString(O2S_Common.TypeConvert.Parse.ToDecimal(_lsthocPhiHV[i].SoTien.ToString()), 0);
                        newRow_khac["GHICHU"]   = _lsthocPhiHV[i].GhiChu == null ? "" : _lsthocPhiHV[i].GhiChu;
                        dataExport.Rows.Add(newRow_khac);
                    }
                }

                string fileTemplatePath = LuaChonTemplateInBienLai(_lsthocPhiHV);

                Utilities.Prints.PrintPreview.ShowPrintPreview_UsingExcelTemplate(fileTemplatePath, thongTinThem, dataExport);
            }
            catch (Exception ex)
            {
                O2S_Common.Logging.LogSystem.Error(ex);
            }
            SplashScreenManager.CloseForm();
        }
        private void btnLuuLai_Click(object sender, EventArgs e)
        {
            try
            {
                ValidateLuu();
                //Update PHIEUGHIDANH: dadong
                PHIEUGHIDANH _phieughidanh = PhieuGhiDanhLogic.SelectSingle(this.PhieuGhiDanhId_Select);
                _phieughidanh.DaDong = _phieughidanh.DaDong + O2S_Common.TypeConvert.Parse.ToDecimal(numDaDong.Text);
                //
                _phieughidanh.SoTietKH        = _phieughidanh.SoTietKH + O2S_Common.TypeConvert.Parse.ToDecimal(numSoTietHoc.Text);//so tiet tren dot hoc da chon
                _phieughidanh.HocPhiKH        = _phieughidanh.HocPhiKH + O2S_Common.TypeConvert.Parse.ToDecimal(numHocPhi.Text);
                _phieughidanh.HocPhiHocVienKH = _phieughidanh.HocPhiHocVienKH + O2S_Common.TypeConvert.Parse.ToDecimal(numTongTien.Text);
                _phieughidanh.SoTietHocVienKH = _phieughidanh.SoTietHocVienKH + O2S_Common.TypeConvert.Parse.ToDecimal(numSoBuoiHVDangKy.Text);

                decimal _mienggiam = _phieughidanh.MienGiam_Tien ?? 0;
                _phieughidanh.ConNo = _phieughidanh.TongTien - _phieughidanh.DaDong - _mienggiam;


                //Insert Phieu Thu
                var      rowHandle = gridViewDSHocVien.FocusedRowHandle;
                PHIEUTHU _phieuthu = new PHIEUTHU();
                _phieuthu.CoSoId         = GlobalSettings.CoSoId;
                _phieuthu.PhieuGhiDanhId = this.PhieuGhiDanhId_Select;
                _phieuthu.HocVienId      = this.HocVienId_Select;
                _phieuthu.ThoiGianThu    = DateTime.Now;
                _phieuthu.SoTien         = O2S_Common.TypeConvert.Parse.ToDecimal(numDaDong.Text);
                _phieuthu.NoiDung        = cboDotHoc.Text;
                _phieuthu.GhiChu         = "Thu tiền đợt học: " + cboDotHoc.Text;
                //Hoc phi hoc vien
                DOTHOC _dothoc = DotHocLogic.SelectSingle(O2S_Common.TypeConvert.Parse.ToInt32(cboDotHoc.SelectedValue.ToString()));

                decimal _donGia = _dothoc.HocPhi ?? 0;
                if (_dothoc.SoBuoiHoc != null && _dothoc.SoBuoiHoc != 0)
                {
                    _donGia = _dothoc.HocPhi / _dothoc.SoBuoiHoc ?? 1;
                }

                HOCPHIHOCVIEN _hocphiHV = new HOCPHIHOCVIEN()
                {
                    PhieuGhiDanhId = this.PhieuGhiDanhId_Select,
                    HocVienId      = this.HocVienId_Select,
                    Stt            = 1,
                    DmDichVuId     = _dothoc.DotHocId,
                    TenDichVu      = cboDotHoc.Text,
                    SoTien         = O2S_Common.TypeConvert.Parse.ToDecimal(numTongTien.Text),
                    SoLuong        = O2S_Common.TypeConvert.Parse.ToDecimal(numSoBuoiHVDangKy.Text),
                    DonGia         = _donGia,
                    PhieuThuId     = 0,
                    GhiChu         = "",
                };
                if (PhieuGhiDanhLogic.InsertQLHocPhi_Option1(_phieughidanh, _phieuthu, _hocphiHV, ref this.PhieuThu_Insert))
                {
                    O2S_Common.Utilities.ThongBao.frmThongBao frmthongbao = new O2S_Common.Utilities.ThongBao.frmThongBao(Base.ThongBaoLable.LUU_THANH_CONG);
                    frmthongbao.Show();
                    //
                    LoadDanhSachHocVien();
                    gridViewDSHocVien_Click(null, null);

                    PhieuThuFilter _filter = new PhieuThuFilter();
                    _filter.HocVienId      = this.HocVienId_Select;
                    _filter.PhieuGhiDanhId = this.PhieuGhiDanhId_Select;
                    LoadDanhSachPhieuThu(_filter);

                    btnInBienLai.Enabled = true;
                }
            }
            catch (ArgumentException ex)
            {
                MessageBox.Show(ex.Message, "Cảnh báo", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            catch (Exception ex)
            {
                O2S_Common.Logging.LogSystem.Error(ex);
            }
        }