create-weapp-vite 2.0.31 → 2.0.32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (175) hide show
  1. package/README.md +1 -0
  2. package/dist/{chunk-FGMHC2DJ.js → chunk-IT75MAH3.js} +3 -2
  3. package/dist/cli.js +5 -1
  4. package/dist/index.d.ts +1 -0
  5. package/dist/index.js +1 -1
  6. package/package.json +1 -1
  7. package/templates/wevu-retail/.editorconfig +9 -0
  8. package/templates/wevu-retail/.vscode/settings.json +10 -0
  9. package/templates/wevu-retail/AGENTS.md +35 -0
  10. package/templates/wevu-retail/README.md +26 -0
  11. package/templates/wevu-retail/auto-import-components.json +1 -0
  12. package/templates/wevu-retail/gitignore +35 -0
  13. package/templates/wevu-retail/package.json +42 -0
  14. package/templates/wevu-retail/postcss.config.js +6 -0
  15. package/templates/wevu-retail/project.config.json +44 -0
  16. package/templates/wevu-retail/project.private.config.json +8 -0
  17. package/templates/wevu-retail/src/app.vue +104 -0
  18. package/templates/wevu-retail/src/common/updateManager.ts +29 -0
  19. package/templates/wevu-retail/src/components/filter/index.vue +134 -0
  20. package/templates/wevu-retail/src/components/filter-popup/index.vue +67 -0
  21. package/templates/wevu-retail/src/components/goods-card/index.vue +219 -0
  22. package/templates/wevu-retail/src/components/goods-list/index.vue +91 -0
  23. package/templates/wevu-retail/src/components/load-more/index.vue +99 -0
  24. package/templates/wevu-retail/src/components/loading-content/index.vue +48 -0
  25. package/templates/wevu-retail/src/components/price/index.vue +104 -0
  26. package/templates/wevu-retail/src/components/promotion/ui-coupon-card/index.vue +143 -0
  27. package/templates/wevu-retail/src/components/promotion/ui-coupon-card/tools.wxs +18 -0
  28. package/templates/wevu-retail/src/components/swipeout/index.vue +118 -0
  29. package/templates/wevu-retail/src/components/swipeout/swipe.wxs +151 -0
  30. package/templates/wevu-retail/src/components/webp-image/index.vue +105 -0
  31. package/templates/wevu-retail/src/components/webp-image/utils.wxs +140 -0
  32. package/templates/wevu-retail/src/config/index.ts +20437 -0
  33. package/templates/wevu-retail/src/custom-tab-bar/data.ts +22 -0
  34. package/templates/wevu-retail/src/custom-tab-bar/index.vue +62 -0
  35. package/templates/wevu-retail/src/model/activities.ts +7 -0
  36. package/templates/wevu-retail/src/model/activity.ts +18 -0
  37. package/templates/wevu-retail/src/model/address.ts +31 -0
  38. package/templates/wevu-retail/src/model/cart.ts +306 -0
  39. package/templates/wevu-retail/src/model/category.ts +175 -0
  40. package/templates/wevu-retail/src/model/comments/queryDetail.ts +50 -0
  41. package/templates/wevu-retail/src/model/comments.ts +298 -0
  42. package/templates/wevu-retail/src/model/coupon.ts +39 -0
  43. package/templates/wevu-retail/src/model/detailsComments.ts +30 -0
  44. package/templates/wevu-retail/src/model/good.ts +1904 -0
  45. package/templates/wevu-retail/src/model/goods.ts +7 -0
  46. package/templates/wevu-retail/src/model/order/applyService.ts +329 -0
  47. package/templates/wevu-retail/src/model/order/orderConfirm.ts +147 -0
  48. package/templates/wevu-retail/src/model/order/orderDetail.ts +1191 -0
  49. package/templates/wevu-retail/src/model/order/orderList.ts +1033 -0
  50. package/templates/wevu-retail/src/model/promotion.ts +20 -0
  51. package/templates/wevu-retail/src/model/search.ts +60 -0
  52. package/templates/wevu-retail/src/model/submitComment.ts +58 -0
  53. package/templates/wevu-retail/src/model/swiper.ts +39 -0
  54. package/templates/wevu-retail/src/model/usercenter.ts +52 -0
  55. package/templates/wevu-retail/src/pages/cart/components/cart-bar/index.vue +104 -0
  56. package/templates/wevu-retail/src/pages/cart/components/cart-empty/index.vue +41 -0
  57. package/templates/wevu-retail/src/pages/cart/components/cart-group/index.vue +333 -0
  58. package/templates/wevu-retail/src/pages/cart/components/cart-group/index.wxs +5 -0
  59. package/templates/wevu-retail/src/pages/cart/components/cart-group/utils.wxs +20 -0
  60. package/templates/wevu-retail/src/pages/cart/components/goods-card/index.vue +334 -0
  61. package/templates/wevu-retail/src/pages/cart/components/specs-popup/index.vue +100 -0
  62. package/templates/wevu-retail/src/pages/cart/index.vue +342 -0
  63. package/templates/wevu-retail/src/pages/category/components/goods-category/components/c-sidebar/README.md +95 -0
  64. package/templates/wevu-retail/src/pages/category/components/goods-category/components/c-sidebar/c-sidebar-item/index.vue +73 -0
  65. package/templates/wevu-retail/src/pages/category/components/goods-category/components/c-sidebar/index.vue +121 -0
  66. package/templates/wevu-retail/src/pages/category/components/goods-category/components/c-tabbar/c-tabbar-more/index.vue +74 -0
  67. package/templates/wevu-retail/src/pages/category/components/goods-category/components/c-tabbar/index.vue +102 -0
  68. package/templates/wevu-retail/src/pages/category/components/goods-category/index.vue +137 -0
  69. package/templates/wevu-retail/src/pages/category/index.vue +50 -0
  70. package/templates/wevu-retail/src/pages/coupon/components/coupon-card/index.vue +95 -0
  71. package/templates/wevu-retail/src/pages/coupon/components/floating-button/index.vue +44 -0
  72. package/templates/wevu-retail/src/pages/coupon/coupon-activity-goods/index.vue +135 -0
  73. package/templates/wevu-retail/src/pages/coupon/coupon-detail/index.vue +94 -0
  74. package/templates/wevu-retail/src/pages/coupon/coupon-list/index.vue +136 -0
  75. package/templates/wevu-retail/src/pages/goods/comments/components/comments-card/components/images-videos/assets/play.png +0 -0
  76. package/templates/wevu-retail/src/pages/goods/comments/components/comments-card/components/images-videos/index.vue +65 -0
  77. package/templates/wevu-retail/src/pages/goods/comments/components/comments-card/components/my-video/index.vue +92 -0
  78. package/templates/wevu-retail/src/pages/goods/comments/components/comments-card/index.vue +93 -0
  79. package/templates/wevu-retail/src/pages/goods/comments/create/index.vue +196 -0
  80. package/templates/wevu-retail/src/pages/goods/comments/index.vue +293 -0
  81. package/templates/wevu-retail/src/pages/goods/details/components/buy-bar/index.vue +117 -0
  82. package/templates/wevu-retail/src/pages/goods/details/components/goods-specs-popup/index.vue +440 -0
  83. package/templates/wevu-retail/src/pages/goods/details/components/promotion-popup/index.vue +83 -0
  84. package/templates/wevu-retail/src/pages/goods/details/index.vue +598 -0
  85. package/templates/wevu-retail/src/pages/goods/list/index.vue +299 -0
  86. package/templates/wevu-retail/src/pages/goods/result/index.vue +350 -0
  87. package/templates/wevu-retail/src/pages/goods/search/index.vue +196 -0
  88. package/templates/wevu-retail/src/pages/home/home.vue +215 -0
  89. package/templates/wevu-retail/src/pages/home/readme +8 -0
  90. package/templates/wevu-retail/src/pages/order/after-service-detail/api.ts +34 -0
  91. package/templates/wevu-retail/src/pages/order/after-service-detail/index.vue +430 -0
  92. package/templates/wevu-retail/src/pages/order/after-service-list/api.ts +1262 -0
  93. package/templates/wevu-retail/src/pages/order/after-service-list/index.vue +299 -0
  94. package/templates/wevu-retail/src/pages/order/apply-service/index.vue +665 -0
  95. package/templates/wevu-retail/src/pages/order/components/after-service-button-bar/index.vue +142 -0
  96. package/templates/wevu-retail/src/pages/order/components/customer-service/index.vue +75 -0
  97. package/templates/wevu-retail/src/pages/order/components/goods-card/index.vue +356 -0
  98. package/templates/wevu-retail/src/pages/order/components/noGoods/noGood.wxs +17 -0
  99. package/templates/wevu-retail/src/pages/order/components/noGoods/noGoods.vue +125 -0
  100. package/templates/wevu-retail/src/pages/order/components/order-button-bar/index.vue +262 -0
  101. package/templates/wevu-retail/src/pages/order/components/order-card/index.vue +126 -0
  102. package/templates/wevu-retail/src/pages/order/components/order-goods-card/index.vue +86 -0
  103. package/templates/wevu-retail/src/pages/order/components/reason-sheet/index.vue +161 -0
  104. package/templates/wevu-retail/src/pages/order/components/reason-sheet/reasonSheet.ts +25 -0
  105. package/templates/wevu-retail/src/pages/order/components/selectCoupons/mock.ts +22 -0
  106. package/templates/wevu-retail/src/pages/order/components/selectCoupons/selectCoupon.wxs +16 -0
  107. package/templates/wevu-retail/src/pages/order/components/selectCoupons/selectCoupons.vue +207 -0
  108. package/templates/wevu-retail/src/pages/order/components/specs-goods-card/index.vue +185 -0
  109. package/templates/wevu-retail/src/pages/order/config.ts +94 -0
  110. package/templates/wevu-retail/src/pages/order/delivery-detail/index.vue +145 -0
  111. package/templates/wevu-retail/src/pages/order/delivery-detail/isUrl.wxs +7 -0
  112. package/templates/wevu-retail/src/pages/order/fill-tracking-no/api.ts +71 -0
  113. package/templates/wevu-retail/src/pages/order/fill-tracking-no/index.vue +267 -0
  114. package/templates/wevu-retail/src/pages/order/invoice/index.vue +94 -0
  115. package/templates/wevu-retail/src/pages/order/order-confirm/components/address-card/index.vue +78 -0
  116. package/templates/wevu-retail/src/pages/order/order-confirm/getNotes.wxs +11 -0
  117. package/templates/wevu-retail/src/pages/order/order-confirm/handleInvoice.wxs +11 -0
  118. package/templates/wevu-retail/src/pages/order/order-confirm/index.vue +707 -0
  119. package/templates/wevu-retail/src/pages/order/order-confirm/order.wxs +8 -0
  120. package/templates/wevu-retail/src/pages/order/order-confirm/pay.ts +115 -0
  121. package/templates/wevu-retail/src/pages/order/order-detail/index.vue +456 -0
  122. package/templates/wevu-retail/src/pages/order/order-list/index.vue +288 -0
  123. package/templates/wevu-retail/src/pages/order/pay-result/index.vue +77 -0
  124. package/templates/wevu-retail/src/pages/order/receipt/index.vue +336 -0
  125. package/templates/wevu-retail/src/pages/promotion/promotion-detail/index.vue +145 -0
  126. package/templates/wevu-retail/src/pages/user/address/edit/index.vue +514 -0
  127. package/templates/wevu-retail/src/pages/user/address/list/index.vue +249 -0
  128. package/templates/wevu-retail/src/pages/user/components/t-location/index.vue +156 -0
  129. package/templates/wevu-retail/src/pages/user/components/ui-address-item/index.vue +92 -0
  130. package/templates/wevu-retail/src/pages/user/name-edit/index.vue +49 -0
  131. package/templates/wevu-retail/src/pages/user/person-info/index.vue +198 -0
  132. package/templates/wevu-retail/src/pages/usercenter/address/edit/util.ts +33 -0
  133. package/templates/wevu-retail/src/pages/usercenter/components/order-group/index.vue +90 -0
  134. package/templates/wevu-retail/src/pages/usercenter/components/ui-select-picker/index.vue +108 -0
  135. package/templates/wevu-retail/src/pages/usercenter/components/user-center-card/index.vue +82 -0
  136. package/templates/wevu-retail/src/pages/usercenter/index.vue +301 -0
  137. package/templates/wevu-retail/src/services/_utils/delay.ts +3 -0
  138. package/templates/wevu-retail/src/services/_utils/timeout.ts +3 -0
  139. package/templates/wevu-retail/src/services/activity/fetchActivity.ts +20 -0
  140. package/templates/wevu-retail/src/services/activity/fetchActivityList.ts +20 -0
  141. package/templates/wevu-retail/src/services/address/edit.ts +33 -0
  142. package/templates/wevu-retail/src/services/address/fetchAddress.ts +48 -0
  143. package/templates/wevu-retail/src/services/address/list.ts +31 -0
  144. package/templates/wevu-retail/src/services/cart/cart.ts +20 -0
  145. package/templates/wevu-retail/src/services/comments/fetchComments.ts +18 -0
  146. package/templates/wevu-retail/src/services/comments/fetchCommentsCount.ts +18 -0
  147. package/templates/wevu-retail/src/services/coupon/index.ts +65 -0
  148. package/templates/wevu-retail/src/services/good/comments/fetchCommentDetail.ts +20 -0
  149. package/templates/wevu-retail/src/services/good/fetchCategoryList.ts +18 -0
  150. package/templates/wevu-retail/src/services/good/fetchGood.ts +18 -0
  151. package/templates/wevu-retail/src/services/good/fetchGoods.ts +29 -0
  152. package/templates/wevu-retail/src/services/good/fetchGoodsDetailsComments.ts +37 -0
  153. package/templates/wevu-retail/src/services/good/fetchGoodsList.ts +39 -0
  154. package/templates/wevu-retail/src/services/good/fetchSearchHistory.ts +35 -0
  155. package/templates/wevu-retail/src/services/good/fetchSearchResult.ts +38 -0
  156. package/templates/wevu-retail/src/services/home/home.ts +53 -0
  157. package/templates/wevu-retail/src/services/order/applyService.ts +70 -0
  158. package/templates/wevu-retail/src/services/order/orderConfirm.ts +69 -0
  159. package/templates/wevu-retail/src/services/order/orderDetail.ts +39 -0
  160. package/templates/wevu-retail/src/services/order/orderList.ts +39 -0
  161. package/templates/wevu-retail/src/services/order/orderSubmitComment.ts +22 -0
  162. package/templates/wevu-retail/src/services/promotion/detail.ts +18 -0
  163. package/templates/wevu-retail/src/services/usercenter/fetchPerson.ts +28 -0
  164. package/templates/wevu-retail/src/services/usercenter/fetchUsercenter.ts +18 -0
  165. package/templates/wevu-retail/src/sitemap.json +7 -0
  166. package/templates/wevu-retail/src/utils/addressParse.ts +25 -0
  167. package/templates/wevu-retail/src/utils/getPermission.ts +45 -0
  168. package/templates/wevu-retail/src/utils/mock.ts +51 -0
  169. package/templates/wevu-retail/src/utils/util.ts +134 -0
  170. package/templates/wevu-retail/src/vite-env.d.ts +1 -0
  171. package/templates/wevu-retail/tailwind.config.ts +15 -0
  172. package/templates/wevu-retail/tsconfig.app.json +58 -0
  173. package/templates/wevu-retail/tsconfig.json +11 -0
  174. package/templates/wevu-retail/tsconfig.node.json +33 -0
  175. package/templates/wevu-retail/vite.config.ts +14 -0
@@ -0,0 +1,430 @@
1
+ <script lang="ts">
2
+ import Toast from 'tdesign-miniprogram/toast/index';
3
+ import { ServiceType, ServiceTypeDesc, ServiceStatus } from '../config';
4
+ import { formatTime, getRightsDetail } from './api';
5
+
6
+ const TitleConfig = {
7
+ [ServiceType.ORDER_CANCEL]: '退款详情',
8
+ [ServiceType.ONLY_REFUND]: '退款详情',
9
+ [ServiceType.RETURN_GOODS]: '退货退款详情',
10
+ };
11
+
12
+ Page({
13
+ data: {
14
+ pageLoading: true,
15
+ serviceRaw: {},
16
+ service: {},
17
+ deliveryButton: {},
18
+ gallery: {
19
+ current: 0,
20
+ show: false,
21
+ proofs: [],
22
+ },
23
+ showProofs: false,
24
+ backRefresh: false,
25
+ },
26
+
27
+ onLoad(query) {
28
+ this.rightsNo = query.rightsNo;
29
+ this.inputDialog = this.selectComponent('#input-dialog');
30
+ this.init();
31
+ },
32
+
33
+ onShow() {
34
+ // 当从其他页面返回,并且 backRefresh 被置为 true 时,刷新数据
35
+ if (!this.data.backRefresh) return;
36
+ this.init();
37
+ this.setData({ backRefresh: false });
38
+ },
39
+
40
+ // 页面刷新,展示下拉刷新
41
+ onPullDownRefresh_(e) {
42
+ const { callback } = e.detail;
43
+ return this.getService().then(() => callback && callback());
44
+ },
45
+
46
+ init() {
47
+ this.setData({ pageLoading: true });
48
+ this.getService().then(() => {
49
+ this.setData({ pageLoading: false });
50
+ });
51
+ },
52
+
53
+ getService() {
54
+ const params = { rightsNo: this.rightsNo };
55
+ return getRightsDetail(params).then((res) => {
56
+ const serviceRaw = res.data[0];
57
+ // 滤掉填写运单号、修改运单号按钮,这两个按钮特殊处理,不在底部按钮栏展示
58
+ if (!serviceRaw.buttonVOs) serviceRaw.buttonVOs = [];
59
+ const deliveryButton = {};
60
+ const service = {
61
+ id: serviceRaw.rights.rightsNo,
62
+ serviceNo: serviceRaw.rights.rightsNo,
63
+ storeName: serviceRaw.rights.storeName,
64
+ type: serviceRaw.rights.rightsType,
65
+ typeDesc: ServiceTypeDesc[serviceRaw.rights.rightsType],
66
+ status: serviceRaw.rights.rightsStatus,
67
+ statusIcon: this.genStatusIcon(serviceRaw.rights),
68
+ statusName: serviceRaw.rights.userRightsStatusName,
69
+ statusDesc: serviceRaw.rights.userRightsStatusDesc,
70
+ amount: serviceRaw.rights.refundRequestAmount,
71
+ goodsList: (serviceRaw.rightsItem || []).map((item, i) => ({
72
+ id: i,
73
+ thumb: item.goodsPictureUrl,
74
+ title: item.goodsName,
75
+ specs: (item.specInfo || []).map((s) => s.specValues || ''),
76
+ itemRefundAmount: item.itemRefundAmount,
77
+ rightsQuantity: item.rightsQuantity,
78
+ })),
79
+ orderNo: serviceRaw.rights.orderNo, // 订单编号
80
+ rightsNo: serviceRaw.rights.rightsNo, // 售后服务单号
81
+ rightsReasonDesc: serviceRaw.rights.rightsReasonDesc, // 申请售后原因
82
+ isRefunded: serviceRaw.rights.userRightsStatus === ServiceStatus.REFUNDED, // 是否已退款
83
+ refundMethodList: (serviceRaw.refundMethodList || []).map((m) => ({
84
+ name: m.refundMethodName,
85
+ amount: m.refundMethodAmount,
86
+ })), // 退款明细
87
+ refundRequestAmount: serviceRaw.rights.refundRequestAmount, // 申请退款金额
88
+ payTraceNo: serviceRaw.rightsRefund.traceNo, // 交易流水号
89
+ createTime: formatTime(parseFloat(`${serviceRaw.rights.createTime}`), 'YYYY-MM-DD HH:mm'), // 申请时间
90
+ logisticsNo: serviceRaw.logisticsVO.logisticsNo, // 退货物流单号
91
+ logisticsCompanyName: serviceRaw.logisticsVO.logisticsCompanyName, // 退货物流公司
92
+ logisticsCompanyCode: serviceRaw.logisticsVO.logisticsCompanyCode, // 退货物流公司
93
+ remark: serviceRaw.logisticsVO.remark, // 退货备注
94
+ receiverName: serviceRaw.logisticsVO.receiverName, // 收货人
95
+ receiverPhone: serviceRaw.logisticsVO.receiverPhone, // 收货人电话
96
+ receiverAddress: this.composeAddress(serviceRaw), // 收货人地址
97
+ applyRemark: serviceRaw.rightsRefund.refundDesc, // 申请退款时的填写的说明
98
+ buttons: serviceRaw.buttonVOs || [],
99
+ logistics: serviceRaw.logisticsVO,
100
+ };
101
+ const proofs = serviceRaw.rights.rightsImageUrls || [];
102
+ this.setData({
103
+ serviceRaw,
104
+ service,
105
+ deliveryButton,
106
+ 'gallery.proofs': proofs,
107
+ showProofs:
108
+ serviceRaw.rights.userRightsStatus === ServiceStatus.PENDING_VERIFY &&
109
+ (service.applyRemark || proofs.length > 0),
110
+ });
111
+ wx.setNavigationBarTitle({
112
+ title: TitleConfig[service.type],
113
+ });
114
+ });
115
+ },
116
+
117
+ composeAddress(service) {
118
+ return [
119
+ service.logisticsVO.receiverProvince,
120
+ service.logisticsVO.receiverCity,
121
+ service.logisticsVO.receiverCountry,
122
+ service.logisticsVO.receiverArea,
123
+ service.logisticsVO.receiverAddress,
124
+ ]
125
+ .filter((item) => !!item)
126
+ .join(' ');
127
+ },
128
+
129
+ onRefresh() {
130
+ this.init();
131
+ },
132
+
133
+ editLogistices() {
134
+ this.setData({
135
+ inputDialogVisible: true,
136
+ });
137
+ this.inputDialog.setData({
138
+ cancelBtn: '取消',
139
+ confirmBtn: '确定',
140
+ });
141
+ this.inputDialog._onConfirm = () => {
142
+ Toast({
143
+ message: '确定填写物流单号',
144
+ });
145
+ };
146
+ },
147
+
148
+ onProofTap(e) {
149
+ if (this.data.gallery.show) {
150
+ this.setData({
151
+ 'gallery.show': false,
152
+ });
153
+ return;
154
+ }
155
+ const { index } = e.currentTarget.dataset;
156
+ this.setData({
157
+ 'gallery.show': true,
158
+ 'gallery.current': index,
159
+ });
160
+ },
161
+
162
+ onGoodsCardTap(e) {
163
+ const { index } = e.currentTarget.dataset;
164
+ const goods = this.data.serviceRaw.rightsItem[index];
165
+ wx.navigateTo({ url: `/pages/goods/details/index?skuId=${goods.skuId}` });
166
+ },
167
+
168
+ onServiceNoCopy() {
169
+ wx.setClipboardData({
170
+ data: this.data.service.serviceNo,
171
+ });
172
+ },
173
+
174
+ onAddressCopy() {
175
+ wx.setClipboardData({
176
+ data: `${this.data.service.receiverName} ${this.data.service.receiverPhone}\n${this.data.service.receiverAddress}`,
177
+ });
178
+ },
179
+
180
+ /** 获取状态ICON */
181
+ genStatusIcon(item) {
182
+ const { userRightsStatus, afterSaleRequireType } = item;
183
+ switch (userRightsStatus) {
184
+ // 退款成功
185
+ case ServiceStatus.REFUNDED: {
186
+ return 'succeed';
187
+ }
188
+ // 已取消、已关闭
189
+ case ServiceStatus.CLOSED: {
190
+ return 'indent_close';
191
+ }
192
+ default: {
193
+ switch (afterSaleRequireType) {
194
+ case 'REFUND_MONEY': {
195
+ return 'goods_refund';
196
+ }
197
+ case 'REFUND_GOODS_MONEY':
198
+ return 'goods_return';
199
+ default: {
200
+ return 'goods_return';
201
+ }
202
+ }
203
+ }
204
+ }
205
+ },
206
+ });
207
+ </script>
208
+
209
+ <template>
210
+ <wr-loading-content position="fixed" type="spinner" wx:if="{{pageLoading}}" />
211
+ <view class="page-container [&_.wr-goods-card__specs]:[margin:14rpx_20rpx_0_0] [&_.order-card_.header_.store-name]:[-webkit-line-clamp:1] [&_.order-card_.header_.store-name]:[display:-webkit-box] [&_.order-card_.header_.store-name]:[-webkit-box-orient:vertical] [&_.order-card_.header_.store-name]:[overflow:hidden] [&_.order-card_.header_.store-name]:[width:80%] [&_.status-desc]:[box-sizing:border-box] [&_.status-desc]:[padding:22rpx_20rpx] [&_.status-desc]:[font-size:26rpx] [&_.status-desc]:[line-height:1.3] [&_.status-desc]:[text-align:left] [&_.status-desc]:[color:#333333] [&_.status-desc]:[background-color:#f5f5f5] [&_.status-desc]:[border-radius:8rpx] [&_.status-desc]:[word-wrap:break-word] [&_.status-desc]:[margin-top:40rpx] [&_.status-desc]:[margin-bottom:20rpx] [&_.header__right]:[font-size:24rpx] [&_.header__right]:[color:#333333] [&_.header__right]:[display:flex] [&_.header__right]:[align-items:center] [&_.header__right__icon]:[color:#d05b27] [&_.header__right__icon]:[font-size:16px] [&_.header__right__icon]:[margin-right:10rpx] [&_.wr-goods-card__thumb]:[width:140rpx] [&_.page-background]:[position:absolute] [&_.page-background]:[z-index:-1] [&_.page-background]:[top:0] [&_.page-background]:[left:0] [&_.page-background]:[width:100vw] [&_.page-background]:[color:#fff] [&_.page-background]:[overflow:hidden] [&_.page-background-img]:[width:100%] [&_.page-background-img]:[height:320rpx] [&_.navbar-bg_.nav-back]:[background:linear-gradient(to_right,_rgba(250,_85,_15,_1)_0%,_rgba(250,_85,_15,_0.6)_100%)] [&_.navbar-bg_.page-background]:[background:linear-gradient(to_right,_rgba(250,_85,_15,_1)_0%,_rgba(250,_85,_15,_0.6)_100%)] [&_.navigation-bar__btn]:[font-size:40rpx] [&_.navigation-bar__btn]:[font-weight:bold] [&_.navigation-bar__btn]:[color:#333] [&_.navigation-bar__inner_.navigation-bar__left]:[padding-left:16rpx]">
212
+ <t-pull-down-refresh id="t-pull-down-refresh" bind:refresh="onPullDownRefresh_" t-class-indicator="t-class-indicator">
213
+ <!-- 页面内容 -->
214
+ <view class="service-detail safe-bottom [position:relative] [padding-bottom:env(safe-area-inset-bottom)] [&_.wr-goods-card__body]:[margin-left:50rpx] [&_.order-goods-card-footer_.order-goods-card-footer-price-class]:[font-size:36rpx] [&_.order-goods-card-footer_.order-goods-card-footer-price-class]:[color:#333] [&_.order-goods-card-footer_.order-goods-card-footer-price-class]:[font-family:DIN_Alternate] [&_.order-goods-card-footer_.order-goods-card-footer-price-decimal]:[font-size:28rpx] [&_.order-goods-card-footer_.order-goods-card-footer-price-decimal]:[color:#333] [&_.order-goods-card-footer_.order-goods-card-footer-price-decimal]:[font-family:DIN_Alternate] [&_.order-goods-card-footer_.order-goods-card-footer-price-symbol]:[color:#333] [&_.order-goods-card-footer_.order-goods-card-footer-price-symbol]:[font-size:24rpx] [&_.order-goods-card-footer_.order-goods-card-footer-price-symbol]:[font-family:DIN_Alternate] [&_.service-detail__header]:[padding:60rpx_0_48rpx_40rpx] [&_.service-detail__header]:[box-sizing:border-box] [&_.service-detail__header]:[height:220rpx] [&_.service-detail__header]:[background-color:#fff] [&_.service-detail__header_.title]:[overflow:hidden] [&_.service-detail__header_.title]:[display:-webkit-box] [&_.service-detail__header_.title]:[-webkit-box-orient:vertical] [&_.service-detail__header_.desc]:[overflow:hidden] [&_.service-detail__header_.desc]:[display:-webkit-box] [&_.service-detail__header_.desc]:[-webkit-box-orient:vertical] [&_.service-detail__header_.title]:[-webkit-line-clamp:1] [&_.service-detail__header_.title]:[font-size:48rpx] [&_.service-detail__header_.title]:[font-weight:bold] [&_.service-detail__header_.title]:[color:#333] [&_.service-detail__header_.title]:[display:flex] [&_.service-detail__header_.desc]:[-webkit-line-clamp:2] [&_.service-detail__header_.desc]:[margin-top:10rpx] [&_.service-detail__header_.desc]:[font-size:28rpx] [&_.service-detail__header_.desc]:[color:#999] [&_.service-detail__header_.desc_.count-down]:[color:#fff185] [&_.service-detail__header_.desc_.count-down]:[display:inline] [&_.service-section]:[margin:20rpx_0_20rpx_0] [&_.service-section]:[width:auto] [&_.service-section]:[border-radius:8rpx] [&_.service-section]:[background-color:white] [&_.service-section]:[overflow:hidden] [&_.service-section__title]:[color:#333333] [&_.service-section__title]:[margin-bottom:10rpx] [&_.service-section__title]:[padding-bottom:18rpx] [&_.service-section__title]:[height:224rpx] [&_.service-section__title]:[position:relative] [&_.service-section__title_.icon]:[margin-right:16rpx] [&_.service-section__title_.icon]:[font-size:40rpx] [&_.service-section__title_.right]:[flex:none] [&_.service-section__title_.right]:[font-weight:normal] [&_.service-section__title_.right]:[font-size:26rpx] [&_.section-content]:[margin:16rpx_0_0_52rpx] [&_.main]:[font-size:28rpx] [&_.main]:[color:#222427] [&_.main]:[font-weight:bold] [&_.main_.phone-num]:[margin-left:16rpx] [&_.main_.phone-num]:[display:inline] [&_.label]:[color:#999999] [&_.label]:[font-size:26rpx] [&_.custom-remark]:[font-size:26rpx] [&_.custom-remark]:[line-height:36rpx] [&_.custom-remark]:[color:#333333] [&_.custom-remark]:[word-wrap:break-word] [&_.proofs]:[margin-top:20rpx] [&_.proofs_.proof]:[width:100%] [&_.proofs_.proof]:[height:100%] [&_.proofs_.proof]:[background-color:#f9f9f9] [&_.pay-result_.t-cell-title]:[color:#666666] [&_.pay-result_.t-cell-title]:[font-size:28rpx] [&_.pay-result_.t-cell-value]:[color:#666666] [&_.pay-result_.t-cell-value]:[font-size:28rpx] [&_.pay-result_.wr-cell__value]:[font-weight:bold] [&_.right]:[font-size:36rpx] [&_.right]:[color:#fa550f] [&_.right]:[font-weight:bold] [&_.title]:[font-weight:bold] [&_.pay-result_.service-section__title_.right_.integer]:[font-size:48rpx] [&_.pay-result_.split-line]:[position:relative] [&_.pay-result_.section-content]:[margin-left:0] [&_.pay-result_.section-content_.label]:[color:#999999] [&_.pay-result_.section-content_.label]:[font-size:24rpx] [&_.footer-bar-wrapper]:[height:100rpx] [&_.footer-bar-wrapper_.footer-bar]:[position:fixed] [&_.footer-bar-wrapper_.footer-bar]:[left:0] [&_.footer-bar-wrapper_.footer-bar]:[bottom:0] [&_.footer-bar-wrapper_.footer-bar]:[height:100rpx] [&_.footer-bar-wrapper_.footer-bar]:[width:100vw] [&_.footer-bar-wrapper_.footer-bar]:[box-sizing:border-box] [&_.footer-bar-wrapper_.footer-bar]:[padding:0_20rpx] [&_.footer-bar-wrapper_.footer-bar]:[background-color:white] [&_.footer-bar-wrapper_.footer-bar]:[display:flex] [&_.footer-bar-wrapper_.footer-bar]:[justify-content:space-between] [&_.footer-bar-wrapper_.footer-bar]:[align-items:center] [&_.text-btn]:[display:inline] [&_.text-btn]:[box-sizing:border-box] [&_.text-btn]:[color:#333] [&_.text-btn]:[border:2rpx_solid_#ddd] [&_.text-btn]:[border-radius:32rpx] [&_.text-btn]:[margin-left:10rpx] [&_.text-btn]:[padding:0_16rpx] [&_.text-btn]:[font-weight:normal] [&_.text-btn]:[font-size:24rpx] [&_.text-btn]:[line-height:32rpx] [&_.text-btn--active]:[opacity:0.5] [&_.specs-popup_.bottom-btn]:[color:#fa550f] [&_.logistics]:[padding-top:0] [&_.logistics]:[padding-bottom:0] [&_.logistics]:[padding-right:0] [&_.goods-refund-address]:[padding-top:0] [&_.goods-refund-address]:[padding-bottom:0] [&_.goods-refund-address_.goods-refund-address-copy-btn]:[position:absolute] [&_.goods-refund-address_.goods-refund-address-copy-btn]:[top:22rpx] [&_.goods-refund-address_.goods-refund-address-copy-btn]:[right:32rpx] [&_.service-goods-card-wrap]:[padding:0_32rpx]">
215
+ <!-- 状态及描述 -->
216
+ <view class="service-detail__header">
217
+ <view class="title">
218
+ <t-icon prefix="wr" name="{{service.statusIcon}}" size="30px" />
219
+ {{service.statusName}}
220
+ </view>
221
+ <view class="desc"> {{service.statusDesc}} </view>
222
+ </view>
223
+ <!-- 退款金额 -->
224
+ <view class="service-section__pay pay-result [margin:0_0_20rpx_0] [width:auto] [border-radius:8rpx] [background-color:white] [overflow:hidden] [&_.credential_desc]:[padding:0_24rpx] [&_.t-grid-item__content]:[padding:0_0_24rpx]" wx:if="{{service.isRefunded}}">
225
+ <t-cell
226
+ t-class-title="title"
227
+ t-class-note="right"
228
+ t-class="t-class-wrapper-first-child ![padding:24rpx]"
229
+ title="{{service.isRefunded ? '退款金额' : '预计退款金额'}}"
230
+ bordered="{{false}}"
231
+ >
232
+ <wr-price slot="note" price="{{service.refundRequestAmount}}" fill />
233
+ </t-cell>
234
+ <t-cell
235
+ wx:for="{{service.refundMethodList}}"
236
+ wx:key="name"
237
+ wx:for-index="index"
238
+ wx:for-item="item"
239
+ t-class-title="t-cell-title"
240
+ t-class-note="t-cell-title"
241
+ t-class="t-class-wrapper ![padding:10rpx_24rpx]"
242
+ title="{{item.name}}"
243
+ bordered="{{service.refundMethodList.length - 1 === index ? true : false}}"
244
+ >
245
+ <wr-price slot="note" price="{{item.amount}}" fill />
246
+ </t-cell>
247
+ <block wx:if="{{service.isRefunded}}">
248
+ <t-cell
249
+ title=""
250
+ t-class="t-class-wrapper-first-child ![padding:24rpx]"
251
+ t-class-description="label"
252
+ description="说明:微信退款后,可以在微信支付账单查询,实际退款到时间可能受到银行处理时间的影响有一定延时,可以稍后查看"
253
+ />
254
+ </block>
255
+ </view>
256
+ <!-- 物流 -->
257
+ <view class="service-section logistics" wx:if="{{service.logisticsNo}}">
258
+ <view class="service-section__title">
259
+ <t-cell
260
+ align="top"
261
+ title="{{service.logisticsCompanyName + ' ' + service.logisticsNo}}"
262
+ bordered="{{false}}"
263
+ description="买家已寄出"
264
+ arrow
265
+ >
266
+ <t-icon prefix="wr" color="#333333" name="deliver" size="40rpx" slot="left-icon" />
267
+ </t-cell>
268
+ <view style="padding: 0 32rpx">
269
+ <wr-after-service-button-bar service="{{service}}" />
270
+ </view>
271
+ </view>
272
+ </view>
273
+ <!-- 收货地址 -->
274
+ <view class="service-section goods-refund-address" wx:if="{{service.receiverName}}">
275
+ <t-cell-group>
276
+ <t-cell align="top" title="退货地址" bordered="{{false}}">
277
+ <t-icon prefix="wr" color="#333333" name="location" size="40rpx" slot="left-icon" />
278
+ <view
279
+ slot="note"
280
+ class="right text-btn goods-refund-address-copy-btn"
281
+ hover-class="text-btn--active"
282
+ bindtap="onAddressCopy"
283
+ >复制
284
+ </view>
285
+ <view slot="description">
286
+ <view> {{service.receiverAddress}} </view>
287
+ <view>收货人:{{service.receiverName}}</view>
288
+ <view>收货人手机:{{service.receiverName}}</view>
289
+ </view>
290
+ </t-cell>
291
+ </t-cell-group>
292
+ </view>
293
+ <!-- 商品卡片 -->
294
+ <view
295
+ class="service-section service-goods-card-wrap"
296
+ wx:if="{{service.goodsList && service.goodsList.length > 0}}"
297
+ >
298
+ <wr-service-goods-card
299
+ wx:for="{{service.goodsList}}"
300
+ wx:key="id"
301
+ wx:for-item="goods"
302
+ goods="{{goods}}"
303
+ no-top-line
304
+ bindtap="onGoodsCardTap"
305
+ data-index="{{index}}"
306
+ >
307
+ <view slot="footer" class="order-goods-card-footer [display:flex] [width:calc(100%_-_190rpx)] [justify-content:space-between] [position:absolute] [bottom:20rpx] [left:190rpx]">
308
+ <wr-price
309
+ price="{{goods.itemRefundAmount}}"
310
+ fill
311
+ wr-class="order-goods-card-footer-price-class"
312
+ symbol-class="order-goods-card-footer-price-symbol"
313
+ decimal-class="order-goods-card-footer-price-decimal"
314
+ />
315
+ <view class="order-goods-card-footer-num [color:#999] [line-height:40rpx]">x {{goods.rightsQuantity}}</view>
316
+ </view>
317
+ </wr-service-goods-card>
318
+ </view>
319
+ <!-- 退款信息 -->
320
+ <view class="service-section__pay [margin:0_0_20rpx_0] [width:auto] [border-radius:8rpx] [background-color:white] [overflow:hidden] [&_.credential_desc]:[padding:0_24rpx] [&_.t-grid-item__content]:[padding:0_0_24rpx]">
321
+ <t-cell bordered="{{false}}" title="退款信息" t-class="t-refund-wrapper ![padding-top:18rpx] ![padding-bottom:18rpx]" t-class-title="t-refund-title" />
322
+ <t-cell
323
+ bordered="{{false}}"
324
+ t-class="t-refund-wrapper ![padding-top:18rpx] ![padding-bottom:18rpx]"
325
+ t-class-title="t-refund-info"
326
+ t-class-note="t-refund-note"
327
+ title="订单编号"
328
+ note="{{service.orderNo}}"
329
+ />
330
+ <t-cell
331
+ bordered="{{false}}"
332
+ t-class="t-refund-wrapper ![padding-top:18rpx] ![padding-bottom:18rpx]"
333
+ t-class-title="t-refund-info"
334
+ t-class-note="t-refund-note"
335
+ title="服务单号"
336
+ note="{{service.rightsNo}}"
337
+ >
338
+ <view slot="right-icon" class="text-btn" hover-class="text-btn--active" bindtap="onServiceNoCopy">复制 </view>
339
+ </t-cell>
340
+ <t-cell
341
+ bordered="{{false}}"
342
+ t-class="t-refund-wrapper ![padding-top:18rpx] ![padding-bottom:18rpx]"
343
+ t-class-title="t-refund-info"
344
+ t-class-note="t-refund-note"
345
+ title="退款原因"
346
+ note="{{service.rightsReasonDesc}}"
347
+ />
348
+ <t-cell
349
+ bordered="{{false}}"
350
+ t-class="t-refund-wrapper ![padding-top:18rpx] ![padding-bottom:18rpx]"
351
+ t-class-title="t-refund-info"
352
+ t-class-note="t-refund-note"
353
+ title="退款金额"
354
+ >
355
+ <wr-price slot="note" price="{{service.refundRequestAmount}}" fill />
356
+ </t-cell>
357
+ <t-cell
358
+ bordered="{{false}}"
359
+ t-class="t-refund-wrapper ![padding-top:18rpx] ![padding-bottom:18rpx]"
360
+ t-class-title="t-refund-info"
361
+ t-class-note="t-refund-note"
362
+ title="申请时间"
363
+ note="{{service.createTime}}"
364
+ />
365
+ </view>
366
+ <!-- 凭证/说明 -->
367
+ <view class="service-section__pay credential_desc [margin:0_0_20rpx_0] [width:auto] [border-radius:8rpx] [background-color:white] [overflow:hidden] [padding:0_24rpx] [&_.credential_desc]:[padding:0_24rpx] [&_.t-grid-item__content]:[padding:0_0_24rpx]" wx:if="{{showProofs}}">
368
+ <t-cell
369
+ bordered="{{false}}"
370
+ title="凭证/说明"
371
+ t-class="t-refund-wrapper ![padding-top:18rpx] ![padding-bottom:18rpx]"
372
+ t-class-title="t-refund-info"
373
+ description="{{service.applyRemark}}"
374
+ />
375
+ <t-grid border="{{false}}" column="{{3}}">
376
+ <t-grid-item
377
+ t-class-image="t-refund-grid-image"
378
+ wx:for="{{gallery.proofs}}"
379
+ wx:key="index"
380
+ image="{{item}}"
381
+ bindclick="onProofTap"
382
+ data-index="{{index}}"
383
+ />
384
+ </t-grid>
385
+ </view>
386
+ <t-swiper
387
+ wx:if="{{gallery.show}}"
388
+ current="{{gallery.current}}"
389
+ img-srcs="{{gallery.proofs}}"
390
+ full-screen
391
+ circular="{{false}}"
392
+ bindtap="onProofTap"
393
+ />
394
+ </view>
395
+ </t-pull-down-refresh>
396
+ </view>
397
+ <t-toast id="t-toast" />
398
+ <!-- 退款说明填写 -->
399
+ <t-dialog id="input-dialog" visible="{{inputDialogVisible}}">
400
+ <view class="input-dialog__content" slot="content">
401
+ <view style="color: #333333; padding-left: 32rpx">物流单号</view>
402
+ <t-input class="input" placeholder="请输入物流单号" />
403
+ <view class="tips">{{amountTip}}</view>
404
+ </view>
405
+ </t-dialog>
406
+ <t-dialog id="t-dialog" />
407
+ </template>
408
+
409
+ <json>
410
+ {
411
+ "navigationBarTitleText": "",
412
+ "usingComponents": {
413
+ "wr-loading-content": "/components/loading-content/index",
414
+ "wr-price": "/components/price/index",
415
+ "wr-service-goods-card": "../components/order-goods-card/index",
416
+ "t-cell": "tdesign-miniprogram/cell/cell",
417
+ "t-icon": "tdesign-miniprogram/icon/icon",
418
+ "t-cell-group": "tdesign-miniprogram/cell-group/cell-group",
419
+ "t-pull-down-refresh": "tdesign-miniprogram/pull-down-refresh/pull-down-refresh",
420
+ "t-grid": "tdesign-miniprogram/grid/grid",
421
+ "t-grid-item": "tdesign-miniprogram/grid-item/grid-item",
422
+ "t-toast": "tdesign-miniprogram/toast/toast",
423
+ "t-dialog": "tdesign-miniprogram/dialog/dialog",
424
+ "t-input": "tdesign-miniprogram/input/input",
425
+ "t-swiper": "tdesign-miniprogram/swiper/swiper",
426
+ "t-swiper-nav": "tdesign-miniprogram/swiper-nav/swiper-nav",
427
+ "wr-after-service-button-bar": "../components/after-service-button-bar/index",
428
+ "t-image": "/components/webp-image/index"
429
+ }
430
+ }</json>