public async Task <IActionResult> DanhGia(ctXetDuyetDanhGiaViewModel model) { var deTai = await _serviceDeTai.GetById(model.idDeTai); var xetDuyetVaDanhGia = deTai.XetDuyetVaDanhGia.SingleOrDefault(x => x.Status == 1); var checkCT = await _serviceCT.GetEntity(x => x.IdgiangVien == long.Parse(User.Identity.Name) && x.IdxetDuyet == xetDuyetVaDanhGia.Id); if (checkCT == null) { CtxetDuyetVaDanhGia ct = new CtxetDuyetVaDanhGia { IdgiangVien = long.Parse(User.Identity.Name), IdxetDuyet = DotHienTai.Id, IdxetDuyetNavigation = xetDuyetVaDanhGia }; var vaitro = _service.GetEntity(x => x.IdhoiDong == xetDuyetVaDanhGia.IdhoiDong && x.IdgiangVien == long.Parse(User.Identity.Name)).Result.VaiTro; ct.VaiTro = vaitro.Value; ct.NhanXet = model.NhanXet; ct.NgayDanhGia = DateTime.Now; ct.Diem = model.Diem; await _serviceCT.Add(ct); return(Ok(new { status = true, mess = "Đánh giá thành công" })); } else { checkCT.NhanXet = model.NhanXet; checkCT.NgayDanhGia = DateTime.Now; checkCT.Diem = model.Diem; await _serviceCT.Update(checkCT); return(Ok(new { status = true, mess = MessageResult.UpdateSuccess })); } }
public async Task <bool> UpLoadFile(IFormFile file, CtxetDuyetVaDanhGia model) { if (file == null) { return(true); } string[] permittedExtensions = { ".txt", ".pdf", ".doc", ".docx", ".xlsx", ".xls" }; var ext = Path.GetExtension(file.FileName).ToLowerInvariant(); if (string.IsNullOrEmpty(ext) || !permittedExtensions.Contains(ext)) { return(false); } string UploadsFolder = Path.Combine(_hostingEnvironment.WebRootPath, "FileUpload/CauHoiXetDuyetDanhGia"); string uniqueFileName = Guid.NewGuid().ToString() + "_" + file.FileName; string filePath = Path.Combine(UploadsFolder, uniqueFileName); await file.CopyToAsync(new FileStream(filePath, FileMode.Create)); model.TepDinhKemCauHoi = uniqueFileName; model.TenTepCauHoi = file.FileName; return(true); }
public async Task <IActionResult> DatCauHoi(ctXetDuyetDanhGiaViewModel model) { var deTai = await _serviceDeTai.GetById(model.idDeTai); var xetDuyetVaDanhGia = deTai.XetDuyetVaDanhGia.SingleOrDefault(x => x.Status == 1); var checkCT = await _serviceCT.GetEntity(x => x.IdgiangVien == long.Parse(User.Identity.Name) && x.IdxetDuyet == xetDuyetVaDanhGia.Id); if (checkCT != null) // update { checkCT.CauHoi = model.CauHoi; checkCT.NgayTaoCauHoi = DateTime.Now; if (await UpLoadFile(model.File, checkCT)) { if (model.File == null) { checkCT.TenTepCauHoi = ""; checkCT.TepDinhKemCauHoi = ""; } await _serviceCT.Update(checkCT); return(Ok(new { status = true, mess = "Cập nhật câu hỏi thành công" })); } else { return(Ok(new { status = false, mess = MessageResult.UpLoadFileFail })); } } //create new CtxetDuyetVaDanhGia ct = new CtxetDuyetVaDanhGia { CauHoi = model.CauHoi, IdgiangVien = long.Parse(User.Identity.Name), NgayTaoCauHoi = DateTime.Now, IdxetDuyet = DotHienTai.Id, }; var vaitro = _service.GetEntity(x => x.IdhoiDong == xetDuyetVaDanhGia.IdhoiDong && x.IdgiangVien == long.Parse(User.Identity.Name)).Result.VaiTro; ct.VaiTro = vaitro.Value; if (await UpLoadFile(model.File, ct)) { if (model.File == null) { ct.TenTepCauHoi = ""; ct.TepDinhKemCauHoi = ""; } xetDuyetVaDanhGia.CtxetDuyetVaDanhGia.Add(ct); await _serviceDeTai.Update(deTai); return(Ok(new { status = true, mess = "Đặt câu hỏi thành công" })); } else { return(Ok(new { status = false, mess = MessageResult.UpLoadFileFail })); } }