diff --git a/components/my-components/my-header-card.vue b/components/my-components/my-header-card.vue index a332a56..eb42b1a 100644 --- a/components/my-components/my-header-card.vue +++ b/components/my-components/my-header-card.vue @@ -15,7 +15,8 @@ - + + @@ -27,11 +28,12 @@ import { ref, onMounted, nextTick } from 'vue'; const props = defineProps({ options: { type: Object, - default: { + default: () => ({ + // 注意:对象/数组默认值推荐用函数,避免引用共享 name: '标题', intro: '说明', icon: 'xszk' - } + }) }, showSwitch: { type: Boolean, @@ -41,11 +43,13 @@ const props = defineProps({ const headHeight = ref(70); +// defineModel 是 Vue3.4+ 语法糖,自动实现 v-model:isOpen 的双向绑定 const isOpen = defineModel('isOpen', { type: [Boolean, String, Number], default: 0 }); +// 声明自定义 emit 事件(仅在 script setup 内使用) const emits = defineEmits(['load']); onMounted(() => { diff --git a/http/api/ware.js b/http/api/ware.js new file mode 100644 index 0000000..0820ce5 --- /dev/null +++ b/http/api/ware.js @@ -0,0 +1,122 @@ +import http from '@/http/http.js' +const request = http.request +const ORDER_URL = 'order' + +/** + * 拼团商品-列表 + * @param {Object} data + */ +export function getGbWarePage(data) { + return request({ + url: `${ORDER_URL}/admin/ware/getGbWarePage`, + method: "GET", + data + }) +} + +/** + * 拼团商品-新增 + * @param {Object} data + */ +export function addGbWare(data) { + return request({ + url: `${ORDER_URL}/admin/ware/addGbWare`, + method: "post", + data + }) +} + +/** + * 拼团商品-列表 + * @param {Object} data + */ +export function updateGbWareById(data) { + return request({ + url: `${ORDER_URL}/admin/ware/updateGbWareById`, + method: "post", + data + }) +} + +/** + * 拼团商品-修改状态 + * @param {Object} data + */ +export function editOnlineStatus(data) { + return request({ + url: `${ORDER_URL}/admin/ware/editOnlineStatus`, + method: "post", + data + }) +} + +/** + * 拼团商品-删除 + * @param {Object} data + */ +export function deleteGbWare(id) { + return request({ + url: `${ORDER_URL}/admin/ware/deleteGbWare/${id}`, + method: "DELETE" + }) +} + +/** + * 拼团商品:订单列表 + * @param {Object} data + */ +export function gbOrderPage(data) { + return request({ + url: `${ORDER_URL}/admin/gbOrder/page`, + method: "GET", + data + }) +} + +/** + * 拼团商品-活动开关 + * @param {Object} data + */ +export function upShopConfig(data) { + return request({ + url: `${ORDER_URL}/admin/ware/upShopConfig`, + method: "POST", + data + }) +} + +/** + * 拼团订单-退单/同意退单 + * @param {Object} data + */ +export function agreeRefund(data) { + return request({ + url: `${ORDER_URL}/admin/gbOrder/agreeRefund`, + method: "POST", + data + }) +} + +/** + * 拼团订单-驳回退单 + * @param {Object} data + */ +export function rejectRefund(data) { + return request({ + url: `${ORDER_URL}/admin/gbOrder/rejectRefund`, + method: "POST", + data + }) +} + +/** + * 拼团商品:核销 + * @param {Object} data + */ +export function checkout(data) { + return request({ + url: `${ORDER_URL}/admin/gbOrder/checkout`, + method: "POST", + data + }) +} \ No newline at end of file diff --git a/pageMarket/groupGoods/addGoods.vue b/pageMarket/groupGoods/addGoods.vue new file mode 100644 index 0000000..95fcaf2 --- /dev/null +++ b/pageMarket/groupGoods/addGoods.vue @@ -0,0 +1,478 @@ + + + + + + diff --git a/pageMarket/groupGoods/components/goodsList.vue b/pageMarket/groupGoods/components/goodsList.vue new file mode 100644 index 0000000..0edd4be --- /dev/null +++ b/pageMarket/groupGoods/components/goodsList.vue @@ -0,0 +1,286 @@ + + + + + diff --git a/pageMarket/groupGoods/components/orderList.vue b/pageMarket/groupGoods/components/orderList.vue new file mode 100644 index 0000000..7fb3a44 --- /dev/null +++ b/pageMarket/groupGoods/components/orderList.vue @@ -0,0 +1,519 @@ + + + + + diff --git a/pageMarket/groupGoods/index.vue b/pageMarket/groupGoods/index.vue new file mode 100644 index 0000000..80dc19c --- /dev/null +++ b/pageMarket/groupGoods/index.vue @@ -0,0 +1,192 @@ + + + + + + diff --git a/pageMarket/packagePopularize/addGoods.vue b/pageMarket/packagePopularize/addGoods.vue new file mode 100644 index 0000000..95fcaf2 --- /dev/null +++ b/pageMarket/packagePopularize/addGoods.vue @@ -0,0 +1,478 @@ + + + + + + diff --git a/pageMarket/packagePopularize/components/goodsList.vue b/pageMarket/packagePopularize/components/goodsList.vue new file mode 100644 index 0000000..0edd4be --- /dev/null +++ b/pageMarket/packagePopularize/components/goodsList.vue @@ -0,0 +1,286 @@ + + + + + diff --git a/pageMarket/packagePopularize/components/orderList.vue b/pageMarket/packagePopularize/components/orderList.vue new file mode 100644 index 0000000..9f2bc3b --- /dev/null +++ b/pageMarket/packagePopularize/components/orderList.vue @@ -0,0 +1,519 @@ + + + + + diff --git a/pageMarket/packagePopularize/index.vue b/pageMarket/packagePopularize/index.vue new file mode 100644 index 0000000..87e3059 --- /dev/null +++ b/pageMarket/packagePopularize/index.vue @@ -0,0 +1,193 @@ + + + + + + + diff --git a/pages.json b/pages.json index cbf6315..8bab498 100644 --- a/pages.json +++ b/pages.json @@ -830,6 +830,34 @@ "style": { "navigationBarTitleText": "查看明细" } + }, + { + "pageId": "PAGES_MARKET_GROUP_GOODS_INDEX", + "path": "groupGoods/index", + "style": { + "navigationBarTitleText": "拼团商品" + } + }, + { + "pageId": "PAGES_MARKET_GROUP_GOODS_ADDGOODS", + "path": "groupGoods/addGoods", + "style": { + "navigationBarTitleText": "添加商品" + } + }, + { + "pageId": "PAGES_MARKET_PACKAGE_POPULARIZE_INDEX", + "path": "packagePopularize/index", + "style": { + "navigationBarTitleText": "套餐推广" + } + }, + { + "pageId": "PAGES_MARKET_GROUP_GOODS_PACKAGE", + "path": "packagePopularize/addGoods", + "style": { + "navigationBarTitleText": "添加套餐" + } } ] }, diff --git a/pages/appliccation/marketing.vue b/pages/appliccation/marketing.vue index edaa3f2..26f4303 100644 --- a/pages/appliccation/marketing.vue +++ b/pages/appliccation/marketing.vue @@ -112,7 +112,7 @@ const menuList = ref([ { title: '套餐推广', icon: '', - pageUrl: '', + pageUrl: 'PAGES_MARKET_PACKAGE_POPULARIZE_INDEX', intro: '下单通过用户邀请好友减免金额的方式裂变宣传套餐加购' }, { @@ -135,7 +135,7 @@ const menuList = ref([ }, { icon: 'xszk', - pageUrl: 'PAGES_LIMIT_DISCOUNT', + pageUrl: 'PAGES_MARKET_GROUP_GOODS_INDEX', title: '商品拼团', intro: '拼团' }