コード例 #1
0
ファイル: QLDeTaiController.cs プロジェクト: war-man/KLTN-1
        public async Task <bool> UpLoadFileYCChinhSua(IFormFile file, YCChinhSuaDeTai 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/DeTaiNghienCuu");
            string uniqueFileName = Guid.NewGuid().ToString() + "_" + file.FileName;
            string filePath       = Path.Combine(UploadsFolder, uniqueFileName);
            await file.CopyToAsync(new FileStream(filePath, FileMode.Create));

            model.TenTep     = file.FileName;
            model.TepDinhKem = uniqueFileName;
            return(true);
        }
コード例 #2
0
ファイル: QLDeTaiController.cs プロジェクト: war-man/KLTN-1
        public async Task <ActionResult> Edit(DeTaiNghienCuuViewModel model)
        {
            if (ModelState.IsValid)
            {
                var entity = await _service.GetById(model.Id);

                if (entity == null)
                {
                    return(Ok(new
                    {
                        status = false,
                        toastr = MessageResult.NotFoundObject
                    }));
                }
                var isAuthorize = await _authorizationService.AuthorizeAsync(User, entity, DeTaiNghienCuuOperation.Update);

                if (!isAuthorize.Succeeded)
                {
                    return(Ok(new
                    {
                        status = false,
                        toastr = MessageResult.AccessDenied
                    }));
                }
                else
                {
                    if (entity.TinhTrangDeTai == (int)StatusDeTai.MoiTao)
                    {
                        if (await UpLoadFile(model.Files, entity) == false)
                        {
                            return(Ok(new
                            {
                                status = false,
                                mess = MessageResult.UpLoadFileFail
                            }));
                        }
                        entity.TenDeTai = model.TenDeTai;
                        entity.MoTa     = model.MoTa;
                        await _service.Update(entity);

                        return(Ok(new { status = true, mess = MessageResult.UpdateSuccess }));
                    }
                    else
                    {
                        YCChinhSuaDeTai yCChinhSua = new YCChinhSuaDeTai
                        {
                            MoTa     = model.MoTa,
                            TenDeTai = model.TenDeTai,
                        };
                        YeuCauPheDuyet yeuCau = new YeuCauPheDuyet
                        {
                            LoaiYeuCau = (int)LoaiYeuCauPheDuyet.ChinhSua,
                            NgayTao    = DateTime.Now,
                        };
                        if (await UpLoadFileYCChinhSua(model.Files, yCChinhSua) == false)
                        {
                            return(Ok(new
                            {
                                status = false,
                                mess = MessageResult.UpLoadFileFail
                            }));
                        }
                        var yeuCauHT     = entity.YeuCauPheDuyet.FirstOrDefault(x => x.LoaiYeuCau == (int)LoaiYeuCauPheDuyet.ChinhSua && x.Status == 0);
                        var yCChinhSuaHT = entity.YCChinhSuaDeTai.FirstOrDefault(x => x.Status == 0);

                        entity.YeuCauPheDuyet.Remove(yeuCauHT);
                        entity.YCChinhSuaDeTai.Remove(yCChinhSuaHT);
                        entity.YeuCauPheDuyet.Add(yeuCau);
                        entity.YCChinhSuaDeTai.Add(yCChinhSua);

                        entity.TinhTrangPheDuyet = (int)StatusPheDuyet.GuiChinhSua;
                        await _service.Update(entity);

                        return(Ok(new { status = true, mess = "Gửi yêu cầu chỉnh sửa thành công" }));
                    }
                }
            }
            else
            {
                return(Ok(new { status = false, mess = MessageResult.Fail }));
            }
        }