mirror of
https://gitee.com/zongzhige/shopxo-diy.git
synced 2026-06-05 18:25:52 +08:00
修改拼团逻辑处理
This commit is contained in:
@ -1,9 +1,9 @@
|
||||
<template>
|
||||
<card-container class="card-container">
|
||||
<div class="mb-12">商品显示内容</div>
|
||||
<div class="mb-12">{{ moduleType === 'groupbuy' ? '拼团显示内容' : '商品显示内容' }}</div>
|
||||
<el-form-item label="是否显示">
|
||||
<el-checkbox-group v-model="form.is_show">
|
||||
<el-checkbox v-for="item in base_list.list_show_list.filter(item => item.type.includes(form.theme))" :key="item.value" :value="item.value">{{ item.name }}</el-checkbox>
|
||||
<el-checkbox v-for="item in list_show_list.filter(item => item.type.includes(form.theme))" :key="item.value" :value="item.value">{{ item.name }}</el-checkbox>
|
||||
</el-checkbox-group>
|
||||
</el-form-item>
|
||||
<el-form-item v-if="form.is_show.includes('simple_desc')" label="简述行数">
|
||||
@ -11,7 +11,7 @@
|
||||
<el-radio v-for="item in base_list.shopping_simple_desc_row" :key="item.value" :value="item.value">{{ item.name }}</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
<el-form-item v-if="['0', '1', '2'].includes(form.theme)" label="价格独行">
|
||||
<el-form-item v-if="showPriceSolo && ['0', '1', '2'].includes(form.theme)" label="价格独行">
|
||||
<el-switch v-model="form.is_price_solo" active-value="1" inactive-value="0"></el-switch>
|
||||
</el-form-item>
|
||||
</card-container>
|
||||
@ -34,7 +34,7 @@
|
||||
</template>
|
||||
</div>
|
||||
</el-form-item>
|
||||
<el-form-item label="按钮效果">
|
||||
<el-form-item v-if="showButtonEffect" label="按钮效果">
|
||||
<el-radio-group v-model="form.shop_button_effect">
|
||||
<el-radio v-for="item in base_list.shopping_cart_list" :key="item.value" :value="item.value">{{ item.name }}</el-radio>
|
||||
</el-radio-group>
|
||||
@ -48,42 +48,81 @@ const props = defineProps({
|
||||
type: Object,
|
||||
default: () => ({}),
|
||||
},
|
||||
/** goods 默认;groupbuy 拼团专用文案与 is_show 项 */
|
||||
moduleType: {
|
||||
type: String as PropType<'goods' | 'groupbuy'>,
|
||||
default: 'goods',
|
||||
},
|
||||
hideSalesCount: {
|
||||
type: Boolean,
|
||||
default: false,
|
||||
},
|
||||
hideButtonEffect: {
|
||||
type: Boolean,
|
||||
default: false,
|
||||
},
|
||||
hidePriceSolo: {
|
||||
type: Boolean,
|
||||
default: false,
|
||||
},
|
||||
});
|
||||
|
||||
const state = reactive({
|
||||
form: props.value,
|
||||
});
|
||||
// 如果需要解构,确保使用toRefs
|
||||
const { form } = toRefs(state);
|
||||
|
||||
const base_list = {
|
||||
list_show_list: [
|
||||
{ name: '商品名称', value: 'title', type:['0', '1', '2', '3', '4', '5', '6']},
|
||||
{ name: '商品简述', value: 'simple_desc', type:['0', '1', '2', '3', '5'] },
|
||||
{ name: '商品标签', value: 'plugins_view_icon', type:['0', '1', '2'] },
|
||||
{ name: '商品售价', value: 'price', type:['0', '1', '2', '3', '4', '5', '6'] },
|
||||
{ name: '商品销量', value: 'sales_count', type:['0', '1', '2'] },
|
||||
// { name: '商品评分', value: '4' },
|
||||
{ name: '商品原价', value: 'original_price', type:['0', '1', '2'] },
|
||||
{ name: '售价单位', value: 'price_unit', type:['0', '1', '2', '3', '4', '5', '6'] },
|
||||
{ name: '原价单位', value: 'original_price_unit', type:['0', '1', '2'] },
|
||||
],
|
||||
shopping_button_list: [
|
||||
{ name: '文字', value: 'text' },
|
||||
{ name: '图标', value: 'icon' },
|
||||
],
|
||||
shopping_cart_list: [
|
||||
{ name: '进入商品详情页', value: '0' },
|
||||
{ name: '商品加购', value: '1' }
|
||||
{ name: '商品加购', value: '1' },
|
||||
],
|
||||
shopping_simple_desc_row: [
|
||||
{ name: '一行', value: '1' },
|
||||
{ name: '两行', value: '2' }
|
||||
]
|
||||
{ name: '两行', value: '2' },
|
||||
],
|
||||
};
|
||||
|
||||
const goods_list_show_list = [
|
||||
{ name: '商品名称', value: 'title', type: ['0', '1', '2', '3', '4', '5', '6'] },
|
||||
{ name: '商品简述', value: 'simple_desc', type: ['0', '1', '2', '3', '5'] },
|
||||
{ name: '商品标签', value: 'plugins_view_icon', type: ['0', '1', '2'] },
|
||||
{ name: '商品售价', value: 'price', type: ['0', '1', '2', '3', '4', '5', '6'] },
|
||||
{ name: '商品销量', value: 'sales_count', type: ['0', '1', '2'] },
|
||||
{ name: '商品原价', value: 'original_price', type: ['0', '1', '2'] },
|
||||
{ name: '售价单位', value: 'price_unit', type: ['0', '1', '2', '3', '4', '5', '6'] },
|
||||
{ name: '原价单位', value: 'original_price_unit', type: ['0', '1', '2'] },
|
||||
];
|
||||
|
||||
const groupbuy_list_show_list = [
|
||||
{ name: '商品标题', value: 'title', type: ['0', '1', '2', '3', '4', '5', '6'] },
|
||||
{ name: '团购标志', value: 'groupbuy_people_num', type: ['0', '1', '2', '3', '4', '5', '6'] },
|
||||
{ name: '拼团提示', value: 'groupbuy_hot', type: ['0', '1', '2', '3', '4', '5', '6'] },
|
||||
{ name: '商品售价', value: 'price', type: ['0', '1', '2', '3', '4', '5', '6'] },
|
||||
{ name: '商品原价', value: 'original_price', type: ['0', '1', '2'] },
|
||||
{ name: '售价单位', value: 'price_unit', type: ['0', '1', '2', '3', '4', '5', '6'] },
|
||||
{ name: '原价单位', value: 'original_price_unit', type: ['0', '1', '2'] },
|
||||
];
|
||||
|
||||
const list_show_list = computed(() => {
|
||||
let list = props.moduleType === 'groupbuy' ? groupbuy_list_show_list : goods_list_show_list;
|
||||
if (props.hideSalesCount) {
|
||||
list = list.filter((item) => item.value !== 'sales_count');
|
||||
}
|
||||
return list;
|
||||
});
|
||||
|
||||
const showPriceSolo = computed(() => !props.hidePriceSolo);
|
||||
const showButtonEffect = computed(() => !props.hideButtonEffect);
|
||||
|
||||
const emit = defineEmits(['change_shop_type']);
|
||||
const change_shop_type = () => {
|
||||
emit('change_shop_type');
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@ -112,7 +151,7 @@ const change_shop_type = () => {
|
||||
font-weight: bold;
|
||||
}
|
||||
}
|
||||
:deep(.el-checkbox-group .el-checkbox){
|
||||
:deep(.el-checkbox-group .el-checkbox) {
|
||||
margin-right: 2rem;
|
||||
}
|
||||
</style>
|
||||
</style>
|
||||
|
||||
@ -31,6 +31,7 @@
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="title" label="标题" />
|
||||
<el-table-column prop="is_recommend_name" label="是否推荐" width="100" />
|
||||
<template #empty>
|
||||
<no-data :text="empty_text"></no-data>
|
||||
</template>
|
||||
|
||||
@ -7,8 +7,14 @@
|
||||
<div :class="['oh w h', ['0', '4'].includes(theme) ? 'flex-row' : 'flex-col' ]" :style="layout_img_style">
|
||||
<template v-if="theme == '6'">
|
||||
<div :class="['flex-row align-c jc-sb ptb-15 mlr-10 gap-20', { 'br-b-e': index != list.length - 1 }]">
|
||||
<div v-if="is_show('title')" :class="text_line" :style="trends_config('title', 'title')">{{ item.title }}</div>
|
||||
<div v-if="is_show('price') && !isEmpty(item.min_price)" class="num nowrap" :style="`color: ${new_style.shop_price_color}`">
|
||||
<div class="groupbuy-noimg-row flex-row align-c flex-1 oh">
|
||||
<div v-if="is_show('title')" :class="[text_line, 'groupbuy-noimg-title']" :style="trends_config('title', 'title')">{{ item.title }}</div>
|
||||
<div v-if="show_groupbuy_tags" class="flex-row align-c groupbuy-tags-row flex-shrink">
|
||||
<div v-if="is_show('groupbuy_people_num') && !isEmpty(groupbuy_people_text(item))" class="radius-sm pl-3 pr-3 groupbuy-people-tag" :style="groupbuy_people_tag_style">{{ groupbuy_people_text(item) }}</div>
|
||||
<span v-if="is_show('groupbuy_hot') && !isEmpty(groupbuy_success_text(item))" class="groupbuy-hot-text" :style="groupbuy_hot_text_style">{{ groupbuy_success_text(item) }}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div v-if="is_show('price') && !isEmpty(item.min_price)" class="num nowrap flex-shrink" :style="`color: ${new_style.shop_price_color}`">
|
||||
<span class="identifying">{{ item.show_price_symbol }}</span
|
||||
><span :style="trends_config('price')">{{ item.min_price }}</span>
|
||||
<span v-if="is_show('price_unit')" class="identifying">{{ item.show_price_unit }}</span>
|
||||
@ -28,14 +34,15 @@
|
||||
<subscript-index :value="props.value"></subscript-index>
|
||||
</div>
|
||||
</template>
|
||||
<div v-if="is_show('title') || is_show('simple_desc') || is_show('price') || is_show('original_price') || is_show('plugins_view_icon') || form.is_shop_show == '1'" class="flex-col flex-1 jc-sb content gap-10" :style="content_style">
|
||||
<div v-if="is_show('title') || is_show('simple_desc') || is_show('price') || is_show('original_price') || show_groupbuy_tags || form.is_shop_show == '1'" class="flex-col flex-1 jc-sb content gap-10" :style="content_style">
|
||||
<div class="flex-col gap-10 top-title">
|
||||
<div v-if="is_show('title') || (['0', '1', '2', '3', '5'].includes(theme) && is_show('simple_desc'))" class="flex-col" :style="`gap: ${ new_style.title_simple_desc_spacing }px;`">
|
||||
<div v-if="is_show('title')" :class="text_line" :style="trends_config('title', 'title')">{{ item.title }}</div>
|
||||
<div v-if="['0', '1', '2', '3', '5'].includes(theme) && is_show('simple_desc')" :class="form.simple_desc_row == '2' ? 'text-line-2' : 'text-line-1'" :style="trends_config('simple_desc', 'desc')">{{ item.simple_desc }}</div>
|
||||
</div>
|
||||
<div v-if="show_content && is_show('plugins_view_icon') && !isEmpty(item.plugins_view_icon_data)" class="flex-row gap-5 align-c">
|
||||
<div v-for="(icon_data, icon_index) in item.plugins_view_icon_data" :key="icon_index" class="radius-sm size-9 pl-3 pr-3" :style="icon_style(icon_data)">{{ icon_data.name }}</div>
|
||||
<div v-if="show_groupbuy_tags" class="flex-row align-c groupbuy-tags-row">
|
||||
<div v-if="is_show('groupbuy_people_num') && !isEmpty(groupbuy_people_text(item))" class="radius-sm pl-3 pr-3 groupbuy-people-tag" :style="groupbuy_people_tag_style">{{ groupbuy_people_text(item) }}</div>
|
||||
<span v-if="is_show('groupbuy_hot') && !isEmpty(groupbuy_success_text(item))" class="groupbuy-hot-text" :style="groupbuy_hot_text_style">{{ groupbuy_success_text(item) }}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex-row align-c jc-sb gap-8 oh">
|
||||
@ -84,14 +91,15 @@
|
||||
<subscript-index :value="props.value"></subscript-index>
|
||||
</div>
|
||||
</template>
|
||||
<div v-if="is_show('title') || is_show('simple_desc') || is_show('price') || form.is_shop_show == '1'" class="flex-col flex-1 jc-sb content gap-10" :style="content_style">
|
||||
<div v-if="is_show('title') || is_show('simple_desc') || is_show('price') || show_groupbuy_tags || form.is_shop_show == '1'" class="flex-col flex-1 jc-sb content gap-10" :style="content_style">
|
||||
<div class="flex-col gap-10 top-title">
|
||||
<div v-if="is_show('title') || (['0', '1', '2', '3', '5'].includes(theme) && is_show('simple_desc'))" class="flex-col" :style="`gap: ${ new_style.title_simple_desc_spacing }px;`">
|
||||
<div v-if="is_show('title')" :class="text_line" :style="trends_config('title', 'title')">{{ item.title }}</div>
|
||||
<div v-if="['0', '1', '2', '3', '5'].includes(theme) && is_show('simple_desc')" :class="form.simple_desc_row == '2' ? 'text-line-2' : 'text-line-1'" :style="trends_config('simple_desc', 'desc')">{{ item.simple_desc }}</div>
|
||||
</div>
|
||||
<div v-if="show_content && is_show('plugins_view_icon') && !isEmpty(item.plugins_view_icon_data)" class="flex-row gap-5 align-c">
|
||||
<div v-for="(icon_data, icon_index) in item.plugins_view_icon_data" :key="icon_index" class="radius-sm size-9 pl-3 pr-3" :style="icon_style(icon_data)">{{ icon_data.name }}</div>
|
||||
<div v-if="show_groupbuy_tags" class="flex-row align-c groupbuy-tags-row">
|
||||
<div v-if="is_show('groupbuy_people_num') && !isEmpty(groupbuy_people_text(item))" class="radius-sm pl-3 pr-3 groupbuy-people-tag" :style="groupbuy_people_tag_style">{{ groupbuy_people_text(item) }}</div>
|
||||
<span v-if="is_show('groupbuy_hot') && !isEmpty(groupbuy_success_text(item))" class="groupbuy-hot-text" :style="groupbuy_hot_text_style">{{ groupbuy_success_text(item) }}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex-row align-c jc-sb gap-8">
|
||||
@ -163,13 +171,6 @@ const props = defineProps({
|
||||
const form = computed(() => props.value?.content || {});
|
||||
const new_style = computed(() => props.value?.style || {});
|
||||
|
||||
type plugins_icon_data = {
|
||||
name: string;
|
||||
bg_color: string;
|
||||
br_color: string;
|
||||
color: string;
|
||||
url: string;
|
||||
}
|
||||
type data_list = {
|
||||
title: string;
|
||||
cover: string;
|
||||
@ -184,10 +185,12 @@ type data_list = {
|
||||
show_price_unit: string;
|
||||
sales_count: string;
|
||||
is_error: number;
|
||||
plugins_view_icon_data: plugins_icon_data[];
|
||||
buy_number?: string | number;
|
||||
group_number?: string | number;
|
||||
groupbuy_success_text?: string;
|
||||
}
|
||||
const default_list = {
|
||||
title: '测试商品标题',
|
||||
title: '测试拼团商品标题',
|
||||
min_original_price: '41.2',
|
||||
show_original_price_symbol: '¥',
|
||||
show_original_price_unit: '/ 台',
|
||||
@ -198,29 +201,27 @@ const default_list = {
|
||||
cover: '',
|
||||
new_cover: [],
|
||||
is_error: 0,
|
||||
plugins_view_icon_data: [
|
||||
{
|
||||
name: '满减活动',
|
||||
bg_color: '#EA3323',
|
||||
br_color: '',
|
||||
color: '#fff',
|
||||
url: '',
|
||||
},
|
||||
{
|
||||
name: '包邮',
|
||||
bg_color: '',
|
||||
br_color: '#EA3323',
|
||||
color: '#EA3323',
|
||||
url: '',
|
||||
},
|
||||
{
|
||||
name: '领劵',
|
||||
bg_color: '',
|
||||
br_color: '#EA9223',
|
||||
color: '#EA9223',
|
||||
url: '',
|
||||
},
|
||||
],
|
||||
buy_number: 3,
|
||||
groupbuy_success_text: '火热拼团中',
|
||||
};
|
||||
const groupbuy_success_text = (item: data_list) => item.groupbuy_success_text || '';
|
||||
const groupbuy_people_tag_style = computed(() => {
|
||||
const color = new_style.value.shop_groupbuy_people_color || '#EA3323';
|
||||
const border = new_style.value.shop_groupbuy_people_border_color || color;
|
||||
const size = new_style.value.shop_groupbuy_people_size || 9;
|
||||
return `background: transparent; color: ${color}; border: 1px solid ${border}; font-size: ${size}px; line-height: ${size + 4}px;`;
|
||||
});
|
||||
const groupbuy_hot_text_style = computed(() => {
|
||||
const color = new_style.value.shop_groupbuy_hot_color || '#999999';
|
||||
const size = new_style.value.shop_groupbuy_hot_size || 10;
|
||||
return `color: ${color}; font-size: ${size}px; line-height: ${size}px;`;
|
||||
});
|
||||
const groupbuy_people_text = (item: data_list) => {
|
||||
const num = item.buy_number ?? item.group_number;
|
||||
if (num !== undefined && num !== null && num !== '') {
|
||||
return `${num}人团`;
|
||||
}
|
||||
return '';
|
||||
};
|
||||
//#region 列表数据
|
||||
const list = ref<data_list[]>([]);
|
||||
@ -403,6 +404,7 @@ const text_line = computed(() => {
|
||||
const is_show = (index: string) => {
|
||||
return form.value.is_show.includes(index);
|
||||
};
|
||||
const show_groupbuy_tags = computed(() => is_show('groupbuy_people_num') || is_show('groupbuy_hot'));
|
||||
// 根据传递的参数,从对象中取值
|
||||
const trends_config = (key: string, type?: string) => {
|
||||
return style_config(new_style.value[`shop_${key}_typeface`], new_style.value[`shop_${key}_size`], new_style.value[`shop_${key}_color`], type);
|
||||
@ -433,16 +435,6 @@ const style_config = (typeface: string, size: number, color: string | object, ty
|
||||
const button_gradient = () => {
|
||||
return gradient_handle(new_style.value.shop_button_color, '180deg');
|
||||
};
|
||||
// icon标志显示样式
|
||||
const icon_style = (item: { bg_color: string; color: string; br_color: string }) => {
|
||||
let style = `background: ${item.bg_color};color: ${item.color};`;
|
||||
if (!isEmpty(item.br_color)) {
|
||||
style += `border: 1px solid ${item.br_color};`;
|
||||
} else {
|
||||
style += `border: 1px solid ${item.bg_color};`;
|
||||
}
|
||||
return style;
|
||||
};
|
||||
// 公共样式
|
||||
const style_container = computed(() => props.isCommonStyle ? common_styles_computer(new_style.value.common_style) : '');
|
||||
const style_img_container = computed(() => props.isCommonStyle ? common_img_computer(new_style.value.common_style) : '');
|
||||
@ -524,6 +516,27 @@ watchEffect(() => {
|
||||
.identifying {
|
||||
font-size: 0.9rem;
|
||||
}
|
||||
/* 无图模式:标题左对齐,团购标志/拼团提示在标题右侧 */
|
||||
.groupbuy-noimg-row {
|
||||
gap: 10px;
|
||||
min-width: 0;
|
||||
}
|
||||
.groupbuy-noimg-title {
|
||||
flex: 0 1 auto;
|
||||
min-width: 0;
|
||||
text-align: left;
|
||||
}
|
||||
.groupbuy-tags-row {
|
||||
flex-wrap: nowrap;
|
||||
gap: 10px;
|
||||
}
|
||||
.groupbuy-people-tag {
|
||||
flex-shrink: 0;
|
||||
}
|
||||
.groupbuy-hot-text {
|
||||
flex-shrink: 0;
|
||||
white-space: nowrap;
|
||||
}
|
||||
// .original-price-left {
|
||||
// width: 1rem;
|
||||
// }
|
||||
|
||||
@ -29,7 +29,7 @@
|
||||
</card-container>
|
||||
<div class="divider-line"></div>
|
||||
<!-- 商品显示的配置信息 -->
|
||||
<product-show-config :value="form" hide-sales-count hide-button-effect hide-price-solo @change_shop_type="change_shop_type"></product-show-config>
|
||||
<product-show-config :value="form" module-type="groupbuy" hide-sales-count hide-button-effect hide-price-solo @change_shop_type="change_shop_type"></product-show-config>
|
||||
<div class="divider-line"></div>
|
||||
<card-container class="card-container">
|
||||
<div class="mb-12">角标设置</div>
|
||||
|
||||
@ -7,10 +7,24 @@
|
||||
<background-common v-model:color_list="form.shop_color_list" v-model:direction="form.shop_direction" v-model:img_style="form.shop_background_img_style" v-model:img="form.shop_background_img" @mult_color_picker_event="mult_color_picker_event" />
|
||||
</el-form-item>
|
||||
<template v-if="data.is_show.includes('title')">
|
||||
<el-form-item label="商品名称">
|
||||
<el-form-item label="商品标题">
|
||||
<color-text-size-group v-model:color="form.shop_title_color" v-model:typeface="form.shop_title_typeface" v-model:size="form.shop_title_size" default-color="#000000"></color-text-size-group>
|
||||
</el-form-item>
|
||||
</template>
|
||||
<template v-if="data.is_show.includes('groupbuy_people_num')">
|
||||
<el-form-item label="团购标志">
|
||||
<color-text-size-group v-model:color="form.shop_groupbuy_people_color" v-model:size="form.shop_groupbuy_people_size" default-color="#EA3323" :type-list="['color', 'size']">
|
||||
<el-form-item label="边框" label-width="40" class="mb-0 w form-item-child-label">
|
||||
<color-picker v-model="form.shop_groupbuy_people_border_color" default-color="#EA3323"></color-picker>
|
||||
</el-form-item>
|
||||
</color-text-size-group>
|
||||
</el-form-item>
|
||||
</template>
|
||||
<template v-if="data.is_show.includes('groupbuy_hot')">
|
||||
<el-form-item label="拼团提示">
|
||||
<color-text-size-group v-model:color="form.shop_groupbuy_hot_color" v-model:size="form.shop_groupbuy_hot_size" default-color="#999999" :type-list="['color', 'size']"></color-text-size-group>
|
||||
</el-form-item>
|
||||
</template>
|
||||
<template v-if="data.is_show.includes('simple_desc') && ['0', '1', '2', '3', '5'].includes(theme)">
|
||||
<el-form-item label="商品简述">
|
||||
<color-text-size-group v-model:color="form.shop_simple_desc_color" v-model:size="form.shop_simple_desc_size" default-color="#999" :type-list="['color', 'size']">
|
||||
|
||||
@ -88,7 +88,7 @@
|
||||
</card-container>
|
||||
<div class="divider-line"></div>
|
||||
<!-- 商品显示的配置信息 -->
|
||||
<product-show-config :value="form" hide-sales-count hide-button-effect hide-price-solo @change_shop_type="change_shop_type"></product-show-config>
|
||||
<product-show-config :value="form" module-type="groupbuy" hide-sales-count hide-button-effect hide-price-solo @change_shop_type="change_shop_type"></product-show-config>
|
||||
<div class="divider-line"></div>
|
||||
<card-container>
|
||||
<div class="mb-12">角标设置</div>
|
||||
|
||||
@ -119,10 +119,24 @@
|
||||
<background-common v-model:color_list="form.shop_color_list" v-model:direction="form.shop_direction" v-model:img_style="form.shop_background_img_style" v-model:img="form.shop_background_img" @mult_color_picker_event="mult_color_picker_event" />
|
||||
</el-form-item>
|
||||
<template v-if="data.is_show.includes('title')">
|
||||
<el-form-item label="商品名称">
|
||||
<el-form-item label="商品标题">
|
||||
<color-text-size-group v-model:color="form.shop_title_color" v-model:typeface="form.shop_title_typeface" v-model:size="form.shop_title_size" default-color="#000000"></color-text-size-group>
|
||||
</el-form-item>
|
||||
</template>
|
||||
<template v-if="data.is_show.includes('groupbuy_people_num')">
|
||||
<el-form-item label="团购标志">
|
||||
<color-text-size-group v-model:color="form.shop_groupbuy_people_color" v-model:size="form.shop_groupbuy_people_size" default-color="#EA3323" :type-list="['color', 'size']">
|
||||
<el-form-item label="边框" label-width="40" class="mb-0 w form-item-child-label">
|
||||
<color-picker v-model="form.shop_groupbuy_people_border_color" default-color="#EA3323"></color-picker>
|
||||
</el-form-item>
|
||||
</color-text-size-group>
|
||||
</el-form-item>
|
||||
</template>
|
||||
<template v-if="data.is_show.includes('groupbuy_hot')">
|
||||
<el-form-item label="拼团提示">
|
||||
<color-text-size-group v-model:color="form.shop_groupbuy_hot_color" v-model:size="form.shop_groupbuy_hot_size" default-color="#999999" :type-list="['color', 'size']"></color-text-size-group>
|
||||
</el-form-item>
|
||||
</template>
|
||||
<template v-if="data.is_show.includes('simple_desc') && ['0', '1', '2', '3', '5'].includes(theme)">
|
||||
<el-form-item label="商品简述">
|
||||
<color-text-size-group v-model:color="form.shop_simple_desc_color" v-model:size="form.shop_simple_desc_size" default-color="#999" :type-list="['color', 'size']">
|
||||
|
||||
@ -78,6 +78,11 @@ interface DefaultPluginsGroupbuyList {
|
||||
shop_price_unit_size: number;
|
||||
shop_original_price_color: string;
|
||||
shop_original_price_size: number;
|
||||
shop_groupbuy_people_color: string;
|
||||
shop_groupbuy_people_border_color: string;
|
||||
shop_groupbuy_people_size: number;
|
||||
shop_groupbuy_hot_color: string;
|
||||
shop_groupbuy_hot_size: number;
|
||||
shop_sold_number_typeface: string;
|
||||
shop_sold_number_size: number;
|
||||
shop_sold_number_color: string;
|
||||
@ -123,7 +128,7 @@ const defaultPluginsGroupbuyList: DefaultPluginsGroupbuyList = {
|
||||
order_by_type: defaultSetting.order_by_type,
|
||||
order_by_rule: defaultSetting.order_by_rule,
|
||||
// 显示内容
|
||||
is_show: ['title', 'plugins_view_icon', 'price', 'original_price'],
|
||||
is_show: ['title', 'groupbuy_people_num', 'groupbuy_hot', 'price', 'original_price'],
|
||||
simple_desc_row: '1',
|
||||
// 价格图标地址
|
||||
static_img: [{ id: 2, url: new_url + 'price.png', original: '角标', title: '角标', ext: '.png', type: 'img' }],
|
||||
@ -131,7 +136,7 @@ const defaultPluginsGroupbuyList: DefaultPluginsGroupbuyList = {
|
||||
is_shop_show: '1',
|
||||
// 购买按钮类型
|
||||
shop_type: 'text',
|
||||
shop_button_text: '购买',
|
||||
shop_button_text: '开团中',
|
||||
shop_button_icon_class: 'cart',
|
||||
// 点击购买按钮的操作处理
|
||||
shop_button_effect: '0',
|
||||
@ -223,6 +228,11 @@ const defaultPluginsGroupbuyList: DefaultPluginsGroupbuyList = {
|
||||
shop_price_unit_size: 9,
|
||||
shop_original_price_color: '#999',
|
||||
shop_original_price_size: 12,
|
||||
shop_groupbuy_people_color: '#EA3323',
|
||||
shop_groupbuy_people_border_color: '#EA3323',
|
||||
shop_groupbuy_people_size: 9,
|
||||
shop_groupbuy_hot_color: '#999999',
|
||||
shop_groupbuy_hot_size: 10,
|
||||
shop_sold_number_typeface: '400',
|
||||
shop_sold_number_size: 10,
|
||||
shop_sold_number_color: "#999999",
|
||||
|
||||
@ -136,6 +136,11 @@ interface DefaultProductList {
|
||||
shop_price_unit_size: number;
|
||||
shop_original_price_color: string;
|
||||
shop_original_price_size: number;
|
||||
shop_groupbuy_people_color: string;
|
||||
shop_groupbuy_people_border_color: string;
|
||||
shop_groupbuy_people_size: number;
|
||||
shop_groupbuy_hot_color: string;
|
||||
shop_groupbuy_hot_size: number;
|
||||
shop_sold_number_typeface: string;
|
||||
shop_sold_number_size: number;
|
||||
shop_sold_number_color: string;
|
||||
@ -181,7 +186,7 @@ const defaultProductList: DefaultProductList = {
|
||||
tabs_active_index: 0,
|
||||
static_img: [{ id: 2, url: new_url + 'price.png', original: '角标', title: '角标', ext: '.png', type: 'img' }],
|
||||
// 显示内容
|
||||
is_show: ['title', 'plugins_view_icon', 'price', 'original_price'],
|
||||
is_show: ['title', 'groupbuy_people_num', 'groupbuy_hot', 'price', 'original_price'],
|
||||
// 显示简介行数
|
||||
simple_desc_row: '1',
|
||||
// 是否显示购买按钮
|
||||
@ -190,7 +195,7 @@ const defaultProductList: DefaultProductList = {
|
||||
is_price_solo: '1',
|
||||
// 购买按钮类型
|
||||
shop_type: 'text',
|
||||
shop_button_text: '购买',
|
||||
shop_button_text: '开团中',
|
||||
shop_button_icon_class: 'cart',
|
||||
// 点击购买按钮的操作处理
|
||||
shop_button_effect: '0',
|
||||
@ -423,6 +428,11 @@ const defaultProductList: DefaultProductList = {
|
||||
shop_price_unit_size: 9,
|
||||
shop_original_price_color: '#999',
|
||||
shop_original_price_size: 12,
|
||||
shop_groupbuy_people_color: '#EA3323',
|
||||
shop_groupbuy_people_border_color: '#EA3323',
|
||||
shop_groupbuy_people_size: 9,
|
||||
shop_groupbuy_hot_color: '#999999',
|
||||
shop_groupbuy_hot_size: 10,
|
||||
shop_sold_number_typeface: '400',
|
||||
shop_sold_number_size: 10,
|
||||
shop_sold_number_color: '#999999',
|
||||
|
||||
Reference in New Issue
Block a user