Browse Source

修改面板展开与点击事件冲突问题

master
zq 3 months ago
parent
commit
67155ef49b
  1. 12
      components/visitorAccount.vue
  2. 29
      pages/visitors_new/visitors_new.vue

12
components/visitorAccount.vue

@ -1,7 +1,7 @@
<template> <template>
<view :class="'visitor-account-com'+(open?' default-open':'')+(isOpen?' openstyle':'')"> <view :class="'visitor-account-com'+(open?' default-open':'')+(isOpen?' openstyle':'')">
<!-- <view class="visitor-account-com"> --> <!-- <view class="visitor-account-com"> -->
<uni-collapse @change="change"> <uni-collapse @change="change($event)" catchtap="noop" data-type="collapse">
<uni-collapse-item :title="title ? title : ''" :thumb="thumb" :errmsg="errmsg" :disabled="disabled" :open="isOpen" v-if="visitorInfo"> <uni-collapse-item :title="title ? title : ''" :thumb="thumb" :errmsg="errmsg" :disabled="disabled" :open="isOpen" v-if="visitorInfo">
<view class="collapse-list"> <view class="collapse-list">
<view class="account-list"> <view class="account-list">
@ -90,10 +90,14 @@ export default {
}, },
methods: { methods: {
change(e) { change(e) {
if(e[0] != 0) { this.$emit('changeOpen')
this.$emit('closeEvent') if(this.isOpen){
return; return
} }
// if(e[0] != 0) {
// this.$emit('closeEvent')
// return;
// }
const object = { const object = {
visitor_id: this.visitor_id, visitor_id: this.visitor_id,
depart_id: this.depart_id depart_id: this.depart_id

29
pages/visitors_new/visitors_new.vue

@ -5,7 +5,7 @@
<view class="uni-card-wrapper" v-for="(item,key) in visitor_list" @click.stop="modifyVisitor" :data-item="item"> <view class="uni-card-wrapper" v-for="(item,key) in visitor_list" @click.stop="modifyVisitor" :data-item="item">
<uni-card v-if="(visitor_id==0 || (visitor_id!=0 && visitor_id==item.id)) && pageShow" :title="item.name" :extra="'身份证:'+item.idcard_txt" :class="((visitor_list && item.h_list && item.h_list.length>0)?'':'empty')" margin="0 0 0rpx 0" shadow="none" :border="false" padding="24rpx"> <uni-card v-if="(visitor_id==0 || (visitor_id!=0 && visitor_id==item.id)) && pageShow" :title="item.name" :extra="'身份证:'+item.idcard_txt" :class="((visitor_list && item.h_list && item.h_list.length>0)?'':'empty')" margin="0 0 0rpx 0" shadow="none" :border="false" padding="24rpx">
<view class="visitor-account"> <view class="visitor-account">
<VisitorAccount @closeEvent="closeCollapse" @getinfo="get_visitor_info" :isOpen="isOpen" :title="item2.hospital+' '+item2.depart" v-for="(item2,key2) in item.h_list" :visitorInfo="visitorInfo" v-if="visitor_list && item.h_list && item.h_list.length>0" :depart_id="item2.depart_id" :visitor_id="item.id" :thumb="cssUrl+'hicon.svg'" :errmsg="(!item2.weeks ? (item2.days?(item2.days+'天未看病,请及时复诊'):'') : (' '+(item2.weeks<=10?item2.weeks:('超过10')))+'周未看病,请及时复诊')"/> <VisitorAccount @closeEvent="closeCollapse" @getinfo="get_visitor_info" @changeOpen="changeOpenFun(key,key2)" :isOpen="item2.isOpen" :title="item2.hospital+' '+item2.depart" v-for="(item2,key2) in item.h_list" :visitorInfo="visitorInfo" v-if="visitor_list && item.h_list && item.h_list.length>0" :depart_id="item2.depart_id" :visitor_id="item.id" :thumb="cssUrl+'hicon.svg'" :errmsg="(!item2.weeks ? (item2.days?(item2.days+'天未看病,请及时复诊'):'') : (' '+(item2.weeks<=10?item2.weeks:('超过10')))+'周未看病,请及时复诊')"/>
</view> </view>
</uni-card> </uni-card>
</view> </view>
@ -39,17 +39,20 @@
this.pageInit() this.pageInit()
}, },
methods: { methods: {
changeOpenFun(key,key2){
this.visitor_list[key].h_list[key2].isOpen = !this.visitor_list[key].h_list[key2].isOpen
},
modifyVisitor(e) { modifyVisitor(e) {
var visitor = e.currentTarget.dataset.item var visitor = e.currentTarget.dataset.item
var is_jump = true // var is_jump = true
if(visitor.h_list && visitor.h_list.length > 0) { // if(visitor.h_list && visitor.h_list.length > 0) {
is_jump = false // is_jump = false
if(e.detail.y < 291){ // if(e.detail.y < 291){
is_jump = true // is_jump = true
} // }
} // }
if(!is_jump) return // if(!is_jump) return
uni.setStorageSync('visitor_info_'+visitor.id, JSON.stringify(visitor)) uni.setStorageSync('visitor_info_'+visitor.id, JSON.stringify(visitor))
this.$func.toPage("/pages/modify_visitor/modify_visitor?type="+this.type+'&vid='+visitor.id) this.$func.toPage("/pages/modify_visitor/modify_visitor?type="+this.type+'&vid='+visitor.id)
}, },
@ -63,7 +66,13 @@
this.$refs.visitors.getVisitors() this.$refs.visitors.getVisitors()
}, },
setVisitorListData(e) { setVisitorListData(e) {
this.visitor_list = e this.visitor_list = e.map(item=>{
if(item.h_list && item.h_list.length > 0){
item.h_list.forEach((item1)=>{item1.isOpen = false})
}
return item
})
this.pageShow = true this.pageShow = true
}, },
getVisitorListData(visitor_id){ getVisitorListData(visitor_id){

Loading…
Cancel
Save