Kaynağa Gözat

fix: appointment

wangyuan 2 yıl önce
ebeveyn
işleme
732ead6864

+ 53 - 12
pages/appointment/appointment.js

@@ -15,7 +15,7 @@ Page({
     province: '',
     city: '',
     county: '',
-    timeActive: '1',
+    timeActive: '',
     appointmentSuccess: false, 
     curYear: '-',
     curMonth: '-',
@@ -28,8 +28,11 @@ Page({
     appusername: '',
     appuserheadimg: '',
     durationOne: false,
+    durationOneBusy: false,
     durationTwo: false,
-    durationThree: false
+    durationTwoBusy: false,
+    durationThree: false,
+    durationThreeBusy: false
   },
 
   /**
@@ -83,17 +86,20 @@ Page({
         console.log(item);
         if (item.duration == 1) {
           that.setData({
-            durationOne: item.isBusy
+            durationOne: item.isBusy,
+            durationOneBusy: item.rest == 0 ? true : false
           })
         }
         if (item.duration == 2) {
           that.setData({
-            durationTwo: item.isBusy
+            durationTwo: item.isBusy,
+            durationTwoBusy: item.rest == 0 ? true : false
           })
         }
         if (item.duration == 3) {
           that.setData({
-            durationThree: item.isBusy
+            durationThree: item.isBusy,
+            durationThreeBusy: item.rest == 0 ? true : false
           })
         }
       })
@@ -233,9 +239,9 @@ Page({
         }
         if (index == that.data.currentWeek + 2) {
            // item.active = true
-           that.setData({
+           /* that.setData({
             choseDate: _year + '-' + _month + '-' + _day
-          })
+          }) */
         }
         item.dateStr = _year + '-' + _month + '-' + _day
       } else {
@@ -322,10 +328,29 @@ Page({
     }
   },
   handleTime (e) {
+    if (!this.data.hasAddress) {
+      wx.showToast({
+        title: '请选择地址',
+        icon: 'error',
+        mask: true
+      })
+      return
+    }
+    if (this.data.choseDate == '') {
+      wx.showToast({
+        title: '请选择日期',
+        icon: 'error',
+        mask: true
+      })
+      return
+    }
     var timeActiveIndex = e.currentTarget.dataset.time
-    this.setData({
-      timeActive: timeActiveIndex
-    })
+    var disabled = e.currentTarget.dataset.dis
+    if (!disabled) {
+      this.setData({
+        timeActive: timeActiveIndex
+      })
+    }
   },
   // 去充值
   handleCharge () {},
@@ -357,7 +382,23 @@ Page({
         mask: true
       })
     } else {
-      this.submitAppointmentFn()
+      if (this.data.choseDate == '') {
+        wx.showToast({
+          title: '请选择日期',
+          icon: 'error',
+          mask: true
+        })
+      } else {
+        if (this.data.timeActive == '') {
+          wx.showToast({
+            title: '请选择时间段',
+            icon: 'error',
+            mask: true
+          })
+        } else {
+          this.submitAppointmentFn()
+        }
+      }
     }
   },
   // 提交预约信息
@@ -406,7 +447,7 @@ Page({
     this.setData({
       hasAddress: true,
       appointmentSuccess: false,
-      timeActive: '1',
+      timeActive: '',
       addressId: '',
       address: '',
       province: '',

+ 3 - 3
pages/appointment/appointment.wxml

@@ -69,15 +69,15 @@
         </view>
       </view>
       <view class="time-list ittflex">
-        <view class="time-a time-item time-nurse {{timeActive == '1' ? 'time-active' : ''}}" data-time="1" bindtap="handleTime">
+        <view class="time-a time-item time-nurse  {{timeActive == '1' ? 'time-active' : ''}} {{durationOneBusy ? 'time-item-disabled' : ''}}" data-time="1" data-dis="{{durationOneBusy}}" bindtap="handleTime">
           <text class="t-text">8:00-12:00</text>
           <text class="time-nurse-text" wx:if="{{durationOne}}">剩余紧张</text>
         </view>
-        <view class="time-b time-item time-nurse {{timeActive == '2' ? 'time-active' : ''}}" data-time="2" bindtap="handleTime">
+        <view class="time-b time-item time-nurse {{timeActive == '2' ? 'time-active' : ''}} {{durationTwoBusy ? 'time-item-disabled' : ''}}" data-dis="{{durationTwoBusy}}" data-time="2" bindtap="handleTime">
           <text class="t-text">13:00-18:00</text>
           <text class="time-nurse-text" wx:if="{{durationTwo}}">剩余紧张</text>
         </view>
-        <view class="time-c time-item time-nurse {{timeActive == '3' ? 'time-active' : ''}}" data-time="3" bindtap="handleTime">
+        <view class="time-c time-item time-nurse {{timeActive == '3' ? 'time-active' : ''}} {{durationThreeBusy ? 'time-item-disabled' : ''}}" data-dis="{{durationThreeBusy}}" data-time="3" bindtap="handleTime">
           <text class="t-text">18:00-21:00</text>
           <text class="time-nurse-text" wx:if="{{durationThree}}">剩余紧张</text>
         </view>

+ 5 - 0
pages/appointment/appointment.wxss

@@ -255,6 +255,7 @@ view .van-calendar__days {
   border-radius: 10rpx;
   border: 1rpx solid #DDDDDD;
 }
+
 .t-text {
   font-size: 26rpx;
   font-weight: 400;
@@ -327,4 +328,8 @@ view .van-calendar__days {
 }
 .calendar-all-full {
   color: #9A1D16 !important;
+}
+.time-item-disabled {
+  background: #CCCCCC;
+  border: 0;
 }