Browse Source

房屋管理bug

feature
jiangyuying 2 years ago
parent
commit
969c5dcc7d
  1. 48
      src/views/modules/base/community/community.vue
  2. 200
      src/views/modules/base/community/communityExportInfo.vue
  3. 2
      src/views/modules/base/community/roomTable.vue

48
src/views/modules/base/community/community.vue

@ -649,14 +649,12 @@ export default {
}, },
handleSearch () { handleSearch () {
// if (this.ownerName || this.ownerPhone || this.rentFlag || this.purpose || this.remark) { console.log(this.selTreeObj)
this.showRoomTable = true; this.showRoomTable = true;
this.$nextTick(() => { this.$nextTick(() => {
this.$refs["ref_buildingTable"].loadTable("search", this.selTreeObj); this.$refs["ref_buildingTable"].loadTable("search", this.selTreeObj);
}); });
// } else {
// this.$message.warning('')
// }
}, },
// //
@ -700,6 +698,7 @@ export default {
this.treeData = []; this.treeData = [];
this.treeData.push(data); this.treeData.push(data);
// //
debugger
this.autoOpenArr.push(data.id) this.autoOpenArr.push(data.id)
if (!isRefresh && data) { if (!isRefresh && data) {
this.selTreeObj = data; this.selTreeObj = data;
@ -896,47 +895,6 @@ export default {
// //
getTreeObj (obj) { getTreeObj (obj) {
//
// idtype
// idtypeidid
// idtypeid
if (obj.level === "building") {
this.selTreeObj = obj;
//
// let neighborHoodNode = this.$refs.ref_tree.getNode(obj.pid); //
// let gridNode = this.$refs.ref_tree.getNode(neighborHoodNode.data.pid); //
// let agencyNode = this.$refs.ref_tree.getNode(gridNode.data.pid); //
// obj.agencyId = agencyNode.data.id;
// obj.agencyName = agencyNode.data.label;
// obj.gridId = gridNode.data.id;
// obj.gridName = gridNode.data.label;
// obj.neighborHoodId = neighborHoodNode.data.id;
// obj.neighborHoodName = neighborHoodNode.data.label;
// if (obj.agencyId === this.staffAgencyId) {
// this.showImportBtn = true;
// } else {
// this.showImportBtn = false;
// }
} else if (obj.level === "neighborHood") {
//
// let gridNode = this.$refs.ref_tree.getNode(obj.pid);
// let agencyNode = this.$refs.ref_tree.getNode(obj.agencyId);
// obj.gridId = gridNode.data.id;
// obj.gridName = gridNode.data.label;
// obj.agencyId = agencyNode.data.id;
// obj.agencyName = agencyNode.data.label;
// if (obj.agencyId === this.staffAgencyId) {
// this.showImportBtn = true;
// } else {
// this.showImportBtn = false;
// }
this.selTreeObj = obj;
} else {
}
if (!obj.latitude) { if (!obj.latitude) {
obj.latitude = this.centerPoint[0]; obj.latitude = this.centerPoint[0];
} }

200
src/views/modules/base/community/communityExportInfo.vue

@ -1,28 +1,24 @@
<template> <template>
<div v-if="list.length > 0" class="diy-container"> <div v-if="list.length > 0"
class="diy-container">
<el-tabs v-model="activeName"> <el-tabs v-model="activeName">
<el-tab-pane label="自定义模板" name="first"> <el-tab-pane label="自定义模板"
name="first">
<div class="diy-wr"> <div class="diy-wr">
<div class="left"> <div class="left">
<el-tabs <el-tabs v-model="leftActive"
v-model="leftActive"
tab-position="left" tab-position="left"
class="left-h" class="left-h"
@tab-click="handleTabsClick" @tab-click="handleTabsClick">
> <el-tab-pane v-for="item in leftList"
<el-tab-pane
v-for="item in leftList"
:key="item.id" :key="item.id"
:label="item.label" :label="item.label"
:name="item.id" :name="item.id">
>
<div class="pd10 check-boxwr scroll-h"> <div class="pd10 check-boxwr scroll-h">
<checkBox <checkBox v-if="item.queryItemList.length > 0"
v-if="item.queryItemList.length > 0"
:ref="'checkbox' + item.id" :ref="'checkbox' + item.id"
:list="item.queryItemList" :list="item.queryItemList"
@change="handleChangeBox" @change="handleChangeBox" />
/>
</div> </div>
</el-tab-pane> </el-tab-pane>
</el-tabs> </el-tabs>
@ -30,155 +26,116 @@
<div class="right"> <div class="right">
<div class="right-header"> <div class="right-header">
<div class="title">导出信息</div> <div class="title">导出信息</div>
<el-button plain @click="handlePreview('')" <el-button plain
>预览</el-button @click="handlePreview('')">预览</el-button>
>
</div> </div>
<div class="h80 scroll-h"> <div class="h80 scroll-h">
<el-collapse <el-collapse v-model="activeCollapse"
v-model="activeCollapse" id="collapsWr">
id="collapsWr" <el-collapse-item v-for="item in rightList"
>
<el-collapse-item
v-for="item in rightList"
:key="item.id" :key="item.id"
:title="item.label" :title="item.label"
:name="item.id" :name="item.id"
class="col-h" class="col-h">
> <dragItem :ref="'drag' + item.id"
<dragItem
:ref="'drag' + item.id"
:list="item.queryItemList" :list="item.queryItemList"
:id="item.id" :id="item.id"
@del="handleDelItem" @del="handleDelItem"
@drag="handleDrag($event, item)" @drag="handleDrag($event, item)"></dragItem>
></dragItem>
</el-collapse-item> </el-collapse-item>
</el-collapse> </el-collapse>
</div> </div>
</div> </div>
</div> </div>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="模板列表" name="second"> <el-tab-pane label="模板列表"
<el-table name="second">
:data="tableData" <el-table :data="tableData"
height="calc(80vh - 140px)" height="calc(80vh - 140px)"
style="width: 100%" style="width: 100%">
> <el-table-column type="index"
<el-table-column
type="index"
label="序号" label="序号"
align="center" align="center"
width="50" width="50">
>
</el-table-column> </el-table-column>
<el-table-column <el-table-column prop="name"
prop="name"
label="模板名称" label="模板名称"
align="center" align="center"
min-width="180" min-width="180">
>
</el-table-column> </el-table-column>
<el-table-column <el-table-column prop="createdBy"
prop="createdBy"
align="center" align="center"
label="创建者" label="创建者"
width="180" width="180">
>
</el-table-column> </el-table-column>
<el-table-column <el-table-column align="center"
align="center"
prop="createdTime" prop="createdTime"
label="创建时间" label="创建时间"
width="180" width="180">
>
</el-table-column> </el-table-column>
<el-table-column align="center" label="操作" width="160"> <el-table-column align="center"
label="操作"
width="160">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button v-if="scope.row.isSelf"
v-if="scope.row.isSelf"
type="text" type="text"
size="small" size="small"
class="div-table-button--delete" class="div-table-button--delete"
@click="handleDeltemplate(scope.row.id)" @click="handleDeltemplate(scope.row.id)">删除</el-button>
>删除</el-button <el-button type="text"
>
<el-button
type="text"
size="small" size="small"
class="div-table-button--detail" class="div-table-button--detail"
@click="handlePreview(scope.row.id)" @click="handlePreview(scope.row.id)">预览</el-button>
>预览</el-button <el-button type="text"
>
<el-button
type="text"
size="small" size="small"
class="div-table-button--edit" class="div-table-button--edit"
@click="handleExportTemplate(scope.row.id)" @click="handleExportTemplate(scope.row.id)">导出</el-button>
>导出</el-button
>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
</el-tab-pane> </el-tab-pane>
</el-tabs> </el-tabs>
<div v-if="activeName == 'first'" class="diy-footer"> <div v-if="activeName == 'first'"
class="diy-footer">
<div class="left"> <div class="left">
<div class="flex-div"> <div class="flex-div">
<div>模板名称</div> <div>模板名称</div>
<el-input <el-input v-model="form.name"
v-model="form.name"
maxlength="20" maxlength="20"
class="wd200 mr10" class="wd200 mr10" />
/>
<div>自定义表头</div> <div>自定义表头</div>
<el-input <el-input v-model="form.title"
v-model="form.title"
maxlength="20" maxlength="20"
class="wd200 mr10" class="wd200 mr10" />
/> <el-checkbox v-model="form.isSaveTemp">保存为常用模板</el-checkbox>
<el-checkbox v-model="form.isSaveTemp"
>保存为常用模板</el-checkbox
>
</div> </div>
</div> </div>
<el-button <el-button class="diy-button--delete"
class="diy-button--delete"
:loading="exportLoading" :loading="exportLoading"
@click="handleExport" @click="handleExport">导出</el-button>
>导出</el-button
>
</div> </div>
<el-dialog <el-dialog :visible.sync="diyDialog"
:visible.sync="diyDialog"
:close-on-click-modal="false" :close-on-click-modal="false"
:close-on-press-escape="false" :close-on-press-escape="false"
width="1150px" width="1150px"
append-to-body append-to-body
top="5vh" top="5vh"
class="dialog-h" class="dialog-h"
@close="handleClose" @close="handleClose">
>
<div style="padding: 20px"> <div style="padding: 20px">
<el-table <el-table :data="tableData"
:data="tableData"
height="calc(80vh - 140px)" height="calc(80vh - 140px)"
style="width: 100%" style="width: 100%">
> <el-table-column v-for="(item, index) in previewList"
<el-table-column
v-for="(item, index) in previewList"
:label="item.label" :label="item.label"
:key="index" :key="index"
align="center" align="center"
min-width="120" min-width="120">
> <el-table-column v-for="(n, i) in item.children"
<el-table-column
v-for="(n, i) in item.children"
:label="n.label" :label="n.label"
:key="i" :key="i"
align="center" align="center"
min-width="120" min-width="120">
>
</el-table-column> </el-table-column>
</el-table-column> </el-table-column>
</el-table> </el-table>
@ -201,14 +158,14 @@ export default {
}, },
search: { search: {
type: Object, type: Object,
default: () => {}, default: () => { },
}, },
}, },
components: { components: {
checkBox, checkBox,
dragItem, dragItem,
}, },
data() { data () {
return { return {
exportLoading: false, exportLoading: false,
activeCollapse: ["1"], activeCollapse: ["1"],
@ -227,7 +184,7 @@ export default {
diyDialog: false, diyDialog: false,
}; };
}, },
async created() { async created () {
this.list.forEach((item) => { this.list.forEach((item) => {
this.$set(this.info, item.id, []); this.$set(this.info, item.id, []);
}); });
@ -241,7 +198,7 @@ export default {
}, },
watch: { watch: {
rightList: { rightList: {
handler(val) { handler (val) {
if (val.length > 0) this.dragSort(); if (val.length > 0) this.dragSort();
}, },
deep: true, deep: true,
@ -258,7 +215,7 @@ export default {
// }, // },
}, },
methods: { methods: {
handleChangeBox({ list, pid }) { handleChangeBox ({ list, pid }) {
console.log("ccccc----", list); console.log("ccccc----", list);
// if (list.length == 0) return // if (list.length == 0) return
let obj = {}; let obj = {};
@ -283,7 +240,7 @@ export default {
} }
this.activeCollapse = [...this.activeCollapse, pid]; this.activeCollapse = [...this.activeCollapse, pid];
}, },
handleTabsClick(val) { handleTabsClick (val) {
console.log("tabs-----", val); console.log("tabs-----", val);
this.leftList.forEach(async (item) => { this.leftList.forEach(async (item) => {
if (item.id == val.name) { if (item.id == val.name) {
@ -294,7 +251,7 @@ export default {
} }
}); });
}, },
handleDelItem(val) { handleDelItem (val) {
const { item, index } = val; const { item, index } = val;
console.log( console.log(
"item------", "item------",
@ -319,7 +276,7 @@ export default {
} }
}); });
}, },
dragSort() { dragSort () {
const el = document.getElementById("collapsWr"); const el = document.getElementById("collapsWr");
this.sortTable = Sortable.create(el, { this.sortTable = Sortable.create(el, {
group: "el-collapse-item", group: "el-collapse-item",
@ -333,19 +290,19 @@ export default {
}, },
}); });
}, },
handleDrag(val, item) { handleDrag (val, item) {
console.log("drag-----", val); console.log("drag-----", val);
console.log("drag-----", item); console.log("drag-----", item);
this.rightList.forEach((n, i) => { this.rightList.forEach((n, i) => {
if (item.id == n.id) n.queryItemList = [...val]; if (item.id == n.id) n.queryItemList = [...val];
}); });
}, },
handleClose() { handleClose () {
this.previewList = []; this.previewList = [];
this.diyDialog = false; this.diyDialog = false;
}, },
handleDeltemplate(id) { handleDeltemplate (id) {
this.$confirm("此操作将永久删除该文件, 是否继续?", "提示", { this.$confirm("此操作将永久删除该文件, 是否继续?", "提示", {
confirmButtonText: "确定", confirmButtonText: "确定",
cancelButtonText: "取消", cancelButtonText: "取消",
@ -361,7 +318,7 @@ export default {
}); });
}); });
}, },
handlePreview(id) { handlePreview (id) {
if (id) this.getPreview(id); if (id) this.getPreview(id);
else { else {
if (this.rightList.length == 0) if (this.rightList.length == 0)
@ -375,7 +332,7 @@ export default {
} }
this.diyDialog = true; this.diyDialog = true;
}, },
handleExport() { handleExport () {
if (this.rightList.length === 0) if (this.rightList.length === 0)
return this.$message.error("请选择导出信息"); return this.$message.error("请选择导出信息");
if (this.form.isSaveTemp && !this.form.name) if (this.form.isSaveTemp && !this.form.name)
@ -383,10 +340,10 @@ export default {
this.exportLoading = true; this.exportLoading = true;
this.exportTemplate(); this.exportTemplate();
}, },
handleExportTemplate(id) { handleExportTemplate (id) {
this.exportTemplate(id); this.exportTemplate(id);
}, },
async exportTemplate(id) { async exportTemplate (id) {
let url = "/actual/base/communityHouse/exportExcelCustom"; let url = "/actual/base/communityHouse/exportExcelCustom";
// return console.log(this.search); // return console.log(this.search);
@ -431,7 +388,7 @@ export default {
return this.$message.error("网络错误"); return this.$message.error("网络错误");
}); });
}, },
async getTemplateList() { async getTemplateList () {
let params = { let params = {
formCode: "community_info", formCode: "community_info",
}; };
@ -448,7 +405,7 @@ export default {
return this.$message.error("网络错误"); return this.$message.error("网络错误");
}); });
}, },
async getPreview(id) { async getPreview (id) {
let params = { let params = {
id: id || "", id: id || "",
}; };
@ -465,7 +422,7 @@ export default {
return this.$message.error("网络错误"); return this.$message.error("网络错误");
}); });
}, },
async delTemplate(id) { async delTemplate (id) {
let params = [id]; let params = [id];
await this.$http await this.$http
.post("/oper/customize/icExportTemplate/delete", params) .post("/oper/customize/icExportTemplate/delete", params)
@ -484,7 +441,7 @@ export default {
return this.$message.error("网络错误"); return this.$message.error("网络错误");
}); });
}, },
async getExportChildList(groupId) { async getExportChildList (groupId) {
const url = `/oper/customize/icformitem/getItemList/${groupId}`; const url = `/oper/customize/icformitem/getItemList/${groupId}`;
let params = {}; let params = {};
@ -765,7 +722,7 @@ export default {
// this.$message.error(msg) // this.$message.error(msg)
// } // }
}, },
formatData(res) { formatData (res) {
const fileReader = new FileReader(); const fileReader = new FileReader();
fileReader.onloadend = () => { fileReader.onloadend = () => {
try { try {
@ -782,7 +739,7 @@ export default {
}; };
fileReader.readAsText(res.data); fileReader.readAsText(res.data);
}, },
downloadFile(res) { downloadFile (res) {
if (res.headers["content-disposition"]) { if (res.headers["content-disposition"]) {
let fileName = window.decodeURI( let fileName = window.decodeURI(
res.headers["content-disposition"] res.headers["content-disposition"]
@ -854,7 +811,8 @@ export default {
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: space-between; justify-content: space-between;
margin-top: 10px; margin-top: 20px;
padding-bottom: 20px;
} }
.left-h { .left-h {
height: 100%; height: 100%;

2
src/views/modules/base/community/roomTable.vue

@ -479,7 +479,7 @@ export default {
async loadTable (source, treeObj) { async loadTable (source, treeObj) {
this.source = source; this.source = source;
this.tableLoading = true; this.tableLoading = true;
console.log(treeObj, 'see'); console.log(treeObj, source);
if (source === "tree") { if (source === "tree") {
//tree //tree
this.sortType = "asc"; this.sortType = "asc";

Loading…
Cancel
Save