Merge remote-tracking branch 'origin/dev' into dev
This commit is contained in:
commit
970d3fdffc
11
api/pagesB/confirmation/index.js
Normal file
11
api/pagesB/confirmation/index.js
Normal file
@ -0,0 +1,11 @@
|
||||
import request from "../../request.js"
|
||||
|
||||
export function getListByDoctor(doctorId) {
|
||||
return request({
|
||||
url: `/nurseApplet/schedule/plan/getListByDoctor?doctorId=${doctorId}`,
|
||||
method: 'get',
|
||||
header: {
|
||||
Authorization: 'Bearer' + ' ' + uni.getStorageSync('token')
|
||||
},
|
||||
})
|
||||
}
|
||||
@ -89,7 +89,7 @@
|
||||
this.patientName = this.userinfo.patientName
|
||||
if (this.userinfo) {
|
||||
checkSignApply(this.userinfo.cardNo).then(res => {
|
||||
if (res.code != 0) {
|
||||
if (res.data.code != 0) {
|
||||
this.checkSign = true
|
||||
} else {
|
||||
this.checkSign = false
|
||||
@ -114,7 +114,6 @@
|
||||
},
|
||||
// 家医签约
|
||||
goonline() {
|
||||
console.log(!this.userinfo)
|
||||
if (!this.userinfo) {
|
||||
this.gologin();
|
||||
} else {
|
||||
|
||||
@ -1,6 +1,5 @@
|
||||
.app {
|
||||
background: #ffffff;
|
||||
|
||||
.titles {
|
||||
height: 80rpx;
|
||||
}
|
||||
@ -28,9 +27,9 @@
|
||||
height: 68rpx;
|
||||
background-color: #ffffff;
|
||||
border-radius: 10rpx;
|
||||
border: solid 1rpx #60cee3;
|
||||
border: solid 1rpx #26A888;
|
||||
position: absolute;
|
||||
color: #60cee3;
|
||||
color: #26A888;
|
||||
bottom: 50rpx;
|
||||
left: 10%;
|
||||
}
|
||||
|
||||
@ -109,7 +109,7 @@
|
||||
我的预约
|
||||
</view>
|
||||
</view>
|
||||
<view class="item">
|
||||
<view class="item" @tap="evaluation">
|
||||
<image src="../../static/pages/fuwupingjia.png" mode=""></image>
|
||||
<view class="text">
|
||||
服务评价
|
||||
@ -304,6 +304,13 @@
|
||||
this.gologin();
|
||||
}
|
||||
},
|
||||
// 服务评价
|
||||
evaluation(){
|
||||
uni.navigateTo({
|
||||
url: '/pagesB/Serviceevaluation/Serviceevaluation'
|
||||
})
|
||||
|
||||
},
|
||||
//去登陆
|
||||
gologin() {
|
||||
this.$refs.uToast.show({
|
||||
|
||||
@ -1,9 +1,9 @@
|
||||
<template>
|
||||
<view class="app">
|
||||
<view class="content" v-for="(item,index) in prejectlist">
|
||||
<view class="content" v-for="(item,index) in prejectlist" @tap="result(item)">
|
||||
<view class="big">{{item.projectName}}
|
||||
</view>
|
||||
<view class="servename" @tap="result(item)">
|
||||
<view class="servename">
|
||||
查看筛查结果
|
||||
</view>
|
||||
</view>
|
||||
|
||||
260
pagesB/Serviceevaluation/Serviceevaluation.vue
Normal file
260
pagesB/Serviceevaluation/Serviceevaluation.vue
Normal file
@ -0,0 +1,260 @@
|
||||
<template>
|
||||
<view class="app">
|
||||
<view class="myorder titles" @tap="expertOrder">
|
||||
<view class="title">
|
||||
<image src="../../static/pagesB/updata.png" mode=""></image>
|
||||
我的评价
|
||||
</view>
|
||||
<view class="righttitle">
|
||||
<image src="../../static/huijiantou.png" mode=""></image>
|
||||
</view>
|
||||
</view>
|
||||
<view class="orderitem">
|
||||
<view class="tiemitem">
|
||||
<span>孤注一掷</span>
|
||||
</view>
|
||||
<view class="details">
|
||||
<image src="../../static/headsculpture.png" mode=""></image>
|
||||
<view class="ppointment">
|
||||
<view class="doctorname">
|
||||
<span>齐鲁医院张先生</span><span>¥30</span>
|
||||
</view>
|
||||
<view class="reservation">
|
||||
评价时间:2023-09-08
|
||||
</view>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
<view class="bottom">
|
||||
<span @tap="rate()">评价</span>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
//评价
|
||||
rate(item) {
|
||||
uni.navigateTo({
|
||||
url: `/pagesB/goodsorderRate/goodsorderRate?item=${JSON.stringify(item)}&delta=${1}`
|
||||
})
|
||||
},
|
||||
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.app{
|
||||
height: 100vh;
|
||||
background-color: #F7F5F5;
|
||||
padding: 30rpx 0 0 0;
|
||||
overflow: scroll;
|
||||
.myorder {
|
||||
position: relative;
|
||||
background: #fff;
|
||||
height: 73rpx;
|
||||
width: 96%;
|
||||
left: 50%;
|
||||
transform: translateX(-50%);
|
||||
|
||||
.orderStatus {
|
||||
text-align: center;
|
||||
margin: 60rpx auto 30rpx;
|
||||
width: 90%;
|
||||
display: flex;
|
||||
justify-content: space-around;
|
||||
padding-bottom: 30rpx;
|
||||
|
||||
.item {
|
||||
width: 25%;
|
||||
|
||||
.text {
|
||||
font-size: 26rpx;
|
||||
color: #333333;
|
||||
margin-top: 10rpx;
|
||||
}
|
||||
|
||||
image {
|
||||
width: 70rpx;
|
||||
height: 60rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.righttitle {
|
||||
font-size: 26rpx;
|
||||
color: #969494;
|
||||
position: absolute;
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
transform: translateY(-50%);
|
||||
right: 30rpx;
|
||||
|
||||
image {
|
||||
vertical-align: middle;
|
||||
padding-left: 20rpx;
|
||||
width: 13rpx;
|
||||
height: 23rpx;
|
||||
display: inline-block;
|
||||
}
|
||||
}
|
||||
|
||||
.title {
|
||||
margin-left: 30rpx;
|
||||
font-size: 32rpx;
|
||||
color: #4B4B4B;
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
transform: translateY(-50%);
|
||||
image{
|
||||
/* vertical-align: middle; */
|
||||
/* padding-left: 20rpx; */
|
||||
width: 32rpx;
|
||||
height: 32rpx;
|
||||
/* display: inline-block; */
|
||||
/* margin-top: 11rpx; */
|
||||
margin-right: 20rpx;
|
||||
position: relative;
|
||||
top: 7rpx;
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
.orderitem {
|
||||
width: 96%;
|
||||
height: 383rpx;
|
||||
background: #FFFFFF;
|
||||
box-shadow: 0rpx 9rpx 31rpx 9rpx rgba(0, 0, 0, 0.03);
|
||||
border-radius: 5rpx;
|
||||
margin: 20rpx auto;
|
||||
position: relative;
|
||||
margin-bottom: 20rpx;
|
||||
|
||||
.tiemitem {
|
||||
width: 92%;
|
||||
font-size: 28rpx;
|
||||
font-family: Source Han Sans CN;
|
||||
font-weight: 400;
|
||||
color: #000000;
|
||||
position: absolute;
|
||||
// background: red;
|
||||
left: 35rpx;
|
||||
top: 30rpx;
|
||||
|
||||
span:nth-child(2) {
|
||||
margin-left: 20rpx;
|
||||
}
|
||||
|
||||
span:nth-child(3) {
|
||||
display: inline-block;
|
||||
position: absolute;
|
||||
right: 0;
|
||||
font-weight: 500;
|
||||
color: #26A888;
|
||||
}
|
||||
}
|
||||
|
||||
.details {
|
||||
width: 96%;
|
||||
height: 200rpx;
|
||||
// background-color: #26A888;
|
||||
position: absolute;
|
||||
top: 97rpx;
|
||||
left: 50%;
|
||||
transform: translateX(-50%);
|
||||
|
||||
image {
|
||||
width: 180rpx;
|
||||
height: 180rpx;
|
||||
border-radius: 5rpx;
|
||||
position: absolute;
|
||||
}
|
||||
|
||||
.ppointment {
|
||||
// background: red;
|
||||
position: absolute;
|
||||
width: 71%;
|
||||
height: 100%;
|
||||
right: 0;
|
||||
|
||||
.doctorname {
|
||||
font-family: Source Han Sans CN;
|
||||
font-weight: 600;
|
||||
color: #333333;
|
||||
|
||||
span:nth-child(1) {
|
||||
font-size: 28rpx;
|
||||
}
|
||||
|
||||
span:nth-child(2) {
|
||||
display: inline-block;
|
||||
position: absolute;
|
||||
font-size: 28rpx;
|
||||
right: 0;
|
||||
font-family: Source Han Sans CN;
|
||||
font-weight: 500;
|
||||
color: #333333;
|
||||
}
|
||||
}
|
||||
|
||||
.reservation {
|
||||
font-size: 28rpx;
|
||||
font-family: Source Han Sans CN;
|
||||
font-weight: 400;
|
||||
color: #959595;
|
||||
position: absolute;
|
||||
top: 24%;
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.bottom {
|
||||
position: absolute;
|
||||
width: 96%;
|
||||
height: 20%;
|
||||
bottom: 4%;
|
||||
font-size: 28rpx;
|
||||
font-family: Source Han Sans CN;
|
||||
|
||||
// span:nth-child(1) {
|
||||
// position: absolute;
|
||||
// font-weight: 400;
|
||||
// color: #959595;
|
||||
// top: 50%;
|
||||
// transform: translateY(-50%);
|
||||
// left: 5%;
|
||||
|
||||
// }
|
||||
|
||||
span:nth-child(1) {
|
||||
line-height: 30px;
|
||||
width: 169rpx;
|
||||
height: 61rpx;
|
||||
background: #26A888;
|
||||
border-radius: 5rpx;
|
||||
display: inline-block;
|
||||
font-size: 28rpx;
|
||||
font-weight: 400;
|
||||
color: #FFFFFF;
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 50%;
|
||||
transform: translateY(-50%);
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
</style>
|
||||
@ -192,7 +192,6 @@
|
||||
onShow() {
|
||||
let that = this
|
||||
uni.$on('updata', function(data) {
|
||||
console.log(data.updata,'9')
|
||||
if (data.updata) {
|
||||
that.orderlist = JSON.parse(data.updata)
|
||||
}
|
||||
@ -207,7 +206,6 @@
|
||||
})
|
||||
},
|
||||
onLoad(options) {
|
||||
console.log(options,'89')
|
||||
var that = this
|
||||
const value = uni.getStorageSync('openid');
|
||||
if (value) {
|
||||
|
||||
@ -79,11 +79,21 @@
|
||||
}
|
||||
|
||||
.textarea {
|
||||
font-size: 18rpx;
|
||||
font-size: 22rpx;
|
||||
font-weight: 400;
|
||||
color: #8E8E8E;
|
||||
line-height: 42rpx;
|
||||
padding: 30rpx 0 0 40rpx;
|
||||
margin: 30rpx 40rpx 0 40rpx;
|
||||
padding: 30rpx;
|
||||
height: 250rpx;
|
||||
background: #FFFFFF;
|
||||
border: 2rpx solid #26A888;
|
||||
border-radius: 5rpx;
|
||||
.title{
|
||||
font-weight: 500;
|
||||
color: #EE8F15;
|
||||
margin-bottom: 20rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.text {
|
||||
@ -91,6 +101,12 @@
|
||||
font-weight: 400;
|
||||
color: #333333;
|
||||
padding: 30rpx 0 0 40rpx;
|
||||
text{
|
||||
padding-left: 20rpx;
|
||||
font-size: 20rpx;
|
||||
font-weight: 400;
|
||||
color: #8E8E8E;
|
||||
}
|
||||
}
|
||||
|
||||
::v-deep .u-upload {
|
||||
@ -151,28 +167,4 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.title {
|
||||
width: 100%;
|
||||
padding: 10rpx 0 10rpx 35rpx;
|
||||
|
||||
.left {
|
||||
vertical-align: middle;
|
||||
display: inline-block;
|
||||
width: 10rpx;
|
||||
height: 30rpx;
|
||||
background: #26A888;
|
||||
border-radius: 1rpx;
|
||||
}
|
||||
|
||||
.right {
|
||||
vertical-align: middle;
|
||||
display: inline-block;
|
||||
font-size: 30rpx;
|
||||
font-weight: 500;
|
||||
color: #26A888;
|
||||
line-height: 30rpx;
|
||||
margin-left: 20rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,12 +1,5 @@
|
||||
<template>
|
||||
<view class="app">
|
||||
<view class="title">
|
||||
<view class="left">
|
||||
</view>
|
||||
<view class="right">
|
||||
第一步:填写个人信息
|
||||
</view>
|
||||
</view>
|
||||
<view class="item">
|
||||
<view class="text">
|
||||
现住址所在区
|
||||
@ -40,22 +33,11 @@
|
||||
placeholder-class="phsy" />
|
||||
</view>
|
||||
<view class="text">
|
||||
选择医生
|
||||
预约时间
|
||||
<text>请选择时间</text>
|
||||
</view>
|
||||
<view class="select" @tap='gochoosedoctor'>
|
||||
<text v-if="formdata.doctorName" style="font-size: 26rpx;color: #303133;">{{formdata.doctorName}}</text>
|
||||
<text v-else>请选择医生</text>
|
||||
<image src="../../static/huijiantou.png" mode=""></image>
|
||||
</view>
|
||||
</view>
|
||||
<view class="title">
|
||||
<view class="left">
|
||||
</view>
|
||||
<view class="right">
|
||||
第二步:填写问诊信息
|
||||
</view>
|
||||
</view>
|
||||
<view class="item">
|
||||
<tabs :list="appointmentTimeList" :current="timecurrent" @change="timechange" active-color="#26A888">
|
||||
</tabs>
|
||||
<view class="text">
|
||||
问题简述
|
||||
</view>
|
||||
@ -84,29 +66,24 @@
|
||||
<u-input v-model="formdata.medicalRecord" class="uinput noimageuinput" placeholder=" " type="textarea"
|
||||
:maxlength="100" />
|
||||
</view>
|
||||
</view>
|
||||
<view class="title">
|
||||
<view class="left">
|
||||
</view>
|
||||
<view class="right">
|
||||
第三步:上传附件文件
|
||||
</view>
|
||||
</view>
|
||||
<view class="item">
|
||||
<view class="text">
|
||||
附件材料上传
|
||||
上传检查单/患处照片
|
||||
<text>(最多8张)</text>
|
||||
</view>
|
||||
<u-upload ref="uUpload" :max-count='9' :action="uoloadaction" :auto-upload="false" upload-text=' '
|
||||
@on-choose-complete='onchoosecomplete' @on-success='onsuccess' @on-uploaded='onuploaded'></u-upload>
|
||||
<view class="textarea">
|
||||
<view class="">
|
||||
最多支持9个文件;
|
||||
<view class="title">
|
||||
温馨提示:
|
||||
</view>
|
||||
<view class="">
|
||||
单个文件大小不允许超过10MB;
|
||||
1.下单后24h内我们会和您确认具体时间点
|
||||
</view>
|
||||
<view class="">
|
||||
只支持上传照片图片、视频文件,后缀类型为:JPG.PNG.MP4
|
||||
2.请提前准备好健康资料,以备专家参考
|
||||
</view>
|
||||
<view class="">
|
||||
3.请提前下载“腾讯会议”APP
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
@ -136,50 +113,57 @@
|
||||
import {
|
||||
consultationInfo
|
||||
} from '@/api/pagesB/createnewconsultation/createnewconsultation.js'
|
||||
import {
|
||||
getListByDoctor
|
||||
} from '@/api/pagesB/confirmation/index.js'
|
||||
import tabs from '@/components/utabs/u-tabs.vue'
|
||||
export default {
|
||||
components: {
|
||||
"m-city": gkcity
|
||||
"m-city": gkcity,
|
||||
tabs
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
// 非真实地址
|
||||
uoloadaction: '',
|
||||
uoloadaction: '', // 非真实地址
|
||||
list: [],
|
||||
addresslength: null,
|
||||
imglistlength: null,
|
||||
address: '请选择所属地区', //页面所属区域
|
||||
timecurrent: 0, //时间下标
|
||||
appointmentTimeList: [],
|
||||
formdata: {
|
||||
address: '请选择所属地区', //页面所属区域
|
||||
address: null, //页面所属区域
|
||||
patientId: 1,
|
||||
patientName: '李广君',
|
||||
cardNo: '370882199909092123',
|
||||
phone: '17615455437',
|
||||
address: '',
|
||||
doctorId: 1,
|
||||
doctorName: '李医生',
|
||||
consultationType: 'IMAGE_TEXT_CONSULTATION',
|
||||
problemDescription: '',
|
||||
situationDescription: '',
|
||||
problemStatement: '',
|
||||
medicalRecord: '',
|
||||
fileUrls: []
|
||||
address: null,
|
||||
doctorId: null,
|
||||
doctorName: null,
|
||||
consultationType: 'VIDEO_CONSULTATION',
|
||||
problemDescription: null,
|
||||
situationDescription: null,
|
||||
problemStatement: null,
|
||||
medicalRecord: null,
|
||||
fileUrls: [],
|
||||
appointmentDate: null,
|
||||
appointmentStartTime: null,
|
||||
appointmentEndTime: null,
|
||||
}
|
||||
};
|
||||
},
|
||||
onLoad(options) {
|
||||
this.formdata.doctorName = options.doctorName
|
||||
this.formdata.doctorId = options.doctorId
|
||||
this.uoloadaction = baseurl + '/nurseApplet/consultationInfo/uploadConsultationFile'
|
||||
},
|
||||
onShow() {
|
||||
this.areaInfo();
|
||||
let that = this
|
||||
uni.$on('doctordata', function(data) {
|
||||
let item = JSON.parse(data.data)
|
||||
that.formdata.doctorName = item.realname
|
||||
that.formdata.doctorId = item.userNo
|
||||
uni.$off('doctordata')
|
||||
})
|
||||
this.getListByDoctorinfo();
|
||||
},
|
||||
onShow() {},
|
||||
methods: {
|
||||
timechange(index) {
|
||||
this.timecurrent = index
|
||||
},
|
||||
updata() {
|
||||
if (this.imglistlength > 0) {
|
||||
this.$refs.uUpload.upload()
|
||||
@ -199,15 +183,25 @@
|
||||
this.info();
|
||||
},
|
||||
info() {
|
||||
consultationInfo(this.formdata).then(res => {
|
||||
if (res.code == 200) {
|
||||
this.$refs.uToast.show({
|
||||
title: '新建图文问诊成功',
|
||||
type: 'success',
|
||||
duration: '1500',
|
||||
back: 1
|
||||
})
|
||||
}
|
||||
console.log(this.formdata)
|
||||
// consultationInfo(this.formdata).then(res => {
|
||||
// if (res.code == 200) {
|
||||
// this.$refs.uToast.show({
|
||||
// title: '新建图文问诊成功',
|
||||
// type: 'success',
|
||||
// duration: '1500',
|
||||
// back: 1
|
||||
// })
|
||||
// }
|
||||
// })
|
||||
},
|
||||
getListByDoctorinfo() {
|
||||
getListByDoctor(this.formdata.doctorId).then(res => {
|
||||
res.data.forEach(e => {
|
||||
e.dates = e.scheduleDate.slice(5, 10)
|
||||
e.name = e.week
|
||||
})
|
||||
this.appointmentTimeList = res.data
|
||||
})
|
||||
},
|
||||
// 显示三级地址联动
|
||||
@ -237,11 +231,6 @@
|
||||
this.address = '请选择所属地区'
|
||||
}
|
||||
},
|
||||
gochoosedoctor() {
|
||||
uni.navigateTo({
|
||||
url: '/pagesC/choosedoctor/choosedoctor'
|
||||
})
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
@ -230,7 +230,7 @@
|
||||
// if (res.data.loginFlag) {
|
||||
// that.usershow = false
|
||||
uni.navigateTo({
|
||||
url: `/pagesB/confirmation/confirmation?price=${item.consultingFee}&hospitalPersonId=${item.id}&&personName=${item.personName}`
|
||||
url: `/pagesB/confirmation/confirmation?price=${item.consultingFee}&doctorId=${item.id}&doctorName=${item.personName}`
|
||||
})
|
||||
// } else {
|
||||
// that.usershow = true
|
||||
|
||||
@ -277,7 +277,11 @@
|
||||
this.query.gender = 99
|
||||
}
|
||||
}
|
||||
this.protocolshow = true
|
||||
if (this.query.residentAutographPath) {
|
||||
this.updata();
|
||||
} else {
|
||||
this.protocolshow = true
|
||||
}
|
||||
},
|
||||
updata() {
|
||||
if (this.radio == 2) {
|
||||
@ -511,7 +515,8 @@
|
||||
},
|
||||
//接收拍照或签名
|
||||
residentAutographPath(data) {
|
||||
this.query.residentAutographPath = data
|
||||
this.query.residentAutographPath = data.residentAutographPath
|
||||
this.protocolshow = false
|
||||
},
|
||||
},
|
||||
onLoad(options) {
|
||||
@ -527,6 +532,10 @@
|
||||
if (day < 10) {
|
||||
day = '0' + day;
|
||||
}
|
||||
let userinfo = uni.getStorageSync('userinfo');
|
||||
this.query.residentName = userinfo.patientName
|
||||
this.query.identity = userinfo.cardNo
|
||||
this.query.phone = userinfo.patientName
|
||||
this.query.signTime = year + '-' + month + '-' + day;
|
||||
},
|
||||
onShow() {
|
||||
|
||||
BIN
static/pagesB/updata.png
Normal file
BIN
static/pagesB/updata.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 4.2 KiB |
Loading…
Reference in New Issue
Block a user