init
This commit is contained in:
@@ -0,0 +1,128 @@
|
||||
interface Base {
|
||||
createdBy?: string | number
|
||||
createdOn?: string
|
||||
updatedBy?: string | number
|
||||
updatedOn?: string
|
||||
}
|
||||
interface PageSettings {
|
||||
label?: string; // Nhãn
|
||||
layout?: string; // Bố cục
|
||||
template?: string; // Bản mẫu
|
||||
mainLink?: boolean; // Liên kết chính
|
||||
footerLink?: boolean; // Liên kết chân trang
|
||||
sidebarLink?: boolean; // Liên kết trượt bên
|
||||
floatingLink?: boolean; // Liên kết bám nổi
|
||||
dataType?: string; // Loại dữ liệu: Section, Category, Topic, Event, Collection, Article, Tag, Author, Poll, Quiz, Survey, Advertising, Other
|
||||
dataQuery?: string; // Truy vấn dữ liệu: IDS | NEW | VIEW | SQL | REQUEST | PARAM | ...
|
||||
dataResult?: string; // Kết quả dữ liệu (Json)
|
||||
}
|
||||
interface PageSectionSettings {
|
||||
label?: string; // Nhãn
|
||||
layout?: string; // Bố cục
|
||||
template?: string; // Bản mẫu
|
||||
}
|
||||
interface PageComponentSettings {
|
||||
label?: string; // Nhãn
|
||||
layout?: string; // Bố cục
|
||||
template?: string; // Bản mẫu
|
||||
dataType?: string; // Loại dữ liệu: Section, Category, Topic, Event, Collection, Article, Tag, Author, Poll, Quiz, Survey, Advertising, Other
|
||||
dataQuery?: string; // Truy vấn dữ liệu: IDS | NEW | VIEW | SQL | REQUEST | ...
|
||||
dataResult?: string; // Kết quả dữ liệu (Json)
|
||||
}
|
||||
|
||||
interface PageSection extends Base {
|
||||
id?: number; // Mã định danh
|
||||
siteId?: number; // Mã hệ thống
|
||||
pageId?: number; // Mã trang
|
||||
parentId?: number; // Mã vùng cha
|
||||
title?: string; // Tiêu đề
|
||||
slug?: string; // (Anchor)
|
||||
code?: string; // Mã nhận diện
|
||||
content?: string; // Nội dung
|
||||
keywords?: string; // Từ khóa
|
||||
description?: string; // Mô tả
|
||||
type?: number; // Phân loại: PageSectionType
|
||||
features?: string; // Đặc trưng: Featured (nổi bật)
|
||||
taxonomy?: string; // Phân loại: Block | Module | Navigation
|
||||
settings?: PageSectionSettings; // Thiết lập: PageSectionSettings (Json)
|
||||
isPublished?: boolean; // Đã xuất bản
|
||||
publishedBy?: number; // Xuất bản bởi
|
||||
publishedOn?: string; // Xuất bản vào lúc (string)
|
||||
expiresOn?: string; // Hết hạn vào lúc (string)
|
||||
order?: number; // Thứ tự sắp xếp
|
||||
status?: number; // Trạng thái
|
||||
}
|
||||
interface PageComponent extends Base {
|
||||
id?: number; // Mã định danh
|
||||
siteId?: number; // Mã hệ thống
|
||||
pageId?: number; // Mã trang
|
||||
sectionId?: number; // Mã vùng
|
||||
title?: string; // Tiêu đề
|
||||
code?: string; // Mã nhận diện
|
||||
content?: string; // Nội dung
|
||||
type?: number; // Phân loại: PageComponentType
|
||||
features?: string; // Đặc trưng: Featured (nổi bật)
|
||||
taxonomy?: string; // Phân loại
|
||||
settings?: PageComponentSettings; // Thiết lập: PageComponentSettings (Json)
|
||||
isPublished?: boolean; // Đã xuất bản
|
||||
publishedBy?: number; // Xuất bản bởi
|
||||
publishedOn?: string; // Xuất bản vào lúc (string)
|
||||
expiresOn?: string; // Hết hạn vào lúc (string)
|
||||
order?: number; // Thứ tự sắp xếp
|
||||
status?: number; // Trạng thái
|
||||
}
|
||||
interface Page extends Base {
|
||||
id?: number; // Mã định danh
|
||||
siteId?: number; // Mã hệ thống
|
||||
parentId?: number; // Mã trang cha
|
||||
title?: string; // Tiêu đề
|
||||
slug?: string; // Slug
|
||||
code?: string; // Mã nhận diện
|
||||
content?: string; // Nội dung
|
||||
favicon?: string; // Biểu tượng
|
||||
keywords?: string; // Từ khóa
|
||||
thumbnail?: string; // Ảnh đại diện
|
||||
description?: string; // Mô tả
|
||||
type?: number; // Phân loại: PageType
|
||||
features?: string; // Đặc trưng: Featured (nổi bật)
|
||||
taxonomy?: string; // Phân nhóm
|
||||
settings?: PageSettings; // Thiết lập: PageSettings (Json)
|
||||
isPublished?: boolean; // Đã xuất bản
|
||||
publishedBy?: number; // Đã xuất bản bởi
|
||||
publishedOn?: string; // Đã xuất bản vào lúc (string)
|
||||
expiresOn?: string; // Đã hết hạn vào lúc (string)
|
||||
order?: number; // Thứ tự sắp xếp
|
||||
status?: number; // Trạng thái
|
||||
|
||||
components?: PageComponent[];
|
||||
sections?: PageSection[];
|
||||
}
|
||||
|
||||
export const getDynamicPageByCode = async (event : any) => {
|
||||
try {
|
||||
const { apiUrl } = useRuntimeConfig().public
|
||||
const slug = event.context.params.slug;
|
||||
|
||||
const { item }: any = await $fetch(`${apiUrl}/cms/overview-page/slug:${slug}`)
|
||||
console.log('============')
|
||||
console.log(item)
|
||||
console.log('============')
|
||||
return { item }
|
||||
} catch (error) {
|
||||
handleError(error);
|
||||
}
|
||||
}
|
||||
|
||||
export const getDynamicPageById = async (event : any) => {
|
||||
try {
|
||||
const { apiUrl } = useRuntimeConfig().public
|
||||
const id = event.context.params.id;
|
||||
|
||||
const { item }: any = await $fetch(`${apiUrl}/cms/overview-page/${id}`, {
|
||||
method: 'GET',
|
||||
})
|
||||
return { item }
|
||||
} catch (error) {
|
||||
handleError(error);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user