|
|
@ -1,149 +1,135 @@ |
|
|
|
<template> |
|
|
|
<div class="resi-container"> |
|
|
|
<el-card ref="searchCard" class="search-card"> |
|
|
|
<el-form |
|
|
|
ref="searchForm" |
|
|
|
:inline="true" |
|
|
|
:model="fmData" |
|
|
|
class="demo-form-inline" |
|
|
|
> |
|
|
|
<el-form-item label="组织名称" prop="organizationName"> |
|
|
|
<el-input |
|
|
|
v-model="fmData.organizationName" |
|
|
|
class="resi-cell-input" |
|
|
|
size="small" |
|
|
|
clearable |
|
|
|
placeholder="请输入" |
|
|
|
> |
|
|
|
<el-card ref="searchCard" |
|
|
|
class="search-card"> |
|
|
|
<el-form ref="searchForm" |
|
|
|
:inline="true" |
|
|
|
:model="fmData" |
|
|
|
class="demo-form-inline"> |
|
|
|
<el-form-item label="组织名称" |
|
|
|
prop="organizationName"> |
|
|
|
<el-input v-model="fmData.organizationName" |
|
|
|
class="resi-cell-input" |
|
|
|
size="small" |
|
|
|
clearable |
|
|
|
placeholder="请输入"> |
|
|
|
</el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="创建时间" prop="createTime"> |
|
|
|
<el-date-picker |
|
|
|
v-model="fmData.createTime" |
|
|
|
type="daterange" |
|
|
|
range-separator="至" |
|
|
|
start-placeholder="开始日期" |
|
|
|
end-placeholder="结束日期" |
|
|
|
value-format="yyyy-MM-dd" |
|
|
|
> |
|
|
|
<el-form-item label="创建时间" |
|
|
|
prop="createTime"> |
|
|
|
<el-date-picker v-model="fmData.createTime" |
|
|
|
type="daterange" |
|
|
|
range-separator="至" |
|
|
|
start-placeholder="开始日期" |
|
|
|
end-placeholder="结束日期" |
|
|
|
value-format="yyyy-MM-dd"> |
|
|
|
</el-date-picker> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="备注" prop="remark"> |
|
|
|
<el-input |
|
|
|
v-model="fmData.remark" |
|
|
|
class="resi-cell-input" |
|
|
|
size="small" |
|
|
|
clearable |
|
|
|
placeholder="请输入" |
|
|
|
> |
|
|
|
<el-form-item label="备注" |
|
|
|
prop="remark"> |
|
|
|
<el-input v-model="fmData.remark" |
|
|
|
class="resi-cell-input" |
|
|
|
size="small" |
|
|
|
clearable |
|
|
|
placeholder="请输入"> |
|
|
|
</el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item> |
|
|
|
<el-button |
|
|
|
class="diy-button--search" |
|
|
|
size="small" |
|
|
|
@click="handleSearch" |
|
|
|
>查询</el-button |
|
|
|
> |
|
|
|
<el-button |
|
|
|
class="diy-button--reset" |
|
|
|
size="small" |
|
|
|
@click="resetForm('searchForm')" |
|
|
|
>重置</el-button |
|
|
|
> |
|
|
|
<el-button class="diy-button--search" |
|
|
|
size="small" |
|
|
|
@click="handleSearch">查询</el-button> |
|
|
|
<el-button class="diy-button--reset" |
|
|
|
size="small" |
|
|
|
@click="resetForm('searchForm')">重置</el-button> |
|
|
|
</el-form-item> |
|
|
|
</el-form> |
|
|
|
</el-card> |
|
|
|
<el-card class="resi-card-table"> |
|
|
|
<div class="resi-row-btn"> |
|
|
|
<el-button class="diy-button--add" size="small" @click="handleAdd" |
|
|
|
>新增</el-button |
|
|
|
> |
|
|
|
<el-button |
|
|
|
class="diy-button--export" |
|
|
|
size="small" |
|
|
|
@click="handleExportModule('room')" |
|
|
|
>下载模板</el-button |
|
|
|
> |
|
|
|
<el-upload |
|
|
|
ref="upload" |
|
|
|
class="upload-btn" |
|
|
|
action="uploadUlr" |
|
|
|
:limit="1" |
|
|
|
:accept="'.xls,.xlsx'" |
|
|
|
:with-credentials="true" |
|
|
|
:show-file-list="false" |
|
|
|
:auto-upload="true" |
|
|
|
:on-progress="handleProgress" |
|
|
|
:on-success="handleExcelSuccess" |
|
|
|
:before-upload="beforeExcelUpload" |
|
|
|
:http-request="uploadHttpRequest" |
|
|
|
> |
|
|
|
<el-button |
|
|
|
size="small" |
|
|
|
class="diy-button--delete" |
|
|
|
:loading="importLoading" |
|
|
|
>{{ importBtnTitle }}</el-button |
|
|
|
> |
|
|
|
<el-button class="diy-button--add" |
|
|
|
size="small" |
|
|
|
@click="handleAdd">新增</el-button> |
|
|
|
<el-button class="diy-button--export" |
|
|
|
size="small" |
|
|
|
@click="handleExportModule('room')">下载模板</el-button> |
|
|
|
<el-upload ref="upload" |
|
|
|
class="upload-btn" |
|
|
|
action="uploadUlr" |
|
|
|
:limit="1" |
|
|
|
:accept="'.xls,.xlsx'" |
|
|
|
:with-credentials="true" |
|
|
|
:show-file-list="false" |
|
|
|
:auto-upload="true" |
|
|
|
:on-progress="handleProgress" |
|
|
|
:on-success="handleExcelSuccess" |
|
|
|
:before-upload="beforeExcelUpload" |
|
|
|
:http-request="uploadHttpRequest"> |
|
|
|
<el-button size="small" |
|
|
|
class="diy-button--delete" |
|
|
|
:loading="importLoading">{{ importBtnTitle }}</el-button> |
|
|
|
</el-upload> |
|
|
|
|
|
|
|
<el-button @click="handleChu" class="diy-button--reset" size="small" |
|
|
|
>导出</el-button |
|
|
|
> |
|
|
|
<el-button @click="handleChu" |
|
|
|
class="diy-button--reset" |
|
|
|
size="small">导出</el-button> |
|
|
|
</div> |
|
|
|
<el-table |
|
|
|
:data="tableData" |
|
|
|
border |
|
|
|
style="width: 100%" |
|
|
|
class="resi-table" |
|
|
|
:height="maxTableHeight" |
|
|
|
> |
|
|
|
<el-table-column label="序号" type="index" align="center" width="50" /> |
|
|
|
<el-table-column |
|
|
|
prop="organizationName" |
|
|
|
label="组织名称" |
|
|
|
align="center" |
|
|
|
> |
|
|
|
<el-table :data="tableData" |
|
|
|
border |
|
|
|
style="width: 100%" |
|
|
|
class="resi-table" |
|
|
|
:height="maxTableHeight"> |
|
|
|
<el-table-column label="序号" |
|
|
|
type="index" |
|
|
|
align="center" |
|
|
|
width="50" /> |
|
|
|
<el-table-column prop="organizationName" |
|
|
|
label="组织名称" |
|
|
|
align="center"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<a class="name-a" @click="handleWatch(scope.$index)"> |
|
|
|
<a class="name-a" |
|
|
|
@click="handleWatch(scope.$index)"> |
|
|
|
{{ scope.row.organizationName }} |
|
|
|
</a> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
prop="categoryName" |
|
|
|
align="center" |
|
|
|
label="分类名称" |
|
|
|
> |
|
|
|
<el-table-column prop="categoryName" |
|
|
|
align="center" |
|
|
|
label="分类名称"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
prop="organizationPersonCount" |
|
|
|
align="center" |
|
|
|
label="组织人数" |
|
|
|
> |
|
|
|
<el-table-column prop="organizationPersonCount" |
|
|
|
align="center" |
|
|
|
label="组织人数"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
prop="serviceItem" |
|
|
|
label="服务事项" |
|
|
|
align="center" |
|
|
|
:show-overflow-tooltip="true" |
|
|
|
> |
|
|
|
<el-table-column prop="serviceItem" |
|
|
|
label="服务事项" |
|
|
|
align="center" |
|
|
|
:show-overflow-tooltip="true"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="score" width="100" align="center" label="积分"> |
|
|
|
<el-table-column prop="score" |
|
|
|
width="100" |
|
|
|
align="center" |
|
|
|
label="积分"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="principalName" align="center" label="负责人"> |
|
|
|
<el-table-column prop="principalName" |
|
|
|
align="center" |
|
|
|
label="负责人"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="principalPhone" align="center" label="联系电话"> |
|
|
|
<el-table-column prop="principalPhone" |
|
|
|
align="center" |
|
|
|
label="联系电话"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="remark" align="center" label="备注"> |
|
|
|
<el-table-column prop="remark" |
|
|
|
align="center" |
|
|
|
label="备注"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
prop="organizationCreatedTime" |
|
|
|
align="center" |
|
|
|
label="创建时间" |
|
|
|
> |
|
|
|
<el-table-column prop="organizationCreatedTime" |
|
|
|
align="center" |
|
|
|
label="创建时间"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column fixed="right" label="操作" align="center" width="160"> |
|
|
|
<el-table-column fixed="right" |
|
|
|
label="操作" |
|
|
|
align="center" |
|
|
|
width="160"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<!-- <el-button |
|
|
|
@click="handleWatch(scope.$index)" |
|
|
@ -151,85 +137,64 @@ |
|
|
|
size="small" |
|
|
|
>查看</el-button |
|
|
|
> --> |
|
|
|
<el-button |
|
|
|
type="text" |
|
|
|
class="div-table-button--detail" |
|
|
|
size="small" |
|
|
|
@click="handleScore(scope.row)" |
|
|
|
>积分记录</el-button |
|
|
|
> |
|
|
|
|
|
|
|
<el-button |
|
|
|
@click="handleEdit(scope.$index)" |
|
|
|
type="text" |
|
|
|
size="small" |
|
|
|
class="div-table-button--edit" |
|
|
|
>修改</el-button |
|
|
|
> |
|
|
|
|
|
|
|
<el-popconfirm |
|
|
|
title="删除之后无法回复,确认删除?" |
|
|
|
@onConfirm="handleDel(scope.row, scope.$index)" |
|
|
|
@confirm="handleDel(scope.row, scope.$index)" |
|
|
|
> |
|
|
|
<el-button |
|
|
|
slot="reference" |
|
|
|
type="text" |
|
|
|
size="small" |
|
|
|
class="div-table-button--delete" |
|
|
|
style="margin-left: 10px" |
|
|
|
>删除</el-button |
|
|
|
> |
|
|
|
<el-button type="text" |
|
|
|
class="div-table-button--detail" |
|
|
|
size="small" |
|
|
|
@click="handleScore(scope.row)">积分记录</el-button> |
|
|
|
|
|
|
|
<el-button @click="handleEdit(scope.$index)" |
|
|
|
type="text" |
|
|
|
size="small" |
|
|
|
class="div-table-button--edit">修改</el-button> |
|
|
|
|
|
|
|
<el-popconfirm title="删除之后无法回复,确认删除?" |
|
|
|
@onConfirm="handleDel(scope.row, scope.$index)" |
|
|
|
@confirm="handleDel(scope.row, scope.$index)"> |
|
|
|
<el-button slot="reference" |
|
|
|
type="text" |
|
|
|
size="small" |
|
|
|
class="div-table-button--delete" |
|
|
|
style="margin-left: 10px">删除</el-button> |
|
|
|
</el-popconfirm> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
</el-table> |
|
|
|
<div> |
|
|
|
<el-pagination |
|
|
|
@size-change="handleSizeChange" |
|
|
|
@current-change="handleCurrentChange" |
|
|
|
:current-page.sync="pageNo" |
|
|
|
:page-sizes="[20, 50, 100, 200]" |
|
|
|
:page-size="parseInt(pageSize)" |
|
|
|
layout="sizes, prev, pager, next, total" |
|
|
|
:total="total" |
|
|
|
> |
|
|
|
<el-pagination @size-change="handleSizeChange" |
|
|
|
@current-change="handleCurrentChange" |
|
|
|
:current-page.sync="pageNo" |
|
|
|
:page-sizes="[20, 50, 100, 200]" |
|
|
|
:page-size="parseInt(pageSize)" |
|
|
|
layout="sizes, prev, pager, next, total" |
|
|
|
:total="total"> |
|
|
|
</el-pagination> |
|
|
|
</div> |
|
|
|
</el-card> |
|
|
|
|
|
|
|
<!-- 修改弹出框 --> |
|
|
|
<el-dialog |
|
|
|
:visible.sync="formShow" |
|
|
|
:close-on-click-modal="false" |
|
|
|
:close-on-press-escape="false" |
|
|
|
:title="formTitle" |
|
|
|
width="850px" |
|
|
|
top="5vh" |
|
|
|
class="dialog-h" |
|
|
|
@closed="handleClose" |
|
|
|
> |
|
|
|
<edit-form |
|
|
|
ref="eleEditForm" |
|
|
|
@dialogCancle="handleClose" |
|
|
|
@dialogOk="handleEditSuccess" |
|
|
|
></edit-form> |
|
|
|
<el-dialog :visible.sync="formShow" |
|
|
|
:close-on-click-modal="false" |
|
|
|
:close-on-press-escape="false" |
|
|
|
:title="formTitle" |
|
|
|
width="850px" |
|
|
|
top="5vh" |
|
|
|
class="dialog-h" |
|
|
|
@closed="handleClose"> |
|
|
|
<edit-form ref="eleEditForm" |
|
|
|
@dialogCancle="handleClose" |
|
|
|
@dialogOk="handleEditSuccess"></edit-form> |
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
<!-- 积分记录 --> |
|
|
|
<el-dialog |
|
|
|
:visible.sync="scoreDiaShow" |
|
|
|
:close-on-click-modal="false" |
|
|
|
:close-on-press-escape="false" |
|
|
|
:title="scoreDiaTitle" |
|
|
|
width="70%" |
|
|
|
top="5vh" |
|
|
|
@closed="diaClose" |
|
|
|
> |
|
|
|
<score-record |
|
|
|
ref="ref_score" |
|
|
|
:serviceType="'community_org'" |
|
|
|
></score-record> |
|
|
|
<el-dialog :visible.sync="scoreDiaShow" |
|
|
|
:close-on-click-modal="false" |
|
|
|
:close-on-press-escape="false" |
|
|
|
:title="scoreDiaTitle" |
|
|
|
width="70%" |
|
|
|
top="5vh" |
|
|
|
@closed="diaClose"> |
|
|
|
<score-record ref="ref_score" |
|
|
|
:serviceType="'community_org'"></score-record> |
|
|
|
</el-dialog> |
|
|
|
</div> |
|
|
|
</template> |
|
|
@ -244,7 +209,7 @@ import scoreRecord from "../../../components/scoreRecord.vue"; |
|
|
|
|
|
|
|
export default { |
|
|
|
components: { editForm, scoreRecord }, |
|
|
|
data() { |
|
|
|
data () { |
|
|
|
return { |
|
|
|
openSearch: false, |
|
|
|
|
|
|
@ -274,7 +239,7 @@ export default { |
|
|
|
}; |
|
|
|
}, |
|
|
|
computed: { |
|
|
|
maxTableHeight() { |
|
|
|
maxTableHeight () { |
|
|
|
return this.$store.state.inIframe |
|
|
|
? this.clientHeight - 360 + this.iframeHeigh |
|
|
|
: this.clientHeight - 360; |
|
|
@ -292,11 +257,11 @@ export default { |
|
|
|
} |
|
|
|
}, |
|
|
|
}, |
|
|
|
mounted() { |
|
|
|
mounted () { |
|
|
|
this.getTableData(); |
|
|
|
}, |
|
|
|
methods: { |
|
|
|
async handleExportModule() { |
|
|
|
async handleExportModule () { |
|
|
|
let url = "/heart/iccommunityselforganization/import-template-download"; |
|
|
|
|
|
|
|
let params = {}; |
|
|
@ -333,18 +298,18 @@ export default { |
|
|
|
}); |
|
|
|
}, |
|
|
|
// 上传大图标成功 |
|
|
|
handleExcelSuccess(res, file) { |
|
|
|
handleExcelSuccess (res, file) { |
|
|
|
if (res.code === 0 && res.msg === "success") { |
|
|
|
console.log("resss---ppp", res); |
|
|
|
} else { |
|
|
|
this.$message.error(res.msg); |
|
|
|
} |
|
|
|
}, |
|
|
|
handleProgress(event, file, fileList) { |
|
|
|
handleProgress (event, file, fileList) { |
|
|
|
console.log("percentage", file.percentage); |
|
|
|
}, |
|
|
|
|
|
|
|
beforeExcelUpload(file) { |
|
|
|
beforeExcelUpload (file) { |
|
|
|
console.log("file", file); |
|
|
|
const isType = file.type === "application/vnd.ms-excel"; |
|
|
|
const isTypeComputer = |
|
|
@ -361,7 +326,7 @@ export default { |
|
|
|
} |
|
|
|
return fileType && isLt1M; |
|
|
|
}, |
|
|
|
async uploadHttpRequest(file) { |
|
|
|
async uploadHttpRequest (file) { |
|
|
|
this.importLoading = true; |
|
|
|
this.importBtnTitle = "正在上传中..."; |
|
|
|
this.$message({ |
|
|
@ -416,38 +381,38 @@ export default { |
|
|
|
this.$refs.upload.clearFiles(); |
|
|
|
}, |
|
|
|
|
|
|
|
handleSizeChange(val) { |
|
|
|
handleSizeChange (val) { |
|
|
|
console.log(`每页 ${val} 条`); |
|
|
|
this.pageSize = val; |
|
|
|
window.localStorage.setItem("pageSize", val); |
|
|
|
this.getTableData(); |
|
|
|
}, |
|
|
|
handleCurrentChange(val) { |
|
|
|
handleCurrentChange (val) { |
|
|
|
console.log(`当前页: ${val}`); |
|
|
|
this.pageNo = val; |
|
|
|
this.getTableData(); |
|
|
|
}, |
|
|
|
|
|
|
|
handleClose() { |
|
|
|
handleClose () { |
|
|
|
this.formShow = false; |
|
|
|
}, |
|
|
|
handleSearch(val) { |
|
|
|
handleSearch (val) { |
|
|
|
console.log(this.fmData); |
|
|
|
this.pageNo = 1; |
|
|
|
this.getTableData(); |
|
|
|
}, |
|
|
|
resetForm(formName) { |
|
|
|
resetForm (formName) { |
|
|
|
this.$refs[formName].resetFields(); |
|
|
|
this.handleSearch(); |
|
|
|
}, |
|
|
|
async handleAdd() { |
|
|
|
async handleAdd () { |
|
|
|
this.formShow = true; |
|
|
|
await nextTick(); |
|
|
|
console.log(this.$refs); |
|
|
|
this.$refs.eleEditForm.initForm("add"); |
|
|
|
}, |
|
|
|
|
|
|
|
async handleChu() { |
|
|
|
async handleChu () { |
|
|
|
const url = |
|
|
|
"/heart/iccommunityselforganization/exportcommunityselforganization"; |
|
|
|
const { pageSize, pageNo, fmData } = this; |
|
|
@ -483,23 +448,23 @@ export default { |
|
|
|
}); |
|
|
|
}, |
|
|
|
|
|
|
|
async handleWatch(rowIndex) { |
|
|
|
async handleWatch (rowIndex) { |
|
|
|
this.formShow = true; |
|
|
|
await nextTick(); |
|
|
|
this.$refs.eleEditForm.initForm("detail", this.tableData[rowIndex]); |
|
|
|
}, |
|
|
|
|
|
|
|
async handleEdit(rowIndex) { |
|
|
|
async handleEdit (rowIndex) { |
|
|
|
this.formShow = true; |
|
|
|
await nextTick(); |
|
|
|
this.$refs.eleEditForm.initForm("edit", this.tableData[rowIndex]); |
|
|
|
}, |
|
|
|
handleEditSuccess() { |
|
|
|
handleEditSuccess () { |
|
|
|
this.handleClose(); |
|
|
|
this.getTableData(); |
|
|
|
}, |
|
|
|
|
|
|
|
async handleDel(rowData, rowIndex) { |
|
|
|
async handleDel (rowData, rowIndex) { |
|
|
|
console.log(rowData, rowIndex); |
|
|
|
const url = |
|
|
|
"/heart/iccommunityselforganization/delcommunityselforganization"; |
|
|
@ -513,11 +478,12 @@ export default { |
|
|
|
this.$message.success("删除成功!"); |
|
|
|
this.getTableData(); |
|
|
|
} else { |
|
|
|
this.$message.success("操作失败!"); |
|
|
|
this.$message.error(msg) |
|
|
|
// this.$message.success("操作失败!"); |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
async getTableData() { |
|
|
|
async getTableData () { |
|
|
|
const url = |
|
|
|
"/heart/iccommunityselforganization/communityselforganizationlist"; |
|
|
|
const { pageSize, pageNo, fmData } = this; |
|
|
@ -531,22 +497,23 @@ export default { |
|
|
|
this.total = data.total || 0; |
|
|
|
this.tableData = data.list |
|
|
|
? data.list.map((item) => { |
|
|
|
return item; |
|
|
|
}) |
|
|
|
return item; |
|
|
|
}) |
|
|
|
: []; |
|
|
|
} else { |
|
|
|
this.$message.error(msg) |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
//积分记录 |
|
|
|
handleScore(row) { |
|
|
|
handleScore (row) { |
|
|
|
this.scoreDiaShow = true; |
|
|
|
this.$nextTick(() => { |
|
|
|
this.$refs.ref_score.initForm(row.orgId); |
|
|
|
}); |
|
|
|
}, |
|
|
|
|
|
|
|
diaClose() { |
|
|
|
diaClose () { |
|
|
|
this.scoreDiaShow = false; |
|
|
|
}, |
|
|
|
}, |
|
|
|