Commit da1876a7b79f30130566180ded54becf95e70464
1 parent
061511a0
提交评价接口提交属性名修改,服务项目预约判断,历史服务bug修复,新增导航组件
Showing
25 changed files
with
379 additions
and
113 deletions
components/my_confirm/my_confirm.js
... | ... | @@ -2,30 +2,43 @@ var t = getApp(); |
2 | 2 | Component({ |
3 | 3 | /*** 页面的初始数据***/ |
4 | 4 | data: { |
5 | - yu_e_show:0, | |
6 | - iurl:t.globalData.setting.imghost, | |
7 | - width:0, | |
8 | - success:null, //成功的回调 | |
9 | - cancle: null, //取消的回调 | |
10 | - title: null, //标题 | |
11 | - s_text:null, //确定的提示语 | |
12 | - c_text:null, //取消的提示语 | |
5 | + yu_e_show: 0, | |
6 | + iurl: t.globalData.setting.imghost, | |
7 | + width: 0, | |
8 | + success: null, //成功的回调 | |
9 | + cancle: null, //取消的回调 | |
10 | + title: null, //标题 | |
11 | + s_text: null, //确定的提示语 | |
12 | + c_text: null, //取消的提示语 | |
13 | 13 | }, |
14 | 14 | |
15 | 15 | methods: { |
16 | - open: function (title,s_text,c_text,success,cancle) { | |
17 | - this.setData({ title: title, s_text: s_text, c_text:c_text, yu_e_show: 1}) | |
18 | - this.data.success=success;this.data.cancle=cancle; | |
19 | - }, | |
20 | - go_sure:function(){ | |
21 | - this.data.success(); | |
22 | - }, | |
23 | - go_cancle: function () { | |
24 | - this.data.cancle(); | |
25 | - }, | |
26 | - close_yu_e:function(){ | |
27 | - this.setData({ yu_e_show: 0 }) | |
28 | - } | |
16 | + open: function(title, s_text, c_text, success, cancle) { | |
17 | + this.setData({ | |
18 | + title: title, | |
19 | + s_text: s_text, | |
20 | + c_text: c_text, | |
21 | + yu_e_show: 1 | |
22 | + }) | |
23 | + this.data.success = success; | |
24 | + this.data.cancle = cancle; | |
25 | + }, | |
26 | + open_cancel: function (yu_e_show){ | |
27 | + this.setData({ | |
28 | + yu_e_show: yu_e_show | |
29 | + }) | |
30 | + }, | |
31 | + go_sure: function() { | |
32 | + this.data.success(); | |
33 | + }, | |
34 | + go_cancle: function() { | |
35 | + this.data.cancle(); | |
36 | + }, | |
37 | + close_yu_e: function() { | |
38 | + this.setData({ | |
39 | + yu_e_show: 0 | |
40 | + }) | |
41 | + } | |
29 | 42 | } |
30 | - | |
43 | + | |
31 | 44 | }) |
32 | 45 | \ No newline at end of file | ... | ... |
components/my_confirm/my_confirm.wxml
... | ... | @@ -6,7 +6,7 @@ |
6 | 6 | <view class="shut" bindtap="close_yu_e">ⅹ</view> |
7 | 7 | <view class="fs32 xc-black3 flex jc-center ai-center" style="width:100%;height:220rpx;">{{title}}</view> |
8 | 8 | <view class="flex jc-center ai_center" style="width: 100%;height: 75rpx;"> |
9 | - <view bindtap="go_sure" class="fs30 white flex jc-center ai-center ck_btn" style="margin-right: 20rpx;">{{s_text}}</view> | |
9 | + <view bindtap="go_sure" class="fs30 white flex jc-center ai-center ck_btn color color" style="margin-right: 20rpx;">{{s_text}}</view> | |
10 | 10 | <view bindtap='go_cancle' class="fs30 xc-ash flex jc-center ai-center ck_btn"style="background:#ececea;">{{c_text}}</view> |
11 | 11 | </view> |
12 | 12 | </view> | ... | ... |
components/my_confirm/my_confirm.wxss
... | ... | @@ -60,4 +60,7 @@ |
60 | 60 | } |
61 | 61 | .flex {display: flex;} |
62 | 62 | .jc-center{ justify-content: center;} |
63 | -.ai-center{align-items: center;} | |
64 | 63 | \ No newline at end of file |
64 | +.ai-center{align-items: center;} | |
65 | +.color{ | |
66 | + color: rgb(255,255,255); | |
67 | +} | |
65 | 68 | \ No newline at end of file | ... | ... |
components/nav_b/nav_b.js
0 → 100644
1 | +var t = getApp(), os = t.globalData.setting; | |
2 | +Component({ | |
3 | + properties: { | |
4 | + }, | |
5 | + data: { | |
6 | + isopen: 0, | |
7 | + iurl: os.imghost, | |
8 | + nav_left:"首页",//导航左边 | |
9 | + nav_center:"预约",//导航中间 | |
10 | + nav_right: "我的",//导航右边 | |
11 | + nav_left_url: "/pages/index/index/index",//导航左边地址 | |
12 | + nav_center_url:"/pages/user/my_service/tment_order_list",//导航中间地址 | |
13 | + nav_right_url:"/pages/user/index/index",//导航右边地址 | |
14 | + }, | |
15 | + | |
16 | + ready: function () { | |
17 | + }, | |
18 | + methods: { | |
19 | + //--点击打开事件-- | |
20 | + open_box: function () { | |
21 | + this.setData({ isopen: 1 }); | |
22 | + }, | |
23 | + //--关闭事件-- | |
24 | + close_box: function () { | |
25 | + this.setData({ isopen: 0 }); | |
26 | + }, | |
27 | + //--跳转-- | |
28 | + goto: function (e) { | |
29 | + var url = e.currentTarget.dataset.url; | |
30 | + getApp().goto(url); | |
31 | + } | |
32 | + | |
33 | + } | |
34 | + | |
35 | +}) | |
0 | 36 | \ No newline at end of file | ... | ... |
components/nav_b/nav_b.json
0 → 100644
components/nav_b/nav_b.wxml
0 → 100644
1 | + | |
2 | +<view class="box_main {{isopen==1?'box_isopen':''}}" > | |
3 | + <view class="dian" bindtap="open_box"> | |
4 | + <image src="{{iurl}}/miniapp/images/sheng_lue.png" ></image> | |
5 | + </view> | |
6 | + <view class="cl_list"> | |
7 | + <view class="item" data-url="{{nav_left_url}}" bindtap="goto">{{nav_left}}</view> | |
8 | + <view class="item" data-url="{{nav_center_url}}" bindtap="goto">{{nav_center}}</view> | |
9 | + <view class="item" data-url="{{nav_right_url}}" bindtap="goto">{{nav_right}}</view> | |
10 | + <view class="item big" bindtap="close_box">×</view> | |
11 | + </view> | |
12 | +</view> | |
13 | + | ... | ... |
components/nav_b/nav_b.wxss
0 → 100644
1 | +.box_main{ | |
2 | + width:80rpx; | |
3 | + height:80rpx; | |
4 | + background:#272636; | |
5 | + transition:width 0.8s; | |
6 | + -moz-transition:width 0.8s; /* Firefox 4 */ | |
7 | + -webkit-transition:width 0.8s; /* Safari and Chrome */ | |
8 | + -o-transition:width 0.8s; /* Opera */ | |
9 | + border-radius:50rpx ; | |
10 | + position: fixed; | |
11 | + right: 10rpx; | |
12 | + bottom:300rpx; | |
13 | + overflow: hidden; | |
14 | + z-index: 111; | |
15 | +} | |
16 | + | |
17 | +.box_isopen{ | |
18 | + width: 420rpx; | |
19 | +} | |
20 | + | |
21 | +.box_main .dian{ | |
22 | + text-align: center; | |
23 | +width: 50rpx; | |
24 | +height: 50rpx; | |
25 | +color: #ffff; | |
26 | +font-size: 50rpx; | |
27 | +background: none; | |
28 | + | |
29 | +} | |
30 | + | |
31 | +.box_main .dian image{ | |
32 | + width: 60rpx; | |
33 | +height: 20rpx; | |
34 | +margin: 30rpx 0 0 10rpx; | |
35 | +} | |
36 | + | |
37 | +.box_main.box_isopen .dian{ | |
38 | + display: none; | |
39 | +} | |
40 | + | |
41 | +.box_main .cl_list{ | |
42 | + display: none; | |
43 | +} | |
44 | + | |
45 | +.box_main.box_isopen .cl_list{ | |
46 | + display: block; | |
47 | + margin-left: 20rpx; | |
48 | +} | |
49 | + | |
50 | +.box_main .cl_list .item{ | |
51 | + display: inline-block; | |
52 | + width:100rpx; | |
53 | + height:80rpx; | |
54 | + text-align: center; | |
55 | + line-height: 80rpx; | |
56 | + color: #fff; | |
57 | + vertical-align: top; | |
58 | + font-size: 32rpx; | |
59 | + | |
60 | +} | |
61 | + | |
62 | +.box_main .cl_list .item.big{ | |
63 | + font-size: 70rpx; | |
64 | +line-height: 70rpx; | |
65 | + | |
66 | +} | |
67 | + | ... | ... |
pages/user/my_service/appment_main.js
... | ... | @@ -469,5 +469,27 @@ Page({ |
469 | 469 | if (seekTime != "") { |
470 | 470 | th.query_more(); |
471 | 471 | } |
472 | + th.query_project(); | |
473 | + }, | |
474 | + //获取单个服务项目信息 | |
475 | + query_project:function(){ | |
476 | + var th = this; | |
477 | + var url = "/api/weshop/marketing/reservation/sm/page";//获取服务项目接口 | |
478 | + var project_id = th.data.project_id;//服务项目id | |
479 | + getApp().request.promiseGet(url,{ | |
480 | + data:{ | |
481 | + storeId:a.stoid, | |
482 | + userId:d.user_id, | |
483 | + projectId: project_id | |
484 | + } | |
485 | + }).then(res=>{ | |
486 | + if(res.data.code==0){ | |
487 | + th.setData({ | |
488 | + validay: res.data.data.pageData[0].Validay | |
489 | + }) | |
490 | + }else{ | |
491 | + getApp().my_warnning(res.data.msg,0,th); | |
492 | + } | |
493 | + }) | |
472 | 494 | } |
473 | 495 | }) |
474 | 496 | \ No newline at end of file | ... | ... |
pages/user/my_service/appment_main.wxss
... | ... | @@ -125,11 +125,14 @@ button { |
125 | 125 | width: 407rpx; |
126 | 126 | z-index: 3; |
127 | 127 | top: 45rpx; |
128 | - left: 0rpx; | |
128 | + left: -1rpx; | |
129 | 129 | padding: 0rpx 5rpx; |
130 | 130 | border: 2rpx solid rgb(238, 238, 238); |
131 | 131 | background-color: rgb(255, 255, 255); |
132 | 132 | padding-bottom: 5rpx; |
133 | + height: 279rpx; | |
134 | + overflow-x: scroll; | |
135 | + overflow-y: scroll; | |
133 | 136 | } |
134 | 137 | |
135 | 138 | .beautician { | ... | ... |
pages/user/my_service/beauty_deta.js
... | ... | @@ -37,11 +37,14 @@ Page({ |
37 | 37 | */ |
38 | 38 | onLoad: function(options) { |
39 | 39 | var th = this; |
40 | + var myDate = new Date(); | |
41 | + var date = myDate.getHours() + ":00"; //获取当前小时数(0-23) | |
40 | 42 | var beautician_id = options.BeauticianID; |
41 | 43 | th.setData({ |
42 | 44 | beautician_id: beautician_id, |
43 | 45 | itemId: options.itemId, |
44 | 46 | modify: options.modify, |
47 | + hours: date, | |
45 | 48 | projectId: options.projectId |
46 | 49 | }) |
47 | 50 | if (options.url != undefined) { |
... | ... | @@ -66,13 +69,7 @@ Page({ |
66 | 69 | * 生命周期函数--监听页面显示 |
67 | 70 | */ |
68 | 71 | onShow: function() { |
69 | - var th = this; | |
70 | - var myDate = new Date(); | |
71 | - var date = myDate.getHours() + ":00"; //获取当前小时数(0-23) | |
72 | - th.setData({ | |
73 | - hours:date | |
74 | - }) | |
75 | - th.query_date(); | |
72 | + | |
76 | 73 | }, |
77 | 74 | |
78 | 75 | //图片失败,默认图片 |
... | ... | @@ -251,9 +248,8 @@ Page({ |
251 | 248 | aweeks: arr, |
252 | 249 | weeks: weeks |
253 | 250 | }) |
254 | - if (data.length > 0) { | |
255 | - th.query_date(); | |
256 | - } | |
251 | + th.query_date(); | |
252 | + | |
257 | 253 | } else { |
258 | 254 | getApp().my_warnning(res.data.msg, 0, th); |
259 | 255 | } |
... | ... | @@ -267,7 +263,7 @@ Page({ |
267 | 263 | var date_id = th.data.date_id; //日期下标 |
268 | 264 | var SeekTime = th.data.aweeks[date_id].time; |
269 | 265 | var val = th.data.aweeks[date_id].val; |
270 | - if (val != "") { | |
266 | + | |
271 | 267 | var url = "/api/weshop/marketing/reservation/staff/time/list"; |
272 | 268 | getApp().request.promiseGet(url, { |
273 | 269 | data: { |
... | ... | @@ -279,21 +275,25 @@ Page({ |
279 | 275 | } |
280 | 276 | }).then(res => { |
281 | 277 | if (res.data.code == 0) { |
282 | - var time_list = res.data.data; | |
283 | - var time = th.data.time; | |
284 | - var new_time = []; | |
285 | - if (time_list != null) { | |
286 | - for (var i = 0; i < time.length; i++) { | |
287 | - for (var ii = 0; ii < time_list.length; ii++) { | |
288 | - if (time[i] == time_list[ii].GroupHour.substring(0, 5)) { | |
289 | - new_time[i] = time_list[ii].GroupHour.substring(0, 5); | |
290 | - break; | |
291 | - } else { | |
292 | - new_time[i] = ""; | |
278 | + console.log("也饿饿饿饿饿饿" + res.data.data[0].GroupHour); | |
279 | + if (res.data.data[0].GroupHour.length > 11) { | |
280 | + getApp().my_warnning(res.data.data[0].GroupHour, 0, th); | |
281 | + } | |
282 | + var time_list = res.data.data; | |
283 | + var time = th.data.time; | |
284 | + var new_time = []; | |
285 | + if (time_list != null) { | |
286 | + for (var i = 0; i < time.length; i++) { | |
287 | + for (var ii = 0; ii < time_list.length; ii++) { | |
288 | + if (time[i] == time_list[ii].GroupHour.substring(0, 5)) { | |
289 | + new_time[i] = time_list[ii].GroupHour.substring(0, 5); | |
290 | + break; | |
291 | + } else { | |
292 | + new_time[i] = ""; | |
293 | + } | |
293 | 294 | } |
294 | 295 | } |
295 | 296 | } |
296 | - } | |
297 | 297 | th.setData({ |
298 | 298 | time_list: new_time |
299 | 299 | }) |
... | ... | @@ -301,7 +301,7 @@ Page({ |
301 | 301 | getApp().my_warnning(res.data.msg, 0, th); |
302 | 302 | } |
303 | 303 | }) |
304 | - } | |
304 | + | |
305 | 305 | }, |
306 | 306 | //更改预约时间 |
307 | 307 | change_time: function() { | ... | ... |
pages/user/my_service/beauty_deta.wxml
... | ... | @@ -41,7 +41,7 @@ |
41 | 41 | <view class="Times"> |
42 | 42 | |
43 | 43 | <view class="flex-center" wx:for="{{time}}" style="display:inline-block;" wx:for-index="key" wx:for-item="it"> |
44 | - <block wx:if="{{it==time_list[key]}} && time[key]>=hours?true:false}}"> | |
44 | + <block wx:if="{{it==time_list[key]}}"> | |
45 | 45 | <view class="Time flex-center {{time_index==key?'chTime':''}}" bindtap="Selection_time" data-index="{{key}}"> |
46 | 46 | <view> |
47 | 47 | <view class="fs26">{{it}}</view> | ... | ... |
pages/user/my_service/hist_service.js
... | ... | @@ -31,6 +31,7 @@ Page({ |
31 | 31 | ismore: 0, //是否加载完毕 |
32 | 32 | is_screen: 0, //是否通过筛选来选择历史服务 |
33 | 33 | is_reset:0,//是否重复点击 |
34 | + is_nav:1,//是否显示导航栏 | |
34 | 35 | }, |
35 | 36 | pickerShow: function() { |
36 | 37 | this.setData({ |
... | ... | @@ -97,7 +98,9 @@ Page({ |
97 | 98 | curpage: 1, |
98 | 99 | is_service_read: 0, |
99 | 100 | is_screen: 1, |
100 | - is_reset:1 | |
101 | + is_reset:1, | |
102 | + beginDate: "", | |
103 | + endDate: "", | |
101 | 104 | }) |
102 | 105 | th.query_hist(); |
103 | 106 | } |
... | ... | @@ -119,6 +122,9 @@ Page({ |
119 | 122 | } |
120 | 123 | }).then(res => { |
121 | 124 | wx.hideLoading(); |
125 | + th.setData({ | |
126 | + is_reset: 0 | |
127 | + }) | |
122 | 128 | if (res.data.code == 0) { |
123 | 129 | th.data.curpage++; |
124 | 130 | var arr1 = th.data.hist_List; |
... | ... | @@ -131,7 +137,6 @@ Page({ |
131 | 137 | total: res.data.data.total, |
132 | 138 | ismore: ismore, |
133 | 139 | is_service_read: 1, |
134 | - is_reset:0 | |
135 | 140 | }), wx.stopPullDownRefresh(); //停止下拉刷新 |
136 | 141 | } else { |
137 | 142 | th.setData({ | ... | ... |
pages/user/my_service/hist_service.wxml
1 | -<view wx:if="{{true}}" class="{{isPickerRender==true?'container':''}}"> | |
1 | +<view class="{{isPickerRender==true?'container':''}}"> | |
2 | 2 | <!-- 点击方法 --> |
3 | - <view class="exption flex-vertical-between fs28" wx:if="{{hist_List.length>0 || startTime!=''}}"> | |
3 | + <view class="exption flex-vertical-between fs28" wx:if="{{is_nav ||hist_List.length>0}}"> | |
4 | 4 | <view class="flex"> |
5 | 5 | 共使用 |
6 | 6 | <view class="count">{{total}}</view> | ... | ... |
pages/user/my_service/i_service.js
... | ... | @@ -22,6 +22,7 @@ Page({ |
22 | 22 | total: 0, |
23 | 23 | ismore: 0, //是否加载完毕 |
24 | 24 | userinfo: null, |
25 | + is_sub: 0, //是否重复提交预约 | |
25 | 26 | }, |
26 | 27 | |
27 | 28 | /** |
... | ... | @@ -44,7 +45,7 @@ Page({ |
44 | 45 | * 生命周期函数--监听页面显示 |
45 | 46 | */ |
46 | 47 | onShow: function() { |
47 | - | |
48 | + | |
48 | 49 | }, |
49 | 50 | onReachBottom: function() { |
50 | 51 | var th = this; |
... | ... | @@ -91,6 +92,10 @@ Page({ |
91 | 92 | /*-- 打开服务项目 --*/ |
92 | 93 | open_fw: function(e) { |
93 | 94 | var th = this; |
95 | + var nav_b = th.selectComponent("#nav_b"); //组件的id | |
96 | + var url = e.currentTarget.dataset.url; | |
97 | + var service_id = e.currentTarget.dataset.service_id; //服务id | |
98 | + var project_id = e.currentTarget.dataset.project_id; | |
94 | 99 | var ind = e.currentTarget.dataset.ind; |
95 | 100 | var item = this.data.service_List[ind]; |
96 | 101 | var ewm = th.data.userinfo.erpvipid + "|" + item.ProjectID + "|" + item.BuyType + "|TY01|"; |
... | ... | @@ -99,7 +104,43 @@ Page({ |
99 | 104 | th.data.qr_code_object.val = ewm; |
100 | 105 | th.data.qr_code_object.is_fw = 1; |
101 | 106 | var qc_com = th.selectComponent("#qc_com"); //组件的id |
102 | - qc_com.open(th.data.qr_code_object) | |
107 | + getApp().request.promiseGet("/api/weshop/marketing/reservation/reservation/check", { | |
108 | + data: { | |
109 | + serviceId: service_id, | |
110 | + storeId: a.stoid, | |
111 | + userId: d.user_id | |
112 | + } | |
113 | + }).then(res => { | |
114 | + th.setData({ | |
115 | + is_sub: 0 | |
116 | + }) | |
117 | + if (res.data.data != null) { | |
118 | + var my_confirm = th.selectComponent("#my_confirm"); //组件的id | |
119 | + my_confirm.open_cancel(1); | |
120 | + my_confirm.open( | |
121 | + "已有预约记录!", | |
122 | + "继续使用", | |
123 | + "预约详情", | |
124 | + function() { | |
125 | + nav_b.close_box(); | |
126 | + my_confirm.open_cancel(0); | |
127 | + qc_com.open(th.data.qr_code_object) | |
128 | + }, | |
129 | + function() { | |
130 | + nav_b.close_box(); | |
131 | + my_confirm.open_cancel(0); | |
132 | + var deta_url = "/pages/user/my_service/tment_details?number=" + res.data.data.Number; | |
133 | + wx.navigateTo({ | |
134 | + url: deta_url | |
135 | + }) | |
136 | + } | |
137 | + ) | |
138 | + | |
139 | + } else { | |
140 | + qc_com.open(th.data.qr_code_object) | |
141 | + } | |
142 | + }) | |
143 | + | |
103 | 144 | }, |
104 | 145 | //图片失败,默认图片 |
105 | 146 | bind_bnerr1: function(e) { |
... | ... | @@ -130,37 +171,78 @@ Page({ |
130 | 171 | //校正是否可预约 |
131 | 172 | correcting: function(e) { |
132 | 173 | var th = this; |
133 | - var url = e.currentTarget.dataset.url; | |
134 | - var service_id = e.currentTarget.dataset.service_id; //服务id | |
135 | - var project_id = e.currentTarget.dataset.project_id; | |
136 | - getApp().request.promiseGet("/api/weshop/marketing/reservation/reservation/check", { | |
137 | - data: { | |
138 | - serviceId: service_id, | |
139 | - storeId: a.stoid, | |
140 | - userId: d.user_id | |
141 | - } | |
142 | - }).then(res => { | |
143 | - if (res.data.code == 0) { | |
144 | - getApp().request.promiseGet("/api/weshop/marketing/reservation/reservation/sm/check", { | |
145 | - data: { | |
146 | - projectId: project_id, | |
147 | - serviceId: service_id, | |
148 | - storeId: a.stoid, | |
149 | - userId: d.user_id | |
150 | - } | |
151 | - }).then(res => { | |
152 | - if (res.data.code == 0) { | |
174 | + var nav_b = th.selectComponent("#nav_b"); //组件的id | |
175 | + wx.showLoading({ | |
176 | + title: '加载中', | |
177 | + }) | |
178 | + if (th.data.is_sub == 0) { | |
179 | + th.setData({ | |
180 | + is_sub: 1 | |
181 | + }) | |
182 | + var url = e.currentTarget.dataset.url; | |
183 | + var service_id = e.currentTarget.dataset.service_id; //服务id | |
184 | + var project_id = e.currentTarget.dataset.project_id; | |
185 | + getApp().request.promiseGet("/api/weshop/marketing/reservation/reservation/check", { | |
186 | + data: { | |
187 | + serviceId: service_id, | |
188 | + storeId: a.stoid, | |
189 | + userId: d.user_id | |
190 | + } | |
191 | + }).then(res => { | |
192 | + wx.hideLoading(); | |
193 | + th.setData({ | |
194 | + is_sub: 0 | |
195 | + }) | |
196 | + if (res.data.code == 0) { | |
197 | + if (res.data.data != null) { | |
198 | + | |
199 | + var number = res.data.data.Number; | |
200 | + var my_confirm = th.selectComponent("#my_confirm"); //组件的id | |
201 | + my_confirm.open_cancel(1); | |
202 | + my_confirm.open( | |
203 | + "已有预约记录!", | |
204 | + "继续预约", | |
205 | + "预约详情", | |
206 | + function() { | |
207 | + nav_b.close_box(); | |
208 | + my_confirm.open_cancel(0); | |
209 | + getApp().request.promiseGet("/api/weshop/marketing/reservation/reservation/sm/check", { | |
210 | + data: { | |
211 | + projectId: project_id, | |
212 | + serviceId: service_id, | |
213 | + storeId: a.stoid, | |
214 | + userId: d.user_id | |
215 | + } | |
216 | + }).then(res => { | |
217 | + if (res.data.code == 0) { | |
218 | + wx.navigateTo({ | |
219 | + url: url | |
220 | + }) | |
221 | + } else { | |
222 | + getApp().my_warnning(res.data.msg, 0, th); | |
223 | + } | |
224 | + }) | |
225 | + }, | |
226 | + function() { | |
227 | + nav_b.close_box(); | |
228 | + my_confirm.open_cancel(0); | |
229 | + var deta_url = "/pages/user/my_service/tment_details?number=" + number; | |
230 | + wx.navigateTo({ | |
231 | + url: deta_url | |
232 | + }) | |
233 | + } | |
234 | + ) | |
235 | + } else { | |
153 | 236 | wx.navigateTo({ |
154 | - url: url | |
237 | + url: url, | |
155 | 238 | }) |
156 | - } else { | |
157 | - getApp().my_warnning(res.data.msg, 0, th); | |
158 | 239 | } |
159 | - }) | |
160 | - } else { | |
161 | - getApp().my_warnning(res.data.msg, 0, th); | |
162 | - } | |
163 | - }) | |
240 | + | |
241 | + } else { | |
242 | + getApp().my_warnning(res.data.msg, 0, th); | |
243 | + } | |
244 | + }) | |
245 | + } | |
164 | 246 | } |
165 | 247 | |
166 | 248 | }) |
167 | 249 | \ No newline at end of file | ... | ... |
pages/user/my_service/i_service.json
... | ... | @@ -2,6 +2,8 @@ |
2 | 2 | "navigationBarTitleText": "服务项目", |
3 | 3 | "usingComponents": { |
4 | 4 | "qr_code": "/components/qr_code/qr_code", |
5 | - "warn": "/components/long_warn/long_warn" | |
5 | + "warn": "/components/long_warn/long_warn", | |
6 | + "my_confirm": "/components/my_confirm/my_confirm", | |
7 | + "nav_b": "/components/nav_b/nav_b" | |
6 | 8 | } |
7 | 9 | } |
8 | 10 | \ No newline at end of file | ... | ... |
pages/user/my_service/i_service.wxml
... | ... | @@ -45,7 +45,7 @@ |
45 | 45 | </view> |
46 | 46 | |
47 | 47 | <view class="flex-center fs24 functionMax"> |
48 | - <view class="flex-level Use" bindtap="open_fw" data-ind="{{index}}"> | |
48 | + <view class="flex-level Use" bindtap="open_fw" data-ind="{{index}}" data-service_id="{{item.ServiceID}}"> | |
49 | 49 | <view>立即使用</view> |
50 | 50 | </view> |
51 | 51 | <!-- 可预约 --> |
... | ... | @@ -79,7 +79,9 @@ |
79 | 79 | </view> |
80 | 80 | </view> |
81 | 81 | </view> |
82 | - | |
82 | +<!-- 制作一个圆球导航 --> | |
83 | +<nav_b id="nav_b"></nav_b> | |
83 | 84 | <!-- 弹出框扫描 --> |
84 | 85 | <qr_code id="qc_com"></qr_code> |
85 | -<warn id="warn"></warn> | |
86 | 86 | \ No newline at end of file |
87 | +<warn id="warn"></warn> | |
88 | +<my_confirm id="my_confirm"></my_confirm> | |
87 | 89 | \ No newline at end of file | ... | ... |
pages/user/my_service/tment_details.js
... | ... | @@ -85,13 +85,8 @@ Page({ |
85 | 85 | wx.hideLoading(); |
86 | 86 | if (res.data.code == 0) { |
87 | 87 | var data = res.data.data.pageData; |
88 | - var arrangeTime = data[0].ArrangeTime.substring(0, 11); | |
89 | - var day = data[0].ArrangeTime.substring(12, 13); | |
90 | - if (day < 12) { | |
91 | - day = "上午" | |
92 | - } else { | |
93 | - day = "下午" | |
94 | - } | |
88 | + var arrangeTime = data[0].ArrangeTime.substring(0, 11); | |
89 | + var day = data[0].ArrangeTime.substring(11, 16); | |
95 | 90 | th.setData({ |
96 | 91 | tment_details: data, |
97 | 92 | arrangeTime: arrangeTime, | ... | ... |
pages/user/my_service/tment_details.json
... | ... | @@ -2,6 +2,7 @@ |
2 | 2 | "navigationBarTitleText": "预约详情", |
3 | 3 | "usingComponents": { |
4 | 4 | "qr_code": "/components/qr_code/qr_code", |
5 | - "warn": "/components/long_warn/long_warn" | |
5 | + "warn": "/components/long_warn/long_warn", | |
6 | + "nav_b": "/components/nav_b/nav_b" | |
6 | 7 | } |
7 | 8 | } |
8 | 9 | \ No newline at end of file | ... | ... |
pages/user/my_service/tment_details.wxml
... | ... | @@ -20,7 +20,7 @@ |
20 | 20 | </view> |
21 | 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 | 22 | </view> |
23 | - | |
23 | + | |
24 | 24 | <!-- 预约门店 --> |
25 | 25 | <view class="flex-vertical bmt"> |
26 | 26 | <view class="name">预约门店:</view> |
... | ... | @@ -114,6 +114,8 @@ |
114 | 114 | |
115 | 115 | </view> |
116 | 116 | </view> |
117 | +<!-- 制作一个圆球导航 --> | |
118 | +<nav_b></nav_b> | |
117 | 119 | <!-- 弹出框扫描 --> |
118 | 120 | <qr_code id="qc_com"></qr_code> |
119 | 121 | <warn id="warn"></warn> |
120 | 122 | \ No newline at end of file | ... | ... |
pages/user/my_service/tment_details.wxss
... | ... | @@ -35,6 +35,7 @@ page { |
35 | 35 | |
36 | 36 | .container { |
37 | 37 | padding: 0rpx 20rpx; |
38 | + padding-bottom:85rpx; | |
38 | 39 | } |
39 | 40 | |
40 | 41 | .Subscriber { |
... | ... | @@ -79,6 +80,9 @@ page { |
79 | 80 | .subs { |
80 | 81 | padding: 0rpx 5rpx; |
81 | 82 | margin-bottom: 20rpx; |
83 | + position: fixed; | |
84 | + width: 705rpx; | |
85 | + bottom:20rpx; | |
82 | 86 | } |
83 | 87 | |
84 | 88 | .sub { | ... | ... |
pages/user/my_service/tment_eval.js
... | ... | @@ -11,6 +11,7 @@ Page({ |
11 | 11 | data: { |
12 | 12 | url: a.url, //接口网址 |
13 | 13 | iurl: a.imghost, |
14 | + defimgurl: "/miniapp/images/yyservice/yyxmdefault.jpg", | |
14 | 15 | stars_index: -1, //当前点击的星星下标 |
15 | 16 | labels: [], //星级标签数组 |
16 | 17 | sub_evaluate: 0, //是否评价成功 |
... | ... | @@ -19,7 +20,7 @@ Page({ |
19 | 20 | number: "", //订单单号 |
20 | 21 | beautician: "", //美容师信息 |
21 | 22 | fromType: "服务评价", //评价来源 |
22 | - arrangeTime:"",//服务日期 | |
23 | + arrangeTime: "", //服务日期 | |
23 | 24 | }, |
24 | 25 | //点击星级 |
25 | 26 | check_stars: function(e) { |
... | ... | @@ -127,12 +128,12 @@ Page({ |
127 | 128 | var proposal = th.data.proposal; //用户建议内容 |
128 | 129 | var fromType = th.data.fromType; //评价来源 |
129 | 130 | var json = { |
130 | - "storeId": a.stoid, | |
131 | 131 | "evaLabList": evaLabList, |
132 | - "fromType": "预约评价", | |
133 | - "posNo": posNo, | |
132 | + "fromType": 2, | |
133 | + "number": posNo, | |
134 | 134 | "remark": proposal, |
135 | - "star": stars + 1 | |
135 | + "star": stars + 1, | |
136 | + "storeId": a.stoid | |
136 | 137 | }; |
137 | 138 | var data = JSON.stringify(json); //转换成json格式 |
138 | 139 | wx.request({ |
... | ... | @@ -147,7 +148,7 @@ Page({ |
147 | 148 | th.setData({ |
148 | 149 | sub_evaluate: 1 |
149 | 150 | }) |
150 | - setTimeout(function () { | |
151 | + setTimeout(function() { | |
151 | 152 | wx.redirectTo({ |
152 | 153 | url: "/pages/user/my_service/tment_order_list" |
153 | 154 | }); |
... | ... | @@ -159,6 +160,16 @@ Page({ |
159 | 160 | }) |
160 | 161 | |
161 | 162 | }, |
163 | + //图片失败,默认图片 | |
164 | + bind_bnerr1: function (e) { | |
165 | + var _errImg = e.target.dataset.errorimg; | |
166 | + var _Img = e.target.dataset.img; | |
167 | + if (_Img != undefined) { | |
168 | + var _errObj = {}; | |
169 | + _errObj[_errImg] = "/miniapp/images/no_cate_def.png"; | |
170 | + this.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ; | |
171 | + } | |
172 | + }, | |
162 | 173 | /** |
163 | 174 | * 生命周期函数--监听页面加载 |
164 | 175 | */ | ... | ... |
pages/user/my_service/tment_eval.wxml
... | ... | @@ -2,7 +2,7 @@ |
2 | 2 | |
3 | 3 | <!-- 头像 --> |
4 | 4 | <view class="flex-center head"> |
5 | - <image class="headimg" src="{{iurl}}/miniapp/images/yyservice/Cosm_appo.png"></image> | |
5 | + <image class="headimg" src="{{beautician.ImageUrl==''?iurl+defimgurl:beautician.ImageUrl}}" lazy-load="true" data-errorimg="beautician.ImageUrl" binderror="bind_bnerr1" data-img="{{beautician.ImageUrl}}"></image> | |
6 | 6 | </view> |
7 | 7 | |
8 | 8 | <!-- 姓名 --> | ... | ... |
pages/user/my_service/tment_eval.wxss
pages/user/my_service/tment_order_list.js
... | ... | @@ -39,8 +39,7 @@ Page({ |
39 | 39 | * 生命周期函数--监听页面加载 |
40 | 40 | */ |
41 | 41 | onLoad: function(options) { |
42 | - var th = this; | |
43 | - th.query_orderList(); | |
42 | + | |
44 | 43 | }, |
45 | 44 | changeTab: function(e) { |
46 | 45 | var th = this; |
... | ... | @@ -81,9 +80,6 @@ Page({ |
81 | 80 | } else { |
82 | 81 | --state_index; |
83 | 82 | } |
84 | - wx.showLoading({ | |
85 | - title: '加载中', | |
86 | - }) | |
87 | 83 | th.setData({ |
88 | 84 | is_read: 0 |
89 | 85 | }) |
... | ... | @@ -156,7 +152,7 @@ Page({ |
156 | 152 | [start]: 3 |
157 | 153 | }) |
158 | 154 | } |
159 | - | |
155 | + wx.stopPullDownRefresh(); //停止下拉刷新 | |
160 | 156 | } else { |
161 | 157 | getApp().my_warnning(res.data.msg, 0, th); |
162 | 158 | } |
... | ... | @@ -179,6 +175,13 @@ Page({ |
179 | 175 | */ |
180 | 176 | onShow: function() { |
181 | 177 | var th = this; |
178 | + th.setData({ | |
179 | + curpage:1, | |
180 | + total:0, | |
181 | + ismore:0, | |
182 | + is_read:0, | |
183 | + tm_order_list:[] | |
184 | + }) | |
182 | 185 | th.query_orderList(); |
183 | 186 | }, |
184 | 187 | ... | ... |
pages/user/my_service/tment_order_list.wxml
... | ... | @@ -33,11 +33,11 @@ |
33 | 33 | <view class="details"> |
34 | 34 | <view class="item flex-vertical"> |
35 | 35 | <view class="itemname">预约门店:</view> |
36 | - <view class="itemvalue ellipsis-1">{{item.ServiceName}}</view> | |
36 | + <view class="itemvalue ellipsis-1">{{item.StorageName}}</view> | |
37 | 37 | </view> |
38 | 38 | <view class="item flex-vertical"> |
39 | 39 | <view class="itemname">预约项目:</view> |
40 | - <view class="itemvalue ellipsis-1">{{item.StorageName}}</view> | |
40 | + <view class="itemvalue ellipsis-1">{{item.ServiceName}}</view> | |
41 | 41 | </view> |
42 | 42 | <view class="item flex-vertical"> |
43 | 43 | <view class="itemname">美容师:</view> | ... | ... |