public async Task <PhieuDatSan> UpdateById(string id, PhieuDatSanForUpdateDto phieuDatSan) { var danhSachChiTietPhieuDatSan = _context.DanhSachChiTietPhieuDatSan.Where(x => x.MaPhieuDatSan == id); double daThanhToan = 0; foreach (var item in danhSachChiTietPhieuDatSan) { daThanhToan = daThanhToan + item.TienCoc; } if (daThanhToan == 0) { phieuDatSan.TrangThai = 0; } else if (daThanhToan < phieuDatSan.TongTien) { phieuDatSan.TrangThai = 1; } else if (daThanhToan >= phieuDatSan.TongTien) { phieuDatSan.TrangThai = 2; } var oldRecord = await _context.DanhSachPhieuDatSan.AsNoTracking().FirstOrDefaultAsync(x => x.MaPhieuDatSan == id); var phieuDatSanToUpdateById = new PhieuDatSan { MaPhieuDatSan = id, MaKhachHang = phieuDatSan.MaKhachHang, MaNhanVien = phieuDatSan.MaNhanVien, NgayLap = phieuDatSan.NgayLap, TongTien = phieuDatSan.TongTien, TrangThai = phieuDatSan.TrangThai, ThoiGianTao = oldRecord.ThoiGianTao, DaXoa = oldRecord.DaXoa }; _context.DanhSachPhieuDatSan.Update(phieuDatSanToUpdateById); await _context.SaveChangesAsync(); return(phieuDatSanToUpdateById); }
public async Task <PhieuDatSan> Create(PhieuDatSanForCreateDto phieuDatSan) { var newPhieuDatSan = new PhieuDatSan { MaPhieuDatSan = GenerateId(), MaKhachHang = phieuDatSan.MaKhachHang, MaNhanVien = phieuDatSan.MaNhanVien, NgayLap = phieuDatSan.NgayLap, TongTien = phieuDatSan.TongTien, ThoiGianCapNhat = DateTime.Now, ThoiGianTao = DateTime.Now, TrangThai = 0, DaXoa = 0 }; _context.DanhSachPhieuDatSan.AddAsync(newPhieuDatSan); _context.SaveChangesAsync(); return(newPhieuDatSan); }