文档修改日期:20200314
构建日期:20200314
文档修改日期:20200314
构建日期:20200314
序号 | 字段英文名 | 字段中文名 | 字段说明 | 取值说明 |
---|---|---|---|---|
siteId | 站点id | 主键 | ||
siteTag | 站点标记 | 唯一标识,前端不可修改 | ||
siteName | 站点名称 | 前端可修改 | ||
siteDesc | 站点描述 | |||
siteUrl | 站点地址 | 站点的访问地址 | ||
siteDir | 站点目录 | 站点存放文件的目录 |
序号 | 字段英文名 | 字段中文名 | 字段说明 | 取值说明 |
---|---|---|---|---|
chnlId | 栏目id | 主键 | ||
siteId | 站点id | 栏目所属站点的id | ||
chnlTag | 栏目标记 | 栏目在站点内的唯一标识,前端不可修改 | ||
chnlName | 栏目名称 | 前端可修改 | ||
chnlDesc | 栏目描述 | |||
chnlPId | 父栏目id |
序号 | 字段英文名 | 字段中文名 | 字段说明 | 取值说明 |
---|---|---|---|---|
docId | 文档id | 主键 | ||
docSite | 站点id | 文档所属站点的id | ||
docChannel | 栏目id | 文档所属栏目的id | ||
docTitle | 文档标题 | |||
docContent | 文档正文 | 带空格换行符,没有html标记的正文 | ||
docHtmlCon | 文档html正文 | 文档正文,包含html标记 | ||
docAddTime | 文档添加事件 | 添加文档的时间,可在前端编辑 | ||
docWordsCount | 文档字数统计 | 字数包含空格,但不包含换行符之类的 |
序号 | 字段英文名 | 字段中文名 | 字段说明 | 取值说明 |
---|---|---|---|---|
quoteId | 引用id | 主键 | ||
quoteChnl | 栏目id | 文档所在的栏目 | ||
quoteSite | 站点id | 文档所在的站点 | ||
quotePubUrl | 文档发布地址 | |||
docId | 文档id | |||
docChnl | 文档所属栏目 | |||
docSite | 文档所属站点 | |||
objType | 对象类型 | 对象类型包括:实体文章、链接引用、镜像引用 | 实体:1;链接:2;镜像:3 | |
objStatus | 对象状态 | 对象状态包括:新稿、已发 | 新稿:1;已发:10 |
序号 | 字段英文名 | 字段中文名 | 字段说明 | 取值说明 |
---|---|---|---|---|
tempId | 模板id | 主键 | ||
tempName | 模板名字 | 站点内唯一 | ||
pubFileName | 模板发布文件名 | 前端概览模板默认是index,细览为null | ||
pubFileExt | 模板发布文件后缀 | 前端默认是html | ||
tempContent | 模板内容 | |||
siteId | 站点id | 模板所属站点的id | ||
objType | 对象类型 | 模板分为概览、细览、嵌套 | 概览:1;细览:2;嵌套:3; |
序号 | 字段英文名 | 字段中文名 | 字段说明 | 取值说明 |
---|---|---|---|---|
tempConfId | 模板配置id | 主键 | ||
tempType | 模板类型 | 概览:1;细览:2;嵌套:3; | ||
tempId | 模板id | |||
objType | 对象类型 | 站点:1;栏目:2;文档:3; | ||
objId | 对象id |
查询站点信息表,返回一个包含siteId和siteName的JSONArray,供前端构建树状节点。
根据站点id,查询站点信息表,返回一个包含站点信息的JSONObject,供前端在修改站点时反显站点信息。
根据站点id,查询站点信息表,返回站点对象,具体要获取什么属性再调用站点对象的get方法。
添加站点调用方法,返回站点id。
修改站点调用方法,返回站点id。
查询站点信息表和栏目信息表,返回一个包含站点和栏目树状节点JSONArray。
根据栏目id,查询栏目信息表,返回一个包含栏目信息的JSONObject,供前端在修改栏目时反显栏目信息。
根据栏目id,查询栏目信息表,返回栏目对象,具体要获取什么属性再调用栏目对象的get方法。
根据站点id和栏目标识,查询栏目信息表,返回栏目对象,具体要获取什么属性再调用栏目对象的get方法。
添加栏目调用方法,返回栏目id。
修改栏目调用方法,返回栏目id。
根据输入参数栏目id,查询这个栏目id下所有子栏目,并返回栏目对象List
ChannelMgr对象内部调用方法,设置ChannelMgr对象的chnlPath属性值,该方法需要递归调用自己,最终将栏目路径存入chnlPath中。
返回ChannelMgr对象的chnlPath属性值。
返回栏目的链接地址,该链接地址是以站点根目录为参照。
返回栏目的链接地址,该链接地址是以栏目为参照,具体以哪个栏目为参照,视方法的第二个参数而定。
对文档信息表和文档引用表联合查询,返回一个包含文档概览字段和分页信息的JSONObject。
对文档信息表和文档引用表联合查询,根据栏目id,返回栏目的文档id列表。
根据文档id,查询文档信息表,返回JSONObject对象,对象中包含文档信息,供前端修改文档反显信息使用。
根据文档id,查询文档信息表,返回Document对象,再使用对象的get方法可获取文档的信息。
添加文档,返回值为空。
添加引用文档,返回文档引用id。
更新文档,返回文档id。
发布文档,返回值为空。
获取文档发布地址,通过查询文档引用表,获取docPubUrl字段信息。
通过处理getDocPubUrl(int docId, int chnlId)方法返回的文档发布地址,返回文档的相对发布地址。
搜索文档html正文,返回文档正文附件个数。
搜索文档html正文,返回文档正文附件url地址。
搜索文档html正文,返回JSONArray对象,对象中包含正文中的附件列表信息。
根据站点id,查询模板信息表,返回一个包含模板列表信息和分页信息的JSONObject。
根据模板id,查询模板信息表,返回一个包含模板信息的JSONObject,供前端在修改模板时反显模板目信息。
根据模板id,查询模板信息表,返回模板对象,具体要获取什么属性再调用模板对象的get方法。
添加模板调用方法,返回模板id。
修改模板调用方法,返回模板id。
内部调用方法,供formatBeforeSave(String content)使用。提取oni标签代码中的属性和值,转换成map里面的key和value。
模板保存前的验证方法,未完成。
模板保存前先进行格式化,强制oni标签大写、强制只空一格,增加标签默认id属性为owner。
三层架构思想
1.格式化模板:模板保存前将模板内容中包含oni标签的内容进行格式化,强制大写,空格只允许一个。强制ID属性要有值,没有则默认为OWNER。获取标记的属性,按照本人习惯重新排序。
2.创建页面发布任务:发布概览或细览时,获取模板内容,解析里面的oni标记。
3.编译概览、细览中oni标签之前,先把所有id属性中不包含OWNER或PARENT的oni标签解析,将唯一标识解析为栏目id。后期栏目唯一标识要屏蔽这些关键词,chnltag2chnlid方法的判定条件也要修改
4.依次解析标签channels、channel、documents、document,一层出现问题,解析结果都会出问题。
4.替换channels标记:替换属性ID里面的值,将owner、parent等关键字替换成对应的chnlid。
5.替换channel标记:
解析标记的ID、STARTPOS、NUM属性。
根据ID、STARTPOS、NUM属性替换循环体的内容,处理ID为OWNER、PARENT等关键字的情况和ID为栏目标识的情况。
如何处理channels嵌套?
1.列出所有channels标记代码。
2.取出最外围的channels标记代码
3.替换标记头中的id属性,owner替换成owner.child,parent替换成owner,
4.替换标记循环体,重复循环体,并将channels头尾标记去掉。
构造方法有2个,一个用于概览类,一个用于细览类。概览可以通过父级标签获取到子标签的id属性,细览没有,所以要定义一个默认的docid参数。
文章发布后,文档引用表会添加文档发布绝对路径。考虑到镜像引用文档,所以把文档发布路径存放在文档引用表而不是文档信息表。
文档的发布地址,一个绝对路径,一个相对路径。绝对路径数据库已经保存,相对路径可以通过传入当前栏目和文档所属栏目2个参数,将绝对路径改造成相对路径。