diff --git a/app.json b/app.json
index 4fad8ed..a59b0a4 100644
--- a/app.json
+++ b/app.json
@@ -86,6 +86,18 @@
"pages/globalCall/globalCall"
],
"independent": false
+ },
+ {
+ "root": "healthyService",
+ "name": "healthyService",
+ "pages": [
+ "pages/healthyIntro/healthyIntro",
+ "pages/healthyDetail/healthyDetail",
+ "pages/visitDetail/visitDetail",
+ "pages/healthyOrder/healthyOrder",
+ "pages/healthyOrderDetail/healthyOrderDetail"
+ ],
+ "independent": true
}
],
"preloadRule": {
diff --git a/components/navbar/navbar.js b/components/navbar/navbar.js
index df35b70..6af007f 100644
--- a/components/navbar/navbar.js
+++ b/components/navbar/navbar.js
@@ -25,9 +25,9 @@ Component({
this.triggerEvent('handleFocus',true)
},
goInquirtForm(){
- // wx.navigateTo({
- // url: '/patient/pages/expertDetail/expertDetail?doctor_id=516904855116750848',
- // })
+ wx.navigateTo({
+ url: '/healthyService/pages/healthyIntro/healthyIntro',
+ })
}
},
diff --git a/healthyService/pages/healthyDetail/healthyDetail.js b/healthyService/pages/healthyDetail/healthyDetail.js
new file mode 100644
index 0000000..287edb5
--- /dev/null
+++ b/healthyService/pages/healthyDetail/healthyDetail.js
@@ -0,0 +1,68 @@
+// healthyService/pages/healthyDetail/healthyDetail.js
+import {throttle} from "../../../utils/util"
+const app = getApp()
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ img_host:app.hostConfig().imghost
+ },
+
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad(options) {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面初次渲染完成
+ */
+ onReady() {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow() {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面隐藏
+ */
+ onHide() {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面卸载
+ */
+ onUnload() {
+
+ },
+
+ /**
+ * 页面相关事件处理函数--监听用户下拉动作
+ */
+ onPullDownRefresh() {
+
+ },
+
+ /**
+ * 页面上拉触底事件的处理函数
+ */
+ onReachBottom() {
+
+ },
+
+ /**
+ * 用户点击右上角分享
+ */
+ onShareAppMessage() {
+
+ }
+})
\ No newline at end of file
diff --git a/healthyService/pages/healthyDetail/healthyDetail.json b/healthyService/pages/healthyDetail/healthyDetail.json
new file mode 100644
index 0000000..9ce900b
--- /dev/null
+++ b/healthyService/pages/healthyDetail/healthyDetail.json
@@ -0,0 +1,6 @@
+{
+ "usingComponents": {
+ "nav":"../../../components/nav/nav"
+ },
+ "navigationStyle":"custom"
+}
\ No newline at end of file
diff --git a/healthyService/pages/healthyDetail/healthyDetail.wxml b/healthyService/pages/healthyDetail/healthyDetail.wxml
new file mode 100644
index 0000000..f39109a
--- /dev/null
+++ b/healthyService/pages/healthyDetail/healthyDetail.wxml
@@ -0,0 +1,67 @@
+
+
+
+
+
+
+
+ 服务权益
+
+
+
+ 专属标识:
+ 享有特殊标识,获得医生全面照护
+
+
+ 服务周期:
+ 购买后,从第一次消费起90天内
+
+
+ 图文问诊2次/月
+ 1、医生接诊后,每次可持续48小时;
+
+ 2、图片、文字、语音形式,无限制的进行沟通;
+
+ 3、超出的问诊需按原价的图文服务购买。
+
+
+ 处方:
+ 1、每次问诊,只可产生一个处方单;
+
+
+ 2、服务包含30盒肝爽颗粒(步长),每月和医生问诊时,医生开具处方,选择收货地址即可,每次最多只发货10盒。
+
+
+
+ 优惠劵:
+ 1、赠送全品类药品劵10元(不可与其他优惠劵叠加使用);
+
+
+
+ 2、赠送肝胆相照商城优惠劵100元(仅限纽娃复合蛋白营养素固体饮料使用,注册肝胆相照商城后,2~3个工作日到账)。
+
+
+
+ 退费:
+ 1、未使用随时退;
+
+
+
+
+
+ 2、健康包开始使用后如需退款请联系客服,退款不收取任何服务费等额外费用,但不支持部分退款:
+
+
+ 3、药品一经发出,问诊一经接诊,均概不退换;
+
+
+ 4、未消费健康包内容可退款,已消费服务的部分按原价计费,即:已发生的问诊按照问诊时互联网医院显示的价格结算,肝爽颗粒按照原价每盒42.8元结算。
+
+
+
+
+
+
+ 立即购买:¥XX.XX
+
+
\ No newline at end of file
diff --git a/healthyService/pages/healthyDetail/healthyDetail.wxss b/healthyService/pages/healthyDetail/healthyDetail.wxss
new file mode 100644
index 0000000..584cea8
--- /dev/null
+++ b/healthyService/pages/healthyDetail/healthyDetail.wxss
@@ -0,0 +1,88 @@
+page{
+ height:100vh;
+ overflow: hidden;
+}
+/* healthyService/pages/healthyDetail/healthyDetail.wxss */
+.page{
+ width:100%;
+ height:calc(100% - 172rpx);
+ margin-top: 172rpx;
+ display: flex;
+ overflow: hidden;
+ flex-direction: column;
+}
+.dcimg{
+ width:100%;
+ position: absolute;
+ z-index:-1;
+}
+.detailbox{
+ overflow: hidden;
+ /* position: relative; */
+ z-index:1;
+ flex:1;
+ display: flex;
+ flex-direction: column;
+margin-top: 200rpx;
+background: #FFFFFF;
+border-radius: 32rpx 32rpx 0rpx 0rpx;
+}
+.con{
+ flex:1;
+ padding: 0 30rpx;
+ overflow-y: scroll;
+ -webkit-overflow-scrolling: touch;
+}
+.quanyi{
+ position: relative;
+ width:260rpx;
+ margin:0 auto;
+ height:70rpx;
+}
+.quanyiImg{
+ width:260rpx;
+ height:70rpx;
+}
+.cell{
+ margin-bottom: 30rpx;
+}
+.quanyiText{
+ top:0;
+ position: absolute;
+
+ font-size: 34rpx;
+ width:260rpx;
+ height:70rpx;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ color: #FFFFFF;
+}
+
+.celltitle{
+ font-weight: 550;
+ font-size: 30rpx;
+ color: #000000;
+}
+.celldesc{
+ margin-top: 15rpx;
+ font-size: 30rpx;
+ color: #000000;
+}
+.buttonbox{
+ width:100%;
+ height:200rpx;
+}
+.btn{
+ height: 94rpx;
+ margin:35rpx 30rpx 0;
+ background: #3CC7C0;
+border-radius: 47rpx;
+font-size: 36rpx;
+color: #FFFFFF;
+display: flex;
+align-items: center;
+justify-content: center;
+line-height: 50rpx;
+text-align: center;
+}
\ No newline at end of file
diff --git a/healthyService/pages/healthyIntro/healthyIntro.js b/healthyService/pages/healthyIntro/healthyIntro.js
new file mode 100644
index 0000000..40e47a7
--- /dev/null
+++ b/healthyService/pages/healthyIntro/healthyIntro.js
@@ -0,0 +1,123 @@
+// healthyService/pages/healthyIntro/healthyIntro.js
+import {throttle} from "../../../utils/util"
+const app = getApp()
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ blockHeight:"150rpx"
+ },
+ goDetail:throttle(function(){
+ app.method.navigateTo({
+ url: '/healthyService/pages/visitDetail/visitDetail',
+ //url: '/healthyService/pages/healthyDetail/healthyDetail',
+ })
+ }),
+// 显示遮罩层
+showModal() {
+ this.setData({
+ hideModal: true,
+ blockHeight:"1130rpx"
+ })
+ },
+ // 隐藏遮罩层
+ hideModal() {
+
+ this.setData({
+ hideModal: false,
+ blockHeight:"300rpx"
+ })
+ },
+ touchstart(e) {
+ this.setData({
+ startX: e.changedTouches[0].clientX,
+ startY: e.changedTouches[0].clientY
+ })
+ },
+ angle(start, end) {
+ var _X = end.X - start.X,
+ _Y = end.Y - start.Y;
+ //返回角度 Math.atan()返回数字的反正切值
+ return 360 * Math.atan(_Y / _X) / (2 * Math.PI);
+ },
+ touchend(e) {
+ let {startX,startY} = this.data;
+ let slidingRange = 45; //
+ let touchMoveX = e.changedTouches[0].clientX;
+ let touchMoveY = e.changedTouches[0].clientY;
+ let angle = this.angle({
+ X: startX,
+ Y: startY
+ }, {
+ X: touchMoveX,
+ Y: touchMoveY
+ });
+ //为了方便计算取绝对值判断
+ if (Math.abs(angle) > slidingRange && touchMoveY < startY) {
+
+ this.showModal()
+ // 向上滑动
+ };
+ if (Math.abs(angle) > slidingRange && touchMoveY > startY ) {
+ this.hideModal()
+ // 向下滑动
+ }
+ },
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad(options) {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面初次渲染完成
+ */
+ onReady() {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow() {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面隐藏
+ */
+ onHide() {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面卸载
+ */
+ onUnload() {
+
+ },
+
+ /**
+ * 页面相关事件处理函数--监听用户下拉动作
+ */
+ onPullDownRefresh() {
+
+ },
+
+ /**
+ * 页面上拉触底事件的处理函数
+ */
+ onReachBottom() {
+
+ },
+
+ /**
+ * 用户点击右上角分享
+ */
+ onShareAppMessage() {
+
+ }
+})
\ No newline at end of file
diff --git a/healthyService/pages/healthyIntro/healthyIntro.json b/healthyService/pages/healthyIntro/healthyIntro.json
new file mode 100644
index 0000000..39c3ea8
--- /dev/null
+++ b/healthyService/pages/healthyIntro/healthyIntro.json
@@ -0,0 +1,7 @@
+{
+ "usingComponents": {
+ "nav":"../../../components/nav/nav",
+ "van-popup": "@vant/weapp/popup/index"
+ },
+ "navigationStyle":"custom"
+}
\ No newline at end of file
diff --git a/healthyService/pages/healthyIntro/healthyIntro.wxml b/healthyService/pages/healthyIntro/healthyIntro.wxml
new file mode 100644
index 0000000..290d93f
--- /dev/null
+++ b/healthyService/pages/healthyIntro/healthyIntro.wxml
@@ -0,0 +1,39 @@
+
+
+
+
+
+
+
+
+
+
+
+ 健康包服务医生
+
+
+
+
+
\ No newline at end of file
diff --git a/healthyService/pages/healthyIntro/healthyIntro.wxss b/healthyService/pages/healthyIntro/healthyIntro.wxss
new file mode 100644
index 0000000..c7c5968
--- /dev/null
+++ b/healthyService/pages/healthyIntro/healthyIntro.wxss
@@ -0,0 +1,51 @@
+/* healthyService/pages/healthyIntro/healthyIntro.wxss */
+.page{
+ margin-top: 172rpx;
+ padding-bottom:100rpx;
+ position: relative;
+}
+.btn{
+ position: absolute;
+ left: 50%;
+ margin-left: -232rpx;
+ width:464rpx;
+ height: 86rpx;
+ bottom:200rpx;
+}
+.bg{
+ width:100%;
+}
+.top{
+ position: absolute;
+ top:20rpx;
+ width:100%;
+ display: flex;
+ justify-content: center;
+ padding:20rpx 0;
+ }
+ .top .up{
+ width:40rpx;
+ height:22rpx;
+ transition: all 0.5s;
+ }
+ .top .up.active{
+ transform: rotate(180deg);
+ }
+ .popname{
+ margin-top: 60rpx;
+ padding:20rpx 52rpx 30rpx;
+ font-size: 34rpx;
+ color:#333;
+ border-bottom: 1px solid #E7E7E7;
+ }
+.popwrper{
+ top:0rpx;
+ background-color: #fff;
+ position: absolute;
+ transition: height 0.5s;
+ width:100%;
+ border-radius: 20rpx;
+ overflow: hidden;
+ height:100%;
+ bottom:0px;
+ }
\ No newline at end of file
diff --git a/healthyService/pages/healthyOrder/healthyOrder.js b/healthyService/pages/healthyOrder/healthyOrder.js
new file mode 100644
index 0000000..5417291
--- /dev/null
+++ b/healthyService/pages/healthyOrder/healthyOrder.js
@@ -0,0 +1,274 @@
+// pages/consultOrder/consultOrder.js
+const app = getApp()
+import {detectionList} from "../../../api/checkSugar"
+ import{family} from "../../../api/familyDoc"
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ time: 0,
+ changeStatus:'',
+ changeId:'',
+ isLoading:true,
+ selectstatus:false,
+ selectfamily:false,
+ delId:'',
+ option1: [
+ { text: '全部订单', value: 0 },
+ { text: '待支付', value: 1 },
+ { text: '待绑定', value: 2 },
+ { text: '检测中', value: 3},
+ { text: '检测完成', value: 4},
+ {text:'已取消',value:5}
+
+ ],
+ page:1,
+ isTriggered:false,
+ pageNumber:10,
+ option2: [],
+ detection_status: 0,
+ family_id:0,
+ orderList:[],
+ isLock:false,
+ img_host:'https://oss.prod.applets.igandanyiyuan.com/applet/patient/static',
+ fromType:''
+ },
+ handleRefresher(){
+ this.setData({
+ isLock:false,
+ page:1,
+ orderList:[]
+ })
+ this.getDetectionList();
+ },
+ goBack(flag=true){
+
+ let {fromType}=this.data;
+ if(app.globalData.origion==1){
+ wx.reLaunch({
+ url: '/pages/index/index',
+ })
+ }else if(app.globalData.origion==2){
+ wx.reLaunch({
+ url: '/pages/index/index',
+ })
+ }else{
+ if(fromType){
+ wx.reLaunch({
+ url: '/pages/my/my',
+ })
+ }else{
+ if(true){
+ wx.navigateBack({
+ delta: 1,
+ fail:function(){
+ wx.reLaunch({
+ url: '/pages/index/index',
+ })
+ }
+ })
+ }
+
+ }
+ }
+ },
+ lower(e) {
+ if(!this.data.isLock){
+ this.setData({
+ page: ++this.data.page
+ })
+ this.getDetectionList()
+ }
+ },
+ goExpertList(){
+ app.method.navigateTo({
+ url: '/sugarCheck/pages/checkOrderDetail/checkOrderDetail' //'/pages/expertConsult/expertConsult',
+ })
+ },
+ changeStatus({ detail }){
+ this.setData({
+ isLock:false,
+ page:1,
+ selectstatus:true,
+ detection_status:detail,
+ orderList:[]
+ })
+ this.getDetectionList()
+ },
+ changeFamily({ detail }){
+ this.setData({
+ family_id:detail,
+ isLock:false,
+ selectfamily:true,
+ page:1,
+ orderList:[]
+ })
+ this.getDetectionList()
+ },
+ getDetectionList(){
+ let {detection_status,family_id,page,pageNumber}=this.data;
+ this.setData({
+ isLoading:true
+ })
+ detectionList({
+ detection_status,
+ family_id,
+ page,
+ per_page:pageNumber
+ }).then(data=>{
+ let result=data.data;
+ this.setData({
+ isLoading:false
+ })
+ if(result.length==0){
+ this.setData({
+ isLock:true,
+ isTriggered:false
+ })
+ return false
+ };
+ this.setData({
+ orderList:this.data.orderList.concat(result),
+ isTriggered:false
+ })
+ })
+ },
+ handelCancelOrder(id){
+ cancelOrder(id).then(data=>{
+ wx.showToast({
+ title: '订单取消成功',
+ icon:"none"
+ })
+ })
+ },
+ getfamily(){
+ family().then(data=>{
+
+ let arr=[];
+ data.forEach((item,index)=>{
+ arr[index]={};
+ let sex="";
+ switch (item.sex){
+ case '0':sex="未知";
+ break;
+ case '1':sex="男";
+ break;
+ case '2':sex="女";
+ break;
+ }
+ let age=item.age;
+ arr[index].text=item.card_name+"("+sex+","+age+")";
+ arr[index].value=item.family_id;
+ })
+ arr=[{text:"全部成员",value:0}].concat(arr);
+ this.setData({
+ option2:arr
+ })
+ this.getDetectionList();
+ })
+
+ },
+ goDetail(event){
+ let id=event.currentTarget.dataset.id;
+ app.method.navigateTo({
+ url: '/sugarCheck/pages/checkOrderDetail/checkOrderDetail?order_detection_id='+id,
+ })
+ },
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad(options) {
+ if(options.fromType){
+ this.setData({
+ fromType:options.fromType
+ })
+ };
+ if(options.prevData){
+ let json=JSON.parse(options.prevData);
+ this.setData({
+ changeStatus:json.changeStatus,
+ changeId:json.changesId
+ });
+ }
+ this.getfamily();
+
+
+ },
+
+ /**
+ * 生命周期函数--监听页面初次渲染完成
+ */
+ onReady() {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow() {
+ this.setData({
+ img_host:app.hostConfig().imghost
+ });
+ //刷新列表
+ let {delId,orderList,changeStatus,changeId}=this.data;
+ if(delId){
+ let list=orderList.filter((item)=>{
+ return item.order_detection_id!=delId
+ })
+ this.setData({
+ orderList:list
+ })
+ }else if(changeStatus && changeId){
+ for (let i = 0; i < orderList.length; i++) {
+ const item =orderList[i];
+ if(item.order_detection_id==changeId){
+ let currentitem=`orderList[${i}].detection_status`
+ this.setData({
+ [currentitem]:changeStatus
+ })
+ break;
+ }
+ }
+ }else{
+ // this.setData({
+ // isLock:false,
+ // page:1,
+ // orderList:[]
+ // })
+ // this.getDetectionList();
+ // this.getfamily();
+ }
+ },
+
+ /**
+ * 生命周期函数--监听页面隐藏
+ */
+ onHide() {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面卸载
+ */
+ onUnload() {
+ // this.goBack(false)
+ },
+
+ /**
+ * 页面相关事件处理函数--监听用户下拉动作
+ */
+
+ /**
+ * 页面上拉触底事件的处理函数
+ */
+ onReachBottom() {
+
+ },
+
+ /**
+ * 用户点击右上角分享
+ */
+
+})
\ No newline at end of file
diff --git a/healthyService/pages/healthyOrder/healthyOrder.json b/healthyService/pages/healthyOrder/healthyOrder.json
new file mode 100644
index 0000000..e30fe4e
--- /dev/null
+++ b/healthyService/pages/healthyOrder/healthyOrder.json
@@ -0,0 +1,11 @@
+{
+ "usingComponents": {
+ "van-dropdown-menu": "@vant/weapp/dropdown-menu/index",
+ "van-dropdown-item": "@vant/weapp/dropdown-item/index",
+ "van-count-down": "@vant/weapp/count-down/index"
+
+ },
+ "navigationStyle":"custom",
+ "navigationBarTitleText":"肝胆相照互联网医院"
+
+}
\ No newline at end of file
diff --git a/healthyService/pages/healthyOrder/healthyOrder.wxml b/healthyService/pages/healthyOrder/healthyOrder.wxml
new file mode 100644
index 0000000..8a33a73
--- /dev/null
+++ b/healthyService/pages/healthyOrder/healthyOrder.wxml
@@ -0,0 +1,107 @@
+
+
+
+
+
+ 检测订单
+
+
+
+
+
+
+
+
+
+
+
+
+ 糖组检测
+
+
+ 待支付
+
+
+
+
+ 待绑定
+ 检测中
+ 已开具报告
+ 已取消
+
+ 支付超时
+
+
+
+
+
+
+
+
+
+ {{item.user_doctor.user_name}} {{item.user_doctor.doctor_title}}
+ 平台分配医生中
+ 接诊医生
+
+ {{item.user_doctor.hospital_name}}
+
+
+
+
+
+ 就诊人
+ :
+
+
+ {{item.patient_name}}(未知男女{{item.patient_age}}岁)
+
+
+
+
+
+
+ 下单时间
+ :
+ {{item.created_at}}
+
+
+ 详情
+
+
+
+
+ 下单时间
+ :
+ {{item.created_at}}
+
+
+
+ 待付金额
+ :
+ ¥{{item.payment_amount_total}}
+
+
+ 详情
+
+
+
+
+
+
+
+
+
+ 暂无检测订单
+
+
+
+
\ No newline at end of file
diff --git a/healthyService/pages/healthyOrder/healthyOrder.wxss b/healthyService/pages/healthyOrder/healthyOrder.wxss
new file mode 100644
index 0000000..aff8359
--- /dev/null
+++ b/healthyService/pages/healthyOrder/healthyOrder.wxss
@@ -0,0 +1,332 @@
+/* pages/consultOrder/consultOrder.wxss */
+/**app.wxss**/
+.container {
+ padding-top: 135px;
+ padding-bottom: 10rpx;
+ /* top:280rpx; */
+ /* position: absolute; */
+ width:100%;
+ /* overflow-y: scroll; */
+ background: #F2F2F2;
+ }
+ input{
+ font-family: -apple-system, BlinkMacSystemFont, 'Helvetica Neue', Helvetica,
+ }
+ page{
+ position: relative;
+ width:100%;
+ height:100%;
+ font-family: -apple-system, BlinkMacSystemFont, 'Helvetica Neue', Helvetica,
+ Segoe UI, Arial, Roboto, 'PingFang SC', 'miui', 'Hiragino Sans GB', 'Microsoft Yahei',
+ sans-serif;
+ }
+ .page{
+ width:100vw;
+ height:100vh;
+ background: #f2f2f2;
+ }
+ .contain{padding: 0 30rpx 0rpx;height: 100%;overflow: hidden;position: relative;}
+ ::-webkit-scrollbar {
+ display: none;
+ width: 0;
+ height: 0;
+ color: transparent;
+ }
+ .van-picker__confirm {
+ color:#3CC7C0!important;
+ font-size: 32rpx!important;
+ }
+ .van-picker__title{
+ font-weight: 600!important;
+ color: rgba(0,0,0,0.9)!important;
+ font-size: 32rpx!important;
+ }
+ .van-picker__cancel{
+ color: rgba(0,0,0,0.6)!important;
+ font-size: 32rpx!important;
+ }
+ .nonedata{
+ width:100%;
+ color:#666;
+ min-height: 320rpx;
+ font-size: 28rpx;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ }
+ .ui-navigatorbar {
+ position: fixed;
+ z-index:99;
+ top: 0;
+ width: 750rpx;
+ height: 172rpx;
+ background: #F2F2F2;
+ backdrop-filter: blur(20px);
+ }
+
+ .ui-navigatorbar-back {
+ position: absolute;
+ padding-left:40rpx;
+ padding-right:40rpx;
+ width:30rpx;
+ height:60rpx;
+ left: 0rpx;
+ bottom: 20rpx;
+ }
+
+ .ui-title {
+ position: absolute;
+ width: 350rpx;
+ height: 88rpx;
+ line-height: 56rpx;
+ font-size: 36rpx;
+ color: #000000;
+ bottom: 0;
+ left: 200rpx;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ }
+ .droptitle.active{
+ color:#3CC7C0;
+ }
+ .slotmsg{
+ -webkit-overflow-scrolling: touch;
+ font-size: 28rpx;
+ line-height:40rpx;
+ max-height:60vh;
+ overflow-y: auto;
+ padding:48rpx;
+ text-align: center;
+ }
+ .van-dropdown-item__title{
+ width:100%!important;
+ flex:1;
+ text-align: center;
+ }
+ .van-dropdown-item__icon{
+ z-index:2;
+ position: absolute!important;
+
+ right:25rpx;
+ }
+ .van-cell__value{
+ flex:none!important;
+ z-index:1;
+ }
+ .onlinebox .icon{
+ top:60rpx;
+ left:50%;
+ position: absolute;
+ margin-left: -48rpx;
+ width:96rpx;
+ height:34rpx;
+ border-radius: 0;
+ }
+.page {
+ display: flex;
+ flex-direction: column;
+}
+
+.dropdown {
+ position: relative;
+ height:102rpx;
+ margin-top: 172rpx;
+}
+
+.dropdown .bar {
+ position: absolute;
+ height: 40rpx;
+ width: 1rpx;
+ left: 50%;
+ top: 50%;
+ transform: translate(-50%, -50%);
+ background: #ccc;
+ opacity: 0.9;
+}
+
+.van-dropdown-menu {
+ box-shadow: none !important;
+ border-bottom: 1rpx solid #E7E7E7;
+}
+
+.btn {
+ position: absolute;
+ bottom: 20rpx;
+ left: 32rpx;
+ right: 32rpx;
+ display: flex;
+ height: 94rpx;
+ background: #3CC7C0;
+ border-radius: 47rpx;
+ justify-content: center;
+ align-items: center;
+ color: #fff;
+ background: #3CC7C0;
+
+}
+
+.nodata {
+ flex: 1;
+ display: flex;
+
+ flex-direction: column;
+ align-items: center;
+}
+
+.noorder {
+ margin-top: 150rpx;
+ width: 518rpx;
+ height: 325rpx;
+}
+.tips {
+ font-size: 28rpx;
+ font-weight: 400;
+ color: #666666;
+}
+.hasdata{
+ flex: 1;
+ overflow-y: scroll;
+ -webkit-overflow-scrolling: touch;
+ margin-top: 20rpx;
+}
+.datacell{
+ background:#fff;
+ padding-bottom: 20rpx;
+ margin-bottom:10rpx;
+}
+.datacell:last-child{
+ margin-bottom: 0;
+}
+.status{
+ color: #333333;
+ font-size: 28rpx;
+}
+.titlebox .name{
+ color: #000;
+ font-size: 32rpx;
+}
+.titlebox{
+ padding:0 32rpx;
+ height: 112rpx;
+ border-bottom: 1rpx solid #E3E4E5;
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+}
+.waitpay{
+ text-align: right;
+ color: #EF4F20
+}
+.headicon{
+ width:80rpx;
+ height:80rpx;
+ flex-shrink: 0;
+ border-radius: 50%;
+}
+.van-count-down {
+ margin-top: 5rpx;
+ color: #EF4F20!important;
+}
+.infobox{
+ padding:20rpx 32rpx 0;
+ align-items: center;
+ display: flex;
+}
+.infobox .name{
+ margin-left: 30rpx;
+ font-weight: 600;
+}
+.hospital{
+ margin-left: 30rpx;
+ font-size: 28rpx;
+font-weight: 400;
+color: #333333;
+}
+.infobox .position{
+ font-weight:normal;
+}
+.row{
+ align-items: center;
+ padding:0 32rpx;
+ display: flex;
+ line-height: 52rpx
+}
+.row.first{
+ margin-top: 15rpx;
+}
+.row .name{
+ white-space: nowrap;
+ font-size: 28rpx;
+ color:#333;
+ font-weight: 600;
+ width:112rpx;
+ align-items: baseline;
+}
+.row.first .name{
+
+ display: flex;
+ justify-content: space-between;
+
+}
+.row .dot{
+ align-items: baseline;
+ height: 52rpx;
+ font-weight: 600;
+ display: flex;
+
+}
+.row .desc{
+ align-items: baseline;
+ font-size: 28rpx;
+ line-height: 52rpx;
+ color:#333;
+}
+.row .desc.red{
+ color:rgba(239, 79, 32, 1);
+}
+.rowdesc{
+ align-items: flex-start;
+}
+.namedesc{
+ display: flex;
+ align-items: center;
+}
+.rowdesc .desc{
+ text-overflow: -o-ellipsis-lastline;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ display: -webkit-box;
+ -webkit-line-clamp: 2;
+ line-clamp: 2;
+ -webkit-box-orient: vertical
+}
+.row .price{
+color:#EF4F20;
+font-weight: bold;
+font-size:34rpx
+}
+.row.last{
+ justify-content: space-between;
+}
+.row .left{
+ display: flex;
+}
+.row .right{
+ display: flex;
+}
+.righticon{
+ width:24rpx;
+ height:48rpx;
+}
+.right .detail{
+ margin-right: 10rpx;
+ color: #666666;
+}
+.agebar{
+ display: inline-block;
+ width:2rpx;
+ background: #333;
+ height:26rpx;
+ margin: 0rpx 10rpx 0;
+}
\ No newline at end of file
diff --git a/healthyService/pages/healthyOrderDetail/healthyOrderDetail.js b/healthyService/pages/healthyOrderDetail/healthyOrderDetail.js
new file mode 100644
index 0000000..7e791f6
--- /dev/null
+++ b/healthyService/pages/healthyOrderDetail/healthyOrderDetail.js
@@ -0,0 +1,643 @@
+// pages/medinceOrderDetail/medinceOrderDetail.js
+const app = getApp()
+import {detectionDetail,bindCheck,cancelCheckPay,delCheckOrder,cancelCheckOrder,checkInquiry} from "../../../api/checkSugar.js"
+import {cancelPay} from "../../../api/consultOrder"
+import {cancelOrder} from "../../../api/consultOrder"
+import {fllowDoctor,notfllowDoctor} from "../../../api/consultExpert"
+import {throttle} from "../../../utils/util"
+import {getSign} from "../../../api/common"
+import Dialog from '@vant/weapp/dialog/dialog';
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ time: 30 * 60 * 60 * 1000,
+ showCover:true,
+ isWait:true,
+ cancelBtn:false,
+ order:{},
+ showError:false,
+ pay_money:0,
+ fileList:[],
+ checkSatus:1,
+ showCheckDialog:false,
+ checkmessage:'',
+ detection_bar_code:'',
+ detection_code:'',
+ order_detection_id:'',
+ showDialog:false,
+ message:'',
+ fromType:'',
+ user_doctor:{},
+ order:{},
+ patient_family_data:'',
+ img_host:'https://oss.prod.applets.igandanyiyuan.com/applet/patient/static'
+ },
+ onClickHide() {
+ this.setData({ showCover: false });
+ wx.setStorageSync("showCover",true);
+ },
+ closeError(){
+ this.setData({ showError: false });
+ },
+ delImg(event) {
+ let id = event.currentTarget.dataset.id;
+ this.data.fileList.splice(id, 1);
+ this.setData({
+ fileList: this.data.fileList
+ })
+ },
+ previewImage(event) {
+ let id = event.currentTarget.dataset.id;
+ let urls = this.data.fileList;
+ wx.previewImage({
+ current: urls[id], // 当前显示图片的http链接
+ urls: urls // 需要预览的图片http链接列表
+ })
+ },
+ uploadFile(File) {
+ wx.showLoading({
+ title: '图片上传中...',
+ mask: true
+ })
+ let THIS = this;
+ getSign({
+ user_type: 1,
+ scene: 4
+ }).then((resdata) => {
+ let {
+ accessid,
+ dir,
+ policy,
+ signature,
+ host
+ } = resdata;
+ let index = File.lastIndexOf("/");
+ let filename = File.substring(index + 1, File.length);
+ return new Promise((resolve, reject) => {
+ wx.uploadFile({
+ url: host, // 仅为示例,非真实的接口地址
+ filePath: File,
+ name: 'file',
+ formData: {
+ OSSAccessKeyId: accessid,
+ policy,
+ key: dir + filename,
+ signature
+ },
+ success(res) {
+ if (res.statusCode === 204) {
+ let url = host + '/' + dir + filename;
+ THIS.setData({
+ fileList: THIS.data.fileList.concat([url])
+ })
+ }
+ },
+ fail: err => {
+ console.log(err);
+ }
+ });
+ })
+ })
+ },
+ upload() {
+ if(this.data.fileList.length>=3){
+ wx.showToast({
+ title: '检测管照片最多上传3张',
+ icon:"none"
+ })
+ return false
+ };
+ let THIS = this;
+ wx.chooseMedia({
+ count: 3-this.data.fileList.length,
+ mediaType: ['image'],
+ sourceType: ['album', 'camera'],
+ success(res) {
+ var imgList = res.tempFiles;
+ var promiseFun = [];
+ for (let i = 0; i < imgList.length; i++) {
+ var file = imgList[i].tempFilePath;
+ promiseFun.push(
+ THIS.uploadFile(file)
+ )
+ };
+ Promise.all(promiseFun).then((res) => {
+ wx.showToast({
+ title: '图片上传成功',
+ icon: "none"
+ })
+ wx.hideLoading();
+ });
+
+ }
+ })
+ },
+
+ goBack(){
+ let {fromType}=this.data;
+ if(app.globalData.origion==1){
+ wx.reLaunch({
+ url: '/pages/index/index',
+ })
+ }else if(app.globalData.origion==2){
+ wx.reLaunch({
+ url: '/pages/index/index',
+ })
+ }else{
+ if(fromType){
+ let url=decodeURIComponent(fromType);
+ let goUrl='';
+ if(url.indexOf('?')!=-1){
+ goUrl='/'+url+"&fromType="+url;
+ }else{
+ goUrl='/'+url+"?fromType="+url;
+ }
+ //处理聊天收到消息不及时;
+ if(url.indexOf("TUIService/pages/index")!=-1){
+ app.method.navigateTo({
+ url:goUrl
+ })
+ }else{
+ wx.redirectTo({
+ url: goUrl
+ })
+ }
+
+ }else{
+ wx.navigateBack({
+ delta: 1,
+ fail:function(){
+ wx.reLaunch({
+ url: '/pages/index/index',
+ })
+ }
+ })
+ }
+ }
+
+ },
+ bluript(event){
+ const {value}=event.detail;
+ const reg=/^SDB[A-Z](?:2[3-9]|2[0-2])[SP](?:1688[6-9]|1689\d|169\d\d|1[7-9]\d\d\d|[2-9][0-9]{4}|99999)$/;
+ let detection_status=this.data.order.detection_status;
+ if(detection_status!=3){
+ if(reg.test(value)){
+ this.setData({
+ showError:false
+ })
+ }else{
+ this.setData({
+ showError:true
+ })
+ }
+ }
+
+
+ },
+ chnageIpt(event){
+ const {value}=event.detail;
+ this.setData({
+ detection_bar_code:value
+ })
+ },
+ handleCancelInquiryPay(){
+ let {order_inquiry_id} = this.data;
+ cancelPay(order_inquiry_id).then(data=>{
+ wx.showToast({
+ title: '取消支付成功',
+ icon:'none'
+ })
+ this.handleCheckInquiry();
+ })
+ },
+ handelCancelInquiryOrder(){
+ let id=this.data.order_inquiry_id;
+ cancelOrder(id).then(data=>{
+ wx.showToast({
+ title: '订单取消成功',
+ icon:"none"
+ });
+ this.handleCheckInquiry();
+ // this.goChat()
+ })
+ },
+ handleCheckInquiry:throttle(function(){
+ let id=this.data.order.order_detection_id;
+ checkInquiry(id).then(data=>{
+ console.log(data);
+ if(data.status==1){
+ this.setData({
+ order_inquiry_id:data.data,
+ })
+ this.goChat();
+ }else if(data.status==2){
+ this.setData({
+ showCheckDialog:true,
+ order_inquiry_id:data.data,
+ checkSatus:2,
+ checkmessage:'当前医生有您待支付的订单,点击“继续”将为您取消订单直接进入报告解读服务。'
+ })
+ }else if(data.status==3){
+ this.setData({
+ checkSatus:3,
+ showCheckDialog:true,
+ order_inquiry_id:data.data,
+ checkmessage:'当前医生有您待接诊的订单,点击“继续”将为您取消订单直接进入报告解读服务。'
+ })
+ }else if(data.status==4){
+ this.setData({
+ showCheckDialog:true,
+ checkSatus:4,
+ order_inquiry_id:data.data,
+ checkmessage:'当前医生有您接诊中的订单,点击“继续”将为您直接进入报告解读服务。'
+ })
+ }
+ })
+ },1000),
+ goReport:throttle(function(){
+ wx.showLoading({
+ mask:true,
+ title: '正在打开文件...',
+ });
+ let url=this.data.order.detection_result_pdf;
+ const randfile = new Date().getTime() + '检测报告';
+ const newPath = `${wx.env.USER_DATA_PATH}/${randfile}`;
+ wx.downloadFile({
+ // 示例 url,并非真实存在
+ url:url,
+ filePath: newPath,
+ success: function (res) {
+ //const filePath = res.tempFilePath
+ wx.openDocument({
+ fileType:"pdf",
+ showMenu:true,
+ filePath: newPath,
+ success: function (res) {
+ wx.hideLoading()
+ console.log('打开文档成功')
+ },
+ fail:function(error){
+ wx.hideLoading()
+ wx.showToast({
+ title:res,
+ icon:"none"
+ })
+ }
+ })
+ },
+ fail:function(error){
+ wx.showToast({
+ title:error,
+ icon:"none"
+ })
+ }
+
+ })
+ // app.method.navigateTo({
+ // url:"/pages/linkPage/linkPage?url="+encodeURIComponent(url)
+ // })
+ }),
+ handleBindCheck:throttle(function(){
+ let id=this.data.order.order_detection_id;
+ let detection_status=this.data.order.detection_status;
+ if(detection_status==3){
+ wx.showToast({
+ title: '您已提交,请等待结果',
+ icon:"none"
+ })
+ return false
+ }
+ const {detection_bar_code,fileList}=this.data;
+ const reg=/^SDB[A-Z](?:2[3-9]|2[0-2])[SP](?:1688[6-9]|1689\d|169\d\d|1[7-9]\d\d\d|[2-9][0-9]{4}|99999)$/;
+ if(!reg.test(detection_bar_code)){
+ wx.showToast({
+ title: '检测码格式不正确',
+ icon:"none"
+ })
+ this.setData({
+ showError:true
+ })
+ return false
+ }
+ bindCheck(id,{
+ detection_bar_code,
+ detection_pic:fileList
+ }).then(data=>{
+ this.handleDetectionDetail();
+ wx.showToast({
+ title: '提交成功',
+ icon:"none"
+ })
+ })
+ }),
+ goChat:throttle(function(){
+ let {user_id}=this.data.user_doctor;
+ let order_inquiry_id=this.data.order.order_inquiry_id;
+ let anther_order_inquiry_id=this.data.order_inquiry_id;
+ let id='';
+ if(!order_inquiry_id && !anther_order_inquiry_id){
+ wx.showToast({
+ title: '服务器错误',
+ icon:'none'
+ });
+ return false
+ };
+ if(order_inquiry_id){
+ id=order_inquiry_id
+ }else if(anther_order_inquiry_id){
+ id=anther_order_inquiry_id
+ }
+ app.method.navigateTo({
+ url: '/TUIService/pages/index?currentConversationID=' + user_id + "&order_inquiry_id=" + id+ "&inquiry_type=5"
+ })
+ }),
+ orderMsg(){
+ wx.requestSubscribeMessage({
+ tmplIds: ['82rKSdbKkbFK_tHmIMnHyfyRJq9ujvmAsTjRHdxmCdE'],
+ success (res) {
+ Dialog.confirm({
+ title: '温馨提示',
+ confirmButtonOpenType:'contact',
+ message: '立即联系客服',
+ }).then(() => {
+ // on confirm
+ }).catch(()=>{
+
+ })
+ }
+ })
+ },
+ goSugar:throttle(function(){
+ app.method.navigateTo({
+ url: '/sugarCheck/pages/sugarDetail/sugarDetail',
+ })
+ }),
+ goExpert:throttle(function(){
+ let id=this.data.user_doctor.doctor_id;
+ app.method.navigateTo({
+ url: '/patient/pages/expertDetail/expertDetail?doctor_id='+id,
+ })
+ }),
+ handleDetectionDetail(flag=false){
+ let id =this.data.order_detection_id;
+ detectionDetail(id).then(data=>{
+ if(flag){
+ let pages = getCurrentPages();
+ let prevPage = pages[pages.length - 2]; //上一页
+ prevPage.setData({
+ changeStatus:data.detection_status,
+ changeId:id
+ });
+ };
+ let pay_money=(Number(data.amount_total)-Number(data.coupon_amount_total)).toFixed(2);
+ this.setData({
+ order:data,
+ detection_bar_code:data.detection_bar_code,
+ user_doctor:data.user_doctor,
+ pay_money
+ });
+
+
+ if(data.detection_pic && data.detection_pic.length>0){
+ this.setData({
+ fileList:data.detection_pic
+ })
+ }
+ })
+},
+goScan:throttle(function(){
+ let that=this;
+ wx.scanCode({
+ onlyFromCamera: true,
+ scanType:['qrCode','barCode','datamatrix','pdf417'],
+ success (res) {
+ const reg=/^SDB[A-Z](?:2[3-9]|2[0-2])[SP](?:1688[6-9]|1689\d|169\d\d|1[7-9]\d\d\d|[2-9][0-9]{4}|99999)$/;
+ console.log(res.result);
+ if(reg.test(res.result)){
+ that.setData({
+ detection_bar_code:res.result,
+ showCode:true,
+ showError:false
+ })
+ }else{
+ that.setData({
+ showDialog:true,
+ cancelBtn:false,
+ message:'无法识别,请手动输入检测码'
+ })
+ }
+
+ }
+ })
+}),
+confirmCancelOrder(){
+ this.setData({
+ showDialog:true,
+ cancelBtn:true,
+ message:"是否确定要取消检测?"
+ })
+},
+confirmDelOrder(){
+ this.setData({
+ showDialog:true,
+ cancelBtn:true,
+ message:"您确定是要删除订单记录么?"
+ })
+},
+confirmCancelPay(){
+ this.setData({
+ showDialog:true,
+ cancelBtn:true,
+ message:"您确定取消支付么?"
+ })
+ },
+confirm:throttle(function(event){
+ if(event.detail && this.data.message=="您确定是要删除订单记录么?"){
+ this.handelDelProduct();
+ }else if(event.detail && this.data.message=="您确定取消支付么?"){
+ this.handelCancelPayProduct();
+ }else if(event.detail && this.data.message=="是否确定要取消检测?"){
+ this.handelCancelCheckOrder();
+ }
+}),
+//未支付2 //待接诊需要重新请求检测订单3
+confirmCheck:throttle(function(){
+ if(this.data.checkSatus==2){
+ this.handleCancelInquiryPay();
+ }else if(this.data.checkSatus==3){
+ this.handelCancelInquiryOrder();
+ }else if(this.data.checkSatus==4){
+ this.goChat();
+ }
+}),
+handelCancelCheckOrder(flag=true){
+ let id =this.data.order.order_detection_id;
+ cancelCheckOrder(id).then(data=>{
+ wx.showToast({
+ title: '取消成功',
+ icon:"none"
+ })
+ if(!flag){
+ this.goChat();
+ }
+ this.handleDetectionDetail();
+ })
+},
+handelCancelPayProduct(flag=true){
+ let id =this.data.order.order_detection_id;
+ cancelCheckPay(id).then(data=>{
+ wx.showToast({
+ title: '取消支付成功',
+ icon:"none"
+ })
+ if(!flag){
+ this.handleCheckInquiry();
+ }
+ this.handleDetectionDetail();
+ })
+},
+copy(event){
+ let text=event.target.dataset.text;
+ wx.setClipboardData({
+ data:text
+ })
+},
+goPay:throttle(function(){
+ let {order_detection_id,detection_no}=this.data.order;
+ app.method.navigateTo({
+ url: '/patient/pages/payOrder/payOrder?inquiry_no='+ detection_no +"&order_detection_id="+order_detection_id+"&order_type=3&fromType="+encodeURIComponent('/sugarCheck/pages/checkOrder/checkOrder')
+ })
+}),
+handelDelProduct(){
+ let id =this.data.order.order_detection_id;
+ delCheckOrder(id).then(data=>{
+ let pages = getCurrentPages();
+ //获取所需页面
+ let prevPage = pages[pages.length - 2]; //上一页
+ prevPage.setData({
+ delId: id//需要传过去的数据
+ });
+ wx.navigateBack({
+ delta: 1,
+ })
+ wx.showToast({
+ title: '订单删除成功',
+ icon:"none"
+ });
+
+ })
+},
+goPrescriptionDetail:throttle(function(event){
+ let id=event.currentTarget.dataset.id;
+ app.method.navigateTo({
+ url: '/patient/pages/prescriptDetail/prescriptDetail?order_prescription_id='+id,
+ })
+}),
+handelfllowDoctor(){
+ let id=this.data.user_doctor.doctor_id
+ fllowDoctor(id).then(data=>{
+ this.setData({
+ "user_doctor.follow":true
+ })
+ wx.showToast({
+ title: '关注成功',
+ icon:"none"
+ })
+ })
+},
+handenotfllowDoctor(){
+ let id=this.data.user_doctor.doctor_id;
+ notfllowDoctor(id).then(data=>{
+ this.setData({
+ "user_doctor.follow":false
+ })
+ wx.showToast({
+ title: '已取消关注',
+ icon:"none"
+ })
+ })
+},
+toggleFllow(){
+ if(this.data.order.user_doctor.follow){
+ this.handenotfllowDoctor()
+ }else{
+ this.handelfllowDoctor()
+ }
+},
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad(options) {
+ const cover=wx.getStorageSync('showCover');
+ if(cover){
+ this.setData({
+ showCover:false
+ })
+ }
+ if(options.fromType){
+ this.setData({
+ fromType:options.fromType
+ })
+ }
+ let order_detection_id=options.order_detection_id;
+ console.log(order_detection_id)
+ if(order_detection_id){
+ this.setData({
+ order_detection_id
+ });
+ this.handleDetectionDetail();
+ }
+ },
+
+ /**
+ * 生命周期函数--监听页面初次渲染完成
+ */
+ onReady() {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow() {
+ this.setData({
+ img_host:app.hostConfig().imghost
+ });
+ },
+
+ /**
+ * 生命周期函数--监听页面隐藏
+ */
+ onHide() {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面卸载
+ */
+ onUnload() {
+
+ },
+
+ /**
+ * 页面相关事件处理函数--监听用户下拉动作
+ */
+ onPullDownRefresh() {
+
+ },
+
+ /**
+ * 页面上拉触底事件的处理函数
+ */
+ onReachBottom() {
+
+ },
+
+ /**
+ * 用户点击右上角分享
+ */
+
+})
\ No newline at end of file
diff --git a/healthyService/pages/healthyOrderDetail/healthyOrderDetail.json b/healthyService/pages/healthyOrderDetail/healthyOrderDetail.json
new file mode 100644
index 0000000..60d4be6
--- /dev/null
+++ b/healthyService/pages/healthyOrderDetail/healthyOrderDetail.json
@@ -0,0 +1,12 @@
+{
+ "usingComponents": {
+ "van-count-down": "@vant/weapp/count-down/index",
+ "dialog":"../../../components/dialog/dialog",
+ "van-dialog": "@vant/weapp/dialog/index",
+ "van-icon": "@vant/weapp/icon/index",
+ "van-overlay": "@vant/weapp/overlay/index"
+ },
+ "navigationStyle":"custom",
+ "disableScroll":true,
+ "navigationBarTitleText": "肝胆相照互联网医院"
+}
\ No newline at end of file
diff --git a/healthyService/pages/healthyOrderDetail/healthyOrderDetail.wxml b/healthyService/pages/healthyOrderDetail/healthyOrderDetail.wxml
new file mode 100644
index 0000000..0297d39
--- /dev/null
+++ b/healthyService/pages/healthyOrderDetail/healthyOrderDetail.wxml
@@ -0,0 +1,258 @@
+
+
+
+
+ 订单详情
+
+
+
+
+
+
+ 就诊人信息
+
+
+ {{order.patient_name}}(男女未知|{{order.patient_age}}岁)
+
+
+
+
+
+ 绑定检测码
+
+
+
+
+
+
+ 检测码有误,请重新输入
+
+
+
+
+
+
+
+
+
+
+ 检测管照片
+
+
+
+
+
+
+
+
+
+ 上传
+
+
+
+
+ 预计检测完成时间
+ {{order.detection_success_time}}
+
+
+
+
+ 订单信息
+
+
+
+
+ 待支付
+
+
+
+
+ 待绑定
+ 检测中
+ 检测完成
+ 取消检测
+ 支付超时
+
+
+
+ 订单编号
+ :
+
+
+ {{order.detection_no}}
+
+ |
+
+ 复制
+
+
+
+
+ 下单时间
+ :
+
+ {{order.created_at}}
+
+
+
+ 问诊类型
+ :
+ 糖组检测
+
+
+
+ 订单金额
+ :
+
+ ¥{{order.amount_total}}
+
+
+
+ 优惠券
+ :
+
+ ¥{{order.coupon_amount_total}}
+ 无
+
+
+
+ 支付金额
+ :
+
+
+ ¥{{pay_money}}
+
+
+
+
+ 备注
+ :
+
+
+ 主动取消
+ 客服取消
+ 支付超时
+
+
+
+
+ 退款进度
+ :
+
+
+ 无退款
+
+
+ 申请退款
+
+
+ 退款中
+
+
+ 退款成功
+
+
+ 拒绝退款
+
+
+ 退款关闭
+
+
+
+
+
+ 联系客服
+
+
+ 取消检测
+
+
+ 删除订单
+
+
+
+
+
+
+
+
+
+
+
+ {{user_doctor.user_name}}
+ {{user_doctor.hospital_level_name}}
+ 可处方
+
+
+
+
+ {{user_doctor.doctor_title}}
+ 主任中医师
+ {{user_doctor.department_custom_name}}
+
+ {{user_doctor.hospital_name}}
+
+
+
+ 关注
+
+
+
+ 关注
+
+
+
+
+
+
+
+
+ 联系客服
+
+
+
+
+
+
+
+ 取消支付
+
+ 立即支付
+
+
+
+
+
+ 提交
+
+
+ 查看报告
+
+ 报告解读
+
+
+
+
+ 重新检测
+
+
+
+
+
+
+
+
+
+ 知道了
+
+
+
+
+
+
\ No newline at end of file
diff --git a/healthyService/pages/healthyOrderDetail/healthyOrderDetail.wxss b/healthyService/pages/healthyOrderDetail/healthyOrderDetail.wxss
new file mode 100644
index 0000000..bf1b094
--- /dev/null
+++ b/healthyService/pages/healthyOrderDetail/healthyOrderDetail.wxss
@@ -0,0 +1,887 @@
+/* pages/medinceOrderDetail/medinceOrderDetail.wxss */
+/**app.wxss**/
+.container {
+ padding-top: 135px;
+ padding-bottom: 10rpx;
+ /* top:280rpx; */
+ /* position: absolute; */
+ width:100%;
+ /* overflow-y: scroll; */
+ background: #F2F2F2;
+ }
+ input{
+ font-family: -apple-system, BlinkMacSystemFont, 'Helvetica Neue', Helvetica,
+ }
+ page{
+ position: relative;
+ width:100%;
+ height:100%;
+ font-family: -apple-system, BlinkMacSystemFont, 'Helvetica Neue', Helvetica,
+ Segoe UI, Arial, Roboto, 'PingFang SC', 'miui', 'Hiragino Sans GB', 'Microsoft Yahei',
+ sans-serif;
+ }
+ .page{
+ width:100vw;
+ height:100vh;
+ background: #f2f2f2;
+ }
+ .contain{padding: 0 30rpx 0rpx;height: 100%;overflow: hidden;position: relative;}
+ ::-webkit-scrollbar {
+ display: none;
+ width: 0;
+ height: 0;
+ color: transparent;
+ }
+ .van-picker__confirm {
+ color:#3CC7C0!important;
+ font-size: 32rpx!important;
+ }
+ .van-picker__title{
+ font-weight: 600!important;
+ color: rgba(0,0,0,0.9)!important;
+ font-size: 32rpx!important;
+ }
+ .van-picker__cancel{
+ color: rgba(0,0,0,0.6)!important;
+ font-size: 32rpx!important;
+ }
+ .nonedata{
+ width:100%;
+ color:#666;
+ min-height: 320rpx;
+ font-size: 28rpx;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ }
+ .ui-navigatorbar {
+ position: fixed;
+ z-index:99;
+ top: 0;
+ width: 750rpx;
+ height: 172rpx;
+ background: #F2F2F2;
+ backdrop-filter: blur(20px);
+ }
+
+ .ui-navigatorbar-back {
+ position: absolute;
+ padding-left:40rpx;
+ padding-right:40rpx;
+ width:30rpx;
+ height:60rpx;
+ left: 0rpx;
+ bottom: 20rpx;
+ }
+
+ .ui-title {
+ position: absolute;
+ width: 350rpx;
+ height: 88rpx;
+ line-height: 56rpx;
+ font-size: 36rpx;
+ color: #000000;
+ bottom: 0;
+ left: 200rpx;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ }
+ .droptitle.active{
+ color:#3CC7C0;
+ }
+ .slotmsg{
+ -webkit-overflow-scrolling: touch;
+ font-size: 28rpx;
+ line-height:40rpx;
+ max-height:60vh;
+ overflow-y: auto;
+ padding:48rpx;
+ text-align: center;
+ }
+ .van-dropdown-item__title{
+ width:100%!important;
+ flex:1;
+ text-align: center;
+ }
+ .van-dropdown-item__icon{
+ z-index:2;
+ position: absolute!important;
+
+ right:25rpx;
+ }
+ .van-cell__value{
+ flex:none!important;
+ z-index:1;
+ }
+ .onlinebox .icon{
+ top:60rpx;
+ left:50%;
+ position: absolute;
+ margin-left: -48rpx;
+ width:96rpx;
+ height:34rpx;
+ border-radius: 0;
+ }
+.page{
+ position: relative;
+ display: flex;
+ flex-direction: column;
+ margin-bottom:0rpx;
+}
+.outwraper{
+ flex:1;
+ overflow-y: scroll;
+ -webkit-overflow-scrolling: touch;
+ padding-bottom: 200rpx;
+}
+.outwraper.active{
+ padding-bottom: 220rpx;
+}
+.add {
+ width: 100%;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ height: 120rpx;
+ background: #FFFFFF;
+ font-weight: 600;
+ color: #ED9C00;
+ font-size: 32rpx;
+}
+.addicon{
+ width: 40rpx;
+ height:40rpx;
+ flex-shrink: 0;
+}
+.addressbox {
+ margin-top:172rpx;
+ align-items: center;
+ display: flex;
+ justify-content: space-between;
+ padding: 32rpx 32rpx;
+ background-color: #fff;
+}
+
+.addressbox .left {
+ display: flex;
+ align-items: center;
+}
+
+.addressbox .icon {
+ width: 40rpx;
+ flex-shrink: 0;
+ height: 47rpx;
+
+}
+
+.addressbox .info {
+ margin-left: 30rpx;
+}
+
+.addressbox .ricon {
+ width: 24rpx;
+ height: 48rpx;
+}
+
+.info .name {
+ font-size: 28rpx;
+ font-weight: 600;
+ color: #333333
+}
+
+.info .address {
+ margin-top: 10rpx;
+ color: #333333;
+ font-size: 28rpx;
+}
+.row {
+ align-items: center;
+ padding: 0 32rpx;
+ display: flex;
+ line-height: 52rpx
+}
+
+.row.first {
+ margin-top: 34rpx;
+}
+
+.rowbox .row .name {
+ white-space: nowrap;
+ font-size: 28rpx;
+ color: #333;
+ font-weight: 600;
+ display: flex;
+ width:114rpx;
+ align-items: baseline;
+ justify-content: space-between;
+}
+.row .dot{
+ font-weight: 600;
+ display: flex;
+ align-items: baseline;
+}
+.row .desc {
+ align-items: baseline;
+ font-size: 28rpx;
+ color: #333;
+}
+
+.rowdesc {
+ align-items: flex-start;
+}
+
+.rowdesc .desc {
+ text-overflow: -o-ellipsis-lastline;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ display: -webkit-box;
+ -webkit-line-clamp: 2;
+ line-clamp: 2;
+ -webkit-box-orient: vertical
+}
+
+.row .price {
+ color: #EF4F20;
+ font-weight: bold;
+ font-size: 34rpx
+}
+
+.row.last {
+ justify-content: space-between;
+}
+
+.copy {
+
+ height: 40rpx;
+ color: #000;
+ font-size: 24rpx;
+ display: flex;
+ margin-left: 20rpx;
+ align-items: center;
+ justify-content: center;
+ border-radius: 6rpx;
+}
+.row .left {
+ display: flex;
+}
+
+.row .right {
+ display: flex;
+}
+
+.titlebox .name {
+ color: #000;
+ font-size: 34rpx;
+}
+.rowbox{
+ margin-top: 20rpx;
+ background-color: #fff;
+ padding-bottom: 30rpx;
+}
+.titlebox {
+ padding: 0 32rpx;
+ height: 112rpx;
+ border-bottom: 1rpx solid #E3E4E5;
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+}
+.titlebox .status{
+ font-size: 28rpx
+}
+.waitpay {
+ text-align: right;
+ color: #EF4F20
+}
+
+.headicon {
+ width: 80rpx;
+ height: 80rpx;
+ border-radius: 50%;
+}
+
+.van-count-down {
+ margin-top: 5rpx;
+ color: #EF4F20 !important;
+}
+.infobox {
+ margin-top: 20rpx;
+ background:#fff;
+
+}
+.infobox .status{
+ font-size: 28rpx;
+ font-weight: 400;
+ color: #333333;
+}
+.infobox .status.wait{
+ color: #EF4F20;
+}
+.infobox .status.timeout{
+ color: #EF4F20;
+}
+.infobox .title {
+ padding: 0 32rpx;
+ background-color: #fff;
+ font-size: 34rpx;
+ height: 112rpx;
+ align-items: center;
+ display: flex;
+ justify-content: space-between;
+ border-bottom: 1rpx solid #E3E4E5;
+}
+
+.imgbox {
+ border-radius:8rpx;
+ border:1rpx solid #ccc;
+ width: 200rpx;
+ height: 200rpx;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ position: relative;
+}
+
+.yaoimg {
+ width: 120rpx;
+ height: 128rpx;
+}
+
+.imgbox .desc {
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ justify-content: center;
+ position: absolute;
+ top: 50%;
+ font-size: 22rpx;
+ font-weight: 400;
+ color: #666666;
+ line-height: 30rpx;
+ transform: translateY(-50%);
+}
+
+.imgbox .desc .tip {
+ text-align: center;
+}
+
+.medincebox .cell {
+ padding: 30rpx 32rpx;
+ display: flex;
+ align-items: center;
+ border-bottom: 1rpx solid #E3E4E5;
+}
+.medincebox .cell:nth-last-child(2){
+ border-bottom:none;
+}
+.rightinfo {
+ margin-left: 30rpx;
+ flex: 1;
+
+ display: flex;
+ flex-direction: column;
+ justify-content: center;
+}
+
+.medincebox .cell .name {
+ word-break: break-all;
+ font-size: 32rpx;
+ font-weight: bold;
+ color: #333;
+ text-overflow: ellipsis;
+ display: -webkit-box;
+ -webkit-box-orient: vertical;
+ -webkit-line-clamp: 2;
+ overflow: hidden;
+}
+.row.beizhu{
+ align-items: flex-start;
+}
+.rightinfo .own {
+ margin-top: 47rpx;
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ font-size: 28rpx;
+ font-weight: 400;
+ color: #333333;
+}
+.btnbox{
+ display: flex;
+ padding:0 32rpx;
+ font-size: 30rpx;
+ padding-bottom: 30rpx;
+ justify-content: flex-end;
+}
+.btnbox .btn{
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ padding: 0 20rpx;
+ height:58rpx;
+ background: #FFFFFF;
+ border-radius: 30rpx;
+ margin-left: 20px;
+
+}
+.btnbox .orderDetail{
+ background: #3CC7C0;
+ color:#fff;
+ border: 1rpx solid #3CC7C0;
+}
+.personinfo{
+ margin-top: 20rpx;
+ background: #fff;
+}
+.personinfobox {
+ padding: 30rpx 32rpx 40rpx;
+ background: #fff;
+ margin-top: 20rpx;
+ margin-bottom:10rpx;
+}
+.personinfobox .title {
+ background-color: #fff;
+ font-size: 32rpx;
+ height: 112rpx;
+ align-items: center;
+ display: flex;
+ justify-content: space-between;
+ border-bottom: 1rpx solid #E3E4E5;
+}
+.personinfobox .namebox .head {
+ width: 80rpx;
+ height:80rpx;
+ border-radius: 50%;
+}
+
+.personinfobox .namebox .guanzhu image {
+ width: 28rpx;
+ height: 26rpx;
+}
+
+
+.personinfobox .namewraper {
+ flex:1;
+ display: flex;
+
+ justify-content: space-between;
+ flex-direction: column;
+ margin-left: 20rpx;
+}
+.personinfobox .type {
+ height: 32rpx;
+ display: flex;
+ margin-bottom: 6rpx;
+ line-height: 32rpx;
+ white-space: nowrap;
+ align-items: center;
+ margin-left: 18rpx;
+ padding: 0rpx 6rpx;
+ background: #ED9C00;
+ border-radius: 4rpx;
+ color: #FFFFFF;
+ font-size: 24rpx;
+}
+
+.personinfobox .namebox .row {
+ display: flex;
+ padding:0;
+ align-items: flex-end;
+
+}
+
+.personinfobox .namebox {
+ display: flex;
+ align-items:stretch;
+
+ justify-content: space-between;
+}
+
+.personinfobox .namebox .name {
+ display: inline-block;
+ overflow: hidden;
+ max-width:400rpx;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ font-weight: 600;
+ color: #333333;
+ font-size: 34rpx;
+}
+
+.personinfobox .position {
+ font-size: 30rpx;
+ white-space: normal;
+ word-break: break-all;
+}
+.doctor_title{
+ margin-right: 10rpx;
+}
+.personinfobox .namebox .row{
+ line-height: 40rpx;
+ align-items: flex-end;
+}
+.personinfobox .hospital {
+ margin-top: 12rpx;
+ color: #333333;
+ font-size: 28rpx;
+ white-space: normal;
+ word-break: break-all;
+}
+
+
+.personinfobox .namebox .position {
+ font-weight: normal;
+ white-space: nowrap;
+ margin-left: 15rpx;
+ font-size: 30rpx;
+}
+.personinfobox .goodjob {
+ color: #666666;
+ margin-top: 38rpx;
+ line-height: 42rpx;
+ margin-left: 100rpx;
+ font-size: 28rpx;
+ word-break: break-all;
+}
+.paybox{
+ bottom:0px;
+ height: 186rpx;
+ background: #FFFFFF;
+ position: absolute;
+ display: flex;
+ z-index:1;
+ width:100%;
+}
+.submitbtn{
+ width:100%;
+ margin:16px 32rpx 0;
+ height: 94rpx;
+background: #3CC7C0;
+border-radius: 47rpx;
+display: flex;
+justify-content: center;
+align-items: center;
+font-size: 36rpx;
+color: #FFFFFF;
+}
+.submitbtn.active{
+ color: #000000;
+ background: rgba(0,0,0,0.1);
+}
+.paybox .left{
+ height: 94rpx;
+border-radius: 47rpx;
+font-size: 36rpx;
+color: rgba(0,0,0,0.85);
+border: 1rpx solid rgba(0,0,0,0.65);
+ margin-left: 32rpx;
+ flex:1;
+ font-size: 28rpx;
+margin-top: 16rpx;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+
+}
+.orderrow{
+ display: flex;
+ margin:10rpx 32rpx 0;
+ justify-content: flex-end;
+}
+.freetalk{
+ position: absolute;
+ width:403rpx;
+ height:79rpx;
+ top: -53rpx;
+ left:25rpx;
+}
+.paybox .right{
+ position: relative;
+ margin-right: 32rpx;
+ margin-top: 16rpx;
+ color: #FFFFFF;
+ display: flex;
+ margin-left: 24rpx;
+ align-items: center;
+ justify-content: center;
+ background: #3CC7C0;
+ height: 94rpx;
+ font-size: 36rpx;
+color: #FFFFFF;
+ background: #3CC7C0;
+ border-radius: 47rpx;
+ flex:2;
+}
+.express{
+width: 158rpx;
+height: 60rpx;
+display: flex;
+justify-content: center;
+align-items: center;
+background: #F8F8F8;
+font-size: 26rpx;
+font-weight: 400;
+color: #353535;
+border-radius: 6rpx;
+border: 1rpx solid rgba(5,5,5,0.1);
+}
+.namenum{
+ font-size: 28rpx;
+font-weight: 400;
+color: #333333;
+}
+.row.wuliu{
+ margin-top: 20rpx;
+ align-items: flex-start;
+}
+.row.wuliu .desc{
+ margin-left: 20rpx;
+}
+.desc .dizhi{
+ font-size: 28rpx;
+font-weight: 400;
+color: #333333;
+line-height: 28rpx;
+}
+.wuliucar{
+ width:40rpx;
+ height:33rpx;
+ flex-shrink: 0;
+}
+.row.wuliu .date{
+ font-size: 24rpx;
+font-weight: 400;
+color: #666666;
+}
+.guanzhu {
+ flex-shrink: 0;
+ display: flex;
+ white-space: nowrap;
+ color: #3CC7C0;
+ font-size: 30rpx;
+ font-weight: 600;
+ justify-content: center;
+ align-items: center;
+ font-size: 24rpx;
+
+}
+.namebox .guanzhu image {
+ width: 35rpx;
+ height: 32rpx;
+}
+.patientbox{
+ margin-top: 172rpx;
+ width:100%;
+ box-sizing: border-box;
+ padding:0 32rpx;
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ height: 109rpx;
+background: #FFFFFF;
+}
+.patient_name{
+ font-size: 32rpx;
+font-weight: 400;
+color: rgba(0,0,0,0.85)
+}
+.patientbox .rightcon{
+ font-size: 28rpx;
+ font-weight: 400;
+ color: rgba(0,0,0,0.65)
+}
+.namebox{
+ display: flex;
+}
+.rowbox .row{
+ justify-content: space-between;
+}
+.bar{
+ margin-left: 30rpx;
+ color: rgba(0,0,0,0.45);
+ height: 40rpx;
+ margin-bottom: 5rpx;
+ display: flex;
+ align-items: center;
+}
+.rightbox{
+ display: flex;
+ align-items: center;
+}
+.bindbox{
+ overflow: hidden;
+ padding:0 32rpx 10rpx;
+ margin:20rpx 0rpx;
+ background: #FFFFFF;
+}
+.errorbox{
+ margin-top: 10rpx;
+ display: flex;
+ height: 80rpx;
+background: #FFF1F0;
+border-radius: 8rpx;
+padding:0 20rpx;
+ align-items: center;
+ justify-content: space-between;
+}
+.tiptitle{
+ height: 80rpx;
+ align-items: center;
+ display: flex;
+ justify-content: space-between;
+ margin-top: 10rpx;
+}
+.tipleft{
+ font-size: 32rpx;
+ color: rgba(0,0,0,0.85);
+}
+.tipright{
+ color:#4096FF;
+ font-size: 28rpx;
+}
+.iptbox{
+ margin-top: 24rpx;
+ width:100%;
+ height: 78rpx;
+border-radius: 6rpx;
+border: 2rpx solid #3CC7C0;
+display: flex;
+align-items: center;
+}
+.iptbox.active{
+ border: 2rpx solid #FF4D4F;
+}
+.mybar{
+ height:38rpx;
+ margin:0 30rpx;
+ width:2rpx;
+ background:#3CC7C0 ;
+}
+.ipt{
+ margin-left: 20rpx;
+ flex:1;
+}
+.scan{
+ margin-right: 20rpx;
+ width:40rpx;
+ height:40rpx;
+}
+.uploadbox{
+
+ margin:24rpx 0rpx 0;
+ display: flex;
+ flex-wrap: wrap ;
+}
+.uploadbox .close{
+ z-index:9;
+ top:5rpx;
+ right:5rpx;
+ position: absolute;
+ width:30rpx;
+ height:30rpx;
+}
+.uploadbox .upload{
+ position: relative;
+ object-fit: cover;
+ display: flex;
+ flex-direction: column;
+ margin: 5px 19rpx 5px 0;
+}
+.uploadbox .upload:nth-child(4n){
+ margin-right: 0;
+}
+.van-icon-plus{
+ color:#333;
+ font-size: 80rpx!important;
+}
+.upload{
+ width: 148rpx;
+ height:148rpx;
+ display: flex;
+ justify-content:center ;
+ align-items: center;
+ background: #F2F2F2;
+ border-radius: 4rpx
+}
+.uploadbox view:first-child{
+ margin-left: 0!important;
+}
+.upload .text{
+ font-size: 28rpx;
+}
+
+.errorleft{
+ display: flex;
+ align-items: center;
+}
+.checkerror{
+ margin-right: 10rpx;
+ width:40rpx;
+ height:40rpx;
+}
+.checkclose{
+ width:32rpx;
+ height:32rpx;
+}
+.wrapper{
+ width:100%;
+ display: flex;
+ align-items: center;
+ flex-direction: column;
+ justify-content: center;
+ margin:285rpx auto;
+}
+.timg1{
+ width:694rpx;
+}
+.timg2{
+ width:506rpx;
+}
+.button{
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ width: 224rpx;
+ font-size: 32rpx;
+height: 83rpx;
+font-weight: 500;
+margin-top: 72rpx;
+color: #FFFFFF;
+border-radius: 47rpx;
+border: 1rpx solid #FFFFFF;
+}
+.contactbox{
+ width: 320rpx;
+ margin:20rpx auto 0rpx;
+height: 72rpx;
+border-radius: 39rpx;
+border: 2rpx solid rgba(0,0,0,0.15);
+align-items: center;
+color: rgba(0,0,0,0.85);
+font-size: 28rpx;
+justify-content: center;
+ display: flex;
+}
+.kefu{
+ width: 32rpx;
+ margin-right: 10rpx;
+ height: 32rpx;
+}
+.finish{
+ margin-top: 20rpx;
+ display: flex;
+ justify-content: space-between;
+ margin-bottom: 20rpx;
+ align-items: center;
+}
+.finish .left{
+ font-size: 32rpx;
+font-weight: 400;
+color: rgba(0,0,0,0.85);
+}
+.finish .right{
+ font-size: 28rpx;
+font-weight: 400;
+color: rgba(0,0,0,0.45);
+}
\ No newline at end of file
diff --git a/healthyService/pages/visitDetail/visitDetail.js b/healthyService/pages/visitDetail/visitDetail.js
new file mode 100644
index 0000000..248b2d4
--- /dev/null
+++ b/healthyService/pages/visitDetail/visitDetail.js
@@ -0,0 +1,88 @@
+// healthyService/pages/healthyDetail/healthyDetail.js
+import {throttle} from "../../../utils/util"
+const app = getApp()
+Page({
+
+ /**
+ * 页面的初始数据
+ */
+ data: {
+ active:0,
+ priceList:[{
+ price:'180元/1月',
+ id:1
+ },{
+ price:'500元/3月',
+ id:2
+ },{
+ price:'1000元/6月',
+ id:3
+ },{
+ price:'2000元/12月',
+ id:4
+ }],
+ img_host:app.hostConfig().imghost
+ },
+ choosePrice(e){
+
+ let {id}=e.currentTarget.dataset;
+ this.setData({
+ active:id
+ })
+ },
+ /**
+ * 生命周期函数--监听页面加载
+ */
+ onLoad(options) {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面初次渲染完成
+ */
+ onReady() {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面显示
+ */
+ onShow() {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面隐藏
+ */
+ onHide() {
+
+ },
+
+ /**
+ * 生命周期函数--监听页面卸载
+ */
+ onUnload() {
+
+ },
+
+ /**
+ * 页面相关事件处理函数--监听用户下拉动作
+ */
+ onPullDownRefresh() {
+
+ },
+
+ /**
+ * 页面上拉触底事件的处理函数
+ */
+ onReachBottom() {
+
+ },
+
+ /**
+ * 用户点击右上角分享
+ */
+ onShareAppMessage() {
+
+ }
+})
\ No newline at end of file
diff --git a/healthyService/pages/visitDetail/visitDetail.json b/healthyService/pages/visitDetail/visitDetail.json
new file mode 100644
index 0000000..9ce900b
--- /dev/null
+++ b/healthyService/pages/visitDetail/visitDetail.json
@@ -0,0 +1,6 @@
+{
+ "usingComponents": {
+ "nav":"../../../components/nav/nav"
+ },
+ "navigationStyle":"custom"
+}
\ No newline at end of file
diff --git a/healthyService/pages/visitDetail/visitDetail.wxml b/healthyService/pages/visitDetail/visitDetail.wxml
new file mode 100644
index 0000000..9e5cc77
--- /dev/null
+++ b/healthyService/pages/visitDetail/visitDetail.wxml
@@ -0,0 +1,70 @@
+
+
+
+
+
+ 请选择服务
+
+ {{item.price}}
+
+
+
+
+
+
+
+
+
+
+ 服务权益
+
+
+
+ 专属标识:
+ 享有特殊标识,获得医生全面照护
+
+
+
+ 图文问诊10次/不限次
+ 服务期间,每次可持续48小时,图片、文字、语音形式,无限制的进行沟通
+
+
+
+
+ 处方:
+ 一次问诊只可开具一个处方单
+
+
+
+
+
+ 退费:
+ 1、未使用随时退;
+
+
+
+
+
+ 2、健康包开始使用后如需退款请联系客服,退款不收取任何服务费等额外费用,但不支持部分退款:
+
+
+
+ 3、已接诊的订单,不再退款;
+
+
+
+ 4、未消费服务包内容可退款,已消费服务的部分按原价计费,即:已发生的问诊按照问诊时互联网医院显示的价格结算。
+
+
+
+
+
+
+ 立即购买:¥XX.XX
+
+
\ No newline at end of file
diff --git a/healthyService/pages/visitDetail/visitDetail.wxss b/healthyService/pages/visitDetail/visitDetail.wxss
new file mode 100644
index 0000000..06e0568
--- /dev/null
+++ b/healthyService/pages/visitDetail/visitDetail.wxss
@@ -0,0 +1,125 @@
+page{
+ height:100vh;
+ overflow: hidden;
+}
+/* healthyService/pages/healthyDetail/healthyDetail.wxss */
+.page{
+ width:100%;
+ height:calc(100% - 172rpx);
+ margin-top: 172rpx;
+ display: flex;
+ overflow: hidden;
+ flex-direction: column;
+}
+.dcimg{
+ width:100%;
+ position: absolute;
+ z-index:-1;
+}
+.detailbox{
+ overflow: hidden;
+ /* position: relative; */
+ z-index:1;
+ flex:1;
+ display: flex;
+ flex-direction: column;
+margin-top:30rpx;
+background: #FFFFFF;
+border-radius: 32rpx 32rpx 0rpx 0rpx;
+}
+.con{
+ flex:1;
+ padding: 0 30rpx;
+ overflow-y: scroll;
+ -webkit-overflow-scrolling: touch;
+}
+.quanyi{
+ position: relative;
+ width:260rpx;
+ margin:0 auto;
+ height:70rpx;
+}
+.quanyiImg{
+ width:260rpx;
+ height:70rpx;
+}
+.cell{
+ margin-bottom: 30rpx;
+}
+.quanyiText{
+ top:0;
+ position: absolute;
+
+ font-size: 34rpx;
+ width:260rpx;
+ height:70rpx;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ color: #FFFFFF;
+}
+
+.celltitle{
+ font-weight: 550;
+ font-size: 30rpx;
+ color: #000000;
+}
+.celldesc{
+ margin-top: 15rpx;
+ font-size: 30rpx;
+ color: #000000;
+}
+.buttonbox{
+ width:100%;
+ height:200rpx;
+}
+.btn{
+ height: 94rpx;
+ margin:35rpx 30rpx 0;
+ background: #3CC7C0;
+border-radius: 47rpx;
+font-size: 36rpx;
+color: #FFFFFF;
+display: flex;
+align-items: center;
+justify-content: center;
+line-height: 50rpx;
+text-align: center;
+}
+.red{
+ color:red;
+}
+.servicebox{
+ margin:0 30rpx;
+ padding:27rpx 30rpx;
+ background: #FFFFFF;
+border-radius: 10rpx;
+}
+.servicebox .ser_title{
+ font-weight: 550;
+ font-size: 30rpx;
+ color: #000000;
+}
+.row{
+ display: flex;
+ justify-content: space-between;
+ flex-wrap: wrap;
+}
+.moneyType{
+ margin-top: 30rpx;
+ width: 300rpx;
+height: 120rpx;
+display: flex;
+justify-content: center;
+align-items: center;
+font-size: 34rpx;
+color: #333333;
+border: 1rpx solid #CCCCCC;
+border-radius: 10rpx;
+
+}
+.moneyType.on{
+ background: #3CC7C0;
+ color:#fff;
+ border: 1rpx solid #3CC7C0;
+}
\ No newline at end of file
diff --git a/healthyService/static/images/healthy_bg.jpg b/healthyService/static/images/healthy_bg.jpg
new file mode 100644
index 0000000..f6a04ae
Binary files /dev/null and b/healthyService/static/images/healthy_bg.jpg differ
diff --git a/healthyService/static/images/healthy_button.png b/healthyService/static/images/healthy_button.png
new file mode 100644
index 0000000..a1676b3
Binary files /dev/null and b/healthyService/static/images/healthy_button.png differ
diff --git a/healthyService/static/images/quanyi.png b/healthyService/static/images/quanyi.png
new file mode 100644
index 0000000..ae0646d
Binary files /dev/null and b/healthyService/static/images/quanyi.png differ
diff --git a/healthyService/static/images/up.png b/healthyService/static/images/up.png
new file mode 100644
index 0000000..b45bac3
Binary files /dev/null and b/healthyService/static/images/up.png differ
diff --git a/healthyService/static/images/xia.png b/healthyService/static/images/xia.png
new file mode 100644
index 0000000..5d5fa49
Binary files /dev/null and b/healthyService/static/images/xia.png differ
diff --git a/pages/my/my.js b/pages/my/my.js
index a67e15c..6f880ff 100644
--- a/pages/my/my.js
+++ b/pages/my/my.js
@@ -73,6 +73,11 @@ Page({
url: '/sugarCheck/pages/checkOrder/checkOrder',
})
}),
+ goHealthyOrder:throttle(function(){
+ app.method.navigateTo({
+ url: '/healthyService/pages/healthyOrder/healthyOrder',
+ })
+ }),
goMyPrescript:throttle(function(){
app.method.navigateTo({
url: '/patient/pages/myPrescript/myPrescript',
diff --git a/pages/my/my.wxml b/pages/my/my.wxml
index fff2047..2520a63 100644
--- a/pages/my/my.wxml
+++ b/pages/my/my.wxml
@@ -46,6 +46,14 @@
检测
{{filter.formatNumber(patient_info.order_detection_count)}}
+
+
+
+
+
+ 服务包
+ {{filter.formatNumber(patient_info.order_detection_count)}}
+
diff --git a/pages/my/my.wxss b/pages/my/my.wxss
index 21deea0..f05ac1d 100644
--- a/pages/my/my.wxss
+++ b/pages/my/my.wxss
@@ -121,7 +121,7 @@ color: rgba(0,0,0,0.65);
margin-top: 30rpx;
width: 100%;
padding-bottom: 20rpx;
- height: 256rpx;
+
overflow: hidden;
background: #FFFFFF;
border-radius: 10rpx;
@@ -144,7 +144,7 @@ color: rgba(0,0,0,0.65);
.iconbox {
display: flex;
margin: 30rpx 52rpx 0;
-
+ flex-wrap: wrap;
justify-content: space-between;
}
diff --git a/patient/pages/expertConsult/expertConsult.js b/patient/pages/expertConsult/expertConsult.js
index aa8c748..00c31be 100644
--- a/patient/pages/expertConsult/expertConsult.js
+++ b/patient/pages/expertConsult/expertConsult.js
@@ -208,7 +208,7 @@ Page({
this.setData({
lock:false,
page:1,
- scrollHeight:300,
+ scrollHeight:150,
doctorList:[]
});
this.getDoctorList()
diff --git a/patient/pages/expertDetail/expertDetail.wxml b/patient/pages/expertDetail/expertDetail.wxml
index 1b0b8eb..a0d39ac 100644
--- a/patient/pages/expertDetail/expertDetail.wxml
+++ b/patient/pages/expertDetail/expertDetail.wxml
@@ -72,7 +72,8 @@
医生服务
{{filter.formatYear(days)}}内服务过您
-
+
+
@@ -104,6 +105,24 @@
暂未开通
+
+
+
+ 随访包
+ ¥150起
+
+
+
+
+
+
+ 随访包
+ ¥1260/次
+
+
@@ -118,6 +137,7 @@
{{videoPrice?'¥'+videoPrice+'/次':'暂未开通'}}
+
@@ -133,6 +153,7 @@
+
diff --git a/patient/pages/expertDetail/expertDetail.wxss b/patient/pages/expertDetail/expertDetail.wxss
index 37d648f..e26422e 100644
--- a/patient/pages/expertDetail/expertDetail.wxss
+++ b/patient/pages/expertDetail/expertDetail.wxss
@@ -517,17 +517,28 @@ justify-content:center;
.wz_tabbox{
margin-top: 20rpx;
}
+.tabbox{
+ margin-top: 16rpx;
+ overflow-x: scroll;
+ width:100%;
+}
.tabs{
- margin-top: 16rpx;
+ height:330rpx;
display: flex;
- justify-content: space-between;
+ width:1150rpx;
+
}
.tabs .tab{
width: 214rpx;
height: 300rpx;
position: relative;
+ margin-right: 20rpx;
box-shadow: 0rpx 8rpx 20rpx 2rpx rgba(0,0,0,0.04);
}
+
+.tabs .tab:last-child{
+ margin-right: 0;
+}
.tabbg{
top:0rpx;
width: 100%;
@@ -568,7 +579,7 @@ color: #999999;
text-decoration: line-through;
}
.swiperbox{
- margin-top: 45rpx;
+ margin-top: 35rpx;
}
.swiper-item{
border-radius: 20rpx;
diff --git a/patient/static/images.zip b/patient/static/images.zip
new file mode 100644
index 0000000..eb92c0c
Binary files /dev/null and b/patient/static/images.zip differ
diff --git a/patient/static/images/healthy_disable.png b/patient/static/images/healthy_disable.png
new file mode 100644
index 0000000..23bd027
Binary files /dev/null and b/patient/static/images/healthy_disable.png differ
diff --git a/patient/static/images/healthy_on.png b/patient/static/images/healthy_on.png
new file mode 100644
index 0000000..037c809
Binary files /dev/null and b/patient/static/images/healthy_on.png differ
diff --git a/patient/static/images/suifang_disable.png b/patient/static/images/suifang_disable.png
new file mode 100644
index 0000000..11708b9
Binary files /dev/null and b/patient/static/images/suifang_disable.png differ
diff --git a/patient/static/images/suifang_on.png b/patient/static/images/suifang_on.png
new file mode 100644
index 0000000..ccc6697
Binary files /dev/null and b/patient/static/images/suifang_on.png differ
diff --git a/patient/static/images/服务包.png b/patient/static/images/服务包.png
new file mode 100644
index 0000000..18b3333
Binary files /dev/null and b/patient/static/images/服务包.png differ