| @@ -137,7 +137,7 @@ | |||
| .shopVoList { | |||
| white-space: nowrap !important; | |||
| overflow-y: scroll; | |||
| height: 60rpx !important; | |||
| // height: 60rpx !important; | |||
| width: 360rpx; | |||
| font-size: 16px; | |||
| color: #333; | |||
| @@ -27,6 +27,40 @@ | |||
| <!-- 当item.expand为true且商户数量不大于三个时 --> | |||
| <view class="shop" tt:if="{{item.expand}}"> | |||
| <view class='posi' tt:for="{{[item.merchantVoList[0]]}}" tt:for-index="itemIndex" tt:key="{{itemIndex}}"> | |||
| <view class='posi_logo'> | |||
| <view bindtap='gotoDetail' data-id='{{item.id}}' data-tenantId='{{item.tenantId}}'> | |||
| <image src='{{item.merchantImgUrl}}'></image> | |||
| </view> | |||
| <view bindtap='gotoDetail' data-id='{{item.id}}' data-tenantId='{{item.tenantId}}'> | |||
| <view class='name'>{{item.merchantName}}</view> | |||
| <view class='shopVoList'> | |||
| <view tt:for="{{item.shopVoList}}" tt:key="{{index}}" tt:for-item="itemName"> | |||
| <text>{{itemName.buildingName}}{{itemName.floorName}}--{{itemName.shopNumber}}</text> | |||
| <text class='douhao' tt:if="{{item.shopVoList.length>1}}">,</text> | |||
| </view> | |||
| </view> | |||
| </view> | |||
| <view class="telBox" tt:if="{{item.linkLinePhone}}"> | |||
| <image bindtap='phone' data-merchantLinkPhone='{{item.linkLinePhone}}' class="telImg" | |||
| src="{{telJpgUrl}}" mode="widthFix" /> | |||
| <view class="telText">电话</view> | |||
| </view> | |||
| <!-- <view class="certificationBox" tt:if="{{item.latitude&&item.longitude}}" bindtap="goCertification" | |||
| data-id="{{item.id}}"> | |||
| <image class="certificationImg" src="../../assets/imgData/certification.png" mode="widthFix" /> | |||
| <view class="telText">资质</view> | |||
| </view> --> | |||
| </view> | |||
| <view class="siteBox" tt:if="{{item.latitude&&item.longitude}}" bindtap="goMap" data-item="{{item}}"> | |||
| <view class="siteText">{{item.addr}}</view> | |||
| <image class="siteImg" src="../../assets/imgData/siteImg.png" mode="widthFix" /> | |||
| </view> | |||
| <view class="dividerInside" tt:if="{{(itemIndex+1)<list[index].merchantVoList.length}}"></view> | |||
| </view> | |||
| </view> | |||
| <view class="shop" tt:if="{{!item.expand}}"> | |||
| <view class='posi' tt:for="{{item.merchantVoList}}" tt:for-index="itemIndex" tt:key="{{itemIndex}}"> | |||
| <view class='posi_logo'> | |||
| <view bindtap='gotoDetail' data-id='{{item.id}}' data-tenantId='{{item.tenantId}}'> | |||
| @@ -112,7 +112,6 @@ | |||
| .components .body .shop .posi .posi_logo .shopVoList { | |||
| white-space: nowrap !important; | |||
| overflow-y: scroll; | |||
| height: 60rpx !important; | |||
| width: 360rpx; | |||
| font-size: 16px; | |||
| color: #333; | |||
| @@ -13,6 +13,7 @@ Page({ | |||
| endTime: "", | |||
| mallTenantId: "", | |||
| pickedAddress: "请选择地址", | |||
| pickedAddressDetail: "", | |||
| pickedDate: "请选择日期", | |||
| pickedStartTime: "请选择", | |||
| pickedEndTime: "请选择", | |||
| @@ -178,6 +179,12 @@ Page({ | |||
| }) | |||
| }, | |||
| chooseAddressDetail() { | |||
| this.setData({ | |||
| pickedAddressDetailFlag: false | |||
| }) | |||
| }, | |||
| chooseDate(e) { | |||
| console.log(e.detail.value, 'e'); | |||
| this.setData({ | |||
| @@ -199,6 +206,13 @@ Page({ | |||
| }) | |||
| }, | |||
| inputAddressDetail(e) { | |||
| this.setData({ | |||
| pickedAddressDetail: e.detail.value | |||
| }) | |||
| }, | |||
| describing(e) { | |||
| this.setData({ | |||
| describeStr: e.detail.value | |||
| @@ -243,6 +257,7 @@ Page({ | |||
| const data = { | |||
| couponOrderId: tempData.orderId, | |||
| userAddress: tempData.pickedAddress, | |||
| detailedAddress: tempData.pickedAddressDetail, | |||
| startDate: tempData.pickedDate + " " + tempData.pickedStartTime + ":00", | |||
| endDate: tempData.pickedDate + " " + tempData.pickedEndTime + ":00", | |||
| describeStr: tempData.describeStr, | |||
| @@ -355,6 +370,7 @@ Page({ | |||
| const status = res.data.status | |||
| that.setData({ | |||
| pickedAddress: res.data.userAddress || '请选择地址', | |||
| pickedAddressDetail: res.data.detailedAddress, | |||
| pickedDate: util.timestampToTime(res.data.startDate, 'YYYY-MM-DD'), | |||
| pickedStartTime: util.timestampToTime(res.data.startDate, 'hh:mm'), | |||
| pickedEndTime: util.timestampToTime(res.data.endDate, 'hh:mm'), | |||
| @@ -14,6 +14,11 @@ | |||
| </text> | |||
| </view> | |||
| <view tt:if="{{ pickedAddress != '请选择地址' }}" class="addressTextarea"> | |||
| <textarea class="describe" placeholder="请填写详细地址:单元楼、门牌号等" bindinput="inputAddressDetail" | |||
| value="{{ pickedAddressDetail }}"></textarea> | |||
| </view> | |||
| <view class="datePickerFlex"> | |||
| <picker mode="date" start="{{ startTime }}" end="{{ endTime }}" disabled="{{ !isShowBtns }}" | |||
| bindchange='chooseDate'>选择服务日期:</picker> | |||
| @@ -47,10 +52,10 @@ | |||
| disabled="{{false}}" bindchange="setMerchant"> | |||
| <text> 选择可用商户:<text class="pickerInside">{{ mallList[currentIndex].merchantName }} <text | |||
| class="distanceFoot">{{ mallList[currentIndex].distance_str }}</text></text></text> | |||
| </picker><!-- --> | |||
| </picker> | |||
| </view> | |||
| <view class="textarea"> | |||
| <view class="describeTextarea"> | |||
| <textarea class="describe" placeholder="备注:说点什么吧" disabled="{{ !isShowBtns }}" bindinput="describing" | |||
| value="{{ describeStr }}"></textarea> | |||
| </view> | |||
| @@ -21,6 +21,7 @@ page { | |||
| color: #8a8a8a; | |||
| } | |||
| .addressPickerFlex { | |||
| display: flex; | |||
| justify-content: space-between; | |||
| @@ -55,7 +56,15 @@ page { | |||
| margin: 35rpx auto; | |||
| } | |||
| .textarea { | |||
| .addressTextarea { | |||
| height: 130rpx; | |||
| margin: 35rpx auto; | |||
| overflow: hidden; | |||
| border-radius: 20rpx; | |||
| } | |||
| .describeTextarea { | |||
| margin: 35rpx auto; | |||
| overflow: hidden; | |||
| border-radius: 20rpx; | |||
| @@ -352,6 +352,7 @@ Page({ | |||
| .then(res => { | |||
| tt.hideLoading() | |||
| // 有价券 | |||
| tt.setStorageSync('appointment', true); | |||
| if (!type && type != 'free') { | |||
| console.log('Over Here! type'); | |||
| setTimeout(() => { | |||
| @@ -371,8 +372,7 @@ Page({ | |||
| } else if (type == 'free') { | |||
| console.log('Over Here! type2'); | |||
| tt.navigateTo({ | |||
| url: `/pages/order/detail/index?orderId=${orderId | |||
| }&mallTenantId=${that.data.mallTenantId}` | |||
| url: `/pages/order/detail/index?orderId=${orderId}&mallTenantId=${that.data.mallTenantId}` | |||
| }); | |||
| } | |||
| }) | |||
| @@ -66,7 +66,7 @@ Page({ | |||
| appointEnd: "", | |||
| appointmentId: "", | |||
| appointmentStatus: "", | |||
| use_num_per_consume: "" | |||
| use_num_per_consume: "", | |||
| }, | |||
| imCallback(e) { | |||
| @@ -181,9 +181,9 @@ Page({ | |||
| }) | |||
| }, | |||
| goAppointment(e) { | |||
| goAppointment(e, orderIdin) { | |||
| const that = this | |||
| const orderId = e.currentTarget.dataset.id | |||
| const orderId = e ? e.currentTarget.dataset.id : orderIdin | |||
| const id = this.data.appointmentId | |||
| const startTime = that.data.order.validStartDATE | |||
| const endTime = that.data.order.validEndDate | |||
| @@ -527,6 +527,28 @@ Page({ | |||
| } | |||
| if (tempData.type == 69 && tempData.couponOrderStatus == 0) { | |||
| const Appointment = tt.getStorageSync('appointment'); | |||
| if (Appointment) { | |||
| tt.showModal({ | |||
| title: "提示", | |||
| content: "是否立即填写预约信息?", | |||
| showCancel: true, | |||
| confirmText: "现在预约", | |||
| confirmColor: "#deb472", | |||
| cancelText: "稍后预约", | |||
| success(res) { | |||
| if (res.confirm) { | |||
| tt.setStorageSync('appointment', false); | |||
| that.goAppointment(false, tempData.couponOrderId) | |||
| } | |||
| if (res.cancel) { | |||
| } | |||
| } | |||
| }); | |||
| } | |||
| } | |||
| that.setData({ | |||
| outOrderNo: res.data.id, | |||
| @@ -897,6 +919,8 @@ Page({ | |||
| * 生命周期函数--监听页面加载 | |||
| */ | |||
| onLoad: function (option) { | |||
| console.log(option, 'option'); | |||
| let options = null | |||
| if (option.params) { | |||
| options = JSON.parse(option.params) | |||
| @@ -910,6 +934,7 @@ Page({ | |||
| }) | |||
| } | |||
| this.setData({ | |||
| mouldType: app.globalData.mouldType | |||
| }) | |||
| @@ -1323,6 +1348,7 @@ Page({ | |||
| }, 1600); | |||
| setTimeout(() => { | |||
| console.log('Here1'); | |||
| tt.setStorageSync('appointment', true); | |||
| let url = "" | |||
| if (_this.data.orderFlag) { | |||
| tt.redirectTo({ | |||
| @@ -1330,7 +1356,7 @@ Page({ | |||
| }); | |||
| } else { | |||
| tt.redirectTo({ | |||
| url: `/pages/order/detail/index?orderId=${orderId}}&mallTenantId=${that.data.mallTenantId}` | |||
| url: `/pages/order/detail/index?orderId=${orderId}&mallTenantId=${that.data.mallTenantId}` | |||
| }); | |||
| } | |||
| @@ -1340,7 +1366,7 @@ Page({ | |||
| } else if (type == 'free') { | |||
| console.log('Here2'); | |||
| tt.redirectTo({ | |||
| url: `/pages/order/detail/index?orderId=${orderId}}&mallTenantId=${that.data.mallTenantId}` | |||
| url: `/pages/order/detail/index?orderId=${orderId}&mallTenantId=${that.data.mallTenantId}` | |||
| }); | |||
| } | |||
| }) | |||
| @@ -56,6 +56,15 @@ | |||
| "scene": "011007", | |||
| "launchFrom": "scan", | |||
| "location": "audit" | |||
| }, | |||
| { | |||
| "id": 1687681696486, | |||
| "name": "package2/pages/appointment/appointment", | |||
| "pathName": "package2/pages/appointment/appointment", | |||
| "query": "id=&orderId=832862588988481536&startTime=1687622400000&endTime=2023-06-30&mallList=%255B%257B%2522tenantId%2522%253A%25221040%2522%252C%2522mallName%2522%253A%2522%25E5%25AF%258C%25E8%258C%2582%25E5%25AE%25B6%25E6%2594%25BF%2522%252C%2522merchantVoList%2522%253A%255B%257B%2522merchantStatus%2522%253A1%252C%2522shopVoList%2522%253A%255B%257B%2522imgUrl%2522%253A%2522https%253A%252F%252Fformall.oss-accelerate.aliyuncs.com%252F234%252FWechatIMG5071.png%2522%252C%2522buildingName%2522%253A%2522%25E5%25AF%258C%25E8%258C%2582%25E5%25AE%25B6%25E6%2594%25BF%2522%252C%2522linkPhone%2522%253A%2522%2522%252C%2522shopNumber%2522%253A%2522001%2522%252C%2522id%2522%253A%2522828071776068100096%2522%252C%2522floorName%2522%253A%25221F%2522%252C%2522floor%2522%253A%2522825939503087149056%2522%252C%2522addr%2522%253A%2522%2522%252C%2522linkPerson%2522%253A%2522%2522%252C%2522building%2522%253A%2522825939503074566144%2522%257D%255D%252C%2522latitude%2522%253A%252230.277748%2522%252C%2522businessId%2522%253A6%252C%2522supplierExtId%2522%253A%2522828072047632506880%2522%252C%2522isAdmin%2522%253A0%252C%2522merchantName%2522%253A%2522%25E5%25AE%25B6%25E5%25B8%25AE%25E6%25B1%2587%25E5%25AE%25B6%25E6%2594%25BF%25E4%25BF%259D%25E6%25B4%2581%28%25E6%25B2%25B3%25E6%25B1%25A0%25E5%25B8%2582%25E5%25BA%2586%25E8%25BF%259C%25E9%2595%2587%29%2522%252C%2522ttPoi%2522%253A%25227241459164742944771%2522%252C%2522merchantImgUrl%2522%253A%2522https%253A%252F%252Fformall.oss-accelerate.aliyuncs.com%252F234%252FWechatIMG5071.png%2522%252C%2522merchantLinkPhone%2522%253A%252218988778877%2522%252C%2522parameter%2522%253A%2522%257B%255C%2522subsidyNumStr%255C%2522%253A%25200%257D%2522%252C%2522tenantId%2522%253A%25221040%2522%252C%2522finalTenantId%2522%253A%25221040%2522%252C%2522id%2522%253A%2522828072047632506880%2522%252C%2522longitude%2522%253A%2522119.996078%2522%257D%255D%252C%2522expand%2522%253Atrue%257D%255D", | |||
| "scene": "990001", | |||
| "launchFrom": "scan", | |||
| "location": "qr_code" | |||
| } | |||
| ] | |||
| } | |||