|
@@ -1,14 +1,6 @@
|
|
|
<template>
|
|
|
<div class="app-container">
|
|
|
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
|
|
|
- <el-form-item label="用户Id" prop="userId">
|
|
|
- <el-input
|
|
|
- v-model="queryParams.userId"
|
|
|
- placeholder="请输入用户Id"
|
|
|
- clearable
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
- />
|
|
|
- </el-form-item>
|
|
|
<el-form-item label="姓名" prop="name">
|
|
|
<el-input
|
|
|
v-model="queryParams.name"
|
|
@@ -17,30 +9,6 @@
|
|
|
@keyup.enter.native="handleQuery"
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="工作单位" prop="workUnit">
|
|
|
- <el-input
|
|
|
- v-model="queryParams.workUnit"
|
|
|
- placeholder="请输入工作单位"
|
|
|
- clearable
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
- />
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="报道位置" prop="reportLocation">
|
|
|
- <el-input
|
|
|
- v-model="queryParams.reportLocation"
|
|
|
- placeholder="请输入报道位置"
|
|
|
- clearable
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
- />
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="居住地" prop="residence">
|
|
|
- <el-input
|
|
|
- v-model="queryParams.residence"
|
|
|
- placeholder="请输入居住地"
|
|
|
- clearable
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
- />
|
|
|
- </el-form-item>
|
|
|
<el-form-item label="联系方式" prop="phone">
|
|
|
<el-input
|
|
|
v-model="queryParams.phone"
|
|
@@ -49,70 +17,13 @@
|
|
|
@keyup.enter.native="handleQuery"
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="影像资料" prop="videoPath">
|
|
|
- <el-input
|
|
|
- v-model="queryParams.videoPath"
|
|
|
- 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
|
|
|
- type="primary"
|
|
|
- plain
|
|
|
- icon="el-icon-plus"
|
|
|
- size="mini"
|
|
|
- @click="handleAdd"
|
|
|
- v-hasPermi="['community:dangyuan:add']"
|
|
|
- >新增</el-button>
|
|
|
- </el-col>
|
|
|
- <el-col :span="1.5">
|
|
|
- <el-button
|
|
|
- type="success"
|
|
|
- plain
|
|
|
- icon="el-icon-edit"
|
|
|
- size="mini"
|
|
|
- :disabled="single"
|
|
|
- @click="handleUpdate"
|
|
|
- v-hasPermi="['community:dangyuan:edit']"
|
|
|
- >修改</el-button>
|
|
|
- </el-col>
|
|
|
- <el-col :span="1.5">
|
|
|
- <el-button
|
|
|
- type="danger"
|
|
|
- plain
|
|
|
- icon="el-icon-delete"
|
|
|
- size="mini"
|
|
|
- :disabled="multiple"
|
|
|
- @click="handleDelete"
|
|
|
- v-hasPermi="['community:dangyuan:remove']"
|
|
|
- >删除</el-button>
|
|
|
- </el-col>
|
|
|
- <el-col :span="1.5">
|
|
|
- <el-button
|
|
|
- type="warning"
|
|
|
- plain
|
|
|
- icon="el-icon-download"
|
|
|
- size="mini"
|
|
|
- @click="handleExport"
|
|
|
- v-hasPermi="['community:dangyuan:export']"
|
|
|
- >导出</el-button>
|
|
|
- </el-col>
|
|
|
- <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
|
|
- </el-row>
|
|
|
-
|
|
|
- <el-table v-loading="loading" :data="dangyuanList" @selection-change="handleSelectionChange">
|
|
|
- <el-table-column type="selection" width="55" align="center" />
|
|
|
- <el-table-column label="党员Id" align="center" prop="dangyuanId" />
|
|
|
- <el-table-column label="用户Id" align="center" prop="userId" />
|
|
|
+ <el-table v-loading="loading" :data="dangyuanList">
|
|
|
<el-table-column label="姓名" align="center" prop="name" />
|
|
|
<el-table-column label="性别" align="center" prop="sex" />
|
|
|
<el-table-column label="工作单位" align="center" prop="workUnit" />
|
|
@@ -120,9 +31,6 @@
|
|
|
<el-table-column label="报道类别" align="center" prop="reportType" />
|
|
|
<el-table-column label="居住地" align="center" prop="residence" />
|
|
|
<el-table-column label="联系方式" align="center" prop="phone" />
|
|
|
- <el-table-column label="服务内容" align="center" prop="content" />
|
|
|
- <el-table-column label="影像资料" align="center" prop="videoPath" />
|
|
|
- <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
|
|
@@ -131,7 +39,7 @@
|
|
|
icon="el-icon-edit"
|
|
|
@click="handleUpdate(scope.row)"
|
|
|
v-hasPermi="['community:dangyuan:edit']"
|
|
|
- >修改</el-button>
|
|
|
+ >详情</el-button>
|
|
|
<el-button
|
|
|
size="mini"
|
|
|
type="text"
|
|
@@ -152,38 +60,42 @@
|
|
|
/>
|
|
|
|
|
|
<!-- 添加或修改党员报道对话框 -->
|
|
|
- <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
|
|
|
+ <el-dialog :title="title" :visible.sync="open" width="800px" append-to-body>
|
|
|
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
|
|
|
- <el-form-item label="用户Id" prop="userId">
|
|
|
- <el-input v-model="form.userId" placeholder="请输入用户Id" />
|
|
|
- </el-form-item>
|
|
|
<el-form-item label="姓名" prop="name">
|
|
|
- <el-input v-model="form.name" placeholder="请输入姓名" />
|
|
|
+ <el-input disabled v-model="form.name" placeholder="请输入姓名" />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="性别" prop="sex">
|
|
|
+ <el-input disabled v-model="form.sex" placeholder="请输入性别" />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="工作单位" prop="workUnit">
|
|
|
- <el-input v-model="form.workUnit" placeholder="请输入工作单位" />
|
|
|
+ <el-input disabled v-model="form.workUnit" placeholder="请输入工作单位" />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="报道位置" prop="reportLocation">
|
|
|
- <el-input v-model="form.reportLocation" placeholder="请输入报道位置" />
|
|
|
+ <el-input disabled v-model="form.reportLocation" placeholder="请输入报道位置" />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="报道类别" prop="reportType">
|
|
|
+ <el-input disabled v-model="form.reportType" placeholder="请输入报道位置" />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="居住地" prop="residence">
|
|
|
- <el-input v-model="form.residence" placeholder="请输入居住地" />
|
|
|
+ <el-input disabled v-model="form.residence" placeholder="请输入居住地" />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="联系方式" prop="phone">
|
|
|
- <el-input v-model="form.phone" placeholder="请输入联系方式" />
|
|
|
+ <el-input disabled v-model="form.phone" placeholder="请输入联系方式" />
|
|
|
</el-form-item>
|
|
|
<el-form-item label="服务内容">
|
|
|
- <editor v-model="form.content" :min-height="192"/>
|
|
|
+ <el-input disabled type="textarea" v-model="form.content"></el-input>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="影像资料" prop="videoPath">
|
|
|
- <el-input v-model="form.videoPath" placeholder="请输入影像资料" />
|
|
|
+ <video width="300" height="150" controls>
|
|
|
+ <source :src="form.videoPath" type="video/mp4">
|
|
|
+ </video>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="备注" prop="remark">
|
|
|
- <el-input v-model="form.remark" placeholder="请输入备注" />
|
|
|
+ <el-input disabled v-model="form.remark" 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>
|
|
@@ -195,6 +107,7 @@ import { listDangyuan, getDangyuan, delDangyuan, addDangyuan, updateDangyuan } f
|
|
|
|
|
|
export default {
|
|
|
name: "Dangyuan",
|
|
|
+ dicts: ['baodao_type'],
|
|
|
data() {
|
|
|
return {
|
|
|
// 遮罩层
|
|
@@ -233,11 +146,7 @@ export default {
|
|
|
// 表单参数
|
|
|
form: {},
|
|
|
// 表单校验
|
|
|
- rules: {
|
|
|
- userId: [
|
|
|
- { required: true, message: "用户Id不能为空", trigger: "blur" }
|
|
|
- ],
|
|
|
- }
|
|
|
+ rules: {}
|
|
|
};
|
|
|
},
|
|
|
created() {
|
|
@@ -248,7 +157,12 @@ export default {
|
|
|
getList() {
|
|
|
this.loading = true;
|
|
|
listDangyuan(this.queryParams).then(response => {
|
|
|
- this.dangyuanList = response.rows;
|
|
|
+ this.dangyuanList = response.rows.map(e => {
|
|
|
+ const data = this.dict.type.baodao_type.find(j => j.value == e.reportType);
|
|
|
+ e.reportType = data.label;
|
|
|
+ e.sex = e.sex == '1' ? '男' : '女';
|
|
|
+ return e;
|
|
|
+ });
|
|
|
this.total = response.total;
|
|
|
this.loading = false;
|
|
|
});
|
|
@@ -288,64 +202,27 @@ export default {
|
|
|
this.resetForm("queryForm");
|
|
|
this.handleQuery();
|
|
|
},
|
|
|
- // 多选框选中数据
|
|
|
- handleSelectionChange(selection) {
|
|
|
- this.ids = selection.map(item => item.dangyuanId)
|
|
|
- this.single = selection.length!==1
|
|
|
- this.multiple = !selection.length
|
|
|
- },
|
|
|
- /** 新增按钮操作 */
|
|
|
- handleAdd() {
|
|
|
- this.reset();
|
|
|
- this.open = true;
|
|
|
- this.title = "添加党员报道";
|
|
|
- },
|
|
|
/** 修改按钮操作 */
|
|
|
handleUpdate(row) {
|
|
|
this.reset();
|
|
|
const dangyuanId = row.dangyuanId || this.ids
|
|
|
getDangyuan(dangyuanId).then(response => {
|
|
|
- this.form = response.data;
|
|
|
+ const data = this.dict.type.baodao_type.find(j => j.value == response.data.reportType);
|
|
|
+ this.form = { ...response.data, reportType: data.label, sex: response.data.sex == 1 ? '男' : '女' };
|
|
|
this.open = true;
|
|
|
- this.title = "修改党员报道";
|
|
|
- });
|
|
|
- },
|
|
|
- /** 提交按钮 */
|
|
|
- submitForm() {
|
|
|
- this.$refs["form"].validate(valid => {
|
|
|
- if (valid) {
|
|
|
- if (this.form.dangyuanId != null) {
|
|
|
- updateDangyuan(this.form).then(response => {
|
|
|
- this.$modal.msgSuccess("修改成功");
|
|
|
- this.open = false;
|
|
|
- this.getList();
|
|
|
- });
|
|
|
- } else {
|
|
|
- addDangyuan(this.form).then(response => {
|
|
|
- this.$modal.msgSuccess("新增成功");
|
|
|
- this.open = false;
|
|
|
- this.getList();
|
|
|
- });
|
|
|
- }
|
|
|
- }
|
|
|
+ this.title = "党员报道详情";
|
|
|
});
|
|
|
},
|
|
|
/** 删除按钮操作 */
|
|
|
handleDelete(row) {
|
|
|
const dangyuanIds = row.dangyuanId || this.ids;
|
|
|
- this.$modal.confirm('是否确认删除党员报道编号为"' + dangyuanIds + '"的数据项?').then(function() {
|
|
|
+ this.$modal.confirm('是否确认删除党员报道名称为"' + row.name + '"的数据项?').then(function() {
|
|
|
return delDangyuan(dangyuanIds);
|
|
|
}).then(() => {
|
|
|
this.getList();
|
|
|
this.$modal.msgSuccess("删除成功");
|
|
|
}).catch(() => {});
|
|
|
},
|
|
|
- /** 导出按钮操作 */
|
|
|
- handleExport() {
|
|
|
- this.download('community/dangyuan/export', {
|
|
|
- ...this.queryParams
|
|
|
- }, `dangyuan_${new Date().getTime()}.xlsx`)
|
|
|
- }
|
|
|
}
|
|
|
};
|
|
|
</script>
|