public ListResponse <InstagramDataM> GetInstagramDataList(RequestCralwerDataListM request) { ListResponse <InstagramDataM> response = new ListResponse <InstagramDataM>(); RequestCralwerDataListMValidator validator = new RequestCralwerDataListMValidator(); ValidationResult results = validator.Validate(request); NPoco.Page <InstagramT> instagramDataEntities = crawlerService.GetInstagramDataList(request.PageNo, request.PageSize, request.OrderCondition, request.OrderType); List <InstagramDataM> instagramDataList = mapper.Map <List <InstagramT>, List <InstagramDataM> >(instagramDataEntities.Items); if (instagramDataList != null || instagramDataList.Count > 0) { response.ListResult = instagramDataList; response.CurrentPage = instagramDataEntities.CurrentPage; response.ItemsPerPage = instagramDataEntities.ItemsPerPage; response.TotalItems = instagramDataEntities.TotalItems; response.TotalPages = instagramDataEntities.TotalPages; response.Status = ((int)HttpStatusCode.OK).ToString(); } else { throw new NotFoundException("데이터가 존재하지 않습니다.", "데이터 조회 오류", LayerID.CrawlerController); } logger.Log(LogLevel.Info, string.Format("호출 성공 : {0}", MethodBase.GetCurrentMethod().Name)); return(response); }
public Response <BoardListM> ReadBoardList(RequestBoardListM request) { Response <BoardListM> response = new Response <BoardListM>(); RequestBoardListMValidator validator = new RequestBoardListMValidator(); ValidationResult results = validator.Validate(request); if (results.Errors.Count > 0) { throw new ValidationException("입력값을 확인해주세요.", results.Errors.Join("\r\n"), LayerID.BoardController); } NPoco.Page <ArticleT> entity = boardService.GetBoardList(request.PageNo, request.PageSize, request.PageBlockSize, request.BoardId, request.CategoryId, request.SearchType, request.SearchKeyword); int pageMaxNo = (int)((entity.TotalPages / request.PageBlockSize) + 1); int currPageBlock = (int)((request.PageNo / request.PageBlockSize) + 1); BoardPageInfoT pageInfoT = new BoardPageInfoT() { BoardId = request.BoardId, CurrentPageNo = request.PageNo, PageSize = request.PageSize, TotalCount = (int)entity.TotalItems, TotalPages = (int)entity.TotalPages, PageBlockSize = request.PageBlockSize, NextPageBlockYN = currPageBlock < pageMaxNo, PrevPageBlockYN = currPageBlock > 1 }; List <ArticleM> listModel = mapper.Map <List <ArticleT>, List <ArticleM> >(entity.Items); BoardPageInfoM pageInfoM = mapper.Map <BoardPageInfoT, BoardPageInfoM>(pageInfoT); BoardListM model = new BoardListM() { ListItems = listModel, BoardPageInfo = pageInfoM }; 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); }