diff --git a/src/main/webapp/WEB-INF/manager/cms/article/article_form.ftl b/src/main/webapp/WEB-INF/manager/cms/article/article_form.ftl
new file mode 100644
index 00000000..93269e4f
--- /dev/null
+++ b/src/main/webapp/WEB-INF/manager/cms/article/article_form.ftl
@@ -0,0 +1,231 @@
+<@ms.html5>
+ <@ms.nav title="文章管理" back=true>
+ <#if article.basicId == 0>
+ <@ms.saveButton id="saveUpdate" value="保存"/>
+ <#else>
+ <@ms.updateButton id="saveUpdate" value="更新"/>
+ #if>
+ @ms.nav>
+ <@ms.panel>
+ <@ms.form isvalidation=true name="articleForm" action="${managerPath}/cms/article/${autoCURD}.do">
+ <@ms.text name="basicTitle" colSm="2" width="400" label="文章标题" title="文章标题" size="5" placeholder="请输入文章标题" value="${article.basicTitle?default('')}" validation={"maxlength":"300","required":"true", "data-bv-notempty-message":"文章标题不能为空","data-bv-stringlength-message":"标题在300个字符以内!", "data-bv-notempty-message":"必填项目"}/>
+ <@ms.text name="basicSort" colSm="2" width="200" label="自定义顺序" title="自定义顺序" size="5" placeholder="请输入文章顺序" value="${article.basicSort?c?default(0)}" validation={"data-bv-between":"true","required":"true", "data-bv-between-message":"自定义顺序必须大于0","data-bv-between-min":"0", "data-bv-between-max":"99999999","data-bv-notempty-message":"自定义顺序不能为空"}/>
+ <#if articleType?has_content>
+ <@ms.checkboxlist colSm="2" name="checkbox" label="文章属性" list=articleType listKey="dictValue" listValue="dictLabel" />
+ #if>
+ <@ms.radio name="basicDisplay"
+ list=[{"id":"0","value":"是"},{"id":"1","value":"否"}] value="${article.basicDisplay?c?default()}"
+ listKey="id" listValue="value" label="是否显示" help="选择否后前端将不显示,需要重新生成才有效果"
+ />
+ <@ms.formRow colSm="2" label="文章缩略图" width="400" >
+ <@ms.uploadImg path="article" uploadFloderPath="${articleImagesUrl?default('')}" inputName="basicThumbnails" size="1" msg="提示:文章缩略图,支持jpg格式" imgs="${article.basicThumbnails?default('')}" />
+ @ms.formRow>
+ <@ms.text name="articleSource" colSm="2" width="200" label="文章来源" title="文章来源" size="5" placeholder="请输入文章来源" value="${article.articleSource?default('')}" validation={"maxlength":"300", "data-bv-stringlength-message":"文章来源在300个字符以内!"} />
+ <@ms.text name="articleAuthor" colSm="2" width="200" label="文章作者" title="文章作者" size="5" placeholder="请输入文章作者" value="${article.articleAuthor?default('')}" validation={"maxlength":"12", "data-bv-stringlength-message":"文章作者在12个字符以内!"} />
+ <#if !isEditCategory>
+ <@ms.formRow colSm="2" label="所属栏目" width="300">
+ <#if categoryTitle=="">
+ <@ms.treeInput treeId="inputTree" json="${listColumn?default('')}" jsonId="categoryId" jsonPid="categoryCategoryId" jsonName="categoryTitle" inputName="basicCategoryId" inputValue="${categoryId}" buttonText="选择栏目" clickZtreeId="clickZtreeId(event,treeId,treeNode);" expandAll="true" showIcon="true"/>
+ <#else>
+ <@ms.treeInput treeId="inputTree" json="${listColumn?default('')}" jsonId="categoryId" jsonPid="categoryCategoryId" jsonName="categoryTitle" inputName="basicCategoryId" inputValue="${categoryId}" buttonText="${(categoryTitle)!}" clickZtreeId="clickZtreeId(event,treeId,treeNode);" expandAll="true" showIcon="true"/>
+ #if>
+ @ms.formRow>
+ #if>
+ <@ms.hidden id="basicDateTime" name="basicDateTime" value=""/>
+ <@ms.date id="articleDateTime" name="articleDateTime" time=true label="发布时间" single=true readonly="readonly" width="300" value="${(article.basicDateTime?default(.now))?string('yyyy-MM-dd HH:mm')}" validation={"required":"true", "data-bv-notempty-message":"必填项目"} placeholder="点击该框选择时间段" />
+ <@ms.textarea colSm="2" name="basicDescription" label="描述" wrap="Soft" rows="4" size="" value="${article.basicDescription?default('')}" placeholder="请输入对该文章的简短描述,以便用户查看文章简略" validation={"maxlength":"400","data-bv-stringlength-message":"文章描述在400个字符以内!"}/>
+ <@ms.textarea colSm="2" name="articleKeyword" label="关键字" wrap="Soft" rows="4" size="" placeholder="请输入文章关键字" value="${article.articleKeyword?default('')}" validation={"maxlength":"155", "data-bv-stringlength-message":"文章作者在155个字符以内!"}/>
+
+
+
+ <@ms.hidden name="articleTypeJson" />
+ <@ms.editor colSm="2" name="articleContent" label="文章内容" content="${article.articleContent?default('')}" appId="${appId?default(0)}"/>
+ <@ms.hidden name="modelId" value="${Session.model_id_session?default('0')}" />
+ @ms.form>
+ @ms.panel>
+@ms.html5>
+
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/manager/cms/article/article_main.ftl b/src/main/webapp/WEB-INF/manager/cms/article/article_main.ftl
new file mode 100644
index 00000000..db39cbb8
--- /dev/null
+++ b/src/main/webapp/WEB-INF/manager/cms/article/article_main.ftl
@@ -0,0 +1,163 @@
+<@ms.html5>
+ <@ms.nav title="文章列表">@ms.nav>
+ <@ms.searchForm name="searchForm" action="">
+ <#if articleTypeList?has_content>
+ <@ms.select label="文章属性" default="全部" value="a" name="articleType" id="forumSelect" list=articleTypeList listValue="dictLabel" listKey="dictValue" value="${articleType?default('')}"/>
+ <#else>
+ <@ms.select label="文章属性" name="articleType" id="forumSelect" value="" list=["默认属性"] />
+ #if>
+ <@ms.text label="文章标题" name="basicTitle" value="" title="请输入文章标题" placeholder="请输入文章标题" />
+ <@ms.searchFormButton>
+ <@ms.queryButton id="submitSearch" />
+ @ms.searchFormButton>
+ @ms.searchForm>
+
+ <@ms.panelNavBtnGroup>
+ <@shiro.hasPermission name="article:save"><@ms.panelNavBtnAdd title=""/>@shiro.hasPermission>
+ <@shiro.hasPermission name="article:del"><@ms.panelNavBtnDel title=""/>@shiro.hasPermission>
+ @ms.panelNavBtnGroup>
+
+ <@ms.panel>
+
+ @ms.panel>
+@ms.html5>
+
+<@ms.modal modalName="delete" title="删除文章">
+ <@ms.modalBody>
+ 确定要删除所选的文章吗?
+ @ms.modalBody>
+ <@ms.modalButton>
+ <@ms.button class="btn btn-danger rightDelete" value="确定"/>
+ @ms.modalButton>
+@ms.modal>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/main/webapp/WEB-INF/manager/cms/article/index.ftl b/src/main/webapp/WEB-INF/manager/cms/article/index.ftl
new file mode 100644
index 00000000..5158ca3e
--- /dev/null
+++ b/src/main/webapp/WEB-INF/manager/cms/article/index.ftl
@@ -0,0 +1,57 @@
+
+
+
+<#include "/include/macro.ftl"/>
+<#include "/include/meta.ftl"/>
+
+
+<@ms.content>
+ <@ms.contentMenu>
+
+ <#if listColumn?has_content>
+ <@ms.tree treeId="inputTree" json="${listColumn?default('')}" addNodesName="全部" jsonId="categoryId" jsonPid="categoryCategoryId" jsonName="categoryTitle" showIcon="true" expandAll="true" getZtreeId="getZtreeId(event,treeId,treeNode);" />
+ <#else>
+ <@ms.nodata content="暂无栏目"/>
+ #if>
+
+ @ms.contentMenu>
+ <@ms.contentBody width="85%" style="overflow-y: hidden;">
+ <@ms.contentPanel style="margin:0;padding:0;overflow-y: hidden;">
+
+ @ms.contentPanel>
+ @ms.contentBody>
+@ms.content>
+
+
+
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/manager/cms/column/shiro-button.ftl b/src/main/webapp/WEB-INF/manager/cms/column/shiro-button.ftl
new file mode 100644
index 00000000..118fbc08
--- /dev/null
+++ b/src/main/webapp/WEB-INF/manager/cms/column/shiro-button.ftl
@@ -0,0 +1,2 @@
+<@shiro.hasPermission name="cms:column:save"><@ms.addButton id="addColumnBtn"/>@shiro.hasPermission>
+<@shiro.hasPermission name="cms:column:del"><@ms.delButton id="delColumnBtn"/>@shiro.hasPermission>
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/manager/cms/column/shiro-update.ftl b/src/main/webapp/WEB-INF/manager/cms/column/shiro-update.ftl
new file mode 100644
index 00000000..e51e0179
--- /dev/null
+++ b/src/main/webapp/WEB-INF/manager/cms/column/shiro-update.ftl
@@ -0,0 +1,7 @@
+<@shiro.hasPermission name="cms:column:update">
+var url = "${managerPath}/${model?default("")}/column/"+row.categoryId+"/edit.do?modelId=${Session.model_id_session?default(0)}&modelTitle=${Session.model_title_session?default('')}";
+return "" + value + " ";
+@shiro.hasPermission>
+<@shiro.lacksPermission name="cms:column:update">
+return value;
+@shiro.lacksPermission>
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/manager/cms/generate/index.ftl b/src/main/webapp/WEB-INF/manager/cms/generate/index.ftl
new file mode 100644
index 00000000..d99d0f50
--- /dev/null
+++ b/src/main/webapp/WEB-INF/manager/cms/generate/index.ftl
@@ -0,0 +1,161 @@
+<@ms.html5>
+ <@ms.nav title="静态化">@ms.nav>
+ <@ms.panel>
+
+
+
+ 更新主页,如果系统存在引导页面可以手动修改主页位置文件名,default.html引导页面index.html主页。
+
+
+
+ 更新栏目列表,推荐使用指定栏目更新。系统提示“更新中...”请不要刷新页面或点击其他菜单。
+
+
+
+ 根据时间与栏目类型生成文章
+
+
+ <@ms.form name="generateIndex">
+ <@ms.formRow label="选择主页模板" width="300">
+
+
+ @ms.formRow>
+ <@ms.text id="position" label="选择主页位置 " width="300" value="index" placeholder="输入主页位置" name="position" help="注:主页位置htm文件名一般为index.html或default.html"/>
+
+ @ms.form>
+
+ <@ms.form name="generateColumn">
+ <@ms.formRow label="选择要生成栏目" width="300">
+ <#if list?has_content>
+ <@ms.treeInput treeId="inputTree" json="${list?default('')}" jsonId="categoryId" jsonPid="categoryCategoryId" jsonName="categoryTitle" buttonText="选择更新的栏目" addNodesName="所有栏目" inputName="columnId" showIcon="true" expandAll="true" />
+ <#else>
+ <@ms.treeInput treeId="errorTree" buttonText="暂无数据" />
+ #if>
+ @ms.formRow>
+
+ @ms.form>
+ <@ms.form name="generateArticle">
+ <@ms.formRow label="文章栏目" width="300">
+ <#if list?has_content>
+ <@ms.treeInput treeId="inputTreee" json="${list?default('')}" jsonId="categoryId" jsonPid="categoryCategoryId" jsonName="categoryTitle" addNodesName="所有栏目" buttonText="选择更新的栏目" inputName="articleId" showIcon="true" expandAll="true" />
+ <#else>
+ <@ms.treeInput treeId="errorTree" buttonText="暂无数据" />
+ #if>
+ @ms.formRow>
+ <@ms.date name="dateTime" label="指定时间" single=true readonly="readonly" width="300" value="${now?string('yyyy-MM-dd')}" validation={"required":"true", "data-bv-notempty-message":"必填项目"} placeholder="点击该框选择时间段" />
+
+ @ms.form>
+ @ms.panel>
+@ms.html5>
+
+
+
+
+
+
+
+
+
diff --git a/src/main/webapp/WEB-INF/manager/exit-system.ftl b/src/main/webapp/WEB-INF/manager/exit-system.ftl
new file mode 100644
index 00000000..d8c029e4
--- /dev/null
+++ b/src/main/webapp/WEB-INF/manager/exit-system.ftl
@@ -0,0 +1,30 @@
+
+
+
+ 确认退出
+
+
+
+
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/manager/images/data/img.png b/src/main/webapp/WEB-INF/manager/images/data/img.png
new file mode 100644
index 00000000..4a97cb94
Binary files /dev/null and b/src/main/webapp/WEB-INF/manager/images/data/img.png differ
diff --git a/src/main/webapp/WEB-INF/manager/images/data/ms-bg_1.jpg b/src/main/webapp/WEB-INF/manager/images/data/ms-bg_1.jpg
new file mode 100644
index 00000000..33206f98
Binary files /dev/null and b/src/main/webapp/WEB-INF/manager/images/data/ms-bg_1.jpg differ
diff --git a/src/main/webapp/WEB-INF/manager/include/head-file.ftl b/src/main/webapp/WEB-INF/manager/include/head-file.ftl
new file mode 100644
index 00000000..5b69dd92
--- /dev/null
+++ b/src/main/webapp/WEB-INF/manager/include/head-file.ftl
@@ -0,0 +1,53 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/manager/index.ftl b/src/main/webapp/WEB-INF/manager/index.ftl
new file mode 100644
index 00000000..bffcf4ad
--- /dev/null
+++ b/src/main/webapp/WEB-INF/manager/index.ftl
@@ -0,0 +1,263 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/manager/main.ftl b/src/main/webapp/WEB-INF/manager/main.ftl
new file mode 100644
index 00000000..12144813
--- /dev/null
+++ b/src/main/webapp/WEB-INF/manager/main.ftl
@@ -0,0 +1,25 @@
+
+
+
+ 铭飞CMS
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/manager/mweixin/menu/material-bank-form.ftl b/src/main/webapp/WEB-INF/manager/mweixin/menu/material-bank-form.ftl
new file mode 100644
index 00000000..27c2e006
--- /dev/null
+++ b/src/main/webapp/WEB-INF/manager/mweixin/menu/material-bank-form.ftl
@@ -0,0 +1,92 @@
+
+
+
+
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/manager/mweixin/menu/new-pic-form.ftl b/src/main/webapp/WEB-INF/manager/mweixin/menu/new-pic-form.ftl
new file mode 100644
index 00000000..e31b0198
--- /dev/null
+++ b/src/main/webapp/WEB-INF/manager/mweixin/menu/new-pic-form.ftl
@@ -0,0 +1,74 @@
+
+
+
+
\ No newline at end of file
diff --git a/src/main/webapp/WEB-INF/manager/reset-password.ftl b/src/main/webapp/WEB-INF/manager/reset-password.ftl
new file mode 100644
index 00000000..ba8c969f
--- /dev/null
+++ b/src/main/webapp/WEB-INF/manager/reset-password.ftl
@@ -0,0 +1,40 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file