文件

209 行
8.1 KiB
HTML
可执行文件

<!--[1.6.9]-->
<style>
.el-input {
margin-bottom: 8px;
}
</style>
<div id="app" v-cloak>
<el-alert
title="新版评价请前往【商城 -> 商品评价】查看"
type="info" :closable="false" style="margin-bottom: 10px">
</el-alert>
<!-- 搜索 -->
<div style="margin-bottom: 10px;">
<el-date-picker
width="400"
size="small"
v-model="add_time"
type="datetimerange"
value-format="yyyy-MM-dd HH:mm:ss"
range-separator="至"
start-placeholder="开始时间"
end-placeholder="结束时间">
</el-date-picker>
<el-button type="primary" plain @click="search" size="small">查询</el-button>
<el-button v-if="operate.delete&&del_eval" @click="batchDel" size="small">批量删除</el-button>
</div>
<!-- 列表 -->
<div style="border: 1px solid #e6e6e6;max-width: calc(100vw - 10px);">
<el-table border :data="evaList" style="width: calc(100vw - 10px);border: none;"
size="small"
max-height="500"
v-loading="loading"
@selection-change="handleSelectionChange"
element-loading-text="数据获取中"
element-loading-spinner="el-icon-loading">
<el-table-column v-if="operate.delete&&del_eval" align="center" fixed type="selection"
width="40"></el-table-column>
<el-table-column type="index" label="序号" align="center" width="50"></el-table-column>
<el-table-column prop="store_name" label="所属门店" min-width="100px" show-overflow-tooltip></el-table-column>
<el-table-column prop="vip_name" label="用户昵称" min-width="100px" show-overflow-tooltip></el-table-column>
<el-table-column prop="addtime" label="评论时间" min-width="130px" show-overflow-tooltip></el-table-column>
<el-table-column prop="content" label="评论内容" min-width="200px" show-overflow-tooltip></el-table-column>
<el-table-column label="操作" fixed="right" align="center">
<template slot-scope="scope">
<el-button type="text" size="mini"
v-if="operate.deleteInvoice&&del_eval"
style="color: #999">删除
</el-button>
</template>
</el-table-column>
</el-table>
<el-pagination
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page="currentPage"
:page-sizes="[10, 15, 20, 25, 30, 35, 40, 45, 50]"
:page-size="100"
layout="total, sizes, prev, pager, next, jumper"
:total="currentLen">
</el-pagination>
</div>
</div>
<script type="text/javascript">
var app = new Vue({
el: '#app',
data() {
return {
del_eval: "{$global_store_jurisdiction['deleval']}" == 1 ? true : false,
loading: true,
add_time: '',
evaList: [],
currentPage: 1,
currentLimit: 10,
currentLen: 0,
checkedList: [],
operate:{},
}
},
methods: {
//批量选择
handleSelectionChange(data) {
this.checkedList = [];
this.checkedList = data;
},
//搜索
search() {
this.getEvaList();
},
handleSizeChange(val) {
this.currentLimit = val;//切换每页数量
this.currentPage = 1;
this.getEvaList();
},
handleCurrentChange(val) {
this.currentPage = val;
this.getEvaList();//切换页数
},
getEvaList() {
$.ajax({
url: "{:U('Invoice/lists')}",
type: "post",
data: {
add_time: this.add_time,
page: this.currentPage,
limit: this.currentLimit
},
success: (res) => {
if (res.code == 0) {
this.loading = false;
this.evaList = res.data;
this.$nextTick(() => {
this.currentLen = parseInt(res.count);
})
}
}
})
},
//批量删除
batchDel() {
if (!this.checkedList.length) {
return this.$info('请选择要删除的评论');
}
let ids = [];
this.checkedList.forEach((item) => {
ids.push(item.id);
})
this.$confirm('确定要删除多条评论吗?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
$.ajax({
url: "/index.php/Retail/Invoice/delete",
type: "POST",
data: {id: ids},
success: (res) => {
if (res.status == 1) {
this.getData();
this.$message({
message: res.msg,
type: 'success',
duration: 1000
})
} else {
this.$message({
message: res.msg,
type: 'error',
})
}
}
})
}).catch(() => {
});
},
//单删
del(id){
this.$confirm('确定要删除该评论吗?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
$.ajax({
url: "/index.php/Retail/Invoice/delete",
type: "POST",
data: {id: ids},
success: (res) => {
if (res.status == 1) {
this.getData();
this.$message({
message: res.msg,
type: 'success',
duration: 1000
})
} else {
this.$message({
message: res.msg,
type: 'error',
})
}
}
})
}).catch(() => {
});
},
//获取操作权限
getOperate() {
var auth_list = {
delete: '/index.php/Retail/Invoice/delete',
};
$.ajax({
url: '/index.php/Retail/Component/checkOperateAuth',
type: "post",
data: {
auth_list: JSON.stringify(auth_list),
},
success: (res) => {
if (res.status == 1) {
this.operate = res.data;
}
}
})
},
},
created() {
this.getEvaList();
this.getOperate();
}
})
</script>