public static decimal TinhHocPhiThangNay(HocPhi hocPhi, List <ChiTietHocPhi> list) { decimal tong = 0; int soNgayDiHoc = TreBLL.GetSoNgayDiHocTrongThang(hocPhi.MaTre, hocPhi.Thang, hocPhi.Nam); foreach (ChiTietHocPhi chiTiet in list) { DanhMucChiPhi danhMuc = DanhMucChiPhiBLL.GetInfoDanhMuc(chiTiet.MaDanhMuc); //cap nhat lai so tien trong list neu danh muc chi phi nay tinh tien theo so ngay di hoc tong += danhMuc.TinhTheoSoNgayDiHoc == 1 ? danhMuc.SoTien * soNgayDiHoc : chiTiet.SoTien; } return(tong); }
public static void CapNhatHocPhi(HocPhi hocPhi, List <ChiTietHocPhi> listChiTiet) { int soNgayDiHoc = TreBLL.GetSoNgayDiHocTrongThang(hocPhi.MaTre, hocPhi.Thang, hocPhi.Nam); //Xoa tat ca cac chi tiet hoc phi hien co foreach (ChiTietHocPhi chiTiet in GetChiTietHocPhi(hocPhi.MaHocPhi)) { HocPhiDAL.XoaChiTietHocPhi(chiTiet); } //Luu cac chi tiet hoc phi vua moi cap nhat foreach (ChiTietHocPhi chiTiet in listChiTiet) { DanhMucChiPhi danhMuc = DanhMucChiPhiBLL.GetInfoDanhMuc(chiTiet.MaDanhMuc); ChiTietHocPhi chiTietHocPhi = (ChiTietHocPhi)chiTiet.Clone(); //cap nhat lai so tien trong list neu danh muc chi phi nay tinh tien theo so ngay di hoc chiTietHocPhi.SoTien = danhMuc.TinhTheoSoNgayDiHoc == 1 ? danhMuc.SoTien * soNgayDiHoc : chiTiet.SoTien; chiTietHocPhi.MaHocPhi = hocPhi.MaHocPhi; HocPhiDAL.ThemChiTietHocPhi(chiTietHocPhi); } //luu hoc phi HocPhiDAL.CapNhatHocPhi(hocPhi); }