public async Task <Response <ThamGiaCaThiResponse> > ThamGiaCaThi(long idSinhVien, long idCaThi, ThamGiaCaThiRequest request) { var caThi = await _caThiRepo.GetCaThiById(idCaThi); if (caThi == null) { return new Response <ThamGiaCaThiResponse> { StatusCode = 400, Success = false, Errors = new[] { "Không tìm thấy ca thi" } } } ; var sinhVien = await _sinhVienRepo.GetSinhVienById(idSinhVien); if (sinhVien == null) { return new Response <ThamGiaCaThiResponse> { StatusCode = 400, Success = false, Errors = new[] { "Không tìm thấy sinh viên" } } } ; var thiSinh = await _thiSinhRepo.GetThiSinhById(idCaThi, idSinhVien); if (thiSinh == null) { return new Response <ThamGiaCaThiResponse> { StatusCode = 400, Success = false, Errors = new[] { "Không tìm thấy thí sinh trong ca thi" } } } ; if (caThi.MaBaoVe != request.MaBaoVe) { return new Response <ThamGiaCaThiResponse> { StatusCode = 400, Success = false, Errors = new[] { "Mã bảo vệ không đúng" } } } ; thiSinh.SoLanDangNhap += 1; thiSinh.TenMay = request.TenMay; thiSinh.DiaChiIp = request.DiaChiIp; await _thiSinhRepo.UpdateThiSinh(thiSinh); var thamGiaCaThiResponse = new ThamGiaCaThiResponse(caThi, thiSinh); return(new Response <ThamGiaCaThiResponse> { StatusCode = 200, Success = true, Data = thamGiaCaThiResponse }); } } }
public async Task <IActionResult> ThamGiaCaThi(long idSinhVien, long idCaThi, ThamGiaCaThiRequest request) { var serviceResult = await _caThiService.ThamGiaCaThi(idSinhVien, idCaThi, request); return(Ok(serviceResult)); }