diff --git a/README.md b/README.md
index 2e2d1be7..2b40c970 100644
--- a/README.md
+++ b/README.md
@@ -41,11 +41,14 @@
一直在改变,从未停止过!努力打造一款国内好用的Java CMS内容管理软件
-QQ交流群号:
-[](https://jq.qq.com/?_wv=1027&k=5zykX7V) [](https://jq.qq.com/?_wv=1027&k=56BqFKu)
-[](https://qm.qq.com/cgi-bin/qm/qr?k=1K_RsMwZcf09Y-_74PhA_NfI85RqeDyK&jump_from=webapi&authKey=vCeXrE2f5QCobzDFZ4lHzHyH7sGtmhVfR326MjEmeMy6u0NgHlIglCCxD/6b7tEK)
-[](https://qm.qq.com/cgi-bin/qm/qr?k=TzRiJf4x7tZsjKEzo8EuwuHqTALc0xCA&jump_from=webapi&authKey=04YpueACppV1tLykhOQ+fdzPhPwOkIU685LgCOQqrwEjtVQCOvTAyd6qn3xAiXl2)
-[](https://qm.qq.com/cgi-bin/qm/qr?k=IfVdHXCm13Ui6NrcjvrraFkGsI8L3U1r&jump_from=webapi&authKey=Go37VdoKublA0p47ww9fS+fxt2DAh1URslG0/7ugg8zs1b+heVlGZwkASM/PlJPG)
+# 邀请您加入技术交流QQ群
+
+
+[](https://qm.qq.com/cgi-bin/qm/qr?k=FVvyoF1YwtFpCGLf--h42_AwtF6JOD9M&jump_from=webapi&authKey=EyNayGyX0U/6hJKtpBInh9FsCpeM8Vx2KqrmmCZyXe3f1PD5kboChBSIWkB6SOb5)
+[](https://qm.qq.com/cgi-bin/qm/qr?k=fedNH1fR6niG16cYVPXPZJ3U8m9Hfxaf&jump_from=webapi&authKey=6rMUTyta7sKlSpeF/fYkVHp6mF9sZc6i5vmHzGgdh6WHW34yww5eDBXJwCVmoMyl)
+[](https://qm.qq.com/cgi-bin/qm/qr?k=1K_RsMwZcf09Y-_74PhA_NfI85RqeDyK&jump_from=webapi&authKey=vCeXrE2f5QCobzDFZ4lHzHyH7sGtmhVfR326MjEmeMy6u0NgHlIglCCxD/6b7tEK)
+[](https://qm.qq.com/cgi-bin/qm/qr?k=TzRiJf4x7tZsjKEzo8EuwuHqTALc0xCA&jump_from=webapi&authKey=04YpueACppV1tLykhOQ+fdzPhPwOkIU685LgCOQqrwEjtVQCOvTAyd6qn3xAiXl2)
+[](https://qm.qq.com/cgi-bin/qm/qr?k=IfVdHXCm13Ui6NrcjvrraFkGsI8L3U1r&jump_from=webapi&authKey=Go37VdoKublA0p47ww9fS+fxt2DAh1URslG0/7ugg8zs1b+heVlGZwkASM/PlJPG)
[](http://store.mingsoft.net)
diff --git a/doc/5.3.1-up-5.3.2.sql b/doc/5.3.2-up-5.3.3.sql
similarity index 83%
rename from doc/5.3.1-up-5.3.2.sql
rename to doc/5.3.2-up-5.3.3.sql
index 7f8750d3..dbcea30b 100644
--- a/doc/5.3.1-up-5.3.2.sql
+++ b/doc/5.3.2-up-5.3.3.sql
@@ -1,15 +1,10 @@
+
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-ALTER TABLE `cms_category` ADD COLUMN `category_is_search` varchar(50) NULL DEFAULT 'enable' COMMENT '栏目是否被搜索' AFTER `category_display`;
-
-ALTER TABLE `cms_content` ADD COLUMN `content_tags` varchar(255) NULL DEFAULT NULL COMMENT '文章标签' AFTER `content_sort`;
--- 文章标签
-INSERT INTO `mdiy_dict` (`DICT_VALUE`, `DICT_LABEL`, `DICT_TYPE`, `DICT_DESCRIPTION`, `IS_CHILD`, `DICT_ENABLE`, `DICT_REMARKS`, `DICT_SORT`, `UPDATE_BY`, `UPDATE_DATE`, `CREATE_BY`, `CREATE_DATE`, `DEL`, `NOT_DEL`) VALUES ('politic', '时政热点', '文章标签', NULL, NULL, '1', NULL, 0, NULL, NULL, '106', '2023-06-08 15:13:13', 0, 0);
-ALTER TABLE `cms_category` MODIFY COLUMN `category_path` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '栏目路径' AFTER `category_keyword`;
--- category_path 不以 "/" 开头 初始数据也要变
-UPDATE cms_category SET CATEGORY_PATH = SUBSTR(CATEGORY_PATH,2,LENGTH(CATEGORY_PATH)) where category_path like "/%";
-
+-- ----------------------------
+-- Table structure for mdiy_tag
+-- ----------------------------
DROP TABLE IF EXISTS `mdiy_tag`;
CREATE TABLE `mdiy_tag` (
`id` int(11) NOT NULL AUTO_INCREMENT,
@@ -31,7 +26,7 @@ CREATE TABLE `mdiy_tag` (
-- Records of mdiy_tag
-- ----------------------------
BEGIN;
-INSERT INTO `mdiy_tag` (`id`, `tag_name`, `tag_type`, `tag_sql`, `tag_class`, `tag_description`, `UPDATE_BY`, `UPDATE_DATE`, `CREATE_BY`, `CREATE_DATE`, `DEL`, `NOT_DEL`) VALUES (3, 'arclist', 'list', '<#assign _typeid=\'\'/>\n<#assign _typetitle=\'\'/>\n<#-- 分页数,默认返回20条数据 -->\n<#assign _size=\'20\'/>\n<#if column?? && column.id?? && column.id?number gt 0>\n <#assign _typeid=\'${column.id}\'>\n#if>\n<#if typeid??>\n <#assign _typeid=\'${typeid}\'>\n#if>\n<#if typetitle??>\n <#assign _typetitle=\'${typetitle}\'>\n#if>\n<#if size??>\n <#assign _size=\'${size}\'>\n#if>\n\n<#if orderby?? >\n <#if orderby==\'date\'>\n <#assign _orderby=\'content_datetime\'>\n <#elseif orderby==\'updatedate\'>\n <#assign _orderby=\'cms_content.update_date\'>\n <#elseif orderby==\'hit\'>\n <#assign _orderby=\'content_hit\'>\n <#elseif orderby==\'sort\'>\n <#assign _orderby=\'content_sort\'>\n <#else>\n <#assign _orderby=\'cms_content.content_datetime\'>\n #if>\n<#else>\n <#assign _orderby=\'cms_content.content_datetime\'>\n#if>\n\nSELECT\n cms_content.id AS \"id\",\n content_title AS \"title\",\n content_short_title AS \"shorttitle\",\n content_author AS \"author\",\n content_source AS \"source\",\n content_out_link AS \"outlink\",\n\n category.category_title AS \"typetitle\",\n category.category_short_title AS \"typeshorttitle\",\n category.id AS \"typeid\",\n category.category_path AS \"typepath\",\n category.category_img AS \"typelitpic\",\n category.category_ico AS \"typeico\",\n category.category_keyword as \"typekeyword\",\n category.top_id as \"topid\",\n category.category_id as \"parentid\",\n category.category_parent_ids as \"parentids\",\n category.category_type AS \"type\",\n <#--列表页动态链接-->\n <#if isDo?? && isDo>\n CONCAT(\'${modelName}/list.do?style=${templateName!\"\"}&typeid=\', category.category_id) as \"typelink\",\n <#else>\n <#--栏目类型为链接-->\n <#if shortSwitch?? && shortSwitch>\n CONCAT(category.category_pinyin,\'.html\') AS \"typelink\",\n <#else>\n CONCAT(category.category_path,\'/index.html\') AS \"typelink\",\n #if>\n #if>\n content_description AS \"descrip\",\n content_hit AS \"hit\",\n content_type AS \"flag\",\n cms_content.content_keyword AS \"keyword\",\n content_img AS \"litpic\",\n <#--内容页动态链接-->\n <#if isDo?? && isDo>\n CONCAT(\'${modelName}/view.do?style=${templateName!\"\"}&id=\', cms_content.id) as \"link\",\n <#else>\n <#if shortSwitch?? && shortSwitch>\n CONCAT(cms_content.id,\'.html\') AS \"link\",\n <#else>\n CONCAT(CONCAT( category.category_path, \'/\' ), CONCAT(CASE category_type WHEN \'2\' THEN \'index\' ELSE cms_content.id END , \'.html\' )) as \"link\",\n #if>\n #if>\n <#if tableName??>${tableName}.*,#if>\n content_datetime AS \"date\"\nFROM\n cms_content\nLEFT JOIN\n cms_category as category\nON cms_content.category_id = category.id\n<#--判断是否有自定义模型表-->\n<#if tableName??>\n LEFT JOIN ${tableName} ON ${tableName}.link_id=cms_content.id\n#if>\nWHERE\n content_display=0\n and category_display=\'enable\'\n and cms_content.del=0\n\n\n<#--根据站点编号查询-->\n<#if appId?? >\n and cms_content.app_id=${appId}\n and cms_content.id>0\n#if>\n<#--判断是否有搜索分类集合,暂时移除 _typeid=\"\" 条件-->\n<#if search??>\n and category_is_search=\'enable\'\n <#-- 文章标签 -->\n <#if search.content_tag??>and FIND_IN_SET(\'${search.content_tag}\',content_tags) > 0#if>\n <#if search.categoryIds?has_content>and FIND_IN_SET(category.id,\'${search.categoryIds}\') > 0#if>\n <#--标题-->\n <#if search.content_title??> and content_title like CONCAT(CONCAT(\'%\',\'${search.content_title}\'),\'%\')#if>\n <#--作者-->\n <#if search.content_author??> and content_author like CONCAT(CONCAT(\'%\',\'${search.content_author}\'),\'%\')#if>\n <#--来源-->\n <#if search.content_source??> and content_source like CONCAT(CONCAT(\'%\',\'${search.content_source}\'),\'%\')#if>\n <#--属性-->\n <#if search.content_type??>\n and(<#list search.content_type?split(\',\') as item>\n <#if item?index gt 0> or#if>\n FIND_IN_SET(\'${item}\',cms_content.content_type) > 0\n #list>)\n #if>\n <#--描述-->\n <#if search.content_description??>\n and content_description like CONCAT(CONCAT(\'%\',\'${search.content_description}\'),\'%\')\n #if>\n <#--关键字-->\n <#if search.content_keyword??> and content_keyword like CONCAT(CONCAT(\'%\',\'${search.content_keyword}\'),\'%\')#if>\n <#--内容-->\n <#if search.content_details??> and content_details like CONCAT(CONCAT(\'%\',\'${search.content_details}\'),\'%\')#if>\n <#--自定义顺序-->\n <#if search.content_sort??> and content_sort=${search.content_sort}#if>\n <#--时间范围-->\n <#if search.content_datetime_start??&&search.content_datetime_end??>\n and content_datetime between \'${search.content_datetime_start}\' and \'${search.content_datetime_end}\'\n #if>\n<#else>\n <#--查询栏目-->\n <#if _typeid?has_content && _typeid?string != \'0\'>\n and (cms_content.category_id=${_typeid}\n or cms_content.category_id in (select id FROM cms_category where cms_category.del=0\n <#if _typetitle?has_content>\n and cms_category.category_title=\'${_typetitle}\'\n #if>\n and FIND_IN_SET(${_typeid},CATEGORY_PARENT_IDS) > 0))\n #if>\n#if>\n<#--判断搜索分类结束-->\n<#--标题-->\n<#if content_title??> and content_title like CONCAT(CONCAT(\'%\',\'${content_title}\'),\'%\')#if>\n<#--作者-->\n<#if content_author??> and content_author like CONCAT(CONCAT(\'%\',\'${content_author}\'),\'%\')#if>\n<#--来源-->\n<#if content_source??> and content_source like CONCAT(CONCAT(\'%\',\'${content_source}\'),\'%\')#if>\n<#--属性-->\n<#if content_type??> and content_type like CONCAT(CONCAT(\'%\',\'${content_type}\'),\'%\')#if>\n<#--描述-->\n<#if content_description??> and content_description like CONCAT(CONCAT(\'%\',\'${content_description}\'),\'%\')#if>\n<#--关键字-->\n<#if content_keyword??> and content_keyword like CONCAT(CONCAT(\'%\',\'${content_keyword}\'),\'%\')#if>\n<#--内容-->\n<#if content_details??> and content_details like CONCAT(CONCAT(\'%\',\'${content_details}\'),\'%\')#if>\n<#--自定义顺序-->\n<#if content_sort??> and content_sort=${content_sort}#if>\n<#--自定义模型-->\n<#if diyModel??>\n <#list diyModel as dm>\n <#assign json=\"${dm}\"?eval />\n and ${tableName}.${json.key} like CONCAT(CONCAT(\'%\',\'${json.value}\'),\'%\')\n #list>\n#if>\n<#--文章属性-->\n<#if flag?? >\n and(<#list flag?split(\',\') as item>\n <#if item?index gt 0> or#if>\n FIND_IN_SET(\'${item}\',cms_content.content_type) > 0\n #list>)\n#if>\n<#if noflag??>\n and(<#list noflag?split(\',\') as item>\n <#if item?index gt 0> and#if>\n FIND_IN_SET(\'${item}\',cms_content.content_type)=0\n #list> or cms_content.content_type is null)\n#if>\n\n <#--字段排序-->\n ORDER BY\n <#if topflag??>\n CASE\n <#list topflag?split(\",\") as item>\n WHEN FIND_IN_SET(\'${item}\',cms_content.content_type)>0 THEN\n ${item?index}\n #list>\n ELSE 100\n END,\n #if>\n ${_orderby}\n <#if order?? >\n <#if order==\'desc\'> desc#if>\n <#if order==\'asc\'> asc#if>\n <#else>\n desc\n #if>\n LIMIT\n <#--判断是否分页-->\n <#if ispaging?? && (pageTag.pageNo)??>\n ${((pageTag.pageNo-1)*_size?eval)?c},${_size?default(20)}\n <#else>\n ${_size?default(20)}\n #if>\n', NULL, '文章列表', NULL, NULL, NULL, NULL, 0, 1);
+INSERT INTO `mdiy_tag` (`id`, `tag_name`, `tag_type`, `tag_sql`, `tag_class`, `tag_description`, `UPDATE_BY`, `UPDATE_DATE`, `CREATE_BY`, `CREATE_DATE`, `DEL`, `NOT_DEL`) VALUES (3, 'arclist', 'list', '<#assign _typeid=\'\'/>\n<#assign _typetitle=\'\'/>\n<#-- 分页数,默认返回20条数据 -->\n<#assign _size=\'20\'/>\n<#if column?? && column.id?? && column.id?number gt 0>\n <#assign _typeid=\'${column.id}\'>\n#if>\n<#if typeid??>\n <#assign _typeid=\'${typeid}\'>\n#if>\n<#if typetitle??>\n <#assign _typetitle=\'${typetitle}\'>\n#if>\n<#if size??>\n <#assign _size=\'${size}\'>\n#if>\n\n<#if orderby?? >\n <#if orderby==\'date\'>\n <#assign _orderby=\'content_datetime\'>\n <#elseif orderby==\'updatedate\'>\n <#assign _orderby=\'cms_content.update_date\'>\n <#elseif orderby==\'hit\'>\n <#assign _orderby=\'content_hit\'>\n <#elseif orderby==\'sort\'>\n <#assign _orderby=\'content_sort\'>\n <#else>\n <#assign _orderby=\'cms_content.content_datetime\'>\n #if>\n<#else>\n <#assign _orderby=\'cms_content.content_datetime\'>\n#if>\n\nSELECT\n cms_content.id AS \"id\",\n content_title AS \"title\",\n content_short_title AS \"shorttitle\",\n content_author AS \"author\",\n content_source AS \"source\",\n content_out_link AS \"outlink\",\n\n category.category_title AS \"typetitle\",\n category.category_short_title AS \"typeshorttitle\",\n category.id AS \"typeid\",\n category.category_path AS \"typepath\",\n category.category_img AS \"typelitpic\",\n category.category_ico AS \"typeico\",\n category.category_keyword as \"typekeyword\",\n category.top_id as \"topid\",\n category.category_id as \"parentid\",\n category.category_parent_ids as \"parentids\",\n category.category_type AS \"type\",\n <#--列表页动态链接-->\n <#if isDo?? && isDo>\n CONCAT(\'${modelName}/list.do?style=${templateName!\"\"}&typeid=\', category.category_id) as \"typelink\",\n <#else>\n <#--栏目类型为链接-->\n <#if shortSwitch?? && shortSwitch>\n CONCAT(category.category_pinyin,\'.html\') AS \"typelink\",\n <#else>\n CONCAT(category.category_path,\'/index.html\') AS \"typelink\",\n #if>\n #if>\n content_description AS \"descrip\",\n content_hit AS \"hit\",\n content_type AS \"flag\",\n cms_content.content_keyword AS \"keyword\",\n content_img AS \"litpic\",\n <#--内容页动态链接-->\n <#if isDo?? && isDo>\n CONCAT(\'${modelName}/view.do?style=${templateName!\"\"}&id=\', cms_content.id) as \"link\",\n <#else>\n <#if shortSwitch?? && shortSwitch>\n CONCAT(cms_content.id,\'.html\') AS \"link\",\n <#else>\n CONCAT(CONCAT( category.category_path, \'/\' ), CONCAT(CASE category_type WHEN \'2\' THEN \'index\' ELSE cms_content.id END , \'.html\' )) as \"link\",\n #if>\n #if>\n <#if tableName??>${tableName}.*,#if>\n content_datetime AS \"date\"\nFROM\n cms_content\nLEFT JOIN\n cms_category as category\nON cms_content.category_id = category.id\n<#--判断是否有自定义模型表-->\n<#if tableName??>\n LEFT JOIN ${tableName} ON ${tableName}.link_id=cms_content.id\n#if>\nWHERE\n content_display=0\n and category_display=\'enable\'\n and cms_content.del=0\n\n<#--文章审核-->\n<#if contentApprove?? && contentApprove>\n and cms_content.progress_status=\'终审通过\'\n#if>\n<#--根据站点编号查询-->\n<#if appId?? >\n and cms_content.app_id=${appId}\n and cms_content.id>0\n#if>\n<#--判断是否有搜索分类集合,暂时移除 _typeid=\"\" 条件-->\n<#if search??>\n and category_is_search=\'enable\'\n <#-- 文章标签 -->\n <#if search.content_tag??>and FIND_IN_SET(\'${search.content_tag}\',content_tags) > 0#if>\n <#if search.categoryIds?has_content>and FIND_IN_SET(category.id,\'${search.categoryIds}\') > 0#if>\n <#--标题-->\n <#if search.content_title??> and content_title like CONCAT(CONCAT(\'%\',\'${search.content_title}\'),\'%\')#if>\n <#--作者-->\n <#if search.content_author??> and content_author like CONCAT(CONCAT(\'%\',\'${search.content_author}\'),\'%\')#if>\n <#--来源-->\n <#if search.content_source??> and content_source like CONCAT(CONCAT(\'%\',\'${search.content_source}\'),\'%\')#if>\n <#--属性-->\n <#if search.content_type??>\n and(<#list search.content_type?split(\',\') as item>\n <#if item?index gt 0> or#if>\n FIND_IN_SET(\'${item}\',cms_content.content_type) > 0\n #list>)\n #if>\n <#--描述-->\n <#if search.content_description??>\n and content_description like CONCAT(CONCAT(\'%\',\'${search.content_description}\'),\'%\')\n #if>\n <#--关键字-->\n <#if search.content_keyword??> and content_keyword like CONCAT(CONCAT(\'%\',\'${search.content_keyword}\'),\'%\')#if>\n <#--内容-->\n <#if search.content_details??> and content_details like CONCAT(CONCAT(\'%\',\'${search.content_details}\'),\'%\')#if>\n <#--自定义顺序-->\n <#if search.content_sort??> and content_sort=${search.content_sort}#if>\n <#--时间范围-->\n <#if search.content_datetime_start??&&search.content_datetime_end??>\n and content_datetime between \'${search.content_datetime_start}\' and \'${search.content_datetime_end}\'\n #if>\n<#else>\n <#--查询栏目-->\n <#if _typeid?has_content && _typeid?string != \'0\'>\n and (cms_content.category_id=${_typeid}\n or cms_content.category_id in (select id FROM cms_category where cms_category.del=0\n <#if _typetitle?has_content>\n and cms_category.category_title=\'${_typetitle}\'\n #if>\n and FIND_IN_SET(${_typeid},CATEGORY_PARENT_IDS) > 0))\n <#elseif typeids?has_content>\n and (\n <#list typeids?split(\",\") as item>\n <#if item.index > 1>\n or\n #if>\n (cms_content.category_id=${item}\n or FIND_IN_SET(\'${item}\', cms_content.category_ids) > 0\n or cms_content.category_id in (select id FROM cms_category where cms_category.del=0\n <#if _typetitle?has_content>\n and cms_category.category_title=\'${_typetitle}\'\n #if>\n and FIND_IN_SET(${item},CATEGORY_PARENT_IDS) > 0)\n )\n #list>\n )\n #if>\n#if>\n<#--判断搜索分类结束-->\n<#--标题-->\n<#if content_title??> and content_title like CONCAT(CONCAT(\'%\',\'${content_title}\'),\'%\')#if>\n<#--作者-->\n<#if content_author??> and content_author like CONCAT(CONCAT(\'%\',\'${content_author}\'),\'%\')#if>\n<#--来源-->\n<#if content_source??> and content_source like CONCAT(CONCAT(\'%\',\'${content_source}\'),\'%\')#if>\n<#--属性-->\n<#if content_type??> and content_type like CONCAT(CONCAT(\'%\',\'${content_type}\'),\'%\')#if>\n<#--描述-->\n<#if content_description??> and content_description like CONCAT(CONCAT(\'%\',\'${content_description}\'),\'%\')#if>\n<#--关键字-->\n<#if content_keyword??> and content_keyword like CONCAT(CONCAT(\'%\',\'${content_keyword}\'),\'%\')#if>\n<#--内容-->\n<#if content_details??> and content_details like CONCAT(CONCAT(\'%\',\'${content_details}\'),\'%\')#if>\n<#--自定义顺序-->\n<#if content_sort??> and content_sort=${content_sort}#if>\n<#--自定义模型-->\n<#if diyModel??>\n <#list diyModel as dm>\n <#assign json=\"${dm}\"?eval />\n and ${tableName}.${json.key} like CONCAT(CONCAT(\'%\',\'${json.value}\'),\'%\')\n #list>\n#if>\n<#--文章属性-->\n<#if flag?? >\n and(<#list flag?split(\',\') as item>\n <#if item?index gt 0> or#if>\n FIND_IN_SET(\'${item}\',cms_content.content_type) > 0\n #list>)\n#if>\n<#if noflag??>\n and(<#list noflag?split(\',\') as item>\n <#if item?index gt 0> and#if>\n FIND_IN_SET(\'${item}\',cms_content.content_type)=0\n #list> or cms_content.content_type is null)\n#if>\n\n <#--字段排序-->\n ORDER BY\n <#if topflag??>\n CASE\n <#list topflag?split(\",\") as item>\n WHEN FIND_IN_SET(\'${item}\',cms_content.content_type)>0 THEN\n ${item?index}\n #list>\n ELSE 100\n END,\n #if>\n ${_orderby}\n <#if order?? >\n <#if order==\'desc\'> desc#if>\n <#if order==\'asc\'> asc#if>\n <#else>\n desc\n #if>\n LIMIT\n <#--判断是否分页-->\n <#if ispaging?? && (pageTag.pageNo)??>\n ${((pageTag.pageNo-1)*_size?eval)?c},${_size?default(20)}\n <#else>\n ${_size?default(20)}\n #if>\n', NULL, '文章列表', NULL, NULL, NULL, NULL, 0, 1);
INSERT INTO `mdiy_tag` (`id`, `tag_name`, `tag_type`, `tag_sql`, `tag_class`, `tag_description`, `UPDATE_BY`, `UPDATE_DATE`, `CREATE_BY`, `CREATE_DATE`, `DEL`, `NOT_DEL`) VALUES (4, 'channel', 'list', '<#assign _typeid=\'0\'/>\n<#assign _size=\'9999\'/>\n<#if column?? && column.id?? && column.id?number gt 0>\n <#assign _typeid=\'${column.id}\'>\n <#assign selfid=\'${column.id}\'>\n#if>\n\n<#if typeid??>\n <#assign _typeid=\'${typeid}\'>\n#if>\n<#if size??>\n <#assign _size=\'${size}\'>\n#if>\n\nselect\n cms_category.id as \"id\",\n cms_category.id as \"typeid\",\n cms_category.category_title as \"typetitle\",\n cms_category.category_short_title as \"typeshorttitle\",\n <#--动态链接-->\n <#if isDo?? && isDo>\n IF(cms_category.category_type=2,CONCAT(\'${modelName}/view.do?style=${templateName!\"\"}&typeid=\', cms_category.id),CONCAT(\'${modelName}/list.do?style=${templateName!\"\"}&typeid=\', cms_category.id)) as \"typelink\",\n <#else>\n <#--栏目类型为链接-->\n <#if shortSwitch?? && shortSwitch>\n CONCAT(cms_category.category_pinyin,\'.html\') AS \"typelink\",\n <#else>\n CONCAT(cms_category.category_path,\'/index.html\') as \"typelink\",\n #if>\n #if>\n cms_category.category_keyword as \"typekeyword\",\n cms_category.category_diy_url as \"typeurl\",\n cms_category.category_flag as \"flag\",\n cms_category.category_id as \"parentid\",\n cms_category.category_parent_ids as \"parentids\",\n cms_category.category_descrip as \"typedescrip\",\n cms_category.category_type as \"type\",\n cms_category.category_path as \"typepath\",\n cms_category.leaf as \"typeleaf\",\n cms_category.category_img as \"typelitpic\" ,\n cms_category.category_ico as \"typeico\" ,\n <#if tableName??>${tableName}.*,#if>\n ( SELECT count(*) FROM cms_category cc WHERE cc.category_id = cms_category.id AND cc.del = 0 ) AS \"childsize\"\nfrom\n cms_category\n <#--判断是否有自定义模型表-->\n <#if tableName??>LEFT JOIN ${tableName} ON ${tableName}.link_id=cms_category.id#if>\nwhere\n cms_category.del=0\n and cms_category.category_display = \'enable\'\n <#--自定义模型-->\n <#if diyModel??>\n <#list diyModel as dm>\n <#assign json=\"${dm}\"?eval />\n and ${tableName}.${json.key} like CONCAT(\'%\',\'${json.value}\',\'%\')\n #list>\n #if>\n <#--根据站点编号查询-->\n <#if appId?? >\n and cms_category.app_id=${appId}\n #if>\n\n <#--栏目属性-->\n <#if flag?? >\n and\n (<#list flag?split(\',\') as item>\n <#if item?index gt 0> or#if>\n FIND_IN_SET(\'${item}\',cms_category.category_flag)\n #list>)\n #if>\n\n <#if noflag?? >\n and\n (<#list noflag?split(\',\') as item>\n <#if item?index gt 0> and#if>\n FIND_IN_SET(\'${item}\',cms_category.category_flag)=0\n #list> or cms_category.category_flag is null)\n #if>\n\n <#--type默认son-->\n <#if !type??||!type?has_content>\n <#assign type=\'son\'/>\n #if>\n\n <#if type?has_content>\n <#--顶级栏目(单个)-->\n <#if type==\'top\'>\n <#if _typeid != \'0\'>\n and (cms_category.id = cms_category.top_id or cms_category.top_id = 0)\n #if>\n\n <#elseif type==\'nav\'>\n and(cms_category.category_id=0 or cms_category.category_id is null)\n\n <#--同级栏目(多个)-->\n <#elseif type==\'level\'>\n <#if _typeid != \'0\'>\n and cms_category.category_id=(select category_id from cms_category where id=${_typeid})\n #if>\n\n <#--当前栏目(单个)-->\n <#elseif type==\'self\'>\n <#if _typeid != \'0\'>\n and cms_category.id=${_typeid}\n #if>\n\n <#--当前栏目的所属栏目(多个)-->\n <#elseif type==\'path\'>\n <#if _typeid != \'0\'>\n and cms_category.id in\n (<#if column?? && column.categoryParentIds??>${column.categoryParentIds},#if>${_typeid})\n #if>\n\n <#--子栏目(多个)-->\n <#elseif type==\'son\'>\n <#if _typeid != \'0\'>\n and cms_category.category_id=${_typeid}\n #if>\n\n <#--上一级栏目没有则取当前栏目(单个)-->\n <#elseif type==\'parent\'>\n <#if _typeid != \'0\'>\n and\n <#if column?? && column.categoryId??>\n cms_category.id=${column.categoryId}\n <#else>\n cms_category.id=${_typeid}\n #if>\n #if>\n #if>\n\n <#else> <#--默认顶级栏目-->\n and\n <#if _typeid != \'0\'>\n cms_category.id=${_typeid}\n <#else>\n (cms_category.category_id=0 or cms_category.category_id is null)\n #if>\n #if>\n\n <#--字段排序-->\n <#if type == \'path\'>\n ORDER BY cms_category.category_path asc\n <#else>\n <#if orderby?? >\n ORDER BY\n <#if orderby==\'date\'> cms_category.create_date\n <#elseif orderby==\'sort\'> cms_category.category_sort\n <#else>cms_category.id\n #if>\n #if>\n\n <#if order?? >\n <#if order==\'desc\'> desc#if>\n <#if order==\'asc\'> asc#if>\n #if>\n #if>\n LIMIT\n ${_size?default(9999)}', NULL, '通用栏目', NULL, NULL, NULL, NULL, 0, 1);
INSERT INTO `mdiy_tag` (`id`, `tag_name`, `tag_type`, `tag_sql`, `tag_class`, `tag_description`, `UPDATE_BY`, `UPDATE_DATE`, `CREATE_BY`, `CREATE_DATE`, `DEL`, `NOT_DEL`) VALUES (5, 'global', 'single', 'select\n APP_NAME as \"name\",\n app_logo as \"logo\",\n app_keyword as \"keyword\",\n app_description as \"descrip\",\n app_copyright as \"copyright\",\n \'${contextPath}\' as \"contextpath\",\n <#--动态解析 -->\n <#if isDo?? && isDo>\n \'${url}\' as \"url\",\n \'${url}\' as \"host\",\n \'/\' as \"html\",\n <#--使用地址栏的域名 -->\n <#else>\n <#if shortSwitch?? && shortSwitch>\n CONCAT(\'${url}\',\'${appDir}<#if appDir?has_content>/#if>\') as \"url\",\n \'<#if appDir?has_content>/#if>${appDir}/\' as \"html\",\n <#else>\n CONCAT(CONCAT(\'${url}\',\'${html}\'),\'<#if appDir?has_content>/${appDir}#if>\') as \"url\",\n CONCAT(CONCAT(\'/${html}\',\'<#if appDir?has_content>/${appDir}#if>\'),\'/\') as \"html\",\n #if>\n \'${url}\' as \"host\",\n #if>\n CONCAT(CONCAT(CONCAT(CONCAT(\'template/\',id),\'/\'),app_style),\'/\') as \"style\"\nfrom app\n <#--根据站点编号查询-->\n <#if appId?? >\n where id = ${appId}\n #if>', NULL, '全局', NULL, NULL, NULL, NULL, 0, 1);
INSERT INTO `mdiy_tag` (`id`, `tag_name`, `tag_type`, `tag_sql`, `tag_class`, `tag_description`, `UPDATE_BY`, `UPDATE_DATE`, `CREATE_BY`, `CREATE_DATE`, `DEL`, `NOT_DEL`) VALUES (7, 'field', 'single', 'SELECT\n cms_content.id as \"id\",\n <#--这里会存在id覆盖的情况,所以需要在cms_content.id下面-->\n <#if tableName??>${tableName}.*,#if>\n <#--查询站点编号-->\n <#if appId??>\n cms_content.app_id as \"appId\",\n #if>\n content_title as \"title\",\n content_short_title AS \"shorttitle\",\n content_author as \"author\",\n content_source as \"source\",\n content_details as \"content\",\n content_datetime as \"date\",\n content_description as \"descrip\",\n content_keyword as \"keyword\",\n <#if contextPath?? && contextPath != \"/\">\n CONCAT(CONCAT( \'\') as \"hit\",\n <#else>\n CONCAT(CONCAT( \'\') as \"hit\",\n #if>\n content_type as \"flag\",\n category_title as \"typetitle\",\n cms_content.content_img as \"litpic\",\n <#--内容页动态链接-->\n <#if isDo?? && isDo>\n CONCAT(\'/mcms/view.do?id=\', cms_content.id) as \"link\",\n <#else>\n <#if shortSwitch?? && shortSwitch>\n CONCAT(cms_content.id, \'.html\' ) as \"link\",\n <#else>\n CONCAT(CONCAT( cms_category.category_path, \'/\' ), CONCAT(cms_content.id, \'.html\' )) as \"link\",\n #if>\n #if>\n cms_category.id as \"typeid\",\n cms_category.leaf as \"typeleaf\",\n cms_category.category_title as \"typetitle\",\n cms_category.category_short_title AS \"typeshorttitle\",\n cms_category.category_img as \"typelitpic\",\n cms_category.category_ico as \"typeico\",\n cms_category.category_path as \"typepath\",\n cms_category.top_id as \"topid\",\n cms_category.category_flag as \"typeflag\",\n cms_category.category_id as \"parentid\",\n cms_category.category_parent_ids as \"parentids\",\n cms_category.category_keyword as \"typekeyword\",\n cms_category.category_descrip as \"typedescrip\",\n <#--动态链接-->\n <#if isDo?? && isDo>\n CONCAT(\'/${modelName}/list.do?typeid=\', cms_category.id) as \"typelink\"\n <#else>\n <#if shortSwitch?? && shortSwitch>\n CONCAT(category_pinyin,\'.html\') AS \"typelink\"\n <#else>\n CONCAT(category_path,\'/index.html\') AS \"typelink\"\n #if>\n #if>\n\nFROM cms_content\n LEFT JOIN cms_category ON\n cms_category.id = cms_content.category_id\n <#--判断是否有自定义模型表-->\n <#if tableName??>left join ${tableName} on ${tableName}.link_id=cms_content.id#if>\nWHERE\n <#--如果是栏目列表页没有文章id所以只取栏目id-->\n <#if column??&&column.id??&&!id??>\n cms_category.id=${column.id} and\n #if>\n <#--根据站点编号查询-->\n <#if appId??>\n cms_content.app_id = ${appId} and\n #if>\n cms_content.del=0\n <#if id??> and cms_content.id=${id}#if>\n', NULL, '文章内容', NULL, NULL, NULL, NULL, 0, 1);
@@ -40,7 +35,7 @@ INSERT INTO `mdiy_tag` (`id`, `tag_name`, `tag_type`, `tag_sql`, `tag_class`, `t
INSERT INTO `mdiy_tag` (`id`, `tag_name`, `tag_type`, `tag_sql`, `tag_class`, `tag_description`, `UPDATE_BY`, `UPDATE_DATE`, `CREATE_BY`, `CREATE_DATE`, `DEL`, `NOT_DEL`) VALUES (10, 'next', 'single', '<#assign select=\"\'\'\"/>\n<#if orderby?? >\n <#if orderby==\"date\">\n <#assign _orderby=\"content_datetime\">\n <#elseif orderby==\"updatedate\">\n <#assign _orderby=\"cms_content.update_date\">\n <#elseif orderby==\"hit\">\n <#assign _orderby=\"content_hit\">\n <#elseif orderby==\"sort\">\n <#assign _orderby=\"content_sort\">\n <#else>\n <#assign _orderby=\"cms_content.id\">#if>\n <#else>\n <#assign _orderby=\"cms_content.id\">\n #if>\n<#--开始-->\n<#if pageTag.nextId??>\n SELECT\n cms_content.id as \"id\",\n content_title as \"title\",\n content_author as \"author\",\n content_source as \"source\",\n content_details as \"content\",\n category.category_title as \"typename\",\n category.category_id as \"typeid\",\n <#if isDo?? && isDo>\n CONCAT(\'/${modelName}/list.do?typeid=\', cms_category.id) as \"typelink\",\n <#else>\n <#if shortSwitch?? && shortSwitch>\n CONCAT(category.category_pinyin,\'.html\') AS \"typelink\",\n <#else>\n CONCAT(category.category_path,\'/index.html\') AS \"typelink\",\n #if>\n #if>\n content_img as \"litpic\",\n <#--内容页动态链接-->\n <#if isDo?? && isDo>\n CONCAT(\'${modelName}/view.do?id=\', cms_content.id,\'&orderby=${_orderby}\',\'&order=${order!\'ASC\'}\',\'&typeid=${typeid}\') as \"link\",\n <#else>\n <#if shortSwitch?? && shortSwitch>\n CONCAT(cms_content.id,\'.html\') AS \"link\",\n <#else>\n CONCAT(CONCAT(category_path,\'/\'),CONCAT(cms_content.id,\'.html\')) AS \"link\",\n #if>\n #if>\n content_description as \"descrip\",\n content_hit as \"hit\",\n content_type as \"flag\",\n content_keyword as \"keyword\"\n FROM cms_content\n LEFT JOIN cms_category category ON cms_content.category_id=category.id\n WHERE cms_content.id=${pageTag.nextId}\n<#else>\n SELECT\n ${select} as \"id\",\n \'没有了\' as \"title\",\n ${select} as \"author\",\n ${select} as \"source\",\n ${select} as \"content\",\n ${select} as \"typename\",\n ${select} as \"typeid\",\n ${select} as \"typelink\",\n ${select} as \"litpic\",\n ${select} as \"link\",\n ${select} as \"date\",\n ${select} as \"descrip\",\n ${select} as \"hit\",\n ${select} as \"flag\",\n ${select} as \"keyword\"\n FROM dual\n#if>\n', NULL, '文章下一篇', NULL, NULL, NULL, NULL, 0, 1);
INSERT INTO `mdiy_tag` (`id`, `tag_name`, `tag_type`, `tag_sql`, `tag_class`, `tag_description`, `UPDATE_BY`, `UPDATE_DATE`, `CREATE_BY`, `CREATE_DATE`, `DEL`, `NOT_DEL`) VALUES (11, 'diyform', 'macro', '<#macro ms_diyform formName>\n\n\n#macro>', NULL, '智能表单', '57', '2022-11-15 16:10:49', NULL, NULL, 0, 1);
INSERT INTO `mdiy_tag` (`id`, `tag_name`, `tag_type`, `tag_sql`, `tag_class`, `tag_description`, `UPDATE_BY`, `UPDATE_DATE`, `CREATE_BY`, `CREATE_DATE`, `DEL`, `NOT_DEL`) VALUES (12, 'data', 'list', 'SELECT\n cms_content.id AS \"id\",\n content_title AS \"title\",\n content_author AS \"author\",\n content_source AS \"source\",\n content_details AS \"content\",\n content_out_link AS \"outlink\",\n content_short_title AS \"shorttitle\",\n category.category_title AS \"typetitle\",\n category.category_short_title AS \"typeshorttitle\",\n category.id AS \"typeid\",\n category.category_path AS \"typepath\",\n category.category_img AS \"typelitpic\",\n category.category_ico AS \"typeico\",\n category.category_keyword AS \"typekeyword\",\n category.top_id AS \"topid\",\n category.category_parent_ids AS \"parentids\",\n category.category_type AS \"type\",\n <#--列表页动态链接-->\n <#if isDo?? && isDo>\n CONCAT(\'/${modelName}/list.do?style=${templateName!\"\"}&typeid=\', category.category_id) AS \"typelink\",\n <#else>\n <#if shortSwitch?? && shortSwitch>\n CONCAT(category_pinyin,\'.html\') AS \"typelink\",\n <#else>\n CONCAT(category_path,\'/index.html\') AS \"typelink\",\n #if>\n #if>\n content_description AS \"descrip\",\n content_hit AS \"hit\",\n content_type AS \"flag\",\n cms_content.content_keyword AS \"keyword\",\n content_img AS \"litpic\",\n <#--内容页动态链接-->\n <#if isDo?? && isDo>\n CONCAT(\'/${modelName}/view.do?style=${templateName!\"\"}&id=\', cms_content.id) AS \"link\",\n <#else>\n <#if shortSwitch?? && shortSwitch>\n CONCAT(cms_content.id,\'.html\') AS \"link\",\n <#else>\n CONCAT(CONCAT(CONCAT(category.category_path,\'/\'),cms_content.id),\'.html\') AS \"link\",\n #if>\n #if>\n <#if tableName??>${tableName}.*,#if>\n content_datetime AS \"date\"\nFROM\n cms_content LEFT JOIN cms_category category ON cms_content.category_id = category.id\n <#--判断是否有自定义模型表-->\n <#if tableName??>\n LEFT JOIN ${tableName} ON ${tableName}.link_id=cms_content.id\n #if>\nWHERE\n content_display=0\n and category_display=\'enable\'\n and cms_content.del=0\n <#--根据站点编号查询-->\n <#if appId?? >\n and cms_content.app_id=${appId}\n #if>\n and cms_content.id=${dataid}\n\n', NULL, '单篇', '57', '2022-11-15 16:10:49', NULL, NULL, 0, 1);
-INSERT INTO `mdiy_tag` (`id`, `tag_name`, `tag_type`, `tag_sql`, `tag_class`, `tag_description`, `UPDATE_BY`, `UPDATE_DATE`, `CREATE_BY`, `CREATE_DATE`, `DEL`, `NOT_DEL`) VALUES (17, 'tag', 'single', '<#assign _typeid=\'0\'/>\n<#assign order=\'desc\'/>\n<#assign _size=\'99\'/>\n<#if column?? && column.id?? && column.id?number gt 0>\n <#assign _typeid=\'${column.id}\'>\n#if>\n\n<#if typeid??>\n <#assign _typeid=\'${typeid}\'>\n#if>\n<#if size??>\n <#assign _size=\'${size}\'>\n#if>\n\nSELECT\n GROUP_CONCAT( content_tags ) AS tags\nFROM\n cms_content\nLEFT JOIN cms_category ON cms_content.category_id = cms_category.id\nWHERE\n cms_category.category_display = \'enable\'\n AND cms_content.del = 0\n AND cms_content.content_display = 0\n AND LENGTH( cms_content.content_tags )>0\n <#if _typeid != \'0\'>\n AND cms_category.id = ${_typeid}\n #if>\n <#if appId??>\n AND cms_content.app_id = ${appId}\n #if>\nORDER BY CONTENT_HIT DESC\nLimit ${_size}', '', '文章标签配置,不提供模板使用', '', '2023-06-12 17:26:19', '57', '2023-05-23 09:31:49', 57, 1);
+INSERT INTO `mdiy_tag` (`id`, `tag_name`, `tag_type`, `tag_sql`, `tag_class`, `tag_description`, `UPDATE_BY`, `UPDATE_DATE`, `CREATE_BY`, `CREATE_DATE`, `DEL`, `NOT_DEL`) VALUES (17, 'tag', 'single', '<#assign _typeid=\'0\'/>\n<#assign order=\'desc\'/>\n<#assign _size=\'99\'/>\n<#if column?? && column.id?? && column.id?number gt 0>\n <#assign _typeid=\'${column.id}\'>\n#if>\n\n<#if typeid??>\n <#assign _typeid=\'${typeid}\'>\n#if>\n<#if size??>\n <#assign _size=\'${size}\'>\n#if>\n\nSELECT\n GROUP_CONCAT( content_tags ) AS tags\nFROM\n cms_content\nLEFT JOIN cms_category ON cms_content.category_id = cms_category.id\nWHERE\n cms_category.category_display = \'enable\'\n AND cms_content.del = 0\n AND cms_content.content_display = 0\n AND LENGTH( cms_content.content_tags )>0\n <#if _typeid != \'0\'>\n AND (cms_category.id = ${_typeid} or FIND_IN_SET(${_typeid},cms_category.category_parent_ids))\n #if>\n <#if appId??>\n AND cms_content.app_id = ${appId}\n #if>\nORDER BY CONTENT_HIT DESC\nLimit ${_size}', '', '文章标签配置,不提供模板使用', '', '2023-06-12 17:26:19', '57', '2023-05-23 09:31:49', 57, 1);
INSERT INTO `mdiy_tag` (`id`, `tag_name`, `tag_type`, `tag_sql`, `tag_class`, `tag_description`, `UPDATE_BY`, `UPDATE_DATE`, `CREATE_BY`, `CREATE_DATE`, `DEL`, `NOT_DEL`) VALUES (18, 'tags', 'macro', '<#assign tags=\"\">\n<#macro ms_tags>\n <#if tag??>\n <#assign ___tags = tag.tags?split(\",\")>\n <#list ___tags as tag>\n <#list ___tags as _tag>\n <#if tag == _tag>\n <#if tag_index == _tag_index>\n <#assign tags+=tag+\",\">\n <#else>\n <#break>\n #if>\n #if>\n #list>\n #list>\n #if>\n#macro>', '', '文章标签', '', '2023-06-12 17:26:21', '57', '2023-05-23 09:31:40', 57, 1);
COMMIT;
diff --git a/doc/mcms-5.3.2.sql b/doc/mcms-5.3.3.sql
similarity index 98%
rename from doc/mcms-5.3.2.sql
rename to doc/mcms-5.3.3.sql
index 7e135446..72727e7c 100644
--- a/doc/mcms-5.3.2.sql
+++ b/doc/mcms-5.3.3.sql
@@ -32,7 +32,7 @@ CREATE TABLE `app` (
-- Records of app
-- ----------------------------
BEGIN;
-INSERT INTO `app` (`id`, `app_name`, `app_url`, `app_logo`, `app_keyword`, `app_copyright`, `app_style`, `app_description`, `app_pay`, `app_state`, `app_datetime`, `app_pay_date`, `app_dir`, `update_date`, `update_by`, `create_date`, `create_by`, `del`) VALUES (1, '5.3.2 铭飞MCMS', 'http://localhost:8080/', '[{\"url\":\"/upload/1/appLogo/1609397756549.png\",\"name\":\"logo_small.png\",\"path\":\"/upload/1/appLogo/1609397756549.png\",\"uid\":1685699633311,\"status\":\"success\"}]', 'CMS,免费CMS,免费开源Java CMS,CMS系统,Java CMS,CMS内容管理系统,企业CMS,HTML网页模板,CMS模板,CMS源码,网站源码,信创系统软件,安可系统,网站建设,模板网站,建站模板,建站工具,建站平台,建站工具', '站点版权信息,可配置', 'default', '基于java开发的一套java cms,也是轻量级开源内容管理系统,CMS简洁、安全、开源、免费,可运行在Linux、Windows、MacOSX、Solaris等各种平台上,专注为公司企业、个人站长快速建站提供解决方案,铭飞MS平台为您提供各类cms网站模板下载,公司网站、企业网站模板、网站后台系统模板、免费网站模板,10年建站公司老品牌值得信赖的cms!', '', 0, NULL, '2019-11-17 00:00:00', 'web', '2023-06-29 09:35:00', '57', NULL, '', 0);
+INSERT INTO `app` (`id`, `app_name`, `app_url`, `app_logo`, `app_keyword`, `app_copyright`, `app_style`, `app_description`, `app_pay`, `app_state`, `app_datetime`, `app_pay_date`, `app_dir`, `update_date`, `update_by`, `create_date`, `create_by`, `del`) VALUES (1, '5.3.3 铭飞MCMS', 'http://localhost:8080/', '[{\"url\":\"/upload/1/appLogo/1609397756549.png\",\"name\":\"logo_small.png\",\"path\":\"/upload/1/appLogo/1609397756549.png\",\"uid\":1685699633311,\"status\":\"success\"}]', 'CMS,免费CMS,免费开源Java CMS,CMS系统,Java CMS,CMS内容管理系统,企业CMS,HTML网页模板,CMS模板,CMS源码,网站源码,信创系统软件,安可系统,网站建设,模板网站,建站模板,建站工具,建站平台,建站工具', '站点版权信息,可配置', 'default', '基于java开发的一套java cms,也是轻量级开源内容管理系统,CMS简洁、安全、开源、免费,可运行在Linux、Windows、MacOSX、Solaris等各种平台上,专注为公司企业、个人站长快速建站提供解决方案,铭飞MS平台为您提供各类cms网站模板下载,公司网站、企业网站模板、网站后台系统模板、免费网站模板,10年建站公司老品牌值得信赖的cms!', '', 0, NULL, '2019-11-17 00:00:00', 'web', '2023-06-29 09:35:00', '57', NULL, '', 0);
COMMIT;
-- ----------------------------
@@ -185,6 +185,30 @@ INSERT INTO `cms_content` (`id`, `category_id`, `content_details`, `content_titl
INSERT INTO `cms_content` (`id`, `category_id`, `content_details`, `content_title`, `content_short_title`, `content_keyword`, `content_description`, `content_img`, `content_source`, `content_author`, `content_display`, `content_type`, `content_datetime`, `content_sort`, `content_tags`, `content_hit`, `content_out_link`, `has_detail_html`, `update_date`, `has_list_html`, `update_by`, `create_date`, `create_by`, `del`) VALUES (1674338953676128258, 1666653706550321162, '', '任务大厅', '', '', '', '[{\"url\":\"/upload/1/cms/content/1686278659721.jpg\",\"name\":\"a.png\",\"path\":\"/upload/1/cms/content/1686278659721.jpg\",\"uid\":16098386909801,\"status\":\"success\"}]', 'https://www.mingsoft.net/renwudating.html', '', '0', '', '2023-06-29 16:47:51', 0, '', 0, '', 0, '2023-06-29 17:05:47', 0, '57', '2023-06-29 17:05:47', '57', 0);
COMMIT;
+-- ----------------------------
+-- Table structure for cms_history_log
+-- ----------------------------
+DROP TABLE IF EXISTS `cms_history_log`;
+CREATE TABLE `cms_history_log` (
+ `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
+ `content_id` bigint(20) unsigned NOT NULL COMMENT '文章编号',
+ `people_id` int(20) DEFAULT NULL COMMENT '用户id',
+ `hl_ip` varchar(255) DEFAULT NULL COMMENT '浏览ip',
+ `hl_is_mobile` varchar(255) DEFAULT NULL COMMENT '是否为移动端',
+ `update_date` datetime DEFAULT NULL COMMENT '修改时间',
+ `update_by` varchar(11) DEFAULT NULL COMMENT '修改人',
+ `create_date` datetime DEFAULT NULL COMMENT '创建时间',
+ `create_by` varchar(11) DEFAULT NULL COMMENT '创建人',
+ `del` int(1) DEFAULT '0' COMMENT '删除标记',
+ PRIMARY KEY (`id`) USING BTREE
+) ENGINE=InnoDB AUTO_INCREMENT=99 DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC COMMENT='文章浏览记录';
+
+-- ----------------------------
+-- Records of cms_history_log
+-- ----------------------------
+BEGIN;
+COMMIT;
+
-- ----------------------------
-- Table structure for logger
-- ----------------------------
@@ -213,11 +237,6 @@ CREATE TABLE `logger` (
PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC COMMENT='系统日志';
--- ----------------------------
--- Records of logger
--- ----------------------------
-BEGIN;
-COMMIT;
-- ----------------------------
-- Table structure for manager
@@ -397,7 +416,7 @@ CREATE TABLE `mdiy_tag` (
-- Records of mdiy_tag
-- ----------------------------
BEGIN;
-INSERT INTO `mdiy_tag` (`id`, `tag_name`, `tag_type`, `tag_sql`, `tag_class`, `tag_description`, `UPDATE_BY`, `UPDATE_DATE`, `CREATE_BY`, `CREATE_DATE`, `DEL`, `NOT_DEL`) VALUES (3, 'arclist', 'list', '<#assign _typeid=\'\'/>\n<#assign _typetitle=\'\'/>\n<#-- 分页数,默认返回20条数据 -->\n<#assign _size=\'20\'/>\n<#if column?? && column.id?? && column.id?number gt 0>\n <#assign _typeid=\'${column.id}\'>\n#if>\n<#if typeid??>\n <#assign _typeid=\'${typeid}\'>\n#if>\n<#if typetitle??>\n <#assign _typetitle=\'${typetitle}\'>\n#if>\n<#if size??>\n <#assign _size=\'${size}\'>\n#if>\n\n<#if orderby?? >\n <#if orderby==\'date\'>\n <#assign _orderby=\'content_datetime\'>\n <#elseif orderby==\'updatedate\'>\n <#assign _orderby=\'cms_content.update_date\'>\n <#elseif orderby==\'hit\'>\n <#assign _orderby=\'content_hit\'>\n <#elseif orderby==\'sort\'>\n <#assign _orderby=\'content_sort\'>\n <#else>\n <#assign _orderby=\'cms_content.content_datetime\'>\n #if>\n<#else>\n <#assign _orderby=\'cms_content.content_datetime\'>\n#if>\n\nSELECT\n cms_content.id AS \"id\",\n content_title AS \"title\",\n content_short_title AS \"shorttitle\",\n content_author AS \"author\",\n content_source AS \"source\",\n content_out_link AS \"outlink\",\n\n category.category_title AS \"typetitle\",\n category.category_short_title AS \"typeshorttitle\",\n category.id AS \"typeid\",\n category.category_path AS \"typepath\",\n category.category_img AS \"typelitpic\",\n category.category_ico AS \"typeico\",\n category.category_keyword as \"typekeyword\",\n category.top_id as \"topid\",\n category.category_id as \"parentid\",\n category.category_parent_ids as \"parentids\",\n category.category_type AS \"type\",\n <#--列表页动态链接-->\n <#if isDo?? && isDo>\n CONCAT(\'${modelName}/list.do?style=${templateName!\"\"}&typeid=\', category.category_id) as \"typelink\",\n <#else>\n <#--栏目类型为链接-->\n <#if shortSwitch?? && shortSwitch>\n CONCAT(category.category_pinyin,\'.html\') AS \"typelink\",\n <#else>\n CONCAT(category.category_path,\'/index.html\') AS \"typelink\",\n #if>\n #if>\n content_description AS \"descrip\",\n content_hit AS \"hit\",\n content_type AS \"flag\",\n cms_content.content_keyword AS \"keyword\",\n content_img AS \"litpic\",\n <#--内容页动态链接-->\n <#if isDo?? && isDo>\n CONCAT(\'${modelName}/view.do?style=${templateName!\"\"}&id=\', cms_content.id) as \"link\",\n <#else>\n <#if shortSwitch?? && shortSwitch>\n CONCAT(cms_content.id,\'.html\') AS \"link\",\n <#else>\n CONCAT(CONCAT( category.category_path, \'/\' ), CONCAT(CASE category_type WHEN \'2\' THEN \'index\' ELSE cms_content.id END , \'.html\' )) as \"link\",\n #if>\n #if>\n <#if tableName??>${tableName}.*,#if>\n content_datetime AS \"date\"\nFROM\n cms_content\nLEFT JOIN\n cms_category as category\nON cms_content.category_id = category.id\n<#--判断是否有自定义模型表-->\n<#if tableName??>\n LEFT JOIN ${tableName} ON ${tableName}.link_id=cms_content.id\n#if>\nWHERE\n content_display=0\n and category_display=\'enable\'\n and cms_content.del=0\n\n\n<#--根据站点编号查询-->\n<#if appId?? >\n and cms_content.app_id=${appId}\n and cms_content.id>0\n#if>\n<#--判断是否有搜索分类集合,暂时移除 _typeid=\"\" 条件-->\n<#if search??>\n and category_is_search=\'enable\'\n <#-- 文章标签 -->\n <#if search.content_tag??>and FIND_IN_SET(\'${search.content_tag}\',content_tags) > 0#if>\n <#if search.categoryIds?has_content>and FIND_IN_SET(category.id,\'${search.categoryIds}\') > 0#if>\n <#--标题-->\n <#if search.content_title??> and content_title like CONCAT(CONCAT(\'%\',\'${search.content_title}\'),\'%\')#if>\n <#--作者-->\n <#if search.content_author??> and content_author like CONCAT(CONCAT(\'%\',\'${search.content_author}\'),\'%\')#if>\n <#--来源-->\n <#if search.content_source??> and content_source like CONCAT(CONCAT(\'%\',\'${search.content_source}\'),\'%\')#if>\n <#--属性-->\n <#if search.content_type??>\n and(<#list search.content_type?split(\',\') as item>\n <#if item?index gt 0> or#if>\n FIND_IN_SET(\'${item}\',cms_content.content_type) > 0\n #list>)\n #if>\n <#--描述-->\n <#if search.content_description??>\n and content_description like CONCAT(CONCAT(\'%\',\'${search.content_description}\'),\'%\')\n #if>\n <#--关键字-->\n <#if search.content_keyword??> and content_keyword like CONCAT(CONCAT(\'%\',\'${search.content_keyword}\'),\'%\')#if>\n <#--内容-->\n <#if search.content_details??> and content_details like CONCAT(CONCAT(\'%\',\'${search.content_details}\'),\'%\')#if>\n <#--自定义顺序-->\n <#if search.content_sort??> and content_sort=${search.content_sort}#if>\n <#--时间范围-->\n <#if search.content_datetime_start??&&search.content_datetime_end??>\n and content_datetime between \'${search.content_datetime_start}\' and \'${search.content_datetime_end}\'\n #if>\n<#else>\n <#--查询栏目-->\n <#if _typeid?has_content && _typeid?string != \'0\'>\n and (cms_content.category_id=${_typeid}\n or cms_content.category_id in (select id FROM cms_category where cms_category.del=0\n <#if _typetitle?has_content>\n and cms_category.category_title=\'${_typetitle}\'\n #if>\n and FIND_IN_SET(${_typeid},CATEGORY_PARENT_IDS) > 0))\n #if>\n#if>\n<#--判断搜索分类结束-->\n<#--标题-->\n<#if content_title??> and content_title like CONCAT(CONCAT(\'%\',\'${content_title}\'),\'%\')#if>\n<#--作者-->\n<#if content_author??> and content_author like CONCAT(CONCAT(\'%\',\'${content_author}\'),\'%\')#if>\n<#--来源-->\n<#if content_source??> and content_source like CONCAT(CONCAT(\'%\',\'${content_source}\'),\'%\')#if>\n<#--属性-->\n<#if content_type??> and content_type like CONCAT(CONCAT(\'%\',\'${content_type}\'),\'%\')#if>\n<#--描述-->\n<#if content_description??> and content_description like CONCAT(CONCAT(\'%\',\'${content_description}\'),\'%\')#if>\n<#--关键字-->\n<#if content_keyword??> and content_keyword like CONCAT(CONCAT(\'%\',\'${content_keyword}\'),\'%\')#if>\n<#--内容-->\n<#if content_details??> and content_details like CONCAT(CONCAT(\'%\',\'${content_details}\'),\'%\')#if>\n<#--自定义顺序-->\n<#if content_sort??> and content_sort=${content_sort}#if>\n<#--自定义模型-->\n<#if diyModel??>\n <#list diyModel as dm>\n <#assign json=\"${dm}\"?eval />\n and ${tableName}.${json.key} like CONCAT(CONCAT(\'%\',\'${json.value}\'),\'%\')\n #list>\n#if>\n<#--文章属性-->\n<#if flag?? >\n and(<#list flag?split(\',\') as item>\n <#if item?index gt 0> or#if>\n FIND_IN_SET(\'${item}\',cms_content.content_type) > 0\n #list>)\n#if>\n<#if noflag??>\n and(<#list noflag?split(\',\') as item>\n <#if item?index gt 0> and#if>\n FIND_IN_SET(\'${item}\',cms_content.content_type)=0\n #list> or cms_content.content_type is null)\n#if>\n\n <#--字段排序-->\n ORDER BY\n <#if topflag??>\n CASE\n <#list topflag?split(\",\") as item>\n WHEN FIND_IN_SET(\'${item}\',cms_content.content_type)>0 THEN\n ${item?index}\n #list>\n ELSE 100\n END,\n #if>\n ${_orderby}\n <#if order?? >\n <#if order==\'desc\'> desc#if>\n <#if order==\'asc\'> asc#if>\n <#else>\n desc\n #if>\n LIMIT\n <#--判断是否分页-->\n <#if ispaging?? && (pageTag.pageNo)??>\n ${((pageTag.pageNo-1)*_size?eval)?c},${_size?default(20)}\n <#else>\n ${_size?default(20)}\n #if>\n', NULL, '文章列表', NULL, NULL, NULL, NULL, 0, 1);
+INSERT INTO `mdiy_tag` (`id`, `tag_name`, `tag_type`, `tag_sql`, `tag_class`, `tag_description`, `UPDATE_BY`, `UPDATE_DATE`, `CREATE_BY`, `CREATE_DATE`, `DEL`, `NOT_DEL`) VALUES (3, 'arclist', 'list', '<#assign _typeid=\'\'/>\n<#assign _typetitle=\'\'/>\n<#-- 分页数,默认返回20条数据 -->\n<#assign _size=\'20\'/>\n<#if column?? && column.id?? && column.id?number gt 0>\n <#assign _typeid=\'${column.id}\'>\n#if>\n<#if typeid??>\n <#assign _typeid=\'${typeid}\'>\n#if>\n<#if typetitle??>\n <#assign _typetitle=\'${typetitle}\'>\n#if>\n<#if size??>\n <#assign _size=\'${size}\'>\n#if>\n\n<#if orderby?? >\n <#if orderby==\'date\'>\n <#assign _orderby=\'content_datetime\'>\n <#elseif orderby==\'updatedate\'>\n <#assign _orderby=\'cms_content.update_date\'>\n <#elseif orderby==\'hit\'>\n <#assign _orderby=\'content_hit\'>\n <#elseif orderby==\'sort\'>\n <#assign _orderby=\'content_sort\'>\n <#else>\n <#assign _orderby=\'cms_content.content_datetime\'>\n #if>\n<#else>\n <#assign _orderby=\'cms_content.content_datetime\'>\n#if>\n\nSELECT\n cms_content.id AS \"id\",\n content_title AS \"title\",\n content_short_title AS \"shorttitle\",\n content_author AS \"author\",\n content_source AS \"source\",\n content_out_link AS \"outlink\",\n\n category.category_title AS \"typetitle\",\n category.category_short_title AS \"typeshorttitle\",\n category.id AS \"typeid\",\n category.category_path AS \"typepath\",\n category.category_img AS \"typelitpic\",\n category.category_ico AS \"typeico\",\n category.category_keyword as \"typekeyword\",\n category.top_id as \"topid\",\n category.category_id as \"parentid\",\n category.category_parent_ids as \"parentids\",\n category.category_type AS \"type\",\n <#--列表页动态链接-->\n <#if isDo?? && isDo>\n CONCAT(\'${modelName}/list.do?style=${templateName!\"\"}&typeid=\', category.category_id) as \"typelink\",\n <#else>\n <#--栏目类型为链接-->\n <#if shortSwitch?? && shortSwitch>\n CONCAT(category.category_pinyin,\'.html\') AS \"typelink\",\n <#else>\n CONCAT(category.category_path,\'/index.html\') AS \"typelink\",\n #if>\n #if>\n content_description AS \"descrip\",\n content_hit AS \"hit\",\n content_type AS \"flag\",\n cms_content.content_keyword AS \"keyword\",\n content_img AS \"litpic\",\n <#--内容页动态链接-->\n <#if isDo?? && isDo>\n CONCAT(\'${modelName}/view.do?style=${templateName!\"\"}&id=\', cms_content.id) as \"link\",\n <#else>\n <#if shortSwitch?? && shortSwitch>\n CONCAT(cms_content.id,\'.html\') AS \"link\",\n <#else>\n CONCAT(CONCAT( category.category_path, \'/\' ), CONCAT(CASE category_type WHEN \'2\' THEN \'index\' ELSE cms_content.id END , \'.html\' )) as \"link\",\n #if>\n #if>\n <#if tableName??>${tableName}.*,#if>\n content_datetime AS \"date\"\nFROM\n cms_content\nLEFT JOIN\n cms_category as category\nON cms_content.category_id = category.id\n<#--判断是否有自定义模型表-->\n<#if tableName??>\n LEFT JOIN ${tableName} ON ${tableName}.link_id=cms_content.id\n#if>\nWHERE\n content_display=0\n and category_display=\'enable\'\n and cms_content.del=0\n\n<#--文章审核-->\n<#if contentApprove?? && contentApprove>\n and cms_content.progress_status=\'终审通过\'\n#if>\n<#--根据站点编号查询-->\n<#if appId?? >\n and cms_content.app_id=${appId}\n and cms_content.id>0\n#if>\n<#--判断是否有搜索分类集合,暂时移除 _typeid=\"\" 条件-->\n<#if search??>\n and category_is_search=\'enable\'\n <#-- 文章标签 -->\n <#if search.content_tag??>and FIND_IN_SET(\'${search.content_tag}\',content_tags) > 0#if>\n <#if search.categoryIds?has_content>and FIND_IN_SET(category.id,\'${search.categoryIds}\') > 0#if>\n <#--标题-->\n <#if search.content_title??> and content_title like CONCAT(CONCAT(\'%\',\'${search.content_title}\'),\'%\')#if>\n <#--作者-->\n <#if search.content_author??> and content_author like CONCAT(CONCAT(\'%\',\'${search.content_author}\'),\'%\')#if>\n <#--来源-->\n <#if search.content_source??> and content_source like CONCAT(CONCAT(\'%\',\'${search.content_source}\'),\'%\')#if>\n <#--属性-->\n <#if search.content_type??>\n and(<#list search.content_type?split(\',\') as item>\n <#if item?index gt 0> or#if>\n FIND_IN_SET(\'${item}\',cms_content.content_type) > 0\n #list>)\n #if>\n <#--描述-->\n <#if search.content_description??>\n and content_description like CONCAT(CONCAT(\'%\',\'${search.content_description}\'),\'%\')\n #if>\n <#--关键字-->\n <#if search.content_keyword??> and content_keyword like CONCAT(CONCAT(\'%\',\'${search.content_keyword}\'),\'%\')#if>\n <#--内容-->\n <#if search.content_details??> and content_details like CONCAT(CONCAT(\'%\',\'${search.content_details}\'),\'%\')#if>\n <#--自定义顺序-->\n <#if search.content_sort??> and content_sort=${search.content_sort}#if>\n <#--时间范围-->\n <#if search.content_datetime_start??&&search.content_datetime_end??>\n and content_datetime between \'${search.content_datetime_start}\' and \'${search.content_datetime_end}\'\n #if>\n<#else>\n <#--查询栏目-->\n <#if _typeid?has_content && _typeid?string != \'0\'>\n and (cms_content.category_id=${_typeid}\n or cms_content.category_id in (select id FROM cms_category where cms_category.del=0\n <#if _typetitle?has_content>\n and cms_category.category_title=\'${_typetitle}\'\n #if>\n and FIND_IN_SET(${_typeid},CATEGORY_PARENT_IDS) > 0))\n <#elseif typeids?has_content>\n and (\n <#list typeids?split(\",\") as item>\n <#if item.index > 1>\n or\n #if>\n (cms_content.category_id=${item}\n or FIND_IN_SET(\'${item}\', cms_content.category_ids) > 0\n or cms_content.category_id in (select id FROM cms_category where cms_category.del=0\n <#if _typetitle?has_content>\n and cms_category.category_title=\'${_typetitle}\'\n #if>\n and FIND_IN_SET(${item},CATEGORY_PARENT_IDS) > 0)\n )\n #list>\n )\n #if>\n#if>\n<#--判断搜索分类结束-->\n<#--标题-->\n<#if content_title??> and content_title like CONCAT(CONCAT(\'%\',\'${content_title}\'),\'%\')#if>\n<#--作者-->\n<#if content_author??> and content_author like CONCAT(CONCAT(\'%\',\'${content_author}\'),\'%\')#if>\n<#--来源-->\n<#if content_source??> and content_source like CONCAT(CONCAT(\'%\',\'${content_source}\'),\'%\')#if>\n<#--属性-->\n<#if content_type??> and content_type like CONCAT(CONCAT(\'%\',\'${content_type}\'),\'%\')#if>\n<#--描述-->\n<#if content_description??> and content_description like CONCAT(CONCAT(\'%\',\'${content_description}\'),\'%\')#if>\n<#--关键字-->\n<#if content_keyword??> and content_keyword like CONCAT(CONCAT(\'%\',\'${content_keyword}\'),\'%\')#if>\n<#--内容-->\n<#if content_details??> and content_details like CONCAT(CONCAT(\'%\',\'${content_details}\'),\'%\')#if>\n<#--自定义顺序-->\n<#if content_sort??> and content_sort=${content_sort}#if>\n<#--自定义模型-->\n<#if diyModel??>\n <#list diyModel as dm>\n <#assign json=\"${dm}\"?eval />\n and ${tableName}.${json.key} like CONCAT(CONCAT(\'%\',\'${json.value}\'),\'%\')\n #list>\n#if>\n<#--文章属性-->\n<#if flag?? >\n and(<#list flag?split(\',\') as item>\n <#if item?index gt 0> or#if>\n FIND_IN_SET(\'${item}\',cms_content.content_type) > 0\n #list>)\n#if>\n<#if noflag??>\n and(<#list noflag?split(\',\') as item>\n <#if item?index gt 0> and#if>\n FIND_IN_SET(\'${item}\',cms_content.content_type)=0\n #list> or cms_content.content_type is null)\n#if>\n\n <#--字段排序-->\n ORDER BY\n <#if topflag??>\n CASE\n <#list topflag?split(\",\") as item>\n WHEN FIND_IN_SET(\'${item}\',cms_content.content_type)>0 THEN\n ${item?index}\n #list>\n ELSE 100\n END,\n #if>\n ${_orderby}\n <#if order?? >\n <#if order==\'desc\'> desc#if>\n <#if order==\'asc\'> asc#if>\n <#else>\n desc\n #if>\n LIMIT\n <#--判断是否分页-->\n <#if ispaging?? && (pageTag.pageNo)??>\n ${((pageTag.pageNo-1)*_size?eval)?c},${_size?default(20)}\n <#else>\n ${_size?default(20)}\n #if>\n', NULL, '文章列表', NULL, NULL, NULL, NULL, 0, 1);
INSERT INTO `mdiy_tag` (`id`, `tag_name`, `tag_type`, `tag_sql`, `tag_class`, `tag_description`, `UPDATE_BY`, `UPDATE_DATE`, `CREATE_BY`, `CREATE_DATE`, `DEL`, `NOT_DEL`) VALUES (4, 'channel', 'list', '<#assign _typeid=\'0\'/>\n<#assign _size=\'9999\'/>\n<#if column?? && column.id?? && column.id?number gt 0>\n <#assign _typeid=\'${column.id}\'>\n <#assign selfid=\'${column.id}\'>\n#if>\n\n<#if typeid??>\n <#assign _typeid=\'${typeid}\'>\n#if>\n<#if size??>\n <#assign _size=\'${size}\'>\n#if>\n\nselect\n cms_category.id as \"id\",\n cms_category.id as \"typeid\",\n cms_category.category_title as \"typetitle\",\n cms_category.category_short_title as \"typeshorttitle\",\n <#--动态链接-->\n <#if isDo?? && isDo>\n IF(cms_category.category_type=2,CONCAT(\'${modelName}/view.do?style=${templateName!\"\"}&typeid=\', cms_category.id),CONCAT(\'${modelName}/list.do?style=${templateName!\"\"}&typeid=\', cms_category.id)) as \"typelink\",\n <#else>\n <#--栏目类型为链接-->\n <#if shortSwitch?? && shortSwitch>\n CONCAT(cms_category.category_pinyin,\'.html\') AS \"typelink\",\n <#else>\n CONCAT(cms_category.category_path,\'/index.html\') as \"typelink\",\n #if>\n #if>\n cms_category.category_keyword as \"typekeyword\",\n cms_category.category_diy_url as \"typeurl\",\n cms_category.category_flag as \"flag\",\n cms_category.category_id as \"parentid\",\n cms_category.category_parent_ids as \"parentids\",\n cms_category.category_descrip as \"typedescrip\",\n cms_category.category_type as \"type\",\n cms_category.category_path as \"typepath\",\n cms_category.leaf as \"typeleaf\",\n cms_category.category_img as \"typelitpic\" ,\n cms_category.category_ico as \"typeico\" ,\n <#if tableName??>${tableName}.*,#if>\n ( SELECT count(*) FROM cms_category cc WHERE cc.category_id = cms_category.id AND cc.del = 0 ) AS \"childsize\"\nfrom\n cms_category\n <#--判断是否有自定义模型表-->\n <#if tableName??>LEFT JOIN ${tableName} ON ${tableName}.link_id=cms_category.id#if>\nwhere\n cms_category.del=0\n and cms_category.category_display = \'enable\'\n <#--自定义模型-->\n <#if diyModel??>\n <#list diyModel as dm>\n <#assign json=\"${dm}\"?eval />\n and ${tableName}.${json.key} like CONCAT(\'%\',\'${json.value}\',\'%\')\n #list>\n #if>\n <#--根据站点编号查询-->\n <#if appId?? >\n and cms_category.app_id=${appId}\n #if>\n\n <#--栏目属性-->\n <#if flag?? >\n and\n (<#list flag?split(\',\') as item>\n <#if item?index gt 0> or#if>\n FIND_IN_SET(\'${item}\',cms_category.category_flag)\n #list>)\n #if>\n\n <#if noflag?? >\n and\n (<#list noflag?split(\',\') as item>\n <#if item?index gt 0> and#if>\n FIND_IN_SET(\'${item}\',cms_category.category_flag)=0\n #list> or cms_category.category_flag is null)\n #if>\n\n <#--type默认son-->\n <#if !type??||!type?has_content>\n <#assign type=\'son\'/>\n #if>\n\n <#if type?has_content>\n <#--顶级栏目(单个)-->\n <#if type==\'top\'>\n <#if _typeid != \'0\'>\n and (cms_category.id = cms_category.top_id or cms_category.top_id = 0)\n #if>\n\n <#elseif type==\'nav\'>\n and(cms_category.category_id=0 or cms_category.category_id is null)\n\n <#--同级栏目(多个)-->\n <#elseif type==\'level\'>\n <#if _typeid != \'0\'>\n and cms_category.category_id=(select category_id from cms_category where id=${_typeid})\n #if>\n\n <#--当前栏目(单个)-->\n <#elseif type==\'self\'>\n <#if _typeid != \'0\'>\n and cms_category.id=${_typeid}\n #if>\n\n <#--当前栏目的所属栏目(多个)-->\n <#elseif type==\'path\'>\n <#if _typeid != \'0\'>\n and cms_category.id in\n (<#if column?? && column.categoryParentIds??>${column.categoryParentIds},#if>${_typeid})\n #if>\n\n <#--子栏目(多个)-->\n <#elseif type==\'son\'>\n <#if _typeid != \'0\'>\n and cms_category.category_id=${_typeid}\n #if>\n\n <#--上一级栏目没有则取当前栏目(单个)-->\n <#elseif type==\'parent\'>\n <#if _typeid != \'0\'>\n and\n <#if column?? && column.categoryId??>\n cms_category.id=${column.categoryId}\n <#else>\n cms_category.id=${_typeid}\n #if>\n #if>\n #if>\n\n <#else> <#--默认顶级栏目-->\n and\n <#if _typeid != \'0\'>\n cms_category.id=${_typeid}\n <#else>\n (cms_category.category_id=0 or cms_category.category_id is null)\n #if>\n #if>\n\n <#--字段排序-->\n <#if type == \'path\'>\n ORDER BY cms_category.category_path asc\n <#else>\n <#if orderby?? >\n ORDER BY\n <#if orderby==\'date\'> cms_category.create_date\n <#elseif orderby==\'sort\'> cms_category.category_sort\n <#else>cms_category.id\n #if>\n #if>\n\n <#if order?? >\n <#if order==\'desc\'> desc#if>\n <#if order==\'asc\'> asc#if>\n #if>\n #if>\n LIMIT\n ${_size?default(9999)}', NULL, '通用栏目', NULL, NULL, NULL, NULL, 0, 1);
INSERT INTO `mdiy_tag` (`id`, `tag_name`, `tag_type`, `tag_sql`, `tag_class`, `tag_description`, `UPDATE_BY`, `UPDATE_DATE`, `CREATE_BY`, `CREATE_DATE`, `DEL`, `NOT_DEL`) VALUES (5, 'global', 'single', 'select\n APP_NAME as \"name\",\n app_logo as \"logo\",\n app_keyword as \"keyword\",\n app_description as \"descrip\",\n app_copyright as \"copyright\",\n \'${contextPath}\' as \"contextpath\",\n <#--动态解析 -->\n <#if isDo?? && isDo>\n \'${url}\' as \"url\",\n \'${url}\' as \"host\",\n \'/\' as \"html\",\n <#--使用地址栏的域名 -->\n <#else>\n <#if shortSwitch?? && shortSwitch>\n CONCAT(\'${url}\',\'${appDir}<#if appDir?has_content>/#if>\') as \"url\",\n \'<#if appDir?has_content>/#if>${appDir}/\' as \"html\",\n <#else>\n CONCAT(CONCAT(\'${url}\',\'${html}\'),\'<#if appDir?has_content>/${appDir}#if>\') as \"url\",\n CONCAT(CONCAT(\'/${html}\',\'<#if appDir?has_content>/${appDir}#if>\'),\'/\') as \"html\",\n #if>\n \'${url}\' as \"host\",\n #if>\n CONCAT(CONCAT(CONCAT(CONCAT(\'template/\',id),\'/\'),app_style),\'/\') as \"style\"\nfrom app\n <#--根据站点编号查询-->\n <#if appId?? >\n where id = ${appId}\n #if>', NULL, '全局', NULL, NULL, NULL, NULL, 0, 1);
INSERT INTO `mdiy_tag` (`id`, `tag_name`, `tag_type`, `tag_sql`, `tag_class`, `tag_description`, `UPDATE_BY`, `UPDATE_DATE`, `CREATE_BY`, `CREATE_DATE`, `DEL`, `NOT_DEL`) VALUES (7, 'field', 'single', 'SELECT\n cms_content.id as \"id\",\n <#--这里会存在id覆盖的情况,所以需要在cms_content.id下面-->\n <#if tableName??>${tableName}.*,#if>\n <#--查询站点编号-->\n <#if appId??>\n cms_content.app_id as \"appId\",\n #if>\n content_title as \"title\",\n content_short_title AS \"shorttitle\",\n content_author as \"author\",\n content_source as \"source\",\n content_details as \"content\",\n content_datetime as \"date\",\n content_description as \"descrip\",\n content_keyword as \"keyword\",\n <#if contextPath?? && contextPath != \"/\">\n CONCAT(CONCAT( \'\') as \"hit\",\n <#else>\n CONCAT(CONCAT( \'\') as \"hit\",\n #if>\n content_type as \"flag\",\n category_title as \"typetitle\",\n cms_content.content_img as \"litpic\",\n <#--内容页动态链接-->\n <#if isDo?? && isDo>\n CONCAT(\'/mcms/view.do?id=\', cms_content.id) as \"link\",\n <#else>\n <#if shortSwitch?? && shortSwitch>\n CONCAT(cms_content.id, \'.html\' ) as \"link\",\n <#else>\n CONCAT(CONCAT( cms_category.category_path, \'/\' ), CONCAT(cms_content.id, \'.html\' )) as \"link\",\n #if>\n #if>\n cms_category.id as \"typeid\",\n cms_category.leaf as \"typeleaf\",\n cms_category.category_title as \"typetitle\",\n cms_category.category_short_title AS \"typeshorttitle\",\n cms_category.category_img as \"typelitpic\",\n cms_category.category_ico as \"typeico\",\n cms_category.category_path as \"typepath\",\n cms_category.top_id as \"topid\",\n cms_category.category_flag as \"typeflag\",\n cms_category.category_id as \"parentid\",\n cms_category.category_parent_ids as \"parentids\",\n cms_category.category_keyword as \"typekeyword\",\n cms_category.category_descrip as \"typedescrip\",\n <#--动态链接-->\n <#if isDo?? && isDo>\n CONCAT(\'/${modelName}/list.do?typeid=\', cms_category.id) as \"typelink\"\n <#else>\n <#if shortSwitch?? && shortSwitch>\n CONCAT(category_pinyin,\'.html\') AS \"typelink\"\n <#else>\n CONCAT(category_path,\'/index.html\') AS \"typelink\"\n #if>\n #if>\n\nFROM cms_content\n LEFT JOIN cms_category ON\n cms_category.id = cms_content.category_id\n <#--判断是否有自定义模型表-->\n <#if tableName??>left join ${tableName} on ${tableName}.link_id=cms_content.id#if>\nWHERE\n <#--如果是栏目列表页没有文章id所以只取栏目id-->\n <#if column??&&column.id??&&!id??>\n cms_category.id=${column.id} and\n #if>\n <#--根据站点编号查询-->\n <#if appId??>\n cms_content.app_id = ${appId} and\n #if>\n cms_content.del=0\n <#if id??> and cms_content.id=${id}#if>\n', NULL, '文章内容', NULL, NULL, NULL, NULL, 0, 1);
@@ -406,7 +425,7 @@ INSERT INTO `mdiy_tag` (`id`, `tag_name`, `tag_type`, `tag_sql`, `tag_class`, `t
INSERT INTO `mdiy_tag` (`id`, `tag_name`, `tag_type`, `tag_sql`, `tag_class`, `tag_description`, `UPDATE_BY`, `UPDATE_DATE`, `CREATE_BY`, `CREATE_DATE`, `DEL`, `NOT_DEL`) VALUES (10, 'next', 'single', '<#assign select=\"\'\'\"/>\n<#if orderby?? >\n <#if orderby==\"date\">\n <#assign _orderby=\"content_datetime\">\n <#elseif orderby==\"updatedate\">\n <#assign _orderby=\"cms_content.update_date\">\n <#elseif orderby==\"hit\">\n <#assign _orderby=\"content_hit\">\n <#elseif orderby==\"sort\">\n <#assign _orderby=\"content_sort\">\n <#else>\n <#assign _orderby=\"cms_content.id\">#if>\n <#else>\n <#assign _orderby=\"cms_content.id\">\n #if>\n<#--开始-->\n<#if pageTag.nextId??>\n SELECT\n cms_content.id as \"id\",\n content_title as \"title\",\n content_author as \"author\",\n content_source as \"source\",\n content_details as \"content\",\n category.category_title as \"typename\",\n category.category_id as \"typeid\",\n <#if isDo?? && isDo>\n CONCAT(\'/${modelName}/list.do?typeid=\', cms_category.id) as \"typelink\",\n <#else>\n <#if shortSwitch?? && shortSwitch>\n CONCAT(category.category_pinyin,\'.html\') AS \"typelink\",\n <#else>\n CONCAT(category.category_path,\'/index.html\') AS \"typelink\",\n #if>\n #if>\n content_img as \"litpic\",\n <#--内容页动态链接-->\n <#if isDo?? && isDo>\n CONCAT(\'${modelName}/view.do?id=\', cms_content.id,\'&orderby=${_orderby}\',\'&order=${order!\'ASC\'}\',\'&typeid=${typeid}\') as \"link\",\n <#else>\n <#if shortSwitch?? && shortSwitch>\n CONCAT(cms_content.id,\'.html\') AS \"link\",\n <#else>\n CONCAT(CONCAT(category_path,\'/\'),CONCAT(cms_content.id,\'.html\')) AS \"link\",\n #if>\n #if>\n content_description as \"descrip\",\n content_hit as \"hit\",\n content_type as \"flag\",\n content_keyword as \"keyword\"\n FROM cms_content\n LEFT JOIN cms_category category ON cms_content.category_id=category.id\n WHERE cms_content.id=${pageTag.nextId}\n<#else>\n SELECT\n ${select} as \"id\",\n \'没有了\' as \"title\",\n ${select} as \"author\",\n ${select} as \"source\",\n ${select} as \"content\",\n ${select} as \"typename\",\n ${select} as \"typeid\",\n ${select} as \"typelink\",\n ${select} as \"litpic\",\n ${select} as \"link\",\n ${select} as \"date\",\n ${select} as \"descrip\",\n ${select} as \"hit\",\n ${select} as \"flag\",\n ${select} as \"keyword\"\n FROM dual\n#if>\n', NULL, '文章下一篇', NULL, NULL, NULL, NULL, 0, 1);
INSERT INTO `mdiy_tag` (`id`, `tag_name`, `tag_type`, `tag_sql`, `tag_class`, `tag_description`, `UPDATE_BY`, `UPDATE_DATE`, `CREATE_BY`, `CREATE_DATE`, `DEL`, `NOT_DEL`) VALUES (11, 'diyform', 'macro', '<#macro ms_diyform formName>\n\n\n#macro>', NULL, '智能表单', '57', '2022-11-15 16:10:49', NULL, NULL, 0, 1);
INSERT INTO `mdiy_tag` (`id`, `tag_name`, `tag_type`, `tag_sql`, `tag_class`, `tag_description`, `UPDATE_BY`, `UPDATE_DATE`, `CREATE_BY`, `CREATE_DATE`, `DEL`, `NOT_DEL`) VALUES (12, 'data', 'list', 'SELECT\n cms_content.id AS \"id\",\n content_title AS \"title\",\n content_author AS \"author\",\n content_source AS \"source\",\n content_details AS \"content\",\n content_out_link AS \"outlink\",\n content_short_title AS \"shorttitle\",\n category.category_title AS \"typetitle\",\n category.category_short_title AS \"typeshorttitle\",\n category.id AS \"typeid\",\n category.category_path AS \"typepath\",\n category.category_img AS \"typelitpic\",\n category.category_ico AS \"typeico\",\n category.category_keyword AS \"typekeyword\",\n category.top_id AS \"topid\",\n category.category_parent_ids AS \"parentids\",\n category.category_type AS \"type\",\n <#--列表页动态链接-->\n <#if isDo?? && isDo>\n CONCAT(\'/${modelName}/list.do?style=${templateName!\"\"}&typeid=\', category.category_id) AS \"typelink\",\n <#else>\n <#if shortSwitch?? && shortSwitch>\n CONCAT(category_pinyin,\'.html\') AS \"typelink\",\n <#else>\n CONCAT(category_path,\'/index.html\') AS \"typelink\",\n #if>\n #if>\n content_description AS \"descrip\",\n content_hit AS \"hit\",\n content_type AS \"flag\",\n cms_content.content_keyword AS \"keyword\",\n content_img AS \"litpic\",\n <#--内容页动态链接-->\n <#if isDo?? && isDo>\n CONCAT(\'/${modelName}/view.do?style=${templateName!\"\"}&id=\', cms_content.id) AS \"link\",\n <#else>\n <#if shortSwitch?? && shortSwitch>\n CONCAT(cms_content.id,\'.html\') AS \"link\",\n <#else>\n CONCAT(CONCAT(CONCAT(category.category_path,\'/\'),cms_content.id),\'.html\') AS \"link\",\n #if>\n #if>\n <#if tableName??>${tableName}.*,#if>\n content_datetime AS \"date\"\nFROM\n cms_content LEFT JOIN cms_category category ON cms_content.category_id = category.id\n <#--判断是否有自定义模型表-->\n <#if tableName??>\n LEFT JOIN ${tableName} ON ${tableName}.link_id=cms_content.id\n #if>\nWHERE\n content_display=0\n and category_display=\'enable\'\n and cms_content.del=0\n <#--根据站点编号查询-->\n <#if appId?? >\n and cms_content.app_id=${appId}\n #if>\n and cms_content.id=${dataid}\n\n', NULL, '单篇', '57', '2022-11-15 16:10:49', NULL, NULL, 0, 1);
-INSERT INTO `mdiy_tag` (`id`, `tag_name`, `tag_type`, `tag_sql`, `tag_class`, `tag_description`, `UPDATE_BY`, `UPDATE_DATE`, `CREATE_BY`, `CREATE_DATE`, `DEL`, `NOT_DEL`) VALUES (17, 'tag', 'single', '<#assign _typeid=\'0\'/>\n<#assign order=\'desc\'/>\n<#assign _size=\'99\'/>\n<#if column?? && column.id?? && column.id?number gt 0>\n <#assign _typeid=\'${column.id}\'>\n#if>\n\n<#if typeid??>\n <#assign _typeid=\'${typeid}\'>\n#if>\n<#if size??>\n <#assign _size=\'${size}\'>\n#if>\n\nSELECT\n GROUP_CONCAT( content_tags ) AS tags\nFROM\n cms_content\nLEFT JOIN cms_category ON cms_content.category_id = cms_category.id\nWHERE\n cms_category.category_display = \'enable\'\n AND cms_content.del = 0\n AND cms_content.content_display = 0\n AND LENGTH( cms_content.content_tags )>0\n <#if _typeid != \'0\'>\n AND cms_category.id = ${_typeid}\n #if>\n <#if appId??>\n AND cms_content.app_id = ${appId}\n #if>\nORDER BY CONTENT_HIT DESC\nLimit ${_size}', '', '文章标签配置,不提供模板使用', '', '2023-06-12 17:26:19', '57', '2023-05-23 09:31:49', 57, 1);
+INSERT INTO `mdiy_tag` (`id`, `tag_name`, `tag_type`, `tag_sql`, `tag_class`, `tag_description`, `UPDATE_BY`, `UPDATE_DATE`, `CREATE_BY`, `CREATE_DATE`, `DEL`, `NOT_DEL`) VALUES (17, 'tag', 'single', '<#assign _typeid=\'0\'/>\n<#assign order=\'desc\'/>\n<#assign _size=\'99\'/>\n<#if column?? && column.id?? && column.id?number gt 0>\n <#assign _typeid=\'${column.id}\'>\n#if>\n\n<#if typeid??>\n <#assign _typeid=\'${typeid}\'>\n#if>\n<#if size??>\n <#assign _size=\'${size}\'>\n#if>\n\nSELECT\n GROUP_CONCAT( content_tags ) AS tags\nFROM\n cms_content\nLEFT JOIN cms_category ON cms_content.category_id = cms_category.id\nWHERE\n cms_category.category_display = \'enable\'\n AND cms_content.del = 0\n AND cms_content.content_display = 0\n AND LENGTH( cms_content.content_tags )>0\n <#if _typeid != \'0\'>\n AND (cms_category.id = ${_typeid} or FIND_IN_SET(${_typeid},cms_category.category_parent_ids))\n #if>\n <#if appId??>\n AND cms_content.app_id = ${appId}\n #if>\nORDER BY CONTENT_HIT DESC\nLimit ${_size}', '', '文章标签配置,不提供模板使用', '', '2023-06-12 17:26:19', '57', '2023-05-23 09:31:49', 57, 1);
INSERT INTO `mdiy_tag` (`id`, `tag_name`, `tag_type`, `tag_sql`, `tag_class`, `tag_description`, `UPDATE_BY`, `UPDATE_DATE`, `CREATE_BY`, `CREATE_DATE`, `DEL`, `NOT_DEL`) VALUES (18, 'tags', 'macro', '<#assign tags=\"\">\n<#macro ms_tags>\n <#if tag??>\n <#assign ___tags = tag.tags?split(\",\")>\n <#list ___tags as tag>\n <#list ___tags as _tag>\n <#if tag == _tag>\n <#if tag_index == _tag_index>\n <#assign tags+=tag+\",\">\n <#else>\n <#break>\n #if>\n #if>\n #list>\n #list>\n #if>\n#macro>', '', '文章标签', '', '2023-06-12 17:26:21', '57', '2023-05-23 09:31:40', 57, 1);
COMMIT;
diff --git a/pom.xml b/pom.xml
index 5c7b5473..b3dff238 100644
--- a/pom.xml
+++ b/pom.xml
@@ -44,24 +44,24 @@
net.mingsoft
ms-base
- 2.1.20
+ 2.1.22
net.mingsoft
ms-basic
- 2.1.20.1
+ 2.1.22
net.mingsoft
ms-mdiy
- 2.1.20.1
+ 2.1.22
net.mingsoft
store-client
- 2.1.20.1
+ 2.1.22
com.github.oshi
diff --git a/src/main/java/net/mingsoft/cms/action/web/ContentAction.java b/src/main/java/net/mingsoft/cms/action/web/ContentAction.java
index d73c03f6..7eb1f01e 100755
--- a/src/main/java/net/mingsoft/cms/action/web/ContentAction.java
+++ b/src/main/java/net/mingsoft/cms/action/web/ContentAction.java
@@ -81,7 +81,7 @@ public class ContentAction extends net.mingsoft.cms.action.BaseAction{
@ApiImplicitParam(name = "contentSource", value = "文章来源", required =false,paramType="query"),
@ApiImplicitParam(name = "contentDatetime", value = "发布时间", required =false,paramType="query"),
})
- @PostMapping("/list")
+ @RequestMapping(value = "/list",method = {RequestMethod.GET,RequestMethod.POST})
@ResponseBody
public ResultData list(@ModelAttribute @ApiIgnore ContentBean content) {
BasicUtil.startPage();
diff --git a/src/main/webapp/WEB-INF/manager/cms/category/form.ftl b/src/main/webapp/WEB-INF/manager/cms/category/form.ftl
index d30f90f6..997feb53 100644
--- a/src/main/webapp/WEB-INF/manager/cms/category/form.ftl
+++ b/src/main/webapp/WEB-INF/manager/cms/category/form.ftl
@@ -40,10 +40,11 @@
-
+
不能将父级别栏目移动到自身子级栏目
@@ -67,13 +68,21 @@
-
-
-
-
+
+
+
+
+
+
+ 可以在自定义字典中管理
+
@@ -99,19 +108,19 @@
-
-
-
-
+
+
+
+ {{true? item.label : item.value}}
+
+
- 文章字段不满足,使用代码生成器生成自定义模型来扩展,
- 大概步骤:代码生成器->复制自定义模型->打开系统后台的自定义管理->选择自定义模型->导入->文章 自定义模型 绑定
+ 选择否后该栏目下的文章将不会被搜索页搜索;若该栏目选择不可被搜索,则所有子栏目也会不可被搜索;
@@ -140,63 +149,25 @@
-
-
-
-
- {{true? item.label : item.value}}
-
-
-
- 选择否后不需重新生成,该栏目下的文章将不会被搜索页搜索;若该栏目选择不可被搜索,则所有子栏目也会不可被搜索;
-
-
-
-
-
-
-
-
+
-
+ placeholder="请选择文章自定义模型">
+
- 当栏目类型为列表时有效,没有选择模板不会进行静态化(不会生成列表静态页)
+ 文章字段不满足,使用代码生成器生成自定义模型来扩展,
+ 大概步骤:代码生成器->复制自定义模型->打开系统后台的自定义管理->选择自定义模型->导入->文章 自定义模型 绑定
-
-
-
-
-
-
-
- 可以在自定义字典中管理
-
-
-
+
+
+
+
+
+
+
+ 当栏目类型为列表时有效,没有选择模板不会进行静态化(不会生成列表静态页)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
+
+
+
+
+
tag
+
+// load the styles
+var content = __webpack_require__("4332");
+if(content.__esModule) content = content.default;
+if(typeof content === 'string') content = [[module.i, content, '']];
+if(content.locals) module.exports = content.locals;
+// add the styles to the DOM
+var add = __webpack_require__("499e").default
+var update = add("668973d9", content, true, {"sourceMap":false,"shadowMode":false});
+
/***/ }),
/***/ "9bf2":
@@ -2558,6 +2563,17 @@ module.exports = function (argument) {
};
+/***/ }),
+
+/***/ "a9e2":
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+/* harmony import */ var _node_modules_vue_style_loader_index_js_ref_7_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_7_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_oneOf_1_2_node_modules_postcss_loader_src_index_js_ref_7_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_lib_index_js_vue_loader_options_ms_tree_select_vue_vue_type_style_index_0_id_7429dca8_prod_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("951f");
+/* harmony import */ var _node_modules_vue_style_loader_index_js_ref_7_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_7_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_oneOf_1_2_node_modules_postcss_loader_src_index_js_ref_7_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_lib_index_js_vue_loader_options_ms_tree_select_vue_vue_type_style_index_0_id_7429dca8_prod_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_vue_style_loader_index_js_ref_7_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_7_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_oneOf_1_2_node_modules_postcss_loader_src_index_js_ref_7_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_1_0_node_modules_vue_loader_lib_index_js_vue_loader_options_ms_tree_select_vue_vue_type_style_index_0_id_7429dca8_prod_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__);
+/* unused harmony reexport * */
+
+
/***/ }),
/***/ "aed9":
@@ -3651,22 +3667,6 @@ module.exports = function isAbsoluteURL(url) {
};
-/***/ }),
-
-/***/ "d964":
-/***/ (function(module, exports, __webpack_require__) {
-
-// style-loader: Adds some css to the DOM by adding a