public void ExecuteAfter() { db = _data.DbData; //kiem tra co chon lop khong? DataView dv = new DataView(_data.DsData.Tables[0]); dv.RowFilter = "Chon = 1"; if (dv.Count == 0) { return; } //hien form lay ma lop - neu bo qua thi khong cho luu du lieu FrmChonLop frm = new FrmChonLop(); if (frm.ShowDialog() == System.Windows.Forms.DialogResult.Cancel) { XtraMessageBox.Show("Danh sách học viên đã chọn chưa được xếp lớp,\nvì vậy số liệu này vẫn chưa lưu", Config.GetValue("PackageName").ToString()); _info.Result = false; return; } //insert vao bang hoc vien dang ky //tim nguon phu hop DataRow drLop = frm.DrLop; string malop = drLop["MaLop"].ToString(); string manlop = drLop["MaNLop"].ToString(); string macn = drLop["MaCN"].ToString(); string magh = drLop["MaGioHoc"].ToString(); string sb = drLop["SoBuoi"].ToString(); DateTime ngaydk = frm.NgayDK; DataTable dt = TaoBang(); foreach (DataRowView drv in dv) { string hvtvid = drv["MaHV"].ToString(); string cndk = drv["MaCN"].ToString(); DataRow drNguon = NguonHV(hvtvid); int nguon = 0; decimal tienbl = 0; decimal tiencl = 0; if (drNguon != null) { tienbl = decimal.Parse(drNguon["BLSoTien"].ToString()); tiencl = decimal.Parse(drNguon["ConLai"].ToString()); if (tienbl == 0) { nguon = 1; } else { nguon = 2; } } DataRow dr = dt.NewRow(); dr["NgayDK"] = ngaydk; dr["HVTVID"] = hvtvid; dr["MaLop"] = malop; dr["MaNLop"] = manlop; dr["MaGioHoc"] = magh; dr["SoBuoi"] = sb; dr["MaCNDK"] = cndk; dr["MaCNHoc"] = macn; dr["TongHP"] = drv["HocPhi"]; dr["KhuyenHoc"] = drv["KhuyenHoc"]; dr["GiamHP"] = drv["TLGiam"]; dr["TienHP"] = drv["HPThuc"]; dr["ConLaiNL"] = drv["ConNo"]; dr["NguonHV"] = nguon; if (drNguon != null) { dr["MaHVDK"] = drNguon["MaHV"]; } dr["ConLai"] = tiencl; dr["BLSoTien"] = tienbl; dr["SoPT"] = db.GetValue("select SoPT from MTNL where MTNLID = '" + drv["HVID"].ToString() + "'"); dr["MTNLID"] = drv["HVID"]; dt.Rows.Add(dr); } FrmDSDK frmdk = new FrmDSDK(dt, _data); if (frmdk.ShowDialog() == System.Windows.Forms.DialogResult.Cancel) { XtraMessageBox.Show("Danh sách học viên đã chọn chưa được xếp lớp,\nvì vậy số liệu này vẫn chưa lưu", Config.GetValue("PackageName").ToString()); _info.Result = false; return; } //tu dong xoa ra khoi dsdata for (int i = dv.Count - 1; i >= 0; i--) { dv[i].Row.Delete(); } _data.DsData.AcceptChanges(); }
public void ExecuteAfter() { db = _data.DbData; //kiem tra co chon lop khong? DataView dv = new DataView(_data.DsData.Tables[0]); dv.RowFilter = "Chon = 1"; if (dv.Count == 0) { return; } //hien form lay ma lop - neu bo qua thi khong cho luu du lieu FrmChonLop frm = new FrmChonLop(); if (frm.ShowDialog() == System.Windows.Forms.DialogResult.Cancel) { XtraMessageBox.Show("Danh sách học viên đã chọn chưa được xếp lớp,\nvì vậy số liệu này vẫn chưa lưu", Config.GetValue("PackageName").ToString()); _info.Result = false; return; } //insert vao bang hoc vien dang ky //tim nguon phu hop DataRow drLop = frm.DrLop; string malop = drLop["MaLop"].ToString(); string manlop = drLop["MaNLop"].ToString(); string macn = drLop["MaCN"].ToString(); string magh = drLop["MaGioHoc"].ToString(); decimal sb = Decimal.Parse(drLop["SoBuoi"].ToString()); DateTime ngaydk = frm.NgayDK; DataTable dt = TaoBang(); foreach (DataRowView drv in dv) { string hvtvid = drv["MaHV"].ToString(); string cndk = drv["MaCN"].ToString(); int nguon = 0; decimal tienbl = 0; decimal tiencl = 0; decimal sobuoibl = 0; DataRow drNguon = null; //kiem tra danh sach cho lop tu chuyen phi if (drv["SoBuoiDH"].ToString() == "") //khong phai truong hop chuyen phi { drNguon = NguonHV(hvtvid); if (drNguon != null) { tienbl = decimal.Parse(drNguon["BLSoTien"].ToString()); tiencl = decimal.Parse(drNguon["ConLai"].ToString()); sobuoibl = decimal.Parse(drNguon["SoBuoiBL"].ToString()); if (Boolean.Parse(drNguon["IsBL"].ToString())) { nguon = 2; } else { nguon = 1; } } } DataRow dr = dt.NewRow(); dr["NgayTN"] = drv["NgayDK"]; dr["NgayDK"] = ngaydk; dr["HVTVID"] = hvtvid; dr["MaLop"] = malop; dr["MaNLop"] = manlop; dr["MaGioHoc"] = magh; dr["SoBuoi"] = sb; dr["MaCNDK"] = cndk; dr["MaCNHoc"] = macn; dr["MaHVTV"] = drv["MaHVTV"]; dr["TongHP"] = drv["HocPhi"]; dr["ThucThu"] = drv["STDaNop"]; dr["KhuyenHoc"] = drv["KhuyenHoc"]; dr["GiamHP"] = drv["TLGiam"]; dr["TienHP"] = drv["HPThuc"].ToString() == "" ? 0 : drv["HPThuc"]; dr["ConLaiNL"] = drv["ConNo"].ToString() == "" ? 0 : drv["ConNo"]; dr["NguonHV"] = nguon; if (drNguon != null) { dr["MaHVDK"] = drNguon["MaHV"]; } dr["ConLai"] = tiencl; dr["BLSoTien"] = tienbl; dr["SoBuoiBL"] = sobuoibl; if (drv["HVID"].ToString() != "") //chuyen tu bao luu sang { dr["SoPT"] = db.GetValue("select SoPT from MTNL where MTNLID = '" + drv["HVID"].ToString() + "'").ToString(); } dr["MTNLID"] = drv["HVID"]; dr["SoPTTC"] = db.GetValue("select SoPTTC from MTNL where MTNLID = '" + dr["MTNLID"].ToString() + "'").ToString(); if (dr["SoPTTC"].ToString() != "") { DataTable pt = new DataTable(); pt = db.GetDataTable(string.Format("SELECT MaPhi FROM MT11 m INNER JOIN DT11 d ON m.MT11ID = d.MT11ID WHERE SoCT = '{0}'", dr["SoPTTC"].ToString())); if (pt.Rows[0]["MaPhi"].ToString() != manlop) { dr["SoPTTC"] = ""; } } dt.Rows.Add(dr); // số buổi được học if (drv["SoBuoiDH"].ToString() == "") //khong phai truong hop chuyen phi { decimal sbdh; decimal SoTien1B = decimal.Parse(dr["TienHP"].ToString()) / sb; decimal tiendn = decimal.Parse(dr["TienHP"].ToString()) - decimal.Parse(dr["PhaiNop"].ToString()); if (tiendn / SoTien1B > sb) { sbdh = sb; } else { sbdh = tiendn / SoTien1B; } dr["SoBuoiDH"] = Math.Round(sbdh, 0); } else { dr["SoBuoiDH"] = drv["SoBuoiDH"]; dr["BLTruoc"] = drv["BLTruoc"]; } // ngày học cuối DateTime NgayKT = TinhNgayKT(malop, ngaydk, Convert.ToInt32(dr["SoBuoiDH"].ToString())); if (NgayKT != DateTime.MinValue) { dr["NgayHocCuoi"] = NgayKT; } } FrmDSDK frmdk = new FrmDSDK(dt, _data); if (frmdk.ShowDialog() == System.Windows.Forms.DialogResult.Cancel) { XtraMessageBox.Show("Danh sách học viên đã chọn chưa được xếp lớp,\nvì vậy số liệu này vẫn chưa lưu", Config.GetValue("PackageName").ToString()); _info.Result = false; return; } //tu dong xoa ra khoi dsdata for (int i = dv.Count - 1; i >= 0; i--) { dv[i].Row.Delete(); } _data.DsData.AcceptChanges(); }