jufubao-mall 2.0.20-beta5 → 2.0.20-beta7
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.
- package/package.json +1 -1
- package/src/components/JfbMallBrandHome/JfbMallBrandHome.vue +19 -15
- package/src/components/JfbMallBrandWall/JfbMallBrandWall.vue +41 -31
- package/src/components/JfbMallBrandWall/cusAttr/tab.js +1 -2
- package/src/components/JfbMallHomeProductList/JfbMallHomeProductList.vue +1 -1
- package/src/components/JfbMallProductInfo/JfbMallProductInfo.vue +27 -23
- package/src/components/JfbMallProductList/Api.js +7 -7
- package/src/components/JfbMallProductList/ComFilterQuery.vue +12 -7
- package/src/components/JfbMallProductList/JfbMallProductList.vue +24 -17
- package/src/components/JfbMallProductList/Mock.js +3 -64
- package/src/components/JfbMallProductList/XdCateV1.vue +17 -1
- package/src/components/JfbMallProductList/XdCateV2.vue +24 -5
- package/src/components/JfbMallProductList/cateMixins.js +14 -2
- package/src/components/JfbMallProductList/cusAttr/content.js +33 -2
- package/src/components/JfbMallProductList/cusAttr/filter.js +6 -3
- package/src/components/JfbMallProductList/cusAttr/icon.js +2 -2
- package/src/components/JfbMallRecommendProduct/cusAttr/style.js +4 -1
package/package.json
CHANGED
|
@@ -805,7 +805,7 @@
|
|
|
805
805
|
jfbRootExec("getBrandHomeInfo", {
|
|
806
806
|
vm: this,
|
|
807
807
|
data: {
|
|
808
|
-
|
|
808
|
+
//...this.options,
|
|
809
809
|
brand_id: this.brand_id,
|
|
810
810
|
xnamespace: this.xnamespace
|
|
811
811
|
}
|
|
@@ -910,20 +910,24 @@
|
|
|
910
910
|
page_size = this.show_shop_num;
|
|
911
911
|
}
|
|
912
912
|
}
|
|
913
|
+
let data = this.$xdUniHelper.deleteParamEmptyKey({
|
|
914
|
+
consume_mode: "SELL",
|
|
915
|
+
...this.options,
|
|
916
|
+
brand_id: this.brand_id,
|
|
917
|
+
city_code: this.stateCity.city_code,
|
|
918
|
+
latitude: this.stateLocation.latitude,
|
|
919
|
+
longitude: this.stateLocation.longitude,
|
|
920
|
+
page_size: page_size,
|
|
921
|
+
page_token: this.shop_page_token,
|
|
922
|
+
region_limit_tpl_id: this.region_limit_tpl_id,
|
|
923
|
+
namespace: this.xnamespace,
|
|
924
|
+
});
|
|
925
|
+
|
|
926
|
+
if(data['brand_type']) delete data['brand_type'];
|
|
927
|
+
|
|
913
928
|
jfbRootExec("getMallBrandHomeShopList", {
|
|
914
929
|
vm: this,
|
|
915
|
-
data:
|
|
916
|
-
consume_mode: "SELL",
|
|
917
|
-
...this.options,
|
|
918
|
-
brand_id: this.brand_id,
|
|
919
|
-
city_code: this.stateCity.city_code,
|
|
920
|
-
latitude: this.stateLocation.latitude,
|
|
921
|
-
longitude: this.stateLocation.longitude,
|
|
922
|
-
page_size: page_size,
|
|
923
|
-
page_token: this.shop_page_token,
|
|
924
|
-
region_limit_tpl_id: this.region_limit_tpl_id,
|
|
925
|
-
namespace: this.xnamespace,
|
|
926
|
-
})
|
|
930
|
+
data: data
|
|
927
931
|
}).then(res => {
|
|
928
932
|
this.loaded = true;
|
|
929
933
|
let list = res.list.map(item=>{
|
|
@@ -1284,7 +1288,7 @@
|
|
|
1284
1288
|
background:#fff;
|
|
1285
1289
|
padding: 32rpx 40rpx 40rpx 40rpx;
|
|
1286
1290
|
border-radius: 8rpx;
|
|
1287
|
-
margin-bottom: 20rpx;
|
|
1291
|
+
margin-bottom: 20rpx;
|
|
1288
1292
|
}
|
|
1289
1293
|
&_brand_info {
|
|
1290
1294
|
position: relative;
|
|
@@ -1374,7 +1378,7 @@
|
|
|
1374
1378
|
}
|
|
1375
1379
|
}
|
|
1376
1380
|
}
|
|
1377
|
-
|
|
1381
|
+
|
|
1378
1382
|
}
|
|
1379
1383
|
}
|
|
1380
1384
|
</style>
|
|
@@ -285,7 +285,6 @@
|
|
|
285
285
|
outWdith += 172;
|
|
286
286
|
if(this.titleBorderWidth) outWdith += this.titleBorderWidth * 2;
|
|
287
287
|
if(this.titleBorderWidth === 0 && this.vStyle === 'v1') outWdith +=2
|
|
288
|
-
outWdith += this.getPMValue(this.tabPadding, 'RL', 0);
|
|
289
288
|
}
|
|
290
289
|
outWdith += this.getPMValue(this.listMargin, 'RL',0);
|
|
291
290
|
outWdith += this.getPMValue(this.listPadding, 'RL',0);
|
|
@@ -392,7 +391,7 @@
|
|
|
392
391
|
},
|
|
393
392
|
tabListComp(){
|
|
394
393
|
let temp = {};
|
|
395
|
-
if(this.layout
|
|
394
|
+
if(['v1','v2'].includes(this.layout)) {
|
|
396
395
|
temp['paddingLeft'] = (this.tabPadding.left || 0) + 'rpx';
|
|
397
396
|
temp['paddingRight'] = (this.tabPadding.right || 0) + 'rpx';
|
|
398
397
|
temp['paddingBottom'] = (this.tabPadding.bottom || 0) + 'rpx';
|
|
@@ -413,24 +412,6 @@
|
|
|
413
412
|
...this.getTabHeight,
|
|
414
413
|
};
|
|
415
414
|
},
|
|
416
|
-
tabItemStyleComp(){
|
|
417
|
-
let style = {
|
|
418
|
-
color: this.titleStyle.color,
|
|
419
|
-
fontWeight: this.titleStyle.fontWeight,
|
|
420
|
-
};
|
|
421
|
-
if(this.layout === 'v2') {
|
|
422
|
-
style['fontSize'] = '24rpx';
|
|
423
|
-
style = {...style,...this.getTabItemHeight}
|
|
424
|
-
if(['v2'].includes(this.vStyle)) {
|
|
425
|
-
style['backgroundColor'] = this.titleStyle.bgColor;
|
|
426
|
-
}
|
|
427
|
-
}
|
|
428
|
-
if(this.layout === 'v1') {
|
|
429
|
-
style['fontSize'] = parseInt(this.titleStyle.actFontSize) + 'rpx';
|
|
430
|
-
style = {...style,...this.getTabItemHeight}
|
|
431
|
-
}
|
|
432
|
-
return style
|
|
433
|
-
},
|
|
434
415
|
getTabItemHeight(){
|
|
435
416
|
if(this.layout === 'v1'){
|
|
436
417
|
return {
|
|
@@ -452,14 +433,30 @@
|
|
|
452
433
|
}
|
|
453
434
|
|
|
454
435
|
},
|
|
455
|
-
|
|
436
|
+
tabItemStyleComp(){
|
|
437
|
+
let style = {
|
|
438
|
+
color: this.titleStyle.color,
|
|
439
|
+
fontWeight: this.titleStyle.fontWeight,
|
|
440
|
+
};
|
|
441
|
+
if(this.layout === 'v2') {
|
|
442
|
+
style['fontSize'] = '24rpx';
|
|
443
|
+
style = {...style,...this.getTabItemHeight}
|
|
444
|
+
if(['v2'].includes(this.vStyle)) {
|
|
445
|
+
style['backgroundColor'] = this.titleStyle.bgColor;
|
|
446
|
+
}
|
|
447
|
+
}
|
|
448
|
+
if(this.layout === 'v1') {
|
|
449
|
+
style['fontSize'] = parseInt(this.titleStyle.actFontSize) + 'rpx';
|
|
450
|
+
style = {...style,...this.getTabItemHeight}
|
|
451
|
+
}
|
|
452
|
+
return style
|
|
453
|
+
},
|
|
456
454
|
tabActItemStyleComp(){
|
|
457
455
|
let style = {
|
|
458
456
|
color: this.titleStyle.actColor,
|
|
459
457
|
fontWeight: this.titleStyle.actFontWeight,
|
|
460
458
|
};
|
|
461
459
|
if(this.layout === 'v2') {
|
|
462
|
-
style['fontSize'] = '24rpx';
|
|
463
460
|
style = {...style,...this.getTabItemHeight}
|
|
464
461
|
if(['v2'].includes(this.vStyle)) {
|
|
465
462
|
if(this.titleStyle.actBgColor) style['backgroundColor'] = this.titleStyle.actBgColor;
|
|
@@ -477,14 +474,19 @@
|
|
|
477
474
|
}
|
|
478
475
|
return style
|
|
479
476
|
},
|
|
477
|
+
|
|
480
478
|
tabItemNameStyle(){
|
|
481
|
-
if(this.layout === 'v2') return {
|
|
479
|
+
if(this.layout === 'v2') return {
|
|
480
|
+
fontSize: parseInt(this.titleStyle.fontSize) + 'rpx',
|
|
481
|
+
fontWeight: this.titleStyle.fontWeight,
|
|
482
|
+
color: this.titleStyle.color,
|
|
483
|
+
}
|
|
482
484
|
return {
|
|
483
485
|
borderRadius:['v1'].includes(this.hStyle)?'60rpx': 0,
|
|
484
486
|
backgroundColor: ['v1'].includes(this.hStyle) ? this.titleStyle.bgColor:'',
|
|
485
487
|
color: this.titleStyle.color,
|
|
486
488
|
padding:'0 32rpx',
|
|
487
|
-
fontSize: this.titleStyle.fontSize + 'rpx',
|
|
489
|
+
fontSize: parseInt(this.titleStyle.fontSize) + 'rpx',
|
|
488
490
|
fontWeight: this.titleStyle.fontWeight,
|
|
489
491
|
}
|
|
490
492
|
},
|
|
@@ -509,6 +511,8 @@
|
|
|
509
511
|
return {
|
|
510
512
|
backgroundColor: bgColor,
|
|
511
513
|
color: color,
|
|
514
|
+
fontSize: parseInt(this.titleStyle.actFontSize) + 'rpx',
|
|
515
|
+
fontWeight: this.titleStyle.actFontWeight,
|
|
512
516
|
}
|
|
513
517
|
}
|
|
514
518
|
|
|
@@ -530,7 +534,7 @@
|
|
|
530
534
|
backgroundImage: bgImage,
|
|
531
535
|
padding: '0 32rpx',
|
|
532
536
|
color: color,
|
|
533
|
-
fontSize:
|
|
537
|
+
fontSize: parseInt(this.titleStyle.actFontSize) + 'rpx',
|
|
534
538
|
fontWeight: this.titleStyle.actFontWeight,
|
|
535
539
|
}
|
|
536
540
|
},
|
|
@@ -702,16 +706,16 @@
|
|
|
702
706
|
[{
|
|
703
707
|
color: titleColor || '#333',
|
|
704
708
|
bgColor: titleBgcColor || '#fff' ,
|
|
705
|
-
fontSize: '32',
|
|
709
|
+
fontSize: this.layout === 'v2' ?'24':'32',
|
|
706
710
|
fontWeight: '400',
|
|
707
711
|
actColor: titleActColor || '',
|
|
708
|
-
actFontWeight: '
|
|
709
|
-
actFontSize: '32',
|
|
712
|
+
actFontWeight: '500',
|
|
713
|
+
actFontSize: this.layout === 'v2' ?'24':'32',
|
|
710
714
|
actBgColor:this.titleBgcActColor || '',
|
|
711
715
|
}],
|
|
712
716
|
{sKey:'titleStyleStatus',fields:['titleStyle'],isMerge: true},
|
|
713
717
|
);
|
|
714
|
-
this.titleShadow = gCPVal(container, 'titleShadow', [this.gStyleValue.shadow,'none'], {isShadow:true, bsOld:['isTitleShadow','isTitleShadowBgcW','isTitleShadowBgc']});
|
|
718
|
+
this.titleShadow = gCPVal(container, 'titleShadow', [this.gStyleValue.shadow , 'none'], {isShadow:true, bsOld:['isTitleShadow','isTitleShadowBgcW','isTitleShadowBgc']});
|
|
715
719
|
this.titleBorder = gCPVal(container, 'titleBorder', [{color: '#eee', width: '0', style: 'solid'},{color: '#eee', width: '0', style: 'solid'}], {isBorder:true, bsOld:['isTitleBorder','isTitleBorderW','isTitleBorderColor']});
|
|
716
720
|
this.titleBorderWidth = gCPVal(container, 'titleBorder', [{color: '#eee', width: '0', style: 'solid'},{color: '#eee', width: '0', style: 'solid'}], {isBorder:true,isBsWidth: true, bsOld:['isTitleBorder','isTitleBorderW','isTitleBorderColor']});
|
|
717
721
|
|
|
@@ -771,8 +775,10 @@
|
|
|
771
775
|
|
|
772
776
|
switchTab(i){
|
|
773
777
|
this.tabIndex = i;
|
|
778
|
+
this.brandList = null
|
|
774
779
|
this.getList();
|
|
775
780
|
},
|
|
781
|
+
|
|
776
782
|
getList(){
|
|
777
783
|
this.$xdShowLoading({});
|
|
778
784
|
let params = {
|
|
@@ -783,9 +789,9 @@
|
|
|
783
789
|
if(this.isCityFilter === "Y") params['city_code'] = this.stateCity.city_code;
|
|
784
790
|
else params['city_code'] = '';
|
|
785
791
|
if(this.category_ids && this.category_ids.length > 0) params['category_ids'] = this.category_ids.join(",");
|
|
792
|
+
|
|
786
793
|
jfbRootExec("getNewBrandWallList", {vm: this,data: params}).then(res => {
|
|
787
794
|
this.$xdHideLoading();
|
|
788
|
-
|
|
789
795
|
let brandList = res.items.map(item => {
|
|
790
796
|
item['brand_icon'] = item.brand_icon ? getServiceUrl(item.brand_icon, "size2") : "";
|
|
791
797
|
item['status'] = true;
|
|
@@ -794,7 +800,10 @@
|
|
|
794
800
|
|
|
795
801
|
//补缺
|
|
796
802
|
if(brandList.length >0) {
|
|
797
|
-
let differences =
|
|
803
|
+
let differences = 0;
|
|
804
|
+
if( brandList.length % this.contentCell > 0) {
|
|
805
|
+
differences = this.contentCell - brandList.length % this.contentCell
|
|
806
|
+
}
|
|
798
807
|
for(let i =0; i < differences; i++) {
|
|
799
808
|
brandList.push({isEmpty: true});
|
|
800
809
|
}
|
|
@@ -813,6 +822,7 @@
|
|
|
813
822
|
})
|
|
814
823
|
})
|
|
815
824
|
},
|
|
825
|
+
|
|
816
826
|
toBrand(brand){
|
|
817
827
|
if(this.isPreview) return;
|
|
818
828
|
let { params , brand_id} = brand;
|
|
@@ -4,7 +4,6 @@ import {dataVal, statusDataVal, statusShow, clone, cRaBorShadow,isDefStatus} fro
|
|
|
4
4
|
|
|
5
5
|
export default (datas, gValue, gColor, oldData={})=>{
|
|
6
6
|
let data = clone(datas);
|
|
7
|
-
debugger
|
|
8
7
|
if(typeof data['tabPadding'] === 'string' && data['tabPadding'] ) {
|
|
9
8
|
data['tabPadding'] = {
|
|
10
9
|
top: Number(data['tabPadding']),
|
|
@@ -100,7 +99,7 @@ export default (datas, gValue, gColor, oldData={})=>{
|
|
|
100
99
|
fontSize:'32',
|
|
101
100
|
fontWeight: '400',
|
|
102
101
|
actFontSize:'32',
|
|
103
|
-
actFontWeight: '
|
|
102
|
+
actFontWeight: '500',
|
|
104
103
|
actColor: data['titleActColor'] || gValue.mainColor,
|
|
105
104
|
actBgColor: data['titleBgcActColor'] || ''
|
|
106
105
|
},
|
|
@@ -140,7 +140,7 @@
|
|
|
140
140
|
</view>
|
|
141
141
|
<!--商品列表-->
|
|
142
142
|
<xd-no-data :scale-size="2" type="product" v-if="prodList && prodList.length === 0"></xd-no-data>
|
|
143
|
-
<xd-more v-if="(isPreview || !hasNext) && prodList.length > 0" :color="footerColor" :background="footerColor"><text>我是有底线的</text></xd-more>
|
|
143
|
+
<xd-more v-if="(isPreview || !hasNext) && (prodList && prodList.length > 0)" :color="footerColor" :background="footerColor"><text>我是有底线的</text></xd-more>
|
|
144
144
|
<xd-to-top :isPreview="isPreview" :mainColor="mainColor" ref="VT" :scrollTop="top"></xd-to-top>
|
|
145
145
|
</view>
|
|
146
146
|
</view>
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
height="750rpx"
|
|
29
29
|
:indicatorDots="false"
|
|
30
30
|
@animationfinish="animationfinish"
|
|
31
|
-
>
|
|
31
|
+
>
|
|
32
32
|
<!--#ifdef H5-->
|
|
33
33
|
<template slot-scope="{ item,index }">
|
|
34
34
|
<image v-show="item.status===true" @error="item.status=false" @click="handlePreview(index,item)" :src="item.src"></image>
|
|
@@ -148,7 +148,7 @@
|
|
|
148
148
|
<xd-font-icon class="_ext" size="36" icon="iconsangedian-x" color="#999999"></xd-font-icon>
|
|
149
149
|
</view>
|
|
150
150
|
<view v-if="base_info.notice_text" class="content-item">
|
|
151
|
-
<xd-content-xss class="address_notice_content" :html="base_info.notice_text"></xd-content-xss>
|
|
151
|
+
<xd-content-xss class="address_notice_content" :html="base_info.notice_text"></xd-content-xss>
|
|
152
152
|
<xd-font-icon @click.stop="handleNotice" class="_ext" size="36" icon="iconwenhao" color="#999999"></xd-font-icon>
|
|
153
153
|
</view>
|
|
154
154
|
</view>
|
|
@@ -320,10 +320,10 @@
|
|
|
320
320
|
:layoutInfo="layoutInfo"
|
|
321
321
|
:fixedStyle="fixedStyle"
|
|
322
322
|
:mainColor="mainColor"
|
|
323
|
-
:salePriceColor="salePriceColor"
|
|
324
|
-
:salePriceFontSize="salePriceFontSize"
|
|
325
|
-
:originalPriceFontSize="originalPriceFontSize"
|
|
326
|
-
:originalPriceColor="originalPriceColor"
|
|
323
|
+
:salePriceColor="salePriceColor"
|
|
324
|
+
:salePriceFontSize="salePriceFontSize"
|
|
325
|
+
:originalPriceFontSize="originalPriceFontSize"
|
|
326
|
+
:originalPriceColor="originalPriceColor"
|
|
327
327
|
:isPlus="is_plus_site"
|
|
328
328
|
@change="handleSkuChange"
|
|
329
329
|
@onConfirm="handleConfirmSku"
|
|
@@ -583,7 +583,7 @@
|
|
|
583
583
|
if(!this.buyButton.page_buttons) return null;
|
|
584
584
|
return this.buyButton.page_buttons.find(item => item.code === 'view-delivery-scope');
|
|
585
585
|
},
|
|
586
|
-
alert_bottom() {
|
|
586
|
+
alert_bottom() {
|
|
587
587
|
let style = this.fixedStyle({ paddingBottom: (this.btnHeight), zIndex: 110 })
|
|
588
588
|
return style
|
|
589
589
|
},
|
|
@@ -604,7 +604,7 @@
|
|
|
604
604
|
},
|
|
605
605
|
sectionBoxStyle() {
|
|
606
606
|
console.log(this.sectionPadding,'this.getMarginAndPadding(this.sectionPadding,0)');
|
|
607
|
-
|
|
607
|
+
|
|
608
608
|
return {
|
|
609
609
|
margin: this.getMarginAndPadding(this.sectionPadding,0),
|
|
610
610
|
borderRadius: this.sectionRadius + 'rpx',
|
|
@@ -631,7 +631,7 @@
|
|
|
631
631
|
padding: this.getMarginAndPadding(this.btnPadding, 0)
|
|
632
632
|
};
|
|
633
633
|
console.log(this.btnPadding,'this.btnPaddingst');
|
|
634
|
-
|
|
634
|
+
|
|
635
635
|
if(this.bottomBtnOrder === 'reverse'){
|
|
636
636
|
style['flexDirection'] = 'row-reverse';
|
|
637
637
|
}
|
|
@@ -678,7 +678,7 @@
|
|
|
678
678
|
}
|
|
679
679
|
},
|
|
680
680
|
created() {
|
|
681
|
-
console.log(this.getTokenForKey('user_level'), 'user_leveluser_level');
|
|
681
|
+
console.log(this.getTokenForKey('user_level'), 'user_leveluser_level');
|
|
682
682
|
this.init(this.container);
|
|
683
683
|
this.is_plus_site = this.projectAttr.headers['X-Site-Group']==="vip";
|
|
684
684
|
this.is_vip = this.getTokenForKey('user_level')&&this.getTokenForKey('user_level')==='VIP'?true:false
|
|
@@ -831,9 +831,13 @@
|
|
|
831
831
|
...data,
|
|
832
832
|
}
|
|
833
833
|
}).then(res => {
|
|
834
|
+
|
|
835
|
+
//res = {"base_info":{"product_id":66359621,"partner_id":161,"product_type":"good","category_id":142028,"product_name":"LUOLAI\/罗莱家纺月冉晓杏全棉可水洗夏被","sub_title":"","thumb":"\/uploads\/20250609\/b24185b5c38d3018cadf48c91d159e62.jpg","product_tags":[],"market_tags":[],"tags":[],"prices":{"sale_price":29000,"activity_price":0,"market_price":59900,"wholesale_prices":[],"vip_price":0,"show_prices":[{"p":29000,"n":"","t":"S"},{"p":59900,"n":"","t":"U"}]},"sale_num":4,"region_limit_tpl_id":"MxAZmuFFEX_wzGPmnoUYF","channel_code":"anVmdWJhb3w2NjM1OTYyMQ%3D%3D","notice_text":""},"images":[{"src":"\/uploads\/20250611\/90b6ec501ea7591fc006871c1fb78869.jpg"},{"src":"\/uploads\/20250609\/dec58372f4e7f1ef1ee8792820104e1f.jpg"},{"src":"\/uploads\/20250609\/27300fe6c336db75b18593823b5471cc.jpg"},{"src":"\/uploads\/20250609\/0ce25a57e372377223ec76d45409bfe4.jpg"},{"src":"\/uploads\/20250609\/9c3a9c7bd8d9361c23aee0d64c47409e.jpg"}],"videos":[],"parameters":[{"label":"品牌","value":"LUOLAI\/罗莱家纺","key":"brand"}],"delivery_methods":[{"label":"快递配送","value":"logistics"}],"brand_info":{"brand_id":40064,"brand_name":"LUOLAI\/罗莱家纺","brand_icon":"https:\/\/jfb-public-images.oss-cn-qingdao.aliyuncs.com\/admin-upload\/202105081449057244.jpg?x-oss-process=style\/common","brand_type":"MA","supplier_id":1358505},"skus":[{"product_sku":70199044,"standards":[{"attr_id":"","name":"月冉晓杏全棉可水洗夏被","value":"150*200cm\/950g","image":"\/\/img1-b.jufubao.cn\/uploads\/20250611\/a9c8fd6dc54918eb6687c65fea034e55.jpg?ver=1749625095120","desc":""}],"prices":{"sale_price":29000,"activity_price":0,"market_price":59900,"wholesale_prices":[],"vip_price":0,"show_prices":[{"p":29000,"n":"","t":"S"},{"p":59900,"n":"","t":"U"}]},"enabled":true},{"product_sku":70199045,"standards":[{"attr_id":"","name":"月冉晓杏全棉可水洗夏被","value":"200*230cm\/1450g","image":"\/\/img1-b.jufubao.cn\/uploads\/20250611\/0eca2b62949531ce2e22137ab7580a2c.jpg?ver=1749625100584","desc":""}],"prices":{"sale_price":36600,"activity_price":0,"market_price":69900,"wholesale_prices":[],"vip_price":0,"show_prices":[{"p":36600,"n":"","t":"S"},{"p":69900,"n":"","t":"U"}]},"enabled":true}],"sms_activity":{"status":"","activity_type":"","activity_tips":"","activity_price":0,"end_time":0,"start_time":0,"distance_start_time":0,"distance_end_time":0,"max_buy_num":0,"is_today":""},"similar_products":[],"request_id":"c4fa548ce8fa2185"}
|
|
836
|
+
|
|
837
|
+
|
|
834
838
|
this.$xdHideLoading({});
|
|
835
839
|
this.loadingInfo = false;
|
|
836
|
-
const { base_info, brand_info, delivery_methods, images, parameters, skus, similar_products, videos, sms_activity } = res;
|
|
840
|
+
const { base_info, brand_info, delivery_methods, images, parameters, skus, similar_products, videos, sms_activity } = res;
|
|
837
841
|
if(base_info.prices.market_price) {
|
|
838
842
|
base_info.prices.market_price = this.$xdUniHelper.divisionFloatNumber(base_info.prices.market_price,100)
|
|
839
843
|
}
|
|
@@ -996,23 +1000,23 @@
|
|
|
996
1000
|
|
|
997
1001
|
// 根据布局类型设置价格
|
|
998
1002
|
if (this.goodsLayout === 'flash') {
|
|
999
|
-
const prices = this.smsStatus === 'ing'
|
|
1000
|
-
? PRICE_CONFIG.FLASH.ING
|
|
1003
|
+
const prices = this.smsStatus === 'ing'
|
|
1004
|
+
? PRICE_CONFIG.FLASH.ING
|
|
1001
1005
|
: PRICE_CONFIG.FLASH.WARM;
|
|
1002
|
-
|
|
1006
|
+
|
|
1003
1007
|
this.$set(this.base_info.prices, 'show_prices', prices);
|
|
1004
|
-
|
|
1008
|
+
|
|
1005
1009
|
// 处理时间格式
|
|
1006
|
-
this.hours = this.smsStatus === 'ing'
|
|
1007
|
-
? this.hours.split(':')[0]
|
|
1008
|
-
: this.hours.includes(':00')
|
|
1009
|
-
? this.hours
|
|
1010
|
+
this.hours = this.smsStatus === 'ing'
|
|
1011
|
+
? this.hours.split(':')[0]
|
|
1012
|
+
: this.hours.includes(':00')
|
|
1013
|
+
? this.hours
|
|
1010
1014
|
: `${this.hours}:00`;
|
|
1011
1015
|
} else {
|
|
1012
|
-
const prices = this.showDiscount === 'Y'
|
|
1013
|
-
? PRICE_CONFIG.NORMAL.WITH_DISCOUNT
|
|
1016
|
+
const prices = this.showDiscount === 'Y'
|
|
1017
|
+
? PRICE_CONFIG.NORMAL.WITH_DISCOUNT
|
|
1014
1018
|
: PRICE_CONFIG.NORMAL.WITHOUT_DISCOUNT;
|
|
1015
|
-
|
|
1019
|
+
|
|
1016
1020
|
this.$set(this.base_info.prices, 'show_prices', prices);
|
|
1017
1021
|
}
|
|
1018
1022
|
},
|
|
@@ -1144,7 +1148,7 @@
|
|
|
1144
1148
|
this.getElementHeight()
|
|
1145
1149
|
});
|
|
1146
1150
|
},50)
|
|
1147
|
-
|
|
1151
|
+
|
|
1148
1152
|
}).catch(err => {
|
|
1149
1153
|
this.$xdHideLoading();
|
|
1150
1154
|
this.$xdLog.catch(err);
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
*/
|
|
13
13
|
module.exports = [
|
|
14
14
|
{
|
|
15
|
-
mapFnName: '
|
|
15
|
+
mapFnName: 'getNewMallProductList',
|
|
16
16
|
title: '获取商品列表',
|
|
17
17
|
path: '/product/v1/:xnamespace/product/search',
|
|
18
18
|
isRule: false,
|
|
@@ -33,14 +33,14 @@ module.exports = [
|
|
|
33
33
|
disabled: true,
|
|
34
34
|
},
|
|
35
35
|
{
|
|
36
|
-
mapFnName: '
|
|
36
|
+
mapFnName: 'getNewMallCategoryTree',
|
|
37
37
|
title: '分类 - 树列表',
|
|
38
|
-
path: '/product/v1/:xnamespace/category/
|
|
38
|
+
path: '/product/v1/:xnamespace/category/tree',
|
|
39
39
|
isRule: false,
|
|
40
40
|
params: {
|
|
41
41
|
xnamespace: ['xnamespace', 'String', '必选'],
|
|
42
|
-
|
|
43
|
-
|
|
42
|
+
level: ['获取几层数据,默认:2', 'Number', '必选', 2],
|
|
43
|
+
root_category_id: ['父级分类,默认:0', 'Number', '必选', 0],
|
|
44
44
|
},
|
|
45
45
|
isConsole: true,
|
|
46
46
|
disabled: true,
|
|
@@ -59,8 +59,8 @@ module.exports = [
|
|
|
59
59
|
disabled: true,
|
|
60
60
|
},
|
|
61
61
|
{
|
|
62
|
-
mapFnName: "
|
|
63
|
-
mapFn: "
|
|
62
|
+
mapFnName: "getNewSearchFilterList",
|
|
63
|
+
mapFn: "getNewSearchFilterList",
|
|
64
64
|
title: "获取商品搜索过滤列表",
|
|
65
65
|
path: "/product/v1/:xnamespace/product/search-filters",
|
|
66
66
|
isRule: false,
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<view class="jfb-filter" v-if="showQuery === 'Y'" :style="[cssStyle]">
|
|
3
|
+
|
|
3
4
|
<view class="jfb-filter-placeholder" :style="[placeholderStyleComp]"></view>
|
|
4
5
|
<view class="jfb-filter-menu" :style="[cusMenuStyle,menuStyleTopComp]">
|
|
5
6
|
<template v-if="sortList.length > 0">
|
|
@@ -95,7 +96,7 @@
|
|
|
95
96
|
:class="{
|
|
96
97
|
active: isOtherActive(tab, item.value),
|
|
97
98
|
noMarginRigth: i%column === (column-1),
|
|
98
|
-
noMarginTop: i/column
|
|
99
|
+
noMarginTop: i/column < 1
|
|
99
100
|
}"
|
|
100
101
|
@click="setOhterChooseTag(tab, item)"
|
|
101
102
|
>{{item.label}}</view>
|
|
@@ -252,19 +253,19 @@ export default {
|
|
|
252
253
|
return {
|
|
253
254
|
zIndex: this.showQueryModal ? 1002 : 1,
|
|
254
255
|
position:this.$configProject.isPreview?'absolute':'fixed',
|
|
255
|
-
top: this.$configProject.isPreview ? 0 : this.queryMaskComp.top
|
|
256
|
+
top: this.$configProject.isPreview ? 0 : (parseInt(this.queryMaskComp.top) - 2) + 'rpx',
|
|
256
257
|
}
|
|
257
258
|
},
|
|
258
259
|
queryTopComp(){
|
|
259
260
|
let {paddingTb} = this.cusMenuStyle;
|
|
260
261
|
let height = 48;//默认90高,填充0
|
|
261
262
|
return {
|
|
262
|
-
top: this.topHeight + this.layoutInfo.top + (height + paddingTb -
|
|
263
|
+
top: this.topHeight + this.layoutInfo.top + (height + paddingTb - 2) + 'rpx'
|
|
263
264
|
}
|
|
264
265
|
},
|
|
265
266
|
menuTextColorComp(){
|
|
266
267
|
return {
|
|
267
|
-
color: this.cusMenuStyle.color || '#
|
|
268
|
+
color: this.cusMenuStyle.color || '#999'
|
|
268
269
|
}
|
|
269
270
|
},
|
|
270
271
|
|
|
@@ -331,7 +332,7 @@ export default {
|
|
|
331
332
|
if(this.menuAct !== 'common') {
|
|
332
333
|
params = {
|
|
333
334
|
...params,
|
|
334
|
-
borderColor: Color(font.color).alpha(0.
|
|
335
|
+
borderColor: Color(font.color).alpha(0.2).toString(),
|
|
335
336
|
backgroundColor: Color(font.color).alpha(0.1).toString(),
|
|
336
337
|
}
|
|
337
338
|
}
|
|
@@ -776,7 +777,8 @@ export default {
|
|
|
776
777
|
border-top: 1px solid var(--com-menu-border);
|
|
777
778
|
display: flex;
|
|
778
779
|
justify-content: space-around;
|
|
779
|
-
height:
|
|
780
|
+
height: 49rpx;
|
|
781
|
+
|
|
780
782
|
|
|
781
783
|
&-item {
|
|
782
784
|
display: flex;
|
|
@@ -893,7 +895,7 @@ export default {
|
|
|
893
895
|
|
|
894
896
|
& > ._tag {
|
|
895
897
|
text-align: center;
|
|
896
|
-
line-height:
|
|
898
|
+
line-height: 62rpx;
|
|
897
899
|
border-radius: 4rpx;
|
|
898
900
|
font-size: 24rpx;
|
|
899
901
|
color: #666;
|
|
@@ -902,6 +904,9 @@ export default {
|
|
|
902
904
|
white-space: nowrap;
|
|
903
905
|
box-sizing: border-box;
|
|
904
906
|
background-color: #f8f8f8;
|
|
907
|
+
border-width: 2rpx;
|
|
908
|
+
border-style: solid;
|
|
909
|
+
padding: 0 10rpx;
|
|
905
910
|
|
|
906
911
|
&.noMarginRigth{
|
|
907
912
|
margin-right: 0!important;
|
|
@@ -24,7 +24,6 @@
|
|
|
24
24
|
<view v-if="!loaded" class="skeleton-cate">
|
|
25
25
|
<view class="cate_tab" v-if="showCategory === 'Y'">
|
|
26
26
|
<view class="cate_tab_item" v-for="i in 5" :key="i"></view>
|
|
27
|
-
|
|
28
27
|
</view>
|
|
29
28
|
<view class="sub_cate" v-if="showCategory === 'Y'">
|
|
30
29
|
<view class="sub_cate_item" v-for="i in 5" :key="i">
|
|
@@ -449,6 +448,12 @@
|
|
|
449
448
|
if(this.initStatus && this.onLoadStatus) this.handleInit();
|
|
450
449
|
},
|
|
451
450
|
|
|
451
|
+
filterModeData(){
|
|
452
|
+
if(this.$configProject.isPreview) {
|
|
453
|
+
this.$refs['filter-query'].hideSelectMenu();//隐藏菜单
|
|
454
|
+
}
|
|
455
|
+
},
|
|
456
|
+
|
|
452
457
|
},
|
|
453
458
|
created() {
|
|
454
459
|
this.isPreview = this.$configProject.isPreview;
|
|
@@ -663,7 +668,7 @@
|
|
|
663
668
|
let defFilterBgcColor = '#fff';
|
|
664
669
|
if( category ==='v4') defFilterBgcColor = this.pageAttr.background;
|
|
665
670
|
this.filterBgcColor = gCPVal(container, 'filterBgcColor', [defFilterBgcColor,'#fff'], {sKey: 'filterBgcColorStatus',fields:['filterBgcColor']});
|
|
666
|
-
this.filterColor = gCPVal(container, 'filterColor', ['#
|
|
671
|
+
this.filterColor = gCPVal(container, 'filterColor', ['#333'], {sKey: 'filterColorStatus',fields:['filterColor']});
|
|
667
672
|
this.filterTopBorder = gCPVal(container, 'filterTopBorder', [{ color: '#f8f8f8', width: '2', style: 'solid'},{ color: '#f8f8f8', width: '0', style: 'solid'}], {isBorder:true});
|
|
668
673
|
this.filterTopBorderWidth = gCPVal(container, 'filterTopBorder', [{ color: '#f8f8f8', width: '2', style: 'solid'},{ color: '#f8f8f8', width: '0', style: 'solid'}], {isBorder:true, isBsWidth: true});
|
|
669
674
|
|
|
@@ -809,22 +814,25 @@
|
|
|
809
814
|
|
|
810
815
|
//二级导航文字颜色
|
|
811
816
|
this.level2BgcColor = gCPVal(container, 'level2BgcColor', ['#fff','#f8f8f8'],{sKey:'level2BgcColorStatus', fields:['level2BgcColor']});
|
|
817
|
+
|
|
818
|
+
let color = gCPVal(container, 'level2Color', '') || '#333',
|
|
819
|
+
actColoor= this.mainColor , bgColor='',bgActColor='';
|
|
820
|
+
if(categoryLayout1ShowType === 'parentNew') {
|
|
821
|
+
actColoor = '#fff';
|
|
822
|
+
bgActColor = this.mainColor;
|
|
823
|
+
}
|
|
824
|
+
|
|
812
825
|
const level2Name = gCPVal(container, 'level2Name', {
|
|
813
826
|
fontSize: '24',
|
|
814
827
|
actFontSize: '24',
|
|
815
|
-
color:
|
|
816
|
-
actColor:
|
|
817
|
-
bgColor:
|
|
818
|
-
actBgColor:
|
|
828
|
+
color: color,
|
|
829
|
+
actColor:actColoor,
|
|
830
|
+
bgColor:bgColor,
|
|
831
|
+
actBgColor:bgActColor,
|
|
819
832
|
fontWeight: 'normal',
|
|
820
833
|
actFontWeight: 'normal',
|
|
821
|
-
borderStyle:'solid',
|
|
822
|
-
borderColor: 'rgba(0,0,0,0)',
|
|
823
|
-
borderWidth: 0,
|
|
824
|
-
borderActStyle:'solid',
|
|
825
|
-
borderActColor: 'rgba(0,0,0,0)',
|
|
826
|
-
borderActWidth:0,
|
|
827
834
|
},{sKey:'level2NameStatus', fields:['level2Name','level2Color'],isMerge: true});
|
|
835
|
+
debugger
|
|
828
836
|
|
|
829
837
|
const subTitleRadius = gCPVal(container, 'subTitleRadius', ['40rpx'],{sKey:'subTitleRadiusStatus', fields:['subTitleRadius']})||0;
|
|
830
838
|
const subTitleIconShadow = gCPVal(container, 'subTitleIconShadow', [this.gStyleValue.shadow,'none'], {isShadow:true});
|
|
@@ -956,7 +964,7 @@
|
|
|
956
964
|
this.isFirst = false;
|
|
957
965
|
clearTimeout(this.timer);
|
|
958
966
|
this.timer = setTimeout(() => {
|
|
959
|
-
jfbRootExec("
|
|
967
|
+
jfbRootExec("getNewMallProductList", {
|
|
960
968
|
vm: this,
|
|
961
969
|
data: this.$xdUniHelper.deleteParamEmptyKey(data)
|
|
962
970
|
})
|
|
@@ -1047,13 +1055,12 @@
|
|
|
1047
1055
|
getCategoryList(){
|
|
1048
1056
|
return new Promise((resolve)=>{
|
|
1049
1057
|
if(this.showCategory==="Y") {
|
|
1050
|
-
jfbRootExec("
|
|
1058
|
+
jfbRootExec("getNewMallCategoryTree", {
|
|
1051
1059
|
vm: this,
|
|
1052
1060
|
data: {
|
|
1053
1061
|
xnamespace: this.xnamespace,
|
|
1054
|
-
|
|
1062
|
+
root_category_id: Number(this.parentId),
|
|
1055
1063
|
level: 2,
|
|
1056
|
-
need_rec: this.options.need_rec
|
|
1057
1064
|
}
|
|
1058
1065
|
})
|
|
1059
1066
|
.then(res => {
|
|
@@ -1102,7 +1109,7 @@
|
|
|
1102
1109
|
//过滤条件
|
|
1103
1110
|
getSearchFilterList(){
|
|
1104
1111
|
let data = this.getFilterListParams();
|
|
1105
|
-
jfbRootExec("
|
|
1112
|
+
jfbRootExec("getNewSearchFilterList", {
|
|
1106
1113
|
vm: this,
|
|
1107
1114
|
data: data
|
|
1108
1115
|
}).then(res => {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
module.exports = {
|
|
4
|
-
|
|
4
|
+
getNewSearchFilterList: {
|
|
5
5
|
items: [
|
|
6
6
|
{
|
|
7
7
|
title: '配送方式',
|
|
@@ -93,7 +93,7 @@ module.exports = {
|
|
|
93
93
|
],
|
|
94
94
|
request_id: "f1733f02aa8c9672"
|
|
95
95
|
},
|
|
96
|
-
|
|
96
|
+
getNewMallProductList: {
|
|
97
97
|
total_size: 8,
|
|
98
98
|
next_page_token: "1",
|
|
99
99
|
list: [
|
|
@@ -443,7 +443,7 @@ module.exports = {
|
|
|
443
443
|
],
|
|
444
444
|
request_id: "9512a165463ba45b"
|
|
445
445
|
},
|
|
446
|
-
|
|
446
|
+
getNewMallCategoryTree: {
|
|
447
447
|
items: [
|
|
448
448
|
{
|
|
449
449
|
category_name: "佳节礼品",
|
|
@@ -502,66 +502,5 @@ module.exports = {
|
|
|
502
502
|
}
|
|
503
503
|
],
|
|
504
504
|
request_id: "bf0aed811fd63214"
|
|
505
|
-
},
|
|
506
|
-
getMallCategoryChildren: {
|
|
507
|
-
items: [
|
|
508
|
-
{
|
|
509
|
-
category_name: "佳节礼品",
|
|
510
|
-
category_id: 10001,
|
|
511
|
-
category_icon:
|
|
512
|
-
"http://static.e56buy.com/XdnPLVzrdDzhdZJGZvy5Mt2QLhgtYZwV",
|
|
513
|
-
children: []
|
|
514
|
-
},
|
|
515
|
-
{
|
|
516
|
-
category_name: "粮油副食",
|
|
517
|
-
category_id: 10002,
|
|
518
|
-
category_icon:
|
|
519
|
-
"http://sandbox-img.jufubao.cn/uploads/20230406/2bcd668a78c0171f83ca68a9dfc2f8f5.jpeg",
|
|
520
|
-
children: []
|
|
521
|
-
},
|
|
522
|
-
{
|
|
523
|
-
category_name: "休闲食品",
|
|
524
|
-
category_id: 10003,
|
|
525
|
-
category_icon:
|
|
526
|
-
"http://sandbox-img.jufubao.cn/uploads/20230403/dadf68c84461a3a3f1caa30fe4debc2f.jpg",
|
|
527
|
-
children: []
|
|
528
|
-
},
|
|
529
|
-
{
|
|
530
|
-
category_name: "乳品饮料",
|
|
531
|
-
category_id: 10004,
|
|
532
|
-
category_icon:
|
|
533
|
-
"http://sandbox-img.jufubao.cn/uploads/20230324/008363a661eec227e2e1dd91ea6095e0.png",
|
|
534
|
-
children: []
|
|
535
|
-
},
|
|
536
|
-
{
|
|
537
|
-
category_name: "家纺用品",
|
|
538
|
-
category_id: 10005,
|
|
539
|
-
category_icon:
|
|
540
|
-
"http://sandbox-img.jufubao.cn/uploads/20230525/b432700f35328c44fc8b8c9f36a113f0.png",
|
|
541
|
-
children: []
|
|
542
|
-
},
|
|
543
|
-
{
|
|
544
|
-
category_name: "家用电器",
|
|
545
|
-
category_id: 10006,
|
|
546
|
-
category_icon:
|
|
547
|
-
"http://sandbox-img.jufubao.cn/uploads/20230525/a849865fcb85f7756285a2a96a90811b.jpg",
|
|
548
|
-
children: []
|
|
549
|
-
},
|
|
550
|
-
{
|
|
551
|
-
category_name: "日货用品",
|
|
552
|
-
category_id: 10007,
|
|
553
|
-
category_icon:
|
|
554
|
-
"http://sandbox-img.jufubao.cn/uploads/20230525/f56df5f334b392daaa539e74df269dbe.jpg",
|
|
555
|
-
children: []
|
|
556
|
-
},
|
|
557
|
-
{
|
|
558
|
-
category_name: "生鲜冷链",
|
|
559
|
-
category_id: 10008,
|
|
560
|
-
category_icon:
|
|
561
|
-
"http://static.e56buy.com/XdHO6sAVMAb8WzwPvtwoo1iuCxh8uWXp",
|
|
562
|
-
children: []
|
|
563
|
-
}
|
|
564
|
-
],
|
|
565
|
-
request_id: "bf0aed811fd63214"
|
|
566
505
|
}
|
|
567
506
|
};
|
|
@@ -57,6 +57,7 @@
|
|
|
57
57
|
<image :src="sub.category_icon" style="width:100%;height:100%"/>
|
|
58
58
|
</view>
|
|
59
59
|
</view>
|
|
60
|
+
<view style="margin-top: 8rpx; height: 36rpx"></view>
|
|
60
61
|
<view
|
|
61
62
|
class="sub_name"
|
|
62
63
|
:style="[sub.category_id === (['child','parentNew'].includes(showType)? uiPid:uiCateId )?level2ActNameComp:level2NameComp]"
|
|
@@ -332,13 +333,14 @@ export default {
|
|
|
332
333
|
|
|
333
334
|
methods: {
|
|
334
335
|
init(navList, pid){
|
|
336
|
+
debugger
|
|
335
337
|
if(navList.length === 0) return;
|
|
336
338
|
|
|
337
339
|
//预览模式生效
|
|
338
340
|
if(this.isPreview) {
|
|
339
341
|
navList = navList.filter(item=>{
|
|
340
342
|
//显示父级显示全部分类
|
|
341
|
-
if(['all', 'parent','parentNew'].includes(this.showType)) return true
|
|
343
|
+
if(['all', 'parent','parentNew','child'].includes(this.showType)) return true
|
|
342
344
|
//只显示子级去掉全部分类
|
|
343
345
|
else return item.category_id !== -1
|
|
344
346
|
});
|
|
@@ -353,6 +355,14 @@ export default {
|
|
|
353
355
|
this.subCategory = navList[this.tabIndex].children;
|
|
354
356
|
}
|
|
355
357
|
|
|
358
|
+
//图片样式作为一级显示时候(预览模式)
|
|
359
|
+
if(['child','parentNew'].includes(this.showType)) {
|
|
360
|
+
if(this.pid === '') {
|
|
361
|
+
this.uiPid = -1;
|
|
362
|
+
this.initPid = -1;
|
|
363
|
+
}
|
|
364
|
+
}
|
|
365
|
+
|
|
356
366
|
this.transformNavList = navList;
|
|
357
367
|
this.refreshNav = Date.now()
|
|
358
368
|
|
|
@@ -504,12 +514,17 @@ export default {
|
|
|
504
514
|
align-content: center;
|
|
505
515
|
flex-flow: nowrap;
|
|
506
516
|
|
|
517
|
+
|
|
507
518
|
.sub_cate {
|
|
508
519
|
display: inline-block;
|
|
509
520
|
margin: 16rpx var(--sub-icon-right-sp) 16rpx 0;
|
|
510
521
|
padding: 0 16rpx;
|
|
511
522
|
text-align: center;
|
|
512
523
|
|
|
524
|
+
& > view {
|
|
525
|
+
position: relative;
|
|
526
|
+
}
|
|
527
|
+
|
|
513
528
|
&:last-child {
|
|
514
529
|
margin-right: 32rpx;
|
|
515
530
|
}
|
|
@@ -541,6 +556,7 @@ export default {
|
|
|
541
556
|
margin-top: 8rpx;
|
|
542
557
|
overflow: hidden;
|
|
543
558
|
white-space: wrap;
|
|
559
|
+
box-sizing: border-box;
|
|
544
560
|
word-break: break-all;
|
|
545
561
|
line-height: 36rpx;
|
|
546
562
|
height: 36rpx;
|
|
@@ -67,7 +67,7 @@
|
|
|
67
67
|
<view :style="[subTitleIcon]" class="sub_icon">
|
|
68
68
|
<image :src="item.category_icon" />
|
|
69
69
|
</view>
|
|
70
|
-
<view :style="[(uiPid === item.category_id?level2ActNameComp:level2NameComp)]">{{item.category_name||item.name}}</view>
|
|
70
|
+
<view class="sub_name" :style="[(uiPid === item.category_id?level2ActNameComp:level2NameComp)]">{{item.category_name||item.name}}</view>
|
|
71
71
|
</view>
|
|
72
72
|
</view>
|
|
73
73
|
<!--一级分类-->
|
|
@@ -160,14 +160,19 @@ export default {
|
|
|
160
160
|
},
|
|
161
161
|
cateBarStyleRLComp(){
|
|
162
162
|
return {
|
|
163
|
-
backgroundColor: Color( this.styleConfig.backgroundColor).lighten(.2).hex().toString()
|
|
163
|
+
backgroundColor: Color( this.styleConfig.backgroundColor).lighten(.2).hex().toString(),
|
|
164
164
|
}
|
|
165
165
|
},
|
|
166
166
|
cateBarStyleComp(){
|
|
167
|
+
let orderColor = '';
|
|
168
|
+
let {backgroundColor} = this.styleConfig;
|
|
169
|
+
if(Color(backgroundColor).isDark()) orderColor = Color(backgroundColor).lighten(0.8).toString();
|
|
170
|
+
else if(Color(backgroundColor).isLight()) orderColor = Color(backgroundColor).darken(0.05).toString();
|
|
171
|
+
|
|
167
172
|
return {
|
|
168
173
|
top: this.$configProject.isPreview?0:(this.layoutInfo.top) + 'rpx',
|
|
169
174
|
backgroundColor: this.styleConfig.backgroundColor,
|
|
170
|
-
'--border-color':
|
|
175
|
+
'--border-color': orderColor,
|
|
171
176
|
position: this.$configProject.isPreview?'absolute':'fixed',
|
|
172
177
|
};
|
|
173
178
|
},
|
|
@@ -195,7 +200,8 @@ export default {
|
|
|
195
200
|
itemStyleComp(){
|
|
196
201
|
return {
|
|
197
202
|
width: this.getWidth(64,5) + 'px',
|
|
198
|
-
margin:'0 0 24rpx'
|
|
203
|
+
margin:'0 0 24rpx',
|
|
204
|
+
paddingBottom: '40rpx'
|
|
199
205
|
}
|
|
200
206
|
},
|
|
201
207
|
},
|
|
@@ -362,7 +368,7 @@ export default {
|
|
|
362
368
|
display: flex;
|
|
363
369
|
justify-content: center;
|
|
364
370
|
align-items: center;
|
|
365
|
-
border-left:
|
|
371
|
+
border-left: 4rpx solid var(--border-color);
|
|
366
372
|
background: #FFFFFF;
|
|
367
373
|
z-index: 1;
|
|
368
374
|
flex-shrink: 0;
|
|
@@ -397,6 +403,19 @@ export default {
|
|
|
397
403
|
align-items: center;
|
|
398
404
|
font-size: 24rpx;
|
|
399
405
|
color: #333333;
|
|
406
|
+
position: relative;
|
|
407
|
+
|
|
408
|
+
& > .sub_name {
|
|
409
|
+
left: 0!important;
|
|
410
|
+
right: 0!important;
|
|
411
|
+
text-align: center;
|
|
412
|
+
width: 100%!important;
|
|
413
|
+
overflow: hidden;
|
|
414
|
+
word-break: break-all;
|
|
415
|
+
white-space: wrap;
|
|
416
|
+
height: 36rpx;
|
|
417
|
+
line-height: 36rpx;
|
|
418
|
+
}
|
|
400
419
|
&.active{
|
|
401
420
|
color: var(--main-color);
|
|
402
421
|
}
|
|
@@ -25,9 +25,20 @@ export default {
|
|
|
25
25
|
borderWidth:level2Name.borderWidth + 'rpx',
|
|
26
26
|
borderColor:level2Name.borderColor,
|
|
27
27
|
padding: padding,
|
|
28
|
-
borderRadius: radius
|
|
28
|
+
borderRadius: radius,
|
|
29
|
+
...this.parentNewComp,
|
|
29
30
|
}
|
|
30
31
|
},
|
|
32
|
+
|
|
33
|
+
parentNewComp(){
|
|
34
|
+
return {
|
|
35
|
+
position: 'absolute',
|
|
36
|
+
bottom: '0',
|
|
37
|
+
left: '-16rpx',
|
|
38
|
+
width: `calc(100% + 32rpx)`
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
|
|
31
42
|
level2ActNameComp(){
|
|
32
43
|
if(this.$xdUniHelper.isEmpty(this.tabStyle)) return {}
|
|
33
44
|
if(this.$xdUniHelper.isEmpty(this.tabStyle['level2Name'])) return {}
|
|
@@ -48,7 +59,8 @@ export default {
|
|
|
48
59
|
borderWidth:level2Name.borderActWidth + 'rpx',
|
|
49
60
|
borderColor:level2Name.borderActColor,
|
|
50
61
|
padding: padding,
|
|
51
|
-
borderRadius: radius
|
|
62
|
+
borderRadius: radius,
|
|
63
|
+
...this.parentNewComp,
|
|
52
64
|
}
|
|
53
65
|
},
|
|
54
66
|
|
|
@@ -6,7 +6,8 @@ import {
|
|
|
6
6
|
customVal,
|
|
7
7
|
cusDisabled ,
|
|
8
8
|
getCustomAttr,
|
|
9
|
-
isArray
|
|
9
|
+
isArray,
|
|
10
|
+
isObject
|
|
10
11
|
} from "@/utils/AttrTools";
|
|
11
12
|
import PosterAttr from "@/utils/Attr/PosterAttr";
|
|
12
13
|
import ProductAttr from "@/utils/Attr/ProductAttr";
|
|
@@ -172,7 +173,23 @@ export default (data, gValue,gColor,oldData)=>{
|
|
|
172
173
|
inline:false,
|
|
173
174
|
notice:'建议尺寸:128*128像素',
|
|
174
175
|
rules: [
|
|
175
|
-
{
|
|
176
|
+
{
|
|
177
|
+
validator: (rule, value, callback) => {
|
|
178
|
+
if(!value) callback('请上传全部图片图片');
|
|
179
|
+
else {
|
|
180
|
+
if(!isObject(value)){
|
|
181
|
+
callback('请上传全部图片图片');
|
|
182
|
+
}
|
|
183
|
+
else {
|
|
184
|
+
if(!value.url)callback('请上传全部图片图片');
|
|
185
|
+
else callback()
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
},
|
|
189
|
+
message: '请上传全部图片图片',
|
|
190
|
+
trigger: ['blur', 'change'],
|
|
191
|
+
required: true,
|
|
192
|
+
}
|
|
176
193
|
],
|
|
177
194
|
},
|
|
178
195
|
{
|
|
@@ -203,6 +220,20 @@ export default (data, gValue,gColor,oldData)=>{
|
|
|
203
220
|
groupKey:'content',
|
|
204
221
|
className: 'input100',
|
|
205
222
|
hidden: categoryParentType === 'root',
|
|
223
|
+
rules: [
|
|
224
|
+
{
|
|
225
|
+
validator: (rule, value, callback) => {
|
|
226
|
+
if(categoryParentType === 'root') callback();
|
|
227
|
+
else {
|
|
228
|
+
if(!value) callback('请输入父级分类ID');
|
|
229
|
+
else callback()
|
|
230
|
+
}
|
|
231
|
+
},
|
|
232
|
+
message: '请输入父级分类ID',
|
|
233
|
+
trigger: ['blur', 'change'],
|
|
234
|
+
required: true,
|
|
235
|
+
}
|
|
236
|
+
],
|
|
206
237
|
},
|
|
207
238
|
{ele: 'group_end'},
|
|
208
239
|
{
|
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
import {cRaBorShadow, dataVal, statusDataVal, statusShow} from "@/utils/AttrTools";
|
|
4
|
-
const Color = require('color');
|
|
5
4
|
|
|
6
5
|
export default (data, gValue, gColor, oldData)=>{
|
|
7
6
|
let filterTopBorder = cRaBorShadow(data , 'filterTopBorder',{dValue:'D'}, gValue)
|
|
7
|
+
let filterBgcColor = '#fff';
|
|
8
|
+
if(gValue.isAdd && gValue.isFirst) {
|
|
9
|
+
if(data['category'] === 'v4') filterBgcColor = '#f8f8f8';
|
|
10
|
+
}
|
|
8
11
|
return [
|
|
9
12
|
{
|
|
10
13
|
ele: 'title',
|
|
@@ -70,7 +73,7 @@ export default (data, gValue, gColor, oldData)=>{
|
|
|
70
73
|
ele: 'xd-color',
|
|
71
74
|
valueKey: 'filterBgcColor',
|
|
72
75
|
groupKey:'style',
|
|
73
|
-
value: dataVal({data, key:'filterBgcColor', dValue:
|
|
76
|
+
value: dataVal({data, key:'filterBgcColor', dValue:filterBgcColor, gValue}),
|
|
74
77
|
hidden: !statusShow({data, key: 'filterBgcColorStatus', fields:['filterBgcColor'], gValue}),
|
|
75
78
|
classNmae: 'input80',
|
|
76
79
|
setting: {
|
|
@@ -97,7 +100,7 @@ export default (data, gValue, gColor, oldData)=>{
|
|
|
97
100
|
ele: 'xd-color',
|
|
98
101
|
valueKey: 'filterColor',
|
|
99
102
|
groupKey:'style',
|
|
100
|
-
value: dataVal({data, key:'filterColor', dValue:'#
|
|
103
|
+
value: dataVal({data, key:'filterColor', dValue:'#333', gValue}),
|
|
101
104
|
hidden: !statusShow({data, key: 'filterColorStatus', fields:['filterColor'], gValue}),
|
|
102
105
|
classNmae: 'input80',
|
|
103
106
|
setting: {
|
|
@@ -253,10 +253,10 @@ export default (data, gValue, gColor, oldData)=>{
|
|
|
253
253
|
hidden: !statusShow({data, key: 'level2NameStatus', fields:['level2Name','level2Color'], gValue}) || disabled,
|
|
254
254
|
setting: {
|
|
255
255
|
fontSize: true,
|
|
256
|
-
weight:
|
|
256
|
+
weight:false,
|
|
257
257
|
bgColor:true,
|
|
258
258
|
selected:true,
|
|
259
|
-
isBorder:
|
|
259
|
+
isBorder:false,
|
|
260
260
|
default: level2Name
|
|
261
261
|
},
|
|
262
262
|
handleCustom({action, data}) {
|
|
@@ -200,6 +200,7 @@ export default (data, gValue, gColor, oldData={})=>{
|
|
|
200
200
|
hidden: !statusShow({data, key: 'titleRadiusStatus', fields:['titleRadius'], gValue}),
|
|
201
201
|
placeholder: '请选择商品是否设置圆角',
|
|
202
202
|
multiple: false,
|
|
203
|
+
isBackNotValue: true,
|
|
203
204
|
className: 'input80',
|
|
204
205
|
groupKey:'style',
|
|
205
206
|
handleCustom({action, data}) {
|
|
@@ -409,7 +410,7 @@ export default (data, gValue, gColor, oldData={})=>{
|
|
|
409
410
|
ele: 'xd-radio',
|
|
410
411
|
groupKey: 'style',
|
|
411
412
|
valueKey: 'contRadiusStatus',
|
|
412
|
-
value: statusDataVal({data,
|
|
413
|
+
value: statusDataVal({data,key:'contRadiusStatus',cValue:'N', fields:['contRadius'],gValue}),
|
|
413
414
|
labelInline:true,
|
|
414
415
|
list: [
|
|
415
416
|
{label: '默认', value: 'D'},
|
|
@@ -428,6 +429,7 @@ export default (data, gValue, gColor, oldData={})=>{
|
|
|
428
429
|
placeholder: '请选择商品是否设置圆角',
|
|
429
430
|
multiple: false,
|
|
430
431
|
className: 'input80',
|
|
432
|
+
isBackNotValue: true,
|
|
431
433
|
groupKey:'style',
|
|
432
434
|
handleCustom({action, data}) {
|
|
433
435
|
XdBus.getParentApi('getOptionsSettingList')({
|
|
@@ -469,6 +471,7 @@ export default (data, gValue, gColor, oldData={})=>{
|
|
|
469
471
|
placeholder: '请选择商品图圆角是否设置圆角',
|
|
470
472
|
multiple: false,
|
|
471
473
|
className: 'input80',
|
|
474
|
+
isBackNotValue: true,
|
|
472
475
|
value: dataVal({data, key:'imageRadius', dValue:'10', gValue}),
|
|
473
476
|
hidden: !statusShow({data, key: 'imageRadiusStatus', fields:['imageRadius'], gValue}),
|
|
474
477
|
handleCustom({action, data}) {
|