Browse Source

Merge branch 'xiaowang-social' into test

feature
是小王呀\24601 11 months ago
parent
commit
50c7330520
  1. 20
      src/views/modules/communityParty/comPromotion/index.vue
  2. 14
      src/views/modules/volunteer/Dynamicmanagement/add.vue
  3. 14
      src/views/modules/volunteer/Dynamicmanagement/index.vue
  4. 16
      src/views/modules/volunteer/SiteManagement/index.vue
  5. 44
      src/views/modules/volunteer/Venuemanagement/index.vue
  6. 272
      src/views/modules/volunteer/VoluntaryOrganization/add.vue
  7. 8
      src/views/modules/volunteer/VoluntaryOrganization/index.vue
  8. 15
      src/views/modules/volunteer/VoluntaryOrganization/info.vue
  9. 21
      src/views/modules/volunteer/VoluntaryOrganization/process.vue
  10. 41
      src/views/modules/volunteer/VolunteerProjects/index.vue
  11. 38
      src/views/modules/volunteer/activityArchive/index.vue

20
src/views/modules/communityParty/comPromotion/index.vue

@ -36,31 +36,31 @@
</div>
<el-table class="table" :data="tableData" border v-loading="tableLoading"
style="width: 100%">
<el-table-column label="序号" header-align="center" align="center" type="index" width="80"></el-table-column>
<el-table-column prop="title" header-align="center" align="center" label="文章标题" width="200">
<el-table-column label="序号" header-align="center" align="center" type="index" ></el-table-column>
<el-table-column prop="title" header-align="center" align="center" label="文章标题" >
</el-table-column>
<el-table-column prop="tagName" header-align="center" align="center" label="标签" width="150">
<el-table-column prop="tagName" header-align="center" align="center" label="标签" >
<!-- <template slot-scope="scope">
<span>{{ scope.row.enabled === 1 ? '关闭' : '显示' }}</span>
</template> -->
</el-table-column>
<el-table-column prop="status" header-align="center" align="center" label="状态" width="80">
<el-table-column prop="status" header-align="center" align="center" label="状态" >
<template slot-scope="scope">
<span>{{ scope.row.status === 0 ? '已下线' : '已发布' }}</span>
</template>
</el-table-column>
<el-table-column prop="agencyName" header-align="center" align="center" label="发布单位" width="200">
<el-table-column prop="agencyName" header-align="center" align="center" label="发布单位" >
</el-table-column>
<el-table-column prop="releaseTime" header-align="center" align="center" label="发布时间" width="200">
<el-table-column prop="releaseTime" header-align="center" align="center" label="发布时间" >
</el-table-column>
<el-table-column prop="top" header-align="center" align="center" label="置顶" width="100">
<el-table-column prop="top" header-align="center" align="center" label="置顶" >
<template slot-scope="scope">
<span>{{ scope.row.top === 0 ? '否' : '是' }}</span>
</template>
</el-table-column>
<el-table-column prop="likes" header-align="center" align="center" label="点赞数" width="100">
<el-table-column prop="likes" header-align="center" align="center" label="点赞数" >
</el-table-column>
<el-table-column prop="transpond" header-align="center" align="center" label="转发数" width="100">
<el-table-column prop="transpond" header-align="center" align="center" label="转发数" >
</el-table-column>
<el-table-column label="操作" fixed="right" width="250" header-align="center" align="center" class="operate">
<template slot-scope="scope">
@ -80,7 +80,7 @@
</div>
<!-- 修改弹出框 -->
<el-dialog :visible.sync="formShow" :close-on-click-modal="false" :close-on-press-escape="false" :title="formTitle"
width="450px" top="5vh" class="dialog-h" @closed="diaClose">
width="950px" top="5vh" class="dialog-h" @closed="diaClose">
<add ref="ref_form" v-if="formShow" @dialogCancle="addFormCancle"
@dialogOk="addFormOk"></add>
</el-dialog>

14
src/views/modules/volunteer/Dynamicmanagement/add.vue

@ -218,20 +218,6 @@
},
async activityType() {
const url = "/actual/base/activityType/page"
let params = {
// agencyId: this.agencyId
pageSize: 20,
pageNo: 1,
typeName: "",
enabled: 1
}
const { data, code, msg } = await requestPost(url, params)
if (code === 0) {
this.typeList = data.list
} else {
this.$message.error(msg)
}
this.$nextTick(() => {
if (!map) {
this.initMap(this.formData.latitude, this.formData.longitude);

14
src/views/modules/volunteer/Dynamicmanagement/index.vue

@ -206,7 +206,12 @@ export default {
},
//
handledelete(row){
let url=`/voluntary/newsTrends/deleteById/${row.id}`
this.$confirm('此操作将永久删除该记录, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
let url=`/voluntary/newsTrends/deleteById/${row.id}`
axios({
url: window.SITE_CONFIG["apiURL"] + url,
method: "DELETE",
@ -220,6 +225,13 @@ export default {
this.$message.error(res.msg)
}
})
}).catch(() => {
this.$message({
type: 'info',
message: '已取消删除'
});
})
// requestGet(url).then((res)=>{
// if(res.code==0){
// this.$message.success("")

16
src/views/modules/volunteer/SiteManagement/index.vue

@ -331,7 +331,13 @@ export default {
return fileType && isLt1M;
},
handleDel(row) {
console.log(row, "row");
this.$confirm('此操作将永久删除该记录, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
console.log(row, "row");
let url = "/voluntary/position/delete";
// let params = {
// ids: [String(row.id)] // row.id
@ -350,6 +356,14 @@ export default {
console.error("删除失败", error);
this.$message.error("删除失败,请稍后重试");
});
}).catch(() => {
this.$message({
type: 'info',
message: '已取消删除'
});
})
},
diaClose(){
this.formShow=false

44
src/views/modules/volunteer/Venuemanagement/index.vue

@ -327,23 +327,33 @@ export default {
return fileType && isLt1M;
},
handleDel(row) {
console.log(row, "row");
let url = "/voluntary/positionVenues/delete";
let params = [String(row.id)];
axios.delete(this.processUrl(url), { data: params })
.then((res) => {
if (res.data.code === 0) {
this.$message.success("删除成功");
this.getTableData();
} else {
this.$message.error(res.data.msg);
}
})
.catch((error) => {
console.error("删除失败", error);
this.$message.error("删除失败,请稍后重试");
});
this.$confirm('此操作将永久删除该记录, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
console.log(row, "row");
let url = "/voluntary/positionVenues/delete";
let params = [String(row.id)];
axios.delete(this.processUrl(url), { data: params })
.then((res) => {
if (res.data.code === 0) {
this.$message.success("删除成功");
this.getTableData();
} else {
this.$message.error(res.data.msg);
}
})
.catch((error) => {
console.error("删除失败", error);
this.$message.error("删除失败,请稍后重试");
});
}).catch(() => {
this.$message({
type: 'info',
message: '已取消删除'
});
})
},
diaClose(){
this.formShow=false

272
src/views/modules/volunteer/VoluntaryOrganization/add.vue

@ -1,107 +1,114 @@
<template>
<div>
<div class="dialog-h-content scroll-h">
<el-form ref="ref_form" :inline="true" :model="formData" :rules="dataRule"
class="form">
<el-row>
<el-col :span="12">
<el-form-item label="所属组织" prop="agencyName" label-width="150px">
<el-input v-model.trim="formData.agencyName" size="small" clearable placeholder="请输入活动名称" :disabled="true"
class="u-item-width-normal"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="组织名称" prop="orgName" label-width="150px">
<el-input v-model.trim="formData.orgName" size="small" clearable placeholder="请输入活动名称"
class="u-item-width-normal"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="服务类型" label-width="150px" prop="serviceTypeList">
<el-select multiple-limit='4' class="u-item-width-normal" v-model.trim="formData.serviceTypeList" placeholder="请选择" clearable multiple>
<div class="dialog-h-content scroll-h">
<el-form ref="ref_form" :inline="true" :model="formData" :rules="dataRule" class="form">
<el-row>
<el-col :span="12">
<el-form-item label="所属组织" prop="agencyName" label-width="150px">
<el-input v-model.trim="formData.agencyName" size="small" clearable placeholder="请输入活动名称"
:disabled="true" class="u-item-width-normal"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="组织名称" prop="orgName" label-width="150px">
<el-input v-model.trim="formData.orgName" size="small" clearable placeholder="请输入活动名称"
class="u-item-width-normal"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="服务类型" label-width="150px" prop="serviceTypeList">
<el-select multiple-limit='4' class="u-item-width-normal" v-model.trim="formData.serviceTypeList" placeholder="请选择" clearable multiple>
<el-option v-for="item in ServicetypeListName" :key="item.value" :label="item.label" :value="item.value" >
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="组织类型" label-width="150px" prop="orgType">
<el-select class="u-item-width-normal" v-model.trim="formData.orgType" placeholder="请选择" clearable >
<el-option v-for="item in OrganizationaltypeList" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="活动地点" prop="address" label-width="150px" style="display: block">
<div style="width: 634px">
<el-select v-model.trim="searchValue" filterable style="width: 634px" remote :reserve-keyword="true"
placeholder="请输入关键词" :remote-method="remoteMethod" :loading="loading">
<el-option v-for="(item, index) in searchOptions" @click.native="handleClickKey(index)"
:key="item.value || index" :label="item.label" :value="item.value">
</el-option>
</el-select>
<div id="app_activity" class="div_map"></div>
</div>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="管理员姓名" prop="operator" label-width="150px">
<el-input v-model.trim="formData.operator" size="small" clearable placeholder="请输入管理员姓名"
class="u-item-width-normal"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="手机号" prop="mobile" label-width="150px">
<el-input v-model.trim="formData.mobile" size="small" clearable placeholder="请输入手机号"
class="u-item-width-normal"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="身份证号" prop="idCard" label-width="150px">
<el-input v-model.trim="formData.idCard" size="small" clearable placeholder="请输入身份证号"
class="u-item-width-normal"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="组织封面图" label-width="150px" prop="orgImage">
<template>
<upload-image :defaultFileList="fileList" :limit="1" @change="onChangeFileList"
@file-removed="removedImg"></upload-image>
</template>
</el-form-item>
</el-col>
<el-form-item label="组织介绍" prop="introduction" label-width="150px" style="display: block">
<div class="item_width_1">
<el-input type="textarea" autosize placeholder="请填写组织介绍" v-model.trim="formData.introduction" :autosize="{ minRows:4., maxRows: 10}" >
</el-input>
</div>
</el-form-item>
<el-form-item label="志愿品牌" prop="brand" label-width="150px" style="display: block">
<div class="item_width_1">
<el-input type="textarea" autosize placeholder="请输入内容" v-model.trim="formData.brand" :autosize="{ minRows:4., maxRows: 10}" >
</el-input>
</div>
</el-form-item>
<el-form-item label="品牌展示图" label-width="150px" prop="brandImg">
<template>
<upload-image :defaultFileList="formData.brandImg" :limit="1" @change="onChangeFileList1"
@file-removed="removedImg"></upload-image>
</template>
</el-form-item>
</el-row></el-form>
</div>
<div class="div_btn">
<el-button size="small" @click="handleCancle"> </el-button>
<el-button size="small" v-if="formType != 'detail'" type="primary" :disabled="btnDisable"
@click="handleComfirm"> </el-button>
</div>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="组织类型" label-width="150px" prop="orgType">
<el-cascader v-model="value" :options="OrganizationaltypeList" @change="handleChange" :props="props"></el-cascader>
<!-- <el-select class="u-item-width-normal" v-model.trim="formData.orgType" placeholder="请选择"
clearable>
<el-option v-for="item in OrganizationaltypeList" :key="item.value" :label="item.label"
:value="item.value">
</el-option>
</el-select> -->
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="活动地点" prop="address" label-width="150px" style="display: block">
<div style="width: 634px">
<el-select v-model.trim="searchValue" filterable style="width: 634px" remote
:reserve-keyword="true" placeholder="请输入关键词" :remote-method="remoteMethod"
:loading="loading">
<el-option v-for="(item, index) in searchOptions"
@click.native="handleClickKey(index)" :key="item.value || index"
:label="item.label" :value="item.value">
</el-option>
</el-select>
<div id="app_activity" class="div_map"></div>
</div>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="管理员姓名" prop="operator" label-width="150px">
<el-input v-model.trim="formData.operator" size="small" clearable placeholder="请输入管理员姓名"
class="u-item-width-normal"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="手机号" prop="mobile" label-width="150px">
<el-input v-model.trim="formData.mobile" size="small" clearable placeholder="请输入手机号"
class="u-item-width-normal"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="身份证号" prop="idCard" label-width="150px">
<el-input v-model.trim="formData.idCard" size="small" clearable placeholder="请输入身份证号"
class="u-item-width-normal"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="组织封面图" label-width="150px" prop="orgImage">
<template>
<upload-image :defaultFileList="fileList" :limit="1" @change="onChangeFileList"
@file-removed="removedImg"></upload-image>
</template>
</el-form-item>
</el-col>
<el-form-item label="组织介绍" prop="introduction" label-width="150px" style="display: block">
<div class="item_width_1">
<el-input type="textarea" autosize placeholder="请填写组织介绍"
v-model.trim="formData.introduction" :autosize="{ minRows:4., maxRows: 10}">
</el-input>
</div>
</el-form-item>
<el-form-item label="志愿品牌" prop="brand" label-width="150px" style="display: block">
<div class="item_width_1">
<el-input type="textarea" autosize placeholder="请输入内容" v-model.trim="formData.brand"
:autosize="{ minRows:4., maxRows: 10}">
</el-input>
</div>
</el-form-item>
<el-form-item label="品牌展示图" label-width="150px" prop="brandImg">
<template>
<upload-image :defaultFileList="formData.brandImg" :limit="1" @change="onChangeFileList1"
@file-removed="removedImg"></upload-image>
</template>
</el-form-item>
</el-row></el-form>
</div>
<div class="div_btn">
<el-button size="small" @click="handleCancle"> </el-button>
<el-button size="small" v-if="formType != 'detail'" type="primary" :disabled="btnDisable"
@click="handleComfirm"> </el-button>
</div>
</div>
</template>
</template>
<script>
import { mapGetters } from 'vuex'
@ -123,6 +130,7 @@
export default {
data() {
return {
volunteerOrgId:"0",
fileList:[],
fileList1:[],
searchValue:"",
@ -263,20 +271,6 @@
// },
async activityType() {
const url = "/actual/base/activityType/page"
let params = {
// agencyId: this.agencyId
pageSize: 20,
pageNo: 1,
typeName: "",
enabled: 1
}
const { data, code, msg } = await requestPost(url, params)
if (code === 0) {
this.typeList = data.list
} else {
this.$message.error(msg)
}
this.$nextTick(() => {
if (!map) {
this.initMap(this.formData.latitude, this.formData.longitude);
@ -369,7 +363,12 @@
// }
// },
handleChange(value) {},
handleChange(value) {
console.log(value);
this.volunteerOrgId=value.toString()
this.volunteertype1()
},
handleTimeChange(time) {
if (time) {
const startTimeArray = util.dateFormatter(time[0], 'time').split('-')
@ -381,8 +380,7 @@
// this.startTimeShow = startTimeArray[0] + '' + startTimeArray[1] + '' + startTimeArray[2] + ''
// this.endTimeShow = endTimeArray[0] + '' + endTimeArray[1] + '' + endTimeArray[2] + ''
} else {
this.formData.startTime = ''
this.formData.endTime = ''
}
},
@ -487,21 +485,31 @@
},
//
async volunteertype () {
const url = "/sys/dict/data/dictlist"
const url = "/voluntary/volunteerInfo/getOrgTypeList"
let params = {
dictType: 'volunteer_org_type',
parentValue:"0"
volunteerOrgId:this.volunteerOrgId
}
console.log("vol123234");
const { data, code, msg } = await requestPost(url, params)
if (code === 0) {
this.OrganizationaltypeList = data;
} else {
this.$message.error(msg)
}
},
//
async volunteertype1 () {
const url = "/voluntary/volunteerInfo/getOrgTypeList"
let params = {
volunteerOrgId:this.volunteerOrgId
}
const { data, code, msg } = await requestPost(url, params)
if (code === 0) {
this.OrganizationaltypeList.childList=data;
console.log(this.OrganizationaltypeList,"sdlkjclsdc");
} else {
this.$message.error(msg)
}
},
//
async volunteerservicetype () {
@ -817,8 +825,24 @@
},
props: {
lazy: true,
lazyLoad (node, resolve) {
const { level } = node;
console.log(node, resolve,"node, resolve");
setTimeout(() => {
const nodes = Array.from({ length: level + 1 })
.map(item => ({
value: ++id,
label: `选项${id}`,
leaf: level >= 2
}));
// resolve
resolve(nodes);
}, 1000);
}
},
destroyed () {

8
src/views/modules/volunteer/VoluntaryOrganization/index.vue

@ -78,7 +78,7 @@
@click="handleshowMember(scope.row)">成员管理</el-button>
<el-button type="text" style="color:#1C6AFD;" size="small"
@click="handleDel(scope.row)">删除</el-button>
<el-button v-if="scope.row.status == 'processing'" type="text" style="color:#1C6AFD;" size="small"
<el-button v-if="scope.row.status == 'processing'&&scope.row.ischeck==1" type="text" style="color:#1C6AFD;" size="small"
@click="handleprocessl(scope.row)">审核</el-button>
</template>
</el-table-column>
@ -90,7 +90,7 @@
</el-pagination>
</div>
<el-dialog :visible.sync="showAdd" :close-on-click-modal="false" :close-on-press-escape="false" title="新增"
width="850px" top="10vh" class="dialog-h" @closed="showAddClose">
width="950px" top="10vh" class="dialog-h" @closed="showAddClose">
<add v-if="showAdd" @showAddClose="showAddClose" />
</el-dialog>
<el-dialog :visible.sync="showInfo" :close-on-click-modal="false" :close-on-press-escape="false" title="查看"
@ -132,6 +132,7 @@ export default {
data() {
return {
ids:"",
formData: {
orgName: "",
serviceType: "",
@ -170,6 +171,9 @@ export default {
},
mounted() {
this.ids=this.$store.state.user.agencyId
console.log(this.ids,"this.ids");
this.getTableData();
},
methods: {

15
src/views/modules/volunteer/VoluntaryOrganization/info.vue

@ -280,20 +280,7 @@
// },
async activityType() {
const url = "/actual/base/activityType/page"
let params = {
// agencyId: this.agencyId
pageSize: 20,
pageNo: 1,
typeName: "",
enabled: 1
}
const { data, code, msg } = await requestPost(url, params)
if (code === 0) {
this.typeList = data.list
} else {
this.$message.error(msg)
}
this.$nextTick(() => {
if (!map) {
this.initMap(this.formData.latitude, this.formData.longitude);

21
src/views/modules/volunteer/VoluntaryOrganization/process.vue

@ -1,5 +1,5 @@
<template>
<div style="height: 600px; overflow-y: scroll;" >
<div style="height: 600px; overflow-y: scroll;">
<div style="display: flex;white-space: nowrap; padding: 30px;">
<el-form style="padding-left: 150px;">
<el-form-item label="组织名称">
@ -34,16 +34,19 @@
{{ tableData.introduction}}
</el-form-item>
<el-form-item label="附件">
<div class="demo-image__preview">
<img v-if="tableData.qualification" style="width: 100px; height: 100px" :src="tableData.qualification">
<div class="demo-image__preview" v-if="tableData.qualification" >
<el-image style="width: 100px; height: 100px" :src="tableData.qualification" :preview-src-list="tableData.qualificationList">
</el-image>
</img>
</div>
<!-- {{ tableData.address}} -->
</el-form-item>
<el-form-item label="组织介绍图" v-if="tableData.orgImage">
<div class="demo-image__preview">
<img v-if="tableData.orgImage" style="width: 100px; height: 100px" :src="tableData.orgImage">
</img>
<el-image style="width: 100px; height: 100px" :src="tableData.orgImage" :preview-src-list="[tableData.orgImage]">
</el-image>
<!-- <img v-if="tableData.orgImage" style="width: 100px; height: 100px" :src="[tableData.orgImage]"> -->
</img>
</div>
<!-- {{ tableData.address}} -->
</el-form-item>
@ -56,11 +59,11 @@
<el-form-item label="品牌展示图" v-if="tableData.brandImg">
<div class="demo-image__preview">
<img v-if="tableData.brandImg" style="width: 100px; height: 100px" :src="tableData.brandImg">
</img>
</img>
</div>
<!-- {{ tableData.address}} -->
</el-form-item>
<el-form-item label="审核结果" >
<el-form-item label="审核结果">
<!-- <div style="display: flex; justify-items:center; align-items: center;">
<el-radio v-model="status1" label="pass" style="margin-right:20px">通过</el-radio>
<div class="flex flex-x flex-center2">
@ -81,8 +84,8 @@
</el-form-item>
<el-form-item label="原因" v-if="findingsofaudit == 'notPass'">
<el-input v-if="findingsofaudit == 'notPass'" v-model="reason" style="width: 200px;"
placeholder="请说明原因"></el-input>
<el-input v-if="findingsofaudit == 'notPass'" v-model="reason" style="width: 200px;"
placeholder="请说明原因"></el-input>
</el-form-item>
</el-form>

41
src/views/modules/volunteer/VolunteerProjects/index.vue

@ -211,20 +211,33 @@ export default {
this.showrecord=false
},
//
handledelete(row){
let url="/voluntary/project/admin/delete"
let params={
id:row.id
}
requestPost(url,params).then((res)=>{
if(res.code==0){
this.$message.success("删除成功")
this.getTableData()
}else{
this.$message.error(res.msg)
}
})
},
handledelete(row) {
this.$confirm('此操作将永久删除该记录, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
let url = "/voluntary/project/admin/delete"
let params = {
id: row.id
}
requestPost(url, params).then((res) => {
if (res.code == 0) {
this.$message.success("删除成功")
this.getTableData()
} else {
this.$message.error(res.msg)
}
})
}).catch(() => {
this.$message({
type: 'info',
message: '已取消删除'
});
})
},
//线
handleupOnline(row){
console.log(row,"row");

38
src/views/modules/volunteer/activityArchive/index.vue

@ -301,18 +301,32 @@
this.handledelete(row);
}
},
handledelete(row){
console.log(row,"删除活动");
let url=`/voluntary/activityInfo/delete/${row.id}`
requestGet(url).then((res)=>{
if(res.code==0){
this.$message.success("删除成功")
this.getTableData()
}else{
this.$message.error(res.msg)
}
})
},
handledelete(row) {
this.$confirm('此操作将永久删除该记录, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
console.log(row, "删除活动");
let url = `/voluntary/activityInfo/delete/${row.id}`
requestGet(url).then((res) => {
if (res.code == 0) {
this.$message.success("删除成功")
this.getTableData()
} else {
this.$message.error(res.msg)
}
})
}).catch(() => {
this.$message({
type: 'info',
message: '已取消删除'
});
})
},
//
handleCurrentChange(val) {
console.log(`当前页: ${val}`);

Loading…
Cancel
Save