Browse Source

111

shibei_master
jiangyy 3 years ago
parent
commit
31f0b1fdda
  1. 52
      src/views/modules/base/community/buildTable.vue
  2. 85
      src/views/modules/base/community/roomTable.vue

52
src/views/modules/base/community/buildTable.vue

@ -59,7 +59,7 @@
:data="tableData"
:header-cell-style="{background:'#2195FE',color:'#FFFFFF'}"
border
@sort-change="handleSortChange"
@sort-change="handleSortOrderChange"
:height="tableHeight"
v-loading="tableLoading"
style="width: 100%"
@ -85,7 +85,7 @@
</el-table-column>
<el-table-column prop="buildingType"
label="楼栋类型"
min-width="140">
min-width="110">
</el-table-column>
<el-table-column prop="buildingLeaderName"
label="楼长姓名"
@ -109,17 +109,18 @@
</el-table-column>
<el-table-column prop="sort"
sortable="custom"
min-width="120"
min-width="140"
label="序号">
<template slot-scope="scope">
<div @click="handleEditSort(scope.row)">
<span v-if="!scope.row.isChange">{{scope.row.sort}}</span>
<el-input-number v-else
@blur="onInputBlur(scope.row)"
@change="handleChangeSort(scope.row)"
v-model="scope.row.sort"
class="item_width_4"
:precision="2"
:min="1"
:max="99"
:max="9999"
label="描述文字"></el-input-number>
</div>
@ -199,6 +200,7 @@ export default {
total: 0,
pageSize: 20,
pageNo: 0,
sortType: 'asc',//ascdesc
tableLoading: true,
tableData: [],
@ -231,9 +233,15 @@ export default {
},
methods: {
handleSortChange () {
handleSortOrderChange (value) {
console.log(value.column, value.prop, value.order)
this.sortType = value.order === 'ascending' ? 'asc' : 'desc'
this.loadTable()
},
// handleChangeSort(row){
// },
handleEditSort (row) {
if (!row.isChange) {
@ -242,10 +250,32 @@ export default {
},
onInputBlur (row) {
row.isChange = false
async handleChangeSort (row, index) {
// row.isChange = false
console.log(row.sort)
let params = {
id: row.buildingId,
sort: row.sort,
type: 'building',
}
let url = '/gov/org/house/update-sort'
const { data, code, msg } = await requestPost(url, params)
if (code === 0) {
this.$message({
type: 'success',
message: '操作成功'
})
} else {
this.$message.error(msg)
}
},
@ -262,6 +292,7 @@ export default {
async loadTable (fromTree, treeObj) {
this.tableLoading = true
if (fromTree) {
this.sortType = 'asc'
this.agencyObj = treeObj
@ -278,7 +309,7 @@ export default {
let params = {
pageSize: this.pageSize,
pageNo: this.pageNo,
sortType: this.sortType,
neighborHoodId: this.agencyObj.id
}
@ -288,6 +319,7 @@ export default {
this.validTableDataNum = 0
this.total = data.total
data.list.forEach(item => {
item.sort = item.sort.toFixed(2)
item.isChange = false
if (item.agencyId === this.staffAgencyId) {
item.showBtn = true
@ -688,7 +720,7 @@ export default {
@import "@/assets/scss/modules/visual/communityManage.scss";
.item_width_4 {
width: 100px;
width: 120px;
}
/deep/.el-input-number--medium .el-input-number__decrease,

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

@ -42,6 +42,7 @@
:data="tableData"
:header-cell-style="{background:'#2195FE',color:'#FFFFFF'}"
v-loading="tableLoading"
@sort-change="handleSortOrderChange"
border
:height="tableHeight"
style="width: 100%"
@ -51,6 +52,26 @@
:selectable="checkSelect"
width="55">
</el-table-column>
<el-table-column prop="sort"
sortable="custom"
min-width="140"
label="序号">
<template slot-scope="scope">
<div @click="handleEditSort(scope.row)">
<span v-if="!scope.row.isChange">{{scope.row.sort}}</span>
<el-input-number v-else
@change="handleChangeSort(scope.row)"
v-model="scope.row.sort"
class="item_width_4"
:precision="2"
size="mini"
:min="1"
:max="9999"
label="描述文字"></el-input-number>
</div>
</template>
</el-table-column>
<el-table-column prop="houseNameShow"
label="房屋名称"
min-width="160">
@ -168,6 +189,7 @@ export default {
total: 0,
pageSize: 20,
pageNo: 0,
sortType: 'asc',//ascdesc
tableLoading: true,
// showImportBtn: false,//
@ -220,7 +242,53 @@ export default {
...mapGetters(['clientHeight', 'iframeHeight'])
},
methods: {
handleSortOrderChange (value) {
console.log(value.column, value.prop, value.order)
this.sortType = value.order === 'ascending' ? 'asc' : 'desc'
this.loadTable()
},
handleSortChange (value) {
console.log(value.column, value.prop, value.order)
this.sortType = value.order === 'ascending' ? 'asc' : 'desc'
this.loadTable()
},
handleEditSort (row) {
if (!row.isChange) {
row.isChange = true
}
},
async handleChangeSort (row, index) {
// row.isChange = false
console.log(row.sort)
let params = {
id: row.houseId,
sort: row.sort,
type: 'house',
}
let url = '/gov/org/house/update-sort'
const { data, code, msg } = await requestPost(url, params)
if (code === 0) {
this.$message({
type: 'success',
message: '操作成功'
})
} else {
this.$message.error(msg)
}
},
checkSelect (row, index) {
let isChecked = false;
@ -242,6 +310,7 @@ export default {
this.tableLoading = true
if (source === 'tree') {//tree
this.sortType = 'asc'
this.agencyObj = treeObj
this.ownerName = null
this.ownerPhone = null
@ -265,6 +334,7 @@ export default {
ownerName: this.ownerName,
ownerPhone: this.ownerPhone,
rentFlag: this.rentFlag,
sortType: this.sortType,
}
const url = "/gov/org/house/houselist"
@ -275,6 +345,8 @@ export default {
this.total = data.total
this.validTableDataNum = 0
data.list.forEach(item => {
item.sort = item.sort.toFixed(2)
item.isChange = false
item.houseNameShow = item.neighborHoodName + item.buildingName + item.unitNum + item.doorName
if (item.agencyId === this.staffAgencyId) {
@ -650,4 +722,17 @@ export default {
</script>
<style lang="scss" scoped >
@import "@/assets/scss/modules/visual/communityManage.scss";
.item_width_4 {
width: 120px;
}
// /deep/.el-input-number--medium .el-input-number__decrease,
// /deep/.el-input-number--medium .el-input-number__increase {
// width: 26px;
// }
// /deep/.el-input-number--medium .el-input__inner {
// padding-left: 0px;
// padding-right: 0px;
// }
</style>

Loading…
Cancel
Save