Przeglądaj źródła

修复兼容问题 删除多余的方法体

信 赵 5 lat temu
rodzic
commit
70541b9a91

+ 95 - 60
src/main/webapp/WEB-INF/manager/cms/category/form.ftl

@@ -232,12 +232,12 @@
 <script>
     var form = new Vue({
         el: '#form',
-        data() {
+        data: function () {
             return {
                 treeList: [{
                     id: '0',
                     categoryTitle: '顶级栏目',
-                    children: [],
+                    children: []
                 }],
                 categoryList: [],
                 saveDisabled: false,
@@ -269,7 +269,13 @@
                     //栏目字典
                     categoryFlag: []
                 },
-                categoryTypeOptions: [{"value": "1", "label": "列表"}, {"value": "2", "label": "封面"}],
+                categoryTypeOptions: [{
+                    "value": "1",
+                    "label": "列表"
+                }, {
+                    "value": "2",
+                    "label": "封面"
+                }],
                 categoryListUrlOptions: [],
                 categoryUrlOptions: [],
                 mdiyModelIdOptions: [],
@@ -279,16 +285,26 @@
                     categoryTitle: [{
                         "required": true,
                         "message": "请选择栏目管理名称"
-                    }, {"pattern": /^[^[!@#$%^&*()_+-/~?!@#¥%…&*()——+—?》《:“‘’]+$/, "message": "栏目管理名称格式不匹配"}],
-                    categoryListUrl: [{"required":true,"message":"请选择列表模板"}],
+                    }, {
+                        "pattern": /^[^[!@#$%^&*()_+-/~?!@#¥%…&*()——+—?》《:“‘’]+$/,
+                        "message": "栏目管理名称格式不匹配"
+                    }],
+                    categoryListUrl: [{
+                        "required": true,
+                        "message": "请选择列表模板"
+                    }],
                     // 内容模板
-                    categoryUrl: [{"required":true,"message":"请选择内容模板"}],
-                },
-
-            }
+                    categoryUrl: [{
+                        "required": true,
+                        "message": "请选择内容模板"
+                    }]
+                }
+            };
         },
         watch: {
             'form.categoryId': function (n, o) {
+                var _this = this;
+
                 if (n == this.form.id) {
                     this.$notify({
                         title: '提示',
@@ -297,12 +313,15 @@
                     });
                     return;
                 }
-                this.categoryList.forEach(item => {
-                    if (item.categoryParentId != null && item.categoryParentId != "" && item.categoryParentId.indexOf(this.form.id) != -1) {
+
+                this.categoryList.forEach(function (item) {
+                    if (item.categoryParentId != null && item.categoryParentId != "" && item.categoryParentId.indexOf(_this.form.id) != -1) {
                         if (item.id == n) {
-                            this.form.categoryId = null;
-                            this.$refs.tree.clearHandle();
-                            this.$notify({
+                            _this.form.categoryId = null;
+
+                            _this.$refs.tree.clearHandle();
+
+                            _this.$notify({
                                 title: '提示',
                                 message: '不能选择子分类',
                                 type: 'warning'
@@ -314,9 +333,11 @@
         },
         computed: {},
         methods: {
-            getTree() {
+            getTree: function () {
                 var that = this;
-                ms.http.get(ms.manager + "/cms/category/list.do", {pageSize: 9999}).then(function (res) {
+                ms.http.get(ms.manager + "/cms/category/list.do", {
+                    pageSize: 9999
+                }).then(function (res) {
                     if (res.result) {
                         //res.data.rows.push({id:0,categoryId: null,categoryTitle:'顶级栏目管理'});
                         that.categoryList = res.data.rows;
@@ -326,21 +347,24 @@
                     console.log(err);
                 });
             },
-            save() {
+            save: function () {
                 var that = this;
-                var url = ms.manager + "/cms/category/save.do"
+                var url = ms.manager + "/cms/category/save.do";
+
                 if (that.form.id > 0) {
                     url = ms.manager + "/cms/category/update.do";
                 }
-                this.$refs.form.validate((valid) => {
-                    if (valid) {
 
+                this.$refs.form.validate(function (valid) {
+                    if (valid) {
                         //栏目属性为封面则不需要列表模板
                         if (that.form.categoryType == '2') {
                             that.form.categoryListUrl = '';
                         }
+
                         that.saveDisabled = true;
                         var data = JSON.parse(JSON.stringify(that.form));
+
                         if (data.id && data.id == data.categoryId) {
                             that.$notify({
                                 title: '提示',
@@ -348,12 +372,14 @@
                                 type: 'error'
                             });
                             that.saveDisabled = false;
-                            return
+                            return;
                         }
+
                         if (data.categoryId == '0') {
                             data.categoryId = '';
                         }
-                        if(data.categoryFlag){
+
+                        if (data.categoryFlag) {
                             data.categoryFlag = data.categoryFlag.join(',');
                         }
 
@@ -373,44 +399,51 @@
                                     type: 'warning'
                                 });
                             }
+
                             that.saveDisabled = false;
                         });
                     } else {
                         return false;
                     }
-                })
+                });
             },
             //获取分类内容模型
             getColumnContentModelId: function () {
                 var that = this;
-                ms.http.get(ms.manager + "/mdiy/model/list.do", {modelType: 'zdymx_wz'}).then(
-                    function (data) {
-                        that.mdiyModelIdOptions = data.data.rows;
-                    }).catch(function (err) {
+                ms.http.get(ms.manager + "/mdiy/model/list.do", {
+                    modelType: 'zdymx_wz'
+                }).then(function (data) {
+                    that.mdiyModelIdOptions = data.data.rows;
+                }).catch(function (err) {
                     console.log(err);
                 });
             },
             //获取当前分类
-            get(id) {
+            get: function (id) {
                 var that = this;
-                ms.http.get(ms.manager + "/cms/category/get.do", {"id": id}).then(function (res) {
+                ms.http.get(ms.manager + "/cms/category/get.do", {
+                    "id": id
+                }).then(function (res) {
                     if (res.result && res.data) {
-                        if(res.data.categoryFlag){
+                        if (res.data.categoryFlag) {
                             res.data.categoryFlag = res.data.categoryFlag.split(',');
                         }
+
                         if (res.data.categoryImg) {
                             res.data.categoryImg = JSON.parse(res.data.categoryImg);
                             res.data.categoryImg.forEach(function (value) {
-                                value.url = ms.base + value.path
-                            })
+                                value.url = ms.base + value.path;
+                            });
                         } else {
-                            res.data.categoryImg = []
+                            res.data.categoryImg = [];
                         }
+
                         if (!res.data.categoryId) {
                             res.data.categoryId = '0';
                         }
-                        that.form = res.data;
-                        //判断该分类是否存在文章,存在则不能修改栏目属性
+
+                        that.form = res.data; //判断该分类是否存在文章,存在则不能修改栏目属性
+
                         that.contentList(that.form.id);
                     }
                 }).catch(function (err) {
@@ -420,7 +453,7 @@
             contentList: function (id) {
                 var that = this;
                 ms.http.post(ms.manager + "/cms/content/list.do", {
-                    contentCategoryId: id,
+                    contentCategoryId: id
                 }).then(function (data) {
                     if (data.data.total > 0) {
                         that.categoryTypeDisabled = true;
@@ -432,7 +465,7 @@
                 });
             },
             //获取categoryListUrl数据源
-            categoryListUrlOptionsGet() {
+            categoryListUrlOptionsGet: function () {
                 var that = this;
                 ms.http.get(ms.manager + "/template/queryTemplateFileForColumn.do", {}).then(function (data) {
                     that.categoryListUrlOptions = data.data;
@@ -441,7 +474,7 @@
                 });
             },
             //获取categoryUrl数据源
-            categoryUrlOptionsGet() {
+            categoryUrlOptionsGet: function () {
                 var that = this;
                 ms.http.get(ms.manager + "/template/queryTemplateFileForColumn.do", {}).then(function (data) {
                     that.categoryUrlOptions = data.data;
@@ -449,51 +482,53 @@
                     console.log(err);
                 });
             },
-            //categoryImg文件上传完成回调
-            categoryImgSuccess: function (response, file, fileList) {
-                this.form.categoryImg.push({url: file.url, name: file.name, path: response, uid: file.uid});
-            },
-            categoryImghandleRemove: function (file, files) {
-                var index = -1;
-                index = this.form.categoryImg.findIndex(text => text == file);
-                if (index != -1) {
-                    this.form.categoryImg.splice(index, 1);
-                }
-            },
             //获取categoryFlag数据源
-            categoryFlagOptionsGet() {
+            categoryFlagOptionsGet: function () {
                 var that = this;
-                ms.http.get(ms.base+'/mdiy/dict/list.do', {dictType:'栏目属性',pageSize:99999}).then(function (res) {
+                ms.http.get(ms.base + '/mdiy/dict/list.do', {
+                    dictType: '栏目属性',
+                    pageSize: 99999
+                }).then(function (res) {
                     that.categoryFlagOptions = res.rows;
                 }).catch(function (err) {
                     console.log(err);
                 });
             },
-
             //categoryImg文件上传完成回调
             categoryImgSuccess: function (response, file, fileList) {
-                this.form.categoryImg.push({url: file.url, name: file.name, path: response, uid: file.uid});
+                this.form.categoryImg.push({
+                    url: file.url,
+                    name: file.name,
+                    path: response,
+                    uid: file.uid
+                });
             },
             //上传超过限制
             categoryImghandleExceed: function (files, fileList) {
-                this.$notify({title: '当前最多上传1个文件', type: 'warning'});
+                this.$notify({
+                    title: '当前最多上传1个文件',
+                    type: 'warning'
+                });
             },
             categoryImghandleRemove: function (file, files) {
                 var index = -1;
-                index = this.form.categoryImg.findIndex(text => text == file);
+                index = this.form.categoryImg.findIndex(function (text) {
+                    return text == file;
+                });
+
                 if (index != -1) {
                     this.form.categoryImg.splice(index, 1);
                 }
-            },
-
+            }
         },
-        created() {
+        created: function () {
             this.getColumnContentModelId();
-            this.getTree()
+            this.getTree();
             this.categoryListUrlOptionsGet();
             this.categoryUrlOptionsGet();
             this.categoryFlagOptionsGet();
             this.form.id = ms.util.getParameter("id");
+
             if (this.form.id) {
                 this.get(this.form.id);
             } else {
@@ -506,4 +541,4 @@
     .el-select {
         width: 100%;
     }
-</style>
+</style>

+ 161 - 147
src/main/webapp/WEB-INF/manager/cms/category/index.ftl

@@ -72,163 +72,177 @@
 					</template>
 					</el-table-column>
 			</el-table>
-         </el-main> 
+         </el-main>
 	</div>
 </body>
 
 </html>
 <script>
-var indexVue = new Vue({
-	el: '#index',
-	data:{
-		dataList: [], //分类列表
-		selectionList:[],//分类列表选中
-		loading: true,//加载状态
-		emptyText:'',//提示文字
-        manager: ms.manager,
-		loadState:false,
-		categoryTypeOptions:[{"value":"1","label":"列表"},{"value":"2","label":"封面"}],
-		//搜索表单
-		form:{
-                    // 栏目管理名称
-                    categoryTitle:'',
-                    // 所属栏目
-                    categoryId:'',
-                    // 栏目管理属性
-                    categoryType:'2',
-                    // 自定义顺序
-                    categorySort:0,
-                    // 列表模板
-                    categoryListUrl:'',
-                    // 内容模板
-                    categoryUrl:'',
-                    // 栏目管理关键字
-                    categoryKeyword:'',
-                    // 栏目管理描述
-                    categoryDescrip:'',
-                    // 缩略图
-                    categoryImg: [],
-                    // 自定义链接
-                    categoryDiyUrl:'',
-                    // 栏目管理的内容模型id
-                    mdiyModelId:'',
+	"use strict";
+
+	var indexVue = new Vue({
+		el: '#index',
+		data: {
+			dataList: [],
+			//分类列表
+			selectionList: [],
+			//分类列表选中
+			loading: true,
+			//加载状态
+			emptyText: '',
+			//提示文字
+			manager: ms.manager,
+			loadState: false,
+			categoryTypeOptions: [{
+				"value": "1",
+				"label": "列表"
+			}, {
+				"value": "2",
+				"label": "封面"
+			}],
+			//搜索表单
+			form: {
+				// 栏目管理名称
+				categoryTitle: '',
+				// 所属栏目
+				categoryId: '',
+				// 栏目管理属性
+				categoryType: '2',
+				// 自定义顺序
+				categorySort: 0,
+				// 列表模板
+				categoryListUrl: '',
+				// 内容模板
+				categoryUrl: '',
+				// 栏目管理关键字
+				categoryKeyword: '',
+				// 栏目管理描述
+				categoryDescrip: '',
+				// 缩略图
+				categoryImg: [],
+				// 自定义链接
+				categoryDiyUrl: '',
+				// 栏目管理的内容模型id
+				mdiyModelId: ''
+			}
 		},
-	},
-	methods:{ 
-	    //查询列表
-	    list: function() {
-	    	var that = this;
-	    	this.loadState = false;
-	    	this.loading = true;
-			ms.http.get(ms.manager+"/cms/category/list.do",{
-				pageSize:999,
-			}).then(
-					function(res) {
-						if(that.loadState){
-							that.loading = false;
-						}else {
-							that.loadState = true
+		methods: {
+			//查询列表
+			list: function () {
+				var that = this;
+				this.loadState = false;
+				this.loading = true;
+				ms.http.get(ms.manager + "/cms/category/list.do", {
+					pageSize: 999
+				}).then(function (res) {
+					if (that.loadState) {
+						that.loading = false;
+					} else {
+						that.loadState = true;
+					}
+
+					if (!res.result || res.data.total <= 0) {
+						that.emptyText = '暂无数据';
+						that.dataList = [];
+					} else {
+						that.emptyText = '';
+						that.dataList = ms.util.treeData(res.data.rows, 'id', 'categoryId', 'children');
+					}
+				}).catch(function (err) {
+					console.log(err);
+				});
+				setTimeout(function () {
+					if (that.loadState) {
+						that.loading = false;
+					} else {
+						that.loadState = true;
+					}
+				}, 500);
+			},
+			copyUrl: function () {
+				var clipboard = new ClipboardJS('.copyBtn');
+				var self = this;
+				clipboard.on('success', function (e) {
+					self.$notify({
+						title: '提示',
+						message: "链接地址已保存到剪切板",
+						type: 'success'
+					});
+					clipboard.destroy();
+				});
+			},
+			//分类列表选中
+			handleSelectionChange: function (val) {
+				this.selectionList = val;
+			},
+			//删除
+			del: function (row) {
+				var that = this;
+				that.$confirm('此操作将永久删除所选内容, 是否继续?', '提示', {
+					confirmButtonText: '确定',
+					cancelButtonText: '取消',
+					type: 'warning'
+				}).then(function () {
+					ms.http.post(ms.manager + "/cms/category/delete.do", row.length ? row : [row], {
+						headers: {
+							'Content-Type': 'application/json'
 						}
-						if (!res.result||res.data.total <= 0) {
-							that.emptyText = '暂无数据'
-							that.dataList = [];
+					}).then(function (res) {
+						if (res.result) {
+							that.$notify({
+								type: 'success',
+								message: '删除成功!'
+							}); //删除成功,刷新列表
+
+							that.list();
 						} else {
-							that.emptyText = '';
-							that.dataList = ms.util.treeData(res.data.rows,'id','categoryId','children');
+							that.$notify({
+								title: '失败',
+								message: res.msg,
+								type: 'warning'
+							});
 						}
-					}).catch(function(err) {
-				console.log(err);
-			});
-			setTimeout(()=>{
-				if(that.loadState){
-					that.loading = false;
-				}else {
-					that.loadState = true
-				}
-			}, 500);
-				},
-		copyUrl: function(){
-			var clipboard = new ClipboardJS('.copyBtn');
-			var self = this;
-			clipboard.on('success', function (e) {
-				self.$notify({
-					title: '提示',
-					message: "链接地址已保存到剪切板",
-					type: 'success'
+					});
+				}).catch(function () {
+					that.$notify({
+						type: 'info',
+						message: '已取消删除'
+					});
 				});
-				clipboard.destroy();
-			});
-		},
-		//分类列表选中
-		handleSelectionChange:function(val){
-			this.selectionList = val;
-		},
-		//删除
-        del: function(row){
-        	var that = this;
-        	that.$confirm('此操作将永久删除所选内容, 是否继续?', '提示', {
-					    	confirmButtonText: '确定',
-					    	cancelButtonText: '取消',
-					    	type: 'warning'
-					    }).then(() => {
-					    	ms.http.post(ms.manager+"/cms/category/delete.do", row.length?row:[row],{
-            					headers: {
-                					'Content-Type': 'application/json'
-                				}
-            				}).then(
-	            				function(res){
-		            				if (res.result) {
-										that.$notify({
-						     				type: 'success',
-						        			message: '删除成功!'
-						    			});
-					    				//删除成功,刷新列表
-					      				that.list();
-					      			}else {
-										that.$notify({
-											title: '失败',
-											message: res.msg,
-											type: 'warning'
-										});
-									}
-	            				});
-					    }).catch(() => {
-					    	that.$notify({
-					        	type: 'info',
-					        	message: '已取消删除'
-					    	});          
-				    	});	            	
-        		},
-		//表格数据转换
-		categoryTypeFormat(row, column, cellValue, index){
-			var value="";
-			if(cellValue){
-				var data = this.categoryTypeOptions.find(function(value){
-					return value.value==cellValue;
-				})
-				if(data&&data.label){
-					value = data.label;
+			},
+			//表格数据转换
+			categoryTypeFormat: function (row, column, cellValue, index) {
+				var value = "";
+
+				if (cellValue) {
+					var data = this.categoryTypeOptions.find(function (value) {
+						return value.value == cellValue;
+					});
+
+					if (data && data.label) {
+						value = data.label;
+					}
 				}
+
+				return value;
+			},
+			//新增
+			save: function (id) {
+				if (id) {
+					location.href = this.manager + "/cms/category/form.do?id=" + id;
+				} else {
+					location.href = this.manager + "/cms/category/form.do";
+				}
+			},
+			//重置表单
+			rest: function () {
+				this.$refs.searchForm.resetFields();
 			}
-			return value;
-		},
-		//新增
-        save:function(id){
-			if(id){
-				location.href=this.manager+"/cms/category/form.do?id="+id;
-			}else {
-				location.href=this.manager+"/cms/category/form.do";
-			}
-        },
-		//重置表单
-		rest(){
-			this.$refs.searchForm.resetFields();
 		},
-	},
-	created(){
-           /* this.categoryListUrlOptionsGet();
-            this.categoryUrlOptionsGet();*/
-		this.list();
-	},
-})
-</script>
+		created: function () {
+			/* this.categoryListUrlOptionsGet();
+             this.categoryUrlOptionsGet();*/
+			this.list();
+		}
+	});
+</script>

+ 159 - 112
src/main/webapp/WEB-INF/manager/cms/content/form.ftl

@@ -247,12 +247,16 @@
 <script>
     var form = new Vue({
         el: '#form',
-        data() {
+        data: function () {
             return {
                 saveDisabled: false,
                 activeName: 'form',
-                model:undefined,//自定义模型实例
-                editableTabs:[{title:'文章编辑',name:'form'}],
+                model: undefined,
+                //自定义模型实例
+                editableTabs: [{
+                    title: '文章编辑',
+                    name: 'form'
+                }],
                 editorConfig: {
                     imageScaleEnabled: true,
                     autoHeightEnabled: true,
@@ -268,7 +272,7 @@
                 },
                 contentCategoryIdOptions: [],
                 returnIsShow: true,
-                type:'',
+                type: '',
                 //表单数据
                 form: {
                     // 文章标题
@@ -292,74 +296,100 @@
                     // 关键字
                     contentKeyword: '',
                     // 文章内容
-                    contentDetails: '',
+                    contentDetails: ''
                 },
                 contentTypeOptions: [],
                 categoryIdOptions: [],
-                contentDisplayOptions: [{"value": "0", "label": "是"}, {"value": "1", "label": "否"}],
+                contentDisplayOptions: [{
+                    "value": "0",
+                    "label": "是"
+                }, {
+                    "value": "1",
+                    "label": "否"
+                }],
                 rules: {
                     // 文章标题
-                    contentTitle: [{"required": true, "message": "请选择文章标题"}],
+                    contentTitle: [{
+                        "required": true,
+                        "message": "请选择文章标题"
+                    }],
                     // 发布时间
-                    contentDatetime: [{"required": true, "message": "发布时间不能为空"}],
-                    contentCategoryId: [{"required": true, "message": "所属栏目不能为空"}],
-                },
-
-            }
+                    contentDatetime: [{
+                        "required": true,
+                        "message": "发布时间不能为空"
+                    }],
+                    contentCategoryId: [{
+                        "required": true,
+                        "message": "所属栏目不能为空"
+                    }]
+                }
+            };
         },
         watch: {},
-        computed:{
-            currCategory(){
+        computed: {
+            currCategory: function () {
                 var that = this;
-                return this.categoryIdOptions.find(function(value){
-                    return value.id===that.form.contentCategoryId
-                })
-            },
+                return this.categoryIdOptions.find(function (value) {
+                    return value.id === that.form.contentCategoryId;
+                });
+            }
         },
         methods: {
-            save() {
-                var that = this;
-                //自定义模型需要验证
-                if(this.model&&!this.model.validate()){
+            save: function () {
+                var _this = this;
+
+                var that = this; //自定义模型需要验证
+
+                if (this.model && !this.model.validate()) {
                     this.activeName = 'custom-name';
                     return;
                 }
-                var url = ms.manager + "/cms/content/save.do"
+
+                var url = ms.manager + "/cms/content/save.do";
+
                 if (that.form.id > 0) {
                     url = ms.manager + "/cms/content/update.do";
                 }
-                this.$refs.form[0].validate((valid) => {
+
+                this.$refs.form[0].validate(function (valid) {
                     if (valid) {
-                        that.saveDisabled = true;
-                        //判断
-                        if(that.categoryIdOptions.filter(f => f['id'] == that.form.contentCategoryId)[0].categoryType == '2' && that.returnIsShow){
+                        that.saveDisabled = true; //判断
+
+                        if (that.categoryIdOptions.filter(function (f) {
+                            return f['id'] == that.form.contentCategoryId;
+                        })[0].categoryType == '2' && that.returnIsShow) {
                             that.$notify({
                                 title: '提示',
                                 message: '所属栏目不能为封面',
                                 type: 'error'
                             });
                             that.saveDisabled = false;
-                            return
+                            return;
                         }
+
                         var data = JSON.parse(JSON.stringify(that.form));
-                        if(data.contentType !=null){
+
+                        if (data.contentType != null) {
                             data.contentType = data.contentType.join(',');
                         }
+
                         data.contentImg = JSON.stringify(data.contentImg);
                         ms.http.post(url, data).then(function (data) {
                             if (data.result) {
                                 //保存时需要赋值关联ID
-                                if(that.model){
+                                if (that.model) {
                                     that.model.form.linkId = data.data.id;
-                                    that.model.save()
+                                    that.model.save();
                                 }
+
                                 that.$notify({
                                     title: '成功',
                                     message: '保存成功',
                                     type: 'success'
                                 });
-                                if(that.returnIsShow){
-                                    javascript:history.go(-1);
+
+                                if (that.returnIsShow) {
+                                    javascript: history.go(-1);
                                 }
                             } else {
                                 that.$notify({
@@ -368,101 +398,109 @@
                                     type: 'warning'
                                 });
                             }
+
                             that.saveDisabled = false;
                         });
                     } else {
-                        this.activeName = 'form';
+                        _this.activeName = 'form';
                         return false;
                     }
-                })
+                });
             },
-            removeModel(){
-                var that =this;
-                var model= document.getElementById('model1')
-                var custom= document.getElementById('c_model')
-                if(custom){
-                    model.removeChild(custom)
+            removeModel: function () {
+                var that = this;
+                var model = document.getElementById('model1');
+                var custom = document.getElementById('c_model');
+
+                if (custom) {
+                    model.removeChild(custom);
                 }
+
                 that.model = undefined;
             },
-            categoryChange(){
+            categoryChange: function () {
                 this.changeModel();
             },
-            changeModel(){
+            changeModel: function () {
                 var that = this;
                 that.editableTabs = [that.editableTabs[0]];
                 this.removeModel();
-                if(this.currCategory){
-                    if(this.currCategory.mdiyModelId){
-                        ms.http.get(ms.manager + "/mdiy/model/get.do",{
-                            id:this.currCategory.mdiyModelId
+
+                if (this.currCategory) {
+                    if (this.currCategory.mdiyModelId) {
+                        ms.http.get(ms.manager + "/mdiy/model/get.do", {
+                            id: this.currCategory.mdiyModelId
                         }).then(function (data) {
-                            if(data.data && data.data.id){
-                                that.rederModel(data.data,JSON.parse(data.data.modelJson))
+                            if (data.data && data.data.id) {
+                                that.rederModel(data.data, JSON.parse(data.data.modelJson));
                             }
-                        })
+                        });
                     }
                 }
             },
-            rederModel(modelEntity,data){
-                var that =this;
+            rederModel: function (modelEntity, data) {
+                var that = this;
                 that.editableTabs.push({
                     title: modelEntity.modelName,
-                    name: 'custom-name',
+                    name: 'custom-name'
                 });
                 this.removeModel();
                 that.$nextTick(function () {
-                    var div=document.createElement('div')
-                    div.id='c_model'
-                    var model= document.getElementById('model1')
-                    model.appendChild(div)
-                    var s=document.createElement('script')
-                    s.innerHTML=data.script
-                    var con=document.createElement('div')
-                    con.id='custom-model';
-                    con.innerHTML=data.html;
+                    var div = document.createElement('div');
+                    div.id = 'c_model';
+                    var model = document.getElementById('model1');
+                    model.appendChild(div);
+                    var s = document.createElement('script');
+                    s.innerHTML = data.script;
+                    var con = document.createElement('div');
+                    con.id = 'custom-model';
+                    con.innerHTML = data.html;
                     div.appendChild(s);
-                    div.appendChild(con);
-                    //初始化自定义模型并传入关联参数
-                    that.model = new custom_model(
-                        {
-                            data:{
-                                title:modelEntity.modelName,
-                                modelId:modelEntity.id,
-                                form:{
-                                    linkId:that.form.id
-                                },
-                            }
-                        })
+                    div.appendChild(con); //初始化自定义模型并传入关联参数
 
-                })
+                    that.model = new custom_model({
+                        data: {
+                            title: modelEntity.modelName,
+                            modelId: modelEntity.id,
+                            form: {
+                                linkId: that.form.id
+                            }
+                        }
+                    });
+                });
             },
-            getValue(data) {
+            getValue: function (data) {
                 this.form.contentCategoryId = data.id;
             },
             //获取当前文章
-            get(id) {
+            get: function (id) {
                 var that = this;
-                ms.http.get(ms.manager + "/cms/content/get.do", {"id": id}).then(function (res) {
+                ms.http.get(ms.manager + "/cms/content/get.do", {
+                    "id": id
+                }).then(function (res) {
                     if (res.result && res.data) {
                         if (res.data.contentType) {
                             res.data.contentType = res.data.contentType.split(',');
-                        }
-                        else {
+                        } else {
                             res.data.contentType = [];
                         }
+
                         if (res.data.contentImg) {
                             res.data.contentImg = JSON.parse(res.data.contentImg);
                             res.data.contentImg.forEach(function (value) {
-                                value.url = ms.base + value.path
-                            })
+                                value.url = ms.base + value.path;
+                            });
                         } else {
-                            res.data.contentImg = []
+                            res.data.contentImg = [];
                         }
+
                         that.form = res.data;
-                        var category = that.categoryIdOptions.filter(f => f['id'] == that.form.contentCategoryId);
-                        if(category.length == 1){
-                            if(category[0].categoryType == '2'){
+                        var category = that.categoryIdOptions.filter(function (f) {
+                            return f['id'] == that.form.contentCategoryId;
+                        });
+
+                        if (category.length == 1) {
+                            if (category[0].categoryType == '2') {
                                 that.returnIsShow = false;
                             }
                         }
@@ -473,9 +511,11 @@
                 });
             },
             //获取contentCategoryId数据源
-            contentCategoryIdOptionsGet() {
+            contentCategoryIdOptionsGet: function () {
                 var that = this;
-                ms.http.get(ms.manager + "/cms/category/list.do", {pageSize: 9999}).then(function (res) {
+                ms.http.get(ms.manager + "/cms/category/list.do", {
+                    pageSize: 9999
+                }).then(function (res) {
                     if (res.result) {
                         that.contentCategoryIdOptions = ms.util.treeData(res.data.rows, 'id', 'categoryId', 'children');
                         that.categoryIdOptions = res.data.rows;
@@ -486,9 +526,12 @@
                 });
             },
             //获取contentType数据源
-            contentTypeOptionsGet() {
+            contentTypeOptionsGet: function () {
                 var that = this;
-                ms.http.get(ms.base + '/mdiy/dict/list.do', {dictType: '文章属性', pageSize: 99999}).then(function (data) {
+                ms.http.get(ms.base + '/mdiy/dict/list.do', {
+                    dictType: '文章属性',
+                    pageSize: 99999
+                }).then(function (data) {
                     that.contentTypeOptions = data.rows;
                 }).catch(function (err) {
                     console.log(err);
@@ -496,66 +539,70 @@
             },
             //contentImg文件上传完成回调
             contentImgSuccess: function (response, file, fileList) {
-                this.form.contentImg.push({url: file.url, name: file.name, path: response, uid: file.uid});
+                this.form.contentImg.push({
+                    url: file.url,
+                    name: file.name,
+                    path: response,
+                    uid: file.uid
+                });
             },
             contentImghandleRemove: function (file, files) {
                 var index = -1;
-                index = this.form.contentImg.findIndex(text => text == file);
+                index = this.form.contentImg.findIndex(function (text) {
+                    return text == file;
+                });
+
                 if (index != -1) {
                     this.form.contentImg.splice(index, 1);
                 }
             },
-            //contentImg文件上传完成回调
-            contentImgSuccess: function (response, file, fileList) {
-                this.form.contentImg.push({url: file.url, name: file.name, path: response, uid: file.uid});
-            },
             //上传超过限制
             contentImghandleExceed: function (files, fileList) {
-                this.$notify({title: '当前最多上传1个文件', type: 'warning'});
-            },
-            contentImghandleRemove: function (file, files) {
-                var index = -1;
-                index = this.form.contentImg.findIndex(text => text == file);
-                if (index != -1) {
-                    this.form.contentImg.splice(index, 1);
-                }
+                this.$notify({
+                    title: '当前最多上传1个文件',
+                    type: 'warning'
+                });
             },
             //查询列表
             list: function (contentCategoryId) {
                 var that = this;
                 ms.http.post(ms.manager + "/cms/content/list.do", {
-                    contentCategoryId: contentCategoryId,
+                    contentCategoryId: contentCategoryId
                 }).then(function (res) {
                     if (res.result && res.data.total > 0) {
                         if (res.data.rows[0].contentType) {
                             res.data.rows[0].contentType = res.data.rows[0].contentType.split(',');
                         }
+
                         if (res.data.rows[0].contentImg) {
                             res.data.rows[0].contentImg = JSON.parse(res.data.rows[0].contentImg);
                             res.data.rows[0].contentImg.forEach(function (value) {
-                                value.url = ms.base + value.path
-                            })
+                                value.url = ms.base + value.path;
+                            });
                         } else {
-                            res.data.rows[0].contentImg = []
+                            res.data.rows[0].contentImg = [];
                         }
+
                         that.form = res.data.rows[0];
                     }
                 }).catch(function (err) {
                     console.log(err);
                 });
-            },
+            }
         },
-        created() {
+        created: function () {
             this.contentCategoryIdOptionsGet();
             this.contentTypeOptionsGet();
             this.form.id = ms.util.getParameter("id");
-            if(ms.util.getParameter("categoryId") != 'undefined' && ms.util.getParameter("categoryId") != 'null'){
+            if (ms.util.getParameter("categoryId") != 'undefined' && ms.util.getParameter("categoryId") != 'null') {
                 this.form.contentCategoryId = ms.util.getParameter("categoryId");
             }
             this.type = ms.util.getParameter("type");
+
             if (this.form.id) {
                 this.get(this.form.id);
             }
+
             if (this.type) {
                 this.list(this.form.contentCategoryId);
                 this.returnIsShow = false;
@@ -575,4 +622,4 @@
     #form {
         overflow: hidden;
     }
-</style>
+</style>

+ 47 - 44
src/main/webapp/WEB-INF/manager/cms/content/index.ftl

@@ -25,75 +25,78 @@
 	var indexVue = new Vue({
 		el: "#index",
 		data: {
-			action:"", //跳转页面
+			action: "",
+			//跳转页面
 			defaultProps: {
 				children: 'children',
 				label: 'categoryTitle'
 			},
-			treeData:[],
-			loading:true,
-			emptyText:'',
+			treeData: [],
+			loading: true,
+			emptyText: ''
 		},
-		methods:{
-			handleNodeClick: function(data){
-				if(data.categoryType == '1'){
-                    this.action = ms.manager +"/cms/content/main.do?categoryId="+data.id;
-                } else if(data.categoryType == '2'){
-                    this.action = ms.manager +"/cms/content/form.do?categoryId="+data.id+"&type=2";
-                } else{
-                    this.action = ms.manager +"/cms/content/main.do";
-                }
+		methods: {
+			handleNodeClick: function (data) {
+				if (data.categoryType == '1') {
+					this.action = ms.manager + "/cms/content/main.do?categoryId=" + data.id;
+				} else if (data.categoryType == '2') {
+					this.action = ms.manager + "/cms/content/form.do?categoryId=" + data.id + "&type=2";
+				} else {
+					this.action = ms.manager + "/cms/content/main.do";
+				}
 			},
-			treeList: function(){
+			treeList: function () {
 				var that = this;
 				this.loadState = false;
 				this.loading = true;
-				ms.http.get(ms.manager+"/cms/category/list.do",{
-					pageSize:999,
-				}).then(
-						function(res) {
-							if(that.loadState){
-								that.loading = false;
-							}else {
-								that.loadState = true
-							}
-							if (!res.result||res.data.total <= 0) {
-								that.emptyText = '暂无数据';
-								that.treeData = [];
-							} else {
-								that.emptyText = '';
-								that.treeData = ms.util.treeData(res.data.rows,'id','categoryId','children');
-								that.treeData = [{
-									id:0,
-									categoryTitle:'全部',
-									children: that.treeData,
-								}]
-							}
-						}).catch(function(err) {
+				ms.http.get(ms.manager + "/cms/category/list.do", {
+					pageSize: 999
+				}).then(function (res) {
+					if (that.loadState) {
+						that.loading = false;
+					} else {
+						that.loadState = true;
+					}
+
+					if (!res.result || res.data.total <= 0) {
+						that.emptyText = '暂无数据';
+						that.treeData = [];
+					} else {
+						that.emptyText = '';
+						that.treeData = ms.util.treeData(res.data.rows, 'id', 'categoryId', 'children');
+						that.treeData = [{
+							id: 0,
+							categoryTitle: '全部',
+							children: that.treeData
+						}];
+					}
+				}).catch(function (err) {
 					console.log(err);
 				});
-				setTimeout(()=>{
-					if(that.loadState){
+				setTimeout(function () {
+					if (that.loadState) {
 						that.loading = false;
-					}else {
-						that.loadState = true
+					} else {
+						that.loadState = true;
 					}
 				}, 500);
-			},
+			}
 		},
-		mounted(){
-			this.action = ms.manager +"/cms/content/main.do";
+		mounted: function () {
+			this.action = ms.manager + "/cms/content/main.do";
 			this.treeList();
 		}
-	})
+	});
 </script>
 <style>
 	#index .index-menu {
+		height: 100vh;
 		min-height: 100vh;
 		min-width: 140px;
 	}
 	#index .ms-iframe-style {
 		width: 100%;
+		height: 100%;
 		border: 0;
 	}
 

+ 261 - 136
src/main/webapp/WEB-INF/manager/cms/content/main.ftl

@@ -49,7 +49,7 @@
                     <el-col :span="8" style="text-align: right;padding-right: 10px;">
                         <el-button type="primary" icon="el-icon-search" size="mini" @click="form.sqlWhere=null;currentPage=1;list()">查询</el-button>
                         <el-button @click="rest"  icon="el-icon-refresh" size="mini">重置</el-button>
-                        <el-button type="primary"size="mini" @click="$refs.search.open()"><i class="iconfont icon-shaixuan"></i>筛选</el-button>
+                        <el-button type="primary" size="mini" @click="$refs.search.open()"><i class="iconfont icon-shaixuan"></i>筛选</el-button>
                     </el-col>
                 </el-row>
             </el-form>
@@ -122,134 +122,247 @@
 <script>
     var indexVue = new Vue({
         el: '#main',
-        data:{
-            conditionList:[
-                {action:'and', field: 'content_title', el: 'eq', model: 'contentTitle', name: '文章标题', type: 'input'},
-                {action:'and', field: 'content_category_id', el: 'eq', model: 'contentCategoryId', name: '所属栏目', key:'id',title:'categoryTitle', type: 'cascader', multiple: false},
-                {action:'and', field: 'content_type', el: 'eq', model: 'contentType', name: '文章类型', key:'dictValue',title:'dictLabel', type: 'checkbox', label: false, multiple: true},
-                {action:'and', field: 'content_display', el: 'eq', model: 'contentDisplay', name: '是否显示', type: 'radio', label: true, multiple: false},
-                {action:'and', field: 'content_author', el: 'eq', model: 'contentAuthor', name: '文章作者', type: 'input'},
-                {action:'and', field: 'content_source', el: 'eq', model: 'contentSource', name: '文章来源', type: 'input'},
-                {action:'and', field: 'content_datetime', model: 'contentDatetime', el: 'gt', name: '发布时间', type: 'date'},
-                {action:'and', field: 'content_sort', el: 'eq', model: 'contentSort', name: '自定义顺序', type: 'number'},
-                {action:'and', field: 'content_description', el: 'eq', model: 'contentDescription', name: '描述', type: 'textarea'},
-                {action:'and', field: 'content_keyword', el: 'eq', model: 'contentKeyword', name: '关键字', type: 'textarea'},
-                {action:'and', field: 'content_details', el: 'like', model: 'contentDetails', name: '文章内容', type: 'input'},
-                {action:'and', field: 'content_url', el: 'eq', model: 'contentUrl', name: '文章跳转链接地址', type: 'input'},
-                {action:'and', field: 'appid', el: 'eq', model: 'appid', name: '文章管理的应用id', type: 'number'},
-                {action:'and', field: 'create_date', el: 'eq', model: 'createDate', name: '创建时间', type: 'date'},
-                {action:'and', field: 'update_date', el: 'eq', model: 'updateDate', name: '修改时间', type: 'date'},
-            ],
-            conditions:[],
-            contentCategoryIdOptions:[],
-            dataList: [], //文章列表
-            selectionList:[],//文章列表选中
-            total: 0, //总记录数量
-            pageSize: 10, //页面数量
-            currentPage:1, //初始页
+        data: {
+            conditionList: [{
+                action: 'and',
+                field: 'content_title',
+                el: 'eq',
+                model: 'contentTitle',
+                name: '文章标题',
+                type: 'input'
+            }, {
+                action: 'and',
+                field: 'content_category_id',
+                el: 'eq',
+                model: 'contentCategoryId',
+                name: '所属栏目',
+                key: 'id',
+                title: 'categoryTitle',
+                type: 'cascader',
+                multiple: false
+            }, {
+                action: 'and',
+                field: 'content_type',
+                el: 'eq',
+                model: 'contentType',
+                name: '文章类型',
+                key: 'dictValue',
+                title: 'dictLabel',
+                type: 'checkbox',
+                label: false,
+                multiple: true
+            }, {
+                action: 'and',
+                field: 'content_display',
+                el: 'eq',
+                model: 'contentDisplay',
+                name: '是否显示',
+                type: 'radio',
+                label: true,
+                multiple: false
+            }, {
+                action: 'and',
+                field: 'content_author',
+                el: 'eq',
+                model: 'contentAuthor',
+                name: '文章作者',
+                type: 'input'
+            }, {
+                action: 'and',
+                field: 'content_source',
+                el: 'eq',
+                model: 'contentSource',
+                name: '文章来源',
+                type: 'input'
+            }, {
+                action: 'and',
+                field: 'content_datetime',
+                model: 'contentDatetime',
+                el: 'gt',
+                name: '发布时间',
+                type: 'date'
+            }, {
+                action: 'and',
+                field: 'content_sort',
+                el: 'eq',
+                model: 'contentSort',
+                name: '自定义顺序',
+                type: 'number'
+            }, {
+                action: 'and',
+                field: 'content_description',
+                el: 'eq',
+                model: 'contentDescription',
+                name: '描述',
+                type: 'textarea'
+            }, {
+                action: 'and',
+                field: 'content_keyword',
+                el: 'eq',
+                model: 'contentKeyword',
+                name: '关键字',
+                type: 'textarea'
+            }, {
+                action: 'and',
+                field: 'content_details',
+                el: 'like',
+                model: 'contentDetails',
+                name: '文章内容',
+                type: 'input'
+            }, {
+                action: 'and',
+                field: 'content_url',
+                el: 'eq',
+                model: 'contentUrl',
+                name: '文章跳转链接地址',
+                type: 'input'
+            }, {
+                action: 'and',
+                field: 'appid',
+                el: 'eq',
+                model: 'appid',
+                name: '文章管理的应用id',
+                type: 'number'
+            }, {
+                action: 'and',
+                field: 'create_date',
+                el: 'eq',
+                model: 'createDate',
+                name: '创建时间',
+                type: 'date'
+            }, {
+                action: 'and',
+                field: 'update_date',
+                el: 'eq',
+                model: 'updateDate',
+                name: '修改时间',
+                type: 'date'
+            }],
+            conditions: [],
+            contentCategoryIdOptions: [],
+            dataList: [],
+            //文章列表
+            selectionList: [],
+            //文章列表选中
+            total: 0,
+            //总记录数量
+            pageSize: 10,
+            //页面数量
+            currentPage: 1,
+            //初始页
             manager: ms.manager,
-            loadState:false,
-            loading: true,//加载状态
-            emptyText:'',//提示文字
-            contentTypeOptions:[],
-            contentDisplayOptions:[{"value":"0","label":"是"},{"value":"1","label":"否"}],
+            loadState: false,
+            loading: true,
+            //加载状态
+            emptyText: '',
+            //提示文字
+            contentTypeOptions: [],
+            contentDisplayOptions: [{
+                "value": "0",
+                "label": "是"
+            }, {
+                "value": "1",
+                "label": "否"
+            }],
             //搜索表单
-            form:{
-                sqlWhere:null,
+            form: {
+                sqlWhere: null,
                 // 文章标题
-                contentTitle:null,
+                contentTitle: null,
                 // 文章类型
-                contentType:null,
-                contentCategoryId:'',
-            },
+                contentType: null,
+                contentCategoryId: ''
+            }
         },
-        methods:{
+        methods: {
             //查询列表
-            list: function() {
+            list: function () {
                 var that = this;
                 that.loading = true;
                 that.loadState = false;
-                var page={
+                var page = {
                     pageNo: that.currentPage,
-                    pageSize : that.pageSize
-                }
-                var form = JSON.parse(JSON.stringify(that.form))
-                if(form.contentType.length > 0){
+                    pageSize: that.pageSize
+                };
+                var form = JSON.parse(JSON.stringify(that.form));
+
+                if (form.contentType.length > 0) {
                     form.contentType = form.contentType.join(',');
                 }
-                for (key in form){
-                    if(!form[key]){
-                        delete  form[key]
+
+                for (var key in form) {
+                    if (!form[key]) {
+                        delete form[key];
                     }
                 }
-                history.replaceState({form:form,page:page},"");
-                ms.http.post(ms.manager+"/cms/content/list.do",form.sqlWhere?{
-                    sqlWhere:form.sqlWhere,
-                    ...page
-                }:{...form,
-                    ...page
-                }).then(
-                    function(res) {
-                        if(that.loadState){
-                            that.loading = false;
-                        }else {
-                            that.loadState = true
-                        }
-                        if (!res.result||res.data.total <= 0) {
-                            that.emptyText = '暂无数据'
-                            that.dataList = [];
-                            that.total = 0;
-                        } else {
-                            that.emptyText = '';
-                            that.total = res.data.total;
-                            that.dataList = res.data.rows;
-                        }
-                    }).catch(function(err) {
+
+                history.replaceState({
+                    form: form,
+                    page: page
+                }, "");
+                ms.http.post(ms.manager + "/cms/content/list.do", form.sqlWhere ? Object.assign({}, {
+                    sqlWhere: form.sqlWhere
+                }, page) : Object.assign({}, that.form, page)).then(function (res) {
+                    if (that.loadState) {
+                        that.loading = false;
+                    } else {
+                        that.loadState = true;
+                    }
+
+                    if (!res.result || res.data.total <= 0) {
+                        that.emptyText = '暂无数据';
+                        that.dataList = [];
+                        that.total = 0;
+                    } else {
+                        that.emptyText = '';
+                        that.total = res.data.total;
+                        that.dataList = res.data.rows;
+                    }
+                }).catch(function (err) {
                     that.loading = false;
                     console.log(err);
                 });
-                setTimeout(()=>{
-                    if(that.loadState){
+                setTimeout(function () {
+                    if (that.loadState) {
                         that.loading = false;
-                    }else {
-                        that.loadState = true
+                    } else {
+                        that.loadState = true;
                     }
                 }, 500);
             },
             //文章列表选中
-            handleSelectionChange:function(val){
+            handleSelectionChange: function (val) {
                 this.selectionList = val;
             },
             //删除
-            del: function(row){
+            del: function (row) {
                 var that = this;
                 that.$confirm('此操作将永久删除所选内容, 是否继续?', '提示', {
                     confirmButtonText: '确定',
                     cancelButtonText: '取消',
                     type: 'warning'
-                }).then(() => {
-                    ms.http.post(ms.manager+"/cms/content/delete.do", row.length?row:[row],{
+                }).then(function () {
+                    ms.http.post(ms.manager + "/cms/content/delete.do", row.length ? row : [row], {
                         headers: {
                             'Content-Type': 'application/json'
                         }
-                    }).then(
-                        function(res){
-                            if (res.result) {
-                                that.$notify({
-                                    type: 'success',
-                                    message: '删除成功!'
-                                });
-                                //删除成功,刷新列表
-                                that.list();
-                            }else {
-                                that.$notify({
-                                    title: '失败',
-                                    message: res.msg,
-                                    type: 'warning'
-                                });
-                            }
-                        });
-                }).catch(() => {
+                    }).then(function (res) {
+                        if (res.result) {
+                            that.$notify({
+                                type: 'success',
+                                message: '删除成功!'
+                            }); //删除成功,刷新列表
+
+                            that.list();
+                        } else {
+                            that.$notify({
+                                title: '失败',
+                                message: res.msg,
+                                type: 'warning'
+                            });
+                        }
+                    });
+                }).catch(function () {
                     that.$notify({
                         type: 'info',
                         message: '已取消删除'
@@ -257,100 +370,112 @@
                 });
             },
             //新增
-            save:function(id){
-                if(id){
-                    location.href=this.manager+"/cms/content/form.do?id="+id;
-                }else {
-                    location.href=this.manager+"/cms/content/form.do?categoryId="+this.form.contentCategoryId;
+            save: function (id) {
+                if (id) {
+                    location.href = this.manager + "/cms/content/form.do?id=" + id;
+                } else {
+                    location.href = this.manager + "/cms/content/form.do?categoryId=" + this.form.contentCategoryId;
                 }
             },
             //表格数据转换
-            contentCategoryIdFormat(row, column, cellValue, index){
-                var value="";
-                if(cellValue){
-                    var data = this.contentCategoryIdOptions.find(function(value){
-                        return value.id==cellValue;
-                    })
-                    if(data&&data.categoryTitle){
+            contentCategoryIdFormat: function (row, column, cellValue, index) {
+                var value = "";
+
+                if (cellValue) {
+                    var data = this.contentCategoryIdOptions.find(function (value) {
+                        return value.id == cellValue;
+                    });
+
+                    if (data && data.categoryTitle) {
                         value = data.categoryTitle;
                     }
                 }
+
                 return value;
             },
-            dateFormat: function(row, column, cellValue, index){
-                if(cellValue){
-                    return ms.util.date.fmt(cellValue,'yyyy-MM-dd');
+            dateFormat: function (row, column, cellValue, index) {
+                if (cellValue) {
+                    return ms.util.date.fmt(cellValue, 'yyyy-MM-dd');
                 } else {
-                    return ''
+                    return '';
                 }
             },
-            contentDisplayFormat(row, column, cellValue, index){
-                var value="";
-                if(cellValue){
-                    var data = this.contentDisplayOptions.find(function(value){
-                        return value.value==cellValue;
-                    })
-                    if(data&&data.label){
+            contentDisplayFormat: function (row, column, cellValue, index) {
+                var value = "";
+
+                if (cellValue) {
+                    var data = this.contentDisplayOptions.find(function (value) {
+                        return value.value == cellValue;
+                    });
+
+                    if (data && data.label) {
                         value = data.label;
                     }
                 }
+
                 return value;
             },
             //pageSize改变时会触发
-            sizeChange:function(pagesize) {
+            sizeChange: function (pagesize) {
                 this.loading = true;
                 this.pageSize = pagesize;
                 this.list();
             },
             //currentPage改变时会触发
-            currentChange:function(currentPage) {
+            currentChange: function (currentPage) {
                 this.loading = true;
                 this.currentPage = currentPage;
                 this.list();
             },
-            search(data){
+            search: function (data) {
                 this.form.sqlWhere = JSON.stringify(data);
                 this.list();
             },
             //重置表单
-            rest(){
+            rest: function () {
                 this.form.sqlWhere = null;
                 this.$refs.searchForm.resetFields();
                 this.list();
             },
             //获取contentCategoryId数据源
-            contentCategoryIdOptionsGet() {
+            contentCategoryIdOptionsGet: function () {
                 var that = this;
-                ms.http.get(ms.manager+"/cms/category/list.do",{pageSize:9999}).then(function(res){
-                    if(res.result){
+                ms.http.get(ms.manager + "/cms/category/list.do", {
+                    pageSize: 9999
+                }).then(function (res) {
+                    if (res.result) {
                         that.contentCategoryIdOptions = res.data.rows;
                     }
+
                     that.list();
-                }).catch(function(err){
+                }).catch(function (err) {
                     console.log(err);
                 });
             },
             //获取contentType数据源
-            contentTypeOptionsGet() {
+            contentTypeOptionsGet: function () {
                 var that = this;
-                ms.http.get(ms.base+'/mdiy/dict/list.do', {dictType:'文章属性',pageSize:99999}).then(function (data) {
+                ms.http.get(ms.base + '/mdiy/dict/list.do', {
+                    dictType: '文章属性',
+                    pageSize: 99999
+                }).then(function (data) {
                     that.contentTypeOptions = data.rows;
                 }).catch(function (err) {
                     console.log(err);
                 });
-            },
+            }
         },
-        mounted(){
+        mounted: function () {
             this.contentCategoryIdOptionsGet();
             this.contentTypeOptionsGet();
-            this.form.contentCategoryId = ms.util.getParameter("categoryId")
-            if(history.state){
+            this.form.contentCategoryId = ms.util.getParameter("categoryId");
+            if (history.hasOwnProperty("state")) {
                 this.form = history.state.form;
                 this.currentPage = history.state.page.pageNo;
                 this.pageSize = history.state.page.pageSize;
             }
-        },
-    })
+        }
+    });
 </script>
 <style>
     #main .ms-search {
@@ -362,4 +487,4 @@
     body{
         overflow: hidden;
     }
-</style>
+</style>

+ 103 - 59
src/main/webapp/WEB-INF/manager/cms/generate/index.ftl

@@ -119,119 +119,163 @@
 </body>
 </html>
 <script>
+	"use strict";
+
 	var app = new Vue({
 		el: '#app',
-		watch:{
-
-		},
+		watch: {},
 		data: {
-			homeLoading:false,
-			articleLoading:false,
-			columnLoading:false,
-			template:'',//主题模板
-			templateOptions:[],
-			position:'index', //位置
-			contentSection:'0', //文章栏目
-			section:'0', //栏目
-			time:ms.util.date.fmt(new Date(),"yyyy-MM-dd"),
-			treeList:[{
-				id:'0',
-				categoryTitle:'顶级栏目',
-				children:[],
-			}],
+			homeLoading: false,
+			articleLoading: false,
+			columnLoading: false,
+			template: '',
+			//主题模板
+			templateOptions: [],
+			position: 'index',
+			//位置
+			contentSection: '0',
+			//文章栏目
+			section: '0',
+			//栏目
+			time: ms.util.date.fmt(new Date(), "yyyy-MM-dd"),
+			treeList: [{
+				id: '0',
+				categoryTitle: '顶级栏目',
+				children: []
+			}]
 		},
 		methods: {
 			//更新主页
-			updataIndex(){
+			updataIndex: function () {
 				var that = this;
-				if(!that.position || that.position == ''){
-					this.$notify({ title: '请输入主页位置!', type: 'warning' });
+				if (!that.position || that.position == '') {
+					this.$notify({
+						title: '请输入主页位置!',
+						type: 'warning'
+					});
 					return;
 				}
 				that.homeLoading = true;
-				ms.http.post(ms.manager+'/cms/generate//generateIndex.do', {url:that.template,position:that.position}).then(function (data) {
-					if(data.result){
-						that.$notify({ title: '更新成功!', type: 'success' });
-					}else {
-						that.$notify({ title: '更新失败!',message: "错误", type: 'error' });
+				ms.http.post(ms.manager + '/cms/generate//generateIndex.do', {
+					url: that.template,
+					position: that.position
+				}).then(function (data) {
+					if (data.result) {
+						that.$notify({
+							title: '更新成功!',
+							type: 'success'
+						});
+					} else {
+						that.$notify({
+							title: '更新失败!',
+							message: "错误",
+							type: 'error'
+						});
 					}
 				}).catch(function (err) {
-					that.$notify({ title: '更新失败!',message: err, type: 'error' });
+					that.$notify({
+						title: '更新失败!',
+						message: err,
+						type: 'error'
+					});
 					console.log(err);
-				}).finally(()=>{
+				}).finally(function () {
 					that.homeLoading = false;
 				});
 			},
 			//预览主页
-			viewIndex(){
-				if(!this.position || this.position == ''){
-					this.$notify({ title: '请输入主页位置!', type: 'warning' });
+			viewIndex: function () {
+				if (!this.position || this.position == '') {
+					this.$notify({
+						title: '请输入主页位置!',
+						type: 'warning'
+					});
 					return;
 				}
-				window.open(ms.manager+"/cms/generate/"+this.position+"/viewIndex.do");
+				window.open(ms.manager + "/cms/generate/" + this.position + "/viewIndex.do");
 			},
 			//更新栏目
-			updateColumn(){
+			updateColumn: function () {
 				var that = this;
 				that.columnLoading = true;
-				ms.http.get(ms.manager+'/cms/generate/'+(that.section?that.section:0)+'/genernateColumn.do').then(function (data) {
-					if(data.result){
-						that.$notify({ title: '更新成功!', type: 'success' });
+				ms.http.get(ms.manager + '/cms/generate/' + (that.section ? that.section : 0) + '/genernateColumn.do').then(function (data) {
+					if (data.result) {
+						that.$notify({
+							title: '更新成功!',
+							type: 'success'
+						});
 					}
 				}).catch(function (err) {
-					that.$notify({ title: '更新失败!',message: err, type: 'error' });
+					that.$notify({
+						title: '更新失败!',
+						message: err,
+						type: 'error'
+					});
 					console.log(err);
-				}).finally(()=>{
+				}).finally(function () {
 					that.columnLoading = false;
 				});
 			},
 			//生成文章栏目
-			updateArticle(){
+			updateArticle: function () {
 				var that = this;
 				that.articleLoading = true;
-				ms.http.post(ms.manager+'/cms/generate/'+(that.contentSection?that.contentSection:0)+'/generateArticle.do', {dateTime:that.time}).then(function (data) {
-					if(data.result){
-						that.$notify({ title: '更新成功!', type: 'success' });
+				ms.http.post(ms.manager + '/cms/generate/' + (that.contentSection ? that.contentSection : 0) + '/generateArticle.do', {
+					dateTime: that.time
+				}).then(function (data) {
+					if (data.result) {
+						that.$notify({
+							title: '更新成功!',
+							type: 'success'
+						});
 					}
 				}).catch(function (err) {
-					that.$notify({ title: '更新失败!',message: err, type: 'error' });
+					that.$notify({
+						title: '更新失败!',
+						message: err,
+						type: 'error'
+					});
 					console.log(err);
-				}).finally(()=>{
+				}).finally(function () {
 					that.articleLoading = false;
 				});
 			},
 			//获取主题模板数据源
-			templateOptionsGet() {
+			templateOptionsGet: function () {
 				var that = this;
-				ms.http.get(ms.manager+'/template/queryTemplateFileForColumn.do', {pageSize:99999}).then(function (data) {
-					that.templateOptions = data.data;
-					//寻找主页
+				ms.http.get(ms.manager + '/template/queryTemplateFileForColumn.do', {
+					pageSize: 99999
+				}).then(function (data) {
+					that.templateOptions = data.data; //寻找主页
+
 					var template = that.templateOptions.find(function (x) {
-						return x.indexOf("index")!=-1||x.indexOf("default")!=-1;
-					})
-					//没有就找其他的
-					that.template = template||(that.templateOptions.length>0?that.templateOptions[0]:"");
+						return x.indexOf("index") != -1 || x.indexOf("default") != -1;
+					}); //没有就找其他的
+
+					that.template = template || (that.templateOptions.length > 0 ? that.templateOptions[0] : "");
 				}).catch(function (err) {
 					console.log(err);
 				});
 			},
-			getTree(){
+			getTree: function () {
 				var that = this;
-				ms.http.get(ms.manager+"/cms/category/list.do",{pageSize:9999}).then(function(res){
-					if(res.result){
+				ms.http.get(ms.manager + "/cms/category/list.do", {
+					pageSize: 9999
+				}).then(function (res) {
+					if (res.result) {
 						//res.data.rows.push({id:0,categoryId: null,categoryTitle:'顶级栏目管理'});
-						that.treeList[0].children = ms.util.treeData(res.data.rows,'id','categoryId','children');
+						that.treeList[0].children = ms.util.treeData(res.data.rows, 'id', 'categoryId', 'children');
 					}
-				}).catch(function(err){
+				}).catch(function (err) {
 					console.log(err);
 				});
-			},
+			}
 		},
-		created(){
+		created: function () {
 			this.getTree();
 			this.templateOptionsGet();
 		}
-	})
+	});
 </script>
 <style>
 	input{

+ 72 - 44
src/main/webapp/WEB-INF/manager/main.ftl

@@ -427,92 +427,120 @@
 <script>
   var app = new Vue({
     el: '#app',
-    watch:{
-
-    },
+    watch: {},
     data: {
-      base:ms.base,
+      base: ms.base,
       msNewsLast: '',
       msNewsPath: ''
     },
     methods: {
-      jumpArtcleManager(){
-        window.parent.indexVue.openMenu({modelId:706,modelTitle:'文章管理',modelIcon: "icon-neirongguanli"});
+      jumpArtcleManager: function () {
+        window.parent.indexVue.openMenu({
+          modelId: 706,
+          modelTitle: '文章管理',
+          modelIcon: "icon-neirongguanli"
+        });
       },
       //栏目管理
-      jumpCategorymanager(){
-        window.parent.indexVue.open({"modelId":708,"modelTitle":"栏目管理","modelModelId":706,"modelUrl":"cms/category/index.do"});
+      jumpCategorymanager: function () {
+        window.parent.indexVue.open({
+          "modelId": 708,
+          "modelTitle": "栏目管理",
+          "modelModelId": 706,
+          "modelUrl": "cms/category/index.do"
+        });
       },
       //静态化
-      jumpStaticManager(){
-        window.parent.indexVue.open({"modelId":406,"modelTitle":"静态化","modelModelId":23,"modelUrl":"cms/generate/index.do"});
+      jumpStaticManager: function () {
+        window.parent.indexVue.open({
+          "modelId": 406,
+          "modelTitle": "静态化",
+          "modelModelId": 23,
+          "modelUrl": "cms/generate/index.do"
+        });
       },
       //管理员管理
-      jumpAdmininstatorManager(){
-        window.parent.indexVue.open({"modelId":411,"modelTitle":"管理员管理","modelModelId":23,"modelUrl":"basic/manager/index.do"});
-
+      jumpAdmininstatorManager: function () {
+        window.parent.indexVue.open({
+          "modelId": 411,
+          "modelTitle": "管理员管理",
+          "modelModelId": 23,
+          "modelUrl": "basic/manager/index.do"
+        });
       },
       //角色管理
-      jumpUserManager(){
-        window.parent.indexVue.open({"modelId":406,"modelTitle":"角色管理","modelModelId":23,"modelUrl":"basic/role/index.do"});
+      jumpUserManager: function () {
+        window.parent.indexVue.open({
+          "modelId": 406,
+          "modelTitle": "角色管理",
+          "modelModelId": 23,
+          "modelUrl": "basic/role/index.do"
+        });
       },
       //菜单管理
-      jumpMenuManager(){
-        window.parent.indexVue.open({"modelId":183,"modelTitle":"菜单管理","modelModelId":23,"modelUrl":"model/index.do"});
+      jumpMenuManager: function () {
+        window.parent.indexVue.open({
+          "modelId": 183,
+          "modelTitle": "菜单管理",
+          "modelModelId": 23,
+          "modelUrl": "model/index.do"
+        });
       },
       //模板管理
-      jumpTemplateManager(){
-        window.parent.indexVue.open({"modelId":87,"modelTitle":"模板管理","modelModelId":84,"modelUrl":"template/index.do"});
-
+      jumpTemplateManager: function () {
+        window.parent.indexVue.open({
+          "modelId": 87,
+          "modelTitle": "模板管理",
+          "modelModelId": 84,
+          "modelUrl": "template/index.do"
+        });
       },
       //应用管理
-      jumpApplicationManager(){
-        window.parent.indexVue.open({"modelId":86,"modelTitle":"应用管理","modelModelId":84,"modelUrl":"app/-1/edit.do"});
-
+      jumpApplicationManager: function () {
+        window.parent.indexVue.open({
+          "modelId": 86,
+          "modelTitle": "应用管理",
+          "modelModelId": 84,
+          "modelUrl": "app/-1/edit.do"
+        });
       },
       //铭飞开发文档
-      jumpMCMSDocument(){
+      jumpMCMSDocument: function () {
         window.open("http://doc.ms.mingsoft.net/plugs-cms/");
-
       },
-      enterQQOneGroup(){
+      enterQQOneGroup: function () {
         window.open("https://shang.qq.com/wpa/qunwpa?idkey=ebf251dc9758de6b9c78c499956431cba73e28b3f0b72c0fc28242e98b20fca2");
-
       },
-      enterQQTwoGroup(){
+      enterQQTwoGroup: function () {
         window.open("http://shang.qq.com/wpa/qunwpa?idkey=cfb32b0f47d89d7ef1c3a9493984d4ffbdfe14049fdedd90c517a072e90d68b9");
-
       },
-      enterQQThreeGroup(){
+      enterQQThreeGroup: function () {
         window.open("http://shang.qq.com/wpa/qunwpa?idkey=5dd11fdb492c4ded090fa1f78a166583978e33c4a61301b136d31e9e3eb7df72");
-
       },
-      enterQQFourGroup(){
+      enterQQFourGroup: function () {
         window.open("http://shang.qq.com/wpa/qunwpa?idkey=565f1e4c4fabeee42947f6c6b96ac7ca4853dece16559d3d78e944ca2931b7f5");
-
       },
-      addBusinessQQ(){
+      addBusinessQQ: function () {
         window.open("http://wpa.qq.com/msgrd?v=3&uin=3336073455&site=qq&menu=yes");
-
       },
       //打开铭飞消息页面
-      openMCMSNews(){
+      openMCMSNews: function () {
         window.open(this.msNewsPath);
       },
-      getNewsLast(){
+      getNewsLast: function () {
         var that = this;
         axios.create({
           withCredentials: true
-        }).get("https://ms.mingsoft.net/cms/content/list.do?contentCategoryId=202").then(function (res){
+        }).get("https://ms.mingsoft.net/cms/content/list.do?contentCategoryId=202").then(function (res) {
           that.msNewsLast = res.data.data.rows[0].contentTitle.toString();
-          that.msNewsPath = 'https://ms.mingsoft.net/html/1/203/202/'+res.data.data.rows[0].id+'.html'
-        })
+          that.msNewsPath = 'https://ms.mingsoft.net/html/1/203/202/' + res.data.data.rows[0].id + '.html';
+        });
       }
     },
-    created(){
-      this.getNewsLast()
+    created: function () {
+      this.getNewsLast();
     }
-  })
+  });
 </script>
 <style>
   .custom-body {
@@ -2844,4 +2872,4 @@
   #app{
     overflow-x: hidden;
   }
-</style>
+</style>

Plik diff jest za duży
+ 0 - 0
src/main/webapp/static/plugins/babel-polyfill/7.8.3/polyfill.min.js


+ 20 - 0
src/main/webapp/static/plugins/ms/1.0.0/compatible.js

@@ -0,0 +1,20 @@
+if (typeof Object.assign != 'function') {
+    Object.assign = function(target) {
+        'use strict';
+        if (target == null) {
+            throw new TypeError('Cannot convert undefined or null to object');
+        }
+        target = Object(target);
+        for (var index = 1; index < arguments.length; index++) {
+            var source = arguments[index];
+            if (source != null) {
+                for (var key in source) {
+                    if (Object.prototype.hasOwnProperty.call(source, key)) {
+                        target[key] = source[key];
+                    }
+                }
+            }
+        }
+        return target;
+    };
+}

+ 3 - 1
src/main/webapp/static/plugins/ms/1.0.0/ms.http.js

@@ -9,6 +9,8 @@
         function(config) {
             config.headers = {
                 'Content-Type': 'application/x-www-form-urlencoded',
+                'Cache-Control': 'no-cache',
+                'Pragma': 'no-cache',
                 'X-Requested-With': 'XMLHttpRequest'
             }
             if (config.method === 'post' && config.headers["Content-Type"] === "application/x-www-form-urlencoded") {
@@ -171,4 +173,4 @@
     }
     window.ms.http = http;
     window.ms.isLoginRedirect = true;
-}());
+}());

+ 28 - 25
src/main/webapp/static/plugins/ms/1.0.0/ms.util.js

@@ -1,5 +1,5 @@
 /**
- * 通用工具类 
+ * 通用工具类
  */
 (function() {
 
@@ -21,22 +21,26 @@
         }
     }
     //树形数据组织
-    function treeData (source, id, parentId, children) {
-        let cloneData = JSON.parse(JSON.stringify(source))
-        return cloneData.filter(father => {
-            let branchArr = cloneData.filter(child => father[id] == child[parentId]);
-            branchArr.length > 0 ? father[children] = branchArr : ''
-            return !father[parentId]||father[parentId]=='0'        // 如果第一层不是parentId=0,请自行修改
-        })
+    function treeData(source, id, parentId, children) {
+        var cloneData = JSON.parse(JSON.stringify(source));
+        return cloneData.filter(function (father) {
+            var branchArr = cloneData.filter(function (child) {
+                return father[id] == child[parentId];
+            });
+            branchArr.length > 0 ? father[children] = branchArr : '';
+            return !father[parentId] || father[parentId] == '0'; // 如果第一层不是parentId=0,请自行修改
+        });
     }
     //验证是否为子集
-    function childValidate (sourceList,id,parentId,key,parentKey){
-        var data=sourceList.find(x=>x[key]==parentId);
-        if(data&&data[parentKey]!='0'&&data[parentKey]){
-            if(id==data[parentKey]){
-                return false
+    function childValidate(sourceList, id, parentId, key, parentKey) {
+        var data = sourceList.find(function (x) {
+            return x[key] == parentId;
+        });
+        if (data && data[parentKey] != '0' && data[parentKey]) {
+            if (id == data[parentKey]) {
+                return false;
             }
-            return childValidate(sourceList,id,data[parentKey],key,parentKey)
+            return childValidate(sourceList, id, data[parentKey], key, parentKey);
         }
         return true;
     }
@@ -44,20 +48,19 @@
     //日期处理
     var date = {
         //格式化时间
-        fmt: function(date, fmt) {
-            var date = new Date(date);
-            log(fmt);
+        fmt: function(de, fmt) {
+            var date = new Date(typeof de == "string"?de.replace(/-/g, "/"):de);
             if (!fmt) {
                 fmt = "yyyy-mm-dd";
             }
             var o = {
-                "M+": date.getMonth() + 1, //月份   
-                "d+": date.getDate(), //日   
-                "h+": date.getHours(), //小时   
-                "m+": date.getMinutes(), //分   
-                "s+": date.getSeconds(), //秒   
-                "q+": Math.floor((date.getMonth() + 3) / 3), //季度   
-                "S": date.getMilliseconds() //毫秒   
+                "M+": date.getMonth() + 1, //月份
+                "d+": date.getDate(), //日
+                "h+": date.getHours(), //小时
+                "m+": date.getMinutes(), //分
+                "s+": date.getSeconds(), //秒
+                "q+": Math.floor((date.getMonth() + 3) / 3), //季度
+                "S": date.getMilliseconds() //毫秒
             };
             if (/(y+)/.test(fmt))
                 fmt = fmt.replace(RegExp.$1, (date.getFullYear() + "").substr(4 - RegExp.$1.length));
@@ -226,4 +229,4 @@
     }
     window.ms.util = util;
     window.ms.debug = false
-}());
+}());

Niektóre pliki nie zostały wyświetlone z powodu dużej ilości zmienionych plików