From 973506d2b918cc99cc6ade5f207a8b60d31f0c42 Mon Sep 17 00:00:00 2001 From: sws <1141121512@qq.com> Date: Thu, 10 Oct 2024 10:10:15 +0800 Subject: [PATCH] =?UTF-8?q?1.=E6=95=B0=E6=8D=AE=E6=8F=90=E4=BA=A4=E4=BC=98?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/config/const/article-list.ts | 11 +++++----- src/config/const/article-tabs.ts | 13 ++++++------ src/config/const/coupon.ts | 5 +++-- src/config/const/goods-list.ts | 11 +++++----- src/config/const/goods-tabs.ts | 9 ++++---- src/config/setting/index.ts | 25 +++++++++++++++++++++++ src/views/layout/index.vue | 35 ++++++++++++++++++++++++++++---- 7 files changed, 83 insertions(+), 26 deletions(-) create mode 100644 src/config/setting/index.ts diff --git a/src/config/const/article-list.ts b/src/config/const/article-list.ts index d6587817..0cf518a1 100644 --- a/src/config/const/article-list.ts +++ b/src/config/const/article-list.ts @@ -1,4 +1,5 @@ import defaultCommon from './index'; +import defaultSetting from '../setting/index'; interface ArticleList { id: number | string; @@ -48,15 +49,15 @@ const defaultArticleList: DefaultArticleList = { theme: '0', carousel_col: '2', data_type: '0', - category_ids: [], + category_ids: defaultSetting.category_ids, data_list: [], data_ids: '', data_auto_list: [], - number: 4, - order_by_type: '0', - order_by_rule: '0', + number: defaultSetting.page_size, + order_by_type: defaultSetting.order_by_type, + order_by_rule: defaultSetting.order_by_rule, field_show: ['0', '1'], - is_cover: '1', + is_cover: defaultSetting.is_cover, }, style: { name_weight: '500', diff --git a/src/config/const/article-tabs.ts b/src/config/const/article-tabs.ts index 230a147c..3dd11ade 100644 --- a/src/config/const/article-tabs.ts +++ b/src/config/const/article-tabs.ts @@ -1,4 +1,5 @@ import defaultCommon from './index'; +import defaultSetting from '../setting/index'; interface ArticleList { id: number | string; data: object; @@ -66,12 +67,12 @@ const defaultArticleTabs: DefaultArticleTabs = { article_theme: '0', article_carousel_col: '2', tabs_list: [ - { id: '1', title: '热门推荐', desc: '简介', data_type: '0', category_ids: [], data_ids: '', number: 4, order_by_type: '0', order_by_rule: '0', is_cover: '1', data_list: [], data_auto_list: [] }, - { id: '2', title: '测试一', desc: '简介', data_type: '0', category_ids: [], data_ids: '', number: 4, order_by_type: '0', order_by_rule: '0', is_cover: '1', data_list: [], data_auto_list: [] }, - { id: '3', title: '测试二', desc: '简介', data_type: '0', category_ids: [], data_ids: '', number: 4, order_by_type: '0', order_by_rule: '0', is_cover: '1', data_list: [], data_auto_list: [] }, - { id: '4', title: '测试三', desc: '简介', data_type: '0', category_ids: [], data_ids: '', number: 4, order_by_type: '0', order_by_rule: '0', is_cover: '1', data_list: [], data_auto_list: [] }, - { id: '5', title: '测试四', desc: '简介', data_type: '0', category_ids: [], data_ids: '', number: 4, order_by_type: '0', order_by_rule: '0', is_cover: '1', data_list: [], data_auto_list: [] }, - { id: '6', title: '测试五', desc: '简介', data_type: '0', category_ids: [], data_ids: '', number: 4, order_by_type: '0', order_by_rule: '0', is_cover: '1', data_list: [], data_auto_list: [] }, + { id: '1', title: '热门推荐', desc: '简介', data_type: '0', category_ids: defaultSetting.category_ids, data_ids: '', number: defaultSetting.page_size, order_by_type: defaultSetting.order_by_type, order_by_rule: defaultSetting.order_by_rule, is_cover: defaultSetting.is_cover, data_list: [], data_auto_list: [] }, + { id: '2', title: '测试一', desc: '简介', data_type: '0', category_ids: defaultSetting.category_ids, data_ids: '', number: defaultSetting.page_size, order_by_type: defaultSetting.order_by_type, order_by_rule: defaultSetting.order_by_rule, is_cover: defaultSetting.is_cover, data_list: [], data_auto_list: [] }, + { id: '3', title: '测试二', desc: '简介', data_type: '0', category_ids: defaultSetting.category_ids, data_ids: '', number: defaultSetting.page_size, order_by_type: defaultSetting.order_by_type, order_by_rule: defaultSetting.order_by_rule, is_cover: defaultSetting.is_cover, data_list: [], data_auto_list: [] }, + { id: '4', title: '测试三', desc: '简介', data_type: '0', category_ids: defaultSetting.category_ids, data_ids: '', number: defaultSetting.page_size, order_by_type: defaultSetting.order_by_type, order_by_rule: defaultSetting.order_by_rule, is_cover: defaultSetting.is_cover, data_list: [], data_auto_list: [] }, + { id: '5', title: '测试四', desc: '简介', data_type: '0', category_ids: defaultSetting.category_ids, data_ids: '', number: defaultSetting.page_size, order_by_type: defaultSetting.order_by_type, order_by_rule: defaultSetting.order_by_rule, is_cover: defaultSetting.is_cover, data_list: [], data_auto_list: [] }, + { id: '6', title: '测试五', desc: '简介', data_type: '0', category_ids: defaultSetting.category_ids, data_ids: '', number: defaultSetting.page_size, order_by_type: defaultSetting.order_by_type, order_by_rule: defaultSetting.order_by_rule, is_cover: defaultSetting.is_cover, data_list: [], data_auto_list: [] }, ], tabs_active_index: 0, field_show: ['0', '1'], diff --git a/src/config/const/coupon.ts b/src/config/const/coupon.ts index e4e6f216..68c0f9fa 100644 --- a/src/config/const/coupon.ts +++ b/src/config/const/coupon.ts @@ -1,4 +1,5 @@ import defaultCommon from './index'; +import defaultSetting from '../setting/index'; import { online_url } from '@/utils'; const new_url = await online_url('/static/plugins/coupon/images/diy/').then((res) => res); interface DefaultCoupon { @@ -41,8 +42,8 @@ const defaultCoupoin: DefaultCoupon = { content: { theme: '1', data_type: '0', - type: [], - number: 4, + type: defaultSetting.coupon_ids, + number: defaultSetting.page_size, // 只有主题4用到 title: '先领券 再购物', // 只有主题4用到 diff --git a/src/config/const/goods-list.ts b/src/config/const/goods-list.ts index 77cfa692..bdc95406 100644 --- a/src/config/const/goods-list.ts +++ b/src/config/const/goods-list.ts @@ -1,4 +1,5 @@ import defaultCommon from './index'; +import defaultSetting from '../setting/index'; import { online_url } from '@/utils'; const new_url = await online_url('/static/app/common/').then((res) => res); interface DefaultProductList { @@ -63,13 +64,13 @@ const defaultProductList: DefaultProductList = { product_show_list: [], data_list: [], data_auto_list: [], - category_ids: [], - brand_ids: [], + category_ids: defaultSetting.category_ids, + brand_ids: defaultSetting.brand_ids, data_ids: [], is_price_solo: '1', - number: 4, - order_by_type: '0', - order_by_rule: '0', + number: defaultSetting.page_size, + order_by_type: defaultSetting.order_by_type, + order_by_rule: defaultSetting.order_by_rule, is_show: ['title', 'plugins_view_icon', 'price', 'sales_count', 'original_price'], static_img: [{ id: 2, url: new_url + 'price.png', original: '角标', title: '角标', ext: '.png', type: 'img' }], is_shop_show: '1', diff --git a/src/config/const/goods-tabs.ts b/src/config/const/goods-tabs.ts index ecc03a3b..12aac2e5 100644 --- a/src/config/const/goods-tabs.ts +++ b/src/config/const/goods-tabs.ts @@ -1,4 +1,5 @@ import defaultCommon from './index'; +import defaultSetting from '../setting/index'; import { online_url } from '@/utils'; const new_url = await online_url('/static/app/common/').then((res) => res); interface articleTabsList { @@ -80,10 +81,10 @@ const defaultProductList: DefaultProductList = { theme: '0', carousel_col: 3, tabs_list: [ - { id: '1', title: '热门推荐', img: [], desc: '简介', data_type: '0', category_ids: [], brand_ids: [], data_ids: [], number: 4, order_by_type: '0', order_by_rule: '0', data_list: [], data_auto_list: [] }, - { id: '2', title: '测试一', img: [], desc: '简介', data_type: '0', category_ids: [], brand_ids: [], data_ids: [], number: 4, order_by_type: '0', order_by_rule: '0', data_list: [], data_auto_list: [] }, - { id: '3', title: '测试二', img: [], desc: '简介', data_type: '0', category_ids: [], brand_ids: [], data_ids: [], number: 4, order_by_type: '0', order_by_rule: '0', data_list: [], data_auto_list: [] }, - { id: '4', title: '测试三', img: [], desc: '简介', data_type: '0', category_ids: [], brand_ids: [], data_ids: [], number: 4, order_by_type: '0', order_by_rule: '0', data_list: [], data_auto_list: [] }, + { id: '1', title: '热门推荐', img: [], desc: '简介', data_type: '0', category_ids: defaultSetting.category_ids, brand_ids: defaultSetting.brand_ids, data_ids: [], number: defaultSetting.page_size, order_by_type: defaultSetting.order_by_type, order_by_rule: defaultSetting.order_by_type, data_list: [], data_auto_list: [] }, + { id: '2', title: '测试一', img: [], desc: '简介', data_type: '0', category_ids: defaultSetting.category_ids, brand_ids: defaultSetting.brand_ids, data_ids: [], number: defaultSetting.page_size, order_by_type: defaultSetting.order_by_type, order_by_rule: defaultSetting.order_by_type, data_list: [], data_auto_list: [] }, + { id: '3', title: '测试二', img: [], desc: '简介', data_type: '0', category_ids: defaultSetting.category_ids, brand_ids: defaultSetting.brand_ids, data_ids: [], number: defaultSetting.page_size, order_by_type: defaultSetting.order_by_type, order_by_rule: defaultSetting.order_by_type, data_list: [], data_auto_list: [] }, + { id: '4', title: '测试三', img: [], desc: '简介', data_type: '0', category_ids: defaultSetting.category_ids, brand_ids: defaultSetting.brand_ids, data_ids: [], number: defaultSetting.page_size, order_by_type: defaultSetting.order_by_type, order_by_rule: defaultSetting.order_by_type, data_list: [], data_auto_list: [] }, ], tabs_active_index: 0, static_img: [{ id: 2, url: new_url + 'price.png', original: '角标', title: '角标', ext: '.png', type: 'img' }], diff --git a/src/config/setting/index.ts b/src/config/setting/index.ts new file mode 100644 index 00000000..0ab528b0 --- /dev/null +++ b/src/config/setting/index.ts @@ -0,0 +1,25 @@ +interface DefaultSetting { + page_size: number; + order_by_type: string; + order_by_rule: string; + is_cover: string; + category_ids: string[]; + brand_ids: string[]; + coupon_ids: string[]; +} + +const defaultSetting: DefaultSetting = { + page_size: 4, + order_by_type: '0', + order_by_rule: '0', + // 文章封面 + is_cover: '1', + // 分类id + category_ids: [], + // 品牌分类id + brand_ids: [], + // 优惠券分类id + coupon_ids: [], +}; + +export default defaultSetting; diff --git a/src/views/layout/index.vue b/src/views/layout/index.vue index 1bb012b5..686b090f 100644 --- a/src/views/layout/index.vue +++ b/src/views/layout/index.vue @@ -21,6 +21,7 @@ import { is_obj } from '@/utils'; import { Settings, AppMain } from './components/index'; import defaultSettings from './components/main/index'; +import defaultConfigSetting from '@/config/setting'; import { cloneDeep } from 'lodash'; import DiyAPI, { diyData, headerAndFooter, diyConfig } from '@/api/diy'; import CommonAPI from '@/api/common'; @@ -205,23 +206,49 @@ const save_formmat_form_data = (data: diy_data_item, close: boolean = false, is_ }; }); item.com_data.content.data_auto_list = []; + if (item.com_data.content.data_type == '0') { + item.com_data.content.category_ids = defaultConfigSetting.category_ids; + item.com_data.content.number = defaultConfigSetting.page_size; + item.com_data.content.order_by_rule = defaultConfigSetting.order_by_rule; + item.com_data.content.order_by_type = defaultConfigSetting.order_by_type; + if (item.key == new_array_1[0]) { + item.com_data.content.brand_ids = defaultConfigSetting.brand_ids; + } else { + item.com_data.content.is_cover = defaultConfigSetting.is_cover; + } + } } else if (new_array_2.includes(item.key)) { item.com_data.content.tabs_active_index = 0; - item.com_data.content.tabs_list.map((item: any) => { - item.data_ids = item.data_list.map((item1: any) => item1.data.id).join(',') || ''; - item.data_list = item.data_list.map((item2: any) => { + item.com_data.content.tabs_list.map((item0: any) => { + item0.data_ids = item0.data_list.map((item1: any) => item1.data.id).join(',') || ''; + item0.data_list = item0.data_list.map((item2: any) => { return { ...item2, data: [], data_id: item2.data.id, }; }); - item.data_auto_list = []; + item0.data_auto_list = []; + if (item0.data_type == '0') { + item0.category_ids = defaultConfigSetting.category_ids; + item0.number = defaultConfigSetting.page_size; + item0.order_by_rule = defaultConfigSetting.order_by_rule; + item0.order_by_type = defaultConfigSetting.order_by_type; + if (item.key == new_array_1[0]) { + item0.brand_ids = defaultConfigSetting.brand_ids; + } else { + item0.is_cover = defaultConfigSetting.is_cover; + } + } }); } else if (new_array_3.includes(item.key)) { item.com_data.content.data_ids = item.com_data.content.data_list.map((item: any) => item.id).join(',') || ''; item.com_data.content.data_list = []; item.com_data.content.data_auto_list = []; + if (item.com_data.content.data_type == '1') { + item.com_data.content.type = defaultConfigSetting.coupon_ids; + item.com_data.content.number = defaultConfigSetting.page_size; + } } else if (new_array_4.includes(item.key)) { item.com_data.content.data_magic_list.map((item1: any) => { item1.data_content.goods_ids = item1.data_content.goods_list.map((item2: any) => item2.data.id).join(',') || '';