v3.5.8和v3.5.9版本更新
CI / verify (pull_request) Waiting to run

This commit is contained in:
2026-08-25 09:20:32 +08:00
parent 7304c7a8e1
commit 5935024ea8
101 changed files with 7640 additions and 5364 deletions
+14 -6
View File
@@ -14,6 +14,8 @@ import DetailImageUrlList from '../components/DetailImageUrlList';
import ProductDetailTemplatePicker from '../components/ProductDetailTemplatePicker';
import ProductSpecsEditor from '../components/ProductSpecsEditor';
import type { FormInstance } from 'antd/es/form';
import { useAdminListColumns } from '../lib/useAdminListColumns';
type ProductDetailContentDto = {
storyTitle?: string;
@@ -387,9 +389,9 @@ export default function ProductsPage() {
}
}
const columns: ColumnsType<Row> = useMemo(() => [
const baseColumns: ColumnsType<Row> = useMemo(() => [
{ title: '香型', dataIndex: 'aromaType', width: 80, render: (v) => AROMA_TYPE_LABELS[v] || v },
{ title: '品名', dataIndex: 'name', width: 200, ellipsis: true },
{ title: '品名', dataIndex: 'name', width: 200 },
{
title: '累计销售',
dataIndex: 'soldBottles',
@@ -458,7 +460,6 @@ export default function ProductsPage() {
title: '规格',
dataIndex: 'specText',
width: 140,
ellipsis: true,
render: (v: string, row) => (
<Space size={4}>
<span>{v || '默认'}</span>
@@ -468,7 +469,7 @@ export default function ProductsPage() {
),
},
{ title: 'SKU', dataIndex: 'skuCode', width: 110 },
{ title: '69码', dataIndex: 'barcode69', width: 160, ellipsis: true },
{ title: '69码', dataIndex: 'barcode69', width: 160 },
{ title: '售价', dataIndex: 'price', width: 90, render: (v) => `¥${v}` },
{ title: '权益额', dataIndex: 'benefitAmount', width: 90, render: (v) => `¥${v}` },
{
@@ -493,10 +494,17 @@ export default function ProductsPage() {
},
], []);
const { columns, settingsButton, settingsModal } = useAdminListColumns('products', baseColumns, {
page,
pageSize,
});
return (
<div>
{settingsModal}
<Space style={{ marginBottom: 16, width: '100%', justifyContent: 'space-between' }}>
<Typography.Title level={4} style={{ margin: 0 }}></Typography.Title>
{settingsButton}
<Button type="primary" onClick={() => setCreateOpen(true)}></Button>
</Space>
<Form form={form} layout="inline" style={{ marginBottom: 16 }} onFinish={(v) => { setFilters(v); setPage(1); }}>
@@ -517,7 +525,7 @@ export default function ProductsPage() {
loading={loading}
columns={columns}
dataSource={data?.items ?? []}
scroll={{ x: 1080 }}
scroll={{ x: 'max-content' }}
expandable={{
rowExpandable: () => true,
expandedRowRender: (row) => (
@@ -528,7 +536,7 @@ export default function ProductsPage() {
pagination={false}
columns={skuColumns}
dataSource={row.skus ?? []}
scroll={{ x: 980 }}
scroll={{ x: 'max-content' }}
style={{ background: 'transparent' }}
/>
</div>