Browse Source

签到相关

master
kuaileWu 6 months ago
parent
commit
75c044e5b5
  1. 10
      App.vue
  2. 8
      components/preBookList.vue
  3. 4
      components/userCard.vue
  4. 4
      components/visitorAccount.vue
  5. 32
      pages/book_detail/book_detail.vue
  6. 67
      pages/index/index.vue
  7. 12
      pages/modify_visitor/modify_visitor.vue
  8. 6
      pages/visit_detail/visit_detail.vue
  9. 53
      pages/visitors/visitors.vue
  10. 18
      pages/visitors_new/visitors_new.vue

10
App.vue

@ -239,14 +239,14 @@
height: 40rpx !important;
}
.pages-visitors-visitors /deep/ .uni-actionsheet__cell{
.pages-visitors-visitors ::v-deep .uni-actionsheet__cell{
color:#31333B !important;
font-size: 34rpx;
line-height: 112rpx;
height: 112rpx;
padding: 0rpx 6rpx;
}
.pages-visitors-visitors /deep/ uni-actionsheet .uni-actionsheet {
.pages-visitors-visitors ::v-deep uni-actionsheet .uni-actionsheet {
left: 0;
right: 0;
bottom: 0;
@ -255,15 +255,15 @@
padding-bottom: constant(safe-area-inset-bottom);
padding-bottom: env(safe-area-inset-bottom);
}
.pages-visitors-visitors /deep/ .uni-actionsheet__menu{
.pages-visitors-visitors ::v-deep .uni-actionsheet__menu{
border-radius: 20rpx 20rpx 0 0;
}
.pages-visitors-visitors /deep/ uni-actionsheet .uni-actionsheet__cell:before {
.pages-visitors-visitors ::v-deep uni-actionsheet .uni-actionsheet__cell:before {
border-top: 2rpx solid #EEEEEE;
color: #EEEEEE;
}
.pages-visitors-visitors /deep/ uni-actionsheet .uni-actionsheet__action{
.pages-visitors-visitors ::v-deep uni-actionsheet .uni-actionsheet__action{
margin-top: 24rpx;
margin-bottom: 10rpx;
}

8
components/preBookList.vue

@ -12,8 +12,8 @@
<view class="right">
<view :class="statusStyleList[item.status_desc]+' status'"><view class="over">{{item.status_desc}}</view></view>
<view class="queue-num" v-if="item.status_desc=='候诊' && item.wait_visit_count && item.wait_visit_count>0"><view>前方<text class="PfScSemibold">{{item.wait_visit_count}}</text></view> </view>
<view class="bedDesc">2诊室13床</view>
<view class="bedDesc" v-if="item.bed_desc">{{item.bed_desc}}</view>
</view>
</view>
</view>
@ -130,7 +130,7 @@ export default {
color: #30C563;
margin-top: 28rpx;
}
.status{
display: flex;
justify-content: flex-end;
@ -148,7 +148,7 @@ export default {
min-width: 128rpx;
box-sizing: border-box;
}
&.status_wait{
view{
background: #F8FFF7;

4
components/userCard.vue

@ -86,7 +86,7 @@ export default {
overflow: hidden;
&.popup-user-card{
/deep/ {
::v-deep {
.uni-card__header{
display: none !important;
}
@ -109,7 +109,7 @@ export default {
}
}
/deep/ {
::v-deep {
.uni-easyinput{
margin-bottom: 24rpx;
.uni-easyinput__content-input{

4
components/visitorAccount.vue

@ -104,7 +104,7 @@ export default {
height: auto;
overflow: hidden;
&.default-open{
/deep/{
::v-deep{
.uni-collapse-item__title{
display: none !important;
}
@ -120,7 +120,7 @@ export default {
}
}
}
/deep/{
::v-deep{
.uni-collapse-item__wrap{
background: #F9FAFB;
.uni-collapse-item__wrap-content{

32
pages/book_detail/book_detail.vue

@ -5,7 +5,7 @@
<view class="item-inner" v-html="item.custom" v-if="item.custom" @click="edit" :data-item="item" :data-key="key"></view>
</list-box>
</view>
<view class="bot-con">
<view class="title PfScMedium">治疗记录</view>
<visitor-account :open="true" :disabled="true"></visitor-account>
@ -16,7 +16,7 @@
<view class="content" v-html="notice"></view>
</view>
<view class="btPadding pagebt"></view>
<view class="fixedBot btPadding">
<view class="submit">
<view :class="'btn cancel'+(showCancelBook?' btn1':' btn3')" hover-class="hover" @click="reback">返回</view>
@ -24,7 +24,7 @@
<!-- <view class="btn primary btn1" hover-class="hover" v-if="showReBook && !showCancelBook" @click="rebook">重新预约</view> -->
</view>
</view>
<view :class="'ccpop'+(popkey==0?' bed-edit-pop':'')">
<uni-popup ref="popup" type="bottom" background-color="#fff">
<view class="edit-pop-title PfScSemibold">{{poptitle}}</view>
@ -37,7 +37,7 @@
</view>
</uni-popup>
</view>
</view>
</template>
@ -46,7 +46,7 @@
import listBox from '@/components/listBox.vue';
import visitorAccount from '@/components/visitorAccount.vue'
import userCard from '@/components/userCard.vue';
export default {
data() {
return {
@ -85,7 +85,7 @@
// if(option.index) this.redirect = '/pages/index/index'
if(option.id) this.bookId = option.id
if(option.depart_id) this.depart_id = option.depart_id
},
onShow() {
if(!this.bookId || !this.depart_id){
@ -170,10 +170,10 @@
this.showCancelBook = false
}
this.list[0].custom = "<view class='bi flex'><view class='"+this.status+" status'><view class='over status_text'>"+bookInfo.status_desc+"</view></view><img src="+this.cssUrl+"bi.svg></view>"
this.list[1].custom = "<view class='bi flex'><text>2诊室13床</text><img src="+this.cssUrl+"bi.svg></view>"
this.list[2].rightTitle = bookInfo.name
this.list[3].rightTitle = bookInfo.hospital_name
this.list[4].rightTitle = bookInfo.depart_name
@ -199,7 +199,7 @@
box-sizing: border-box;
.ccpop{
&.bed-edit-pop{
/deep/{
::v-deep{
.uni-data-checklist{
display: none !important;
}
@ -211,12 +211,12 @@
}
}
}
/deep/{
::v-deep{
uni-view[name="content"]{
border-radius: 40rpx;
}
}
}
}
.list-box,.bot-con{
width: calc(100% - 34rpx);
height: auto;
@ -243,17 +243,17 @@
backdrop-filter: blur(54.4rpx);
box-shadow: 0rpx -2rpx 6rpx 0rpx rgba(181, 181, 181, 0.1319);
align-items: center;
.btn.btn1{
border-radius: 12rpx;
width: 300rpx;
height: 90rpx;
}
}
.list-box{
.item-wrapper{
.item-inner /deep/{
.item-inner ::v-deep{
.bi{
align-items: center;
column-gap: 12rpx;
@ -314,7 +314,7 @@
}
}
}
.queue-text{
height: 40rpx;
font-size: 28rpx;

67
pages/index/index.vue

@ -21,7 +21,7 @@
</view>
<img :src="cssUrl+'right_bg.png'" alt="">
</view>
<view class="con">
<!-- <view class="con over2 over4"> -->
{{doctorInfo.doctor_info.doctor_detail}}
@ -29,14 +29,14 @@
</view>
<view class="block hospital-wrapper" v-if="hospitals">
<view class="title-wrapper flex">
<view class="title">
出诊信息
</view>
<img :src="cssUrl+'right_bg.png'" alt="">
</view>
<view class="item" v-for="(item,key) in hospitals">
<view class="top flex">
<view class="left">
@ -46,14 +46,14 @@
<!-- {{item.depart_name}} -->
<!-- 科室 -->
</text>
<view class="fixed_hospital">医保定点</view>
<!-- <view class="fixed_hospital">医保定点</view> -->
<!-- <img :src="cssUrl+'index_comback.svg'" v-if="item.hospital_pos" @click="toLocation(item)"> -->
</view>
<view class="date over2 over4" v-if="item.address">
{{item.address}}
<!-- 出诊{{ item.workdate_desc }} -->
</view>
</view>
@ -63,20 +63,20 @@
<img :src="cssUrl+'index_nav.svg'" alt="">
<view>导航</view>
</view>
<!-- <view v-if="item.address" class="flex copy_btn" @click="copyAddress(item.address)" style="justify-content:center;flex-wrap: wrap;">
<img :src="cssUrl+'copy_green.svg'" alt="">
<view>复制地址</view>
</view> -->
</view>
</view>
</view>
<view class="center">
出诊{{ item.workdate_desc }}
</view>
<uni-collapse ref="collapse" v-model="collapseValue[key]" @change="changeCollapse" class="notice-collapse" v-if="item.notice">
<uni-collapse-item title="就诊须知">
<view class="content">
@ -84,14 +84,14 @@
</view>
</uni-collapse-item>
</uni-collapse>
<view class="bot primary btn btn2" hover-class="hover" @click="toVisitors(item)">
<view class="bot primary btn btn2" hover-class="hover" @click="toVisitors(item)" v-if="item.type==0">
预约看病
</view>
</view>
</view>
<view class="block visit-wrapper" v-if="recentAppoint">
<view class="block visit-wrapper" v-if="recentAppoint && this.doctorInfo && !this.doctorInfo.is_all_card">
<view class="header flex">
<view class="title-wrapper flex booklist">
<view class="title">
@ -99,15 +99,15 @@
</view>
<img :src="cssUrl+'right_bg.png'" alt="">
</view>
<view class="opt flex" @click="toPrebookList">
查看全部<img :src="cssUrl+'index_comback2.svg'" alt="">
</view>
</view>
</view>
<pre-book-list class="preg-books" :dataList="recentAppoint" :topnopadding="true"></pre-book-list>
<pre-book-list class="preg-books" :dataList="recentAppoint" :topnopadding="true" v-if="this.doctorInfo && !this.doctorInfo.is_all_card"></pre-book-list>
<tabbar current="1" leftButtonText="主页"></tabbar>
<tabbar current="1" leftButtonText="主页" v-if="this.doctorInfo && !this.doctorInfo.is_all_card"></tabbar>
</view>
</template>
@ -177,6 +177,14 @@
preBookList,
},
onLoad(option) {
// define('DEPART_TYPE_FULL', 0); //
// define('DEPART_TYPE_COUNT', 1); //
// define('DEPART_TYPE_CARD', 2); //
// $GLOBALS['depart_type_list'] = array(
// DEPART_TYPE_FULL => '',
// DEPART_TYPE_COUNT => '',
// DEPART_TYPE_CARD => ''
// );
if(option.code && option.state) {
this.code = option.code
this.state = option.state
@ -249,7 +257,7 @@
this.$http.req('common/get_user_info', {code:this.code,state:this.state}, 'POST').then(data=>{
if(data == -1) return
this.$settoken.setToken(data.jwttoken)
this.setLoginUserInfo(data)
this.getDoctorInfo()
// var rebackPagePath = uni.getStorageSync('rebackPagePath')
@ -259,7 +267,7 @@
// })
// }
});
},
async getDoctorInfo() {
await this.$http.req('user/index_info', {}, 'GET').then(data=>{
@ -267,7 +275,6 @@
this.pageShow = true;
let visitFlag = true;
this.doctorInfo = data;
console.log(data)
if(this.doctorInfo.doctor_info && this.doctorInfo.doctor_info.depart_name && this.doctorInfo.doctor_info.depart_name.length>0){
this.doctor_dept = this.doctorInfo.doctor_info.depart_name;
}
@ -275,7 +282,7 @@
this.hospitals = this.doctorInfo.hospital_departs;
this.doctor_dept = this.doctorInfo.hospital_departs[0]['depart_name'];
this.doctorInfo.doctor_info.depart_name = this.doctor_dept;
for (var index = 0; index < this.hospitals.length; index++) {
var element = this.hospitals[index];
this.collapseValue[index] = []
@ -353,8 +360,8 @@
let lats = z * Math.sin(theta) + 0.006;
return {
lng: lngs,
lat: lats
}
lat: lats
}
}
}
}
@ -456,7 +463,7 @@
margin-bottom: 36rpx;
border-bottom: 2rpx solid #F1F1F1;
padding-bottom: 36rpx;
&:last-child{
margin-bottom: 0rpx;
padding-bottom: 0rpx;
@ -542,7 +549,7 @@
}
.notice-collapse {
margin-top: 24rpx;
/deep/ {
::v-deep {
.uni-collapse-item__title-box{
padding: 0;
display: flex;
@ -599,10 +606,10 @@
letter-spacing: 0.22rpx;
color: #666666;
}
}
}
.bot{
margin-top: 16rpx;
}
@ -630,7 +637,7 @@
width: 714rpx;
margin: 0 auto;
}
}
</style>

12
pages/modify_visitor/modify_visitor.vue

@ -58,7 +58,6 @@
title: '新增就诊人'
});
}
console.log(88888)
},
onShow() {
if(this.vid) this.getVisitorInfo()
@ -75,21 +74,24 @@
var addtimer = setTimeout(function() {
that.adding = false
}, 5000);
var req = 'user/add_visitor'
var method = 'POST'
if(this.vid){
param.id = this.vid
req = 'user/update_visitor'
}
this.$http.req(req, param, method, true).then(data=>{
clearTimeout(addtimer)
this.adding = false
if(this.vid){
uni.removeStorageSync('visitor_info_'+ this.vid)
}
this.$func.toPage('/pages/visitors/visitors?type='+this.type)
uni.navigateBack()
// this.$func.toPage('/pages/visitors/visitors?type='+this.type)
});
},
getVisitorInfo() {
@ -202,5 +204,5 @@
}
}
}
</style>

6
pages/visit_detail/visit_detail.vue

@ -208,7 +208,7 @@
box-sizing: border-box;
.ccpop{
&.bed-edit-pop{
/deep/{
::v-deep{
.uni-data-checklist{
display: none !important;
}
@ -220,7 +220,7 @@
}
}
}
/deep/{
::v-deep{
uni-view[name="content"]{
border-radius: 40rpx;
}
@ -262,7 +262,7 @@
.list-box{
.item-wrapper{
.item-inner /deep/{
.item-inner ::v-deep{
.bi{
align-items: center;
column-gap: 12rpx;

53
pages/visitors/visitors.vue

@ -1,9 +1,9 @@
<template>
<view class='add-visitor-page'>
<view class='add-visitor-page' v-show="pageshow">
<view class="h-name over PfScSemibold">
{{hospital_depart_name}}
</view>
<view class="header block flex line40" @click="addVisitor" v-if="type != 3">
<img :src="cssUrl+'add.svg'">增加就诊人
</view>
@ -22,26 +22,25 @@
<img class="bg" :src="cssUrl+'visitor_list__bg.svg'">
</view>
</view>
<view class="baodao-empty" v-if="type == 3 && !hasBaoDaoData">
<img :src="cssUrl+'empty.png'">
<text>今日没有预约哦请先预约时间</text>
</view>
<view class="submit flex baodao-submit" v-if="type == 3 && !hasBaoDaoData">
<view :class="'btn cancel btn1 PfScMedium'" hover-class="hover" @click="reback">返回</view>
<view class="btn primary btn1 PfScMedium" hover-class="hover" @click="appointTime">预约时间</view>
</view>
<view class="submit" v-if="type == 1" @click="toPrebook">
<view class="submit" v-if="type == 0" @click="toPrebook">
<view class="bot primary btn btn2 submitbtn" hover-class="hover">
确认预约已选{{selectCount}}
</view>
<view class="tip height40">请确保预约就诊前在门诊先挂号</view>
</view>
<view class="submit" v-if="type == 3 && hasBaoDaoData" @click="toPrebook">
<view class="submit" v-if="type == 1" @click="toPrebook">
<view class="bot primary btn btn2 submitbtn" hover-class="hover">
确认以上患者已到已选{{selectCount}}
</view>
@ -78,10 +77,10 @@
<view class="owe right" v-else-if="item.hospital"><text>{{-item.remain_num}}</text></view>
</view>
</view>
</view>
</view>
<pop
ref="popcom"
:content="popContent"
@ -96,12 +95,12 @@
<script>
import pop from '@/components/pop.vue';
export default {
data() {
return {
cssUrl:this.cssUrl,
type:1,
type:-1,
res:true,
popContent:'删除张杨明后,就诊记录还可以查到,确定删除吗?',
popTitle:'确认删除',
@ -114,7 +113,9 @@
popIndex:0,
depart_id:0,
hospital_depart_name:'',
hasBaoDaoData:false
hasBaoDaoData:false,
type:-1,
pageshow:false,
}
},
components:{
@ -126,7 +127,7 @@
depart_info = JSON.parse(depart_info)
this.hospital_depart_name = depart_info.hospital_name + ' ' + depart_info.depart_name
}
if(option.type) {
this.type = option.type
}else{
@ -142,6 +143,14 @@
this.$pop.modelShow('请先选择要预约的医院科室', '/pages/index/index')
return
}
if(this.type == 3 && !option.depart_id) {
this.$pop.modelShow('签到二维码有误或已过期!', '/pages/index/index')
return
}
if(this.type == 3) this.depart_id = option.depart_id
},
onReady() {
if(this.type == 2){
@ -152,11 +161,13 @@
uni.setNavigationBarTitle({
title:'确认报到'
})
this.getDepartInfo();
}else{
uni.setNavigationBarTitle({
title:'请选择就诊人'
})
}
},
methods: {
reback(){
@ -231,6 +242,16 @@
}
});
},
getDepartInfo() {
this.$http.req('user/get_depart_info', {depart_id:this.depart_id}, 'POST').then(data=>{
this.type = data.type
if(this.type == 2){
this.$pop.modelShow('签到二维码已过期', '/pages/index/index')
return;
}
this.pageshow = true
});
},
showPopCom() {
this.$refs.popcom.open()
},
@ -269,7 +290,7 @@
this.$pop.modelShow('请选择就诊人')
return
}
this.activeVisitors = []
for (var i = 0; i < this.visitUsers.length; i++) {
if(this.visitUsers[i].select) this.activeVisitors.push(this.visitUsers[i])
@ -453,7 +474,7 @@
color: #FFFFFF;
}
}
.submit{
position: fixed;
width: 100%;

18
pages/visitors_new/visitors_new.vue

@ -36,14 +36,14 @@
cssUrl:this.cssUrl,
depart_id:0,
hospital_depart_name:'',
value:'',
type: 0,
types: [{
text: '等医生叫号',
value: 0
}, {
text: '找床位候诊',
value: 1
value:'',
type: 0,
types: [{
text: '等医生叫号',
value: 0
}, {
text: '找床位候诊',
value: 1
}],
}
},
@ -73,7 +73,7 @@
<style lang="scss" scoped>
.waiting-method-page{
overflow: hidden;
/deep/ {
::v-deep {
.uni-card{
border-radius: 0;
padding: 34rpx 42rpx !important;

Loading…
Cancel
Save