public IActionResult PendahuluanAkademik(string kategori) { int akunId = int.Parse(User.FindFirstValue(ClaimTypes.NameIdentifier)); int soalPengerjaanId = _ujianService.GetSoalPengerjaanAkademikId(User.Identity.Name, kategori); bool?isDone = _ujianService.IsDone(akunId, soalPengerjaanId); ViewBag.Pesan = TempData["Pesan"] as string; if (isDone == null) { var soal = _soalPenerimaanService.GetSimpleSoal(soalPengerjaanId); var model = new CrudSoalAkademik() { BatasWaktu = soal.BatasWaktu, Deskripsi = soal.Deskripsi, Id = soal.Id, Judul = soal.Judul, JumlahPertanyaan = soal.JumlahPertanyaan, Kategori = soal.Kategori }; return(View(model)); } else if ((bool)isDone) { return(View()); } else { return(RedirectToAction(nameof(JawabSoalAkademik), new { soalId = soalPengerjaanId })); } }
public IActionResult UbahSoalAkademik(int id) { var soal = _soalService.GetSimpleSoal(id); var model = new CrudSoalAkademik() { Id = soal.Id, Judul = soal.Judul, Kategori = soal.Kategori, BatasWaktu = soal.BatasWaktu, Deskripsi = soal.Deskripsi }; return(Json(model)); }
private void RecapHasilUjian(int akunPendaftaranId, int soalId) { var listHasilUjian = GetHasilUjian(akunPendaftaranId, soalId); var kategori = _soalService.GetSimpleSoal(soalId).Kategori; bool isExistInRangkuman = IsExistInRangkumanAkademik(akunPendaftaranId); double nilai = Mark(listHasilUjian.Count(x => x.IsBenar), listHasilUjian.Count()); string sqlQueryInsertRecap = @"INSERT INTO RangkumanTesAkademik(AkunPendaftaranId) VALUES(@AkunPendaftaranId)"; string sqlQueryUpdateNilai = $"UPDATE RangkumanTesAkademik SET Nilai{kategori} = @Nilai WHERE AkunPendaftaranId = @AkunPendaftaranId"; using (var connection = new SqlConnection(_connectionHelper.GetConnectionString())) { connection.Open(); if (!isExistInRangkuman) { connection.Execute(sql: sqlQueryInsertRecap, param: new { AkunPendaftaranId = akunPendaftaranId }); } connection.Execute(sql: sqlQueryUpdateNilai, param: new { Nilai = nilai, AkunPendaftaranId = akunPendaftaranId }); } }