Exemplo n.º 1
0
 public ModelValid(ModelValid modelValid)
 {
     if (modelValid.ValidResults != null)
     {
         ValidResults = modelValid.ValidResults;
     }
 }
Exemplo n.º 2
0
        public ModelValid IsValid(ArticleDto dto, bool checkFormFile = true)
        {
            ModelValid modelValid = new ModelValid();

            if (checkFormFile)
            {
                if (dto.FormFile == null)
                {
                    modelValid.Valid = false;
                    modelValid.Errors.Add("در صورت انتشار مقاله , باید عکس مقاله را وارد کنید");
                }
            }
            if (!dto.TimeToRead.HasValue || dto.TimeToRead.Value == 0)
            {
                modelValid.Valid = false;
                modelValid.Errors.Add("در صورت انتشار مقاله , باید فیلد 'زمان مطالعه' را وارد کنید");
            }
            if (!dto.CategoryId.HasValue)
            {
                modelValid.Valid = false;
                modelValid.Errors.Add("در صورت انتشار مقاله , باید فیلد 'دسته بندی' را وارد کنید");
            }
            if (String.IsNullOrWhiteSpace(dto.Content))
            {
                modelValid.Valid = false;
                modelValid.Errors.Add("در صورت انتشار مقاله , باید فیلد 'محتوا' را وارد کنید");
            }
            if (String.IsNullOrWhiteSpace(dto.Description))
            {
                modelValid.Valid = false;
                modelValid.Errors.Add("در صورت انتشار مقاله , باید فیلد 'توضیح کوتاه' را وارد کنید");
            }
            return(modelValid);
        }
Exemplo n.º 3
0
        public async Task <IActionResult> Edit(ArticleDto article)
        {
            Article editArticle = await _articleRep.FindByIDAsync(article.Id);

            if (editArticle == null)
            {
                return(View("Error"));
            }
            if (!ModelState.IsValid)
            {
                ViewBag.Categories = new SelectList(_unitOfWork.GetRepository <Category>().FindAll(), "Id", "Title");
                return(View(article));
            }
            ModelValid model = new ModelValid();

            if (article.IsPublish)
            {
                if (editArticle.Image != null)
                {
                    model = article.IsValid(article, false);
                }
                else
                {
                    model = article.IsValid(article);
                }
            }
            if (!model.Valid)
            {
                foreach (var item in model.Errors)
                {
                    ModelState.AddModelError("", item);
                }
                ViewBag.Categories = new SelectList(_unitOfWork.GetRepository <Category>().FindAll(), "Id", "Title");
                return(View(article));
            }
            if (article.FormFile != null)
            {
                if (editArticle.Image != null)
                {
                    await _fileWorker.RemoveFileAsync(editArticle.Image, "Files");
                }
                editArticle.Image = await _fileWorker.SaveFileAsync(article.FormFile, "Files");
            }
            if (article.IsPublish)
            {
                editArticle.PublishDate = DateTime.Now;
            }
            editArticle.IsPublish   = article.IsPublish;
            editArticle.Tags        = article.Tags;
            editArticle.TimeToRead  = article.TimeToRead;
            editArticle.Title       = article.Title;
            editArticle.CategoryId  = article.CategoryId;
            editArticle.Content     = article.Content;
            editArticle.Description = article.Description;
            _articleRep.Update(editArticle);
            await _unitOfWork.Commit();

            return(Redirect("/admin/articles"));
        }
Exemplo n.º 4
0
        public async Task <IActionResult> Create(ArticleDto article)
        {
            if (!ModelState.IsValid)
            {
                ViewBag.Categories = new SelectList(_unitOfWork.GetRepository <Category>().FindAll(), "Id", "Title");
                //article.FormFile
                return(View(article));
            }
            ModelValid model = new ModelValid();

            if (article.IsPublish)
            {
                model = article.IsValid(article);
            }
            if (!model.Valid)
            {
                foreach (var item in model.Errors)
                {
                    ModelState.AddModelError("", item);
                }
                ViewBag.Categories = new SelectList(_unitOfWork.GetRepository <Category>().FindAll(), "Id", "Title");
                return(View(article));
            }
            Article createArticle = new Article
            {
                CategoryId  = article.CategoryId,
                Content     = article.Content,
                Tags        = article.Tags,
                Description = article.Description,
                TimeToRead  = article.TimeToRead,
                IsPublish   = article.IsPublish,
                Title       = article.Title,
                View        = 0,
            };

            if (article.FormFile != null)
            {
                createArticle.Image = await _fileWorker.SaveFileAsync(article.FormFile, "Files");
            }
            if (article.IsPublish)
            {
                createArticle.PublishDate = DateTime.Now;
                await SendArticleNewEmail(article);
            }
            await _articleRep.CreateAsync(createArticle);

            await _unitOfWork.Commit();

            Popup.PopupModel = new Popup("افزودن مقاله", $"افزودن مقاله با عنوان {article.Title} با موفقیت انجام شد", IconType.Success);
            return(Redirect("/admin/articles"));
        }
Exemplo n.º 5
0
        public IHttpActionResult Post([FromBody] object value)
        {
            ICollection <ValidationResult> ValidationResults = null;
            ModelValid  modelValid  = null;
            PreAvisoBlo preAvisoBlo = new PreAvisoBlo();


            try
            {
                bool        blnRetono = true;
                PreAvisoDTO obj       = new PreAvisoDTO();

                if (value != null)
                {
                    obj = JsonConvert.DeserializeObject <PreAvisoDTO>(value.ToString());
                }
                else
                {
                    Request.CreateResponse(HttpStatusCode.NotFound);
                }


                Sinaf.VOL.DTOs.PreAviso _preAviso = AutoMapperManager.Instance.Mapper.Map <PreAvisoDTO, Sinaf.VOL.DTOs.PreAviso>(obj);
                blnRetono = preAvisoBlo.IncluirRecebimento(_preAviso, value.ToString());

                if (blnRetono)
                {
                    modelValid = new ModelValid(obj, true);
                    modelValid.DoValidation();
                    if (modelValid.IsValid)
                    {
                        preAvisoBlo.GravarImportacaoAceita();
                    }
                }

                return(Created($"{Request.RequestUri}/", obj));
            }
            catch (Exception ex)
            {
                ValidationResults = modelValid.ValidationResults;
                preAvisoBlo.ValidaDadosObrigatorios(ValidationResults);

                ArgumentException obj = new ArgumentException(ex.Message);

                return(InternalServerError(obj));
            }
        }