Beispiel #1
0
        public Response ModifyArticle(ModifyArticleM article)
        {
            int      result   = 0;
            Response response = new Response();

            ModifyArticleMValidator validator = new ModifyArticleMValidator();
            ValidationResult        results   = validator.Validate(article);

            if (results.Errors.Count > 0)
            {
                throw new ValidationException("입력값을 확인해주세요.", results.Errors.Join("\r\n"), LayerID.BoardController);
            }

            ArticleT entity = mapper.Map <ModifyArticleM, ArticleT>(article);

            result = boardService.SetArticle(entity);

            if (result > 0)
            {
                response.Status  = ((int)HttpStatusCode.OK).ToString();
                response.Message = "글 수정이 완료되었습니다.";
                logger.Log(LogLevel.Info, response.Message);
            }
            else
            {
                throw new BadRequestException("글 수정이 실패하였습니다.", "글 수정 오류", LayerID.BoardController);
            }

            logger.Log(LogLevel.Info, string.Format("호출 성공 : {0}", MethodBase.GetCurrentMethod().Name));
            return(response);
        }
        /// <summary>
        /// 게시물 작성
        /// </summary>
        /// <param name="article">게시물 모델</param>
        /// <returns></returns>
        public int InsertArticle(ArticleT article)
        {
            string sql = SQLHelper.GetSqlByMethodName(MethodBase.GetCurrentMethod().Name);

            var parameters = new
            {
                BOARD_ID    = article.BoardId,
                CATEGORY_ID = article.CategoryId,
                SUBJECT     = article.Subject,
                CONTENTS    = article.Contents,
                NICKNAME    = article.NickName,
                SECRET      = article.Secret
            };

            return(Connection.Execute(sql, parameters));
        }
Beispiel #3
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="no"></param>
        /// <returns></returns>
        public ArticleT GetArticleByNo(int no)
        {
            using (ISession session = NHibernateHelper.OpenSession())
            {
                ArticleT article = session.QueryOver <ArticleT>().Where(a => a.No == no).SingleOrDefault <ArticleT>();
                MemberT  member  = session.QueryOver <MemberT>().Where(w => w.No == article.MemberNo).SingleOrDefault <MemberT>();

                if (string.IsNullOrEmpty(member.ProfilePic))
                {
                    article.MemberProfilePic = "";
                }
                else
                {
                    //article.MemberProfilePic = member.ProfilePic == null ? "facebook/" + member.FacebookPic : "thumb/" + member.ProfilePic;
                    article.MemberProfilePic = "thumb/" + member.ProfilePic;
                }
                article.MemberName = member.Name;
                return(article);
            }
        }
Beispiel #4
0
        public Response <ArticleM> ReadArticle(string seq)
        {
            Response <ArticleM> response = new Response <ArticleM>();

            ArticleT entity = boardService.GetArticle(seq);
            ArticleM model  = mapper.Map <ArticleT, ArticleM>(entity);

            if (model != null)
            {
                response.Result = model;
                response.Status = ((int)HttpStatusCode.OK).ToString();
            }
            else
            {
                throw new NotFoundException("게시글이 없습니다.", "게시글 없음", LayerID.BoardController);
            }

            logger.Log(LogLevel.Info, string.Format("호출 성공 : {0}", MethodBase.GetCurrentMethod().Name));
            return(response);
        }
Beispiel #5
0
        public JsonResult Upload(FormCollection collection)
        {
            AjaxResponseModel response = new AjaxResponseModel();

            response.Success = false;

            int articleNo = 0;

            string paramNo         = collection["No"];
            string temp            = collection["temp"];
            string mode            = collection["mode"];
            int    mainImg         = Convert.ToInt32(collection["main_img"]);
            string articleTitle    = collection["article_title"];
            string articleContents = collection["article_contents"];
            int    codeNo          = Convert.ToInt32(collection["lv1"]);
            int    copyright       = Convert.ToInt32(collection["copyright"]);
            string delNo           = collection["del_no"];
            string VideoSource     = collection["insertVideoSource"];

            string tags = collection["article_tags"];

            var mulltiSeq = collection["multi[]"];

            string[] seqArray = mulltiSeq.Split(',');

            if (tags.Length > 1000)
            {
                response.Message = "태그는 1000자 이하로 가능합니다.";
                return(Json(response, JsonRequestBehavior.AllowGet));
            }
            ArticleT articleT = null;

            if (!Int32.TryParse(paramNo, out articleNo))
            {
                response.Success = false;
                response.Message = "pk error";
            }

            if (articleNo > 0)
            {
                //update
                articleT = _articleDac.GetArticleByNo(articleNo);

                if (articleT != null)
                {
                    if (articleT.MemberNo == profileModel.UserNo && articleT.Temp == temp)
                    {
                        articleT.UpdDt = DateTime.Now;
                        articleT.UpdId = profileModel.UserId;
                        articleT.RegIp = IPAddressHelper.GetIP(this);
                    }
                }
            }
            else
            {
                //save
                articleT          = new ArticleT();
                articleT.MemberNo = profileModel.UserNo;
                //태그 #**
                articleT.Tag         = tags;
                articleT.Temp        = temp;
                articleT.ViewCnt     = 0;
                articleT.RegDt       = DateTime.Now;
                articleT.RegId       = profileModel.UserId;
                articleT.RegIp       = IPAddressHelper.GetIP(this);
                articleT.RecommendYn = "N";
                articleT.RecommendDt = null;
            }

            if (articleT != null)
            {
                articleT.Title      = articleTitle;
                articleT.Contents   = articleContents;
                articleT.Visibility = mode == "upload" ? "Y" : "N";
                articleT.Copyright  = copyright;
                articleT.CodeNo     = codeNo;
                articleT.MainImage  = mainImg;

                articleT.VideoUrl = VideoSource;

                articleT.Tag = tags;



                //articleNo = _articleDac.SaveOrUpdate(articleT, delNo);

                response.Success = true;
                response.Result  = articleNo.ToString();;
            }

            //_articleFileDac.UpdateArticleFileSeq(seqArray);


            return(Json(response, JsonRequestBehavior.AllowGet));
        }
Beispiel #6
0
 /// <summary>
 /// 게시물 수정
 /// </summary>
 /// <param name="article">게시물 모델</param>
 /// <returns></returns>
 public int SetArticle(ArticleT article)
 {
     return(boardRepository.UpdateArticle(article));
 }
Beispiel #7
0
 /// <summary>
 /// 게시물 작성
 /// </summary>
 /// <param name="article">게시물 모델</param>
 /// <returns></returns>
 public int CreateArticle(ArticleT article)
 {
     return(boardRepository.InsertArticle(article));
 }