parent
fd24f914f7
commit
2c0bc99c03
@ -0,0 +1,51 @@ |
||||
/* |
||||
* @Author: riverQiu |
||||
* @Date: 2023-10-07 17:14:32 |
||||
* @LastEditors: riverQiu |
||||
* @LastEditTime: 2023-10-07 18:02:01 |
||||
* @Description:教练接口 |
||||
*/ |
||||
import request from '@/utils/request'; |
||||
|
||||
// 查询教练列表
|
||||
export function listCoach(query) { |
||||
return request({ |
||||
url: '/sch/coach/list', |
||||
method: 'get', |
||||
params: query |
||||
}); |
||||
} |
||||
|
||||
// 查询教练详细
|
||||
export function getCoach(coachId) { |
||||
return request({ |
||||
url: '/sch/coach/' + coachId, |
||||
method: 'get' |
||||
}); |
||||
} |
||||
|
||||
// 新增教练
|
||||
export function addCoach(data) { |
||||
return request({ |
||||
url: '/sch/coach', |
||||
method: 'post', |
||||
data: data |
||||
}); |
||||
} |
||||
|
||||
// 修改教练
|
||||
export function updateCoach(data) { |
||||
return request({ |
||||
url: '/sch/coach', |
||||
method: 'put', |
||||
data: data |
||||
}); |
||||
} |
||||
|
||||
// 删除教练
|
||||
export function delCoach(coachId) { |
||||
return request({ |
||||
url: '/sch/coach/' + coachId, |
||||
method: 'delete' |
||||
}); |
||||
} |
@ -0,0 +1,51 @@ |
||||
/* |
||||
* @Author: riverQiu |
||||
* @Date: 2023-10-07 17:14:38 |
||||
* @LastEditors: riverQiu |
||||
* @LastEditTime: 2023-10-07 17:14:44 |
||||
* @Description: 线索反馈接口 |
||||
*/ |
||||
import request from '@/utils/request'; |
||||
|
||||
// 查询线索反馈列表
|
||||
export function listFeedback(query) { |
||||
return request({ |
||||
url: '/zs/feedback/list', |
||||
method: 'get', |
||||
params: query |
||||
}); |
||||
} |
||||
|
||||
// 查询线索反馈详细
|
||||
export function getFeedback(feedbackId) { |
||||
return request({ |
||||
url: '/zs/feedback/' + feedbackId, |
||||
method: 'get' |
||||
}); |
||||
} |
||||
|
||||
// 新增线索反馈
|
||||
export function addFeedback(data) { |
||||
return request({ |
||||
url: '/zs/feedback', |
||||
method: 'post', |
||||
data: data |
||||
}); |
||||
} |
||||
|
||||
// 修改线索反馈
|
||||
export function updateFeedback(data) { |
||||
return request({ |
||||
url: '/zs/feedback', |
||||
method: 'put', |
||||
data: data |
||||
}); |
||||
} |
||||
|
||||
// 删除线索反馈
|
||||
export function delFeedback(feedbackId) { |
||||
return request({ |
||||
url: '/zs/feedback/' + feedbackId, |
||||
method: 'delete' |
||||
}); |
||||
} |
@ -0,0 +1,135 @@ |
||||
|
||||
<template> |
||||
<el-dialog title="教练信息" :close-on-click-modal="false" append-to-body :visible.sync="visible" width="600px" @close="closeDialog"> |
||||
<div> |
||||
<el-form ref="dialogForm" :model="dialogForm" :rules="dataRule" label-position="top" @keyup.enter.native="dialogFormSubmit()"> |
||||
<el-form-item label="所属驾校" prop="schoolId"> |
||||
<el-select v-model="dialogForm.schoolId" filterable placeholder="请选择" value-key="schoolId" clearable size="small" style="width:100%"> |
||||
<el-option v-for="(dict, index) in schoolOptions" :key="index" :label="dict.schoolName" :value="dict.schoolId" /> |
||||
</el-select> |
||||
</el-form-item> |
||||
<el-form-item label="所属场地" prop="placeId"> |
||||
<el-select v-model="dialogForm.placeId" filterable placeholder="请选择" clearable value-key="placeId" size="small" style="width:100%"> |
||||
<el-option v-for="(dict, index) in placeOptions.filter(item => item.schoolId === dialogForm.schoolId)" :key="index" :label="dict.name" :value="dict.placeId" /> |
||||
</el-select> |
||||
</el-form-item> |
||||
<el-form-item label="教练名" prop="coachName"> |
||||
<el-input v-model="dialogForm.coachName" placeholder="请输入教练名" /> |
||||
</el-form-item> |
||||
<el-form-item label="联系方式" prop="phone"> |
||||
<el-input v-model="dialogForm.phone" placeholder="请输入联系方式" /> |
||||
</el-form-item> |
||||
<el-form-item label="微信openid" prop="openId"> |
||||
<el-input v-model="dialogForm.openId" placeholder="请输入微信openid" /> |
||||
</el-form-item> |
||||
</el-form> |
||||
|
||||
</div> |
||||
<span slot="footer" class="dialog-footer"> |
||||
<el-button plain @click="(visible=false)">取消</el-button> |
||||
<el-button v-jclick type="primary" :disabled="!canSubmit" @click="dialogFormSubmit()">确定</el-button> |
||||
</span> |
||||
</el-dialog> |
||||
</template> |
||||
|
||||
<script> |
||||
import { addCoach, updateCoach } from '@/api/sch/coach'; |
||||
|
||||
export default { |
||||
props: { |
||||
schoolOptions: { |
||||
type: Array, |
||||
default: [] |
||||
}, |
||||
placeOptions: { |
||||
type: Array, |
||||
default: [] |
||||
} |
||||
}, |
||||
data () { |
||||
return { |
||||
visible: false, |
||||
canSubmit: true, |
||||
dialogForm: { |
||||
coachId: null, |
||||
deptId: null, |
||||
schoolId: null, |
||||
placeId: null, |
||||
coachName: null, |
||||
phone: null, |
||||
openId: null |
||||
}, |
||||
dataRule: { |
||||
schoolId: [{ required: true, message: '所属驾校不能为空', trigger: 'blur' }], |
||||
coachName: [{ required: true, message: '教练名不能为空', trigger: 'blur' }], |
||||
phone: [{ required: true, message: '联系方式不能为空', trigger: 'blur' }] |
||||
|
||||
} |
||||
}; |
||||
}, |
||||
methods: { |
||||
init (info = undefined) { |
||||
// debugger |
||||
this.visible = true; |
||||
this.$nextTick(() => { |
||||
this.resetDialogForm(); |
||||
this.$refs['dialogForm'].resetFields(); |
||||
if (info) { |
||||
this.dialogForm = this.deepClone(info); |
||||
} |
||||
}); |
||||
}, |
||||
resetDialogForm () { |
||||
this.dialogForm = { |
||||
coachId: null, |
||||
deptId: null, |
||||
schoolId: null, |
||||
placeId: null, |
||||
coachName: null, |
||||
phone: null, |
||||
openId: null |
||||
}; |
||||
}, |
||||
closeDialog () { |
||||
this.$emit('update:dialogVisible', false); |
||||
}, |
||||
// 表单提交 |
||||
dialogFormSubmit () { |
||||
this.$refs.dialogForm.validate((valid) => { |
||||
if (valid) { |
||||
this.canSubmit = false; |
||||
|
||||
if (this.dialogForm.coachId) { |
||||
// 校验完成,调接口 |
||||
updateCoach(this.dialogForm) |
||||
.then((resp) => { |
||||
this.canSubmit = true; |
||||
if (resp.code == 200) { |
||||
this.$message.success('保存成功'); |
||||
this.$emit('refreshDataList'); |
||||
this.visible = false; |
||||
} |
||||
}) |
||||
.catch(() => { |
||||
this.canSubmit = true; |
||||
}); |
||||
} else { |
||||
addCoach(this.dialogForm) |
||||
.then((resp) => { |
||||
this.canSubmit = true; |
||||
if (resp.code == 200) { |
||||
this.$message.success('保存成功'); |
||||
this.$emit('refreshDataList'); |
||||
this.visible = false; |
||||
} |
||||
}) |
||||
.catch(() => { |
||||
this.canSubmit = true; |
||||
}); |
||||
} |
||||
} |
||||
}); |
||||
} |
||||
} |
||||
}; |
||||
</script> |
@ -0,0 +1,159 @@ |
||||
<template> |
||||
<div class="app-container"> |
||||
<el-form v-show="showSearch" ref="queryForm" :model="queryParams" size="small" :inline="true" label-width="68px"> |
||||
<el-form-item label="所属驾校" prop="schoolId"> |
||||
<el-select v-model="queryParams.schoolId" filterable placeholder="请选择" value-key="schoolId" clearable size="small"> |
||||
<el-option v-for="(dict, index) in schoolOptions" :key="index" :label="dict.schoolName" :value="dict.schoolId" /> |
||||
</el-select> |
||||
</el-form-item> |
||||
<el-form-item label="所属场地" prop="placeId"> |
||||
<el-select v-model="queryParams.placeId" filterable placeholder="请选择" clearable value-key="placeId" size="small"> |
||||
<el-option v-for="(dict, index) in placeOptions.filter(item => item.schoolId === queryParams.schoolId)" :key="index" :label="dict.name" :value="dict.placeId" /> |
||||
</el-select> |
||||
</el-form-item> |
||||
<el-form-item label="教练名" prop="coachName"> |
||||
<el-input v-model="queryParams.coachName" placeholder="请输入教练名" clearable @keyup.enter.native="handleQuery" /> |
||||
</el-form-item> |
||||
<el-form-item label="联系方式" prop="phone"> |
||||
<el-input v-model="queryParams.phone" placeholder="请输入联系方式" clearable @keyup.enter.native="handleQuery" /> |
||||
</el-form-item> |
||||
<el-form-item> |
||||
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> |
||||
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> |
||||
</el-form-item> |
||||
</el-form> |
||||
|
||||
<el-row :gutter="10" class="mb8"> |
||||
<el-col :span="1.5"> |
||||
<el-button v-hasPermi="['sch:coach:add']" type="primary" plain icon="el-icon-plus" size="mini" @click="handleAddAndUpdate(undefined)">新增</el-button> |
||||
</el-col> |
||||
<right-toolbar :show-search.sync="showSearch" @queryTable="getList" /> |
||||
</el-row> |
||||
|
||||
<el-table v-loading="loading" :data="coachList"> |
||||
<el-table-column type="index" width="55" align="center" /> |
||||
<el-table-column label="所属驾校" align="center" prop="schoolName" /> |
||||
<el-table-column label="所属场地" align="center" prop="placeName" /> |
||||
<el-table-column label="教练名" align="center" prop="coachName" /> |
||||
<el-table-column label="联系方式" align="center" prop="phone" /> |
||||
<el-table-column label="微信openid" align="center" prop="openId" /> |
||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width"> |
||||
<template slot-scope="scope"> |
||||
<el-button v-hasPermi="['sch:coach:edit']" size="mini" type="text" icon="el-icon-edit" @click="handleAddAndUpdate(scope.row)">修改</el-button> |
||||
<el-button v-hasPermi="['sch:coach:remove']" size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)">删除</el-button> |
||||
</template> |
||||
</el-table-column> |
||||
</el-table> |
||||
|
||||
<pagination v-show="total>0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" @pagination="getList" /> |
||||
|
||||
<!-- 添加或修改教练对话框 --> |
||||
<coach-form v-if="dialogVisible" ref="dialogForm" :dialog-visible="dialogVisible" :school-options="schoolOptions" :place-options="placeOptions" @refreshDataList="getList" /> |
||||
</div> |
||||
</template> |
||||
|
||||
<script> |
||||
import { listCoach, getCoach, delCoach } from '@/api/sch/coach'; |
||||
import CoachForm from './components/CoachForm.vue'; |
||||
import schoolAPi from '@/api/sch/school'; |
||||
import { getAllPlaces } from '@/api/sch/place'; |
||||
|
||||
export default { |
||||
name: 'Coach', |
||||
components: { CoachForm }, |
||||
data () { |
||||
return { |
||||
// 遮罩层 |
||||
loading: true, |
||||
// 选中数组 |
||||
ids: [], |
||||
// 非单个禁用 |
||||
single: true, |
||||
// 非多个禁用 |
||||
multiple: true, |
||||
// 显示搜索条件 |
||||
showSearch: true, |
||||
// 总条数 |
||||
total: 0, |
||||
// 教练表格数据 |
||||
coachList: [], |
||||
// 查询参数 |
||||
queryParams: { |
||||
pageNum: 1, |
||||
pageSize: 10, |
||||
schoolId: null, |
||||
placeId: null, |
||||
coachName: null, |
||||
phone: null |
||||
}, |
||||
dialogVisible: false, |
||||
schoolOptions: [], |
||||
placeOptions: [] |
||||
}; |
||||
}, |
||||
created () { |
||||
this.getSchools(); |
||||
this.getPlaces(); |
||||
this.getList(); |
||||
}, |
||||
methods: { |
||||
/** 查询教练列表 */ |
||||
getList () { |
||||
this.loading = true; |
||||
listCoach(this.queryParams).then(response => { |
||||
this.coachList = response.rows; |
||||
this.total = response.total; |
||||
this.loading = false; |
||||
}); |
||||
}, |
||||
// 取消按钮 |
||||
cancel () { |
||||
this.open = false; |
||||
this.reset(); |
||||
}, |
||||
/** 搜索按钮操作 */ |
||||
handleQuery () { |
||||
this.queryParams.pageNum = 1; |
||||
this.getList(); |
||||
}, |
||||
/** 重置按钮操作 */ |
||||
resetQuery () { |
||||
this.resetForm('queryForm'); |
||||
this.handleQuery(); |
||||
}, |
||||
/** 新增或修改按钮操作 */ |
||||
handleAddAndUpdate (item) { |
||||
this.dialogVisible = true; |
||||
this.$nextTick(() => { |
||||
this.$refs.dialogForm.init(item); |
||||
}); |
||||
}, |
||||
/** 删除按钮操作 */ |
||||
handleDelete (row) { |
||||
const coachIds = row.coachId || this.ids; |
||||
this.$modal.confirm('是否确认删除教练编号为"' + coachIds + '"的数据项?').then(function () { |
||||
return delCoach(coachIds); |
||||
}).then(() => { |
||||
this.getList(); |
||||
this.$modal.msgSuccess('删除成功'); |
||||
}).catch(() => { }); |
||||
}, |
||||
/** 导出按钮操作 */ |
||||
handleExport () { |
||||
this.download('system/coach/export', { |
||||
...this.queryParams |
||||
}, `coach_${new Date().getTime()}.xlsx`); |
||||
}, |
||||
getSchools () { |
||||
schoolAPi.allList().then((resp) => { |
||||
this.schoolOptions = resp.data; |
||||
}); |
||||
}, |
||||
getPlaces () { |
||||
getAllPlaces({ status: '0', showInMap: true }).then((resp) => { |
||||
this.placeOptions = resp.data; |
||||
}); |
||||
} |
||||
} |
||||
}; |
||||
</script> |
@ -0,0 +1,253 @@ |
||||
<template> |
||||
<div class="app-container"> |
||||
<el-form v-show="showSearch" ref="queryForm" :model="queryParams" size="small" :inline="true" label-width="68px"> |
||||
<el-form-item label="线索id" prop="clueId"> |
||||
<el-input v-model="queryParams.clueId" placeholder="请输入线索id" clearable @keyup.enter.native="handleQuery" /> |
||||
</el-form-item> |
||||
<el-form-item label="教练id" prop="coachId"> |
||||
<el-input v-model="queryParams.coachId" placeholder="请输入教练id" clearable @keyup.enter.native="handleQuery" /> |
||||
</el-form-item> |
||||
<el-form-item label="反馈时间" prop="feedbackTime"> |
||||
<el-date-picker v-model="queryParams.feedbackTime" clearable type="date" value-format="yyyy-MM-dd" placeholder="请选择反馈时间" /> |
||||
</el-form-item> |
||||
<el-form-item label="是否联系" prop="isContact"> |
||||
<el-input v-model="queryParams.isContact" placeholder="请输入是否联系" clearable @keyup.enter.native="handleQuery" /> |
||||
</el-form-item> |
||||
<el-form-item label="到场时间" prop="arrivalTime"> |
||||
<el-date-picker v-model="queryParams.arrivalTime" clearable type="date" value-format="yyyy-MM-dd" placeholder="请选择到场时间" /> |
||||
</el-form-item> |
||||
<el-form-item> |
||||
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> |
||||
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> |
||||
</el-form-item> |
||||
</el-form> |
||||
|
||||
<el-row :gutter="10" class="mb8"> |
||||
<el-col :span="1.5"> |
||||
<el-button v-hasPermi="['system:feedback:add']" type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd">新增</el-button> |
||||
</el-col> |
||||
<el-col :span="1.5"> |
||||
<el-button v-hasPermi="['system:feedback:edit']" type="success" plain icon="el-icon-edit" size="mini" :disabled="single" @click="handleUpdate">修改</el-button> |
||||
</el-col> |
||||
<el-col :span="1.5"> |
||||
<el-button v-hasPermi="['system:feedback:remove']" type="danger" plain icon="el-icon-delete" size="mini" :disabled="multiple" @click="handleDelete">删除</el-button> |
||||
</el-col> |
||||
<el-col :span="1.5"> |
||||
<el-button v-hasPermi="['system:feedback:export']" type="warning" plain icon="el-icon-download" size="mini" @click="handleExport">导出</el-button> |
||||
</el-col> |
||||
<right-toolbar :show-search.sync="showSearch" @queryTable="getList" /> |
||||
</el-row> |
||||
|
||||
<el-table v-loading="loading" :data="feedbackList" @selection-change="handleSelectionChange"> |
||||
<el-table-column type="selection" width="55" align="center" /> |
||||
<el-table-column label="${comment}" align="center" prop="feedbackId" /> |
||||
<el-table-column label="线索id" align="center" prop="clueId" /> |
||||
<el-table-column label="反馈类型 1 跟进反馈 2 到场负反馈" align="center" prop="feedbackType" /> |
||||
<el-table-column label="教练id" align="center" prop="coachId" /> |
||||
<el-table-column label="反馈内容" align="center" prop="content" /> |
||||
<el-table-column label="反馈时间" align="center" prop="feedbackTime" width="180"> |
||||
<template slot-scope="scope"> |
||||
<span>{{ parseTime(scope.row.feedbackTime, '{y}-{m}-{d}') }}</span> |
||||
</template> |
||||
</el-table-column> |
||||
<el-table-column label="是否联系" align="center" prop="isContact" /> |
||||
<el-table-column label="到场时间" align="center" prop="arrivalTime" width="180"> |
||||
<template slot-scope="scope"> |
||||
<span>{{ parseTime(scope.row.arrivalTime, '{y}-{m}-{d}') }}</span> |
||||
</template> |
||||
</el-table-column> |
||||
<el-table-column label="到场状态" align="center" prop="arrivalStatus" /> |
||||
<el-table-column label="备注" align="center" prop="remark" /> |
||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width"> |
||||
<template slot-scope="scope"> |
||||
<el-button v-hasPermi="['system:feedback:edit']" size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)">修改</el-button> |
||||
<el-button v-hasPermi="['system:feedback:remove']" size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)">删除</el-button> |
||||
</template> |
||||
</el-table-column> |
||||
</el-table> |
||||
|
||||
<pagination v-show="total>0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" @pagination="getList" /> |
||||
|
||||
<!-- 添加或修改线索反馈对话框 --> |
||||
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body> |
||||
<el-form ref="form" :model="form" :rules="rules" label-width="80px"> |
||||
<el-form-item label="线索id" prop="clueId"> |
||||
<el-input v-model="form.clueId" placeholder="请输入线索id" /> |
||||
</el-form-item> |
||||
<el-form-item label="教练id" prop="coachId"> |
||||
<el-input v-model="form.coachId" placeholder="请输入教练id" /> |
||||
</el-form-item> |
||||
<el-form-item label="反馈内容"> |
||||
<editor v-model="form.content" :min-height="192" /> |
||||
</el-form-item> |
||||
<el-form-item label="反馈时间" prop="feedbackTime"> |
||||
<el-date-picker v-model="form.feedbackTime" clearable type="date" value-format="yyyy-MM-dd" placeholder="请选择反馈时间" /> |
||||
</el-form-item> |
||||
<el-form-item label="是否联系" prop="isContact"> |
||||
<el-input v-model="form.isContact" placeholder="请输入是否联系" /> |
||||
</el-form-item> |
||||
<el-form-item label="到场时间" prop="arrivalTime"> |
||||
<el-date-picker v-model="form.arrivalTime" clearable type="date" value-format="yyyy-MM-dd" placeholder="请选择到场时间" /> |
||||
</el-form-item> |
||||
<el-form-item label="备注" prop="remark"> |
||||
<el-input v-model="form.remark" type="textarea" placeholder="请输入内容" /> |
||||
</el-form-item> |
||||
</el-form> |
||||
<div slot="footer" class="dialog-footer"> |
||||
<el-button type="primary" @click="submitForm">确 定</el-button> |
||||
<el-button @click="cancel">取 消</el-button> |
||||
</div> |
||||
</el-dialog> |
||||
</div> |
||||
</template> |
||||
|
||||
<script> |
||||
import { listFeedback, getFeedback, delFeedback, addFeedback, updateFeedback } from '@/api/zs/feedback'; |
||||
|
||||
export default { |
||||
name: 'Feedback', |
||||
data () { |
||||
return { |
||||
// 遮罩层 |
||||
loading: true, |
||||
// 选中数组 |
||||
ids: [], |
||||
// 非单个禁用 |
||||
single: true, |
||||
// 非多个禁用 |
||||
multiple: true, |
||||
// 显示搜索条件 |
||||
showSearch: true, |
||||
// 总条数 |
||||
total: 0, |
||||
// 线索反馈表格数据 |
||||
feedbackList: [], |
||||
// 弹出层标题 |
||||
title: '', |
||||
// 是否显示弹出层 |
||||
open: false, |
||||
// 查询参数 |
||||
queryParams: { |
||||
pageNum: 1, |
||||
pageSize: 10, |
||||
clueId: null, |
||||
feedbackType: null, |
||||
coachId: null, |
||||
content: null, |
||||
feedbackTime: null, |
||||
isContact: null, |
||||
arrivalTime: null, |
||||
arrivalStatus: null |
||||
}, |
||||
// 表单参数 |
||||
form: {}, |
||||
// 表单校验 |
||||
rules: { |
||||
} |
||||
}; |
||||
}, |
||||
created () { |
||||
this.getList(); |
||||
}, |
||||
methods: { |
||||
/** 查询线索反馈列表 */ |
||||
getList () { |
||||
this.loading = true; |
||||
listFeedback(this.queryParams).then(response => { |
||||
this.feedbackList = response.rows; |
||||
this.total = response.total; |
||||
this.loading = false; |
||||
}); |
||||
}, |
||||
// 取消按钮 |
||||
cancel () { |
||||
this.open = false; |
||||
this.reset(); |
||||
}, |
||||
// 表单重置 |
||||
reset () { |
||||
this.form = { |
||||
feedbackId: null, |
||||
clueId: null, |
||||
feedbackType: null, |
||||
coachId: null, |
||||
content: null, |
||||
feedbackTime: null, |
||||
isContact: null, |
||||
arrivalTime: null, |
||||
arrivalStatus: 0, |
||||
remark: null |
||||
}; |
||||
this.resetForm('form'); |
||||
}, |
||||
/** 搜索按钮操作 */ |
||||
handleQuery () { |
||||
this.queryParams.pageNum = 1; |
||||
this.getList(); |
||||
}, |
||||
/** 重置按钮操作 */ |
||||
resetQuery () { |
||||
this.resetForm('queryForm'); |
||||
this.handleQuery(); |
||||
}, |
||||
// 多选框选中数据 |
||||
handleSelectionChange (selection) { |
||||
this.ids = selection.map(item => item.feedbackId); |
||||
this.single = selection.length !== 1; |
||||
this.multiple = !selection.length; |
||||
}, |
||||
/** 新增按钮操作 */ |
||||
handleAdd () { |
||||
this.reset(); |
||||
this.open = true; |
||||
this.title = '添加线索反馈'; |
||||
}, |
||||
/** 修改按钮操作 */ |
||||
handleUpdate (row) { |
||||
this.reset(); |
||||
const feedbackId = row.feedbackId || this.ids; |
||||
getFeedback(feedbackId).then(response => { |
||||
this.form = response.data; |
||||
this.open = true; |
||||
this.title = '修改线索反馈'; |
||||
}); |
||||
}, |
||||
/** 提交按钮 */ |
||||
submitForm () { |
||||
this.$refs['form'].validate(valid => { |
||||
if (valid) { |
||||
if (this.form.feedbackId != null) { |
||||
updateFeedback(this.form).then(response => { |
||||
this.$modal.msgSuccess('修改成功'); |
||||
this.open = false; |
||||
this.getList(); |
||||
}); |
||||
} else { |
||||
addFeedback(this.form).then(response => { |
||||
this.$modal.msgSuccess('新增成功'); |
||||
this.open = false; |
||||
this.getList(); |
||||
}); |
||||
} |
||||
} |
||||
}); |
||||
}, |
||||
/** 删除按钮操作 */ |
||||
handleDelete (row) { |
||||
const feedbackIds = row.feedbackId || this.ids; |
||||
this.$modal.confirm('是否确认删除线索反馈编号为"' + feedbackIds + '"的数据项?').then(function () { |
||||
return delFeedback(feedbackIds); |
||||
}).then(() => { |
||||
this.getList(); |
||||
this.$modal.msgSuccess('删除成功'); |
||||
}).catch(() => { }); |
||||
}, |
||||
/** 导出按钮操作 */ |
||||
handleExport () { |
||||
this.download('system/feedback/export', { |
||||
...this.queryParams |
||||
}, `feedback_${new Date().getTime()}.xlsx`); |
||||
} |
||||
} |
||||
}; |
||||
</script> |
Loading…
Reference in new issue