diff --git a/.env.development b/.env.development index 3d6e829..dd91e97 100644 --- a/.env.development +++ b/.env.development @@ -1,6 +1,6 @@ # 应用模块接口 VITE_SERVER_URL=https://server.gxbsnx.com/api -API_BASE=https://server.gxbsnx.com/api +#API_BASE=https://server.gxbsnx.com/api -#API_BASE=http://127.0.0.1:9001/api +API_BASE=http://127.0.0.1:9001/api #VITE_SERVER_URL=http://127.0.0.1:8000/api diff --git a/api/cms/cmsOrder/index.ts b/api/cms/cmsOrder/index.ts index 1d32dd6..bd034e6 100644 --- a/api/cms/cmsOrder/index.ts +++ b/api/cms/cmsOrder/index.ts @@ -19,6 +19,21 @@ export async function pageCmsOrder(params: CmsOrderParam) { return Promise.reject(new Error(res.message)); } +export async function displayCmsOrder(params: CmsOrderParam) { + const res = await request.get>>( + '/cms/cms-order/display', + { + params + } + ); + if (res.code === 0) { + return res.data; + } + return Promise.reject(new Error(res.message)); +} + + + /** * 查询订单列表 */ diff --git a/api/cms/cmsOrder/model/index.ts b/api/cms/cmsOrder/model/index.ts index 8169012..1356174 100644 --- a/api/cms/cmsOrder/model/index.ts +++ b/api/cms/cmsOrder/model/index.ts @@ -73,5 +73,6 @@ export interface CmsOrderParam extends PageParam { orderId?: number; websiteId?: number; isSettled?: boolean; + sceneType?: string; keywords?: string; } diff --git a/pages/order/[id].vue b/pages/order/[id].vue index 528702c..5123ea7 100644 --- a/pages/order/[id].vue +++ b/pages/order/[id].vue @@ -70,17 +70,30 @@
-
- -
- {{ item.realName }} - {{ item.createTime }} -
+
+ +
+ {{ item.realName }} + {{ item.createTime }} +
{{ item.content }}
+
{{ item.comments }}
+
-
{{ item.content }}
+
+ +
@@ -132,6 +145,9 @@ const captcha = ref(''); const text = ref(''); const loading = ref(false) const orders = ref([]) +const currentPage = ref(1) +const pageSize = ref(5) +const total = ref(0) const {form, resetFields} = useFormData({ @@ -217,6 +233,24 @@ const changeCaptcha = async () => { }) }; +// 加载留言列表(带分页) +const loadOrders = async () => { + try { + const response = await pageCmsOrder({ + isSettled: true, + page: currentPage.value, + limit: pageSize.value, + sort: 'createTime', + order: 'desc', + sceneType: 'display' + }) + orders.value = response?.list || [] + total.value = response?.count || 0 + } catch (error) { + console.error('Failed to load orders:', error) + } +} + // 将 SEO 相关的逻辑修改为 const updateSeo = (data: any) => { const title = data?.title || ''; @@ -262,10 +296,9 @@ const reload = async () => { form.email = user.value.email } - // 留言列表 - pageCmsOrder({isSettled: true}).then(response => { - orders.value = response?.list || [] - }) + // 重置分页并加载留言列表 + currentPage.value = 1 + await loadOrders() changeCaptcha() } catch (error) { @@ -340,6 +373,18 @@ const goBack = () => { router.back(); } +// 分页切换 +const handlePageChange = (pageNum: number) => { + currentPage.value = pageNum + loadOrders() +} + +const handleSizeChange = (size: number) => { + pageSize.value = size + currentPage.value = 1 + loadOrders() +} + watch( () => route.params.id, (id) => {