Commit df12f2e8b7371fd90fe4fd70bc8d70e91be7c6d6
1 parent
ec12e1ac
pos销售评价
Showing
9 changed files
with
870 additions
and
1 deletions
app.json
... | ... | @@ -154,7 +154,9 @@ |
154 | 154 | "pages/user/view_comment/view_comment", |
155 | 155 | "pages/user/add_comment/add_comment", |
156 | 156 | "pages/user/user_coupon/user_coupon", |
157 | - "pages/user/buyDetails/buyDetails" | |
157 | + "pages/user/buyDetails/buyDetails", | |
158 | + "pages/evaluate/evaluate", | |
159 | + "pages/evaluate_list/evaluate_list" | |
158 | 160 | ] |
159 | 161 | |
160 | 162 | } | ... | ... |
packageB/pages/evaluate/evaluate.js
0 → 100644
1 | + var e = getApp(), | |
2 | + a = e.globalData.setting, | |
3 | + os = a, | |
4 | + t = e.request, | |
5 | + d = e.globalData; | |
6 | +Page({ | |
7 | + | |
8 | + /** | |
9 | + * 页面的初始数据 | |
10 | + */ | |
11 | + data: { | |
12 | + url: a.url, //接口网址 | |
13 | + iurl: a.imghost, | |
14 | + defimgurl: "/miniapp/images/no-head.jpg", | |
15 | + stars_index: -1, //当前点击的星星下标 | |
16 | + labels: [], //星级标签数组 | |
17 | + sub_evaluate: 0, //是否评价成功 | |
18 | + proposal: "", //用户输入的建议 | |
19 | + proposal_size: 100, //评价意见和建议限定字数 | |
20 | + number: "", //订单单号 | |
21 | + beautician: "", //美容师信息 | |
22 | + fromType: "服务评价", //评价来源 | |
23 | + arrangeTime: "", //服务日期 | |
24 | + is_evaluate: 0, //是否评价 | |
25 | + EvaluateDatetime: "", //评价时间 | |
26 | + is_act:0, //是否能购获取图片 | |
27 | + actId:0, //活动ID | |
28 | + giftBagId:0, //礼包ID | |
29 | + | |
30 | + }, | |
31 | + //点击星级 | |
32 | + check_stars: function(e) { | |
33 | + var th = this; | |
34 | + var is_evaluate = th.data.is_evaluate; //0可点击 | |
35 | + if (is_evaluate == 0) { | |
36 | + var index = e.currentTarget.dataset.index; | |
37 | + var stars_index = th.data.stars_index; | |
38 | + if (index != stars_index) { | |
39 | + var url = "/api/weshop/marketing/reservation/star/label/list"; | |
40 | + getApp().request.promiseGet(url, { | |
41 | + data: { | |
42 | + Star: index + 1, | |
43 | + storeId: a.stoid | |
44 | + } | |
45 | + }).then(res => { | |
46 | + if (res.data.code == 0) { | |
47 | + th.setData({ | |
48 | + labels: res.data.data | |
49 | + }) | |
50 | + } else { | |
51 | + getApp().my_warnning(res.data.msg, 0, th); | |
52 | + return; | |
53 | + } | |
54 | + }) | |
55 | + th.setData({ | |
56 | + stars_index: index | |
57 | + }) | |
58 | + } | |
59 | + } | |
60 | + }, | |
61 | + //输入评价意见和建议 | |
62 | + input_proposal: function(e) { | |
63 | + var th = this; | |
64 | + var value = e.detail.value; | |
65 | + th.setData({ | |
66 | + proposal: value | |
67 | + }) | |
68 | + }, | |
69 | + //图片失败,默认图片 | |
70 | + bind_bnerr1: function (e) { | |
71 | + var th = this; | |
72 | + var _errImg = e.target.dataset.errorimg; | |
73 | + var _Img = e.target.dataset.img; | |
74 | + if (_Img != undefined) { | |
75 | + var _errObj = {}; | |
76 | + _errObj[_errImg] = "/miniapp/images/no-head.jpg"; | |
77 | + th.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ; | |
78 | + } | |
79 | + }, | |
80 | + //选择标签 | |
81 | + check_label: function(e) { | |
82 | + var th = this; | |
83 | + var evaluate = th.data.is_evaluate; //0为未评价,未评价才可点击标签 | |
84 | + if (evaluate == 0) { | |
85 | + var index = e.currentTarget.dataset.index; | |
86 | + var label_id = th.data.labels[index].check; | |
87 | + var labels = 'labels[' + index + '].check'; | |
88 | + if (label_id) { | |
89 | + label_id = 0 | |
90 | + } else { | |
91 | + label_id = 1 | |
92 | + } | |
93 | + th.setData({ | |
94 | + [labels]: label_id | |
95 | + }) | |
96 | + } | |
97 | + }, | |
98 | + | |
99 | + //查询美导信息 | |
100 | + query_bea: function() { | |
101 | + var th = this; | |
102 | + var url = "/api/weshop/order/pagePosOrder"; | |
103 | + var number = th.data.number; //订单编号 | |
104 | + getApp().request.promiseGet(url, { | |
105 | + data: { | |
106 | + store_id: a.stoid, | |
107 | + user_id: d.user_id, | |
108 | + No: number | |
109 | + } | |
110 | + }).then(res => { | |
111 | + if (res.data.code == 0) { | |
112 | + var data = res.data.data.pageData; | |
113 | + var arrangeTime = data[0].ArrangeTime; | |
114 | + th.setData({ | |
115 | + beautician: data, | |
116 | + arrangeTime: arrangeTime | |
117 | + }) | |
118 | + } else { | |
119 | + getApp().my_warnning(res.data.msg, 0, th); | |
120 | + } | |
121 | + }) | |
122 | + }, | |
123 | + | |
124 | + //获取预约评价 | |
125 | + evaluate_get: function() { | |
126 | + var th = this; | |
127 | + var url = "/api/weshop/evaluation/evaluate/get"; | |
128 | + getApp().request.promiseGet(url, { | |
129 | + data: { | |
130 | + number: th.data.number, | |
131 | + storeId: a.stoid | |
132 | + } | |
133 | + }).then(res => { | |
134 | + if (res.data.code == 0) { | |
135 | + var list=[]; | |
136 | + res.data.data.BillDate=res.data.data.BillDate.replace(".0",''); | |
137 | + list.push(res.data.data); | |
138 | + | |
139 | + th.setData({ | |
140 | + stars_index: res.data.data.Star-1, | |
141 | + labels: res.data.data.EvaluationList, | |
142 | + proposal: res.data.data.Remark, | |
143 | + EvaluateDatetime: res.data.data.EvaluateDatetime.substring(0, 19), | |
144 | + beautician:list, | |
145 | + }) | |
146 | + } else { | |
147 | + getApp().my_warnning(res.data.msg, 0, th); | |
148 | + } | |
149 | + }) | |
150 | + }, | |
151 | + //提交评价 | |
152 | + evaluate_save: function() { | |
153 | + var th = this; | |
154 | + var stars = th.data.stars_index; //评价星级 | |
155 | + var proposal = th.data.proposal; | |
156 | + //判断是否评级 | |
157 | + if (stars < 0) { | |
158 | + getApp().my_warnning("请进行评分", 0, th); | |
159 | + return false; | |
160 | + } else if (proposal == "") { | |
161 | + getApp().my_warnning("给点建议呗", 0, th); | |
162 | + return false; | |
163 | + } | |
164 | + wx.showLoading({ | |
165 | + title: '加载中', | |
166 | + }) | |
167 | + var labels = th.data.labels; //星级标签数组 | |
168 | + var evaLabList = []; //用户选择的评价标签 | |
169 | + // 查询评价标签 | |
170 | + for (var i = 0; i < labels.length; i++) { | |
171 | + if (labels[i].check) { | |
172 | + evaLabList.push(labels[i].LabelName); | |
173 | + } | |
174 | + } | |
175 | + var url = th.data.url + "/api/weshop/evaluation/evaluate/insert"; | |
176 | + var posNo = th.data.number; //收银单号 | |
177 | + var proposal = th.data.proposal; //用户建议内容 | |
178 | + var fromType = th.data.fromType; //评价来源 | |
179 | + var json = { | |
180 | + "evaLabList": evaLabList, | |
181 | + "fromType": 1, | |
182 | + "number": posNo, | |
183 | + "remark": proposal, | |
184 | + "star": stars + 1, | |
185 | + "storeId": a.stoid | |
186 | + }; | |
187 | + var data = JSON.stringify(json); //转换成json格式 | |
188 | + wx.request({ | |
189 | + url: url, | |
190 | + data: data, | |
191 | + method: 'POST', | |
192 | + header: { | |
193 | + 'content-type': 'application/json' | |
194 | + }, // 设置请求的 header | |
195 | + success: function(res) { | |
196 | + wx.hideLoading(); | |
197 | + if (res.data.code == 0) { | |
198 | + getApp().my_warnning("评价成功", 1, th); | |
199 | + var namber=th.data.number; | |
200 | + setTimeout(function() { | |
201 | + wx.redirectTo({ | |
202 | + url: "/packageB/pages/evaluate_list/evaluate_list?IsEvaluate=1" | |
203 | + }); | |
204 | + }, 2000); | |
205 | + } else { | |
206 | + getApp().my_warnning(res.data.msg, 0, th); | |
207 | + } | |
208 | + } | |
209 | + }) | |
210 | + }, | |
211 | + | |
212 | + /** | |
213 | + * 生命周期函数--监听页面加载 | |
214 | + */ | |
215 | + onLoad: function(options) { | |
216 | + var th = this; | |
217 | + th.setData({ | |
218 | + number: options.number, | |
219 | + //is_evaluate: options.evaluate | |
220 | + }) | |
221 | + //th.query_bea(); | |
222 | + //th.judge_act(); | |
223 | + var userinfo=getApp().globalData.userInfo; | |
224 | + console.log("userinfo",userinfo) | |
225 | + | |
226 | + if(!userinfo){ | |
227 | + getApp().goto("/pages/togoin/togoin"); | |
228 | + } | |
229 | + | |
230 | + | |
231 | + }, | |
232 | + | |
233 | + /** | |
234 | + * 生命周期函数--监听页面显示 | |
235 | + */ | |
236 | + onShow: function() { | |
237 | + //var th = this; | |
238 | + //var is_evaluate = th.data.is_evaluate; | |
239 | + //if (is_evaluate == 1) { | |
240 | + // th.evaluate_get(); | |
241 | + //} | |
242 | + //判断有没有评价 | |
243 | + this.check_is_pj(); | |
244 | + }, | |
245 | + | |
246 | + | |
247 | + //评价其他跳转 | |
248 | + evaluate_qt:function(e){ | |
249 | + var status=e.currentTarget.dataset.status; | |
250 | + if(!status) status=0; | |
251 | + wx.redirectTo({ | |
252 | + url: "/packageB/pages/evaluate_list/evaluate_list?IsEvaluate="+status | |
253 | + }); | |
254 | + }, | |
255 | + | |
256 | + | |
257 | + | |
258 | + //点击领取礼包 | |
259 | + clike_lb:function(){ | |
260 | + | |
261 | + var id=this.data.actId; | |
262 | + var gifbagid = this.data.gifbagid; | |
263 | + console.log(id,"订单", this.data.number), | |
264 | + wx.redirectTo({ | |
265 | + url: "/pages/giftpack/evaluategift/evaluategift?actId="+id+ "&orderType=2&orderNumber="+this.data.number | |
266 | + }); | |
267 | + | |
268 | + }, | |
269 | + | |
270 | + //--评价有礼判断--- | |
271 | + judge_act: function () { | |
272 | + var th = this; | |
273 | + var url = "/api/weshop/marketing/comment/act/judge"; | |
274 | + getApp().request.promiseGet(url, { | |
275 | + data: { | |
276 | + orderNumber: th.data.number, | |
277 | + orderType: 2, | |
278 | + storeId: a.stoid, | |
279 | + userId: d.user_id | |
280 | + } | |
281 | + }).then(res => { | |
282 | + if (res.data.code == 0) { | |
283 | + var id = res.data.data.id; | |
284 | + var giftbagid = res.data.data.giftbagid; | |
285 | + th.setData({ | |
286 | + is_act: 1, | |
287 | + actId: id, | |
288 | + giftBagId: giftbagid | |
289 | + }) | |
290 | + } else{ | |
291 | + th.setData({ | |
292 | + is_act:0 | |
293 | + }) | |
294 | + } | |
295 | + }) | |
296 | + }, | |
297 | + | |
298 | + //判断是不是已经评价了 | |
299 | + check_is_pj:function(){ | |
300 | + var th=this; | |
301 | + var chekc_data={}; | |
302 | + chekc_data['storeId'] = a.stoid; | |
303 | + chekc_data['number'] =this.data.number; | |
304 | + getApp().request.get("/api/weshop/evaluation/evaluate/check",{ | |
305 | + data:chekc_data, | |
306 | + success:function(res){ | |
307 | + if(res.data.code==0){ | |
308 | + //没有评价的情况下 | |
309 | + if(res.data.data==='0'){ | |
310 | + th.query_bea(); | |
311 | + th.setData({is_get:1}) | |
312 | + }else if(res.data.data==="1"){ | |
313 | + th.evaluate_get(); | |
314 | + th.setData({is_evaluate:1,is_get:1}) | |
315 | + } | |
316 | + }else{ | |
317 | + getApp().my_warnning(res.data.msg, 0, th); | |
318 | + } | |
319 | + } | |
320 | + }) | |
321 | + | |
322 | + }, | |
323 | + | |
324 | + //跳转到链接地址 | |
325 | + goto:function(e){ | |
326 | + var url=e.currentTarget.dataset.url; | |
327 | + getApp().goto(url); | |
328 | + }, | |
329 | + | |
330 | + //弹出显示商品 | |
331 | + show_goods:function(e){ | |
332 | + var index=e.currentTarget.dataset.index; | |
333 | + var item=this.data.beautician[index]; | |
334 | + var show_goods_list=item.list; | |
335 | + this.setData({ | |
336 | + show_goods_list:show_goods_list, | |
337 | + sh_pop:1 | |
338 | + }) | |
339 | + }, | |
340 | + | |
341 | + //关闭弹出 | |
342 | + close_pop:function(){ | |
343 | + this.setData({ | |
344 | + show_goods_list:null,sh_pop:0 | |
345 | + }) | |
346 | + } | |
347 | + | |
348 | +}) | |
0 | 349 | \ No newline at end of file | ... | ... |
packageB/pages/evaluate/evaluate.json
0 → 100644
packageB/pages/evaluate/evaluate.wxml
0 → 100644
1 | +<view class="container" wx:for="{{beautician}}" wx:if="{{index<1}}" wx:for-item="it"> | |
2 | + <!-- 头像 --> | |
3 | + <view class="flex-center head"> | |
4 | + <image class="headimg" src="{{!it.PhotoUrl || it.PhotoUrl==''?iurl+defimgurl:it.PhotoUrl}}" lazy-load="true" | |
5 | + data-errorimg="beautician[{{index}}].PhotoUrl" | |
6 | + binderror="bind_bnerr1" data-img="beautician[{{index}}].PhotoUrl"></image> | |
7 | + </view> | |
8 | + | |
9 | + <!-- 姓名 --> | |
10 | + <view class="flex-level item"> | |
11 | + <view class="itemlf flex-level-right"> | |
12 | + <view class="fs32">导购名称:</view> | |
13 | + </view> | |
14 | + <view class="itemlr fs30 ellipsis-1">{{it.StaffName?it.StaffName:'无'}}</view> | |
15 | + </view> | |
16 | + | |
17 | + <!-- 项目 --> | |
18 | + <view class="flex-center item" bindtap="show_goods" data-index="{{index}}"> | |
19 | + <view class="itemlf fs32 flex-level-right">购买商品:</view> | |
20 | + <view class="itemlr fs30 ellipsis-1 go_right">{{it.list[0].WareName}}</view> | |
21 | + </view> | |
22 | + | |
23 | + <!-- 时间 --> | |
24 | + <view class="flex-center item"> | |
25 | + <view class="itemlf fs32 flex-level-right">购买时间:</view> | |
26 | + <view class="itemlr fs30">{{it.BillDate}}</view> | |
27 | + </view> | |
28 | + | |
29 | + <!-- 评价时间 --> | |
30 | + <view class="flex-center" wx:if="{{is_evaluate==1}}"> | |
31 | + <view class="itemlf fs32 flex-level-right">评价时间:</view> | |
32 | + <view class="itemlr fs30">{{EvaluateDatetime}}</view> | |
33 | + </view> | |
34 | + | |
35 | + <!-- 设置虚线 --> | |
36 | + <view class="flex-center"> | |
37 | + <view class="starss"> | |
38 | + <image class="stars" src="{{iurl}}{{key<=stars_index?'/miniapp/images/StarsredCk.png':'/miniapp/images/StarswhiteUnCk.png'}}" wx:for="{{5}}" bindtap="check_stars" data-index="{{key}}" wx:for-index="key"></image> | |
39 | + </view> | |
40 | + </view> | |
41 | + <view class="tea_labs"> | |
42 | + <view class="flex-center fs26"> | |
43 | + <block wx:if="{{is_evaluate==0}}"> | |
44 | + <textarea class="rel textarea" placeholder="写其他意见和建议" placeholder-class="fs24" maxlength="{{proposal_size}}" bindinput="input_proposal" value="{{proposal}}"> | |
45 | + <!-- 提示已输入多少数字 --> | |
46 | + <view if="{{is_evaluate==0}}" class="proposal abs">{{proposal.length}}/{{proposal_size}}</view> | |
47 | + </textarea> | |
48 | + </block> | |
49 | + <block wx:else> | |
50 | + <view wx:if="{{proposal!=''}}" class="textarea"> | |
51 | + {{proposal}} | |
52 | + </view> | |
53 | + </block> | |
54 | + </view> | |
55 | + | |
56 | + <view wx:if="{{labels.length>0 && is_evaluate==0}}" class="labels flex fs24 ellipsis-3"> | |
57 | + <view class="label {{item.check==1?'checklabel':''}} flex-center" wx:for="{{labels}}" bindtap="check_label" data-index="{{key}}" wx:for-index="key"> | |
58 | + <view class="ellipsis-1">{{item.LabelName}}</view> | |
59 | + </view> | |
60 | + | |
61 | + </view> | |
62 | + <view wx:if="{{labels.length>0 && is_evaluate==1}}" class="{{labels.length==1 || labels.length==2?'flex-center':''}}" style="width:100%;"> | |
63 | + <view class="labels flex fs24 ellipsis-3"> | |
64 | + <view class="label checklabel flex-center" wx:for="{{labels}}" bindtap="check_label" data-index="{{key}}" wx:for-index="key"> | |
65 | + <view class="ellipsis-1">{{item.LabelName}}</view> | |
66 | + </view> | |
67 | + | |
68 | + </view> | |
69 | + </view> | |
70 | + | |
71 | + </view> | |
72 | + | |
73 | + <view wx:if="{{is_evaluate==0}}" class="feedback flex-center fs28"> | |
74 | + <view>满意的话请打五星噢,谢谢您的支持!</view> | |
75 | + </view> | |
76 | + | |
77 | + <block wx:if="{{sub_evaluate}}"> | |
78 | + <view class="subSuccess"> | |
79 | + <view class="flex-center"> | |
80 | + <image class="Success" src="{{iurl}}/miniapp/images/yyservice/Success.png"></image> | |
81 | + </view> | |
82 | + <view class="fs36 flex-center"> | |
83 | + <view>评价成功</view> | |
84 | + </view> | |
85 | + </view> | |
86 | + </block> | |
87 | +</view> | |
88 | + | |
89 | +<block wx:if="{{is_get}}"> | |
90 | +<navigator wx:if="{{is_evaluate==0}}" class="Subs fs32 flex-center"> | |
91 | + <view class="Submission flex-center" bindtap="evaluate_save"> | |
92 | + <view>确认提交</view> | |
93 | + </view> | |
94 | +</navigator> | |
95 | +<view wx:else> | |
96 | + | |
97 | + | |
98 | + <view style="margin: auto;margin-bottom: 30rpx;" class="Submission flex-center" bindtap="evaluate_qt"> | |
99 | + <view>评价其他</view> | |
100 | + </view> | |
101 | + <view style="margin: auto;margin-bottom: 30rpx;" class="Submission flex-center" bindtap="evaluate_qt" data-status="1"> | |
102 | + <view>查看已评价的订单</view> | |
103 | + </view> | |
104 | + | |
105 | + <!-- 显示来个图标 --> | |
106 | + <view class="show_icon" style="margin-top: 60rpx;"> | |
107 | + <view class="icon_item" bindtap="goto" data-url="/pages/index/index/index"> | |
108 | + <view> | |
109 | + <image style="width: 60rpx; height: 50rpx;" src="{{iurl}}/miniapp/images/evaluate/store.png"></image> | |
110 | + <view>溜街</view> | |
111 | + </view> | |
112 | + </view> | |
113 | + <view class="icon_item" bindtap="goto" data-url="/packageA/pages/quan_list/quan_list"> | |
114 | + <view> | |
115 | + <image style="width: 70rpx; height: 50rpx;" src="{{iurl}}/miniapp/images/evaluate/lq.png"></image> | |
116 | + <view>领券</view> | |
117 | + </view> | |
118 | + </view> | |
119 | + </view> | |
120 | + | |
121 | + <view style="height: 60rpx;"></view> | |
122 | + <view wx:if="{{is_act==1}}" style="margin: auto;margin-bottom: 30rpx;" class="Submission flex-center yellow-b" bindtap="clike_lb"> | |
123 | + <view>点击领取礼品</view> | |
124 | + </view> | |
125 | + </view> | |
126 | +<warn id="warn"></warn> | |
127 | +</block> | |
128 | + | |
129 | + | |
130 | +<view hidden="{{!sh_pop}}"> | |
131 | + <view class="cover-layer" bindtap="close_pop"></view> | |
132 | + <view class="show_pop_div"> | |
133 | + <view class="title">商品详情</view> | |
134 | + <view style="padding: 0 20rpx;"> | |
135 | + <view class="flex jc_sb fs30" style="margin-top: 20rpx;" wx:for="{{show_goods_list}}"> | |
136 | + <view>{{item.WareName}}</view> | |
137 | + <view>{{item.Qty}}</view> | |
138 | + </view> | |
139 | + </view> | |
140 | + </view> | |
141 | +</view> | |
142 | + | ... | ... |
packageB/pages/evaluate/evaluate.wxss
0 → 100644
1 | +.container { | |
2 | + border-top: 7rpx solid rgb(245, 245, 245); | |
3 | + padding-bottom: 100rpx; | |
4 | + background-color: rgb(255, 255, 255); | |
5 | +} | |
6 | + | |
7 | +.head { | |
8 | + height: 270rpx; | |
9 | +} | |
10 | + | |
11 | +.headimg { | |
12 | + width: 190rpx; | |
13 | + height: 190rpx; | |
14 | + border-radius: 50%; | |
15 | +} | |
16 | + | |
17 | +.item { | |
18 | + margin-bottom: 20rpx; | |
19 | +} | |
20 | + | |
21 | +.itemlf { | |
22 | + width: 195rpx; | |
23 | +} | |
24 | + | |
25 | +.itemlr { | |
26 | + width: 360rpx; | |
27 | +} | |
28 | + | |
29 | +.starss { | |
30 | + margin-top: 15rpx; | |
31 | + border-top: 3rpx dashed rgb(203, 203, 203); | |
32 | + padding-top: 25rpx; | |
33 | + padding-left: 15rpx; | |
34 | +} | |
35 | + | |
36 | +.stars { | |
37 | + width: 50rpx; | |
38 | + height: 50rpx; | |
39 | + margin-right: 20rpx; | |
40 | +} | |
41 | + | |
42 | +.datetime { | |
43 | + width: 190rpx; | |
44 | +} | |
45 | + | |
46 | +.tea_labs { | |
47 | + padding: 0rpx 56rpx; | |
48 | + margin-top: 20rpx; | |
49 | +} | |
50 | + | |
51 | +.proposal { | |
52 | + right: 20rpx; | |
53 | + bottom: 20rpx; | |
54 | + color: rgb(152, 152, 152); | |
55 | +} | |
56 | + | |
57 | +.textarea { | |
58 | + width: 100%; | |
59 | + height: 200rpx; | |
60 | + margin-top: 70rpx; | |
61 | + border: 2rpx solid rgb(203, 203, 203); | |
62 | + border-radius: 13rpx; | |
63 | + padding-top: 25rpx; | |
64 | + padding-left: 30rpx; | |
65 | + margin-bottom: 30rpx; | |
66 | + padding-right: 15rpx; | |
67 | + padding-bottom: 20rpx; | |
68 | +} | |
69 | + | |
70 | +.labels { | |
71 | + display: inline-block; | |
72 | + max-height: 240rxp; | |
73 | + line-height: 50rpx; | |
74 | + padding-left: 15rpx; | |
75 | +} | |
76 | + | |
77 | +.label { | |
78 | + padding: 0rpx 10rpx; | |
79 | + height: 48rpx; | |
80 | + line-height: 48rpx; | |
81 | + border: 2rpx solid rgb(218, 218, 218); | |
82 | + color: rgb(152, 152, 152); | |
83 | + border-radius: 5rpx; | |
84 | + margin-right: 20rpx; | |
85 | + width: 165rpx; | |
86 | + display: inline-block; | |
87 | + text-align: center; | |
88 | + margin-bottom: 10rpx; | |
89 | +} | |
90 | + | |
91 | +/* 选择标签的样式 */ | |
92 | + | |
93 | +.checklabel { | |
94 | + border: 2rpx solid rgb(214, 1, 33); | |
95 | + background-color: rgb(255, 231, 235); | |
96 | + color: rgb(214, 1, 33); | |
97 | +} | |
98 | + | |
99 | +.feedback { | |
100 | + color: rgb(152, 152, 152); | |
101 | + margin-bottom: 70rpx; | |
102 | +} | |
103 | + | |
104 | +.Subs { | |
105 | + background-color: rgb(255, 255, 255); | |
106 | + position: fixed; | |
107 | + width: 100%; | |
108 | + bottom: 40rpx; | |
109 | +} | |
110 | + | |
111 | +.Submission { | |
112 | + width: 400rpx; | |
113 | + height: 65rpx; | |
114 | + border-radius: 60rpx; | |
115 | + background-color: rgb(214, 1, 33); | |
116 | + color: rgb(255, 255, 255); | |
117 | +} | |
118 | +.Submission.yellow-b{ | |
119 | + background-color: #ffb03f; | |
120 | + | |
121 | +} | |
122 | + | |
123 | +.clonri { | |
124 | + margin: 0rpx; | |
125 | +} | |
126 | + | |
127 | +.subSuccess { | |
128 | + position: fixed; | |
129 | + z-index: 3; | |
130 | + top: 435rpx; | |
131 | + left: 66rpx; | |
132 | + background-color: #a6a6a6a4; | |
133 | + width: 615rpx; | |
134 | + height: 315rpx; | |
135 | + border-radius: 20rpx; | |
136 | + color: rgb(255, 255, 255); | |
137 | +} | |
138 | + | |
139 | +.Success { | |
140 | + width: 110rpx; | |
141 | + height: 110rpx; | |
142 | + margin-top: 50rpx; | |
143 | + margin-bottom: 45rpx; | |
144 | +} | |
145 | + | |
146 | +.show_icon{ | |
147 | + width: 50%; | |
148 | + margin: 0 auto; | |
149 | + display: flex; justify-content: space-between; | |
150 | +} | |
151 | + | |
152 | +.icon_item{ | |
153 | + display: flex;align-items: center; justify-content: center; font-size: 26rpx; text-align: center; | |
154 | + width: 140rpx; height: 140rpx; border: 1rpx solid #eee; border-radius: 50%; line-height: 34rpx; | |
155 | +} | |
156 | + | |
157 | +.go_right::after{ | |
158 | + content: ''; | |
159 | + display: inline-block; | |
160 | + width: 20rpx; | |
161 | + height: 20rpx; | |
162 | + border-top:1rpx solid #999 ; | |
163 | + border-right: 1rpx solid #999; | |
164 | + transform: rotate(45deg); | |
165 | +} | |
166 | + | |
167 | +.show_pop_div{ | |
168 | + position: fixed; max-height:50%; left: 0;top:50%; transform: translateY(-50%); overflow-y: auto; | |
169 | + background-color: #fff; text-align: center; z-index: 100000; width: 100%; min-height: 300rpx; | |
170 | +} | |
171 | + | |
172 | +.show_pop_div .title{ | |
173 | + height: 100rpx; line-height: 100rpx; border-bottom: 1rpx solid #eee; font-size: 34rpx; | |
174 | +} | ... | ... |
packageB/pages/evaluate_list/evaluate_list.js
0 → 100644
1 | + var e = getApp(), | |
2 | + os = e.globalData.setting, | |
3 | + t = e.request, | |
4 | + d = e.globalData; | |
5 | +Page({ | |
6 | + /** | |
7 | + * 页面的初始数据 | |
8 | + */ | |
9 | + data: { | |
10 | + url: os.url, //接口网址 | |
11 | + iurl: os.imghost, | |
12 | + defimgurl: "/miniapp/images/no-head.jpg", | |
13 | + list:[], | |
14 | + }, | |
15 | + | |
16 | + //图片失败,默认图片 | |
17 | + bind_bnerr1: function (e) { | |
18 | + var th = this; | |
19 | + var _errImg = e.target.dataset.errorimg; | |
20 | + var _Img = e.target.dataset.img; | |
21 | + if (_Img != undefined) { | |
22 | + var _errObj = {}; | |
23 | + _errObj[_errImg] = "/miniapp/images/no-head.jpg"; | |
24 | + th.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ; | |
25 | + } | |
26 | + }, | |
27 | + | |
28 | + /** | |
29 | + * 生命周期函数--监听页面加载 | |
30 | + */ | |
31 | + onLoad: function(options) { | |
32 | + var th=this; | |
33 | + getApp().getConfig(function(e){ | |
34 | + th.setData({img:e.store_logo}); | |
35 | + }) | |
36 | + | |
37 | + var IsEvaluate=options.IsEvaluate?options.IsEvaluate:0; | |
38 | + this.setData({IsEvaluate:parseInt(IsEvaluate) }); | |
39 | + this.get_list(); | |
40 | + }, | |
41 | + | |
42 | + /** | |
43 | + * 生命周期函数--监听页面显示 | |
44 | + */ | |
45 | + onShow: function() { | |
46 | + | |
47 | + }, | |
48 | + | |
49 | + get_list:function(){ | |
50 | + var th=this; | |
51 | + var req={ | |
52 | + storeId:os.stoid, | |
53 | + VIPId:getApp().globalData.userInfo.erpvipid, | |
54 | + IsEvaluate:0 | |
55 | + } | |
56 | + if(parseInt(this.data.IsEvaluate)){ | |
57 | + req.IsEvaluate=1; | |
58 | + } | |
59 | + | |
60 | + var url="/api/weshop/evaluation/FormListNew/page"; //获取评价列表 | |
61 | + getApp().request.get(url,{ | |
62 | + data:req, | |
63 | + success:function(res){ | |
64 | + console.log(res); | |
65 | + th.setData({is_get:1}); | |
66 | + if(res.data.code==0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length>0){ | |
67 | + th.setData({list:res.data.data.pageData}); | |
68 | + } | |
69 | + }, | |
70 | + }) | |
71 | + }, | |
72 | + | |
73 | + go_evaluate(e){ | |
74 | + var idx=e.currentTarget.dataset.index; | |
75 | + var item=this.data.list[idx]; | |
76 | + var posno=item.PosNo; | |
77 | + getApp().goto("/packageB/pages/evaluate/evaluate?number="+posno); | |
78 | + }, | |
79 | + | |
80 | + //弹出显示商品详情 | |
81 | + show_pop:function(e){ | |
82 | + var idx=e.currentTarget.dataset.index; | |
83 | + var item=this.data.list[idx]; | |
84 | + var posno=item.PosNo; | |
85 | + var th=this; | |
86 | + //获取商品详情 | |
87 | + var url="/api/weshop/evaluation/Evaluatewares/page"; | |
88 | + getApp().request.get(url,{ | |
89 | + isShowLoading:true, | |
90 | + data:{storeId:os.stoid,POSNo:posno}, | |
91 | + success:function(res){ | |
92 | + if(res.data.code==0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length>0){ | |
93 | + th.setData({show_goods_list:res.data.data.pageData,sh_pop:1}); | |
94 | + } | |
95 | + } | |
96 | + }) | |
97 | + }, | |
98 | + | |
99 | + //关闭弹出 | |
100 | + close_pop:function(){ | |
101 | + this.setData({ | |
102 | + show_goods_list:null,sh_pop:0 | |
103 | + }) | |
104 | + } | |
105 | + | |
106 | + | |
107 | + | |
108 | + | |
109 | + | |
110 | +}) | |
0 | 111 | \ No newline at end of file | ... | ... |
packageB/pages/evaluate_list/evaluate_list.json
0 → 100644
packageB/pages/evaluate_list/evaluate_list.wxml
0 → 100644
1 | + | |
2 | +<block wx:if="{{list.length==0 && is_get}}"> | |
3 | + <view class="fs30" style="text-align: center;"> | |
4 | + <image mode="widthFix" style="width: 360rpx;" src="{{iurl}}/miniapp/images/user/nodistribut.png"></image> | |
5 | + <view style="margin-top: 30rpx;">暂无订单或未设置评价信息</view> | |
6 | + </view> | |
7 | +</block> | |
8 | +<block wx:else> | |
9 | + <view class="item flex fs26 ai-center" style="line-height: 34rpx;" wx:for="{{list}}"> | |
10 | + <view class="show_img" style="width: 26%; text-align: center;"> | |
11 | + <image class="logo" mode="aspectFit" src="{{iurl+img}}"></image> | |
12 | + </view> | |
13 | + <view style="width: 74%; padding-right: 6rpx;padding-left: 18rpx;"> | |
14 | + <view> | |
15 | + <view class="line_item flex ai-center fs28"> | |
16 | + <image style="width: 60rpx;" mode="widthFix" src="{{iurl}}/miniapp/images/evaluate/idcard.png"></image> | |
17 | + <image style="width: 30rpx; height: 30rpx; margin-left: 20rpx; margin-right: 10rpx;" src="{{iurl}}/miniapp/images/evaluate/starlit.png"></image>4.9 | |
18 | + </view> | |
19 | + <view class="line_item flex jc_sb ai-center" style="margin-top: 18rpx;"> | |
20 | + <view class="ellipsis-1" style="max-width: 90%;">{{item.WareName}}</view> | |
21 | + <view bindtap="show_pop" data-index="{{index}}" class="go_right"></view> | |
22 | + </view> | |
23 | + <view class="line_item flex jc_sb ai-center" style="margin-top: 14rpx;"> | |
24 | + <view class="fs24" style="color: #999;">消费时间:{{item.BillDate}}</view> | |
25 | + <view bindtap="go_evaluate" data-index="{{index}}" wx:if="{{IsEvaluate}}" class="btn">查看评价</view> | |
26 | + <view bindtap="go_evaluate" data-index="{{index}}" wx:else class="btn">去评价</view> | |
27 | + </view> | |
28 | + | |
29 | + </view> | |
30 | + </view> | |
31 | + </view> | |
32 | + | |
33 | + | |
34 | +</block> | |
35 | + | |
36 | + | |
37 | +<warn id="warn"></warn> | |
38 | +<!-- 显示商品列表 --> | |
39 | +<view hidden="{{!sh_pop}}"> | |
40 | + <view class="cover-layer" bindtap="close_pop"></view> | |
41 | + <view class="show_pop_div"> | |
42 | + <view class="title">商品详情</view> | |
43 | + <view style="padding: 0 20rpx;"> | |
44 | + <view class="flex jc_sb fs30" style="margin-top: 20rpx;" wx:for="{{show_goods_list}}"> | |
45 | + <view>{{item.WareName}}</view> | |
46 | + <view>{{item.Qty}}</view> | |
47 | + </view> | |
48 | + </view> | |
49 | + </view> | |
50 | +</view> | |
51 | + | ... | ... |
packageB/pages/evaluate_list/evaluate_list.wxss
0 → 100644
1 | +.item{ padding:10rpx 20rpx; border-bottom: 20rpx solid #ebeced} | |
2 | +.line_item{ height: 36rpx;} | |
3 | +.logo{ | |
4 | + width: 160rpx; height: 160rpx; border-radius: 50%; border: 1rpx solid #eee; | |
5 | +} | |
6 | +.go_right{position: relative;top:-10rpx;right: 10rpx;} | |
7 | +.go_right::after{ | |
8 | + content: ''; | |
9 | + display: inline-block; | |
10 | + width: 20rpx; | |
11 | + height: 20rpx; | |
12 | + border-top:1rpx solid #333 ; | |
13 | + border-right: 1rpx solid #333; | |
14 | + transform: rotate(45deg); | |
15 | +} | |
16 | +.btn{ | |
17 | + padding: 10rpx 16rpx; border: 1rpx solid #c4182e; color: #c4182e; border-radius: 8rpx; | |
18 | +} | |
19 | + | |
20 | + | |
21 | +.show_pop_div{ | |
22 | + width: 96%; margin-left: 2%; position: fixed; max-height:50%; left: 0;top:50%; transform: translateY(-50%); overflow-y: auto; | |
23 | + background-color: #fff; text-align: center; z-index: 100000; min-height: 300rpx; | |
24 | +} | |
25 | + | |
26 | +.show_pop_div .title{ | |
27 | + height: 100rpx; line-height: 100rpx; border-bottom: 1rpx solid #eee; font-size: 34rpx; | |
28 | +} | ... | ... |