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> |