Commit 9d44dcd0ff1ac833784a26fccba5b3449891b28b
1 parent
fcb0c618
属性名,bug修改,界面调整
Showing
17 changed files
with
233 additions
and
82 deletions
pages/user/my_service/appment_main.js
| @@ -38,6 +38,9 @@ Page({ | @@ -38,6 +38,9 @@ Page({ | ||
| 38 | buyType: "", //项目类型 | 38 | buyType: "", //项目类型 |
| 39 | time: "", //选择预约时间 | 39 | time: "", //选择预约时间 |
| 40 | tment_count: "", //可预约人数 | 40 | tment_count: "", //可预约人数 |
| 41 | + lat: "", //纬度坐标 | ||
| 42 | + lon: "", //经度坐标 | ||
| 43 | + is_gps: 1,//是否开启gps | ||
| 41 | }, | 44 | }, |
| 42 | onclickstore: function() { | 45 | onclickstore: function() { |
| 43 | var th = this; | 46 | var th = this; |
| @@ -54,6 +57,9 @@ Page({ | @@ -54,6 +57,9 @@ Page({ | ||
| 54 | placeholder: "" | 57 | placeholder: "" |
| 55 | }) | 58 | }) |
| 56 | if (th.data.store_list.length < 1) { | 59 | if (th.data.store_list.length < 1) { |
| 60 | + wx.showLoading({ | ||
| 61 | + title: '加载中', | ||
| 62 | + }) | ||
| 57 | th.query_store(); | 63 | th.query_store(); |
| 58 | } | 64 | } |
| 59 | } | 65 | } |
| @@ -119,6 +125,7 @@ Page({ | @@ -119,6 +125,7 @@ Page({ | ||
| 119 | th.setData({ | 125 | th.setData({ |
| 120 | is_success: 1 | 126 | is_success: 1 |
| 121 | }) | 127 | }) |
| 128 | + setTimeout(function() {}, 2000); | ||
| 122 | wx.redirectTo({ | 129 | wx.redirectTo({ |
| 123 | url: "/pages/user/my_service/tment_order_list" | 130 | url: "/pages/user/my_service/tment_order_list" |
| 124 | }); | 131 | }); |
| @@ -190,11 +197,11 @@ Page({ | @@ -190,11 +197,11 @@ Page({ | ||
| 190 | storeId: a.stoid, | 197 | storeId: a.stoid, |
| 191 | userId: d.user_id, | 198 | userId: d.user_id, |
| 192 | serviceId: itemId, | 199 | serviceId: itemId, |
| 193 | - latitude: 1, | ||
| 194 | - longitude: 1, | 200 | + latitude: th.data.lat, |
| 201 | + longitude: th.data.lon, | ||
| 195 | page: th.data.curpage, | 202 | page: th.data.curpage, |
| 196 | pageSize: th.data.pageSize, | 203 | pageSize: th.data.pageSize, |
| 197 | - KeyWord: key_word | 204 | + keyWord: key_word |
| 198 | } | 205 | } |
| 199 | }).then(res => { | 206 | }).then(res => { |
| 200 | if (res.data.code == 0) { | 207 | if (res.data.code == 0) { |
| @@ -278,27 +285,23 @@ Page({ | @@ -278,27 +285,23 @@ Page({ | ||
| 278 | var th = this; | 285 | var th = this; |
| 279 | var key_word = th.data.key_word; | 286 | var key_word = th.data.key_word; |
| 280 | var store_list = th.data.store_list; | 287 | var store_list = th.data.store_list; |
| 281 | - if (key_word != "") { | 288 | + th.setData({ |
| 289 | + curpage: 1, | ||
| 290 | + is_search: 0, | ||
| 291 | + store_list: [] | ||
| 292 | + }) | ||
| 293 | + th.query_store(); | ||
| 294 | + if (store_list.length < 1) { | ||
| 282 | th.setData({ | 295 | th.setData({ |
| 283 | - curpage: 1, | ||
| 284 | - is_search: 0, | ||
| 285 | - store_list: [] | 296 | + is_search: 1 |
| 286 | }) | 297 | }) |
| 287 | - th.query_store(); | ||
| 288 | - if (store_list.length < 1) { | ||
| 289 | - th.setData({ | ||
| 290 | - is_search: 1 | ||
| 291 | - }) | ||
| 292 | - } | ||
| 293 | - } else { | ||
| 294 | - getApp().my_warnning("请输入门店名称", 0, th); | ||
| 295 | } | 298 | } |
| 296 | }, | 299 | }, |
| 297 | //美容师预约跳转页面 | 300 | //美容师预约跳转页面 |
| 298 | nav_bea: function() { | 301 | nav_bea: function() { |
| 299 | var th = this; | 302 | var th = this; |
| 300 | var storageId = th.data.storageId; //线下门店id | 303 | var storageId = th.data.storageId; //线下门店id |
| 301 | - var itemId = th.data.itemId; | 304 | + var itemId = th.data.itemId; //服务id |
| 302 | if (storageId == "") { | 305 | if (storageId == "") { |
| 303 | getApp().my_warnning("请选择服务门店", 0, th); | 306 | getApp().my_warnning("请选择服务门店", 0, th); |
| 304 | } else { | 307 | } else { |
| @@ -317,6 +320,33 @@ Page({ | @@ -317,6 +320,33 @@ Page({ | ||
| 317 | buyType: options.BuyType, | 320 | buyType: options.BuyType, |
| 318 | project_id: options.ProjectID, | 321 | project_id: options.ProjectID, |
| 319 | }) | 322 | }) |
| 323 | + wx.getLocation({ | ||
| 324 | + type: 'wgs84', | ||
| 325 | + success: function(res) { | ||
| 326 | + th.data.lat = res.latitude; | ||
| 327 | + th.data.lon = res.longitude; | ||
| 328 | + th.data.is_get_local_ok = 1; | ||
| 329 | + th.setData({ | ||
| 330 | + is_gps: 1 | ||
| 331 | + }); | ||
| 332 | + }, | ||
| 333 | + fail: function(res) { | ||
| 334 | + if (res.errCode == 2) { | ||
| 335 | + th.setData({ | ||
| 336 | + is_gps: 0 | ||
| 337 | + }); | ||
| 338 | + if (th.data.is_gps == 0) { | ||
| 339 | + getApp().confirmBox("请开启GPS定位", null, 25000, !1); | ||
| 340 | + } | ||
| 341 | + } else { | ||
| 342 | + th.setData({ | ||
| 343 | + is_gps: "3" | ||
| 344 | + }); | ||
| 345 | + } | ||
| 346 | + | ||
| 347 | + th.data.is_get_local_ok = 1; | ||
| 348 | + } | ||
| 349 | + }) | ||
| 320 | }, | 350 | }, |
| 321 | //查询剩下可预约人数 | 351 | //查询剩下可预约人数 |
| 322 | query_more: function() { | 352 | query_more: function() { |
pages/user/my_service/appment_main.wxml
| 1 | +<wxs module="filters" src="../../../utils/filter.wxs"></wxs> | ||
| 1 | <view class="container"> | 2 | <view class="container"> |
| 2 | <image class="main" src="{{iurl}}/miniapp/images/yyservice/main.png"></image> | 3 | <image class="main" src="{{iurl}}/miniapp/images/yyservice/main.png"></image> |
| 3 | 4 | ||
| @@ -25,7 +26,7 @@ | @@ -25,7 +26,7 @@ | ||
| 25 | <view>师</view> | 26 | <view>师</view> |
| 26 | </view> | 27 | </view> |
| 27 | 28 | ||
| 28 | - <!-- 选择门店 --> | 29 | + <!-- 选择美容师 --> |
| 29 | <view class="rel fs26"> | 30 | <view class="rel fs26"> |
| 30 | <view class="flex-vertical-between Cosmetology" bindtap="query_beautician"> | 31 | <view class="flex-vertical-between Cosmetology" bindtap="query_beautician"> |
| 31 | <view class="color value ellipsis-1">{{beautician_name==''?'选择美容师':beautician_name}}</view> | 32 | <view class="color value ellipsis-1">{{beautician_name==''?'选择美容师':beautician_name}}</view> |
| @@ -54,7 +55,7 @@ | @@ -54,7 +55,7 @@ | ||
| 54 | </view> | 55 | </view> |
| 55 | 56 | ||
| 56 | <!-- 选择门店 --> | 57 | <!-- 选择门店 --> |
| 57 | - <view class="flex-vertical-between fs26 select" data-url="/pages/user/my_service/beauty_deta?url+{{url}}&BeauticianID={{beauticianID}}&itemId={{itemId}}" bindtap="goto"> | 58 | + <view class="flex-vertical-between fs26 select" data-url="/pages/user/my_service/beauty_deta?url+{{url}}&BeauticianID={{beauticianID}}&itemId={{itemId}}&modify=0" bindtap="goto"> |
| 58 | <view class="color">{{time==""?'选择时间':time}}</view> | 59 | <view class="color">{{time==""?'选择时间':time}}</view> |
| 59 | <view class="angle angler">∟</view> | 60 | <view class="angle angler">∟</view> |
| 60 | </view> | 61 | </view> |
| @@ -124,11 +125,11 @@ | @@ -124,11 +125,11 @@ | ||
| 124 | <view class="store_name_dis"> | 125 | <view class="store_name_dis"> |
| 125 | <view class="name_dis flex-vertical-between"> | 126 | <view class="name_dis flex-vertical-between"> |
| 126 | <view class="store_name fs28 ellipsis-1">{{item.StorageName}}</view> | 127 | <view class="store_name fs28 ellipsis-1">{{item.StorageName}}</view> |
| 127 | - <view class="store_dis flex fs22"> | ||
| 128 | - <view class="ellipsis-1">距您: 728m</view> | 128 | + <view wx:if="{{item.Distance!=undefined || item.Distance!=''}}" class="store_dis flex fs22"> |
| 129 | + <view class="ellipsis-1">距您:{{item.Distance}}km</view> | ||
| 129 | </view> | 130 | </view> |
| 130 | </view> | 131 | </view> |
| 131 | - <view class="store_address fs24 ellipsis-2">地址:{{item.Address}}</view> | 132 | + <view class="store_address fs24 ellipsis-2">{{item.Address}}</view> |
| 132 | </view> | 133 | </view> |
| 133 | </view> | 134 | </view> |
| 134 | <!-- 通过搜索的时候没有找到的提示语 --> | 135 | <!-- 通过搜索的时候没有找到的提示语 --> |
pages/user/my_service/appment_main.wxss
| @@ -43,7 +43,7 @@ | @@ -43,7 +43,7 @@ | ||
| 43 | left: 110rpx; | 43 | left: 110rpx; |
| 44 | width: 540rpx; | 44 | width: 540rpx; |
| 45 | height: 315rpx; | 45 | height: 315rpx; |
| 46 | - background-color: #a6a6a6a4; | 46 | + background-color: rgb(155,155,155); |
| 47 | text-align: center; | 47 | text-align: center; |
| 48 | border-radius: 20rpx; | 48 | border-radius: 20rpx; |
| 49 | color: rgb(255, 255, 255); | 49 | color: rgb(255, 255, 255); |
| @@ -249,7 +249,7 @@ | @@ -249,7 +249,7 @@ | ||
| 249 | border-radius: 25rpx; | 249 | border-radius: 25rpx; |
| 250 | margin-right: 20rpx; | 250 | margin-right: 20rpx; |
| 251 | color: rgb(159, 159, 159); | 251 | color: rgb(159, 159, 159); |
| 252 | - max-width: 150rpx; | 252 | + max-width: 200rpx; |
| 253 | } | 253 | } |
| 254 | 254 | ||
| 255 | .store_address { | 255 | .store_address { |
pages/user/my_service/beauty_deta.js
| @@ -13,7 +13,7 @@ Page({ | @@ -13,7 +13,7 @@ Page({ | ||
| 13 | iurl: a.imghost, | 13 | iurl: a.imghost, |
| 14 | url: "", //选择选择时间后返回的页面 | 14 | url: "", //选择选择时间后返回的页面 |
| 15 | defimgurl: "/miniapp/images/yyservice/yyxmdefault.jpg", | 15 | defimgurl: "/miniapp/images/yyservice/yyxmdefault.jpg", |
| 16 | - seekTime: "2019-11-24", //当前服务预约选择的时间 | 16 | + seekTime: "", //当前服务预约选择的时间 |
| 17 | time_list: [], //可预约时间 | 17 | time_list: [], //可预约时间 |
| 18 | name: "", //美容师姓名 | 18 | name: "", //美容师姓名 |
| 19 | comment: "", //美容师评价 | 19 | comment: "", //美容师评价 |
| @@ -22,9 +22,11 @@ Page({ | @@ -22,9 +22,11 @@ Page({ | ||
| 22 | time: ["08:00", "09:00", "10:00", "11:00", "12:00", "13:00", "14:00", "15:00", "16:00", "17:00", "18:00", "19:00", "20:00", "21:00", "22:00"], | 22 | time: ["08:00", "09:00", "10:00", "11:00", "12:00", "13:00", "14:00", "15:00", "16:00", "17:00", "18:00", "19:00", "20:00", "21:00", "22:00"], |
| 23 | time_index: "", //选择预约时间下标 | 23 | time_index: "", //选择预约时间下标 |
| 24 | date_id: 0, //选择日期的id | 24 | date_id: 0, //选择日期的id |
| 25 | - beautician_id: "337C11B8-034B-495D-B360-FC2F6CB29394", //美容师id | 25 | + beautician_id: "", //美容师id |
| 26 | itemId: "", //服务id | 26 | itemId: "", //服务id |
| 27 | number: "", //预约单号 | 27 | number: "", //预约单号 |
| 28 | + modify: 0, //是否是修改时间 | ||
| 29 | + iscos: 0, //是否是从美容师列表过来的 | ||
| 28 | }, | 30 | }, |
| 29 | 31 | ||
| 30 | /** | 32 | /** |
| @@ -36,8 +38,11 @@ Page({ | @@ -36,8 +38,11 @@ Page({ | ||
| 36 | th.setData({ | 38 | th.setData({ |
| 37 | url: options.url, | 39 | url: options.url, |
| 38 | beautician_id: beautician_id, | 40 | beautician_id: beautician_id, |
| 39 | - itemId: options.itemId | 41 | + itemId: options.itemId, |
| 42 | + iscos: options.iscos, | ||
| 43 | + modify: options.modify | ||
| 40 | }) | 44 | }) |
| 45 | + | ||
| 41 | if (options.number != "") { | 46 | if (options.number != "") { |
| 42 | th.setData({ | 47 | th.setData({ |
| 43 | number: options.number | 48 | number: options.number |
| @@ -102,32 +107,59 @@ Page({ | @@ -102,32 +107,59 @@ Page({ | ||
| 102 | //返回上个页面 | 107 | //返回上个页面 |
| 103 | navigateBack: function() { | 108 | navigateBack: function() { |
| 104 | var th = this; | 109 | var th = this; |
| 110 | + var modify = th.data.modify; //是否是更改时间 | ||
| 105 | var seekTime = th.data.seekTime; //选择的日期 | 111 | var seekTime = th.data.seekTime; //选择的日期 |
| 106 | var time_list = th.data.time_list; | 112 | var time_list = th.data.time_list; |
| 107 | var time_index = th.data.time_index; | 113 | var time_index = th.data.time_index; |
| 114 | + if (time_index == "") { | ||
| 115 | + getApp().my_warnning("请选择预约时间", 0, th); | ||
| 116 | + return false; | ||
| 117 | + } | ||
| 108 | var date_id = th.data.date_id; | 118 | var date_id = th.data.date_id; |
| 109 | var date = th.data.aweeks[date_id].time; | 119 | var date = th.data.aweeks[date_id].time; |
| 110 | - var time = date+" "+time_list[time_index]+":00"; | ||
| 111 | - // wx.navigateBack({ | ||
| 112 | - // url: th.data.url + '?' + 'seekTime=' + seekTime + '&' + "time=" + time | ||
| 113 | - // }); | ||
| 114 | - var pages = getCurrentPages(); //当前页面 | ||
| 115 | - | ||
| 116 | - var prevPage = pages[pages.length - 2]; //上一页面 | ||
| 117 | - | ||
| 118 | - prevPage.setData({ | ||
| 119 | - | ||
| 120 | - //直接给上一个页面赋值 | ||
| 121 | - time: time, | ||
| 122 | - | ||
| 123 | - }); | ||
| 124 | - | ||
| 125 | - wx.navigateBack({ | ||
| 126 | - | ||
| 127 | - //返回 | ||
| 128 | - delta: 1 | ||
| 129 | - | ||
| 130 | - }) | 120 | + var time = date + " " + time_list[time_index] + ":00"; |
| 121 | + if (modify == 1) { | ||
| 122 | + var json = { | ||
| 123 | + "arrangeTime": time, | ||
| 124 | + "number": th.data.number, | ||
| 125 | + "remark": "更改时间", | ||
| 126 | + "states": 0, | ||
| 127 | + "storeId": a.stoid | ||
| 128 | + }; | ||
| 129 | + var data = JSON.stringify(json); | ||
| 130 | + var url = th.data.inurl + "/api/weshop/marketing/reservation/reservation/update"; //预约接口地址 | ||
| 131 | + wx.request({ | ||
| 132 | + url: url, | ||
| 133 | + data: data, | ||
| 134 | + method: 'put', | ||
| 135 | + header: { | ||
| 136 | + 'content-type': 'application/json' | ||
| 137 | + }, // 设置请求的 header | ||
| 138 | + success: function(res) { | ||
| 139 | + if (res.data.code == 0) { | ||
| 140 | + getApp().my_warnning(res.data.msg, 0, th); | ||
| 141 | + wx.navigateBack({ | ||
| 142 | + //返回 | ||
| 143 | + delta: 1 | ||
| 144 | + }) | ||
| 145 | + } else { | ||
| 146 | + getApp().my_warnning(res.data.msg, 0, th); | ||
| 147 | + } | ||
| 148 | + } | ||
| 149 | + }) | ||
| 150 | + } else { | ||
| 151 | + var pages = getCurrentPages(); //当前页面 | ||
| 152 | + var iscos = th.data.iscos; | ||
| 153 | + var prevPage = pages[pages.length - 2 - iscos]; //上一页面 | ||
| 154 | + prevPage.setData({ | ||
| 155 | + //直接给上一个页面赋值 | ||
| 156 | + time: time, | ||
| 157 | + }); | ||
| 158 | + wx.navigateBack({ | ||
| 159 | + //返回 | ||
| 160 | + delta: 2 | ||
| 161 | + }) | ||
| 162 | + } | ||
| 131 | }, | 163 | }, |
| 132 | //选择时间 | 164 | //选择时间 |
| 133 | Selection_time: function(e) { | 165 | Selection_time: function(e) { |
pages/user/my_service/beauty_deta.wxml
| @@ -24,6 +24,7 @@ | @@ -24,6 +24,7 @@ | ||
| 24 | <view class="scroll-item-h bd {{index==date_id?'chbd':''}}" bindtap="check_date" data-dateid="{{index}}"> | 24 | <view class="scroll-item-h bd {{index==date_id?'chbd':''}}" bindtap="check_date" data-dateid="{{index}}"> |
| 25 | <view>{{item.time}}</view> | 25 | <view>{{item.time}}</view> |
| 26 | <view></view> | 26 | <view></view> |
| 27 | + <view wx:if="{{item.key.length<1}}">未排班</view> | ||
| 27 | </view> | 28 | </view> |
| 28 | <block wx:if="{{index==date_id}}"> | 29 | <block wx:if="{{index==date_id}}"> |
| 29 | <view class="abs box"></view> | 30 | <view class="abs box"></view> |
pages/user/my_service/cosmetology_list.wxml
| @@ -8,7 +8,7 @@ | @@ -8,7 +8,7 @@ | ||
| 8 | <!-- 个人属性 --> | 8 | <!-- 个人属性 --> |
| 9 | <view class="flex-vertical-between"> | 9 | <view class="flex-vertical-between"> |
| 10 | <view class="flex-vertical"> | 10 | <view class="flex-vertical"> |
| 11 | - <image class="portrait" src="{{iurl+item.PhotoUrl}}" lazy-load="true" data-errorimg="cosmetology_list[{{index}}].PhotoUrl" binderror="bind_bnerr1" data-img="{{item.PhotoUrl}}"></image> | 11 | + <image class="portrait" src="{{item.PhotoUrl}}" lazy-load="true" data-errorimg="cosmetology_list[{{index}}].PhotoUrl" binderror="bind_bnerr1" data-img="{{item.PhotoUrl}}"></image> |
| 12 | <view> | 12 | <view> |
| 13 | <!-- 用户名 --> | 13 | <!-- 用户名 --> |
| 14 | <view class="UserName ellipsis-1 fs32">{{item.StaffName}}</view> | 14 | <view class="UserName ellipsis-1 fs32">{{item.StaffName}}</view> |
| @@ -34,7 +34,7 @@ | @@ -34,7 +34,7 @@ | ||
| 34 | </view> | 34 | </view> |
| 35 | 35 | ||
| 36 | <!-- 预约状态 --> | 36 | <!-- 预约状态 --> |
| 37 | - <navigator class="flex-center gofu go" url="/pages/user/my_service/beauty_deta?BeauticianID={{item.Id}}&itemId={{item.Id}}"> | 37 | + <navigator class="flex-center gofu go" url="/pages/user/my_service/beauty_deta?BeauticianID={{item.Id}}&itemId={{itemId}}&iscos=1&modify=0"> |
| 38 | <view class="fs24">预约</view> | 38 | <view class="fs24">预约</view> |
| 39 | </navigator> | 39 | </navigator> |
| 40 | </view> | 40 | </view> |
pages/user/my_service/hist_service.js
| @@ -108,7 +108,7 @@ Page({ | @@ -108,7 +108,7 @@ Page({ | ||
| 108 | var th = this; | 108 | var th = this; |
| 109 | var startTime = th.data.startTime.substring(0, 10); //开始 | 109 | var startTime = th.data.startTime.substring(0, 10); //开始 |
| 110 | var endTime = th.data.endTime.substring(0, 10); //结束 | 110 | var endTime = th.data.endTime.substring(0, 10); //结束 |
| 111 | - var url = "/api/weshop/marketing/reservation/reservation/page"; | 111 | + var url = "/api/weshop/marketing/reservation/history/reservation/page"; |
| 112 | getApp().request.promiseGet(url, { | 112 | getApp().request.promiseGet(url, { |
| 113 | data: { | 113 | data: { |
| 114 | storeId: a.stoid, | 114 | storeId: a.stoid, |
pages/user/my_service/hist_service.wxml
| @@ -14,7 +14,6 @@ | @@ -14,7 +14,6 @@ | ||
| 14 | <view class="flex-center" bindtap='pickerShow'> | 14 | <view class="flex-center" bindtap='pickerShow'> |
| 15 | <view>筛选</view> | 15 | <view>筛选</view> |
| 16 | <view wx:if="{{true}}" class="box"></view> | 16 | <view wx:if="{{true}}" class="box"></view> |
| 17 | - <!-- <view bindtap='pickerShow' wx:else class="box"></view> --> | ||
| 18 | </view> | 17 | </view> |
| 19 | </view> | 18 | </view> |
| 20 | </view> | 19 | </view> |
| @@ -26,7 +25,7 @@ | @@ -26,7 +25,7 @@ | ||
| 26 | <!-- left --> | 25 | <!-- left --> |
| 27 | <view> | 26 | <view> |
| 28 | <view class="flex fs28"> | 27 | <view class="flex fs28"> |
| 29 | - <view class="itemName ellipsis-1">{{item.ProjectName==''?'匿名':item.ProjectName}}</view> | 28 | + <view class="itemName ellipsis-1">{{item.ServiceName==''?'匿名':item.ServiceName}}</view> |
| 30 | <view>(美容师:</view> | 29 | <view>(美容师:</view> |
| 31 | <view class="itemUsna ellipsis-1">{{item.BeauticianName}}</view> | 30 | <view class="itemUsna ellipsis-1">{{item.BeauticianName}}</view> |
| 32 | ) | 31 | ) |
pages/user/my_service/i_service.js
| @@ -77,11 +77,14 @@ Page({ | @@ -77,11 +77,14 @@ Page({ | ||
| 77 | var ismore = 0; | 77 | var ismore = 0; |
| 78 | if (arr3.length == res.data.data.total) ismore = 1 | 78 | if (arr3.length == res.data.data.total) ismore = 1 |
| 79 | th.setData({ | 79 | th.setData({ |
| 80 | - service_List: arr3, | ||
| 81 | - total: res.data.data.total, | ||
| 82 | - ismore: ismore, | ||
| 83 | - is_service_read: 1, | ||
| 84 | - }), wx.stopPullDownRefresh(); //停止下拉刷新 | 80 | + service_List: arr3, |
| 81 | + total: res.data.data.total, | ||
| 82 | + ismore: ismore, | ||
| 83 | + is_service_read: 1, | ||
| 84 | + }), | ||
| 85 | + console.log("顶顶顶顶顶" + res.data.data.pageData.length); | ||
| 86 | + console.log("呃呃呃呃" + th.data.service_List.length); | ||
| 87 | + wx.stopPullDownRefresh(); //停止下拉刷新 | ||
| 85 | } else { | 88 | } else { |
| 86 | getApp().my_warnning(res.data.msg, 0, th); | 89 | getApp().my_warnning(res.data.msg, 0, th); |
| 87 | } | 90 | } |
| @@ -92,7 +95,7 @@ Page({ | @@ -92,7 +95,7 @@ Page({ | ||
| 92 | var th = this; | 95 | var th = this; |
| 93 | var ind = e.currentTarget.dataset.ind; | 96 | var ind = e.currentTarget.dataset.ind; |
| 94 | var item = this.data.service_List[ind]; | 97 | var item = this.data.service_List[ind]; |
| 95 | - var ewm = "^" + th.data.userinfo.erpvipid + "|" + item.ID + "|" + item.BuyType + "|" + item.Validay + "|TY01|"; | 98 | + var ewm = th.data.userinfo.erpvipid + "|" + item.ProjectID + "|" + item.BuyType + "|TY01|"; |
| 96 | var tt = th.format_time(1); | 99 | var tt = th.format_time(1); |
| 97 | ewm = ewm + tt; | 100 | ewm = ewm + tt; |
| 98 | th.data.qr_code_object.val = ewm; | 101 | th.data.qr_code_object.val = ewm; |
pages/user/my_service/i_service.wxml
| @@ -8,7 +8,7 @@ | @@ -8,7 +8,7 @@ | ||
| 8 | <!-- 项目框架 --> | 8 | <!-- 项目框架 --> |
| 9 | <view class="Serviceitems"> | 9 | <view class="Serviceitems"> |
| 10 | <!-- 单个项目 --> | 10 | <!-- 单个项目 --> |
| 11 | - <view class="rel" wx:for="{{service_List}}" wx:if="{{item.State>0}}"> | 11 | + <view class="rel" wx:for="{{service_List}}"> |
| 12 | <view class="abs"> | 12 | <view class="abs"> |
| 13 | <!-- 皇冠log --> | 13 | <!-- 皇冠log --> |
| 14 | <block wx:if="{{item.BuyType==4}}"> | 14 | <block wx:if="{{item.BuyType==4}}"> |
| @@ -49,7 +49,7 @@ | @@ -49,7 +49,7 @@ | ||
| 49 | <view>立即使用</view> | 49 | <view>立即使用</view> |
| 50 | </view> | 50 | </view> |
| 51 | <!-- 可预约 --> | 51 | <!-- 可预约 --> |
| 52 | - <navigator class="flex-level appointment yellow-b" url="/pages/user/my_service/appment_main?service_id={{item.ServiceID}}&BuyType={{item.BuyType}}&ProjectID={{item.ProjectID}}"> | 52 | + <navigator wx:if="{{item.State>0}}" class="flex-level appointment yellow-b" url="/pages/user/my_service/appment_main?service_id={{item.ServiceID}}&BuyType={{item.BuyType}}&ProjectID={{item.ProjectID}}"> |
| 53 | <view>预约</view> | 53 | <view>预约</view> |
| 54 | </navigator> | 54 | </navigator> |
| 55 | </view> | 55 | </view> |
pages/user/my_service/tment_details.js
| @@ -9,11 +9,55 @@ Page({ | @@ -9,11 +9,55 @@ Page({ | ||
| 9 | * 页面的初始数据 | 9 | * 页面的初始数据 |
| 10 | */ | 10 | */ |
| 11 | data: { | 11 | data: { |
| 12 | + url:a.url, | ||
| 12 | iurl: a.imghost, | 13 | iurl: a.imghost, |
| 13 | tment_details: [], //预约详情 | 14 | tment_details: [], //预约详情 |
| 14 | number:"",//订单号 | 15 | number:"",//订单号 |
| 15 | arrangeTime:"",//预约年月日 | 16 | arrangeTime:"",//预约年月日 |
| 16 | day:"",//判断是上午还是下午 | 17 | day:"",//判断是上午还是下午 |
| 18 | + states:3,//3为取消预约 | ||
| 19 | + }, | ||
| 20 | + //取消预约 | ||
| 21 | + cancel_tment: function (e) { | ||
| 22 | + var th = this; | ||
| 23 | + var index = e.currentTarget.dataset.index; | ||
| 24 | + var states = th.data.states; | ||
| 25 | + var tment_details = th.data.tment_details; | ||
| 26 | + var number = th.data.number; | ||
| 27 | + var json = { | ||
| 28 | + "number": number, | ||
| 29 | + "storeId": a.stoid, | ||
| 30 | + "states": states | ||
| 31 | + }; | ||
| 32 | + var data = JSON.stringify(json); | ||
| 33 | + var url = th.data.url + "/api/weshop/marketing/reservation/reservation/update"; //预约接口地址 | ||
| 34 | + wx.request({ | ||
| 35 | + url: url, | ||
| 36 | + data: data, | ||
| 37 | + method: 'put', | ||
| 38 | + header: { | ||
| 39 | + 'content-type': 'application/json' | ||
| 40 | + }, // 设置请求的 header | ||
| 41 | + success: function (res) { | ||
| 42 | + if (res.data.code == 0) { | ||
| 43 | + getApp().my_warnning("取消成功", 0, th); | ||
| 44 | + var id = th.data.activeCategoryId; | ||
| 45 | + if (id == 1) { | ||
| 46 | + tment_details.splice(index, 1); | ||
| 47 | + th.setData({ | ||
| 48 | + tment_details: tment_details | ||
| 49 | + }) | ||
| 50 | + } else { | ||
| 51 | + var start = 'tment_details[' + index + '].State'; | ||
| 52 | + th.setData({ | ||
| 53 | + [start]: 3 | ||
| 54 | + }) | ||
| 55 | + } | ||
| 56 | + } else { | ||
| 57 | + getApp().my_warnning(res.data.msg, 0, th); | ||
| 58 | + } | ||
| 59 | + } | ||
| 60 | + }) | ||
| 17 | 61 | ||
| 18 | }, | 62 | }, |
| 19 | 63 | ||
| @@ -29,6 +73,9 @@ Page({ | @@ -29,6 +73,9 @@ Page({ | ||
| 29 | }, | 73 | }, |
| 30 | //查询美容师详情 | 74 | //查询美容师详情 |
| 31 | query_bea: function() { | 75 | query_bea: function() { |
| 76 | + wx.showLoading({ | ||
| 77 | + title: '加载中', | ||
| 78 | + }) | ||
| 32 | var th = this; | 79 | var th = this; |
| 33 | var number = th.data.number; | 80 | var number = th.data.number; |
| 34 | var url = "/api/weshop/marketing/reservation/reservation/page"; | 81 | var url = "/api/weshop/marketing/reservation/reservation/page"; |
| @@ -39,6 +86,7 @@ Page({ | @@ -39,6 +86,7 @@ Page({ | ||
| 39 | number: number | 86 | number: number |
| 40 | } | 87 | } |
| 41 | }).then(res => { | 88 | }).then(res => { |
| 89 | + wx.hideLoading(); | ||
| 42 | if (res.data.code == 0) { | 90 | if (res.data.code == 0) { |
| 43 | var data = res.data.data.pageData; | 91 | var data = res.data.data.pageData; |
| 44 | var arrangeTime = data[0].ArrangeTime.substring(0,11); | 92 | var arrangeTime = data[0].ArrangeTime.substring(0,11); |
| @@ -59,6 +107,18 @@ Page({ | @@ -59,6 +107,18 @@ Page({ | ||
| 59 | } | 107 | } |
| 60 | }) | 108 | }) |
| 61 | }, | 109 | }, |
| 110 | + //显示核销码 | ||
| 111 | + code_show: function (e) { | ||
| 112 | + var th = this; | ||
| 113 | + //--获取成功的时候-- | ||
| 114 | + var no = e.currentTarget.dataset.order_sn; | ||
| 115 | + var qc_com = th.selectComponent("#qc_com"); //组件的id | ||
| 116 | + var obj = { | ||
| 117 | + val: no, | ||
| 118 | + content: "请将二维码展示给核销员,使用更快捷" | ||
| 119 | + }; | ||
| 120 | + qc_com.open(obj) | ||
| 121 | + }, | ||
| 62 | //跳到首页 | 122 | //跳到首页 |
| 63 | goto: function (e) { | 123 | goto: function (e) { |
| 64 | wx.switchTab({ | 124 | wx.switchTab({ |
pages/user/my_service/tment_details.json
| 1 | { | 1 | { |
| 2 | "navigationBarTitleText": "预约详情", | 2 | "navigationBarTitleText": "预约详情", |
| 3 | - "usingComponents": { | ||
| 4 | - "warn": "/components/long_warn/long_warn" | ||
| 5 | - } | 3 | + "usingComponents": { |
| 4 | + "qr_code": "/components/qr_code/qr_code", | ||
| 5 | + "warn": "/components/long_warn/long_warn" | ||
| 6 | + } | ||
| 6 | } | 7 | } |
| 7 | \ No newline at end of file | 8 | \ No newline at end of file |
pages/user/my_service/tment_details.wxml
| @@ -8,9 +8,19 @@ | @@ -8,9 +8,19 @@ | ||
| 8 | <view wx:if="{{item.State==1}}">已服务</view> | 8 | <view wx:if="{{item.State==1}}">已服务</view> |
| 9 | <view wx:if="{{item.State==2}}">已过期</view> | 9 | <view wx:if="{{item.State==2}}">已过期</view> |
| 10 | <view wx:if="{{item.State==3}}">已取消</view> | 10 | <view wx:if="{{item.State==3}}">已取消</view> |
| 11 | + <view wx:if="{{item.State==4}}">已评价</view> | ||
| 11 | </view> | 12 | </view> |
| 12 | <view class="fs30"> | 13 | <view class="fs30"> |
| 13 | <view class="items lf"> | 14 | <view class="items lf"> |
| 15 | + <!-- 预约订单 --> | ||
| 16 | + <view class="flex-vertical bmt"> | ||
| 17 | + <view class="flex-vertical"> | ||
| 18 | + <view class="name">预约订单:</view> | ||
| 19 | + <view class="ellipsis-1 value">{{number}}</view> | ||
| 20 | + </view> | ||
| 21 | + <image wx:if="{{item.State==0}}" src="{{iurl}}miniapp/images/order/code.png" class="code" bindtap="code_show" data-order_sn="{{number}}"></image> | ||
| 22 | + </view> | ||
| 23 | + | ||
| 14 | <!-- 预约门店 --> | 24 | <!-- 预约门店 --> |
| 15 | <view class="flex-vertical bmt"> | 25 | <view class="flex-vertical bmt"> |
| 16 | <view class="name">预约门店:</view> | 26 | <view class="name">预约门店:</view> |
| @@ -20,7 +30,7 @@ | @@ -20,7 +30,7 @@ | ||
| 20 | <!-- 预约项目 --> | 30 | <!-- 预约项目 --> |
| 21 | <view class="flex-vertical bmt"> | 31 | <view class="flex-vertical bmt"> |
| 22 | <view class="name">预约项目:</view> | 32 | <view class="name">预约项目:</view> |
| 23 | - <view class="ellipsis-1 value">{{item.StorageName}}</view> | 33 | + <view class="ellipsis-1 value">{{item.ServiceName}}</view> |
| 24 | </view> | 34 | </view> |
| 25 | 35 | ||
| 26 | <!-- 预约时间 --> | 36 | <!-- 预约时间 --> |
| @@ -82,26 +92,28 @@ | @@ -82,26 +92,28 @@ | ||
| 82 | <!-- submit栏 --> | 92 | <!-- submit栏 --> |
| 83 | <view class="subs flex-vertical-between fs32"> | 93 | <view class="subs flex-vertical-between fs32"> |
| 84 | <!-- 左边栏 --> | 94 | <!-- 左边栏 --> |
| 85 | - <view class="sub flex-center yellow-b" wx:if="{{item.States==1}}"> | ||
| 86 | - <view class="yellow-b" wx:if="{{item.States==1}}">取消预约</view> | 95 | + <view class="sub flex-center yellow-b" wx:if="{{item.State==0}}"> |
| 96 | + <view class="yellow-b" data-index="{{index}}" bindtap="cancel_tment">取消预约</view> | ||
| 87 | </view> | 97 | </view> |
| 88 | - <navigator wx:if="{{item.States!=1}}" class="sub flex-center yellow-b" url="/pages/user/my_service/tment_order_list"> | 98 | + <navigator wx:if="{{item.State>0}}" class="sub flex-center yellow-b" url="/pages/user/my_service/tment_order_list"> |
| 89 | <view class="yellow-b">我的服务</view> | 99 | <view class="yellow-b">我的服务</view> |
| 90 | </navigator> | 100 | </navigator> |
| 91 | <!-- 右边栏 --> | 101 | <!-- 右边栏 --> |
| 92 | - <navigator wx:if="{{item.States==0}}" class="sub rb flex-center" url="/pages/user/my_service/beauty_deta"> | 102 | + <navigator wx:if="{{item.State==0}}" class="sub rb flex-center" url="/pages/user/my_service/beauty_deta?BeauticianID={{item.BeauticianID}}&number={{item.Number}}&itemId={{item.ServiceID}}&modify=1"> |
| 93 | <view>更改时间</view> | 103 | <view>更改时间</view> |
| 94 | </navigator> | 104 | </navigator> |
| 95 | - <navigator wx:if="{{item.States==1}}" class="sub rb flex-center" url="/pages/user/my_service/tment_eval"> | 105 | + <navigator wx:if="{{item.State==1}}" class="sub rb flex-center" url="/pages/user/my_service/tment_eval?Number={{item.Number}}"> |
| 96 | <view>发表评价</view> | 106 | <view>发表评价</view> |
| 97 | </navigator> | 107 | </navigator> |
| 98 | - <navigator wx:if="{{item.States==2}}" class="sub rb flex-center" url="/pages/user/my_service/appment_main"> | 108 | + <navigator wx:if="{{item.State==2 || item.State==3}}" class="sub rb flex-center" url="/pages/user/my_service/appment_main?ProjectID={{item.ProjectID}}&BuyType={{item.BuyType}}&service_id={{item.ServiceID}}"> |
| 99 | <view>重新预约</view> | 109 | <view>重新预约</view> |
| 100 | </navigator> | 110 | </navigator> |
| 101 | - <navigator wx:if="{{item.States==3}}" class="sub rb flex-center" bindtap="goto"> | 111 | + <navigator wx:if="{{item.State==4}}" class="sub rb flex-center" bindtap="goto"> |
| 102 | <view>回到首页</view> | 112 | <view>回到首页</view> |
| 103 | </navigator> | 113 | </navigator> |
| 104 | 114 | ||
| 105 | </view> | 115 | </view> |
| 106 | </view> | 116 | </view> |
| 117 | +<!-- 弹出框扫描 --> | ||
| 118 | +<qr_code id="qc_com"></qr_code> | ||
| 107 | <warn id="warn"></warn> | 119 | <warn id="warn"></warn> |
| 108 | \ No newline at end of file | 120 | \ No newline at end of file |
pages/user/my_service/tment_details.wxss
| @@ -28,7 +28,7 @@ page { | @@ -28,7 +28,7 @@ page { | ||
| 28 | } | 28 | } |
| 29 | 29 | ||
| 30 | .value { | 30 | .value { |
| 31 | - max-width: 450rpx; | 31 | + max-width: 400rpx; |
| 32 | } | 32 | } |
| 33 | 33 | ||
| 34 | /* 公用 */ | 34 | /* 公用 */ |
| @@ -86,7 +86,11 @@ page { | @@ -86,7 +86,11 @@ page { | ||
| 86 | border-radius: 30rpx; | 86 | border-radius: 30rpx; |
| 87 | color: rgb(255, 255, 255); | 87 | color: rgb(255, 255, 255); |
| 88 | } | 88 | } |
| 89 | - | 89 | +.code{ |
| 90 | + margin-left: 10rpx; | ||
| 91 | + width: 50rpx; | ||
| 92 | + height: 50rpx; | ||
| 93 | +} | ||
| 90 | .rb { | 94 | .rb { |
| 91 | background-color: rgb(214, 1, 33); | 95 | background-color: rgb(214, 1, 33); |
| 92 | } | 96 | } |
pages/user/my_service/tment_eval.json
| 1 | { | 1 | { |
| 2 | "navigationBarTitleText": "预约评价", | 2 | "navigationBarTitleText": "预约评价", |
| 3 | "usingComponents": { | 3 | "usingComponents": { |
| 4 | + "qr_code": "/components/qr_code/qr_code", | ||
| 4 | "warn": "/components/long_warn/long_warn" | 5 | "warn": "/components/long_warn/long_warn" |
| 5 | } | 6 | } |
| 6 | } | 7 | } |
| 7 | \ No newline at end of file | 8 | \ No newline at end of file |
pages/user/my_service/tment_order_list.js
| @@ -81,6 +81,9 @@ Page({ | @@ -81,6 +81,9 @@ Page({ | ||
| 81 | } else { | 81 | } else { |
| 82 | --state_index; | 82 | --state_index; |
| 83 | } | 83 | } |
| 84 | + wx.showLoading({ | ||
| 85 | + title: '加载中', | ||
| 86 | + }) | ||
| 84 | getApp().request.promiseGet(url, { | 87 | getApp().request.promiseGet(url, { |
| 85 | data: { | 88 | data: { |
| 86 | storeId: a.stoid, | 89 | storeId: a.stoid, |
| @@ -103,7 +106,7 @@ Page({ | @@ -103,7 +106,7 @@ Page({ | ||
| 103 | tm_order_list: arr3, | 106 | tm_order_list: arr3, |
| 104 | total: res.data.data.total, | 107 | total: res.data.data.total, |
| 105 | ismore: ismore, | 108 | ismore: ismore, |
| 106 | - is_read:1 | 109 | + is_read: 1 |
| 107 | }), wx.stopPullDownRefresh(); //停止下拉刷新 { | 110 | }), wx.stopPullDownRefresh(); //停止下拉刷新 { |
| 108 | } else { | 111 | } else { |
| 109 | th.setData({ | 112 | th.setData({ |
| @@ -172,7 +175,11 @@ Page({ | @@ -172,7 +175,11 @@ Page({ | ||
| 172 | * 生命周期函数--监听页面显示 | 175 | * 生命周期函数--监听页面显示 |
| 173 | */ | 176 | */ |
| 174 | onShow: function() { | 177 | onShow: function() { |
| 175 | - | 178 | + var th = this; |
| 179 | + th.setData({ | ||
| 180 | + is_read: 0 | ||
| 181 | + }) | ||
| 182 | + th.query_orderList(); | ||
| 176 | }, | 183 | }, |
| 177 | 184 | ||
| 178 | /** | 185 | /** |
pages/user/my_service/tment_order_list.wxml
| @@ -23,7 +23,7 @@ | @@ -23,7 +23,7 @@ | ||
| 23 | </view> | 23 | </view> |
| 24 | 24 | ||
| 25 | <!-- 项目属性 --> | 25 | <!-- 项目属性 --> |
| 26 | - <navigator class="items padding flex-vertical" url="/pages/user/my_service/tment_details"> | 26 | + <navigator class="items padding flex-vertical" url="/pages/user/my_service/tment_details?number={{item.Number}}"> |
| 27 | 27 | ||
| 28 | <view class="flex-center fs26"> | 28 | <view class="flex-center fs26"> |
| 29 | <view class="itemimage"> | 29 | <view class="itemimage"> |
| @@ -33,11 +33,11 @@ | @@ -33,11 +33,11 @@ | ||
| 33 | <view class="details"> | 33 | <view class="details"> |
| 34 | <view class="item flex-vertical"> | 34 | <view class="item flex-vertical"> |
| 35 | <view class="itemname">预约门店:</view> | 35 | <view class="itemname">预约门店:</view> |
| 36 | - <view class="itemvalue ellipsis-1">{{item.StorageName}}</view> | 36 | + <view class="itemvalue ellipsis-1">{{item.ServiceName}}</view> |
| 37 | </view> | 37 | </view> |
| 38 | <view class="item flex-vertical"> | 38 | <view class="item flex-vertical"> |
| 39 | <view class="itemname">预约项目:</view> | 39 | <view class="itemname">预约项目:</view> |
| 40 | - <view class="itemvalue ellipsis-1">{{item.ProjectName}}</view> | 40 | + <view class="itemvalue ellipsis-1">{{item.StorageName}}</view> |
| 41 | </view> | 41 | </view> |
| 42 | <view class="item flex-vertical"> | 42 | <view class="item flex-vertical"> |
| 43 | <view class="itemname">美容师:</view> | 43 | <view class="itemname">美容师:</view> |
| @@ -45,11 +45,11 @@ | @@ -45,11 +45,11 @@ | ||
| 45 | </view> | 45 | </view> |
| 46 | <view class="item flex-vertical"> | 46 | <view class="item flex-vertical"> |
| 47 | <view class="itemname">预约时间:</view> | 47 | <view class="itemname">预约时间:</view> |
| 48 | - <view>{{item.BillDate}}</view> | 48 | + <view>{{item.ArrangeTime}}</view> |
| 49 | </view> | 49 | </view> |
| 50 | - <view class="item flex-vertical" wx:if="{{item.ArrangeTime==''?false:true}}"> | 50 | + <view class="item flex-vertical" wx:if="{{item.WriteTime==''?false:true}}"> |
| 51 | <view class="itemname">服务时间:</view> | 51 | <view class="itemname">服务时间:</view> |
| 52 | - <view>{{item.ArrangeTime}}</view> | 52 | + <view>{{item.WriteTime}}</view> |
| 53 | </view> | 53 | </view> |
| 54 | </view> | 54 | </view> |
| 55 | 55 | ||
| @@ -63,7 +63,7 @@ | @@ -63,7 +63,7 @@ | ||
| 63 | <block wx:else> | 63 | <block wx:else> |
| 64 | <navigator url="/pages/user/my_service/tment_details?number={{item.Number}}" class="Unimportance flex-level">查看详情</navigator> | 64 | <navigator url="/pages/user/my_service/tment_details?number={{item.Number}}" class="Unimportance flex-level">查看详情</navigator> |
| 65 | </block> | 65 | </block> |
| 66 | - <navigator wx:if="{{item.State==0}}" class="important Unimportance flex-level" url="/pages/user/my_service/beauty_deta?BeauticianID={{item.BeauticianID}}&service_id={{item.ServiceID}}&number={{item.Number}}">更改时间</navigator> | 66 | + <navigator wx:if="{{item.State==0}}" class="important Unimportance flex-level" url="/pages/user/my_service/beauty_deta?BeauticianID={{item.BeauticianID}}&number={{item.Number}}&itemId={{item.ServiceID}}&modify=1">更改时间</navigator> |
| 67 | <navigator wx:if="{{item.State==1}}" url="/pages/user/my_service/tment_eval?Number={{item.Number}}" class="important Unimportance flex-level">发表评价</navigator> | 67 | <navigator wx:if="{{item.State==1}}" url="/pages/user/my_service/tment_eval?Number={{item.Number}}" class="important Unimportance flex-level">发表评价</navigator> |
| 68 | <navigator wx:if="{{item.State==2 || item.State==3 || item.State==4}}" url="/pages/user/my_service/appment_main?ProjectID={{item.ProjectID}}&BuyType={{item.BuyType}}&service_id={{item.ServiceID}}" class="important Unimportance flex-level">重新预约</navigator> | 68 | <navigator wx:if="{{item.State==2 || item.State==3 || item.State==4}}" url="/pages/user/my_service/appment_main?ProjectID={{item.ProjectID}}&BuyType={{item.BuyType}}&service_id={{item.ServiceID}}" class="important Unimportance flex-level">重新预约</navigator> |
| 69 | </view> | 69 | </view> |