jufubao-base 1.0.197-beta5 → 1.0.197-beta8

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 (34) hide show
  1. package/commands.js +1 -1
  2. package/package.json +1 -1
  3. package/src/ICONS.js +1128 -0
  4. package/src/components/JfbBaseAddress/Attr.js +109 -1
  5. package/src/components/JfbBaseAddress/JfbBaseAddress.vue +164 -80
  6. package/src/components/JfbBaseAddress/XdAddress.vue +5 -0
  7. package/src/components/JfbBaseAddress/XdTfkItem.vue +117 -0
  8. package/src/components/JfbBaseCardEntry/JfbBaseCardEntry.vue +1 -0
  9. package/src/components/JfbBaseCardEntry/XdCardNew.vue +1 -1
  10. package/src/components/JfbBaseConDialog/JfbBaseConDialog.vue +41 -13
  11. package/src/components/JfbBaseFastLink/Attr.js +24 -8
  12. package/src/components/JfbBaseFastLink/JfbBaseFastLink.vue +37 -21
  13. package/src/components/JfbBaseFooter/Attr.js +141 -75
  14. package/src/components/JfbBaseFooter/JfbBaseFooter.vue +50 -15
  15. package/src/components/JfbBaseHeader/Attr.js +8 -1
  16. package/src/components/JfbBaseHeader/JfbBaseHeader.vue +8 -5
  17. package/src/components/JfbBaseHeaderElephant/JfbBaseHeaderElephant.vue +12 -3
  18. package/src/components/JfbBaseOrderDetail/Attr.js +147 -65
  19. package/src/components/JfbBaseOrderDetail/JfbBaseOrderDetail.vue +97 -47
  20. package/src/components/JfbBaseOrderList/Attr.js +59 -2
  21. package/src/components/JfbBaseOrderList/JfbBaseOrderList.vue +139 -92
  22. package/src/components/JfbBaseOrderList/Mock.js +3 -0
  23. package/src/components/JfbBaseOrderList/XdTfkOrderItem.vue +267 -0
  24. package/src/components/JfbBasePosterBigSmall/JfbBasePosterBigSmall.vue +27 -29
  25. package/src/components/JfbBasePosterBigSmall/getWidthHeight.js +13 -9
  26. package/src/components/JfbBaseUserCenter/Attr.js +297 -52
  27. package/src/components/JfbBaseUserCenter/JfbBaseUserCenter.vue +135 -44
  28. package/src/components/JfbBaseUserInfo/Attr.js +227 -85
  29. package/src/components/JfbBaseUserInfo/JfbBaseUserInfo.vue +106 -86
  30. package/src/components/JfbBaseUserOrder/Attr.js +332 -30
  31. package/src/components/JfbBaseUserOrder/JfbBaseUserOrder.vue +183 -55
  32. package/src/components/JfbBaseWallet/Attr.js +376 -8
  33. package/src/components/JfbBaseWallet/JfbBaseWallet.vue +185 -49
  34. package/src/mixins/componentsMixins.js +210 -35
@@ -4,6 +4,17 @@ export default {
4
4
  style: [],
5
5
  content: (data)=>{
6
6
  return [
7
+ {
8
+ label: "布局样式配置",
9
+ ele: "xd-radio",
10
+ valueKey: "layout_style",
11
+ value: data.layout_style || 'old',
12
+ list: [
13
+ {label: '布局1', value: 'old'},
14
+ {label: '布局2', value: 'tfk'},
15
+ ],
16
+ groupKey: "style",
17
+ },
7
18
  {
8
19
  label: '设置订单状态:',
9
20
  ele: 'xd-order-setting',
@@ -30,6 +41,18 @@ export default {
30
41
  {required: true, message: '设置订单配置错误!请检查配置', trigger: 'change'},
31
42
  ],
32
43
  },
44
+ {
45
+ label: "是否展示订单号:",
46
+ ele: 'xd-radio',
47
+ valueKey: 'isShowOrderNo',
48
+ value: data['isShowOrderNo'] || 'Y',
49
+ groupKey:'style',
50
+ list: [
51
+ {label: '是', value: 'Y'},
52
+ {label: '否', value: 'N'},
53
+ ],
54
+ hidden: data.layout_style !== 'tfk'
55
+ },
33
56
  {
34
57
  label: '外填充:',
35
58
  ele: 'xd-margin-padding',
@@ -73,11 +96,38 @@ export default {
73
96
  inline: false,
74
97
  notice: '间距设置,<span style="color: red">单位:像素</span>。默认值:<span style="color: red">20</span>像素',
75
98
  },
99
+ {
100
+ label: "投影设置:",
101
+ ele: "xd-shadow",
102
+ valueKey: "sectionShadow",
103
+ value: data.sectionShadow || {},
104
+ groupKey:'style',
105
+ handleCustom({action, data}) {
106
+ XdBus.getParentApi('getOptionsSettingList')({setting_id: 'edtix_style_radius'})
107
+ .then(res => {
108
+ data.cb(res.list)
109
+ })
110
+ .catch(error => {
111
+ console.error(error);
112
+ data.cb([])
113
+ });
114
+ },
115
+ },
116
+ {
117
+ label: '边框设置:',
118
+ ele: 'xd-border',
119
+ valueKey: 'sectionBorder',
120
+ groupKey:'style',
121
+ value: data.sectionBorder || {},
122
+ placeholder: '请选择边框设置',
123
+ inline: false,
124
+ },
76
125
  {
77
126
  ele: 'title',
78
127
  label: '投影设置',
79
128
  size: 'small',
80
129
  groupKey:'style',
130
+ hidden: true,
81
131
  },
82
132
  {
83
133
  label: '是否有投影:',
@@ -91,7 +141,8 @@ export default {
91
141
  list: [
92
142
  {label: '是', value: 'Y'},
93
143
  {label: '否', value: 'N'},
94
- ]
144
+ ],
145
+ hidden: true,
95
146
  },
96
147
  data['is_shadow'] === 'Y' && {
97
148
  label: '投影颜色:',
@@ -101,6 +152,7 @@ export default {
101
152
  value: data['is_shadow_bg'] || '',
102
153
  placeholder: '请选择投影颜色',
103
154
  classNmae: 'input80',
155
+ hidden: true,
104
156
  },
105
157
  data['is_shadow'] === 'Y' && {
106
158
  label: '投影范围:',
@@ -123,12 +175,14 @@ export default {
123
175
  console.error(error);
124
176
  });
125
177
  },
178
+ hidden: true,
126
179
  },
127
180
  {
128
181
  ele: 'title',
129
182
  label: '边框设置',
130
183
  size: 'small',
131
184
  groupKey:'style',
185
+ hidden: true,
132
186
  },
133
187
  {
134
188
  label: '是否有边框:',
@@ -142,7 +196,8 @@ export default {
142
196
  list: [
143
197
  {label: '是', value: 'Y'},
144
198
  {label: '否', value: 'N'},
145
- ]
199
+ ],
200
+ hidden: true,
146
201
  },
147
202
  data['is_border'] === 'Y' && {
148
203
  label: '边框颜色:',
@@ -152,6 +207,7 @@ export default {
152
207
  value: data['is_border_c'] || '',
153
208
  placeholder: '请选择边框颜色',
154
209
  classNmae: 'input80',
210
+ hidden: true,
155
211
  },
156
212
  data['is_border'] === 'Y' && {
157
213
  label: '边框大小:',
@@ -162,6 +218,7 @@ export default {
162
218
  value: data['is_border_w'] || '',
163
219
  placeholder: '请输入边框大小',
164
220
  className: 'input80',
221
+ hidden: true,
165
222
  },
166
223
  {
167
224
  label: '内容圆角设置:',
@@ -64,104 +64,129 @@
64
64
  class="jfb-base-order-list__body-order"
65
65
  :style="{ padding: outMargin }"
66
66
  >
67
- <view
68
- @click="handleToLink(detailPath, item)"
69
- class="jfb-base-order-list__body-order-item"
70
- v-for="item in orderList"
71
- :key="item.main_order_id"
72
- :style="{
73
- background: backgroundColor,
74
- border: borderBox,
75
- borderRadius: radius + 'rpx',
76
- boxShadow: shadowBox,
77
- marginBottom: padding + 'rpx',
78
- }"
79
- >
80
- <view class="jfb-base-order-list__body-order-item-biz">
81
- <xd-font-icon
82
- v-if="item.biz_code_icon"
83
- :icon="item.biz_code_icon"
84
- :size="item['biz_code_icon_size']"
85
- ></xd-font-icon>
86
- <view :class="{ marginLeft: item.biz_code_icon }">{{item.biz_code_name }}</view>
87
- </view>
88
- <view class="jfb-base-order-list__body-order-item-title">
89
- <view>订单编号:{{ item.main_order_id }}</view>
90
- <view :style="{color:item.status.status_type !== 'error' ? mainColor : '#999999',}">{{ item.status.status_name }}</view>
91
- </view>
92
- <view class="order-list">
93
- <view
94
- class="jfb-base-order-list__body-order-item-content"
95
- v-for="(Sitem, Sindex) in item.products"
96
- :key="Sitem.key"
97
- v-if="(item['isOpen'] === false && Sindex < showLen) || item['isOpen']"
98
- >
99
- <image :src="Sitem.product_thumb" style="background: #ffffff" mode="aspectFit"></image>
100
- <view class="jfb-base-order-list__body-order-item-content-info">
101
- <view class="jfb-base-order-list__body-order-item-content-info-name">{{ Sitem.product_name }}</view>
102
- <view class="brand-name" v-if="Sitem.brand_name" :style="{color:brandTextColor}">{{ Sitem.brand_name }}</view>
103
- <view v-if="Sitem.product_sku_name" class="jfb-base-order-list__body-order-item-content-info-skuname">规格:{{ Sitem.product_sku_name }}</view>
104
- <view class="jfb-base-order-list__body-order-item-content-info-price">
105
- <view></view>
106
- <view class="info-price">
107
- <text>X</text>
108
- <text>{{ Sitem.product_num }}</text>
67
+ <template v-if="layout_style === 'old'">
68
+ <view
69
+ @click="handleToLink(detailPath, item)"
70
+ class="jfb-base-order-list__body-order-item"
71
+ v-for="item in orderList"
72
+ :key="item.main_order_id"
73
+ :style="{
74
+ background: backgroundColor,
75
+ border: borderBox,
76
+ borderRadius: radius + 'rpx',
77
+ boxShadow: shadowBox,
78
+ marginBottom: padding + 'rpx',
79
+ }"
80
+ >
81
+ <view class="jfb-base-order-list__body-order-item-biz">
82
+ <xd-font-icon
83
+ v-if="item.biz_code_icon"
84
+ :icon="item.biz_code_icon"
85
+ :size="item['biz_code_icon_size']"
86
+ ></xd-font-icon>
87
+ <view :class="{ marginLeft: item.biz_code_icon }">{{item.biz_code_name }}</view>
88
+ </view>
89
+ <view class="jfb-base-order-list__body-order-item-title">
90
+ <view>订单编号:{{ item.main_order_id }}</view>
91
+ <view :style="{color:item.status.status_type !== 'error' ? mainColor : '#999999',}">{{ item.status.status_name }}</view>
92
+ </view>
93
+ <view class="order-list">
94
+ <view
95
+ class="jfb-base-order-list__body-order-item-content"
96
+ v-for="(Sitem, Sindex) in item.products"
97
+ :key="Sitem.key"
98
+ v-if="(item['isOpen'] === false && Sindex < showLen) || item['isOpen']"
99
+ >
100
+ <image :src="Sitem.product_thumb" style="background: #ffffff" mode="aspectFit"></image>
101
+ <view class="jfb-base-order-list__body-order-item-content-info">
102
+ <view class="jfb-base-order-list__body-order-item-content-info-name">{{ Sitem.product_name }}</view>
103
+ <view class="brand-name" v-if="Sitem.brand_name" :style="{color:brandTextColor}">{{ Sitem.brand_name }}</view>
104
+ <view v-if="Sitem.product_sku_name" class="jfb-base-order-list__body-order-item-content-info-skuname">规格:{{ Sitem.product_sku_name }}</view>
105
+ <view class="jfb-base-order-list__body-order-item-content-info-price">
106
+ <view></view>
107
+ <view class="info-price">
108
+ <text>X</text>
109
+ <text>{{ Sitem.product_num }}</text>
110
+ </view>
109
111
  </view>
110
112
  </view>
111
113
  </view>
114
+ <view
115
+ class="order-list-icon"
116
+ :style="{ bottom: item['isOpen'] ? '-30rpx' : '-54rpx' }"
117
+ v-if="item.products.length > showLen"
118
+ @click.stop="switchOpen(item)"
119
+ >
120
+ <view :style="{ background: backgroundColor }">
121
+ <xd-font-icon
122
+ color="#666"
123
+ :icon="item['isOpen'] ? 'iconshang_up' : 'iconxia_down'"
124
+ size="24"
125
+ ></xd-font-icon>
126
+ </view>
127
+ </view>
128
+ </view>
129
+ <view class="jfb-base-order-list__body-order-item-bottom">
130
+ <view>下单时间:{{ item.created_time_text }}</view>
131
+ <view v-if="item.biz_code !== 'gift' && item.is_not_show_price !== 'Y'">
132
+ <text>合计:</text>
133
+ <xd-unit
134
+ :isOld="false"
135
+ :price="item.total_amount"
136
+ :color="mainColor"
137
+ :fontSize="28"
138
+ ></xd-unit>
139
+ </view>
140
+ <view style="color:#999" v-if="item['main_user_server_amount'] !== undefined && item['main_user_server_amount'] > 0">
141
+ <text>(平台服务费:</text>
142
+ <xd-unit
143
+ :isOld="false"
144
+ :price="item['main_user_server_amount']"
145
+ :fontSize="24"
146
+ :is-gray="true"
147
+ color="#999"
148
+ :icon-size=".25"
149
+ ></xd-unit>
150
+ <text>)</text>
151
+ </view>
112
152
  </view>
113
153
  <view
114
- class="order-list-icon"
115
- :style="{ bottom: item['isOpen'] ? '-30rpx' : '-54rpx' }"
116
- v-if="item.products.length > showLen"
117
- @click.stop="switchOpen(item)"
154
+ class="jfb-base-order-list__body-order-item-pay"
155
+ v-if="item.buttons.length"
118
156
  >
119
- <view :style="{ background: backgroundColor }">
120
- <xd-font-icon
121
- color="#666"
122
- :icon="item['isOpen'] ? 'iconshang_up' : 'iconxia_down'"
123
- size="24"
124
- ></xd-font-icon>
157
+ <view v-for="(btn,index) in item.buttons" :key="btn.key">
158
+ <xd-button
159
+ :type="getBtnType(btn.action)"
160
+ size="mini"
161
+ @click="handleBtnEvent(btn.action, item)"
162
+ >{{ btn.text }}</xd-button>
125
163
  </view>
126
164
  </view>
127
165
  </view>
128
- <view class="jfb-base-order-list__body-order-item-bottom">
129
- <view>下单时间:{{ item.created_time_text }}</view>
130
- <view v-if="item.biz_code !== 'gift' && item.is_not_show_price !== 'Y'">
131
- <text>合计:</text>
132
- <xd-unit
133
- :isOld="false"
134
- :price="item.total_amount"
135
- :color="mainColor"
136
- :fontSize="28"
137
- ></xd-unit>
138
- </view>
139
- <view style="color:#999" v-if="item['main_user_server_amount'] !== undefined && item['main_user_server_amount'] > 0">
140
- <text>(平台服务费:</text>
141
- <xd-unit
142
- :isOld="false"
143
- :price="item['main_user_server_amount']"
144
- :fontSize="24"
145
- :is-gray="true"
146
- color="#999"
147
- :icon-size=".25"
148
- ></xd-unit>
149
- <text>)</text>
150
- </view>
151
- </view>
166
+ </template>
167
+ <template v-if="layout_style === 'tfk'">
152
168
  <view
153
- class="jfb-base-order-list__body-order-item-pay"
154
- v-if="item.buttons.length"
169
+ @click="handleToLink(detailPath, item)"
170
+ class="jfb-base-order-list__body-order-item"
171
+ v-for="item in orderList"
172
+ :key="item.main_order_id"
173
+ :style="{
174
+ background: backgroundColor,
175
+ border: borderBox,
176
+ borderRadius: radius + 'rpx',
177
+ boxShadow: shadowBox,
178
+ marginBottom: padding + 'rpx',
179
+ }"
155
180
  >
156
- <view v-for="(btn,index) in item.buttons" :key="btn.key">
157
- <xd-button
158
- :type="getBtnType(btn.action)"
159
- size="mini"
160
- @click="handleBtnEvent(btn.action, item)"
161
- >{{ btn.text }}</xd-button>
162
- </view>
181
+ <xd-tfk-order-item
182
+ :mainColor="mainColor"
183
+ :isShowOrderNo="isShowOrderNo"
184
+ :brandTextColor="brandTextColor"
185
+ :item="item"
186
+ @handleBtnEvent="action => handleBtnEvent(action, item)"
187
+ ></xd-tfk-order-item>
163
188
  </view>
164
- </view>
189
+ </template>
165
190
  </view>
166
191
  <view v-else class="jfb-base-order-list__body-no">
167
192
  <xd-font-icon
@@ -189,6 +214,7 @@ import extsMixins from "@/mixins/extsMixins";
189
214
  import { getContainerPropsValue } from "@/utils/xd.base";
190
215
  import getServiceUrl from "@/common/getServiceUrl";
191
216
  import Color from "color";
217
+ import XdTfkOrderItem from "./XdTfkOrderItem"
192
218
 
193
219
  export default {
194
220
  name: "JfbBaseOrderList",
@@ -197,6 +223,7 @@ export default {
197
223
  XdTab,
198
224
  XdUnit,
199
225
  XdButton,
226
+ XdTfkOrderItem,
200
227
  },
201
228
  mixins: [componentsMixins, extsMixins, JfbBaseOrderListMixin],
202
229
  data() {
@@ -226,11 +253,13 @@ export default {
226
253
  is_shadow: "Y",
227
254
  is_shadow_bg: 0,
228
255
  is_shadow_w: 0,
256
+ sectionShadow: "",
229
257
 
230
258
  //边框
231
259
  is_border: "Y",
232
260
  is_border_w: 0,
233
261
  is_border_c: "",
262
+ sectionBorder: "",
234
263
 
235
264
  //其他
236
265
  margin: {
@@ -239,6 +268,8 @@ export default {
239
268
  right: 0,
240
269
  bottom: 0,
241
270
  },
271
+ layout_style: "old",
272
+ isShowOrderNo: "Y",
242
273
 
243
274
  noticeBgc:'',
244
275
  };
@@ -253,14 +284,16 @@ export default {
253
284
  return str
254
285
  },
255
286
  shadowBox() {
256
- if (this.is_shadow === "Y")
257
- return `0 0 ${this.is_shadow_w}rpx ${this.is_shadow_bg}`;
258
- else return "0 0 0 rgba(0,0,0,0)";
287
+ // if (this.is_shadow === "Y")
288
+ // return `0 0 ${this.is_shadow_w}rpx ${this.is_shadow_bg}`;
289
+ // else return "0 0 0 rgba(0,0,0,0)";
290
+ return this.sectionShadow;
259
291
  },
260
292
  borderBox() {
261
- if (this.is_border === "Y")
262
- return `${this.is_border_w}rpx solid ${this.is_border_c}`;
263
- else return "0";
293
+ // if (this.is_border === "Y")
294
+ // return `${this.is_border_w}rpx solid ${this.is_border_c}`;
295
+ // else return "0";
296
+ return this.sectionBorder;
264
297
  },
265
298
  },
266
299
  watch: {
@@ -308,13 +341,27 @@ export default {
308
341
  this.is_shadow = getContainerPropsValue(container, "content.is_shadow", "N");
309
342
  this.is_shadow_bg = getContainerPropsValue(container, "content.is_shadow_bg", "#fff");
310
343
  this.is_shadow_w = getContainerPropsValue(container, "content.is_shadow_w", "10");
344
+ let sectionShadow = getContainerPropsValue(container, "content.sectionShadow", "");
345
+ this.sectionShadow = this.getShadowCompatibleOldStyle(sectionShadow, {
346
+ type: this.is_shadow,
347
+ width: this.is_shadow_w,
348
+ color: this.is_shadow_bg,
349
+ })
311
350
 
312
351
  this.is_border = getContainerPropsValue(container, "content.is_border", "N");
313
352
  this.is_border_c = getContainerPropsValue(container, "content.is_border_c", "#fff");
314
353
  this.is_border_w = getContainerPropsValue(container, "content.is_border_w", 2);
354
+ let sectionBorder = getContainerPropsValue(container, "content.sectionBorder", "");
355
+ this.sectionBorder = this.getBorderCompatibleOldStyle(sectionBorder, {
356
+ type: this.is_border,
357
+ width: this.is_border_w,
358
+ color: this.is_border_c,
359
+ })
315
360
 
316
361
  this.detailPath = getContainerPropsValue(container, "content.detailPath", { value: "" }).value;
317
362
  this.payPath = getContainerPropsValue(container, "content.payPath", {value: "",}).value;
363
+ this.layout_style = getContainerPropsValue(container, "content.layout_style", "old");
364
+ this.isShowOrderNo = getContainerPropsValue(container, "content.isShowOrderNo", "Y");
318
365
  this.tabList = getContainerPropsValue(container, "content.orderTypeList", []).map((item) => {
319
366
  return {
320
367
  name: item.customName || item.label,
@@ -9,6 +9,7 @@ module.exports = {
9
9
  "created_time": 1684491205,
10
10
  "status": {"status": "UNPAID", "status_name": "未支付", "status_type": "wait"},
11
11
  "total_amount": 2678,
12
+ "main_user_server_amount": 12,
12
13
  "biz_code": "cake",
13
14
  "biz_code_name": "蛋糕(勿改)订单",
14
15
  "biz_code_icon": "icondangao-01",
@@ -111,6 +112,7 @@ module.exports = {
111
112
  "status": {"status": "HANDLER_ING", "status_name": "处理中", "status_type": "wait"},
112
113
  "total_amount": 10920,
113
114
  "biz_code": "gift",
115
+ "is_not_show_price": "Y",
114
116
  "biz_code_name": "礼包(勿改)订单",
115
117
  "biz_code_icon": "icondalibao-01",
116
118
  "products": [{
@@ -134,6 +136,7 @@ module.exports = {
134
136
  "status": {"status": "COMPLETED", "status_name": "已完成", "status_type": "success"},
135
137
  "total_amount": 4800,
136
138
  "biz_code": "movie",
139
+ "is_not_show_price": "Y",
137
140
  "biz_code_name": "电影(勿改)订单",
138
141
  "biz_code_icon": "icondianying-01",
139
142
  "products": [{