jufubao-mall 2.0.46-beta2 → 2.0.46-beta4
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/JfbMallConfirm/JfbMallConfirm.vue +3 -4
- package/src/components/JfbMallMarketNew/Api.js +58 -0
- package/src/components/JfbMallMarketNew/Attr.js +48 -0
- package/src/components/JfbMallMarketNew/JfbMallMarketNew.vue +113 -0
- package/src/components/JfbMallMarketNew/JfbMallMarketNewLess.less +80 -0
- package/src/components/JfbMallMarketNew/JfbMallMarketNewMixin.js +30 -0
- package/src/components/JfbMallMarketNew/Mock.js +13 -0
- package/src/components/JfbMallProductInfo/XdSku.vue +1 -1
package/package.json
CHANGED
|
@@ -87,7 +87,7 @@
|
|
|
87
87
|
<xd-list-item v-if="shop.sub_show_delivery_price==='Y'" label="配送费用" showBottom :paddingLR="isCardLayout ? '32rpx' : '48rpx'" paddingTB="24rpx" class="xd-my-list-item">
|
|
88
88
|
<xd-unit :price="shop.user_logistics_amount_origin" :fontSize="28" :isOld="false"></xd-unit>
|
|
89
89
|
</xd-list-item>
|
|
90
|
-
<xd-list-item v-if="shop.deliveryPickValue === 'samecity'
|
|
90
|
+
<xd-list-item v-if="shop.deliveryPickValue === 'samecity'" class="xd-my-list-item"
|
|
91
91
|
:label="shop.time_label" showRight :paddingLR="isCardLayout ? '32rpx' : '48rpx'" paddingTB="24rpx" showBottom
|
|
92
92
|
@click="toSetSelectTime(shopIndex,shop)">
|
|
93
93
|
{{shop.selectTime ? shop.selectTime.dateTime : "请选择"}}
|
|
@@ -1196,6 +1196,7 @@
|
|
|
1196
1196
|
}
|
|
1197
1197
|
let subscribeTimeInfo = this.shopList.map(item => {
|
|
1198
1198
|
console.log(item,'ajaajjaja');
|
|
1199
|
+
|
|
1199
1200
|
let result = {};
|
|
1200
1201
|
if(item.support_delivery_method_options.length && !item.deliveryPickValue) err_text = "请选择配送方式";
|
|
1201
1202
|
else if(item.deliveryPickValue === 'takeout'){
|
|
@@ -1212,9 +1213,7 @@
|
|
|
1212
1213
|
}
|
|
1213
1214
|
}else if(item.deliveryPickValue === 'samecity'){
|
|
1214
1215
|
if(!item.selectTime){
|
|
1215
|
-
|
|
1216
|
-
err_text = `请选择${item.time_label}`;
|
|
1217
|
-
}
|
|
1216
|
+
err_text = `请选择${item.time_label}`;
|
|
1218
1217
|
}else{
|
|
1219
1218
|
result['date'] = item.selectTime.dateItem.date;
|
|
1220
1219
|
result['hourSpan'] = item.selectTime.dateTimeItem.name;
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
/**
|
|
3
|
+
* @description 接口配置,
|
|
4
|
+
* 在设置方法名字当时候,别忘记加上【模块名字】:Market
|
|
5
|
+
* @type {*[]}
|
|
6
|
+
*/
|
|
7
|
+
module.exports = [
|
|
8
|
+
{
|
|
9
|
+
//设置方法名字当别忘记加上【模块名字】:Market
|
|
10
|
+
mapFnName: 'getMarketByIdFilmSquate',
|
|
11
|
+
title: '获取电影广场列表',
|
|
12
|
+
path: '/api/account/film/list-film-square',
|
|
13
|
+
isRule: false,
|
|
14
|
+
params: {
|
|
15
|
+
last_key: ['当前页', 'Number', '必选'],
|
|
16
|
+
page_size: ['每页数量', 'Number', '必选'],
|
|
17
|
+
},
|
|
18
|
+
isConsole: true,
|
|
19
|
+
disabled: true,
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
//设置方法名字当别忘记加上【模块名字】:Market
|
|
23
|
+
mapFnName: 'updateMarketFilmPaiqiDate',
|
|
24
|
+
title: '更新排期',
|
|
25
|
+
path: '/api/account/film/paiqi-date',
|
|
26
|
+
isRule: false,
|
|
27
|
+
params: {
|
|
28
|
+
film_id: ['电影id', 'Number', '必选'],
|
|
29
|
+
cinema_id: ['影院id', 'Number', '必选'],
|
|
30
|
+
},
|
|
31
|
+
isConsole: true,
|
|
32
|
+
disabled: true,
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
//设置方法名字当别忘记加上【模块名字】:Market
|
|
36
|
+
mapFnName: 'removeMarketFilmAddress',
|
|
37
|
+
title: '删除我的配送地址',
|
|
38
|
+
path: '/api/account/film/paiqi-date',
|
|
39
|
+
isRule: false,
|
|
40
|
+
params: {
|
|
41
|
+
film_id: ['电影id', 'Number', '必选'],
|
|
42
|
+
},
|
|
43
|
+
isConsole: true,
|
|
44
|
+
disabled: true,
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
//设置方法名字当别忘记加上【模块名字】:Market
|
|
48
|
+
mapFnName: 'addMarketFilmcart',
|
|
49
|
+
title: '添加购物车',
|
|
50
|
+
path: '/api/account/film/paiqi-date',
|
|
51
|
+
isRule: false,
|
|
52
|
+
params: {
|
|
53
|
+
film_id: ['电影id', 'Number', '必选'],
|
|
54
|
+
},
|
|
55
|
+
isConsole: true,
|
|
56
|
+
disabled: true,
|
|
57
|
+
},
|
|
58
|
+
];
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @description 当表单组件中有联动操作时候,使用方法进行返回
|
|
5
|
+
*/
|
|
6
|
+
export default {
|
|
7
|
+
style: [],
|
|
8
|
+
content: (data) => {
|
|
9
|
+
return [
|
|
10
|
+
{
|
|
11
|
+
label: '背景颜色:',
|
|
12
|
+
ele: 'xd-color',
|
|
13
|
+
valueKey: 'bgColor',
|
|
14
|
+
value: data.bgColor || '',
|
|
15
|
+
placeholder: '请输入占位框背景颜色',
|
|
16
|
+
groupKey:'content',
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
label: '选中路径:',
|
|
20
|
+
groupKey:'advanced',
|
|
21
|
+
className: 'input100',
|
|
22
|
+
ele: 'xd-select-pages-path',
|
|
23
|
+
valueKey: 'select-pages-path',
|
|
24
|
+
value: data['select-pages-path'] || null,
|
|
25
|
+
setting: {
|
|
26
|
+
router: XdBus.getParentApi('getPagesTree')
|
|
27
|
+
},
|
|
28
|
+
},
|
|
29
|
+
data.bgColor && {
|
|
30
|
+
label: '高度:',
|
|
31
|
+
ele: 'el-input',
|
|
32
|
+
groupKey:'style',
|
|
33
|
+
type: 'number',
|
|
34
|
+
valueKey: 'height',
|
|
35
|
+
value: data.height || 100,
|
|
36
|
+
placeholder: '请输入占位框高度,单位像素,默认:10px',
|
|
37
|
+
className: 'input60',
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
label: '', //label
|
|
41
|
+
groupKey:'advanced',
|
|
42
|
+
ele: 'slot', //package 名称
|
|
43
|
+
slot: 'is_reference',
|
|
44
|
+
},
|
|
45
|
+
].filter(i=>i)
|
|
46
|
+
},
|
|
47
|
+
advanced: [],
|
|
48
|
+
};
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<view
|
|
3
|
+
class="jfb-mall-market-new"
|
|
4
|
+
@click="handleEditxSelect"
|
|
5
|
+
:class="{ editx : isEditx && active }"
|
|
6
|
+
>
|
|
7
|
+
<!--#ifdef H5-->
|
|
8
|
+
<view
|
|
9
|
+
class="jfb-mall-market-new__edit"
|
|
10
|
+
:class="{ editx : isEditx && active }"
|
|
11
|
+
v-if="isEditx && active"
|
|
12
|
+
>
|
|
13
|
+
<view class="jfb-mall-market-new__edit-icon" @click.stop="delEdit">
|
|
14
|
+
<xd-font-icon icon="iconshanchu-01" color="#fff" size="30"></xd-font-icon>
|
|
15
|
+
</view>
|
|
16
|
+
</view>
|
|
17
|
+
<!-- #endif -->
|
|
18
|
+
<view class="jfb-mall-market-new__body">
|
|
19
|
+
<view>营销组件(综合)</view>
|
|
20
|
+
</view>
|
|
21
|
+
</view>
|
|
22
|
+
</template>
|
|
23
|
+
|
|
24
|
+
<script>
|
|
25
|
+
import XdFontIcon from "@/components/XdFontIcon/XdFontIcon";
|
|
26
|
+
import { jfbRootExec } from "@/utils/xd.event";
|
|
27
|
+
import JfbMallMarketNewMixin from "./JfbMallMarketNewMixin";
|
|
28
|
+
import { getContainerPropsValue } from "@/utils/xd.base";
|
|
29
|
+
import componentsMixins from "@/mixins/componentsMixins";
|
|
30
|
+
import extsMixins from "@/mixins/extsMixins";
|
|
31
|
+
export default {
|
|
32
|
+
name: "JfbMallMarketNew",
|
|
33
|
+
components: {
|
|
34
|
+
XdFontIcon
|
|
35
|
+
},
|
|
36
|
+
mixins: [
|
|
37
|
+
componentsMixins, extsMixins, JfbMallMarketNewMixin
|
|
38
|
+
],
|
|
39
|
+
data() {
|
|
40
|
+
return {
|
|
41
|
+
|
|
42
|
+
//todo
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
watch: {
|
|
46
|
+
container(value, oldValue) {
|
|
47
|
+
if (JSON.stringify(value) === JSON.stringify(oldValue)) return;
|
|
48
|
+
if (this.$configProject['isPreview']) this.init(value)
|
|
49
|
+
},
|
|
50
|
+
},
|
|
51
|
+
created() {
|
|
52
|
+
this.init(this.container);
|
|
53
|
+
|
|
54
|
+
//todo
|
|
55
|
+
},
|
|
56
|
+
methods: {
|
|
57
|
+
onJfbLoad(options) {
|
|
58
|
+
|
|
59
|
+
// jfbRootExec('baiduUserLogin', {
|
|
60
|
+
|
|
61
|
+
// vm: this,// data: {
|
|
62
|
+
|
|
63
|
+
// account: 'gaoshiyong',// password: '123456789',// type: 3,// ...options
|
|
64
|
+
|
|
65
|
+
// }
|
|
66
|
+
|
|
67
|
+
// }).then().catch()
|
|
68
|
+
},
|
|
69
|
+
/**
|
|
70
|
+
* @description 监听事件变化
|
|
71
|
+
* @param container {object} 业务组件对象自己
|
|
72
|
+
*/
|
|
73
|
+
init(container) {
|
|
74
|
+
|
|
75
|
+
//this.bgcolor = getContainerPropsValue(container, 'content.bgcolor', '#fff');
|
|
76
|
+
|
|
77
|
+
//this.height = getContainerPropsValue(container, 'content.height', 10);
|
|
78
|
+
},
|
|
79
|
+
onJfbScroll(options) {
|
|
80
|
+
console.log('event.onJfbScroll', options)
|
|
81
|
+
},
|
|
82
|
+
onJfbReachBottom(options) {
|
|
83
|
+
console.log('event.onJfbReachBottom', options)
|
|
84
|
+
},
|
|
85
|
+
onJfbShow(options) {
|
|
86
|
+
console.log('event.onJfbShow', options)
|
|
87
|
+
},
|
|
88
|
+
onJfbHide(options) {
|
|
89
|
+
console.log('event.onJfbHide', options)
|
|
90
|
+
},
|
|
91
|
+
onJfbBack(options) {
|
|
92
|
+
console.log('event.onJfbBack', options)
|
|
93
|
+
},
|
|
94
|
+
onJfbUpdate(...data) {
|
|
95
|
+
console.log('event.onJfbUpdate', data)
|
|
96
|
+
},
|
|
97
|
+
onJfbCustomEvent(options) {
|
|
98
|
+
console.log('event.onJfbReachBottom', options)
|
|
99
|
+
},
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
</script>
|
|
104
|
+
|
|
105
|
+
<style scoped lang="less">
|
|
106
|
+
@import "./JfbMallMarketNewLess.less";
|
|
107
|
+
|
|
108
|
+
.jfb-mall-market-new {
|
|
109
|
+
&__body{
|
|
110
|
+
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
</style>
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @desc 获取绝对路径完整地址
|
|
3
|
+
* @param @path
|
|
4
|
+
**/
|
|
5
|
+
//例如:https://image.jufubao.cn/20220501010108/image/bg/default_gonghui_bg.png
|
|
6
|
+
@basePath: 'business/';
|
|
7
|
+
@doMain: '//sandbox-img.jufubao.cn/';
|
|
8
|
+
|
|
9
|
+
.getBusinessImageUrl(@path, @size: 'size8') {
|
|
10
|
+
@url: "@{doMain}@{basePath}@{path}?x-oss-process=style/@{size}";
|
|
11
|
+
background-image: url(@url);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
//start
|
|
15
|
+
.jfb-mall-market-new {
|
|
16
|
+
box-sizing: border-box;
|
|
17
|
+
|
|
18
|
+
&__body{
|
|
19
|
+
position: relative;
|
|
20
|
+
overflow: hidden;
|
|
21
|
+
z-index: 2
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
&.editx,&.editx:hover {
|
|
25
|
+
position: relative;
|
|
26
|
+
min-height: unit(100, rpx);
|
|
27
|
+
z-index: 3;
|
|
28
|
+
&::after {
|
|
29
|
+
border: 2rpx dashed blue;
|
|
30
|
+
content: " ";
|
|
31
|
+
position: absolute;
|
|
32
|
+
top:0;
|
|
33
|
+
left:0;
|
|
34
|
+
bottom:0;
|
|
35
|
+
right:0;
|
|
36
|
+
z-index: var(--preview-z-index);
|
|
37
|
+
cursor: pointer;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
&__edit {
|
|
44
|
+
cursor: pointer;
|
|
45
|
+
position: absolute;
|
|
46
|
+
right: unit(0, rpx);
|
|
47
|
+
top: unit(0, rpx);
|
|
48
|
+
height: unit(50, rpx);
|
|
49
|
+
z-index: 100;
|
|
50
|
+
display: flex;
|
|
51
|
+
justify-content: center;
|
|
52
|
+
align-items: center;
|
|
53
|
+
background: rgba(0, 0, 0, .4);
|
|
54
|
+
border-radius: 0 0 0 20rpx;
|
|
55
|
+
box-shadow: 0 0 10px rbga(0, 0, 0, 0.3);
|
|
56
|
+
color: #fff;
|
|
57
|
+
font-size: unit(22, rpx);
|
|
58
|
+
padding: 0 6rpx 0 6px;
|
|
59
|
+
|
|
60
|
+
&-icon{
|
|
61
|
+
padding: 0 unit(20, rpx);
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
&.editx {
|
|
65
|
+
box-sizing: border-box;
|
|
66
|
+
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
//end
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
/**notPreview**/
|
|
74
|
+
.jfb-mall-market-new {
|
|
75
|
+
//&:before {
|
|
76
|
+
//content: " ";
|
|
77
|
+
//display: table;
|
|
78
|
+
//}
|
|
79
|
+
}
|
|
80
|
+
/**endNotPreview**/
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
//@AttrImport
|
|
5
|
+
import Attr from "./Attr";
|
|
6
|
+
//@EndAttrImport
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
export default {
|
|
10
|
+
data() {
|
|
11
|
+
return {
|
|
12
|
+
//#ifdef H5
|
|
13
|
+
|
|
14
|
+
//@AttrData
|
|
15
|
+
Attr:{}, //对外开发编辑属性
|
|
16
|
+
//@EndAttrData
|
|
17
|
+
|
|
18
|
+
// #endif
|
|
19
|
+
cssRoot: 'jfb-mall-market-new'
|
|
20
|
+
}
|
|
21
|
+
},
|
|
22
|
+
created() {
|
|
23
|
+
|
|
24
|
+
//@AttrDataCreated
|
|
25
|
+
this.Attr = this.$xdUniHelper.customClone(Attr);
|
|
26
|
+
//@EndAttrDataCreated
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
},
|
|
30
|
+
}
|
|
@@ -499,7 +499,7 @@ export default {
|
|
|
499
499
|
.map((item) => ({ name: item.name, value: item.values[item.checked] }));
|
|
500
500
|
// console.log(JSON.stringify(otherChecked), 'otherChecked')
|
|
501
501
|
//没有选中任何其它sku,所有都可以选,直接返回true
|
|
502
|
-
|
|
502
|
+
if (otherChecked.length === 0) return curSku.enabled;
|
|
503
503
|
|
|
504
504
|
/**
|
|
505
505
|
* skuArr (当前 + 已选中)sku列表
|