public async Task <ChiTietPhieuDatSan> UpdateById(int id, ChiTietPhieuDatSanForUpdateDto chiTietPhieuDatSan) { var phieuDatSan = await _context.DanhSachPhieuDatSan.FirstOrDefaultAsync(x => x.MaPhieuDatSan == chiTietPhieuDatSan.MaPhieuDatSan); double daThanhToan = 0; var danhSachChiTietPhieuDatSan = _context.DanhSachChiTietPhieuDatSan .Where(x => x.MaPhieuDatSan == phieuDatSan.MaPhieuDatSan && x.MaChiTietPDS != id); foreach (var item in danhSachChiTietPhieuDatSan) { daThanhToan = daThanhToan + item.TienCoc; } daThanhToan = daThanhToan + chiTietPhieuDatSan.TienCoc; if (daThanhToan == 0) { phieuDatSan.TrangThai = 0; } else if (daThanhToan < phieuDatSan.TongTien) { phieuDatSan.TrangThai = 1; } else if (daThanhToan >= phieuDatSan.TongTien) { phieuDatSan.TrangThai = 2; } _context.DanhSachPhieuDatSan.Update(phieuDatSan); await _context.SaveChangesAsync(); var oldRecord = await _context.DanhSachChiTietPhieuDatSan.AsNoTracking().FirstOrDefaultAsync(x => x.MaChiTietPDS == id); var chiTietPhieuDatSanToUpdateById = new ChiTietPhieuDatSan { MaChiTietPDS = id, MaPhieuDatSan = chiTietPhieuDatSan.MaPhieuDatSan, MaSanBong = chiTietPhieuDatSan.MaSanBong, ThoiGianBatDau = chiTietPhieuDatSan.ThoiGianBatDau, ThoiGianKetThuc = chiTietPhieuDatSan.ThoiGianKetThuc, NgayDat = chiTietPhieuDatSan.NgayDat, TienCoc = chiTietPhieuDatSan.TienCoc, ThanhTien = chiTietPhieuDatSan.ThanhTien, ThoiGianTao = DateTime.Now, ThoiGianCapNhat = DateTime.Now }; _context.DanhSachChiTietPhieuDatSan.Update(chiTietPhieuDatSanToUpdateById); await _context.SaveChangesAsync(); return(chiTietPhieuDatSanToUpdateById); }
public async Task <ICollection <ChiTietPhieuDatSan> > CreateMultiple(ICollection <ChiTietPhieuDatSanForCreateMultipleDto> danhSachChiTietPhieuDatSan) { var result = await _context.DanhSachChiTietPhieuDatSan.OrderByDescending(x => x.MaChiTietPDS).FirstOrDefaultAsync(); var maChiTietPDS = 1; if (result == null) { maChiTietPDS = 1; } else { maChiTietPDS = result.MaChiTietPDS + 1; } ICollection <ChiTietPhieuDatSan> temp = new List <ChiTietPhieuDatSan>(); for (int i = 0; i < danhSachChiTietPhieuDatSan.Count; i++) { var chiTietPDS = danhSachChiTietPhieuDatSan.ElementAt(i); var phieuDatSan = await _context.DanhSachPhieuDatSan.FirstOrDefaultAsync(x => x.MaPhieuDatSan == chiTietPDS.MaPhieuDatSan); double daThanhToan = 0; var danhSachChiTietPhieuDatSan_PhieuDatSan = _context.DanhSachChiTietPhieuDatSan.Where(x => x.MaPhieuDatSan == phieuDatSan.MaPhieuDatSan); foreach (var item in danhSachChiTietPhieuDatSan_PhieuDatSan) { daThanhToan = daThanhToan + item.TienCoc; } daThanhToan = daThanhToan + chiTietPDS.TienCoc; if (daThanhToan == 0) { phieuDatSan.TrangThai = 0; } else if (daThanhToan < phieuDatSan.TongTien) { phieuDatSan.TrangThai = 1; } else if (daThanhToan >= phieuDatSan.TongTien) { phieuDatSan.TrangThai = 2; } _context.DanhSachPhieuDatSan.Update(phieuDatSan); var newChiTietPhieuDatSan = new ChiTietPhieuDatSan { MaChiTietPDS = maChiTietPDS, MaPhieuDatSan = chiTietPDS.MaPhieuDatSan, MaSanBong = chiTietPDS.MaSanBong, ThoiGianBatDau = chiTietPDS.ThoiGianBatDau, ThoiGianKetThuc = chiTietPDS.ThoiGianKetThuc, NgayDat = chiTietPDS.NgayDat, TienCoc = chiTietPDS.TienCoc, ThanhTien = chiTietPDS.ThanhTien, ThoiGianTao = DateTime.Now, ThoiGianCapNhat = DateTime.Now }; maChiTietPDS = maChiTietPDS + 1; temp.Add(newChiTietPhieuDatSan); await _context.DanhSachChiTietPhieuDatSan.AddAsync(newChiTietPhieuDatSan); await _context.SaveChangesAsync(); } return(temp); }
public async Task <ChiTietPhieuDatSan> Create(ChiTietPhieuDatSanForCreateDto chiTietPhieuDatSan) { var phieuDatSan = await _context.DanhSachPhieuDatSan.FirstOrDefaultAsync(x => x.MaPhieuDatSan == chiTietPhieuDatSan.MaPhieuDatSan); double daThanhToan = 0; var danhSachChiTietPhieuDatSan_PhieuDatSan = _context.DanhSachChiTietPhieuDatSan.Where(x => x.MaPhieuDatSan == phieuDatSan.MaPhieuDatSan); foreach (var item in danhSachChiTietPhieuDatSan_PhieuDatSan) { daThanhToan = daThanhToan + item.TienCoc; } daThanhToan = daThanhToan + chiTietPhieuDatSan.TienCoc; if (daThanhToan == 0) { phieuDatSan.TrangThai = 0; } else if (daThanhToan < phieuDatSan.TongTien) { phieuDatSan.TrangThai = 1; } else if (daThanhToan >= phieuDatSan.TongTien) { phieuDatSan.TrangThai = 2; } _context.DanhSachPhieuDatSan.Update(phieuDatSan); await _context.SaveChangesAsync(); var danhSachChiTietPhieuDatSan = await _context.DanhSachChiTietPhieuDatSan.OrderByDescending(x => x.MaChiTietPDS).FirstOrDefaultAsync(); var maChiTietPhieuDatSan = 1; if (danhSachChiTietPhieuDatSan == null) { maChiTietPhieuDatSan = 1; } else { maChiTietPhieuDatSan = danhSachChiTietPhieuDatSan.MaChiTietPDS + 1; } var newChiTietPhieuDatSan = new ChiTietPhieuDatSan { MaChiTietPDS = maChiTietPhieuDatSan, MaPhieuDatSan = chiTietPhieuDatSan.MaPhieuDatSan, MaSanBong = chiTietPhieuDatSan.MaSanBong, ThoiGianBatDau = chiTietPhieuDatSan.ThoiGianBatDau, ThoiGianKetThuc = chiTietPhieuDatSan.ThoiGianKetThuc, NgayDat = chiTietPhieuDatSan.NgayDat, TienCoc = chiTietPhieuDatSan.TienCoc, ThanhTien = chiTietPhieuDatSan.ThanhTien, DaXoa = 0 }; await _context.DanhSachChiTietPhieuDatSan.AddAsync(newChiTietPhieuDatSan); await _context.SaveChangesAsync(); return(newChiTietPhieuDatSan); }