parent
34d84486ea
commit
ebf4e9ffbc
45 changed files with 3197 additions and 2682 deletions
@ -1,53 +1,56 @@ |
|||||||
<template> |
<template> |
||||||
<div class="wrap"> |
<div class="wrap"> |
||||||
<div class="modal"> |
<div class="modal"> |
||||||
<el-steps :space="200" :active="4" finish-status="success"> |
<el-steps :space="200" |
||||||
<el-step title="大赛信息填写"></el-step> |
:active="4" |
||||||
<el-step title="赛程与规则设置"></el-step> |
finish-status="success"> |
||||||
<el-step title="比赛内容设置"></el-step> |
<el-step title="大赛信息填写"></el-step> |
||||||
<el-step title="发布"></el-step> |
<el-step title="赛程与规则设置"></el-step> |
||||||
</el-steps> |
<el-step title="比赛内容设置"></el-step> |
||||||
<h1>大赛已发布!</h1> |
<el-step title="发布"></el-step> |
||||||
<div class="btns"> |
</el-steps> |
||||||
<el-button type="primary" @click="back">确定</el-button> |
<h1>大赛已发布!</h1> |
||||||
</div> |
<div class="btns"> |
||||||
|
<el-button type="primary" |
||||||
|
@click="back">确定</el-button> |
||||||
</div> |
</div> |
||||||
</div> |
</div> |
||||||
|
</div> |
||||||
</template> |
</template> |
||||||
|
|
||||||
<script> |
<script> |
||||||
export default { |
export default { |
||||||
data() { |
data () { |
||||||
return { |
return { |
||||||
|
|
||||||
}; |
}; |
||||||
}, |
}, |
||||||
mounted() { |
mounted () { |
||||||
|
|
||||||
}, |
}, |
||||||
methods: { |
methods: { |
||||||
back() { |
back () { |
||||||
this.$router.push(`/match?page=${this.$store.state.matchPage}`) |
this.$router.push(this.$store.state.referrer || '/match') |
||||||
} |
|
||||||
} |
} |
||||||
|
} |
||||||
}; |
}; |
||||||
</script> |
</script> |
||||||
|
|
||||||
<style scoped lang="scss"> |
<style scoped lang="scss"> |
||||||
.wrap { |
.wrap { |
||||||
height: calc(100vh - 300px); |
height: calc(100vh - 300px); |
||||||
background-color: #fefefe; |
background-color: #fefefe; |
||||||
} |
} |
||||||
.modal { |
.modal { |
||||||
width: 500px; |
width: 500px; |
||||||
padding-top: 150px; |
padding-top: 150px; |
||||||
margin: 0 auto ; |
margin: 0 auto; |
||||||
h1 { |
h1 { |
||||||
margin: 20px; |
margin: 20px; |
||||||
text-align: center; |
text-align: center; |
||||||
} |
} |
||||||
.btns { |
.btns { |
||||||
text-align: center; |
text-align: center; |
||||||
} |
} |
||||||
} |
} |
||||||
</style> |
</style> |
@ -0,0 +1,339 @@ |
|||||||
|
<template> |
||||||
|
<div class="page"> |
||||||
|
<div class="tool"> |
||||||
|
<div class="search-wrap"> |
||||||
|
<el-select v-model="field" |
||||||
|
@change="initData"> |
||||||
|
<el-option v-for="(item, i) in keywords" |
||||||
|
:key="i" |
||||||
|
:label="item.name" |
||||||
|
:value="item.id"> |
||||||
|
</el-option> |
||||||
|
</el-select> |
||||||
|
<el-input class="keyword" |
||||||
|
:placeholder="'请输入' + keywords.find(e => e.id === field).name" |
||||||
|
v-model.trim="keyword" |
||||||
|
clearable></el-input> |
||||||
|
</div> |
||||||
|
<div class="actions"> |
||||||
|
<el-button v-auth="'/parnerOperation:合伙人资讯管理:批量删除'" |
||||||
|
@click="batchDel">批量删除</el-button> |
||||||
|
<el-button v-auth="'/parnerOperation:合伙人资讯管理:新增文章'" |
||||||
|
type="primary" |
||||||
|
@click="add">新增文章</el-button> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<el-table :data="list" |
||||||
|
class="table" |
||||||
|
ref="table" |
||||||
|
header-align="center" |
||||||
|
@selection-change="handleSelectionChange" |
||||||
|
row-key="id" |
||||||
|
@sort-change="sortChange"> |
||||||
|
<el-table-column type="selection" |
||||||
|
width="55" |
||||||
|
align="center" |
||||||
|
:reserve-selection="true"></el-table-column> |
||||||
|
<el-table-column type="index" |
||||||
|
width="60" |
||||||
|
label="序号" |
||||||
|
align="center"></el-table-column> |
||||||
|
<el-table-column show-overflow-tooltip |
||||||
|
prop="title" |
||||||
|
label="标题" |
||||||
|
align="center" |
||||||
|
min-width="150"></el-table-column> |
||||||
|
<el-table-column prop="classificationName" |
||||||
|
label="所属分类" |
||||||
|
align="center" |
||||||
|
min-width="120" |
||||||
|
sortable="custom"></el-table-column> |
||||||
|
<el-table-column prop="founderName" |
||||||
|
label="录入人" |
||||||
|
align="center" |
||||||
|
min-width="80"></el-table-column> |
||||||
|
<el-table-column prop="editorName" |
||||||
|
label="修改人" |
||||||
|
align="center" |
||||||
|
min-width="80"></el-table-column> |
||||||
|
<el-table-column prop="updateTime" |
||||||
|
label="修改日期" |
||||||
|
align="center" |
||||||
|
min-width="150" |
||||||
|
sortable="custom"></el-table-column> |
||||||
|
<el-table-column prop="releaseTime" |
||||||
|
label="发布日期" |
||||||
|
align="center" |
||||||
|
min-width="100" |
||||||
|
sortable="custom"></el-table-column> |
||||||
|
<el-table-column prop="learnerNumber" |
||||||
|
label="总浏览" |
||||||
|
align="center" |
||||||
|
min-width="70"></el-table-column> |
||||||
|
<el-table-column prop="workNumber" |
||||||
|
label="状态" |
||||||
|
align="center" |
||||||
|
min-width="80"> |
||||||
|
<template slot-scope="scope"> |
||||||
|
{{ scope.row.isRelease ? '已发布' : '草稿' }} |
||||||
|
</template> |
||||||
|
</el-table-column> |
||||||
|
<el-table-column prop="sequence" |
||||||
|
label="置顶" |
||||||
|
align="center" |
||||||
|
min-width="80" |
||||||
|
sortable="custom"> |
||||||
|
<template slot-scope="scope"> |
||||||
|
<i v-if="scope.row.isRelease" |
||||||
|
:class="['squ-icon', scope.row.isTop ? 'el-icon-check' : 'el-icon-close']" |
||||||
|
@click="sticky(scope.row)"></i> |
||||||
|
</template> |
||||||
|
</el-table-column> |
||||||
|
<el-table-column label="操作" |
||||||
|
align="center" |
||||||
|
width="210"> |
||||||
|
<template slot-scope="scope"> |
||||||
|
<el-button v-auth="'/parnerOperation:合伙人资讯管理:编辑'" |
||||||
|
type="text" |
||||||
|
@click="edit(scope.row)">编辑</el-button> |
||||||
|
<el-button v-auth="'/parnerOperation:合伙人资讯管理:删除'" |
||||||
|
type="text" |
||||||
|
@click="handleDelete(scope.row)">删除</el-button> |
||||||
|
<el-switch v-auth="'/parnerOperation:合伙人资讯管理:禁用'" |
||||||
|
v-if="scope.row.isRelease" |
||||||
|
class="m-l-10" |
||||||
|
v-model="scope.row.isDisable" |
||||||
|
:active-value="0" |
||||||
|
:inactive-value="1" |
||||||
|
@change="switchOff($event, scope.row, scope.$index)"> |
||||||
|
</el-switch> |
||||||
|
</template> |
||||||
|
</el-table-column> |
||||||
|
</el-table> |
||||||
|
<div class="pagination"> |
||||||
|
<el-pagination background |
||||||
|
@current-change="currentChange" |
||||||
|
:current-page="page" |
||||||
|
layout="total, prev, pager, next" |
||||||
|
:total="total"></el-pagination> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</template> |
||||||
|
|
||||||
|
<script> |
||||||
|
import util from '@/libs/util' |
||||||
|
export default { |
||||||
|
data () { |
||||||
|
return { |
||||||
|
field: this.$route.query.field || 'title', |
||||||
|
keywords: [ |
||||||
|
{ |
||||||
|
id: 'title', |
||||||
|
name: '标题' |
||||||
|
}, |
||||||
|
{ |
||||||
|
id: 'founder', |
||||||
|
name: '录入人' |
||||||
|
}, |
||||||
|
{ |
||||||
|
id: 'editor', |
||||||
|
name: '修改人' |
||||||
|
} |
||||||
|
], |
||||||
|
keyword: this.$route.query.keyword || '', |
||||||
|
list: [], |
||||||
|
page: +this.$route.query.page || 1, |
||||||
|
pageSize: 10, |
||||||
|
total: 0, |
||||||
|
topSort: '', |
||||||
|
classificationNameSort: '', |
||||||
|
releaseDateSort: '', |
||||||
|
editTimeSort: '', |
||||||
|
multipleSelection: [], |
||||||
|
}; |
||||||
|
}, |
||||||
|
watch: { |
||||||
|
keyword: function (val) { |
||||||
|
clearTimeout(this.searchTimer) |
||||||
|
this.searchTimer = setTimeout(() => { |
||||||
|
this.initData() |
||||||
|
}, 500) |
||||||
|
} |
||||||
|
}, |
||||||
|
mounted () { |
||||||
|
const { query } = this.$route |
||||||
|
if (query.page) { |
||||||
|
this.$router.push('/parnerOperation?type=info').catch(() => { }) |
||||||
|
} |
||||||
|
|
||||||
|
this.getData() |
||||||
|
}, |
||||||
|
methods: { |
||||||
|
// 文章列表 |
||||||
|
getData () { |
||||||
|
const { keyword } = this |
||||||
|
this.$post(this.api.partnerOperatingList, { |
||||||
|
pageNum: this.page, |
||||||
|
pageSize: this.pageSize, |
||||||
|
querySource: 3, //查询来源(3.中台 4.合伙人平台) |
||||||
|
topSort: this.topSort, |
||||||
|
classificationNameSort: this.classificationNameSort, |
||||||
|
editTimeSort: this.editTimeSort, |
||||||
|
releaseDateSort: this.releaseDateSort, |
||||||
|
typeId: 2, // 类型(1.学习2.资讯) |
||||||
|
title: this.field === 'title' ? keyword : '', |
||||||
|
founderName: this.field === 'founder' ? keyword : '', |
||||||
|
editorName: this.field === 'editor' ? keyword : '' |
||||||
|
}).then(({ page, total }) => { |
||||||
|
page.forEach(e => { |
||||||
|
e.editing = false |
||||||
|
}) |
||||||
|
this.list = page |
||||||
|
this.total = total |
||||||
|
}).catch(err => { }) |
||||||
|
}, |
||||||
|
currentChange (val) { |
||||||
|
this.page = val |
||||||
|
this.getData() |
||||||
|
}, |
||||||
|
handleSelectionChange (val) { |
||||||
|
this.multipleSelection = val |
||||||
|
}, |
||||||
|
initData () { |
||||||
|
this.$refs.table.clearSelection() |
||||||
|
this.page = 1 |
||||||
|
this.getData() |
||||||
|
}, |
||||||
|
// 批量删除 |
||||||
|
batchDel () { |
||||||
|
const list = this.multipleSelection |
||||||
|
if (list.length) { |
||||||
|
this.$confirm('确定要删除吗?', '提示', { |
||||||
|
type: 'warning' |
||||||
|
}).then(() => { |
||||||
|
const data = [] |
||||||
|
list.map(e => { |
||||||
|
data.push('ids=' + e.id) |
||||||
|
}) |
||||||
|
this.$post(`${this.api.batchDeletionParnerArticle}?${data.join('&')}`).then(res => { |
||||||
|
this.$refs.table.clearSelection() |
||||||
|
util.successMsg("删除成功") |
||||||
|
this.getData() |
||||||
|
}).catch(res => { }) |
||||||
|
}).catch(() => { }) |
||||||
|
} else { |
||||||
|
util.errorMsg('请先选择数据 !') |
||||||
|
} |
||||||
|
}, |
||||||
|
// 删除 |
||||||
|
handleDelete (row) { |
||||||
|
this.$confirm('确定要删除吗?', '提示', { |
||||||
|
type: 'warning' |
||||||
|
}).then(() => { |
||||||
|
this.$post(`${this.api.batchDeletionParnerArticle}?ids=${row.id}`).then(res => { |
||||||
|
util.successMsg('删除成功') |
||||||
|
this.getData() |
||||||
|
}).catch(res => { }) |
||||||
|
}).catch(() => { }) |
||||||
|
}, |
||||||
|
// 禁用启用 |
||||||
|
switchOff (val, row) { |
||||||
|
this.$post(`${this.api.articleEnableOrDisable}?id=${row.id}&isDisable=${val}`).then(res => { }).catch((res) => { }) |
||||||
|
}, |
||||||
|
// 排序回调 |
||||||
|
sortChange (column) { |
||||||
|
const { order } = column |
||||||
|
// 三个排序只能同时传1个,所以点了一个排序的时候要清除掉其余两个 |
||||||
|
if (column.prop === 'classificationName') { |
||||||
|
this.classificationNameSort = order ? order === 'ascending' ? 'asc' : 'desc' : '' |
||||||
|
if (order) { |
||||||
|
this.editTimeSort = '' |
||||||
|
this.releaseDateSort = '' |
||||||
|
this.topSort = '' |
||||||
|
} |
||||||
|
} |
||||||
|
if (column.prop === 'updateTime') { |
||||||
|
this.editTimeSort = order ? order === 'ascending' ? 'asc' : 'desc' : '' |
||||||
|
if (order) { |
||||||
|
this.classificationNameSort = '' |
||||||
|
this.releaseDateSort = '' |
||||||
|
this.topSort = '' |
||||||
|
} |
||||||
|
} |
||||||
|
if (column.prop === 'releaseTime') { |
||||||
|
this.releaseDateSort = order ? order === 'ascending' ? 'asc' : 'desc' : '' |
||||||
|
if (order) { |
||||||
|
this.editTimeSort = '' |
||||||
|
this.classificationNameSort = '' |
||||||
|
this.topSort = '' |
||||||
|
} |
||||||
|
} |
||||||
|
if (column.prop === 'sequence') { |
||||||
|
this.topSort = order ? order === 'ascending' ? 'asc' : 'desc' : '' |
||||||
|
if (order) { |
||||||
|
this.editTimeSort = '' |
||||||
|
this.releaseDateSort = '' |
||||||
|
this.classificationNameSort = '' |
||||||
|
} |
||||||
|
} |
||||||
|
this.getData() |
||||||
|
}, |
||||||
|
// 排序提交 |
||||||
|
submitSequence (row) { |
||||||
|
if (!row.sequence) return Util.errorMsg('请输入排序') |
||||||
|
this.$post(`${this.api.modifiedSort}?articleId=${row.id}&sequenceNumber=${row.sequence}`).then(res => { |
||||||
|
this.initData() |
||||||
|
}).catch(res => { }) |
||||||
|
}, |
||||||
|
// 编辑排序 |
||||||
|
editSequence (row) { |
||||||
|
this.list.forEach(e => { |
||||||
|
e.editing = false |
||||||
|
}) |
||||||
|
row.editing = true |
||||||
|
}, |
||||||
|
// 置顶 |
||||||
|
sticky (row) { |
||||||
|
this.$post(`${this.api.articleTopOperation}?articleId=${row.id}&isTop=${row.isTop ? 0 : 1}`).then(res => { |
||||||
|
this.initData() |
||||||
|
}).catch(res => { }) |
||||||
|
}, |
||||||
|
// 缓存当前页面和参数,详情页返回到列表的时候直接取该url |
||||||
|
setReferrer () { |
||||||
|
this.$store.commit('setReferrer', `${this.$route.fullPath}&keyword=${this.keyword}&field=${this.field}&page=${this.page}`) |
||||||
|
}, |
||||||
|
// 新增 |
||||||
|
add () { |
||||||
|
this.setReferrer() |
||||||
|
this.$router.push(`/learnMg?type=2`) |
||||||
|
}, |
||||||
|
// 编辑 |
||||||
|
edit (row) { |
||||||
|
this.setReferrer() |
||||||
|
this.$router.push(`/learnMg?id=${row.id}&type=2`) |
||||||
|
}, |
||||||
|
} |
||||||
|
}; |
||||||
|
</script> |
||||||
|
|
||||||
|
<style lang="scss" scoped> |
||||||
|
.m-l-10 { |
||||||
|
margin-left: 10px; |
||||||
|
} |
||||||
|
.squ-icon { |
||||||
|
font-size: 16px; |
||||||
|
font-weight: 600; |
||||||
|
cursor: pointer; |
||||||
|
color: #f70000; |
||||||
|
&.el-icon-check { |
||||||
|
color: #05991e; |
||||||
|
} |
||||||
|
} |
||||||
|
/deep/.squ-input { |
||||||
|
width: auto; |
||||||
|
.el-input__inner { |
||||||
|
width: 60px; |
||||||
|
padding: 0 10px; |
||||||
|
} |
||||||
|
} |
||||||
|
</style> |
@ -0,0 +1,339 @@ |
|||||||
|
<template> |
||||||
|
<div class="page"> |
||||||
|
<div class="tool"> |
||||||
|
<div class="search-wrap"> |
||||||
|
<el-select v-model="field" |
||||||
|
@change="initData"> |
||||||
|
<el-option v-for="(item, i) in keywords" |
||||||
|
:key="i" |
||||||
|
:label="item.name" |
||||||
|
:value="item.id"> |
||||||
|
</el-option> |
||||||
|
</el-select> |
||||||
|
<el-input class="keyword" |
||||||
|
:placeholder="'请输入' + keywords.find(e => e.id === field).name" |
||||||
|
v-model.trim="keyword" |
||||||
|
clearable></el-input> |
||||||
|
</div> |
||||||
|
<div class="actions"> |
||||||
|
<el-button v-auth="'/parnerOperation:合伙人学习管理:批量删除'" |
||||||
|
@click="batchDel">批量删除</el-button> |
||||||
|
<el-button v-auth="'/parnerOperation:合伙人学习管理:新增文章'" |
||||||
|
type="primary" |
||||||
|
@click="add">新增文章</el-button> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<el-table :data="list" |
||||||
|
class="table" |
||||||
|
ref="table" |
||||||
|
header-align="center" |
||||||
|
@selection-change="handleSelectionChange" |
||||||
|
row-key="id" |
||||||
|
@sort-change="sortChange"> |
||||||
|
<el-table-column type="selection" |
||||||
|
width="55" |
||||||
|
align="center" |
||||||
|
:reserve-selection="true"></el-table-column> |
||||||
|
<el-table-column type="index" |
||||||
|
width="60" |
||||||
|
label="序号" |
||||||
|
align="center"></el-table-column> |
||||||
|
<el-table-column show-overflow-tooltip |
||||||
|
prop="title" |
||||||
|
label="标题" |
||||||
|
align="center" |
||||||
|
min-width="150"></el-table-column> |
||||||
|
<el-table-column prop="classificationName" |
||||||
|
label="所属分类" |
||||||
|
align="center" |
||||||
|
min-width="120" |
||||||
|
sortable="custom"></el-table-column> |
||||||
|
<el-table-column prop="founderName" |
||||||
|
label="录入人" |
||||||
|
align="center" |
||||||
|
min-width="80"></el-table-column> |
||||||
|
<el-table-column prop="editorName" |
||||||
|
label="修改人" |
||||||
|
align="center" |
||||||
|
min-width="80"></el-table-column> |
||||||
|
<el-table-column prop="updateTime" |
||||||
|
label="修改日期" |
||||||
|
align="center" |
||||||
|
min-width="150" |
||||||
|
sortable="custom"></el-table-column> |
||||||
|
<el-table-column prop="releaseTime" |
||||||
|
label="发布日期" |
||||||
|
align="center" |
||||||
|
min-width="100" |
||||||
|
sortable="custom"></el-table-column> |
||||||
|
<el-table-column prop="learnerNumber" |
||||||
|
label="已学习人数" |
||||||
|
align="center" |
||||||
|
min-width="70"></el-table-column> |
||||||
|
<el-table-column prop="workNumber" |
||||||
|
label="状态" |
||||||
|
align="center" |
||||||
|
min-width="80"> |
||||||
|
<template slot-scope="scope"> |
||||||
|
{{ scope.row.isRelease ? '已发布' : '草稿' }} |
||||||
|
</template> |
||||||
|
</el-table-column> |
||||||
|
<el-table-column prop="sequence" |
||||||
|
label="置顶" |
||||||
|
align="center" |
||||||
|
min-width="80" |
||||||
|
sortable="custom"> |
||||||
|
<template slot-scope="scope"> |
||||||
|
<i v-if="scope.row.isRelease" |
||||||
|
:class="['squ-icon', scope.row.isTop ? 'el-icon-check' : 'el-icon-close']" |
||||||
|
@click="sticky(scope.row)"></i> |
||||||
|
</template> |
||||||
|
</el-table-column> |
||||||
|
<el-table-column label="操作" |
||||||
|
align="center" |
||||||
|
width="210"> |
||||||
|
<template slot-scope="scope"> |
||||||
|
<el-button v-auth="'/parnerOperation:合伙人学习管理:编辑'" |
||||||
|
type="text" |
||||||
|
@click="edit(scope.row)">编辑</el-button> |
||||||
|
<el-button v-auth="'/parnerOperation:合伙人学习管理:删除'" |
||||||
|
type="text" |
||||||
|
@click="handleDelete(scope.row)">删除</el-button> |
||||||
|
<el-switch v-auth="'/parnerOperation:合伙人学习管理:禁用'" |
||||||
|
v-if="scope.row.isRelease" |
||||||
|
class="m-l-10" |
||||||
|
v-model="scope.row.isDisable" |
||||||
|
:active-value="0" |
||||||
|
:inactive-value="1" |
||||||
|
@change="switchOff($event, scope.row, scope.$index)"> |
||||||
|
</el-switch> |
||||||
|
</template> |
||||||
|
</el-table-column> |
||||||
|
</el-table> |
||||||
|
<div class="pagination"> |
||||||
|
<el-pagination background |
||||||
|
@current-change="currentChange" |
||||||
|
:current-page="page" |
||||||
|
layout="total, prev, pager, next" |
||||||
|
:total="total"></el-pagination> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</template> |
||||||
|
|
||||||
|
<script> |
||||||
|
import util from '@/libs/util' |
||||||
|
export default { |
||||||
|
data () { |
||||||
|
return { |
||||||
|
field: this.$route.query.field || 'title', |
||||||
|
keywords: [ |
||||||
|
{ |
||||||
|
id: 'title', |
||||||
|
name: '标题' |
||||||
|
}, |
||||||
|
{ |
||||||
|
id: 'founder', |
||||||
|
name: '录入人' |
||||||
|
}, |
||||||
|
{ |
||||||
|
id: 'editor', |
||||||
|
name: '修改人' |
||||||
|
} |
||||||
|
], |
||||||
|
keyword: this.$route.query.keyword || '', |
||||||
|
list: [], |
||||||
|
page: +this.$route.query.page || 1, |
||||||
|
pageSize: 10, |
||||||
|
total: 0, |
||||||
|
topSort: '', |
||||||
|
classificationNameSort: '', |
||||||
|
releaseDateSort: '', |
||||||
|
editTimeSort: '', |
||||||
|
multipleSelection: [], |
||||||
|
}; |
||||||
|
}, |
||||||
|
watch: { |
||||||
|
keyword: function (val) { |
||||||
|
clearTimeout(this.searchTimer) |
||||||
|
this.searchTimer = setTimeout(() => { |
||||||
|
this.initData() |
||||||
|
}, 500) |
||||||
|
} |
||||||
|
}, |
||||||
|
mounted () { |
||||||
|
const { query } = this.$route |
||||||
|
if (query.page) { |
||||||
|
this.$router.push('/parnerOperation?type=learn').catch(() => { }) |
||||||
|
} |
||||||
|
|
||||||
|
this.getData() |
||||||
|
}, |
||||||
|
methods: { |
||||||
|
// 文章列表 |
||||||
|
getData () { |
||||||
|
const { keyword } = this |
||||||
|
this.$post(this.api.partnerOperatingList, { |
||||||
|
pageNum: this.page, |
||||||
|
pageSize: this.pageSize, |
||||||
|
querySource: 3, //查询来源(3.中台 4.合伙人平台) |
||||||
|
topSort: this.topSort, |
||||||
|
classificationNameSort: this.classificationNameSort, |
||||||
|
editTimeSort: this.editTimeSort, |
||||||
|
releaseDateSort: this.releaseDateSort, |
||||||
|
typeId: 1, // 类型(1.学习2.资讯) |
||||||
|
title: this.field === 'title' ? keyword : '', |
||||||
|
founderName: this.field === 'founder' ? keyword : '', |
||||||
|
editorName: this.field === 'editor' ? keyword : '' |
||||||
|
}).then(({ page, total }) => { |
||||||
|
page.forEach(e => { |
||||||
|
e.editing = false |
||||||
|
}) |
||||||
|
this.list = page |
||||||
|
this.total = total |
||||||
|
}).catch(err => { }) |
||||||
|
}, |
||||||
|
currentChange (val) { |
||||||
|
this.page = val |
||||||
|
this.getData() |
||||||
|
}, |
||||||
|
handleSelectionChange (val) { |
||||||
|
this.multipleSelection = val |
||||||
|
}, |
||||||
|
initData () { |
||||||
|
this.$refs.table.clearSelection() |
||||||
|
this.page = 1 |
||||||
|
this.getData() |
||||||
|
}, |
||||||
|
// 批量删除 |
||||||
|
batchDel () { |
||||||
|
const list = this.multipleSelection |
||||||
|
if (list.length) { |
||||||
|
this.$confirm('确定要删除吗?', '提示', { |
||||||
|
type: 'warning' |
||||||
|
}).then(() => { |
||||||
|
const data = [] |
||||||
|
list.map(e => { |
||||||
|
data.push('ids=' + e.id) |
||||||
|
}) |
||||||
|
this.$post(`${this.api.batchDeletionParnerArticle}?${data.join('&')}`).then(res => { |
||||||
|
this.$refs.table.clearSelection() |
||||||
|
util.successMsg("删除成功") |
||||||
|
this.getData() |
||||||
|
}).catch(res => { }) |
||||||
|
}).catch(() => { }) |
||||||
|
} else { |
||||||
|
util.errorMsg('请先选择数据 !') |
||||||
|
} |
||||||
|
}, |
||||||
|
// 删除 |
||||||
|
handleDelete (row) { |
||||||
|
this.$confirm('确定要删除吗?', '提示', { |
||||||
|
type: 'warning' |
||||||
|
}).then(() => { |
||||||
|
this.$post(`${this.api.batchDeletionParnerArticle}?ids=${row.id}`).then(res => { |
||||||
|
util.successMsg('删除成功') |
||||||
|
this.getData() |
||||||
|
}).catch(res => { }) |
||||||
|
}).catch(() => { }) |
||||||
|
}, |
||||||
|
// 禁用启用 |
||||||
|
switchOff (val, row) { |
||||||
|
this.$post(`${this.api.articleEnableOrDisable}?id=${row.id}&isDisable=${val}`).then(res => { }).catch((res) => { }) |
||||||
|
}, |
||||||
|
// 排序回调 |
||||||
|
sortChange (column) { |
||||||
|
const { order } = column |
||||||
|
// 三个排序只能同时传1个,所以点了一个排序的时候要清除掉其余两个 |
||||||
|
if (column.prop === 'classificationName') { |
||||||
|
this.classificationNameSort = order ? order === 'ascending' ? 'asc' : 'desc' : '' |
||||||
|
if (order) { |
||||||
|
this.editTimeSort = '' |
||||||
|
this.releaseDateSort = '' |
||||||
|
this.topSort = '' |
||||||
|
} |
||||||
|
} |
||||||
|
if (column.prop === 'updateTime') { |
||||||
|
this.editTimeSort = order ? order === 'ascending' ? 'asc' : 'desc' : '' |
||||||
|
if (order) { |
||||||
|
this.classificationNameSort = '' |
||||||
|
this.releaseDateSort = '' |
||||||
|
this.topSort = '' |
||||||
|
} |
||||||
|
} |
||||||
|
if (column.prop === 'releaseTime') { |
||||||
|
this.releaseDateSort = order ? order === 'ascending' ? 'asc' : 'desc' : '' |
||||||
|
if (order) { |
||||||
|
this.editTimeSort = '' |
||||||
|
this.classificationNameSort = '' |
||||||
|
this.topSort = '' |
||||||
|
} |
||||||
|
} |
||||||
|
if (column.prop === 'sequence') { |
||||||
|
this.topSort = order ? order === 'ascending' ? 'asc' : 'desc' : '' |
||||||
|
if (order) { |
||||||
|
this.editTimeSort = '' |
||||||
|
this.releaseDateSort = '' |
||||||
|
this.classificationNameSort = '' |
||||||
|
} |
||||||
|
} |
||||||
|
this.getData() |
||||||
|
}, |
||||||
|
// 排序提交 |
||||||
|
submitSequence (row) { |
||||||
|
if (!row.sequence) return Util.errorMsg('请输入排序') |
||||||
|
this.$post(`${this.api.modifiedSort}?articleId=${row.id}&sequenceNumber=${row.sequence}`).then(res => { |
||||||
|
this.initData() |
||||||
|
}).catch(res => { }) |
||||||
|
}, |
||||||
|
// 编辑排序 |
||||||
|
editSequence (row) { |
||||||
|
this.list.forEach(e => { |
||||||
|
e.editing = false |
||||||
|
}) |
||||||
|
row.editing = true |
||||||
|
}, |
||||||
|
// 置顶 |
||||||
|
sticky (row) { |
||||||
|
this.$post(`${this.api.articleTopOperation}?articleId=${row.id}&isTop=${row.isTop ? 0 : 1}`).then(res => { |
||||||
|
this.initData() |
||||||
|
}).catch(res => { }) |
||||||
|
}, |
||||||
|
// 缓存当前页面和参数,详情页返回到列表的时候直接取该url |
||||||
|
setReferrer () { |
||||||
|
this.$store.commit('setReferrer', `${this.$route.fullPath}&keyword=${this.keyword}&field=${this.field}&page=${this.page}`) |
||||||
|
}, |
||||||
|
// 新增 |
||||||
|
add () { |
||||||
|
this.setReferrer() |
||||||
|
this.$router.push(`/learnMg?type=1`) |
||||||
|
}, |
||||||
|
// 编辑 |
||||||
|
edit (row) { |
||||||
|
this.setReferrer() |
||||||
|
this.$router.push(`/learnMg?id=${row.id}&type=1`) |
||||||
|
}, |
||||||
|
} |
||||||
|
}; |
||||||
|
</script> |
||||||
|
|
||||||
|
<style lang="scss" scoped> |
||||||
|
.m-l-10 { |
||||||
|
margin-left: 10px; |
||||||
|
} |
||||||
|
.squ-icon { |
||||||
|
font-size: 16px; |
||||||
|
font-weight: 600; |
||||||
|
cursor: pointer; |
||||||
|
color: #f70000; |
||||||
|
&.el-icon-check { |
||||||
|
color: #05991e; |
||||||
|
} |
||||||
|
} |
||||||
|
/deep/.squ-input { |
||||||
|
width: auto; |
||||||
|
.el-input__inner { |
||||||
|
width: 60px; |
||||||
|
padding: 0 10px; |
||||||
|
} |
||||||
|
} |
||||||
|
</style> |
@ -1,221 +0,0 @@ |
|||||||
<template> |
|
||||||
<div class="page"> |
|
||||||
<div class="tool"> |
|
||||||
<div class="search-wrap"> |
|
||||||
<el-select v-model="field" @change="initData"> |
|
||||||
<el-option |
|
||||||
v-for="(item, i) in keywords" |
|
||||||
:key="i" |
|
||||||
:label="item.name" |
|
||||||
:value="item.id"> |
|
||||||
</el-option> |
|
||||||
</el-select> |
|
||||||
<el-input class="keyword" :placeholder="'请输入' + keywords.find(e => e.id === field).name" v-model.trim="keyword" clearable></el-input> |
|
||||||
</div> |
|
||||||
<div class="actions"> |
|
||||||
<el-button v-auth="'/parnerOperation:方案管理:批量删除'" @click="batchDel">批量删除</el-button> |
|
||||||
<el-button v-auth="'/parnerOperation:方案管理:新增文章'" type="primary" @click="add" >新增文章</el-button> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
<el-table :data="list" class="table" ref="table" header-align="center" @selection-change="handleSelectionChange" row-key="id" @sort-change="sortChange"> |
|
||||||
<el-table-column type="selection" width="55" align="center" :reserve-selection="true"></el-table-column> |
|
||||||
<el-table-column type="index" width="60" label="序号" align="center"></el-table-column> |
|
||||||
<el-table-column show-overflow-tooltip prop="title" label="标题" align="center" min-width="150"></el-table-column> |
|
||||||
<el-table-column prop="classificationName" label="所属分类" align="center" min-width="120" sortable="custom"></el-table-column> |
|
||||||
<el-table-column prop="founderName" label="录入人" align="center" min-width="80"></el-table-column> |
|
||||||
<el-table-column prop="editorName" label="修改人" align="center" min-width="80"></el-table-column> |
|
||||||
<el-table-column prop="updateTime" label="修改日期" align="center" min-width="150" sortable="custom"></el-table-column> |
|
||||||
<el-table-column prop="createTime" label="发布日期" align="center" min-width="100" sortable="custom"></el-table-column> |
|
||||||
<el-table-column prop="workNumber" label="状态" align="center" min-width="80"> |
|
||||||
<template slot-scope="scope"> |
|
||||||
{{ scope.row.isRelease ? '已发布' : '草稿' }} |
|
||||||
</template> |
|
||||||
</el-table-column> |
|
||||||
<el-table-column label="操作" align="center" width="170"> |
|
||||||
<template slot-scope="scope"> |
|
||||||
<el-button v-auth="'/parnerOperation:方案管理:编辑'" type="text" @click="edit(scope.row)">编辑</el-button> |
|
||||||
<el-button v-auth="'/parnerOperation:方案管理:删除'" type="text" @click="handleDelete(scope.row)">删除</el-button> |
|
||||||
<el-switch |
|
||||||
v-auth="'/parnerOperation:方案管理:禁用'" |
|
||||||
v-if="scope.row.isRelease" |
|
||||||
class="m-l-10" |
|
||||||
v-model="scope.row.isDisable" |
|
||||||
:active-value="0" |
|
||||||
:inactive-value="1" |
|
||||||
@change="switchOff($event, scope.row, scope.$index)"> |
|
||||||
</el-switch> |
|
||||||
</template> |
|
||||||
</el-table-column> |
|
||||||
</el-table> |
|
||||||
<div class="pagination"> |
|
||||||
<el-pagination background @current-change="currentChange" :current-page="page" layout="total, prev, pager, next" :total="total"></el-pagination> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
</template> |
|
||||||
|
|
||||||
<script> |
|
||||||
import util from '@/libs/util' |
|
||||||
export default { |
|
||||||
data() { |
|
||||||
return { |
|
||||||
field: 'title', |
|
||||||
keywords: [ |
|
||||||
{ |
|
||||||
id: 'title', |
|
||||||
name: '标题' |
|
||||||
}, |
|
||||||
{ |
|
||||||
id: 'founder', |
|
||||||
name: '录入人' |
|
||||||
}, |
|
||||||
{ |
|
||||||
id: 'editor', |
|
||||||
name: '修改人' |
|
||||||
} |
|
||||||
], |
|
||||||
keyword: '', |
|
||||||
list: [], |
|
||||||
page: 1, |
|
||||||
pageSize: 10, |
|
||||||
total: 0, |
|
||||||
modifiedTimeSort: '', |
|
||||||
releaseDateSort: 'desc', |
|
||||||
classificationNameSort: '', |
|
||||||
editTimeSort: '', |
|
||||||
multipleSelection: [], |
|
||||||
}; |
|
||||||
}, |
|
||||||
watch: { |
|
||||||
keyword: function(val) { |
|
||||||
clearTimeout(this.searchTimer) |
|
||||||
this.searchTimer = setTimeout(() => { |
|
||||||
this.initData() |
|
||||||
}, 500) |
|
||||||
} |
|
||||||
}, |
|
||||||
mounted() { |
|
||||||
this.getData() |
|
||||||
}, |
|
||||||
methods: { |
|
||||||
// 文章列表 |
|
||||||
getData() { |
|
||||||
const { keyword } = this |
|
||||||
const data = { |
|
||||||
pageNum: this.page, |
|
||||||
pageSize: this.pageSize, |
|
||||||
querySource: 3, //查询来源(3.中台 4.合伙人平台) |
|
||||||
classificationNameSort: this.classificationNameSort, |
|
||||||
editTimeSort: this.editTimeSort, |
|
||||||
createTimeSort: this.releaseDateSort, |
|
||||||
title: this.field === 'title' ? keyword : '', |
|
||||||
founderName: this.field === 'founder' ? keyword : '', |
|
||||||
editorName: this.field === 'editor' ? keyword : '' |
|
||||||
} |
|
||||||
this.$post(this.api.schemeList, data).then(({ data }) => { |
|
||||||
this.list = data.records |
|
||||||
this.total = +data.total |
|
||||||
}).catch(err => {}) |
|
||||||
}, |
|
||||||
currentChange(val) { |
|
||||||
this.page = val |
|
||||||
this.getData() |
|
||||||
}, |
|
||||||
handleSelectionChange(val) { |
|
||||||
this.multipleSelection = val |
|
||||||
}, |
|
||||||
initData() { |
|
||||||
this.$refs.table.clearSelection() |
|
||||||
this.page = 1 |
|
||||||
this.getData() |
|
||||||
}, |
|
||||||
// 批量删除 |
|
||||||
batchDel() { |
|
||||||
const list = this.multipleSelection |
|
||||||
if (list.length) { |
|
||||||
this.$confirm('确定要删除吗?', '提示', { |
|
||||||
type: 'warning' |
|
||||||
}).then(() => { |
|
||||||
const data = [] |
|
||||||
list.map(e => { |
|
||||||
data.push('ids=' + e.id) |
|
||||||
}) |
|
||||||
this.$post(`${this.api.batchDeletionScheme}?${data.join('&')}`).then(res => { |
|
||||||
this.$refs.table.clearSelection() |
|
||||||
util.successMsg("删除成功") |
|
||||||
this.getData() |
|
||||||
}).catch(res => {}) |
|
||||||
}).catch(() => {}) |
|
||||||
} else { |
|
||||||
util.errorMsg('请先选择数据 !') |
|
||||||
} |
|
||||||
}, |
|
||||||
// 删除 |
|
||||||
handleDelete(row) { |
|
||||||
this.$confirm('确定要删除吗?', '提示', { |
|
||||||
type: 'warning' |
|
||||||
}).then(() => { |
|
||||||
this.$post(`${this.api.batchDeletionScheme}?ids=${row.id}`).then(res => { |
|
||||||
util.successMsg('删除成功') |
|
||||||
this.getData() |
|
||||||
}).catch(res => {}) |
|
||||||
}).catch(() => {}) |
|
||||||
}, |
|
||||||
// 禁用启用 |
|
||||||
switchOff(val, row) { |
|
||||||
this.$post(`${this.api.enableOrDisableScheme}?id=${row.id}&isDisable=${val}`).then(res => {}).catch((res) => {}) |
|
||||||
}, |
|
||||||
// 新增 |
|
||||||
add() { |
|
||||||
this.$router.push(`/schemeSet`) |
|
||||||
}, |
|
||||||
// 排序回调 |
|
||||||
sortChange(column) { |
|
||||||
const { order } = column |
|
||||||
// 三个排序只能同时传1个,所以点了一个排序的时候要清除掉其余两个 |
|
||||||
if (column.prop === 'classificationName') { |
|
||||||
this.classificationNameSort = order ? order === 'ascending' ? 'asc' : 'desc' : '' |
|
||||||
if (order) { |
|
||||||
this.editTimeSort = '' |
|
||||||
this.releaseDateSort = '' |
|
||||||
this.sequenceSort = '' |
|
||||||
} |
|
||||||
} |
|
||||||
if (column.prop === 'updateTime') { |
|
||||||
this.editTimeSort = order ? order === 'ascending' ? 'asc' : 'desc' : '' |
|
||||||
if (order) { |
|
||||||
this.classificationNameSort = '' |
|
||||||
this.releaseDateSort = '' |
|
||||||
this.sequenceSort = '' |
|
||||||
} |
|
||||||
} |
|
||||||
if (column.prop === 'createTime') { |
|
||||||
this.releaseDateSort = order ? order === 'ascending' ? 'asc' : 'desc' : '' |
|
||||||
if (order) { |
|
||||||
this.editTimeSort = '' |
|
||||||
this.classificationNameSort = '' |
|
||||||
this.sequenceSort = '' |
|
||||||
} |
|
||||||
} |
|
||||||
if (column.prop === 'sequence') { |
|
||||||
this.sequenceSort = order ? order === 'ascending' ? 'asc' : 'desc' : '' |
|
||||||
if (order) { |
|
||||||
this.editTimeSort = '' |
|
||||||
this.releaseDateSort = '' |
|
||||||
this.classificationNameSort = '' |
|
||||||
} |
|
||||||
} |
|
||||||
this.getData() |
|
||||||
}, |
|
||||||
// 编辑 |
|
||||||
edit(row) { |
|
||||||
this.$router.push(`/schemeSet?id=${row.id}`) |
|
||||||
}, |
|
||||||
} |
|
||||||
}; |
|
||||||
</script> |
|
||||||
|
|
||||||
<style lang="scss" scoped> |
|
||||||
.m-l-10 { |
|
||||||
margin-left: 10px; |
|
||||||
} |
|
||||||
</style> |
|
@ -1,269 +0,0 @@ |
|||||||
<template> |
|
||||||
<div class="page"> |
|
||||||
<div class="tool"> |
|
||||||
<div class="search-wrap"> |
|
||||||
<el-select v-model="field" @change="initData"> |
|
||||||
<el-option |
|
||||||
v-for="(item, i) in keywords" |
|
||||||
:key="i" |
|
||||||
:label="item.name" |
|
||||||
:value="item.id"> |
|
||||||
</el-option> |
|
||||||
</el-select> |
|
||||||
<el-input class="keyword" :placeholder="'请输入' + keywords.find(e => e.id === field).name" v-model.trim="keyword" clearable></el-input> |
|
||||||
</div> |
|
||||||
<div class="actions"> |
|
||||||
<el-button v-auth="'/parnerOperation:合伙人资讯管理:批量删除'" @click="batchDel">批量删除</el-button> |
|
||||||
<el-button v-auth="'/parnerOperation:合伙人资讯管理:新增文章'" type="primary" @click="add" >新增文章</el-button> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
<el-table :data="list" class="table" ref="table" header-align="center" @selection-change="handleSelectionChange" row-key="id" @sort-change="sortChange"> |
|
||||||
<el-table-column type="selection" width="55" align="center" :reserve-selection="true"></el-table-column> |
|
||||||
<el-table-column type="index" width="60" label="序号" align="center"></el-table-column> |
|
||||||
<el-table-column show-overflow-tooltip prop="title" label="标题" align="center" min-width="150"></el-table-column> |
|
||||||
<el-table-column prop="classificationName" label="所属分类" align="center" min-width="120" sortable="custom"></el-table-column> |
|
||||||
<el-table-column prop="founderName" label="录入人" align="center" min-width="80"></el-table-column> |
|
||||||
<el-table-column prop="editorName" label="修改人" align="center" min-width="80"></el-table-column> |
|
||||||
<el-table-column prop="updateTime" label="修改日期" align="center" min-width="150" sortable="custom"></el-table-column> |
|
||||||
<el-table-column prop="releaseTime" label="发布日期" align="center" min-width="100" sortable="custom"></el-table-column> |
|
||||||
<el-table-column prop="learnerNumber" label="总浏览" align="center" min-width="70"></el-table-column> |
|
||||||
<el-table-column prop="workNumber" label="状态" align="center" min-width="80"> |
|
||||||
<template slot-scope="scope"> |
|
||||||
{{ scope.row.isRelease ? '已发布' : '草稿' }} |
|
||||||
</template> |
|
||||||
</el-table-column> |
|
||||||
<el-table-column prop="sequence" label="置顶" align="center" min-width="80" sortable="custom"> |
|
||||||
<template slot-scope="scope"> |
|
||||||
<i v-if="scope.row.isRelease" :class="['squ-icon', scope.row.isTop ? 'el-icon-check' : 'el-icon-close']" @click="sticky(scope.row)"></i> |
|
||||||
</template> |
|
||||||
</el-table-column> |
|
||||||
<el-table-column label="操作" align="center" width="210"> |
|
||||||
<template slot-scope="scope"> |
|
||||||
<el-button v-auth="'/parnerOperation:合伙人资讯管理:编辑'" type="text" @click="edit(scope.row)">编辑</el-button> |
|
||||||
<el-button v-auth="'/parnerOperation:合伙人资讯管理:删除'" type="text" @click="handleDelete(scope.row)">删除</el-button> |
|
||||||
<el-switch |
|
||||||
v-auth="'/parnerOperation:合伙人资讯管理:禁用'" |
|
||||||
v-if="scope.row.isRelease" |
|
||||||
class="m-l-10" |
|
||||||
v-model="scope.row.isDisable" |
|
||||||
:active-value="0" |
|
||||||
:inactive-value="1" |
|
||||||
@change="switchOff($event, scope.row, scope.$index)"> |
|
||||||
</el-switch> |
|
||||||
</template> |
|
||||||
</el-table-column> |
|
||||||
</el-table> |
|
||||||
<div class="pagination"> |
|
||||||
<el-pagination background @current-change="currentChange" :current-page="page" layout="total, prev, pager, next" :total="total"></el-pagination> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
</template> |
|
||||||
|
|
||||||
<script> |
|
||||||
import Setting from '@/setting' |
|
||||||
import util from '@/libs/util' |
|
||||||
import { mapMutations } from 'vuex' |
|
||||||
export default { |
|
||||||
data() { |
|
||||||
return { |
|
||||||
field: 'title', |
|
||||||
keywords: [ |
|
||||||
{ |
|
||||||
id: 'title', |
|
||||||
name: '标题' |
|
||||||
}, |
|
||||||
{ |
|
||||||
id: 'founder', |
|
||||||
name: '录入人' |
|
||||||
}, |
|
||||||
{ |
|
||||||
id: 'editor', |
|
||||||
name: '修改人' |
|
||||||
} |
|
||||||
], |
|
||||||
keyword: '', |
|
||||||
list: [], |
|
||||||
page: 1, |
|
||||||
pageSize: 10, |
|
||||||
total: 0, |
|
||||||
topSort: '', |
|
||||||
classificationNameSort: '', |
|
||||||
releaseDateSort: '', |
|
||||||
editTimeSort: '', |
|
||||||
multipleSelection: [], |
|
||||||
}; |
|
||||||
}, |
|
||||||
watch: { |
|
||||||
keyword: function(val) { |
|
||||||
clearTimeout(this.searchTimer) |
|
||||||
this.searchTimer = setTimeout(() => { |
|
||||||
this.initData() |
|
||||||
}, 500) |
|
||||||
} |
|
||||||
}, |
|
||||||
mounted() { |
|
||||||
this.getData() |
|
||||||
}, |
|
||||||
methods: { |
|
||||||
// 文章列表 |
|
||||||
getData() { |
|
||||||
const { keyword } = this |
|
||||||
this.$post(this.api.partnerOperatingList, { |
|
||||||
pageNum: this.page, |
|
||||||
pageSize: this.pageSize, |
|
||||||
querySource: 3, //查询来源(3.中台 4.合伙人平台) |
|
||||||
topSort: this.topSort, |
|
||||||
classificationNameSort: this.classificationNameSort, |
|
||||||
editTimeSort: this.editTimeSort, |
|
||||||
releaseDateSort: this.releaseDateSort, |
|
||||||
typeId: 2, // 类型(1.学习2.资讯) |
|
||||||
title: this.field === 'title' ? keyword : '', |
|
||||||
founderName: this.field === 'founder' ? keyword : '', |
|
||||||
editorName: this.field === 'editor' ? keyword : '' |
|
||||||
}).then(({ page, total }) => { |
|
||||||
page.forEach(e => { |
|
||||||
e.editing = false |
|
||||||
}) |
|
||||||
this.list = page |
|
||||||
this.total = total |
|
||||||
}).catch(err => {}) |
|
||||||
}, |
|
||||||
currentChange(val) { |
|
||||||
this.page = val |
|
||||||
this.getData() |
|
||||||
}, |
|
||||||
handleSelectionChange(val) { |
|
||||||
this.multipleSelection = val |
|
||||||
}, |
|
||||||
initData() { |
|
||||||
this.$refs.table.clearSelection() |
|
||||||
this.page = 1 |
|
||||||
this.getData() |
|
||||||
}, |
|
||||||
// 批量删除 |
|
||||||
batchDel() { |
|
||||||
const list = this.multipleSelection |
|
||||||
if (list.length) { |
|
||||||
this.$confirm('确定要删除吗?', '提示', { |
|
||||||
type: 'warning' |
|
||||||
}).then(() => { |
|
||||||
const data = [] |
|
||||||
list.map(e => { |
|
||||||
data.push('ids=' + e.id) |
|
||||||
}) |
|
||||||
this.$post(`${this.api.batchDeletionParnerArticle}?${data.join('&')}`).then(res => { |
|
||||||
this.$refs.table.clearSelection() |
|
||||||
util.successMsg("删除成功") |
|
||||||
this.getData() |
|
||||||
}).catch(res => {}) |
|
||||||
}).catch(() => {}) |
|
||||||
} else { |
|
||||||
util.errorMsg('请先选择数据 !') |
|
||||||
} |
|
||||||
}, |
|
||||||
// 删除 |
|
||||||
handleDelete(row) { |
|
||||||
this.$confirm('确定要删除吗?', '提示', { |
|
||||||
type: 'warning' |
|
||||||
}).then(() => { |
|
||||||
this.$post(`${this.api.batchDeletionParnerArticle}?ids=${row.id}`).then(res => { |
|
||||||
util.successMsg('删除成功') |
|
||||||
this.getData() |
|
||||||
}).catch(res => {}) |
|
||||||
}).catch(() => {}) |
|
||||||
}, |
|
||||||
// 禁用启用 |
|
||||||
switchOff(val, row) { |
|
||||||
this.$post(`${this.api.articleEnableOrDisable}?id=${row.id}&isDisable=${val}`).then(res => {}).catch((res) => {}) |
|
||||||
}, |
|
||||||
// 新增 |
|
||||||
add() { |
|
||||||
this.$router.push(`/learnMg?type=2`) |
|
||||||
}, |
|
||||||
// 排序回调 |
|
||||||
sortChange(column) { |
|
||||||
const { order } = column |
|
||||||
// 三个排序只能同时传1个,所以点了一个排序的时候要清除掉其余两个 |
|
||||||
if (column.prop === 'classificationName') { |
|
||||||
this.classificationNameSort = order ? order === 'ascending' ? 'asc' : 'desc' : '' |
|
||||||
if (order) { |
|
||||||
this.editTimeSort = '' |
|
||||||
this.releaseDateSort = '' |
|
||||||
this.topSort = '' |
|
||||||
} |
|
||||||
} |
|
||||||
if (column.prop === 'updateTime') { |
|
||||||
this.editTimeSort = order ? order === 'ascending' ? 'asc' : 'desc' : '' |
|
||||||
if (order) { |
|
||||||
this.classificationNameSort = '' |
|
||||||
this.releaseDateSort = '' |
|
||||||
this.topSort = '' |
|
||||||
} |
|
||||||
} |
|
||||||
if (column.prop === 'releaseTime') { |
|
||||||
this.releaseDateSort = order ? order === 'ascending' ? 'asc' : 'desc' : '' |
|
||||||
if (order) { |
|
||||||
this.editTimeSort = '' |
|
||||||
this.classificationNameSort = '' |
|
||||||
this.topSort = '' |
|
||||||
} |
|
||||||
} |
|
||||||
if (column.prop === 'sequence') { |
|
||||||
this.topSort = order ? order === 'ascending' ? 'asc' : 'desc' : '' |
|
||||||
if (order) { |
|
||||||
this.editTimeSort = '' |
|
||||||
this.releaseDateSort = '' |
|
||||||
this.classificationNameSort = '' |
|
||||||
} |
|
||||||
} |
|
||||||
this.getData() |
|
||||||
}, |
|
||||||
// 排序提交 |
|
||||||
submitSequence(row) { |
|
||||||
if (!row.sequence) return Util.errorMsg('请输入排序') |
|
||||||
this.$post(`${this.api.modifiedSort}?articleId=${row.id}&sequenceNumber=${row.sequence}`).then(res => { |
|
||||||
this.initData() |
|
||||||
}).catch(res => {}) |
|
||||||
}, |
|
||||||
// 编辑排序 |
|
||||||
editSequence(row) { |
|
||||||
this.list.forEach(e => { |
|
||||||
e.editing = false |
|
||||||
}) |
|
||||||
row.editing = true |
|
||||||
}, |
|
||||||
// 置顶 |
|
||||||
sticky(row) { |
|
||||||
this.$post(`${this.api.articleTopOperation}?articleId=${row.id}&isTop=${row.isTop ? 0 : 1}`).then(res => { |
|
||||||
this.initData() |
|
||||||
}).catch(res => {}) |
|
||||||
}, |
|
||||||
// 编辑 |
|
||||||
edit(row) { |
|
||||||
this.$router.push(`/learnMg?id=${row.id}&type=2`) |
|
||||||
}, |
|
||||||
} |
|
||||||
}; |
|
||||||
</script> |
|
||||||
|
|
||||||
<style lang="scss" scoped> |
|
||||||
.m-l-10 { |
|
||||||
margin-left: 10px; |
|
||||||
} |
|
||||||
.squ-icon { |
|
||||||
font-size: 16px; |
|
||||||
font-weight: 600; |
|
||||||
cursor: pointer; |
|
||||||
color: #f70000; |
|
||||||
&.el-icon-check { |
|
||||||
color: #05991e; |
|
||||||
} |
|
||||||
} |
|
||||||
/deep/.squ-input { |
|
||||||
width: auto; |
|
||||||
.el-input__inner { |
|
||||||
width: 60px; |
|
||||||
padding: 0 10px; |
|
||||||
} |
|
||||||
} |
|
||||||
</style> |
|
@ -0,0 +1,279 @@ |
|||||||
|
<template> |
||||||
|
<div class="page"> |
||||||
|
<div class="tool"> |
||||||
|
<div class="search-wrap"> |
||||||
|
<el-select v-model="field" |
||||||
|
@change="initData"> |
||||||
|
<el-option v-for="(item, i) in keywords" |
||||||
|
:key="i" |
||||||
|
:label="item.name" |
||||||
|
:value="item.id"> |
||||||
|
</el-option> |
||||||
|
</el-select> |
||||||
|
<el-input class="keyword" |
||||||
|
:placeholder="'请输入' + keywords.find(e => e.id === field).name" |
||||||
|
v-model.trim="keyword" |
||||||
|
clearable></el-input> |
||||||
|
</div> |
||||||
|
<div class="actions"> |
||||||
|
<el-button v-auth="'/parnerOperation:方案管理:批量删除'" |
||||||
|
@click="batchDel">批量删除</el-button> |
||||||
|
<el-button v-auth="'/parnerOperation:方案管理:新增文章'" |
||||||
|
type="primary" |
||||||
|
@click="add">新增文章</el-button> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<el-table :data="list" |
||||||
|
class="table" |
||||||
|
ref="table" |
||||||
|
header-align="center" |
||||||
|
@selection-change="handleSelectionChange" |
||||||
|
row-key="id" |
||||||
|
@sort-change="sortChange"> |
||||||
|
<el-table-column type="selection" |
||||||
|
width="55" |
||||||
|
align="center" |
||||||
|
:reserve-selection="true"></el-table-column> |
||||||
|
<el-table-column type="index" |
||||||
|
width="60" |
||||||
|
label="序号" |
||||||
|
align="center"></el-table-column> |
||||||
|
<el-table-column show-overflow-tooltip |
||||||
|
prop="title" |
||||||
|
label="标题" |
||||||
|
align="center" |
||||||
|
min-width="150"></el-table-column> |
||||||
|
<el-table-column prop="classificationName" |
||||||
|
label="所属分类" |
||||||
|
align="center" |
||||||
|
min-width="120" |
||||||
|
sortable="custom"></el-table-column> |
||||||
|
<el-table-column prop="founderName" |
||||||
|
label="录入人" |
||||||
|
align="center" |
||||||
|
min-width="80"></el-table-column> |
||||||
|
<el-table-column prop="editorName" |
||||||
|
label="修改人" |
||||||
|
align="center" |
||||||
|
min-width="80"></el-table-column> |
||||||
|
<el-table-column prop="updateTime" |
||||||
|
label="修改日期" |
||||||
|
align="center" |
||||||
|
min-width="150" |
||||||
|
sortable="custom"></el-table-column> |
||||||
|
<el-table-column prop="createTime" |
||||||
|
label="发布日期" |
||||||
|
align="center" |
||||||
|
min-width="100" |
||||||
|
sortable="custom"></el-table-column> |
||||||
|
<el-table-column prop="workNumber" |
||||||
|
label="状态" |
||||||
|
align="center" |
||||||
|
min-width="80"> |
||||||
|
<template slot-scope="scope"> |
||||||
|
{{ scope.row.isRelease ? '已发布' : '草稿' }} |
||||||
|
</template> |
||||||
|
</el-table-column> |
||||||
|
<el-table-column label="操作" |
||||||
|
align="center" |
||||||
|
width="170"> |
||||||
|
<template slot-scope="scope"> |
||||||
|
<el-button v-auth="'/parnerOperation:方案管理:编辑'" |
||||||
|
type="text" |
||||||
|
@click="edit(scope.row)">编辑</el-button> |
||||||
|
<el-button v-auth="'/parnerOperation:方案管理:删除'" |
||||||
|
type="text" |
||||||
|
@click="handleDelete(scope.row)">删除</el-button> |
||||||
|
<el-switch v-auth="'/parnerOperation:方案管理:禁用'" |
||||||
|
v-if="scope.row.isRelease" |
||||||
|
class="m-l-10" |
||||||
|
v-model="scope.row.isDisable" |
||||||
|
:active-value="0" |
||||||
|
:inactive-value="1" |
||||||
|
@change="switchOff($event, scope.row, scope.$index)"> |
||||||
|
</el-switch> |
||||||
|
</template> |
||||||
|
</el-table-column> |
||||||
|
</el-table> |
||||||
|
<div class="pagination"> |
||||||
|
<el-pagination background |
||||||
|
@current-change="currentChange" |
||||||
|
:current-page="page" |
||||||
|
layout="total, prev, pager, next" |
||||||
|
:total="total"></el-pagination> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</template> |
||||||
|
|
||||||
|
<script> |
||||||
|
import util from '@/libs/util' |
||||||
|
export default { |
||||||
|
data () { |
||||||
|
return { |
||||||
|
field: this.$route.query.field || 'title', |
||||||
|
keywords: [ |
||||||
|
{ |
||||||
|
id: 'title', |
||||||
|
name: '标题' |
||||||
|
}, |
||||||
|
{ |
||||||
|
id: 'founder', |
||||||
|
name: '录入人' |
||||||
|
}, |
||||||
|
{ |
||||||
|
id: 'editor', |
||||||
|
name: '修改人' |
||||||
|
} |
||||||
|
], |
||||||
|
keyword: this.$route.query.keyword || '', |
||||||
|
list: [], |
||||||
|
page: +this.$route.query.page || 1, |
||||||
|
pageSize: 10, |
||||||
|
total: 0, |
||||||
|
modifiedTimeSort: '', |
||||||
|
releaseDateSort: 'desc', |
||||||
|
classificationNameSort: '', |
||||||
|
editTimeSort: '', |
||||||
|
multipleSelection: [], |
||||||
|
}; |
||||||
|
}, |
||||||
|
watch: { |
||||||
|
keyword: function (val) { |
||||||
|
clearTimeout(this.searchTimer) |
||||||
|
this.searchTimer = setTimeout(() => { |
||||||
|
this.initData() |
||||||
|
}, 500) |
||||||
|
} |
||||||
|
}, |
||||||
|
mounted () { |
||||||
|
this.getData() |
||||||
|
}, |
||||||
|
methods: { |
||||||
|
// 文章列表 |
||||||
|
getData () { |
||||||
|
const { keyword } = this |
||||||
|
const data = { |
||||||
|
pageNum: this.page, |
||||||
|
pageSize: this.pageSize, |
||||||
|
querySource: 3, //查询来源(3.中台 4.合伙人平台) |
||||||
|
classificationNameSort: this.classificationNameSort, |
||||||
|
editTimeSort: this.editTimeSort, |
||||||
|
createTimeSort: this.releaseDateSort, |
||||||
|
title: this.field === 'title' ? keyword : '', |
||||||
|
founderName: this.field === 'founder' ? keyword : '', |
||||||
|
editorName: this.field === 'editor' ? keyword : '' |
||||||
|
} |
||||||
|
this.$post(this.api.schemeList, data).then(({ data }) => { |
||||||
|
this.list = data.records |
||||||
|
this.total = +data.total |
||||||
|
}).catch(err => { }) |
||||||
|
}, |
||||||
|
currentChange (val) { |
||||||
|
this.page = val |
||||||
|
this.getData() |
||||||
|
}, |
||||||
|
handleSelectionChange (val) { |
||||||
|
this.multipleSelection = val |
||||||
|
}, |
||||||
|
initData () { |
||||||
|
this.$refs.table.clearSelection() |
||||||
|
this.page = 1 |
||||||
|
this.getData() |
||||||
|
}, |
||||||
|
// 批量删除 |
||||||
|
batchDel () { |
||||||
|
const list = this.multipleSelection |
||||||
|
if (list.length) { |
||||||
|
this.$confirm('确定要删除吗?', '提示', { |
||||||
|
type: 'warning' |
||||||
|
}).then(() => { |
||||||
|
const data = [] |
||||||
|
list.map(e => { |
||||||
|
data.push('ids=' + e.id) |
||||||
|
}) |
||||||
|
this.$post(`${this.api.batchDeletionScheme}?${data.join('&')}`).then(res => { |
||||||
|
this.$refs.table.clearSelection() |
||||||
|
util.successMsg("删除成功") |
||||||
|
this.getData() |
||||||
|
}).catch(res => { }) |
||||||
|
}).catch(() => { }) |
||||||
|
} else { |
||||||
|
util.errorMsg('请先选择数据 !') |
||||||
|
} |
||||||
|
}, |
||||||
|
// 删除 |
||||||
|
handleDelete (row) { |
||||||
|
this.$confirm('确定要删除吗?', '提示', { |
||||||
|
type: 'warning' |
||||||
|
}).then(() => { |
||||||
|
this.$post(`${this.api.batchDeletionScheme}?ids=${row.id}`).then(res => { |
||||||
|
util.successMsg('删除成功') |
||||||
|
this.getData() |
||||||
|
}).catch(res => { }) |
||||||
|
}).catch(() => { }) |
||||||
|
}, |
||||||
|
// 禁用启用 |
||||||
|
switchOff (val, row) { |
||||||
|
this.$post(`${this.api.enableOrDisableScheme}?id=${row.id}&isDisable=${val}`).then(res => { }).catch((res) => { }) |
||||||
|
}, |
||||||
|
// 排序回调 |
||||||
|
sortChange (column) { |
||||||
|
const { order } = column |
||||||
|
// 三个排序只能同时传1个,所以点了一个排序的时候要清除掉其余两个 |
||||||
|
if (column.prop === 'classificationName') { |
||||||
|
this.classificationNameSort = order ? order === 'ascending' ? 'asc' : 'desc' : '' |
||||||
|
if (order) { |
||||||
|
this.editTimeSort = '' |
||||||
|
this.releaseDateSort = '' |
||||||
|
this.sequenceSort = '' |
||||||
|
} |
||||||
|
} |
||||||
|
if (column.prop === 'updateTime') { |
||||||
|
this.editTimeSort = order ? order === 'ascending' ? 'asc' : 'desc' : '' |
||||||
|
if (order) { |
||||||
|
this.classificationNameSort = '' |
||||||
|
this.releaseDateSort = '' |
||||||
|
this.sequenceSort = '' |
||||||
|
} |
||||||
|
} |
||||||
|
if (column.prop === 'createTime') { |
||||||
|
this.releaseDateSort = order ? order === 'ascending' ? 'asc' : 'desc' : '' |
||||||
|
if (order) { |
||||||
|
this.editTimeSort = '' |
||||||
|
this.classificationNameSort = '' |
||||||
|
this.sequenceSort = '' |
||||||
|
} |
||||||
|
} |
||||||
|
if (column.prop === 'sequence') { |
||||||
|
this.sequenceSort = order ? order === 'ascending' ? 'asc' : 'desc' : '' |
||||||
|
if (order) { |
||||||
|
this.editTimeSort = '' |
||||||
|
this.releaseDateSort = '' |
||||||
|
this.classificationNameSort = '' |
||||||
|
} |
||||||
|
} |
||||||
|
this.getData() |
||||||
|
}, |
||||||
|
// 缓存当前页面和参数,详情页返回到列表的时候直接取该url |
||||||
|
setReferrer () { |
||||||
|
this.$store.commit('setReferrer', `${this.$route.fullPath}&keyword=${this.keyword}&field=${this.field}&page=${this.page}`) |
||||||
|
}, |
||||||
|
// 新增 |
||||||
|
add () { |
||||||
|
this.setReferrer() |
||||||
|
this.$router.push(`/schemeSet`) |
||||||
|
}, |
||||||
|
// 编辑 |
||||||
|
edit (row) { |
||||||
|
this.setReferrer() |
||||||
|
this.$router.push(`/schemeSet?id=${row.id}`) |
||||||
|
}, |
||||||
|
} |
||||||
|
}; |
||||||
|
</script> |
||||||
|
|
||||||
|
<style lang="scss" scoped> |
||||||
|
.m-l-10 { |
||||||
|
margin-left: 10px; |
||||||
|
} |
||||||
|
</style> |
@ -1,268 +0,0 @@ |
|||||||
<template> |
|
||||||
<div class="page"> |
|
||||||
<div class="tool"> |
|
||||||
<div class="search-wrap"> |
|
||||||
<el-select v-model="field" @change="initData"> |
|
||||||
<el-option |
|
||||||
v-for="(item, i) in keywords" |
|
||||||
:key="i" |
|
||||||
:label="item.name" |
|
||||||
:value="item.id"> |
|
||||||
</el-option> |
|
||||||
</el-select> |
|
||||||
<el-input class="keyword" :placeholder="'请输入' + keywords.find(e => e.id === field).name" v-model.trim="keyword" clearable></el-input> |
|
||||||
</div> |
|
||||||
<div class="actions"> |
|
||||||
<el-button v-auth="'/parnerOperation:合伙人学习管理:批量删除'" @click="batchDel">批量删除</el-button> |
|
||||||
<el-button v-auth="'/parnerOperation:合伙人学习管理:新增文章'" type="primary" @click="add" >新增文章</el-button> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
<el-table :data="list" class="table" ref="table" header-align="center" @selection-change="handleSelectionChange" row-key="id" @sort-change="sortChange"> |
|
||||||
<el-table-column type="selection" width="55" align="center" :reserve-selection="true"></el-table-column> |
|
||||||
<el-table-column type="index" width="60" label="序号" align="center"></el-table-column> |
|
||||||
<el-table-column show-overflow-tooltip prop="title" label="标题" align="center" min-width="150"></el-table-column> |
|
||||||
<el-table-column prop="classificationName" label="所属分类" align="center" min-width="120" sortable="custom"></el-table-column> |
|
||||||
<el-table-column prop="founderName" label="录入人" align="center" min-width="80"></el-table-column> |
|
||||||
<el-table-column prop="editorName" label="修改人" align="center" min-width="80"></el-table-column> |
|
||||||
<el-table-column prop="updateTime" label="修改日期" align="center" min-width="150" sortable="custom"></el-table-column> |
|
||||||
<el-table-column prop="releaseTime" label="发布日期" align="center" min-width="100" sortable="custom"></el-table-column> |
|
||||||
<el-table-column prop="learnerNumber" label="已学习人数" align="center" min-width="70"></el-table-column> |
|
||||||
<el-table-column prop="workNumber" label="状态" align="center" min-width="80"> |
|
||||||
<template slot-scope="scope"> |
|
||||||
{{ scope.row.isRelease ? '已发布' : '草稿' }} |
|
||||||
</template> |
|
||||||
</el-table-column> |
|
||||||
<el-table-column prop="sequence" label="置顶" align="center" min-width="80" sortable="custom"> |
|
||||||
<template slot-scope="scope"> |
|
||||||
<i v-if="scope.row.isRelease" :class="['squ-icon', scope.row.isTop ? 'el-icon-check' : 'el-icon-close']" @click="sticky(scope.row)"></i> |
|
||||||
</template> |
|
||||||
</el-table-column> |
|
||||||
<el-table-column label="操作" align="center" width="210"> |
|
||||||
<template slot-scope="scope"> |
|
||||||
<el-button v-auth="'/parnerOperation:合伙人学习管理:编辑'" type="text" @click="edit(scope.row)">编辑</el-button> |
|
||||||
<el-button v-auth="'/parnerOperation:合伙人学习管理:删除'" type="text" @click="handleDelete(scope.row)">删除</el-button> |
|
||||||
<el-switch |
|
||||||
v-auth="'/parnerOperation:合伙人学习管理:禁用'" |
|
||||||
v-if="scope.row.isRelease" |
|
||||||
class="m-l-10" |
|
||||||
v-model="scope.row.isDisable" |
|
||||||
:active-value="0" |
|
||||||
:inactive-value="1" |
|
||||||
@change="switchOff($event, scope.row, scope.$index)"> |
|
||||||
</el-switch> |
|
||||||
</template> |
|
||||||
</el-table-column> |
|
||||||
</el-table> |
|
||||||
<div class="pagination"> |
|
||||||
<el-pagination background @current-change="currentChange" :current-page="page" layout="total, prev, pager, next" :total="total"></el-pagination> |
|
||||||
</div> |
|
||||||
</div> |
|
||||||
</template> |
|
||||||
|
|
||||||
<script> |
|
||||||
import Setting from '@/setting' |
|
||||||
import util from '@/libs/util' |
|
||||||
export default { |
|
||||||
data() { |
|
||||||
return { |
|
||||||
field: 'title', |
|
||||||
keywords: [ |
|
||||||
{ |
|
||||||
id: 'title', |
|
||||||
name: '标题' |
|
||||||
}, |
|
||||||
{ |
|
||||||
id: 'founder', |
|
||||||
name: '录入人' |
|
||||||
}, |
|
||||||
{ |
|
||||||
id: 'editor', |
|
||||||
name: '修改人' |
|
||||||
} |
|
||||||
], |
|
||||||
keyword: '', |
|
||||||
list: [], |
|
||||||
page: 1, |
|
||||||
pageSize: 10, |
|
||||||
total: 0, |
|
||||||
topSort: '', |
|
||||||
classificationNameSort: '', |
|
||||||
releaseDateSort: '', |
|
||||||
editTimeSort: '', |
|
||||||
multipleSelection: [], |
|
||||||
}; |
|
||||||
}, |
|
||||||
watch: { |
|
||||||
keyword: function(val) { |
|
||||||
clearTimeout(this.searchTimer) |
|
||||||
this.searchTimer = setTimeout(() => { |
|
||||||
this.initData() |
|
||||||
}, 500) |
|
||||||
} |
|
||||||
}, |
|
||||||
mounted() { |
|
||||||
this.getData() |
|
||||||
}, |
|
||||||
methods: { |
|
||||||
// 文章列表 |
|
||||||
getData() { |
|
||||||
const { keyword } = this |
|
||||||
this.$post(this.api.partnerOperatingList, { |
|
||||||
pageNum: this.page, |
|
||||||
pageSize: this.pageSize, |
|
||||||
querySource: 3, //查询来源(3.中台 4.合伙人平台) |
|
||||||
topSort: this.topSort, |
|
||||||
classificationNameSort: this.classificationNameSort, |
|
||||||
editTimeSort: this.editTimeSort, |
|
||||||
releaseDateSort: this.releaseDateSort, |
|
||||||
typeId: 1, // 类型(1.学习2.资讯) |
|
||||||
title: this.field === 'title' ? keyword : '', |
|
||||||
founderName: this.field === 'founder' ? keyword : '', |
|
||||||
editorName: this.field === 'editor' ? keyword : '' |
|
||||||
}).then(({ page, total }) => { |
|
||||||
page.forEach(e => { |
|
||||||
e.editing = false |
|
||||||
}) |
|
||||||
this.list = page |
|
||||||
this.total = total |
|
||||||
}).catch(err => {}) |
|
||||||
}, |
|
||||||
currentChange(val) { |
|
||||||
this.page = val |
|
||||||
this.getData() |
|
||||||
}, |
|
||||||
handleSelectionChange(val) { |
|
||||||
this.multipleSelection = val |
|
||||||
}, |
|
||||||
initData() { |
|
||||||
this.$refs.table.clearSelection() |
|
||||||
this.page = 1 |
|
||||||
this.getData() |
|
||||||
}, |
|
||||||
// 批量删除 |
|
||||||
batchDel() { |
|
||||||
const list = this.multipleSelection |
|
||||||
if (list.length) { |
|
||||||
this.$confirm('确定要删除吗?', '提示', { |
|
||||||
type: 'warning' |
|
||||||
}).then(() => { |
|
||||||
const data = [] |
|
||||||
list.map(e => { |
|
||||||
data.push('ids=' + e.id) |
|
||||||
}) |
|
||||||
this.$post(`${this.api.batchDeletionParnerArticle}?${data.join('&')}`).then(res => { |
|
||||||
this.$refs.table.clearSelection() |
|
||||||
util.successMsg("删除成功") |
|
||||||
this.getData() |
|
||||||
}).catch(res => {}) |
|
||||||
}).catch(() => {}) |
|
||||||
} else { |
|
||||||
util.errorMsg('请先选择数据 !') |
|
||||||
} |
|
||||||
}, |
|
||||||
// 删除 |
|
||||||
handleDelete(row) { |
|
||||||
this.$confirm('确定要删除吗?', '提示', { |
|
||||||
type: 'warning' |
|
||||||
}).then(() => { |
|
||||||
this.$post(`${this.api.batchDeletionParnerArticle}?ids=${row.id}`).then(res => { |
|
||||||
util.successMsg('删除成功') |
|
||||||
this.getData() |
|
||||||
}).catch(res => {}) |
|
||||||
}).catch(() => {}) |
|
||||||
}, |
|
||||||
// 禁用启用 |
|
||||||
switchOff(val, row) { |
|
||||||
this.$post(`${this.api.articleEnableOrDisable}?id=${row.id}&isDisable=${val}`).then(res => {}).catch((res) => {}) |
|
||||||
}, |
|
||||||
// 新增 |
|
||||||
add() { |
|
||||||
this.$router.push(`/learnMg?type=1`) |
|
||||||
}, |
|
||||||
// 排序回调 |
|
||||||
sortChange(column) { |
|
||||||
const { order } = column |
|
||||||
// 三个排序只能同时传1个,所以点了一个排序的时候要清除掉其余两个 |
|
||||||
if (column.prop === 'classificationName') { |
|
||||||
this.classificationNameSort = order ? order === 'ascending' ? 'asc' : 'desc' : '' |
|
||||||
if (order) { |
|
||||||
this.editTimeSort = '' |
|
||||||
this.releaseDateSort = '' |
|
||||||
this.topSort = '' |
|
||||||
} |
|
||||||
} |
|
||||||
if (column.prop === 'updateTime') { |
|
||||||
this.editTimeSort = order ? order === 'ascending' ? 'asc' : 'desc' : '' |
|
||||||
if (order) { |
|
||||||
this.classificationNameSort = '' |
|
||||||
this.releaseDateSort = '' |
|
||||||
this.topSort = '' |
|
||||||
} |
|
||||||
} |
|
||||||
if (column.prop === 'releaseTime') { |
|
||||||
this.releaseDateSort = order ? order === 'ascending' ? 'asc' : 'desc' : '' |
|
||||||
if (order) { |
|
||||||
this.editTimeSort = '' |
|
||||||
this.classificationNameSort = '' |
|
||||||
this.topSort = '' |
|
||||||
} |
|
||||||
} |
|
||||||
if (column.prop === 'sequence') { |
|
||||||
this.topSort = order ? order === 'ascending' ? 'asc' : 'desc' : '' |
|
||||||
if (order) { |
|
||||||
this.editTimeSort = '' |
|
||||||
this.releaseDateSort = '' |
|
||||||
this.classificationNameSort = '' |
|
||||||
} |
|
||||||
} |
|
||||||
this.getData() |
|
||||||
}, |
|
||||||
// 排序提交 |
|
||||||
submitSequence(row) { |
|
||||||
if (!row.sequence) return Util.errorMsg('请输入排序') |
|
||||||
this.$post(`${this.api.modifiedSort}?articleId=${row.id}&sequenceNumber=${row.sequence}`).then(res => { |
|
||||||
this.initData() |
|
||||||
}).catch(res => {}) |
|
||||||
}, |
|
||||||
// 编辑排序 |
|
||||||
editSequence(row) { |
|
||||||
this.list.forEach(e => { |
|
||||||
e.editing = false |
|
||||||
}) |
|
||||||
row.editing = true |
|
||||||
}, |
|
||||||
// 置顶 |
|
||||||
sticky(row) { |
|
||||||
this.$post(`${this.api.articleTopOperation}?articleId=${row.id}&isTop=${row.isTop ? 0 : 1}`).then(res => { |
|
||||||
this.initData() |
|
||||||
}).catch(res => {}) |
|
||||||
}, |
|
||||||
// 编辑 |
|
||||||
edit(row) { |
|
||||||
this.$router.push(`/learnMg?id=${row.id}&type=1`) |
|
||||||
}, |
|
||||||
} |
|
||||||
}; |
|
||||||
</script> |
|
||||||
|
|
||||||
<style lang="scss" scoped> |
|
||||||
.m-l-10 { |
|
||||||
margin-left: 10px; |
|
||||||
} |
|
||||||
.squ-icon { |
|
||||||
font-size: 16px; |
|
||||||
font-weight: 600; |
|
||||||
cursor: pointer; |
|
||||||
color: #f70000; |
|
||||||
&.el-icon-check { |
|
||||||
color: #05991e; |
|
||||||
} |
|
||||||
} |
|
||||||
/deep/.squ-input { |
|
||||||
width: auto; |
|
||||||
.el-input__inner { |
|
||||||
width: 60px; |
|
||||||
padding: 0 10px; |
|
||||||
} |
|
||||||
} |
|
||||||
</style> |
|
Loading…
Reference in new issue