|
|
@ -2,24 +2,25 @@ |
|
|
|
<div> |
|
|
|
<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--add" |
|
|
|
size="small" |
|
|
|
@click="handleAdd">新增</el-button> |
|
|
|
</div> |
|
|
|
|
|
|
|
<div class="m-center" v-if="tableData.length > 0"> |
|
|
|
<div class="m-center" |
|
|
|
v-if="tableData.length > 0"> |
|
|
|
<div class="center-left"> |
|
|
|
<div class="list"> |
|
|
|
<div |
|
|
|
@click="currentIndex = index" |
|
|
|
class="item" |
|
|
|
:class="{ 'z-on': currentIndex == index }" |
|
|
|
:key="'ct' + index" |
|
|
|
v-for="(item, index) in tableData" |
|
|
|
> |
|
|
|
<div @click="currentIndex = index" |
|
|
|
class="item" |
|
|
|
:class="{ 'z-on': currentIndex == index }" |
|
|
|
:key="'ct' + index" |
|
|
|
v-for="(item, index) in tableData"> |
|
|
|
<div class="item-btns"> |
|
|
|
<a v-if="currentIndex == index" @click="handleEdit">修改</a> |
|
|
|
<a v-if="currentIndex == index" @click="handleDel">删除</a> |
|
|
|
<a v-if="currentIndex == index" |
|
|
|
@click="handleEdit">修改</a> |
|
|
|
<a v-if="currentIndex == index" |
|
|
|
@click="handleDel">删除</a> |
|
|
|
</div> |
|
|
|
|
|
|
|
<div class="item-name">{{ item.centerName }}</div> |
|
|
@ -49,107 +50,89 @@ |
|
|
|
> |
|
|
|
</div> --> |
|
|
|
|
|
|
|
<div id="centerIndexApp" class="div_map"></div> |
|
|
|
|
|
|
|
<el-table |
|
|
|
:data="tableData[currentIndex].matterList" |
|
|
|
border |
|
|
|
style="width: 100%" |
|
|
|
class="resi-table" |
|
|
|
:max-height="maxTableHeight" |
|
|
|
> |
|
|
|
<el-table-column |
|
|
|
label="序号" |
|
|
|
type="index" |
|
|
|
align="center" |
|
|
|
width="50" |
|
|
|
/> |
|
|
|
<el-table-column prop="matterName" label="事项名称"> |
|
|
|
<div id="centerIndexApp" |
|
|
|
class="div_map"></div> |
|
|
|
|
|
|
|
<el-table :data="tableData[currentIndex].matterList" |
|
|
|
border |
|
|
|
style="width: 100%" |
|
|
|
class="resi-table" |
|
|
|
:max-height="maxTableHeight"> |
|
|
|
<el-table-column label="序号" |
|
|
|
type="index" |
|
|
|
align="center" |
|
|
|
width="50" /> |
|
|
|
<el-table-column prop="matterName" |
|
|
|
label="事项名称"> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column prop="allowTime" label="可预约时间 "> |
|
|
|
<el-table-column prop="allowTime" |
|
|
|
label="可预约时间 "> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
fixed="right" |
|
|
|
label="操作" |
|
|
|
align="center" |
|
|
|
width="120" |
|
|
|
> |
|
|
|
<el-table-column fixed="right" |
|
|
|
label="操作" |
|
|
|
align="center" |
|
|
|
width="120"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<el-button |
|
|
|
@click="handleOrder(scope.$index)" |
|
|
|
type="text" |
|
|
|
size="small" |
|
|
|
>预约</el-button |
|
|
|
> |
|
|
|
|
|
|
|
<el-button |
|
|
|
@click="handleOrderList(scope.$index)" |
|
|
|
type="text" |
|
|
|
size="small" |
|
|
|
style="margin-right: 10px; color: #00a7a9" |
|
|
|
>预约记录</el-button |
|
|
|
> |
|
|
|
<el-button @click="handleOrder(scope.$index)" |
|
|
|
type="text" |
|
|
|
size="small" |
|
|
|
style="color: #1c6afd">预约</el-button> |
|
|
|
|
|
|
|
<el-button @click="handleOrderList(scope.$index)" |
|
|
|
type="text" |
|
|
|
size="small" |
|
|
|
style="margin-right: 10px; color: #1c6afd">预约记录</el-button> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
</el-table> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div class="m-hint" v-else> |
|
|
|
<el-empty description="暂无内容" :image-size="200"></el-empty> |
|
|
|
<div class="m-hint" |
|
|
|
v-else> |
|
|
|
<el-empty description="暂无内容" |
|
|
|
:image-size="200"></el-empty> |
|
|
|
</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="form2Show" |
|
|
|
:close-on-click-modal="false" |
|
|
|
:close-on-press-escape="false" |
|
|
|
title="预约" |
|
|
|
width="850px" |
|
|
|
top="5vh" |
|
|
|
class="dialog-h" |
|
|
|
@closed="handleCloseForm2" |
|
|
|
> |
|
|
|
<order-form |
|
|
|
ref="eleOrderForm" |
|
|
|
@dialogCancle="handleCloseForm2" |
|
|
|
@dialogOk="handleOrderSuccess" |
|
|
|
></order-form> |
|
|
|
<el-dialog :visible.sync="form2Show" |
|
|
|
:close-on-click-modal="false" |
|
|
|
:close-on-press-escape="false" |
|
|
|
title="预约" |
|
|
|
width="850px" |
|
|
|
top="5vh" |
|
|
|
class="dialog-h" |
|
|
|
@closed="handleCloseForm2"> |
|
|
|
<order-form ref="eleOrderForm" |
|
|
|
@dialogCancle="handleCloseForm2" |
|
|
|
@dialogOk="handleOrderSuccess"></order-form> |
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
<!-- 修改弹出框 --> |
|
|
|
<el-dialog |
|
|
|
:visible.sync="orderListShow" |
|
|
|
:close-on-click-modal="false" |
|
|
|
:close-on-press-escape="false" |
|
|
|
title="预约记录" |
|
|
|
width="850px" |
|
|
|
top="5vh" |
|
|
|
class="dialog-h" |
|
|
|
@closed="handleCloseOrderList" |
|
|
|
> |
|
|
|
<order-list |
|
|
|
ref="eleOrderList" |
|
|
|
@dialogCancle="handleCloseOrderList" |
|
|
|
></order-list> |
|
|
|
<el-dialog :visible.sync="orderListShow" |
|
|
|
:close-on-click-modal="false" |
|
|
|
:close-on-press-escape="false" |
|
|
|
title="预约记录" |
|
|
|
width="850px" |
|
|
|
top="5vh" |
|
|
|
class="dialog-h" |
|
|
|
@closed="handleCloseOrderList"> |
|
|
|
<order-list ref="eleOrderList" |
|
|
|
@dialogCancle="handleCloseOrderList"></order-list> |
|
|
|
</el-dialog> |
|
|
|
</div> |
|
|
|
</template> |
|
|
@ -170,7 +153,7 @@ let loading; // 加载动画 |
|
|
|
|
|
|
|
export default { |
|
|
|
components: { editForm, orderForm, orderList }, |
|
|
|
data() { |
|
|
|
data () { |
|
|
|
return { |
|
|
|
openSearch: false, |
|
|
|
|
|
|
@ -187,23 +170,23 @@ export default { |
|
|
|
}; |
|
|
|
}, |
|
|
|
computed: { |
|
|
|
maxTableHeight() { |
|
|
|
maxTableHeight () { |
|
|
|
return this.clientHeight - 520; |
|
|
|
}, |
|
|
|
...mapGetters(["clientHeight"]), |
|
|
|
}, |
|
|
|
watch: { |
|
|
|
currentIndex() { |
|
|
|
currentIndex () { |
|
|
|
this.setMap(); |
|
|
|
}, |
|
|
|
}, |
|
|
|
async mounted() { |
|
|
|
async mounted () { |
|
|
|
await this.loadAgency(); |
|
|
|
await this.getTableData(); |
|
|
|
}, |
|
|
|
methods: { |
|
|
|
// 地图初始化函数,本例取名为init,开发者可根据实际情况定义 |
|
|
|
initMap() { |
|
|
|
initMap () { |
|
|
|
// 定义地图中心点坐标 |
|
|
|
var center = new window.TMap.LatLng(36.0722275, 120.38945519); |
|
|
|
// 定义map变量,调用 TMap.Map() 构造函数创建地图 |
|
|
@ -223,7 +206,7 @@ export default { |
|
|
|
infoWindowList = Array(10); |
|
|
|
}, |
|
|
|
|
|
|
|
setMarker(lat, lng, centerName) { |
|
|
|
setMarker (lat, lng, centerName) { |
|
|
|
markers.setGeometries([]); |
|
|
|
markers.add([ |
|
|
|
{ |
|
|
@ -237,11 +220,11 @@ export default { |
|
|
|
]); |
|
|
|
}, |
|
|
|
|
|
|
|
setCenter(lat, lng) { |
|
|
|
setCenter (lat, lng) { |
|
|
|
map.setCenter(new window.TMap.LatLng(lat, lng)); |
|
|
|
}, |
|
|
|
|
|
|
|
setMap() { |
|
|
|
setMap () { |
|
|
|
const { tableData, currentIndex } = this; |
|
|
|
let item = tableData[currentIndex]; |
|
|
|
if (item) { |
|
|
@ -250,24 +233,24 @@ export default { |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
handleClose() { |
|
|
|
handleClose () { |
|
|
|
this.formShow = false; |
|
|
|
}, |
|
|
|
handleCloseForm2() { |
|
|
|
handleCloseForm2 () { |
|
|
|
this.form2Show = false; |
|
|
|
}, |
|
|
|
handleCloseOrderList() { |
|
|
|
handleCloseOrderList () { |
|
|
|
this.orderListShow = false; |
|
|
|
}, |
|
|
|
|
|
|
|
async handleAdd() { |
|
|
|
async handleAdd () { |
|
|
|
this.formShow = true; |
|
|
|
await nextTick(); |
|
|
|
console.log(this.$refs); |
|
|
|
this.$refs.eleEditForm.initForm("add"); |
|
|
|
}, |
|
|
|
|
|
|
|
async handleWatch() { |
|
|
|
async handleWatch () { |
|
|
|
this.formShow = true; |
|
|
|
await nextTick(); |
|
|
|
this.$refs.eleEditForm.initForm( |
|
|
@ -276,7 +259,7 @@ export default { |
|
|
|
); |
|
|
|
}, |
|
|
|
|
|
|
|
async handleEdit() { |
|
|
|
async handleEdit () { |
|
|
|
this.formShow = true; |
|
|
|
await nextTick(); |
|
|
|
this.$refs.eleEditForm.initForm( |
|
|
@ -285,12 +268,12 @@ export default { |
|
|
|
); |
|
|
|
}, |
|
|
|
|
|
|
|
handleEditSuccess() { |
|
|
|
handleEditSuccess () { |
|
|
|
this.handleClose(); |
|
|
|
this.getTableData(); |
|
|
|
}, |
|
|
|
|
|
|
|
async handleOrder(index) { |
|
|
|
async handleOrder (index) { |
|
|
|
this.form2Show = true; |
|
|
|
await nextTick(); |
|
|
|
this.$refs.eleOrderForm.initForm( |
|
|
@ -300,18 +283,18 @@ export default { |
|
|
|
); |
|
|
|
}, |
|
|
|
|
|
|
|
handleOrderSuccess() { |
|
|
|
handleOrderSuccess () { |
|
|
|
this.handleCloseForm2(); |
|
|
|
}, |
|
|
|
|
|
|
|
async handleOrderList(index) { |
|
|
|
async handleOrderList (index) { |
|
|
|
this.orderListShow = true; |
|
|
|
await nextTick(0); |
|
|
|
console.log(this.$refs); |
|
|
|
this.$refs.eleOrderList.init(this.tableData[this.currentIndex], index); |
|
|
|
}, |
|
|
|
|
|
|
|
async handleDel() { |
|
|
|
async handleDel () { |
|
|
|
if (!confirm("删除后不可恢复,确定删除?")) return; |
|
|
|
|
|
|
|
const item = this.tableData[this.currentIndex]; |
|
|
@ -327,7 +310,7 @@ export default { |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
async getTableData() { |
|
|
|
async getTableData () { |
|
|
|
const oldLen = this.tableData.length; |
|
|
|
const url = "/gov/org/icpartyservicecenter/partyservicecenterlist"; |
|
|
|
const { data, code, msg } = await requestPost(url, { |
|
|
@ -348,7 +331,7 @@ export default { |
|
|
|
}, |
|
|
|
|
|
|
|
//加载组织 |
|
|
|
async loadAgency() { |
|
|
|
async loadAgency () { |
|
|
|
const url = "/epmetuser/customerstaff/staffbasicinfo"; |
|
|
|
let params = {}; |
|
|
|
|
|
|
@ -414,29 +397,15 @@ export default { |
|
|
|
position: absolute; |
|
|
|
top: 5px; |
|
|
|
right: 5px; |
|
|
|
// width: 120px; |
|
|
|
|
|
|
|
a { |
|
|
|
display: inline-block; |
|
|
|
margin-left: 1px; |
|
|
|
font-size: 14px; |
|
|
|
color: rgb(235, 192, 4); |
|
|
|
width: 40px; |
|
|
|
line-height: 30px; |
|
|
|
text-align: center; |
|
|
|
cursor: pointer; |
|
|
|
&:nth-child(2) { |
|
|
|
color: #aaa; |
|
|
|
&:hover { |
|
|
|
// text-decoration: underline; |
|
|
|
color: #666; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
&:hover { |
|
|
|
// text-decoration: underline; |
|
|
|
color: rgb(250, 208, 23); |
|
|
|
} |
|
|
|
font-size: 14px; |
|
|
|
color: #00a7a9; |
|
|
|
width: 50px; |
|
|
|
line-height: 30px; |
|
|
|
text-align: center; |
|
|
|
cursor: pointer; |
|
|
|
&:hover { |
|
|
|
// text-decoration: underline; |
|
|
|
color: #00a7a9; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|