fix: 5.2.10 页面更新

Signed-off-by: mingsoft <killfen@126.com>
master
ms group dev 3 years ago committed by mingsoft
parent 85321c3596
commit 6e866c2dc7
  1. 10
      src/main/webapp/WEB-INF/manager/cms/category/form.ftl
  2. 107
      src/main/webapp/WEB-INF/manager/cms/content/form.ftl
  3. 6
      src/main/webapp/WEB-INF/manager/cms/content/main.ftl
  4. 2
      src/main/webapp/WEB-INF/manager/cms/generate/index.ftl

@ -7,8 +7,10 @@
<body>
<div id="form" v-cloak>
<el-header class="ms-header ms-tr" height="50px">
<el-button type="primary" icon="iconfont icon-baocun" size="mini" @click="save()" :loading="saveDisabled">保存
</el-button>
<@shiro.hasPermission name="cms:category:save">
<el-button type="primary" icon="iconfont icon-baocun" size="mini" @click="save()" :loading="saveDisabled">保存
</el-button>
</@shiro.hasPermission>
<el-button size="mini" icon="iconfont icon-fanhui" plain onclick="javascript:history.go(-1)">返回</el-button>
</el-header>
<el-main class="ms-container">
@ -412,6 +414,10 @@
if (that.form.id > 0) {
url = ms.manager + "/cms/category/update.do";
}
//若缩略图为空则赋值为空串
if (that.form.categoryImg.length == 0){
that.form.categoryImg = "";
}
this.$refs.form.validate(function (valid) {
if (valid) {
//栏目属性为封面则不需要列表模板

@ -7,11 +7,23 @@
</head>
<body>
<div id="form" v-cloak>
<el-header class="ms-header ms-tr" height="50px">
<el-button type="primary" icon="iconfont icon-baocun" size="mini" @click="save()" :loading="saveDisabled">保存
</el-button>
<el-button size="mini" icon="iconfont icon-fanhui" plain onclick="javascript:history.go(-1)">返回
</el-button>
<el-header class="ms-header ms-tr" height="50px" >
<el-row type="flex" justify="space-between" align="middle">
<el-col :xs="12" :sm="14" :md="16" :lg="18" :xl="18" style="display:flex;align-items:center;">
<el-tooltip class="item" effect="dark" :content="form.id" placement="top-start">
<span v-if="form.id && categoryType=='2'" style="float: left; max-width:calc(30% - 40px);" class="header-info">编号:{{form.id}}</span>
</el-tooltip>
<el-button v-if="form.id && categoryType=='2'" type="text" style="float: left" icon="el-icon-document-copy" circle :data-clipboard-text="form.id" @click="copyString()" class="copyBtn"></el-button>
</el-col>
<el-col :xs="12" :sm="10" :md="8" :lg="6" :xl="6" class="ms-tr">
<@shiro.hasPermission name="cms:content:save">
<el-button type="primary" icon="iconfont icon-baocun" size="mini" @click="save()" :loading="saveDisabled">保存
</el-button>
</@shiro.hasPermission>
<el-button size="mini" icon="iconfont icon-fanhui" plain onclick="javascript:history.go(-1)">返回
</el-button>
</el-col>
</el-row>
</el-header>
<el-main class="ms-container" style="position:relative;">
<el-scrollbar class="ms-scrollbar" style="height: 100%;">
@ -126,6 +138,24 @@
</el-form-item>
</el-col>
</el-row>
<el-row
gutter="0"
justify="start" align="top">
<el-col span="12">
<el-form-item label="文章外链接" prop="contentOutLink">
<el-input v-model="form.contentOutLink"
:disabled="false"
:style="{width: '100%'}"
:clearable="true"
placeholder="请输入文章外链接">
</el-input>
<div class="ms-form-tip">
标签:<a href="http://doc.mingsoft.net/mcms/biao-qian/wen-zhang-lie-biao-ms-arclist.html"
target="_blank">${'$'}{field.outlink}</a> 文章外链接必须以http或者https等开头
</div>
</el-form-item>
</el-col>
</el-row>
<el-row
gutter="0"
justify="start" align="top">
@ -153,6 +183,9 @@
:disabled="false"
controls-position="">
</el-input-number>
<div class="ms-form-tip">
提示:前台模板标签需要设置orderby属性为sort才能生效
</div>
</el-form-item>
</el-col>
</el-row>
@ -217,7 +250,7 @@
</body>
</html>
<script>
var form = new Vue({
var formVue = new Vue({
el: '#form',
data: function () {
return {
@ -257,9 +290,11 @@
contentKeyword: '',
// 文章内容
contentDetails: '',
//文章外链接
contentOutLink: '',
contentDatetime: ms.util.date.fmt(Date.now(),"yyyy-MM-dd hh:mm:ss"),
},
categoryType: '1',
contentTypeOptions: [],
categoryIdOptions: [],
contentDisplayOptions: [{
@ -299,43 +334,36 @@
methods: {
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";
if (that.form.id > 0) {
url = ms.manager + "/cms/content/update.do";
}
//若缩略图为空则赋值为空串
if (that.form.contentImg.length == 0){
that.form.contentImg = "";
}
this.$refs.form[0].validate(function (valid) {
if (valid) {
that.saveDisabled = true; //判断
// if (that.categoryIdOptions.filter(function (f) {
// return f['id'] == that.form.categoryId;
// })[0].categoryType == '2' && that.returnIsShow) {
// that.$notify({
// title: '提示',
// message: '所属栏目不能为封面',
// type: 'error'
// });
// that.saveDisabled = false;
// return;
// }
var data = JSON.parse(JSON.stringify(that.form));
if (data.contentType) {
data.contentType = data.contentType.join(',');
}
data.contentImg = JSON.stringify(data.contentImg);
if (data.contentImg == []) {
data.contentImg = ""
}else {
data.contentImg = JSON.stringify(data.contentImg);
}
ms.http.post(url, data).then(function (data) {
if (data.result) {
//保存时需要赋值关联ID
@ -427,7 +455,7 @@
res.data.contentType = [];
}
if (res.data.contentImg) {
if (res.data.contentImg && res.data.contentImg != '') {
res.data.contentImg = JSON.parse(res.data.contentImg);
res.data.contentImg.forEach(function (value) {
value.url = ms.base + value.path;
@ -441,7 +469,8 @@
return f['id'] == that.form.categoryId;
});
if (category.length == 1) {
if (category.length > 0) {
that.categoryType = category[0].categoryType
if (category[0].categoryType == '2') {
that.returnIsShow = false;
}
@ -464,7 +493,7 @@
res.data.contentType = [];
}
if (res.data.contentImg) {
if (res.data.contentImg && res.data.contentImg != '') {
res.data.contentImg = JSON.parse(res.data.contentImg);
res.data.contentImg.forEach(function (value) {
value.url = ms.base + value.path;
@ -478,7 +507,8 @@
return f['id'] == that.form.categoryId;
});
if (category.length == 1) {
if (category.length > 0) {
that.categoryType = category[0].categoryType
if (category[0].categoryType == '2') {
that.returnIsShow = false;
}
@ -574,7 +604,7 @@
res.data.rows[0].contentType = res.data.rows[0].contentType.split(',');
}
if (res.data.rows[0].contentImg) {
if (res.data.rows[0].contentImg && 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;
@ -612,7 +642,20 @@
this.get(this.form.id);
}//else 如果即不指定栏目新增文章,又不是编辑文章就不渲染自定义模型
}
},
//复制文章id
copyString: function () {
var clipboard = new ClipboardJS('.copyBtn');
var self = this;
clipboard.on('success', function (e) {
self.$notify({
title: '提示',
message: '已成功复制到剪切板',
type: 'success'
});
clipboard.destroy();
});
},
},
created: function () {
this.contentCategoryIdOptionsGet();
@ -635,4 +678,10 @@
.el-scrollbar__bar.is-vertical{
width: 6px!important;
}
.header-info {
white-space: nowrap;
display:inline-block;
overflow: hidden;
text-overflow: ellipsis;
}
</style>

@ -444,6 +444,12 @@
}).then(function (res) {
if (res.result) {
that.contentCategoryIdOptions = res.data.rows;
}else {
that.$notify({
title: '失败',
message: res.msg,
type: 'warning'
});
}
that.list();

@ -83,7 +83,7 @@
type="date">
</el-date-picker>
<div class="ms-form-tip">
根据内容的发布时间来生成,例如:2021-01-01,则生成21年01月01号以后发布的文章,如果遇到内容没有生成可以调整时间
根据内容的更新时间来生成,例如:2021-01-01,则生成21年01月01号以后更新过的文章,如果遇到内容没有生成或者内容样式没有更新可以调整时间
</div>
</el-form-item>
</div>

Loading…
Cancel
Save