jufubao-base 1.0.184-beta1 → 1.0.184-beta2

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.
@@ -129,6 +129,9 @@
129
129
  v-for="(Ditem, Dindex) in info.film_show.detail.items"
130
130
  :key="Dindex"
131
131
  class="jfb-base-order-detail__body-delivery-bottom-item"
132
+ :style="{
133
+ marginBottom: lineHeight + 'rpx'
134
+ }"
132
135
  >
133
136
  <view style="width: 130rpx"
134
137
  >{{ Ditem.label }} <span v-if="Ditem.label">:</span>
@@ -214,6 +217,9 @@
214
217
  v-for="(Ditem, Dindex) in item.info"
215
218
  :key="Dindex"
216
219
  class="jfb-base-order-detail__body-delivery-bottom-item"
220
+ :style="{
221
+ marginBottom: lineHeight + 'rpx'
222
+ }"
217
223
  >
218
224
  <view style="width: 130rpx;display: flex;">
219
225
  <view v-html="Ditem.label"></view>
@@ -259,7 +265,7 @@
259
265
  class="jfb-base-order-detail__body-card jfb-base-order-detail__body-cashier"
260
266
  >
261
267
  <view class="jfb-base-order-detail__body-cashier-text">{{info.codes[0].show_type === "qrcode" ? "二维码" : "条形码" }}</view>
262
- <view v-if="showPreviewCode" style="position: relative">
268
+ <view style="position: relative">
263
269
  <image
264
270
  :style="{
265
271
  height: info.codes[0].show_type === 'qrcode' ? '50vw' : '25vw',
@@ -510,6 +516,9 @@
510
516
  v-for="(item, index) in info.detail"
511
517
  :key="index"
512
518
  class="jfb-base-order-detail__body-order"
519
+ :style="{
520
+ marginBottom: lineHeight + 'rpx'
521
+ }"
513
522
  >
514
523
  <view :style="{ fontWeight: item.style }">
515
524
  <view style="display: flex;">
@@ -541,6 +550,9 @@
541
550
  <view
542
551
  v-if="item.type !== 'line'"
543
552
  class="jfb-base-order-detail__body-price"
553
+ :style="{
554
+ marginBottom: lineHeight + 'rpx'
555
+ }"
544
556
  >
545
557
  <view :style="{ fontWeight: item.style }">{{ item.label }}</view>
546
558
  <xd-unit
@@ -556,18 +568,20 @@
556
568
  ></view>
557
569
  </view>
558
570
  <view v-if="info.pay_info.cards && info.pay_info.cards.length > 0">
559
- <view @click="showPayCard = true" class="jfb-base-order-detail__body-show" v-if="!showPayCard">
571
+ <view class="jfb-base-order-detail__body-show" v-if="!showPayCard">
560
572
  <text>使用 {{ info.pay_info.cards.length }} 张票券 展开</text>
561
573
  <xd-font-icon
562
574
  style="margin-left: 8rpx"
575
+ @click="showPayCard = true"
563
576
  size="28"
564
577
  icon="iconxia_down"
565
578
  ></xd-font-icon>
566
579
  </view>
567
- <view @click="showPayCard = false" class="jfb-base-order-detail__body-show" v-else>
580
+ <view class="jfb-base-order-detail__body-show" v-else>
568
581
  <text>使用{{ info.pay_info.cards.length }}张票券 收起</text>
569
582
  <xd-font-icon
570
583
  style="margin-left: 8rpx"
584
+ @click="showPayCard = false"
571
585
  size="28"
572
586
  icon="iconshang_up"
573
587
  ></xd-font-icon>
@@ -651,25 +665,8 @@
651
665
  <view class="jfb-base-order-detail__body-shop-title">
652
666
  <view :style="{ background: mainColor }"></view>
653
667
  <view>商品详情</view>
654
- <view @click="showAllProductDetail=!showAllProductDetail" v-if="!showAllProductDetail" style="color:#999;display:flex;align-items:center;margin-left:10px">
655
- <text> 展开</text>
656
- <xd-font-icon
657
- style="margin-left: 8rpx"
658
- size="28"
659
- icon="iconxia_down"
660
- ></xd-font-icon>
661
- </view>
662
- <view @click="showAllProductDetail=!showAllProductDetail" v-if="showAllProductDetail" style="color:#999;display:flex;align-items:center;margin-left:10px">
663
- <text> 收起</text>
664
- <xd-font-icon
665
- style="margin-left: 8rpx"
666
- size="28"
667
- icon="iconxia_down"
668
- ></xd-font-icon>
669
- </view>
670
- </view>
671
- <view v-if="showAllProductDetail" v-html="info.product_detail">
672
668
  </view>
669
+ <view v-html="info.productDetail"></view>
673
670
  </view>
674
671
  <view
675
672
  v-if="info.custom_content"
@@ -829,15 +826,6 @@ export default {
829
826
  backgroundColor: "",
830
827
  padding: 0,
831
828
 
832
- //投影
833
- is_shadow: "Y",
834
- is_shadow_bg: 0,
835
- is_shadow_w: 0,
836
-
837
- //边框
838
- is_border: "Y",
839
- is_border_w: 0,
840
- is_border_c: "",
841
829
 
842
830
  //其他
843
831
  margin: {
@@ -848,13 +836,11 @@ export default {
848
836
  },
849
837
  is_hot: "Y",
850
838
  logo: "",
839
+ lineHeight: 20,
851
840
 
852
841
  noticeBgc:'',
853
- is_open: '',
854
- is_show: '',
855
- showAllProductDetail: false,
856
- is_show_all_detail: '',
857
- showPreviewCode: true
842
+ sectionShadow: "",
843
+ sectionBorder: "",
858
844
  };
859
845
  },
860
846
  watch: {
@@ -893,14 +879,10 @@ export default {
893
879
  return str
894
880
  },
895
881
  shadowBox() {
896
- if (this.is_shadow === "Y")
897
- return `0 0 ${this.is_shadow_w}rpx ${this.is_shadow_bg}`;
898
- else return "0 0 0 rgba(0,0,0,0)";
882
+ return this.sectionShadow;
899
883
  },
900
884
  borderBox() {
901
- if (this.is_border === "Y")
902
- return `${this.is_border_w}rpx solid ${this.is_border_c}`;
903
- else return "0";
885
+ return this.sectionBorder;
904
886
  },
905
887
  },
906
888
  created() {
@@ -941,7 +923,6 @@ export default {
941
923
  main_order_id: this.main_order_id,
942
924
  custom_content_page_id: this.pageAttr.page_id,
943
925
  custom_content_container_id: this.cid,
944
- is_show_jhd_code: this.is_show
945
926
  },
946
927
  })
947
928
  .then((res) => {
@@ -1068,7 +1049,7 @@ export default {
1068
1049
  }
1069
1050
 
1070
1051
  //增加删除订单按钮
1071
- if(this.is_show_delete_order === 'Y') {
1052
+ if(this.is_show_delete_order === 'Y') {
1072
1053
  let pay = (res.buttons||[]).filter(item => item.action === 'pay');
1073
1054
  let del = [{action:'delete', text:'删除订单', type: 'info'}];
1074
1055
  if(pay.length === 1) del = []
@@ -1129,29 +1110,19 @@ export default {
1129
1110
  this.brandTextColor = getContainerPropsValue(container, "content.brandTextColor", this.mainColor);
1130
1111
  this.padding = getContainerPropsValue(container, "content.padding", 20);
1131
1112
 
1132
- this.is_shadow = getContainerPropsValue(container, "content.is_shadow", "N");
1133
- this.is_shadow_bg = getContainerPropsValue(container, "content.is_shadow_bg", "#fff");
1134
- this.is_shadow_w = getContainerPropsValue(container, "content.is_shadow_w", "10");
1135
-
1136
- this.is_border = getContainerPropsValue(container, "content.is_border", "N");
1137
1113
  this.is_hot = getContainerPropsValue(container, "content.is_hot", "Y");
1138
- this.is_border_c = getContainerPropsValue(container, "content.is_border_c", "#fff");
1139
- this.is_border_w = getContainerPropsValue(container, "content.is_border_w", 2);
1140
1114
  this.viewStatus = getContainerPropsValue(container, "content.viewStatus", "mall");
1141
1115
  this.is_show_support_shop = getContainerPropsValue(container, "content.is_show_support_shop", "N");
1142
1116
  this.is_show_delete_order = getContainerPropsValue(container, "content.is_show_delete_order", "N");
1143
- this.is_open = getContainerPropsValue(container, "content.is_open", "N");
1144
- this.is_show = getContainerPropsValue(container, "content.is_show", "Y");
1145
- this.showPayCard = this.is_open==='Y'
1146
- this.is_show_all_detail = getContainerPropsValue(container, "content.is_show_all_detail", "N");
1147
- this.showAllProductDetail = this.is_show_all_detail==='Y'
1148
- if(this.isPreview) {
1149
- if(this.is_show===0) {
1150
- this.showPreviewCode = false;
1151
- } else {
1152
- this.showPreviewCode = true;
1153
- }
1154
- }
1117
+ this.lineHeight = getContainerPropsValue(container, "content.lineHeight", 20);
1118
+ let sectionShadow = getContainerPropsValue(container, "content.sectionShadow", "");
1119
+ if(sectionShadow.type === 'Y' && sectionShadow.value){
1120
+ this.sectionShadow = `0 0 ${sectionShadow.value.width}rpx ${sectionShadow.value.color}`;
1121
+ }else this.sectionShadow = '';
1122
+ let sectionBorder = getContainerPropsValue(container, "content.sectionBorder", "");
1123
+ if(sectionBorder.type === 'Y' && sectionBorder.value){
1124
+ this.sectionBorder = `${sectionBorder.value.width}rpx solid ${sectionBorder.value.color}`;
1125
+ }else this.sectionBorder = '';
1155
1126
  },
1156
1127
  getCountDown() {
1157
1128
  this.timer = setInterval(() => {
@@ -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',
@@ -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() {
@@ -239,6 +266,8 @@ export default {
239
266
  right: 0,
240
267
  bottom: 0,
241
268
  },
269
+ layout_style: "old",
270
+ isShowOrderNo: "Y",
242
271
 
243
272
  noticeBgc:'',
244
273
  };
@@ -315,6 +344,8 @@ export default {
315
344
 
316
345
  this.detailPath = getContainerPropsValue(container, "content.detailPath", { value: "" }).value;
317
346
  this.payPath = getContainerPropsValue(container, "content.payPath", {value: "",}).value;
347
+ this.layout_style = getContainerPropsValue(container, "content.layout_style", "old");
348
+ this.isShowOrderNo = getContainerPropsValue(container, "content.isShowOrderNo", "Y");
318
349
  this.tabList = getContainerPropsValue(container, "content.orderTypeList", []).map((item) => {
319
350
  return {
320
351
  name: item.customName || item.label,