Compare commits

...

2 Commits

Author SHA1 Message Date
b7113c4e12 Update API types and request handling 2025-08-21 22:15:17 +08:00
0de28e554a Refactor API requests and update component keys 2025-08-21 21:43:46 +08:00
7 changed files with 14 additions and 19 deletions

View File

@ -79,6 +79,5 @@ export const getSettingPage = (params: { type: number }) => {
* 首页-标签2
*/
export const tab2 = () => {
return useFetchRequest.get<IResponse<ProjectDictNodeVO[]>>('/prod-api/app-api/business/project/index/index-tab2', {
})
return useFetchRequest.get<IResponse<ProjectDictNodeVO[]>>('/prod-api/app-api/business/project/index/index-tab2', {})
}

View File

@ -2,7 +2,7 @@ export interface ThotTopReq {
/** 类型: 1 图纸 2 文本 3 模型 */
type: number
/** 项目分类 */
projectType: string
projectType: number
/** 是否国内 0 国外 1 国内 */
isDomestic: number
projectTypeTop?: string

View File

@ -20,7 +20,7 @@ const useClientRequest = async <T = unknown>(
}
},
onResponse({ response }) {
if (+response.status === 200 && +response._data.code !== 200) {
if (+response.status === 200 && +response._data.code !== 0) {
ElMessage.error(response._data.msg);
}
},

View File

@ -19,11 +19,13 @@ const useServerRequest = async <T>(
}
},
onResponse({ response }) {
if (+response.status === 200 && +response._data.code !== 200) {
console.log('response1---', response);
if (+response.status === 200 && +response._data.code !== 0) {
process.client && ElMessage.error(response._data.msg);
}
},
onResponseError({ response }) {
console.log('response2---', response);
process.client &&
ElMessage.error(
isArray(response._data.data.msg)
@ -43,6 +45,9 @@ const useServerRequest = async <T>(
endpoint: string,
config?: Omit<FetchOptions, 'method'>
): Promise<T> => {
console.log('config----', config);
// @ts-ignore
return useServerRequest<T>(endpoint, { ...config, method: 'GET' })
}

View File

@ -31,7 +31,7 @@
status: 0,
})
const { data: bannerList } = useAsyncData('get-setting-Page', async () => {
const { data: bannerList } = useAsyncData('get-setting-Page-learning-recommendations', async () => {
const res = await getSettingPage(pageReq)
return res.data
})

View File

@ -39,27 +39,18 @@ import LoginForm from "./LoginForm.vue";
import { Vue3Marquee } from "vue3-marquee";
import { getSettingPage } from "~/api/home/index";
import type { PageResultIndexSettingRespVO } from "~/api/home/type";
const pageReq = reactive({
type: 1,
status: 0,
});
const { data: bannerList } = useAsyncData("get-setting-Page", async () => {
const { data: bannerList } = useAsyncData("get-setting-Page-main-content", async () => {
const res = await getSettingPage(pageReq);
return res.data;
});
// const bannerList = ref<PageResultIndexSettingRespVO[]>([])
// const getBanner = async () => {
// const res = await getSettingPage(pageReq)
// if (res.code === 0) {
// bannerList.value = res.data
// }
// }
// getBanner()
const handleClick = (url: string) => {
if (url) {
navigateTo(url);

View File

@ -54,8 +54,8 @@
// })
// }
const { data: recommendTopList, refresh: getRecommendTop} = useAsyncData('recommendTop', async () => {
// @ts-ignore
const { data: recommendTopList, refresh: getRecommendTop} = useAsyncData('recommendTop-RecommendedColumns', async () => {
const res = await recommendTop(query)
return res.data || []
})