private List <TK_TangGiam_TheoLoaiTS> GetData_BaoCaoTangGiamTaiSanCoDinh(DateTime From, DateTime To) { ResetDbContext(); List <TK_TangGiam_TheoLoaiTS> Data = new List <TK_TangGiam_TheoLoaiTS>(); try { var list_loaits = MyNewDbContext.LOAITAISANS.ToList(); foreach (var item in list_loaits) { TK_TangGiam_TheoLoaiTS obj = new TK_TangGiam_TheoLoaiTS(); obj.tenloai = item.ten; obj.id_loai = item.id; obj.donvitinh = item.donvitinh == null ? "" : item.donvitinh.ten; foreach (var taisan in item.taisans) { //Tính số đầu năm foreach (var ctts in taisan.cttaisans.Where( c => c.soluong > 0 && ( (c.ngay != null && c.ngay < From) ) ) ) { obj.sodaunam_soluong += ctts.soluong; obj.sodaunam_giatri += ctts.thanhtien; } var list_log_ctts = taisan.logtanggiamtaisans.Where(c => c.ngay != null && c.ngay >= From && c.ngay <= To && c.soluong > 0); //Tính tăng/giảm trong năm foreach (var ctts in list_log_ctts.Where(c => c.tang_giam == 1 || c.tang_giam == -1)) { if (ctts.tang_giam == 1) { obj.tangtrongnam_soluong += ctts.soluong; obj.tangtrongnam_giatri += ctts.thanhtien; } else if (ctts.tang_giam == -1) { obj.giamtrongnam_soluong += ctts.soluong; obj.giamtrongnam_giatri += ctts.thanhtien; } } //Tính số cuối năm obj.socuoinam_soluong = obj.sodaunam_soluong + obj.tangtrongnam_soluong - obj.giamtrongnam_soluong; obj.socuoinam_giatri = obj.sodaunam_giatri + obj.tangtrongnam_giatri - obj.giamtrongnam_giatri; } //add to list Data.Add(obj); } } catch (Exception) { return(new List <TK_TangGiam_TheoLoaiTS>()); } return(Data); }
private List<TK_TangGiam_TheoLoaiTS> GetData_BaoCaoTangGiamTaiSanCoDinh(DateTime From, DateTime To) { ResetDbContext(); List<TK_TangGiam_TheoLoaiTS> Data = new List<TK_TangGiam_TheoLoaiTS>(); try { var list_loaits = MyNewDbContext.LOAITAISANS.ToList(); foreach (var item in list_loaits) { TK_TangGiam_TheoLoaiTS obj = new TK_TangGiam_TheoLoaiTS(); obj.tenloai = item.ten; obj.id_loai = item.id; obj.donvitinh = item.donvitinh == null ? "" : item.donvitinh.ten; foreach (var taisan in item.taisans) { //Tính số đầu năm foreach (var ctts in taisan.cttaisans.Where( c => c.soluong > 0 && ( (c.ngay != null && c.ngay < From) ) ) ) { obj.sodaunam_soluong += ctts.soluong; obj.sodaunam_giatri += ctts.thanhtien; } var list_log_ctts = taisan.logtanggiamtaisans.Where(c => c.ngay != null && c.ngay >= From && c.ngay <= To && c.soluong > 0); //Tính tăng/giảm trong năm foreach (var ctts in list_log_ctts.Where(c => c.tang_giam == 1 || c.tang_giam == -1)) { if (ctts.tang_giam == 1) { obj.tangtrongnam_soluong += ctts.soluong; obj.tangtrongnam_giatri += ctts.thanhtien; } else if (ctts.tang_giam == -1) { obj.giamtrongnam_soluong += ctts.soluong; obj.giamtrongnam_giatri += ctts.thanhtien; } } //Tính số cuối năm obj.socuoinam_soluong = obj.sodaunam_soluong + obj.tangtrongnam_soluong - obj.giamtrongnam_soluong; obj.socuoinam_giatri = obj.sodaunam_giatri + obj.tangtrongnam_giatri - obj.giamtrongnam_giatri; } //add to list Data.Add(obj); } } catch (Exception) { return new List<TK_TangGiam_TheoLoaiTS>(); } return Data; }