/* ================================================================== * Created [2009-4-27 下午11:32:55] by Jon.King * ================================================================== * TSS * ================================================================== * mailTo:jinpujun@hotmail.com * Copyright (c) Jon.King, 2009-2012 * ================================================================== */ package com.jinhe.tss.cms.service; import com.jinhe.tss.cms.AttachmentDTO; /** * <p> IRemoteArticle4PortalService.java </p> * CMS对外发布的服务接口。 * 主要有:取(图片)文章列表,取文章内容,创建文章,全文检索等。 */ public interface IRemoteArticleService { /** * 获取符合RSS2.0规范的栏目文章列表。 * @param channelId * @param page * @param pageSize * @return */ String getArticleListByChannel4Rss(Long channelId, Integer page, Integer pageSize); /** * 获得栏目文章列表信息 * <p> * <?xml version="1.0" encoding="UTF-8"?><br> * <Response><br> * <ArticleList><br> * <rss><br> * <channelName>最新公告</channelName><br> <totalPageNum>2</totalPageNum><br> <totalRows>32</totalRows><br> <currentPage>1</currentPage><br> <item><br> <id>21</id><br> <title>文章标题</title><br> <author>文章作者</author><br> <issueDate>2007-06-08</IssueDate><br> <wzrq>2007-06-18</wzrq><br> <summary>摘要摘要摘要摘要摘要摘要</summary><br> <hitcount>122</hitcount><br> </item><br> </rss><br> </ArticleList><br> </Response><br> * </p> * * @return String */ String getArticleListXMLByChannel(Long channelId, Integer page, Integer pageSize); /** * 获取图片文章列表 * <p> * <?xml version="1.0" encoding="UTF-8"?><br> * <Response><br> * <ArticleList><br> * <rss><br> * <channelName>最新公告</channelName><br> <totalPageNum>2</totalPageNum><br> <totalRows>32</totalRows><br> <currentPage>1</currentPage><br> <item><br> <id>21</id><br> <title>文章标题</title><br> <author>文章作者</author><br> <issueDate>2007-06-08</IssueDate><br> <wzrq>2007-06-18</wzrq><br> <summary>摘要摘要摘要摘要摘要摘要</summary><br> <hitcount>122</hitcount><br> <Attachment type="image"> <url><![CDATA[http://localhost:8088/cms/download.fun?id=12&seqNo=1]]></url> </Attachment> <Attachment type="file"> <url><![CDATA[http://localhost:8088/cms/download.fun?id=12&seqNo=2]]></url> </Attachment> </item><br> </rss><br> </ArticleList><br> </Response><br> * </p> * </p> * * @param channelId * @param page * @param pageSize * @return */ String getPicArticleListByChannel(Long channelId, Integer page, Integer pageSize); /** * <p> * 获得已发布文章生成的xml信息 * <Response><br> * <ArticleInfo><br> * <rss><br> * <Article><br> * <id><![CDATA[1]]></id> * <title><![CDATA[文章标题]]></title><br> * <author><![CDATA[文章作者]]></author><br> * <keyword><![CDATA[文章关键字]]></keyword><br> * <status><![CDATA[-1]]></status><br> * <hitCount><![CDATA[100]]></hitCount><br> * <channelId><![CDATA[2]]></channelId><br> * <channelName><![CDATA[所属栏目]]></channelName><br> * <type><![CDATA[2]]></type><br> * <typeName><![CDATA[文章类型]]></typeName><br> * <state><![CDATA[0]]></state><br> * <userId><![CDATA[-1]]></userId><br> * <userName><![CDATA[Admin]]></userName><br> * <creationDate><![CDATA[2007-06-06]]></creationDate><br> * <modifiedUserId><![CDATA[-1]]></modifiedUserId><br> * <modifiedUserName><![CDATA[Admin]]></modifiedUserName><br> * <modifiedDate><![CDATA[2007-06-08]]></modifiedDate><br> * <issueDate><![CDATA[2007-06-08]]></issueDate><br> * <wzrq><![CDATA[2007-06-06]]></wzrq><br> * <summary><![摘要摘要摘要摘要摘要摘要]]></summary><br> * <content><![CDATA[正文正文正文正文正文正文正文正文]]></content><br> * </Article<<br> * </rss><br> * </ArticleInfo><br> * </Response><br> * </p> * @param articleId * @return */ public String getArticleXML(Long articleId); /** * <p> * 第三方文章数据导入,文章内容信息的XML格式如下:<br> * <ArticleInfo><br> * <Article><br> * <title><![CDATA[文章一]]></title><br> * <author><![CDATA[斯蒂芬]]></author><br> * <keyword><![CDATA[公认的]]></keyword><br> * <status><![CDATA[-1]]></status><br> * <channelId><![CDATA[2]]></channelId><br> * <channelName><![CDATA[栏目一]]></channelName><br> * <type><![CDATA[2]]></type><br> * <typeName><![CDATA[报表]]></typeName><br> * <wzrq><![CDATA[2007-06-06]]></wzrq><br> * <content><![CDATA[正文正文正文正文正文正文正文正文]]></content><br> * </Article<<br> * </ArticleInfo><br> * </p> * @param articleXml */ void addArticle(String articleXml); /** * 根据栏目ids,获取这些栏目下的所有文章列表。 * 注:因为本方法调用dao时里需要往临时表temp里写入数据,所以方法名不能以get开头 * @param channelIds * @param page * @param pageSize * @return * 返回数据格式同getArticleListXMLByChannel方法 */ String queryArticlesByChannelIds(String channelIds, Integer page, Integer pageSize); /** * 根据栏目id获取文章列表(深度),取指定栏目以及该栏目下所有子栏目的所有文章列表 * @param channelId * @param page * @param pageSize * @return * 返回数据格式同getArticleListXMLByChannel方法 */ String queryArticlesDeeplyByChannelId(Long channelId, Integer page, Integer pageSize); /** * 根据文章id获取该文章的相关文章列表 * @param articleId * @param pageSize * @return * 返回数据格式同getArticleListXMLByChannel方法 */ String getRelationArticles(Long articleId, Integer pageSize); /** * 获取栏目树,用以显示“当前位置”等地方 * @param channelId * @return */ String getChannelTree4Portlet(Long channelId); /** * 全文检索service接口。 * 供门户网站上通过本接口调用全文搜索。 * <p> * <?xml version="1.0" encoding="UTF-8"?><br> * <Response><br> * <ArticleList><br> * <rss><br> <totalPageNum>2</totalPageNum><br> <totalRows>32</totalRows><br> <currentPage>1</currentPage><br> <item><br> <id>21</id><br> <title>文章标题</title><br> <author>文章作者</author><br> <issueDate>2007-06-08</IssueDate><br> <wzrq>2007-06-18</wzrq><br> <summary>摘要摘要摘要摘要摘要摘要</summary><br> <hitcount>122</hitcount><br> </item><br> </rss><br> </ArticleList><br> </Response><br> * </p> * * @param tacticId * @param searchStr * @param pageNum * @param pageSize * @return */ String search(Long tacticId, String searchStr, Integer pageNum, Integer pageSize); /** * 获取附件信息。附件下载时候使用,由DownloadServlet调用。 * @param articleId * @param seqNo * @return */ AttachmentDTO getAttachmentInfo(Long articleId, Integer seqNo); /** * 根据栏目和日期来获取文章列表。 * 主要用于期刊类需求。 * <p> * <?xml version="1.0" encoding="UTF-8"?><br> * <Response><br> * <ArticleList><br> * <rss><br> * <channelName>最新公告</channelName><br> <totalPageNum>2</totalPageNum><br> <totalRows>32</totalRows><br> <currentPage>1</currentPage><br> <item><br> <id>21</id><br> <title>文章标题</title><br> <author>文章作者</author><br> <issueDate>2007-06-08</IssueDate><br> <wzrq>2007-06-18</wzrq><br> <summary>摘要摘要摘要摘要摘要摘要</summary><br> <hitcount>122</hitcount><br> </item><br> </rss><br> </ArticleList><br> </Response><br> * </p> * @param channelId * @param year * @param month * @return */ String getArticleListByChannelAndTime(Long channelId, String year, String month); }