Browse Source

修改页面跳转方法

master
zq 4 months ago
parent
commit
f72646bd24
  1. 36
      components/inputBox.vue
  2. 163
      components/visitorList.vue
  3. 23
      pages/modify_visitor/modify_visitor.vue
  4. 5
      pages/prebook/prebook.vue
  5. 14
      pages/usercenter/usercenter.vue
  6. 28
      pages/visitors/visitors.vue
  7. 31
      pages/visitors_new/visitors_new.vue
  8. 9
      pages/waiting_method/waiting_method.vue

36
components/inputBox.vue

@ -4,12 +4,11 @@
<view class="top-wrapper flex">
<view class="left PfScMedium">
<!-- <text :class="!required?'hide-start':''"><img :src="cssUrl+'hua.svg'" class="hua"></text> -->
<view>{{label}}</view>
</view>
<view class="right">
<textarea v-if="autoHeight" :auto-height="true" :value="value" :placeholder="holder" @blur="handleBlur" @input="handleInput"></textarea>
<input v-else :value="value" :placeholder="holder" @blur="handleBlur" @input="handleInput"></input>
<textarea class="textarea" v-if="autoHeight" :auto-height="true" :value="value" :placeholder="holder" @blur="handleBlur" @input="handleInput"></textarea>
<input class="input" v-else :value="value" :placeholder="holder" @blur="handleBlur" @input="handleInput"></input>
</view>
</view>
@ -126,11 +125,7 @@ export default {
<style lang="scss" scoped>
.input-com{
&:last-of-type{
.input-wrapper{
border: none !important;
}
}
.input-wrapper{
min-height: 100rpx;
background: #FFFFFF;
@ -171,7 +166,10 @@ export default {
view{
color: #000000;
letter-spacing: 2rpx;
font-family: PingFang SC;
font-size: 32rpx;
font-weight: 500;
line-height: 44rpx;
color: #000000;
}
.hide-start{
@ -185,9 +183,29 @@ export default {
padding-left: 10rpx;
box-sizing: border-box;
position: relative;
textarea{
.input{
color: #222222;
&::placeholder{
font-size: 32rpx;
font-weight: normal;
line-height: 44rpx;
text-align: right;
letter-spacing: 0.24rpx;
color: #999999;
}
}
.textarea{
width: 100%;
height: 45rpx;
color: #222222;
&::placeholder{
font-size: 32rpx;
font-weight: normal;
line-height: 44rpx;
text-align: right;
letter-spacing: 0.24rpx;
color: #999999;
}
}
}
}

163
components/visitorList.vue

@ -1,41 +1,42 @@
<template>
<view class="visitor-list-com">
<view class="visitor-list-com">
<view class="nav">
<view class="add PfScMedium" @click="addVisitor" v-if="add">
<img :src="cssUrl+'add_visitor.svg'">
<img :src="cssUrl + 'add_visitor.svg'">
<text>增加就诊人</text>
</view>
<view :class="'item'+(userSelectIndex==0?' active':'')" @click="selectUser(0)">全部</view>
<view :class="'item'+(userSelectIndex==(key+1)?' active':'')" v-for="(item,key) in vistors" @click="selectUser(key+1)">{{item.name}}</view>
<view :class="'item ' + (userSelectIndex == 0 ? ' active' : '')" @click="selectUser(0)">全部</view>
<view :class="'item' + (userSelectIndex == (key + 1) ? ' active' : '')" v-for="(item, key) in vistors"
@click="selectUser(key + 1)">{{ item.name }}</view>
</view>
</view>
</view>
</template>
<script>
export default {
name: "visitorList",
props: {
add:{
type:Boolean,
default:()=>false
name: "visitorList",
props: {
add: {
type: Boolean,
default: () => false
}
},
data() {
return {
cssUrl:this.cssUrl,
userSelectIndex:0,
vistors:false,
visitor_id:0
}
},
methods: {
addVisitor(){
location.href = '/pages/modify_visitor/modify_visitor?type=1'
},
data() {
return {
cssUrl: this.cssUrl,
userSelectIndex: 0,
vistors: false,
visitor_id: 0
}
},
methods: {
addVisitor() {
this.$nav.navToPath('/pages/modify_visitor/modify_visitor?type=1')
},
selectUser(key){
selectUser(key) {
this.userSelectIndex = key
var visitor_id = 0
if(this.userSelectIndex > 0) visitor_id = this.vistors[this.userSelectIndex-1].id
if (this.userSelectIndex > 0) visitor_id = this.vistors[this.userSelectIndex - 1].id
this.visitor_id = visitor_id
this.getVisitors()
this.$emit('clickEvent', visitor_id)
@ -46,75 +47,79 @@ export default {
param.limit = 10000
var obj = new Object()
if(this.visitor_id != 0) obj.visitor_id = this.visitor_id
this.$http.req('user/get_visitors', obj, 'POST').then(data=>{
if(data == -1) return
if (this.visitor_id != 0) obj.visitor_id = this.visitor_id
this.$http.req('user/get_visitors', obj, 'POST').then(data => {
if (data == -1) return
this.vistors = data
this.$emit('dataEvent', this.vistors)
this.$emit('prebookEvent', this.visitor_id)
});
}
}
}
};
</script>
<style lang="scss" scoped>
.visitor-list-com{
.visitor-list-com {
width: 100%;
height: auto;
overflow: hidden;
.nav {
width: 100%;
height: auto;
overflow: hidden;
.nav{
width: 100%;
display: flex;
height: 108rpx;
display: flex;
display: flex;
height: 108rpx;
display: flex;
box-sizing: border-box;
overflow-x: auto;
align-items: center;
padding: 0 18rpx;
column-gap: 20rpx;
.item {
width: auto;
flex-shrink: 0;
padding: 0 20rpx;
height: 60rpx;
line-height: 60rpx;
background: rgba(201, 203, 209, 0.25);
border-radius: 30rpx;
box-sizing: border-box;
overflow-x: auto;
align-items: center;
padding: 0 18rpx;
column-gap: 20rpx;
.item{
width: auto;
flex-shrink: 0;
padding: 0 20rpx;
height: 60rpx;
line-height: 60rpx;
background: rgba(201,203,209,0.25);
border-radius: 30rpx;
box-sizing: border-box;
font-size: 24rpx;
color: #616266;
min-width: 136rpx;
text-align: center;
&.active{
border: 1rpx solid #5BD07A;
color: #58CA7F;
background: #F8FFF7;
}
font-size: 24rpx;
color: #616266;
min-width: 136rpx;
text-align: center;
&.active {
border: 1rpx solid #5BD07A;
color: #58CA7F;
font-weight: 500;
background: #F8FFF7;
}
.add{
width: auto;
height: 60rpx;
display: flex;
align-items: center;
justify-content: center;
z-index: 0;
border-radius: 100rpx;
background: #58CA7F;
font-size: 24rpx;
line-height: 30rpx;
text-align: center;
letter-spacing: 0rpx;
color: #FFFFFF;
padding: 0 12rpx;
flex-shrink: 0;
}
.add {
width: 188rpx;
height: 60rpx;
display: flex;
align-items: center;
justify-content: center;
z-index: 0;
border-radius: 100rpx;
background: #58CA7F;
font-size: 24rpx;
line-height: 30rpx;
text-align: center;
letter-spacing: 0rpx;
color: #FFFFFF;
padding: 0 12rpx;
flex-shrink: 0;
img{
height: 44rpx;
height: 44rpx;
}
img {
width: 44rpx;
height: 44rpx;
}
}
}
}
</style>

23
pages/modify_visitor/modify_visitor.vue

@ -1,17 +1,16 @@
<template>
<view class="visitor-form-page">
<view class="block">
<!-- <view class="title PfScMedium">就诊人信息</view> -->
<input-box class="inputcom-wrapper" v-model="name" holder="填写姓名" label="患者姓名" @blurEvent="nameBlurEvent"></input-box>
<input-box class="inputcom-wrapper" v-model="idcard" holder="填写身份证号码" label="身份证号" @blurEvent="idCardBlurEvent" rule="idcard"></input-box>
<input-box class="inputcom-wrapper" v-model="phone" holder="填写患者手机号" label="患者手机号" @blurEvent="phoneBlurEvent" rule="phone"></input-box>
</view>
<view class="submit-wrapper btPadding" v-if="!vid">
<view :class="'btn btn3 submit'+(canSubmit?' primary':' noclick')" :hover-class="(canSubmit?'hover':'')" @click="submit" v-if="!vid">
<view :class="'btn btn3 PfScMedium submit'+(canSubmit?' primary':' noclick')" :hover-class="(canSubmit?'hover':'')" @click="submit" v-if="!vid">
确认新增
</view>
<view :class="'btn btn3 submit'+(canSubmit?' primary':' noclick')" :hover-class="(canSubmit?'hover':'')" @click="submit" v-else>
<view :class="'btn btn3 PfScMedium submit'+(canSubmit?' primary':' noclick')" :hover-class="(canSubmit?'hover':'')" @click="submit" v-else>
确认修改
</view>
</view>
@ -90,19 +89,10 @@
}
uni.navigateBack()
// this.$func.toPage('/pages/visitors/visitors?type='+this.type)
});
},
getVisitorInfo() {
this.visitor_info = JSON.parse(uni.getStorageSync('visitor_info_'+ this.vid))
//
// this.$http.req('user/get_visitor_info', {id:this.vid}, 'GET', true).then(data=>{
// if(data == -1) {
// this.$func.toPage('/pages/index/index')
// return
// }
console.log(this.visitor_info,'visitor_info');
this.name = this.visitor_info.name
this.idcard = this.visitor_info.idcard
this.phone = this.visitor_info.phone
@ -110,7 +100,6 @@
this.idcardExtRule = true
this.phoneRule = true
this.checkSubmit()
// });
},
nameBlurEvent(value, res){
this.name = value
@ -153,14 +142,15 @@
height: 100vh;
overflow-y: scroll;
.block{
// min-height: 50vh;
// min-height: 662rpx;
background: #FFFFFF;
box-shadow: 0rpx 2rpx 24rpx 0rpx rgba(0,0,0,0.03);
border-radius: 8rpx;
width: 714rpx;
margin: 20rpx auto 0rpx;
overflow: hidden;
&:nth-child(3){
border: none !important;
}
.title{
font-size: 32rpx;
color: #000000;
@ -170,9 +160,6 @@
letter-spacing: 2rpx;
margin: 36rpx 0 36rpx 24rpx;
}
.inputcom-wrapper{
// margin-bottom: 20rpx;
}
}
.submit-wrapper{
overflow: hidden;

5
pages/prebook/prebook.vue

@ -122,9 +122,7 @@
times:false,
success() {
setTimeout(function(){
uni.navigateTo({
url:"/pages/prebook_list/prebook_list"
})
this.$nav.navToPath("/pages/prebook_list/prebook_list")
}, 1500)
}
})
@ -207,7 +205,6 @@
// this.getAvailabletRegistrationTime(false, chooseDay)
// return
// }
let remain = 1
if(data.remain < this.activeVisitors.length){
this.needSelectMembers = true
this.$set(this.times, 'remain', data.remain)

14
pages/usercenter/usercenter.vue

@ -45,19 +45,13 @@
});
},
toVisitors(){
uni.navigateTo({
url:'/pages/visitors_new/visitors_new?type=2'
})
this.$nav.navToPath('/pages/visitors_new/visitors_new?type=2')
},
toPrebookList(){
uni.navigateTo({
url:'/pages/prebook_list/prebook_list'
})
this.$nav.navToPath('/pages/prebook_list/prebook_list')
},
toUserModify(){
uni.navigateTo({
url:'/pages/user_modify/user_modify'
})
this.$nav.navToPath('/pages/user_modify/user_modify')
}
}
}
@ -74,7 +68,7 @@
width: 160rpx;
height: 160rpx;
border-radius: 100%;
margin: 17rpx auto 24rpx;
margin: 20rpx auto 24rpx;
}
.ucode{
width: 80%;

28
pages/visitors/visitors.vue

@ -177,9 +177,10 @@
},
methods: {
reback(){
uni.navigateTo({
url:'/'
})
// uni.navigateTo({
// url:'/'
// })
this.$nav.navToPath('/')
},
// --
@ -218,9 +219,7 @@
});
},
appointTime(){
uni.navigateTo({
url:"/pages/visitors/visitors?type=1&is_preview=1"
})
this.$nav.navToPath("/pages/visitors/visitors?type=1&is_preview=1")
},
modifyVistor(visitor){
uni.setStorageSync('visitor_info_'+visitor.id, JSON.stringify(visitor))
@ -277,7 +276,6 @@
this.visitUsers = [...this.visitUsers]
this.popMsgs = []
var popmsgIndex = 0
for (var i = 0; i < this.visitUsers.length; i++) {
this.visitUsers[i].select = false
}
@ -325,7 +323,7 @@
popCancel(e){
},
addVisitor(){
location.href = "/pages/modify_visitor/modify_visitor?type="+this.type
this.$nav.navToPath("/pages/modify_visitor/modify_visitor?type="+this.type)
},
toPrebook(){
if(this.selectCount <= 0){
@ -341,15 +339,12 @@
uni.setStorageSync('active_visitors', JSON.stringify(this.activeVisitors))
// =>
if((this.type == 0 || this.type == 1) && !this.is_preview){
uni.navigateTo({
url:'/pages/waiting_method/waiting_method'
})
this.$nav.navToPath('/pages/waiting_method/waiting_method')
return
}
//
uni.navigateTo({
url:"/pages/prebook/prebook"
})
this.$nav.navToPath("/pages/prebook/prebook")
}
}
}
@ -486,11 +481,6 @@
display: block;
margin: 0 auto;
}
// <view class="submit flex" v-if="type == 3 && !hasBaoDaoData" @click="toPrebook">
// <view :class="'btn cancel btn1'" hover-class="hover" @click="reback"></view>
// <view class="btn primary btn1" hover-class="hover" @click="cancelBook"></view>
// </view>
.baodao-submit{
justify-content: center;
column-gap: 42rpx;

31
pages/visitors_new/visitors_new.vue

@ -5,22 +5,6 @@
<uni-card v-if="visitor_id==0 || (visitor_id!=0 && visitor_id==item.id)" v-for="(item,key) in visitor_list" :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">
<visitor-account v-for="(item2,key2) in item.h_list" :depart_id="item2.depart_id" :visitor_id="item.id" :thumb="cssUrl+'hicon.svg'" v-if="visitor_list && item.h_list && item.h_list.length>0" :errmsg="(!item2.weeks ? '' : ' '+(item2.weeks<=10?item2.weeks:('超过10')))+'周未看病,请及时复诊'"></visitor-account>
</uni-card>
<!-- <uni-card title="上官子涵" extra="身份证:9098******8778" margin="0 0 20rpx 0" shadow="none" :border="false" padding="24rpx" class="">
<visitor-account :thumb="cssUrl+'hicon.svg'"></visitor-account>
</uni-card>
<uni-card title="上官子涵" extra="身份证:9098******8778" margin="0 0 20rpx 0" shadow="none" :border="false" padding="24rpx" class="">
<visitor-account :thumb="cssUrl+'hicon.svg'" errmsg="4周未看病,请及时复诊"></visitor-account>
</uni-card>
<uni-card title="上官子涵" extra="身份证:9098******8778" margin="0 0 20rpx 0" shadow="none" :border="false" padding="24rpx" class="">
<visitor-account :thumb="cssUrl+'hicon.svg'" errmsg="4周未看病,请及时复诊"></visitor-account>
<visitor-account :thumb="cssUrl+'hicon.svg'" errmsg="4周未看病,请及时复诊"></visitor-account>
</uni-card> -->
<view class="bt btPadding"></view>
</view>
@ -33,30 +17,18 @@
export default {
data() {
return {
collapseValue:0,
html:'就诊须知',
cssUrl:this.cssUrl,
depart_id:0,
hospital_depart_name:'',
visitor_list:false,
value:'',
visitor_id:0,
type: 0,
types: [{
text: '等医生叫号',
value: 0
}, {
text: '找床位候诊',
value: 1
}],
}
},
components:{
visitorList,
visitorAccount
},
onLoad(option) {
},
onReady() {
this.pageInit()
},
@ -64,9 +36,6 @@
pageInit() {
this.$refs.visitors.getVisitors()
},
changeCollapse(e) {
console.log(e);
},
setVisitorListData(e) {
this.visitor_list = e
},

9
pages/waiting_method/waiting_method.vue

@ -15,6 +15,7 @@
</view>
</template>
<script>
import userCard from '@/components/userCard.vue';
@ -61,7 +62,6 @@
this.visitUsers = data;
this.visitUsers = [...this.visitUsers]
this.popMsgs = []
var popmsgIndex = 0
for (var i = 0; i < this.visitUsers.length; i++) {
this.visitUsers[i].select = false
}
@ -99,9 +99,10 @@
this.$http.req('user/checkin', obj, 'POST').then(data => {
//
if(data == -1) return
uni.navigateTo({
url: '/pages/prebook_list/prebook_list'
});
// uni.navigateTo({
// url: '/pages/prebook_list/prebook_list'
// });
this.$nav.navToPath('/pages/prebook_list/prebook_list')
}).catch(err => {
this.$pop.msg('提交失败,请重试');
});

Loading…
Cancel
Save