fix(products): 修正产品规格值显示问题
All checks were successful
deploy to server / build-and-deploy (push) Successful in 2m56s
All checks were successful
deploy to server / build-and-deploy (push) Successful in 2m56s
- 修复产品规格表中规格名显示不正确的问题 - 调整产品规格数据结构
This commit is contained in:
@ -11,7 +11,7 @@
|
|||||||
<el-descriptions-item
|
<el-descriptions-item
|
||||||
v-for="subItem in item.specs"
|
v-for="subItem in item.specs"
|
||||||
:key="subItem.key"
|
:key="subItem.key"
|
||||||
:label="subItem.value"
|
:label="subItem.key"
|
||||||
>
|
>
|
||||||
{{ subItem.value }}
|
{{ subItem.value }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
|
|||||||
@ -34,9 +34,8 @@ export const useProduct = (id: string) => {
|
|||||||
specs: [
|
specs: [
|
||||||
'id',
|
'id',
|
||||||
{
|
{
|
||||||
translations: ['id', 'key'],
|
translations: ['id', 'key', 'value'],
|
||||||
},
|
},
|
||||||
'value',
|
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
|
|||||||
@ -61,12 +61,13 @@ export function toProductSpecGroupView(
|
|||||||
export function toProductSpecView(raw: ProductSpec): ProductSpecView {
|
export function toProductSpecView(raw: ProductSpec): ProductSpecView {
|
||||||
const trans = raw.translations?.[0] ?? {
|
const trans = raw.translations?.[0] ?? {
|
||||||
key: '',
|
key: '',
|
||||||
|
value: '',
|
||||||
};
|
};
|
||||||
|
|
||||||
return {
|
return {
|
||||||
id: raw.id,
|
id: raw.id,
|
||||||
key: trans.key,
|
key: trans.key,
|
||||||
value: raw.value,
|
value: trans.value,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -26,13 +26,6 @@ export interface ContactInfoTranslation {
|
|||||||
content?: string | null;
|
content?: string | null;
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface DocumentsTranslation {
|
|
||||||
/** @primaryKey */
|
|
||||||
id: number;
|
|
||||||
languages_code?: Language | string | null;
|
|
||||||
title?: string | null;
|
|
||||||
}
|
|
||||||
|
|
||||||
export interface Homepage {
|
export interface Homepage {
|
||||||
/** @primaryKey */
|
/** @primaryKey */
|
||||||
id: number;
|
id: number;
|
||||||
@ -55,6 +48,28 @@ export interface Language {
|
|||||||
direction?: 'ltr' | 'rtl' | null;
|
direction?: 'ltr' | 'rtl' | null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export interface MeiliIndexConfig {
|
||||||
|
/** @primaryKey */
|
||||||
|
id: number;
|
||||||
|
/** @description 要索引的集合名 */
|
||||||
|
collection_name?: string | null;
|
||||||
|
/** @description MeiliSearch 索引名称 */
|
||||||
|
index_name?: string | null;
|
||||||
|
/** @description 要索引的字段数组 */
|
||||||
|
fields?: 'json' | null;
|
||||||
|
/** @description 是否启用 */
|
||||||
|
enabled?: boolean | null;
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface MeiliSearchConfig {
|
||||||
|
/** @primaryKey */
|
||||||
|
id: number;
|
||||||
|
/** @description MeiliSearch 主机地址 */
|
||||||
|
host?: string | null;
|
||||||
|
/** @description MeiliSearch API Key */
|
||||||
|
api_key?: string | null;
|
||||||
|
}
|
||||||
|
|
||||||
export interface ProductDocument {
|
export interface ProductDocument {
|
||||||
/** @primaryKey */
|
/** @primaryKey */
|
||||||
id: number;
|
id: number;
|
||||||
@ -110,7 +125,6 @@ export interface ProductSpec {
|
|||||||
id: number;
|
id: number;
|
||||||
group?: ProductSpecGroup | string | null;
|
group?: ProductSpecGroup | string | null;
|
||||||
sort?: number | null;
|
sort?: number | null;
|
||||||
value?: string | null;
|
|
||||||
translations?: ProductSpecsTranslation[] | null;
|
translations?: ProductSpecsTranslation[] | null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -120,6 +134,7 @@ export interface ProductSpecsTranslation {
|
|||||||
product_specs_id?: ProductSpec | string | null;
|
product_specs_id?: ProductSpec | string | null;
|
||||||
languages_code?: Language | string | null;
|
languages_code?: Language | string | null;
|
||||||
key?: string | null;
|
key?: string | null;
|
||||||
|
value?: string | null;
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface ProductType {
|
export interface ProductType {
|
||||||
@ -728,10 +743,11 @@ export interface Schema {
|
|||||||
company_profile_translations: CompanyProfileTranslation[];
|
company_profile_translations: CompanyProfileTranslation[];
|
||||||
contact_info: ContactInfo;
|
contact_info: ContactInfo;
|
||||||
contact_info_translations: ContactInfoTranslation[];
|
contact_info_translations: ContactInfoTranslation[];
|
||||||
documents_translations: DocumentsTranslation[];
|
|
||||||
homepage: Homepage;
|
homepage: Homepage;
|
||||||
homepage_files: HomepageFile[];
|
homepage_files: HomepageFile[];
|
||||||
languages: Language[];
|
languages: Language[];
|
||||||
|
meili_index_configs: MeiliIndexConfig[];
|
||||||
|
meili_search_config: MeiliSearchConfig;
|
||||||
product_documents: ProductDocument[];
|
product_documents: ProductDocument[];
|
||||||
product_documents_translations: ProductDocumentsTranslation[];
|
product_documents_translations: ProductDocumentsTranslation[];
|
||||||
product_images: ProductImage[];
|
product_images: ProductImage[];
|
||||||
@ -787,10 +803,11 @@ export enum CollectionNames {
|
|||||||
company_profile_translations = 'company_profile_translations',
|
company_profile_translations = 'company_profile_translations',
|
||||||
contact_info = 'contact_info',
|
contact_info = 'contact_info',
|
||||||
contact_info_translations = 'contact_info_translations',
|
contact_info_translations = 'contact_info_translations',
|
||||||
documents_translations = 'documents_translations',
|
|
||||||
homepage = 'homepage',
|
homepage = 'homepage',
|
||||||
homepage_files = 'homepage_files',
|
homepage_files = 'homepage_files',
|
||||||
languages = 'languages',
|
languages = 'languages',
|
||||||
|
meili_index_configs = 'meili_index_configs',
|
||||||
|
meili_search_config = 'meili_search_config',
|
||||||
product_documents = 'product_documents',
|
product_documents = 'product_documents',
|
||||||
product_documents_translations = 'product_documents_translations',
|
product_documents_translations = 'product_documents_translations',
|
||||||
product_images = 'product_images',
|
product_images = 'product_images',
|
||||||
|
|||||||
Reference in New Issue
Block a user