diff --git a/manager/public/demo/apple-phone.png b/manager/public/demo/apple-phone.png new file mode 100644 index 000000000..666a56829 Binary files /dev/null and b/manager/public/demo/apple-phone.png differ diff --git a/manager/public/demo/apple.png b/manager/public/demo/apple.png new file mode 100644 index 000000000..a37af9b99 Binary files /dev/null and b/manager/public/demo/apple.png differ diff --git a/manager/public/demo/vivo-phone.png b/manager/public/demo/vivo-phone.png new file mode 100644 index 000000000..6b79d201e Binary files /dev/null and b/manager/public/demo/vivo-phone.png differ diff --git a/manager/public/demo/vivo.png b/manager/public/demo/vivo.png new file mode 100644 index 000000000..4f14f58f3 Binary files /dev/null and b/manager/public/demo/vivo.png differ diff --git a/manager/public/demo/xiaomi-phone.png b/manager/public/demo/xiaomi-phone.png new file mode 100644 index 000000000..4660480e2 Binary files /dev/null and b/manager/public/demo/xiaomi-phone.png differ diff --git a/manager/public/demo/xiaomi.png b/manager/public/demo/xiaomi.png new file mode 100644 index 000000000..5b1752397 Binary files /dev/null and b/manager/public/demo/xiaomi.png differ diff --git a/manager/src/components/hotzone/components/Hotzone.vue b/manager/src/components/hotzone/components/Hotzone.vue index 0e47c48ad..b9d353bab 100644 --- a/manager/src/components/hotzone/components/Hotzone.vue +++ b/manager/src/components/hotzone/components/Hotzone.vue @@ -2,7 +2,7 @@
- + 热区背景图
    - + 编辑
  • - + 热区图片
  • @@ -79,7 +79,7 @@ - +
-
-
-
- -
-
-
{{ item.goodsName }}
- -
- {{ item.goodsUnit }} - - {{ goodsTypeLabel(item.goodsType) }} - - - {{ item.salesModel === "RETAIL" ? "零售型" : "批发型" }} - -
-
-
¥{{ $filters.unitPrice(item.price) }}
-
- 库存 {{ item.quantity != null ? item.quantity : "—" }}(卡池) -
-
-
-
-
- -
暂无商品信息
-
+ + + + + + + + + + + + + + + + + + + + + + diff --git a/manager/src/components/lili-dialog/template/pages.vue b/manager/src/components/lili-dialog/template/pages.vue index d0a0a49e5..5a5b643cb 100644 --- a/manager/src/components/lili-dialog/template/pages.vue +++ b/manager/src/components/lili-dialog/template/pages.vue @@ -1,72 +1,211 @@ + + diff --git a/manager/src/components/lili-dialog/template/shops.vue b/manager/src/components/lili-dialog/template/shops.vue index fb0b800ac..72b63f3a1 100644 --- a/manager/src/components/lili-dialog/template/shops.vue +++ b/manager/src/components/lili-dialog/template/shops.vue @@ -18,31 +18,55 @@
-
-
-
- -
-
-
{{ item.storeName }}
-
- {{ item.selfOperated ? "自营" : "非自营" }} -
-
- {{ item.storeDisable === "OPEN" ? "开启中" : "未开启" }} -
-
-
-
+ + + + + + + + + + + + + + diff --git a/manager/src/locale/index.js b/manager/src/locale/index.js index 92866d379..beabca552 100644 --- a/manager/src/locale/index.js +++ b/manager/src/locale/index.js @@ -12,7 +12,8 @@ const messages = { }; const i18n = createI18n({ - legacy: true, + // legacy:true 会禁用组合式 useI18n;关闭后配合 globalInjection 旧的 $t 写法依然可用 + legacy: false, globalInjection: true, locale: lang, fallbackLocale: "zh-CN", diff --git a/manager/src/views/main-parts/message-tip.vue b/manager/src/views/main-parts/message-tip.vue index 610de41ee..237f7545a 100644 --- a/manager/src/views/main-parts/message-tip.vue +++ b/manager/src/views/main-parts/message-tip.vue @@ -25,9 +25,6 @@ 待处理店铺入驻审核 - - 待与商家对账 - 未完成预约工单 diff --git a/manager/src/views/page-decoration/modelList/carousel.vue b/manager/src/views/page-decoration/modelList/carousel.vue index 3cdd945c5..192293f8c 100644 --- a/manager/src/views/page-decoration/modelList/carousel.vue +++ b/manager/src/views/page-decoration/modelList/carousel.vue @@ -8,7 +8,7 @@
- + 轮播图
@@ -117,7 +117,7 @@ - +
- + 轮播图
@@ -81,7 +81,7 @@
- + @@ -107,7 +107,7 @@ const selected = ref(null); // 已选数据 const picModelFlag = ref(false); // 选择图片modal const bgColor = ref("#fff"); // 轮播背景色 -const liliDialog = ref(null); +const liliDialogRef = ref(null); // ossManageRef:模板 ref 与组件 import 同名,改名避免互相覆盖 const ossManageRef = ref(null); @@ -130,7 +130,7 @@ function handleAdd() { } // 打开选择链接modal function handleSelectLink(item) { - liliDialog.value.open("link"); + liliDialogRef.value.open("link"); selected.value = item; } function callbackSelected(item) { diff --git a/manager/src/views/page-decoration/modelList/carousel2.vue b/manager/src/views/page-decoration/modelList/carousel2.vue index 1b684a6b8..21fe9ecfd 100644 --- a/manager/src/views/page-decoration/modelList/carousel2.vue +++ b/manager/src/views/page-decoration/modelList/carousel2.vue @@ -8,7 +8,7 @@
- + 轮播图
@@ -26,13 +26,13 @@ :key="index" >
- + 轮播图
- + 轮播图
- + 轮播图
@@ -201,7 +201,7 @@
- + @@ -231,7 +231,7 @@ const articleList = ref([ { title: "促销计算规则" }, ]); -const liliDialog = ref(null); +const liliDialogRef = ref(null); // ossManageRef:模板 ref 与组件 import 同名,改名避免互相覆盖 const ossManageRef = ref(null); @@ -258,7 +258,7 @@ function handleTabRemove(index) { } // 打开图片链接 function handleSelectLink(item) { - liliDialog.value.open("link"); + liliDialogRef.value.open("link"); selected.value = item; } function callbackSelected(item) { diff --git a/manager/src/views/page-decoration/modelList/forYour.vue b/manager/src/views/page-decoration/modelList/forYour.vue index 3372e35e6..a024c2418 100644 --- a/manager/src/views/page-decoration/modelList/forYour.vue +++ b/manager/src/views/page-decoration/modelList/forYour.vue @@ -100,7 +100,7 @@ class="draggable" >
- + 楼层图片
@@ -139,7 +139,7 @@ class="draggable" >
- + 楼层图片
@@ -203,7 +203,7 @@ const selectedData = ref(""); //选中的数据 const goodsIndex = ref(0); // 商品索引 const defaultCallbackImageType = ref(""); -const liliDialog = ref(null); +const liliDialogRef = ref(null); // ossManageRef:模板 ref 与组件 import 同名,改名避免互相覆盖 const ossManageRef = ref(null); @@ -223,14 +223,14 @@ function handleSelectImg(type, index) { } function handleSelectGoods(val, index) { - liliDialog.value.open("goods"); - liliDialog.value.singleGoods(); + liliDialogRef.value.open("goods"); + liliDialogRef.value.singleGoods(); selectedData.value = val; goodsIndex.value = index; } function handleSelectLink(val, index) { // 调起选择链接弹窗 - liliDialog.value.open("link"); + liliDialogRef.value.open("link"); selectedData.value = val; goodsIndex.value = index; diff --git a/manager/src/views/page-decoration/modelList/goodsAndType.vue b/manager/src/views/page-decoration/modelList/goodsAndType.vue index b8fc1f639..4fdff84d4 100644 --- a/manager/src/views/page-decoration/modelList/goodsAndType.vue +++ b/manager/src/views/page-decoration/modelList/goodsAndType.vue @@ -25,7 +25,7 @@ :key="index" >
- + 楼层图片
{{ item.title }}
@@ -93,7 +93,7 @@ class="draggable" >
- + 楼层图片
@@ -120,7 +120,7 @@ @@ -146,7 +146,7 @@ const showModal = ref(false); const draftOptions = ref(null); const tabCurrentlyIndex = ref(0); // 选项卡索引 -const liliDialog = ref(null); +const liliDialogRef = ref(null); onMounted(() => { tabIndex.value = props.data.options.labels[0].___index; @@ -191,8 +191,8 @@ function handleClickTab(name) { } // 添加当前选项卡中的商品 function addCurrentGoods() { - liliDialog.value.clearGoodsSelected(); - liliDialog.value.open("goods"); + liliDialogRef.value.clearGoodsSelected(); + liliDialogRef.value.open("goods"); } // 编辑模块 function handleSelectModel() { @@ -228,7 +228,7 @@ function selectedLink(val) { item.type = val.___type === "other" && val.url === "" ? "link" : "other"; } function handleSelectLink(index) { - liliDialog.value.open("link"); + liliDialogRef.value.open("link"); current.value = index; } function handleCancelModal() { diff --git a/manager/src/views/page-decoration/modelList/mixModel.vue b/manager/src/views/page-decoration/modelList/mixModel.vue index 872f04051..73388a08e 100644 --- a/manager/src/views/page-decoration/modelList/mixModel.vue +++ b/manager/src/views/page-decoration/modelList/mixModel.vue @@ -94,7 +94,7 @@ class="draggable" >
- + 楼层图片 @@ -267,7 +267,7 @@ const editTarget = ref(null); // 确认后写回的原数据 const picModelFlag = ref(false); // 选择图片modal // ossManageRef:模板 ref 与组件 import 同名,改名避免互相覆盖 -const liliDialog = ref(null); +const liliDialogRef = ref(null); const ossManageRef = ref(null); function cloneItem(item) { @@ -285,16 +285,16 @@ function handleSelectModel(item, type) { } function handleSelectLink() { // 调起选择链接弹窗 - liliDialog.value.open("link"); + liliDialogRef.value.open("link"); } function handleSelectGoods(item) { if (item) { editTarget.value = item; selected.value = cloneItem(item); } - liliDialog.value.open("goods", "single"); + liliDialogRef.value.open("goods", "single"); setTimeout(() => { - liliDialog.value.goodsData = [selected.value]; + liliDialogRef.value.goodsData = [selected.value]; }, 500); } // 选择链接回调 diff --git a/manager/src/views/page-decoration/modelList/notEnough.vue b/manager/src/views/page-decoration/modelList/notEnough.vue index 2597b2e16..cb1855dd9 100644 --- a/manager/src/views/page-decoration/modelList/notEnough.vue +++ b/manager/src/views/page-decoration/modelList/notEnough.vue @@ -91,7 +91,7 @@
@@ -117,7 +117,7 @@ const showContent = ref(true); const draftNavList = ref([]); const draftGoodsList = ref([]); -const liliDialog = ref(null); +const liliDialogRef = ref(null); watch(() => props.data, function(val){ conData.value = val @@ -146,9 +146,9 @@ function handleSelectGoods(item) { showGoodsModal.value = true; } function handleOpenGoodsPicker() { - liliDialog.value.open('goods', 'single'); + liliDialogRef.value.open('goods', 'single'); setTimeout(() => { - liliDialog.value.goodsData = [selected.value]; + liliDialogRef.value.goodsData = [selected.value]; }, 500); } function selectedGoodsData(val){ diff --git a/manager/src/views/page-decoration/modelList/oneRowThreeColumns.vue b/manager/src/views/page-decoration/modelList/oneRowThreeColumns.vue index 0f28ae453..a4fe5ab23 100644 --- a/manager/src/views/page-decoration/modelList/oneRowThreeColumns.vue +++ b/manager/src/views/page-decoration/modelList/oneRowThreeColumns.vue @@ -2,7 +2,7 @@
占位符
- + 楼层图片
@@ -23,7 +23,7 @@ append-to-body destroy-on-close>
- + 楼层图片
@@ -47,7 +47,7 @@ class="draggable" >
- + 楼层图片
@@ -73,7 +73,7 @@ @@ -97,7 +97,7 @@ const current = ref(0); const showModal = ref(false); const draftList = ref([]); -const liliDialog = ref(null); +const liliDialogRef = ref(null); function cloneList(list) { return JSON.parse(JSON.stringify(list || [])); @@ -110,7 +110,7 @@ function delGoods(val, i) { // 添加当前选项卡中的商品 function addCurrentGoods() { - liliDialog.value.open("goods"); + liliDialogRef.value.open("goods"); } // 编辑模块 @@ -156,7 +156,7 @@ function selectedLink(val) { function handleSelectLink(index) { // 调起选择链接弹窗 - liliDialog.value.open("link"); + liliDialogRef.value.open("link"); current.value = index; } diff --git a/manager/src/views/page-decoration/modelList/recommend.vue b/manager/src/views/page-decoration/modelList/recommend.vue index 424b0636d..a4bb7e050 100644 --- a/manager/src/views/page-decoration/modelList/recommend.vue +++ b/manager/src/views/page-decoration/modelList/recommend.vue @@ -216,7 +216,7 @@ @@ -253,7 +253,7 @@ const editTarget = ref(null); // 确认后写回的原数据 const picModelFlag = ref(false); // 图片选择 // ossManageRef:模板 ref 与组件 import 同名,改名避免互相覆盖 -const liliDialog = ref(null); +const liliDialogRef = ref(null); const ossManageRef = ref(null); function cloneItem(item) { @@ -271,11 +271,11 @@ function handleSelectModel(item, type) { } function handleSelectLink(item, index) { // 调起选择链接弹窗 - liliDialog.value.open("link"); + liliDialogRef.value.open("link"); } function handleSelectGoods(item) { // 调起选择商品 - liliDialog.value.open("goods", "single"); + liliDialogRef.value.open("goods", "single"); } // 选择链接回调 function selectedLink(val) { diff --git a/manager/src/views/page-decoration/wap/advertising.vue b/manager/src/views/page-decoration/wap/advertising.vue index 018adff60..da9ef99b6 100644 --- a/manager/src/views/page-decoration/wap/advertising.vue +++ b/manager/src/views/page-decoration/wap/advertising.vue @@ -79,7 +79,7 @@
- +
@@ -112,7 +112,7 @@ const advertising = ref([ const selectedLinks = reactive({}); const linkType = ref(""); // 选择类型 -const liliDialog = ref(null); +const liliDialogRef = ref(null); const ossManageRef = ref(null); watch( @@ -145,7 +145,7 @@ function openPage() { } // 点击链接 function clickLink(item) { - liliDialog.value.open('link') + liliDialogRef.value.open('link') } // 回调选择的链接 function selectedLink(val) { diff --git a/manager/src/views/page-decoration/wap/alertAdvertising.vue b/manager/src/views/page-decoration/wap/alertAdvertising.vue index fb884fa38..db7db5ade 100644 --- a/manager/src/views/page-decoration/wap/alertAdvertising.vue +++ b/manager/src/views/page-decoration/wap/alertAdvertising.vue @@ -79,7 +79,7 @@
@@ -113,7 +113,7 @@ const advertising = ref([ const linkType = ref(""); // 选择类型 const selectedLinks = reactive({}); -const liliDialog = ref(null); +const liliDialogRef = ref(null); // files:v-for 文件输入框 ref,脚本内未直接读取(changeFile 通过 document.getElementById 取值) const files = ref([]); // ossManageRef:模板 ref 与组件 import 同名,改名避免互相覆盖 @@ -174,7 +174,7 @@ function handleClickFile(item, index) { // 点击链接 function clickLink(item) { - liliDialog.value.open("link"); + liliDialogRef.value.open("link"); } //点击图片解析成base64 diff --git a/manager/src/views/page-decoration/wap/config-panel/PanelAdCube.vue b/manager/src/views/page-decoration/wap/config-panel/PanelAdCube.vue index 768664c2c..ee56b6f19 100644 --- a/manager/src/views/page-decoration/wap/config-panel/PanelAdCube.vue +++ b/manager/src/views/page-decoration/wap/config-panel/PanelAdCube.vue @@ -16,7 +16,7 @@
@@ -110,6 +105,7 @@ import ossManage from "@/views/sys/oss-manage/ossManage"; import ways from "@/components/lili-dialog/wap.js"; import { modelData } from "../config"; import ColorField from "../controls/ColorField.vue"; +import GradientField from "../controls/GradientField.vue"; import SliderField from "../controls/SliderField.vue"; const DEFAULTS = { @@ -127,7 +123,7 @@ const DEFAULTS = { export default { name: "PanelAdCube", hideDecorateTitle: true, - components: { ossManage, ColorField, SliderField }, + components: { ossManage, ColorField, GradientField, SliderField }, props: { res: { type: Object, required: true }, }, @@ -200,11 +196,12 @@ export default { diff --git a/manager/src/views/page-decoration/wap/config-panel/PanelBlank.vue b/manager/src/views/page-decoration/wap/config-panel/PanelBlank.vue index dec0e826c..8a27e4d4c 100644 --- a/manager/src/views/page-decoration/wap/config-panel/PanelBlank.vue +++ b/manager/src/views/page-decoration/wap/config-panel/PanelBlank.vue @@ -1,37 +1,40 @@ + + diff --git a/manager/src/views/page-decoration/wap/config-panel/PanelCarousel.vue b/manager/src/views/page-decoration/wap/config-panel/PanelCarousel.vue index b788185e6..2f574cda0 100644 --- a/manager/src/views/page-decoration/wap/config-panel/PanelCarousel.vue +++ b/manager/src/views/page-decoration/wap/config-panel/PanelCarousel.vue @@ -16,9 +16,8 @@
diff --git a/manager/src/views/page-decoration/wap/template/tpl_goods.vue b/manager/src/views/page-decoration/wap/template/tpl_goods.vue index aadaa4766..8dec26c40 100644 --- a/manager/src/views/page-decoration/wap/template/tpl_goods.vue +++ b/manager/src/views/page-decoration/wap/template/tpl_goods.vue @@ -1,97 +1,447 @@ - + diff --git a/manager/src/views/page-decoration/wap/template/tpl_integral.vue b/manager/src/views/page-decoration/wap/template/tpl_integral.vue index e52ceabc9..73085bfd0 100644 --- a/manager/src/views/page-decoration/wap/template/tpl_integral.vue +++ b/manager/src/views/page-decoration/wap/template/tpl_integral.vue @@ -1,27 +1,69 @@