@chenchaolong/plugin-trade-compliance-workbench 1.0.7 → 1.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/dist/lib/remote-components/trade-compliance-workbench/app.css +1 -1
  2. package/dist/lib/remote-components/trade-compliance-workbench/app.js +5 -5
  3. package/dist/lib/remote-ui/app-source.js +38 -9
  4. package/dist/lib/remote-ui/app-source.js.map +1 -1
  5. package/dist/lib/remote-ui/components/layout.d.ts.map +1 -1
  6. package/dist/lib/remote-ui/components/layout.js +4 -3
  7. package/dist/lib/remote-ui/components/layout.js.map +1 -1
  8. package/dist/lib/remote-ui/pages/analytics.d.ts +4 -0
  9. package/dist/lib/remote-ui/pages/analytics.d.ts.map +1 -1
  10. package/dist/lib/remote-ui/pages/analytics.js +46 -1
  11. package/dist/lib/remote-ui/pages/analytics.js.map +1 -1
  12. package/dist/lib/remote-ui/pages/catalogs.d.ts.map +1 -1
  13. package/dist/lib/remote-ui/pages/catalogs.js +14 -11
  14. package/dist/lib/remote-ui/pages/catalogs.js.map +1 -1
  15. package/dist/lib/remote-ui/pages/contracts.d.ts +2 -0
  16. package/dist/lib/remote-ui/pages/contracts.d.ts.map +1 -1
  17. package/dist/lib/remote-ui/pages/contracts.js +7 -5
  18. package/dist/lib/remote-ui/pages/contracts.js.map +1 -1
  19. package/dist/lib/remote-ui/pages/files.d.ts +44 -1
  20. package/dist/lib/remote-ui/pages/files.d.ts.map +1 -1
  21. package/dist/lib/remote-ui/pages/files.js +74 -5
  22. package/dist/lib/remote-ui/pages/files.js.map +1 -1
  23. package/dist/lib/remote-ui/pages/home.js +2 -2
  24. package/dist/lib/remote-ui/pages/home.js.map +1 -1
  25. package/dist/lib/remote-ui/pages/procurement.d.ts.map +1 -1
  26. package/dist/lib/remote-ui/pages/procurement.js +31 -22
  27. package/dist/lib/remote-ui/pages/procurement.js.map +1 -1
  28. package/dist/lib/remote-ui/pages/sales.d.ts +46 -2
  29. package/dist/lib/remote-ui/pages/sales.d.ts.map +1 -1
  30. package/dist/lib/remote-ui/pages/sales.js +78 -10
  31. package/dist/lib/remote-ui/pages/sales.js.map +1 -1
  32. package/dist/lib/remote-ui/pages/settings.d.ts +14 -1
  33. package/dist/lib/remote-ui/pages/settings.d.ts.map +1 -1
  34. package/dist/lib/remote-ui/pages/settings.js +31 -6
  35. package/dist/lib/remote-ui/pages/settings.js.map +1 -1
  36. package/dist/lib/remote-ui/sales-contracts.d.ts +3 -1
  37. package/dist/lib/remote-ui/sales-contracts.d.ts.map +1 -1
  38. package/dist/lib/sales-file.service.d.ts +13 -35
  39. package/dist/lib/sales-file.service.d.ts.map +1 -1
  40. package/dist/lib/sales-file.service.js +35 -17
  41. package/dist/lib/sales-file.service.js.map +1 -1
  42. package/dist/lib/types.d.ts +17 -3
  43. package/dist/lib/types.d.ts.map +1 -1
  44. package/dist/lib/types.js +2 -0
  45. package/dist/lib/types.js.map +1 -1
  46. package/dist/lib/workbench-view.provider.d.ts.map +1 -1
  47. package/dist/lib/workbench-view.provider.js +15 -3
  48. package/dist/lib/workbench-view.provider.js.map +1 -1
  49. package/package.json +1 -1
@@ -17,7 +17,7 @@ const orderFilters = [
17
17
  { type: 'date-range', key: 'orderDate', label: '下单日期' }, { type: 'select', key: 'paymentStatus', label: '收款状态', options: [{ value: 'UNPAID', label: '未收款' }, { value: 'PARTIAL', label: '部分收款' }, { value: 'PAID', label: '已收款' }] }
18
18
  ];
19
19
  const lineFilters = [
20
- { type: 'text', key: 'productName', label: '商品名称' }, { type: 'text', key: 'productDescription', label: '商品描述' }, { type: 'text', key: 'hsCode', label: '海关编码' },
20
+ { type: 'text', key: 'productName', label: '商品名称' }, { type: 'text', key: 'productDescription', label: '商品描述' }, { type: 'text', key: 'hsCode', label: 'HS编码' },
21
21
  { type: 'select', key: 'complianceCategory', label: '合规分类', options: [{ value: 'DUAL_USE', label: '军民两用' }, { value: 'OVERSEAS_SANCTION', label: '海外制裁' }] }
22
22
  ];
23
23
  export function createSalesQueryDispatcher(onQuery) {
@@ -26,11 +26,38 @@ export function createSalesQueryDispatcher(onQuery) {
26
26
  pageSize: (collection, pageSize, filters) => onQuery(collection, { page: 1, pageSize, filters })
27
27
  };
28
28
  }
29
+ export function createSalesOrderMaintenancePayload(order, field, value, remarks) {
30
+ return { customerContractId: order.customerContractId, purchaseOrderId: order.purchaseOrderId, [field]: value, remarks };
31
+ }
32
+ export async function completeSalesGeneration(order, draft, onAction, onOpenFiles, onClose) {
33
+ const input = {
34
+ customerContractId: order.customerContractId,
35
+ purchaseOrderId: order.purchaseOrderId,
36
+ ...draft
37
+ };
38
+ const preflight = await onAction('preflight_sales_file', input);
39
+ if (isFailedActionResult(preflight))
40
+ throw new Error(actionFailureMessage(preflight, '销售文件生成预检失败'));
41
+ const preflightData = actionResultData(preflight);
42
+ const blockingReasons = recordArray(preflightData, 'blockingReasons');
43
+ if (!isRecord(preflightData) || preflightData.allowed !== true || blockingReasons.length) {
44
+ const messages = blockingReasons.map(reason => typeof reason.message === 'string' ? reason.message : '').filter(Boolean);
45
+ throw new Error(messages.join(';') || '销售文件生成预检未通过');
46
+ }
47
+ const result = await onAction('generate_sales_file', input);
48
+ if (isFailedActionResult(result))
49
+ throw new Error(actionFailureMessage(result, '销售文件生成失败'));
50
+ const translationFailures = collectTranslationFailures(actionResultData(result));
51
+ onClose();
52
+ onOpenFiles?.(order);
53
+ return translationFailures;
54
+ }
29
55
  export function SalesPage(props) {
30
56
  const [filters, setFilters] = React.useState({});
31
57
  const [confirmCustomer, setConfirmCustomer] = React.useState(null);
32
58
  const [rateDialog, setRateDialog] = React.useState(null);
33
59
  const [manualDialog, setManualDialog] = React.useState(null);
60
+ const [generationDialog, setGenerationDialog] = React.useState(null);
34
61
  const [hsQuery, setHsQuery] = React.useState(null);
35
62
  const [riskLine, setRiskLine] = React.useState(null);
36
63
  const hsAction = React.useMemo(() => createSalesLineLookupAction(props.onAction), [props.onAction]);
@@ -51,7 +78,7 @@ export function SalesPage(props) {
51
78
  { type: 'custom', key: 'sanctionStatus', header: '制裁风险', width: 120, truncate: false, render: (_, row) => _jsx(Status, { value: row.sanctionStatus }) }, { type: 'text', key: 'complianceCheckedAt', header: '最近检查时间', width: 170, truncate: false, format: formatBeijingDateTime }
52
79
  ];
53
80
  const openOrders = (row) => row.profitRateStatus === 'MISSING' ? setConfirmCustomer(row) : props.onRouteChange({ type: 'sales', level: 'orders', customerId: row.id });
54
- return _jsxs("main", { className: "tcw-sales-files-page tcw-sales-page tcw-sales-page--customers", children: [_jsx(PageHeading, { title: "\u5BA2\u6237\u4FE1\u606F\u5217\u8868", description: "\u7EF4\u62A4\u9500\u552E\u5BA2\u6237\u4E3B\u4F53\uFF0C\u70B9\u51FB\u8BA2\u5355\u8BE6\u60C5\u8FDB\u5165\u8BE5\u5BA2\u6237\u7684\u9500\u552E\u8BA2\u5355\u5217\u8868\u3002" }), _jsx(FilterPanel, { definitions: customerFilters, values: filters, onChange: (key, value) => setFilters(current => ({ ...current, [key]: value })), onQuery: () => void query('salesCustomers'), onReset: () => reset('salesCustomers') }), _jsx(InfoNotice, { children: "\u5BA2\u6237\u9ED8\u8BA4\u5B9A\u4EF7\u5229\u6DA6\u7387\u4E0D\u80FD\u4E3A\u7A7A\uFF1B\u5236\u88C1\u547D\u4E2D\u53EA\u63D0\u793A\uFF0C\u4E0D\u963B\u6B62\u540E\u7EED\u9500\u552E\u4E1A\u52A1\u3002" }), _jsx(DataGrid, { columns: columns, rows: props.customers.items, rowKey: "id", pagination: pagination(props.customers), onPageChange: page => void query('salesCustomers', page), onPageSizeChange: pageSize => void queryDispatcher.pageSize('salesCustomers', pageSize, filters), emptyText: "\u6682\u65E0\u5BA2\u6237\u6570\u636E", actionWidth: 230, actions: row => _jsxs(_Fragment, { children: [_jsxs("button", { type: "button", onClick: () => openOrders(row), children: [_jsx("i", { className: "ri-file-list-3-line", "aria-hidden": "true" }), "\u8BA2\u5355\u8BE6\u60C5"] }), _jsxs("button", { type: "button", onClick: () => setRateDialog({ customer: row, enterOrders: false }), children: [_jsx("i", { className: "ri-percent-line", "aria-hidden": "true" }), "\u7EF4\u62A4\u9ED8\u8BA4\u5229\u6DA6\u7387"] })] }) }), _jsx(ConfirmDialog, { open: Boolean(confirmCustomer), title: "\u9ED8\u8BA4\u5229\u6DA6\u7387\u672A\u7EF4\u62A4", message: "\u8BE5\u5BA2\u6237\u5C1A\u672A\u7EF4\u62A4\u9ED8\u8BA4\u5B9A\u4EF7\u5229\u6DA6\u7387\u3002\u662F\u5426\u5148\u7EF4\u62A4\u5229\u6DA6\u7387\u540E\u8FDB\u5165\u8BA2\u5355\u5217\u8868\uFF1F", onCancel: () => setConfirmCustomer(null), onConfirm: () => { if (confirmCustomer)
81
+ return _jsxs("main", { className: "tcw-sales-files-page tcw-sales-page tcw-sales-page--customers", children: [_jsx(PageHeading, { title: "\u5BA2\u6237\u4FE1\u606F\u5217\u8868", description: "\u7EF4\u62A4\u9500\u552E\u5BA2\u6237\u4E3B\u4F53\uFF0C\u70B9\u51FB\u8BA2\u5355\u8BE6\u60C5\u8FDB\u5165\u8BE5\u5BA2\u6237\u7684\u9500\u552E\u8BA2\u5355\u5217\u8868\u3002" }), _jsx(FilterPanel, { definitions: customerFilters, values: filters, onChange: (key, value) => setFilters(current => ({ ...current, [key]: value })), onQuery: () => void query('salesCustomers'), onReset: () => reset('salesCustomers') }), _jsx(InfoNotice, { children: "\u5BA2\u6237\u9ED8\u8BA4\u5B9A\u4EF7\u5229\u6DA6\u7387\u4E0D\u80FD\u4E3A\u7A7A\uFF1B\u5236\u88C1\u547D\u4E2D\u53EA\u63D0\u793A\uFF0C\u4E0D\u963B\u6B62\u540E\u7EED\u9500\u552E\u4E1A\u52A1\u3002" }), _jsx(DataGrid, { columns: columns, rows: props.customers.items, rowKey: "id", pagination: pagination(props.customers), onPageChange: page => void query('salesCustomers', page), onPageSizeChange: pageSize => void queryDispatcher.pageSize('salesCustomers', pageSize, filters), emptyText: "\u6682\u65E0\u5BA2\u6237\u6570\u636E", actionWidth: 350, actions: row => _jsxs(_Fragment, { children: [_jsxs("button", { type: "button", onClick: () => openOrders(row), children: [_jsx("i", { className: "ri-file-list-3-line", "aria-hidden": "true" }), "\u8BA2\u5355\u8BE6\u60C5"] }), _jsxs("button", { type: "button", onClick: () => setRateDialog({ customer: row, enterOrders: false }), children: [_jsx("i", { className: "ri-user-settings-line", "aria-hidden": "true" }), "\u7EF4\u62A4\u5BA2\u6237\u4FE1\u606F"] }), _jsxs("button", { type: "button", onClick: () => setRateDialog({ customer: row, enterOrders: false }), children: [_jsx("i", { className: "ri-percent-line", "aria-hidden": "true" }), "\u7EF4\u62A4\u9ED8\u8BA4\u5229\u6DA6\u7387"] })] }) }), _jsx(ConfirmDialog, { open: Boolean(confirmCustomer), title: "\u9ED8\u8BA4\u5229\u6DA6\u7387\u672A\u7EF4\u62A4", message: "\u8BE5\u5BA2\u6237\u5C1A\u672A\u7EF4\u62A4\u9ED8\u8BA4\u5B9A\u4EF7\u5229\u6DA6\u7387\u3002\u662F\u5426\u5148\u7EF4\u62A4\u5229\u6DA6\u7387\u540E\u8FDB\u5165\u8BA2\u5355\u5217\u8868\uFF1F", onCancel: () => setConfirmCustomer(null), onConfirm: () => { if (confirmCustomer)
55
82
  setRateDialog({ customer: confirmCustomer, enterOrders: true }); setConfirmCustomer(null); } }), rateDialog && _jsx(CustomerMaintenanceDialog, { state: rateDialog, busy: props.busy, onClose: () => setRateDialog(null), onSave: async (rate) => { await props.onAction('save_customer_profit_rate', { customerId: rateDialog.customer.id, rate }); const next = rateDialog.enterOrders; const id = rateDialog.customer.id; setRateDialog(null); if (next)
56
83
  props.onRouteChange({ type: 'sales', level: 'orders', customerId: id });
57
84
  else
@@ -64,19 +91,31 @@ export function SalesPage(props) {
64
91
  { type: 'text', key: 'orderAmountCny', header: '销售总额 CNY', width: 140, align: 'right', truncate: false, format: money }, { type: 'text', key: 'receivedAmountCny', header: '已收款 CNY', width: 140, align: 'right', truncate: false, format: money }, { type: 'text', key: 'unreceivedAmountCny', header: '未收款 CNY', width: 140, align: 'right', truncate: false, format: money },
65
92
  { type: 'custom', key: 'paymentStatus', header: '收款状态', width: 110, truncate: false, render: (_, row) => paymentLabel(row.paymentStatus) }, { type: 'text', key: 'effectivePricingProfitRate', header: '订单利润率', width: 120, truncate: false, format: percent }, { type: 'text', key: 'pricingProfitRateSource', header: '利润率来源', width: 150, truncate: false, format: sourceLabel }
66
93
  ];
67
- return _jsxs("main", { className: "tcw-sales-files-page tcw-sales-page tcw-sales-page--orders", children: [_jsx(PageHeading, { title: "\u9500\u552E\u8BA2\u5355\u5217\u8868", description: "\u67E5\u770B\u5F53\u524D\u5BA2\u6237\u7684\u6D3E\u751F\u9500\u552E\u8BA2\u5355\uFF0C\u70B9\u51FB\u5546\u54C1\u8BE6\u60C5\u8FDB\u5165\u5546\u54C1\u5217\u8868\uFF1B\u53EF\u7EF4\u62A4\u8BA2\u5355\u5B9A\u4EF7\u5229\u6DA6\u7387\u548C\u5DF2\u6536\u6B3E\u3002", action: _jsxs("button", { type: "button", className: "tcw-button tcw-button--secondary", onClick: () => props.onRouteChange({ type: 'sales', level: 'customers' }), children: [_jsx("i", { className: "ri-arrow-left-line", "aria-hidden": "true" }), "\u8FD4\u56DE\u5BA2\u6237\u4FE1\u606F\u5217\u8868"] }) }), _jsxs("section", { className: "tcw-context-bar", children: [_jsx("strong", { children: "\u5BA2\u6237\u6458\u8981" }), _jsxs("span", { children: [props.orders.customer?.code || '—', " \u00B7 ", props.orders.customer?.name || '—'] }), _jsx("span", { children: props.orders.customer?.country || '—' })] }), _jsx("section", { className: "tcw-metric-grid", children: [['订单总数', String(metrics.orderCount)], ['销售总额', money(metrics.salesAmountCny)], ['已收款', money(metrics.receivedAmountCny)], ['未收款', money(metrics.unreceivedAmountCny)], ['本年订单数', String(metrics.currentYearOrderCount)], ['本年销售金额', money(metrics.currentYearSalesAmountCny)]].map(([label, value]) => _jsxs("article", { children: [_jsx("span", { children: label }), _jsx("strong", { children: value }), _jsx("small", { children: label.includes('订单数') || label === '订单总数' ? '笔' : 'CNY' })] }, label)) }), _jsxs("section", { className: "tcw-sales-top", children: [_jsx("strong", { children: "\u9500\u552E\u5546\u54C1 TOP5" }), metrics.topProducts.length ? _jsx("ol", { children: metrics.topProducts.map(item => _jsxs("li", { children: [_jsx("span", { title: item.productName, children: item.productName }), _jsxs("b", { children: [money(item.amountCny), " CNY"] })] }, item.productName)) }) : _jsx("small", { children: "\u6682\u65E0\u5546\u54C1\u6570\u636E" })] }), _jsx(FilterPanel, { definitions: orderFilters, values: filters, onChange: (key, value) => setFilters(current => ({ ...current, [key]: value })), onQuery: () => void query('salesOrders'), onReset: () => reset('salesOrders') }), _jsx(DataGrid, { columns: columns, rows: props.orders.items, rowKey: row => `${row.customerContractId}:${row.purchaseOrderId}`, pagination: pagination(props.orders), onPageChange: page => void query('salesOrders', page), onPageSizeChange: pageSize => void queryDispatcher.pageSize('salesOrders', pageSize, filters), emptyText: "\u6682\u65E0\u9500\u552E\u8BA2\u5355", actionWidth: 460, actions: row => _jsxs(_Fragment, { children: [_jsxs("button", { type: "button", onClick: () => props.onRouteChange({ type: 'sales', level: 'lines', customerId: row.customerId, orderKey: `${row.customerContractId}:${row.purchaseOrderId}` }), children: [_jsx("i", { className: "ri-list-check-2", "aria-hidden": "true" }), "\u5546\u54C1\u8BE6\u60C5"] }), _jsxs("button", { type: "button", onClick: () => setManualDialog({ order: row, field: 'pricingProfitRateOverride' }), children: [_jsx("i", { className: "ri-percent-line", "aria-hidden": "true" }), "\u7EF4\u62A4\u8BA2\u5355\u5229\u6DA6\u7387"] }), _jsxs("button", { type: "button", onClick: () => setManualDialog({ order: row, field: 'receivedAmountCny' }), children: [_jsx("i", { className: "ri-money-cny-circle-line", "aria-hidden": "true" }), "\u7EF4\u62A4\u5DF2\u6536\u6B3E"] }), _jsxs("button", { type: "button", onClick: () => props.onOpenFiles?.(row), children: [_jsx("i", { className: "ri-file-excel-2-line", "aria-hidden": "true" }), "\u751F\u6210\u6587\u4EF6/\u8FDB\u5165\u9500\u552E\u6587\u4EF6"] })] }) }), manualDialog && _jsx(SalesOrderMaintenanceDialog, { state: manualDialog, busy: props.busy, onClose: () => setManualDialog(null), onSave: async (value) => { const { order, field } = manualDialog; await props.onAction('save_derived_manual_data', { customerContractId: order.customerContractId, purchaseOrderId: order.purchaseOrderId, [field]: value }); setManualDialog(null); void query('salesOrders'); } })] });
94
+ return _jsxs("main", { className: "tcw-sales-files-page tcw-sales-page tcw-sales-page--orders", children: [_jsxs("section", { className: "tcw-context-bar", children: [_jsx("strong", { children: "\u5BA2\u6237\u6458\u8981" }), _jsxs("span", { children: [props.orders.customer?.code || '—', " \u00B7 ", props.orders.customer?.name || '—'] }), _jsx("span", { children: props.orders.customer?.country || '—' })] }), _jsx(PageHeading, { title: "\u9500\u552E\u8BA2\u5355\u5217\u8868", description: "\u67E5\u770B\u5F53\u524D\u5BA2\u6237\u7684\u6D3E\u751F\u9500\u552E\u8BA2\u5355\uFF0C\u70B9\u51FB\u5546\u54C1\u8BE6\u60C5\u8FDB\u5165\u5546\u54C1\u5217\u8868\uFF1B\u53EF\u7EF4\u62A4\u8BA2\u5355\u5B9A\u4EF7\u5229\u6DA6\u7387\u548C\u5DF2\u6536\u6B3E\u3002", action: _jsxs("button", { type: "button", className: "tcw-button tcw-button--secondary", onClick: () => props.onRouteChange({ type: 'sales', level: 'customers' }), children: [_jsx("i", { className: "ri-arrow-left-line", "aria-hidden": "true" }), "\u8FD4\u56DE\u5BA2\u6237\u4FE1\u606F\u5217\u8868"] }) }), _jsx("section", { className: "tcw-metric-grid", children: [['订单总数', String(metrics.orderCount)], ['销售总额', money(metrics.salesAmountCny)], ['已收款', money(metrics.receivedAmountCny)], ['未收款', money(metrics.unreceivedAmountCny)], ['本年订单数', String(metrics.currentYearOrderCount)], ['本年销售金额', money(metrics.currentYearSalesAmountCny)]].map(([label, value]) => _jsxs("article", { children: [_jsx("span", { children: label }), _jsx("strong", { children: value }), _jsx("small", { children: label.includes('订单数') || label === '订单总数' ? '笔' : 'CNY' })] }, label)) }), _jsxs("section", { className: "tcw-sales-top", children: [_jsx("strong", { children: "\u9500\u552E\u5546\u54C1 TOP5" }), metrics.topProducts.length ? _jsx("ol", { children: metrics.topProducts.map(item => _jsxs("li", { children: [_jsx("span", { title: item.productName, children: item.productName }), _jsxs("b", { children: [money(item.amountCny), " CNY"] })] }, item.productName)) }) : _jsx("small", { children: "\u6682\u65E0\u5546\u54C1\u6570\u636E" })] }), _jsx(FilterPanel, { definitions: orderFilters, values: filters, onChange: (key, value) => setFilters(current => ({ ...current, [key]: value })), onQuery: () => void query('salesOrders'), onReset: () => reset('salesOrders') }), _jsx(DataGrid, { columns: columns, rows: props.orders.items, rowKey: row => `${row.customerContractId}:${row.purchaseOrderId}`, pagination: pagination(props.orders), onPageChange: page => void query('salesOrders', page), onPageSizeChange: pageSize => void queryDispatcher.pageSize('salesOrders', pageSize, filters), emptyText: "\u6682\u65E0\u9500\u552E\u8BA2\u5355", actionWidth: 650, actions: row => _jsxs(_Fragment, { children: [_jsxs("button", { type: "button", onClick: () => props.onRouteChange({ type: 'sales', level: 'lines', customerId: row.customerId, orderKey: `${row.customerContractId}:${row.purchaseOrderId}` }), children: [_jsx("i", { className: "ri-list-check-2", "aria-hidden": "true" }), "\u5546\u54C1\u8BE6\u60C5"] }), _jsxs("button", { type: "button", onClick: event => { resetSalesPageScroll(event.currentTarget); setManualDialog({ order: row, field: 'pricingProfitRateOverride' }); }, children: [_jsx("i", { className: "ri-edit-box-line", "aria-hidden": "true" }), "\u7EF4\u62A4\u9500\u552E\u8BA2\u5355\u6570\u636E"] }), _jsxs("button", { type: "button", onClick: event => { resetSalesPageScroll(event.currentTarget); setManualDialog({ order: row, field: 'pricingProfitRateOverride' }); }, children: [_jsx("i", { className: "ri-percent-line", "aria-hidden": "true" }), "\u7EF4\u62A4\u8BA2\u5355\u5229\u6DA6\u7387"] }), _jsxs("button", { type: "button", onClick: event => { resetSalesPageScroll(event.currentTarget); setManualDialog({ order: row, field: 'receivedAmountCny' }); }, children: [_jsx("i", { className: "ri-money-cny-circle-line", "aria-hidden": "true" }), "\u7EF4\u62A4\u5DF2\u6536\u6B3E"] }), _jsxs("button", { type: "button", onClick: event => { resetSalesPageScroll(event.currentTarget); setGenerationDialog(row); }, children: [_jsx("i", { className: "ri-file-excel-2-line", "aria-hidden": "true" }), "\u751F\u6210\u9500\u552E\u6587\u4EF6"] })] }) }), manualDialog && _jsx(SalesOrderMaintenanceDialog, { state: manualDialog, busy: props.busy, onClose: () => setManualDialog(null), onSave: async (value, details) => { const { order, field } = manualDialog; await props.onAction('save_derived_manual_data', createSalesOrderMaintenancePayload(order, field, value, details?.remarks ?? '')); setManualDialog(null); void query('salesOrders'); } }), generationDialog && _jsx(SalesGenerateFileDialog, { order: generationDialog, busy: props.busy, onClose: () => setGenerationDialog(null), onConfirm: async (draft) => {
95
+ try {
96
+ const translationFailures = await completeSalesGeneration(generationDialog, draft, props.onAction, props.onOpenFiles, () => setGenerationDialog(null));
97
+ const details = translationFailures.map(failure => `${failure.field}:${failure.sourceValue}(${failure.message})`).join(';');
98
+ props.onNotify?.({ message: translationFailures.length ? `销售文件生成成功,但部分字段翻译失败:${details}` : '销售文件生成成功', tone: translationFailures.length ? 'warning' : 'success' });
99
+ }
100
+ catch (cause) {
101
+ props.onNotify?.({ message: cause instanceof Error ? cause.message : '销售文件生成失败', tone: 'error' });
102
+ }
103
+ } })] });
68
104
  }
69
105
  const order = props.lines.order;
70
106
  const customerId = props.route.customerId;
71
107
  const columns = [
72
- { type: 'custom', key: 'productName', header: '商品名称', width: 190, title: (_, row) => row.productName || undefined, render: (_, row) => _jsxs("button", { type: "button", className: "tcw-table-link", title: row.productName, "aria-label": `按商品名称查询海关编码:${row.productName}`, onClick: () => openHsLookup(row, 'PRODUCT_NAME'), children: [_jsx("i", { className: "ri-search-line", "aria-hidden": "true" }), row.productName] }) }, { type: 'ellipsis', key: 'productDescription', header: '商品描述', width: 190, maxWidth: 190 }, { type: 'ellipsis', key: 'modelSpecification', header: '规格型号', width: 150 }, { type: 'custom', key: 'hsCode', header: '海关编码', width: 130, title: (_, row) => row.hsCode || undefined, render: (_, row) => row.hsCode ? _jsxs("button", { type: "button", className: "tcw-table-link", title: row.hsCode, "aria-label": `查询海关编码:${row.hsCode}`, onClick: () => openHsLookup(row, 'HS_CODE'), children: [_jsx("i", { className: "ri-search-line", "aria-hidden": "true" }), row.hsCode] }) : '—' },
108
+ { type: 'custom', key: 'productName', header: '商品名称', width: 190, title: (_, row) => row.productName || undefined, render: (_, row) => _jsxs("button", { type: "button", className: "tcw-table-link", title: row.productName, "aria-label": `按商品名称查询海关编码:${row.productName}`, onClick: () => openHsLookup(row, 'PRODUCT_NAME'), children: [_jsx("i", { className: "ri-search-line", "aria-hidden": "true" }), row.productName] }) }, { type: 'ellipsis', key: 'productDescription', header: '商品描述', width: 190, maxWidth: 190 }, { type: 'ellipsis', key: 'modelSpecification', header: '规格型号', width: 150 }, { type: 'custom', key: 'hsCode', header: 'HS编码', width: 130, title: (_, row) => row.hsCode || undefined, render: (_, row) => row.hsCode ? _jsxs("button", { type: "button", className: "tcw-table-link", title: row.hsCode, "aria-label": `查询海关编码:${row.hsCode}`, onClick: () => openHsLookup(row, 'HS_CODE'), children: [_jsx("i", { className: "ri-search-line", "aria-hidden": "true" }), row.hsCode] }) : '—' },
73
109
  { type: 'text', key: 'vatRate', header: '增值税率', width: 100, align: 'right', truncate: false, format: percent }, { type: 'text', key: 'refundRate', header: '退税率', width: 90, align: 'right', truncate: false, format: percent }, { type: 'custom', key: 'hsCodeStatus', header: '编码确认状态', width: 120, truncate: false, render: (_, row) => hsCodeStatusLabel(row.hsCodeStatus) },
74
- { type: 'custom', key: 'complianceCategories', header: '合规分类', width: 170, title: (_, row) => complianceCategoryTitle(row.complianceCategories), render: (_, row) => _jsx(Tags, { values: row.complianceCategories ?? [] }) }, { type: 'custom', key: 'complianceMatches', header: '制裁/管控命中', width: 160, truncate: false, render: (_, row) => row.complianceMatches.length ? _jsxs("button", { type: "button", className: "tcw-table-link", title: `查看商品风险明细:${row.productName}`, onClick: () => setRiskLine(row), children: [_jsx("i", { className: "ri-error-warning-line", "aria-hidden": "true" }), "\u547D\u4E2D ", row.complianceMatches.length] }) : _jsx("span", { className: "tcw-tag", children: "\u65E0\u547D\u4E2D" }) },
110
+ { type: 'custom', key: 'complianceCategories', header: '合规分类', width: 170, title: (_, row) => complianceCategoryTitle(row.complianceCategories), render: (_, row) => _jsx(Tags, { values: row.complianceCategories ?? [] }) }, { type: 'custom', key: 'complianceMatches', header: '管控风险结果', width: 160, truncate: false, render: (_, row) => row.complianceMatches.length ? _jsxs("button", { type: "button", className: "tcw-table-link", title: `查看商品风险明细:${row.productName}`, onClick: event => { resetSalesPageScroll(event.currentTarget); setRiskLine(row); }, children: [_jsx("i", { className: "ri-error-warning-line", "aria-hidden": "true" }), "\u547D\u4E2D ", row.complianceMatches.length] }) : _jsx("span", { className: "tcw-tag", children: "\u65E0\u547D\u4E2D" }) },
75
111
  { type: 'text', key: 'quantity', header: '数量', width: 100, align: 'right', truncate: false }, { type: 'text', key: 'salesUnitPriceCny', header: '销售单价 CNY', width: 140, align: 'right', truncate: false, format: money }, { type: 'text', key: 'salesLineAmountCny', header: '销售金额 CNY', width: 140, align: 'right', truncate: false, format: money }
76
112
  ];
77
- return _jsxs("main", { className: "tcw-sales-files-page tcw-sales-page tcw-sales-page--lines", children: [_jsx(PageHeading, { title: "\u9500\u552E\u5546\u54C1\u5217\u8868", description: "\u53EA\u8BFB\u67E5\u770B\u5F53\u524D\u9500\u552E\u8BA2\u5355\u7684\u6D3E\u751F\u5546\u54C1\u3001\u98CE\u9669\u5339\u914D\u4E0E\u9500\u552E\u91D1\u989D\u3002", action: _jsxs("button", { type: "button", className: "tcw-button tcw-button--secondary", onClick: () => props.onRouteChange({ type: 'sales', level: 'orders', customerId }), children: [_jsx("i", { className: "ri-arrow-left-line", "aria-hidden": "true" }), "\u8FD4\u56DE\u9500\u552E\u8BA2\u5355\u5217\u8868"] }) }), _jsxs("section", { className: "tcw-context-bar tcw-order-summary", children: [_jsx("strong", { children: order?.salesOrderNo ?? '销售商品' }), _jsx("span", { children: order?.customerContractNo }), _jsx("span", { children: order?.purchaseContractNo })] }), order && _jsxs(InfoNotice, { children: [sourceLabel(order.pricingProfitRateSource), "\uFF1A\u5F53\u524D\u9500\u552E\u4EF7\u683C\u6309 ", percent(order.effectivePricingProfitRate), " \u8BA1\u7B97\u3002"] }), _jsx(FilterPanel, { definitions: lineFilters, values: filters, onChange: (key, value) => setFilters(current => ({ ...current, [key]: value })), onQuery: () => void query('salesLines'), onReset: () => reset('salesLines') }), _jsx(DataGrid, { columns: columns, rows: props.lines.items, rowKey: "purchaseOrderLineId", pagination: pagination(props.lines), onPageChange: page => void query('salesLines', page), onPageSizeChange: pageSize => void queryDispatcher.pageSize('salesLines', pageSize, filters), emptyText: "\u6682\u65E0\u6D3E\u751F\u9500\u552E\u5546\u54C1" }), riskLine && _jsx(SalesProductRiskDialog, { line: riskLine, onClose: () => setRiskLine(null) }), _jsx(HsCodeLookupDialog, { open: hsQuery !== null, initialQuery: hsQuery ?? '', onAction: hsAction, onClose: () => setHsQuery(null) })] });
113
+ return _jsxs("main", { className: "tcw-sales-files-page tcw-sales-page tcw-sales-page--lines", children: [_jsx(PageHeading, { className: "tcw-sales-heading--lines", title: "\u9500\u552E\u5546\u54C1\u5217\u8868", description: "\u53EA\u8BFB\u67E5\u770B\u5F53\u524D\u9500\u552E\u8BA2\u5355\u7684\u6D3E\u751F\u5546\u54C1\u3001\u98CE\u9669\u5339\u914D\u4E0E\u9500\u552E\u91D1\u989D\u3002", action: _jsxs("button", { type: "button", className: "tcw-button tcw-button--secondary", onClick: () => props.onRouteChange({ type: 'sales', level: 'orders', customerId }), children: [_jsx("i", { className: "ri-arrow-left-line", "aria-hidden": "true" }), "\u8FD4\u56DE\u9500\u552E\u8BA2\u5355\u5217\u8868"] }) }), _jsxs("section", { className: "tcw-context-bar tcw-order-summary", children: [_jsx("strong", { children: order?.salesOrderNo ?? '销售商品' }), _jsx("span", { children: order?.customerContractNo }), _jsx("span", { children: order?.purchaseContractNo })] }), order && _jsxs(InfoNotice, { children: [sourceLabel(order.pricingProfitRateSource), "\uFF1A\u5F53\u524D\u9500\u552E\u4EF7\u683C\u6309 ", percent(order.effectivePricingProfitRate), " \u8BA1\u7B97\u3002"] }), _jsx(FilterPanel, { definitions: lineFilters, values: filters, onChange: (key, value) => setFilters(current => ({ ...current, [key]: value })), onQuery: () => void query('salesLines'), onReset: () => reset('salesLines') }), _jsx(DataGrid, { columns: columns, rows: props.lines.items, rowKey: "purchaseOrderLineId", pagination: pagination(props.lines), onPageChange: page => void query('salesLines', page), onPageSizeChange: pageSize => void queryDispatcher.pageSize('salesLines', pageSize, filters), emptyText: "\u6682\u65E0\u6D3E\u751F\u9500\u552E\u5546\u54C1", actionWidth: 110, actions: row => _jsxs("button", { type: "button", "aria-label": `查看风险:${row.productName}`, onClick: event => { resetSalesPageScroll(event.currentTarget); setRiskLine(row); }, children: [_jsx("i", { className: "ri-shield-check-line", "aria-hidden": "true" }), "\u67E5\u770B\u98CE\u9669"] }) }), riskLine && _jsx(SalesProductRiskDialog, { line: riskLine, onClose: () => setRiskLine(null) }), _jsx(HsCodeLookupDialog, { open: hsQuery !== null, initialQuery: hsQuery ?? '', onAction: hsAction, onClose: () => setHsQuery(null) })] });
78
114
  }
79
115
  export function salesLineLookupQuery(line, field) { return field === 'productName' ? line.productName : line.hsCode ?? ''; }
116
+ export function resetSalesPageScroll(target) {
117
+ target.closest('.tcw-main')?.scrollTo({ top: 0, left: 0, behavior: 'auto' });
118
+ }
80
119
  export function createSalesLineLookupRequest(line, field) {
81
120
  return { type: 'HS_CODE_LOOKUP', field, query: salesLineLookupQuery(line, field === 'PRODUCT_NAME' ? 'productName' : 'hsCode'), purchaseOrderLineId: line.purchaseOrderLineId };
82
121
  }
@@ -96,6 +135,7 @@ export function SalesProductRiskDialog({ line, onClose }) {
96
135
  const riskTypes = [...new Set([...(line.complianceCategories ?? []), ...line.complianceMatches.map(match => match.catalogType)])];
97
136
  const riskDescriptions = matchValues(line.complianceMatches, 'riskDescription');
98
137
  const recommendations = matchValues(line.complianceMatches, 'recommendation');
138
+ const matchedItems = [...new Set(line.complianceMatches.map(match => match.matchedItemName || match.controlledGoodsId).filter((value) => Boolean(value)))];
99
139
  const matches = line.complianceMatches.map((match, index) => ({ ...match, sequence: index + 1, rowKey: `${match.controlledGoodsId ?? match.catalogType}-${index}` }));
100
140
  const matchColumns = [
101
141
  { type: 'text', key: 'sequence', header: '序号', width: 70, align: 'right', truncate: false },
@@ -104,9 +144,9 @@ export function SalesProductRiskDialog({ line, onClose }) {
104
144
  { type: 'text', key: 'matchMethod', header: '匹配方式', width: 150, truncate: false, format: value => matchMethodLabel(value) },
105
145
  { type: 'text', key: 'similarityScore', header: '相似度', width: 100, align: 'right', truncate: false, format: value => similarityLabel(value) }
106
146
  ];
107
- return _jsx(Modal, { open: true, title: "\u5546\u54C1\u98CE\u9669\u8BE6\u60C5", size: "wide", onClose: onClose, footer: _jsxs("button", { type: "button", className: "tcw-button tcw-button--primary", onClick: onClose, children: [_jsx("i", { className: "ri-check-line", "aria-hidden": "true" }), "\u6807\u8BB0\u5DF2\u9605"] }), children: _jsxs("div", { className: "tcw-sales-risk-dialog", children: [_jsxs("section", { "aria-labelledby": "sales-product-summary-title", children: [_jsx("h3", { id: "sales-product-summary-title", children: "\u5546\u54C1\u4E0E\u4EF7\u683C" }), _jsxs("dl", { className: "tcw-preflight-summary", children: [_jsxs("div", { children: [_jsx("dt", { children: "\u5546\u54C1\u540D\u79F0" }), _jsx("dd", { children: line.productName })] }), _jsxs("div", { children: [_jsx("dt", { children: "\u82F1\u6587\u540D\u79F0" }), _jsx("dd", { children: line.englishName || '暂无' })] }), _jsxs("div", { children: [_jsx("dt", { children: "\u6D77\u5173\u7F16\u7801" }), _jsx("dd", { children: line.hsCode || '暂无' })] }), _jsxs("div", { children: [_jsx("dt", { children: "\u6570\u91CF" }), _jsxs("dd", { children: [line.quantity, line.unit ? ` ${line.unit}` : ''] })] }), _jsxs("div", { children: [_jsx("dt", { children: "\u9500\u552E\u5355\u4EF7" }), _jsxs("dd", { children: [money(line.salesUnitPriceCny), " CNY"] })] }), _jsxs("div", { children: [_jsx("dt", { children: "\u9500\u552E\u91D1\u989D" }), _jsxs("dd", { children: [money(line.salesLineAmountCny), " CNY"] })] }), _jsxs("div", { children: [_jsx("dt", { children: "\u5546\u54C1\u63CF\u8FF0" }), _jsx("dd", { children: line.productDescription || '暂无' })] }), _jsxs("div", { children: [_jsx("dt", { children: "\u89C4\u683C\u578B\u53F7" }), _jsx("dd", { children: line.modelSpecification || '暂无' })] })] })] }), _jsxs("section", { "aria-labelledby": "sales-product-risk-title", children: [_jsx("h3", { id: "sales-product-risk-title", children: "\u98CE\u9669\u8BF4\u660E" }), _jsxs("dl", { className: "tcw-preflight-summary", children: [_jsxs("div", { children: [_jsx("dt", { children: "\u98CE\u9669\u7C7B\u578B" }), _jsx("dd", { children: riskTypes.length ? riskTypes.map(complianceCategoryLabel).join('、') : '无' })] }), _jsxs("div", { children: [_jsx("dt", { children: "\u547D\u4E2D\u7ED3\u679C" }), _jsx("dd", { children: line.complianceMatches.length ? `命中 ${line.complianceMatches.length} 项` : '无命中' })] }), _jsxs("div", { children: [_jsx("dt", { children: "\u98CE\u9669\u8BF4\u660E" }), _jsx("dd", { children: riskDescriptions.length ? riskDescriptions.join(';') : '暂无' })] }), _jsxs("div", { children: [_jsx("dt", { children: "\u5904\u7406\u5EFA\u8BAE" }), _jsx("dd", { children: recommendations.length ? recommendations.join(';') : '暂无' })] })] })] }), _jsxs("section", { "aria-labelledby": "sales-product-match-title", children: [_jsx("h3", { id: "sales-product-match-title", children: "\u7BA1\u63A7/\u5236\u88C1\u5339\u914D\u660E\u7EC6" }), matches.length ? _jsx(DataGrid, { columns: matchColumns, rows: matches, rowKey: "rowKey" }) : _jsx("p", { children: "\u6682\u65E0" })] })] }) });
147
+ return _jsx(Modal, { open: true, title: "\u5546\u54C1\u98CE\u9669\u8BE6\u60C5", size: "wide", onClose: onClose, footer: _jsxs("button", { type: "button", className: "tcw-button tcw-button--primary", onClick: onClose, children: [_jsx("i", { className: "ri-check-line", "aria-hidden": "true" }), "\u6807\u8BB0\u5DF2\u9605"] }), children: _jsxs("div", { className: "tcw-sales-risk-dialog", children: [_jsxs("section", { "aria-labelledby": "sales-product-summary-title", children: [_jsx("h3", { id: "sales-product-summary-title", children: "\u5546\u54C1\u4E0E\u4EF7\u683C" }), _jsxs("dl", { className: "tcw-preflight-summary", children: [_jsxs("div", { children: [_jsx("dt", { children: "\u5546\u54C1\u540D\u79F0" }), _jsx("dd", { children: line.productName })] }), _jsxs("div", { children: [_jsx("dt", { children: "\u82F1\u6587\u540D\u79F0" }), _jsx("dd", { children: line.englishName || '暂无' })] }), _jsxs("div", { children: [_jsx("dt", { children: "HS\u7F16\u7801" }), _jsx("dd", { children: line.hsCode || '暂无' })] }), _jsxs("div", { children: [_jsx("dt", { children: "\u7F16\u7801\u786E\u8BA4\u72B6\u6001" }), _jsx("dd", { children: hsCodeStatusLabel(line.hsCodeStatus) })] }), _jsxs("div", { children: [_jsx("dt", { children: "\u6570\u91CF" }), _jsxs("dd", { children: [line.quantity, line.unit ? ` ${line.unit}` : ''] })] }), _jsxs("div", { children: [_jsx("dt", { children: "\u9500\u552E\u5355\u4EF7" }), _jsxs("dd", { children: [money(line.salesUnitPriceCny), " CNY"] })] }), _jsxs("div", { children: [_jsx("dt", { children: "\u9500\u552E\u91D1\u989D" }), _jsxs("dd", { children: [money(line.salesLineAmountCny), " CNY"] })] }), _jsxs("div", { children: [_jsx("dt", { children: "\u5546\u54C1\u63CF\u8FF0" }), _jsx("dd", { children: line.productDescription || '暂无' })] }), _jsxs("div", { children: [_jsx("dt", { children: "\u89C4\u683C\u578B\u53F7" }), _jsx("dd", { children: line.modelSpecification || '暂无' })] })] })] }), _jsxs("section", { "aria-labelledby": "sales-product-risk-title", children: [_jsx("h3", { id: "sales-product-risk-title", children: "\u98CE\u9669\u8BF4\u660E" }), _jsxs("dl", { className: "tcw-preflight-summary", children: [_jsxs("div", { children: [_jsx("dt", { children: "\u98CE\u9669\u7C7B\u578B" }), _jsx("dd", { children: riskTypes.length ? riskTypes.map(complianceCategoryLabel).join('、') : '无' })] }), _jsxs("div", { children: [_jsx("dt", { children: "\u547D\u4E2D\u5408\u89C4\u5206\u7C7B" }), _jsx("dd", { children: riskTypes.length ? riskTypes.map(complianceCategoryLabel).join('、') : '无' })] }), _jsxs("div", { className: "tcw-sales-risk-result", children: [_jsx("dt", { children: "\u7BA1\u63A7\u98CE\u9669\u7ED3\u679C" }), _jsx("dd", { children: line.complianceMatches.length ? `命中 ${line.complianceMatches.length} 项` : '无命中' })] }), _jsxs("div", { className: "tcw-sales-match-result", children: [_jsx("dt", { children: "\u5339\u914D\u7ED3\u679C" }), _jsx("dd", { children: matchedItems.length ? matchedItems.join('、') : '无匹配' })] }), _jsxs("div", { children: [_jsx("dt", { children: "\u547D\u4E2D\u7ED3\u679C" }), _jsx("dd", { children: line.complianceMatches.length ? `命中 ${line.complianceMatches.length} 项` : '无命中' })] }), _jsxs("div", { children: [_jsx("dt", { children: "\u98CE\u9669\u8BF4\u660E" }), _jsx("dd", { children: riskDescriptions.length ? riskDescriptions.join(';') : '暂无' })] }), _jsxs("div", { children: [_jsx("dt", { children: "\u5904\u7406\u5EFA\u8BAE" }), _jsx("dd", { children: recommendations.length ? recommendations.join(';') : '暂无' })] })] })] }), _jsxs("section", { "aria-labelledby": "sales-product-match-title", children: [_jsx("h3", { id: "sales-product-match-title", children: "\u7BA1\u63A7/\u5236\u88C1\u5339\u914D\u660E\u7EC6" }), matches.length ? _jsx(DataGrid, { columns: matchColumns, rows: matches, rowKey: "rowKey" }) : _jsx("p", { children: "\u6682\u65E0" })] })] }) });
108
148
  }
109
- function PageHeading({ title, description, action }) { return _jsxs("header", { className: "tcw-sales-heading", children: [_jsxs("div", { children: [_jsx("h2", { className: "tcw-list-heading", children: title }), _jsx("p", { children: description })] }), action] }); }
149
+ function PageHeading({ title, description, action, className = '' }) { return _jsxs("header", { className: `tcw-sales-heading ${className}`.trim(), children: [_jsxs("div", { children: [_jsx("h2", { className: "tcw-list-heading", children: title }), _jsx("p", { children: description })] }), action] }); }
110
150
  export function CustomerMaintenanceDialog({ state, busy, onClose, onSave }) {
111
151
  const customer = state.customer;
112
152
  const [rate, setRate] = React.useState(customer.defaultPricingProfitRate ?? '');
@@ -116,14 +156,29 @@ export function CustomerMaintenanceDialog({ state, busy, onClose, onSave }) {
116
156
  ['客户地址', customer.address], ['税号', customer.taxNumber], ['收款账号', customer.paymentAccount], ['开户行', customer.bankName],
117
157
  ['纳税等级', customer.taxpayerRating], ['网站', customer.website], ['经营产品', customer.businessProducts]
118
158
  ];
119
- return _jsx(Modal, { open: true, title: "\u7EF4\u62A4\u5BA2\u6237\u9ED8\u8BA4\u5229\u6DA6\u7387", size: "wide", onClose: onClose, footer: _jsxs(_Fragment, { children: [_jsxs("button", { type: "button", className: "tcw-button tcw-button--secondary", onClick: onClose, children: [_jsx("i", { className: "ri-close-line", "aria-hidden": "true" }), "\u53D6\u6D88"] }), _jsxs("button", { type: "button", className: "tcw-button tcw-button--primary", disabled: busy || !validRate(rate), onClick: () => void onSave(rate), children: [_jsx("i", { className: "ri-save-line", "aria-hidden": "true" }), "\u4FDD\u5B58"] })] }), children: _jsxs("div", { className: "tcw-sales-customer-dialog", children: [_jsx("section", { children: _jsxs(FieldGrid, { columns: 2, children: [readonlyFields.map(([label, value]) => _jsx(FormField, { label: label, children: _jsx("input", { disabled: true, value: displayText(value) }) }, label)), _jsxs(FormField, { label: "\u9ED8\u8BA4\u5B9A\u4EF7\u5229\u6DA6\u7387", required: true, full: true, children: [_jsx("input", { type: "number", min: "0", step: "0.0001", value: rate, onChange: event => setRate(event.target.value) }), _jsx("small", { children: "\u8BF7\u8F93\u5165\u5C0F\u6570\uFF0C\u4F8B\u5982 0.08 \u8868\u793A 8%\u3002" })] })] }) }), _jsxs("aside", { children: [_jsxs("dl", { children: [_jsx(SummaryValue, { label: "\u5236\u88C1\u98CE\u9669", value: _jsx(Status, { value: customer.sanctionStatus }) }), _jsx(SummaryValue, { label: "\u6700\u8FD1\u68C0\u67E5\u65F6\u95F4", value: dateTimeText(customer.complianceCheckedAt) }), _jsx(SummaryValue, { label: "\u521B\u5EFA\u4EBA", value: displayText(customer.createdByName ?? customer.createdById) }), _jsx(SummaryValue, { label: "\u521B\u5EFA\u65F6\u95F4", value: dateTimeText(customer.createdAt) }), _jsx(SummaryValue, { label: "\u6700\u540E\u7F16\u8F91\u4EBA", value: displayText(customer.updatedByName ?? customer.updatedById) }), _jsx(SummaryValue, { label: "\u6700\u540E\u7F16\u8F91\u65F6\u95F4", value: dateTimeText(customer.updatedAt) })] }), _jsx(FormField, { label: "\u5907\u6CE8", children: _jsx("textarea", { disabled: true, rows: 6, value: displayText(customer.remarks) }) })] }), _jsx(InfoNotice, { children: "\u5BA2\u6237\u4E3B\u6863\u4FE1\u606F\u6765\u81EA\u9500\u552E\u5BA2\u6237\u8BB0\u5F55\uFF0C\u4EC5\u9ED8\u8BA4\u5B9A\u4EF7\u5229\u6DA6\u7387\u53EF\u5728\u6B64\u7EF4\u62A4\uFF1B\u5236\u88C1\u98CE\u9669\u53EA\u63D0\u793A\uFF0C\u4E0D\u963B\u6B62\u9500\u552E\u4E1A\u52A1\u7EE7\u7EED\u3002" })] }) });
159
+ return _jsx(Modal, { open: true, title: "\u7EF4\u62A4\u5BA2\u6237\u4FE1\u606F", size: "wide", onClose: onClose, footer: _jsxs(_Fragment, { children: [_jsxs("button", { type: "button", className: "tcw-button tcw-button--secondary", onClick: onClose, children: [_jsx("i", { className: "ri-close-line", "aria-hidden": "true" }), "\u53D6\u6D88"] }), _jsxs("button", { type: "button", className: "tcw-button tcw-button--primary", disabled: busy || !validRate(rate), onClick: () => void onSave(rate), children: [_jsx("i", { className: "ri-save-line", "aria-hidden": "true" }), "\u4FDD\u5B58"] })] }), children: _jsxs("div", { className: "tcw-sales-customer-dialog", children: [_jsx("section", { children: _jsxs(FieldGrid, { columns: 2, children: [readonlyFields.map(([label, value]) => _jsx(FormField, { label: label, children: _jsx("input", { disabled: true, value: displayText(value) }) }, label)), _jsxs(FormField, { label: "\u9ED8\u8BA4\u5B9A\u4EF7\u5229\u6DA6\u7387", required: true, full: true, children: [_jsx("input", { type: "number", min: "0", step: "0.0001", value: rate, onChange: event => setRate(event.target.value) }), _jsx("small", { children: "\u8BF7\u8F93\u5165\u5C0F\u6570\uFF0C\u4F8B\u5982 0.08 \u8868\u793A 8%\u3002" })] })] }) }), _jsxs("aside", { children: [_jsxs("dl", { children: [_jsx(SummaryValue, { label: "\u5236\u88C1\u98CE\u9669", value: _jsx(Status, { value: customer.sanctionStatus }) }), _jsx(SummaryValue, { label: "\u6700\u8FD1\u68C0\u67E5\u65F6\u95F4", value: dateTimeText(customer.complianceCheckedAt) }), _jsx(SummaryValue, { label: "\u521B\u5EFA\u4EBA", value: displayText(customer.createdByName ?? customer.createdById) }), _jsx(SummaryValue, { label: "\u521B\u5EFA\u65F6\u95F4", value: dateTimeText(customer.createdAt) }), _jsx(SummaryValue, { label: "\u6700\u540E\u7F16\u8F91\u4EBA", value: displayText(customer.updatedByName ?? customer.updatedById) }), _jsx(SummaryValue, { label: "\u6700\u540E\u7F16\u8F91\u65F6\u95F4", value: dateTimeText(customer.updatedAt) })] }), _jsx(FormField, { label: "\u5907\u6CE8", children: _jsx("textarea", { disabled: true, rows: 6, value: displayText(customer.remarks) }) })] }), _jsx(InfoNotice, { children: "\u5BA2\u6237\u4E3B\u6863\u4FE1\u606F\u6765\u81EA\u9500\u552E\u5BA2\u6237\u8BB0\u5F55\uFF0C\u4EC5\u9ED8\u8BA4\u5B9A\u4EF7\u5229\u6DA6\u7387\u53EF\u5728\u6B64\u7EF4\u62A4\uFF1B\u5236\u88C1\u98CE\u9669\u53EA\u63D0\u793A\uFF0C\u4E0D\u963B\u6B62\u9500\u552E\u4E1A\u52A1\u7EE7\u7EED\u3002" })] }) });
120
160
  }
121
161
  export function SalesOrderMaintenanceDialog({ state, busy, onClose, onSave }) {
122
162
  const receipt = state.field === 'receivedAmountCny';
123
163
  const order = state.order;
124
164
  const [value, setValue] = React.useState(receipt ? order.receivedAmountCny : order.pricingProfitRateSource === 'ORDER_OVERRIDE' ? order.effectivePricingProfitRate : '');
165
+ const [remarks, setRemarks] = React.useState(order.remarks ?? '');
125
166
  const invalid = receipt ? !validAmount(value) || Number(value) > Number(order.orderAmountCny) : value !== '' && !validRate(value);
126
- return _jsx(Modal, { open: true, title: receipt ? '维护已收款' : '维护订单利润率', size: "wide", onClose: onClose, footer: _jsxs(_Fragment, { children: [_jsxs("button", { type: "button", className: "tcw-button tcw-button--secondary", onClick: onClose, children: [_jsx("i", { className: "ri-close-line", "aria-hidden": "true" }), "\u53D6\u6D88"] }), _jsxs("button", { type: "button", className: "tcw-button tcw-button--primary", disabled: busy || invalid, onClick: () => void onSave(value), children: [_jsx("i", { className: "ri-save-line", "aria-hidden": "true" }), "\u4FDD\u5B58"] })] }), children: _jsxs("div", { className: "tcw-sales-order-dialog", children: [_jsx("section", { children: _jsxs(FieldGrid, { columns: 1, children: [_jsx(FormField, { label: "\u9500\u552E\u8BA2\u5355\u7F16\u53F7", children: _jsx("input", { disabled: true, value: order.salesOrderNo }) }), _jsx(FormField, { label: "\u5BA2\u6237\u5408\u540C\u7F16\u53F7", children: _jsx("input", { disabled: true, value: order.customerContractNo }) }), _jsx(FormField, { label: "\u91C7\u8D2D\u5408\u540C\u7F16\u53F7", children: _jsx("input", { disabled: true, value: order.purchaseContractNo }) }), _jsx(FormField, { label: "\u8BA2\u5355\u65E5\u671F", children: _jsx("input", { disabled: true, value: displayText(order.orderDate) }) }), _jsx(FormField, { label: "\u5E01\u79CD", children: _jsx("input", { disabled: true, value: order.currencyCode }) }), _jsx(FormField, { label: "\u8BA2\u5355\u5B9A\u4EF7\u5229\u6DA6\u7387\u8986\u76D6\u503C", hint: receipt ? undefined : '留空继承客户默认定价利润率', children: _jsx("input", { type: "number", min: "0", step: "0.0001", disabled: receipt, value: receipt ? (order.pricingProfitRateSource === 'ORDER_OVERRIDE' ? order.effectivePricingProfitRate : '') : value, onChange: event => setValue(event.target.value) }) }), _jsx(FormField, { label: "\u5DF2\u6536\u6B3E\u91D1\u989D\uFF08\u4EBA\u6C11\u5E01\uFF09", children: _jsx("input", { type: "number", min: "0", max: order.orderAmountCny, step: "0.01", disabled: !receipt, value: receipt ? value : order.receivedAmountCny, onChange: event => setValue(event.target.value) }) })] }) }), _jsxs("aside", { children: [_jsxs("dl", { children: [_jsx(SummaryValue, { label: "\u9500\u552E\u8BA2\u5355\u603B\u989D\uFF08\u4EBA\u6C11\u5E01\uFF09", value: money(order.orderAmountCny) }), _jsx(SummaryValue, { label: "\u5DF2\u6536\u6B3E\u91D1\u989D\uFF08\u4EBA\u6C11\u5E01\uFF09", value: money(receipt ? value : order.receivedAmountCny) }), _jsx(SummaryValue, { label: "\u672A\u6536\u6B3E\uFF08\u4EBA\u6C11\u5E01\uFF09", value: money(receipt ? Math.max(Number(order.orderAmountCny) - Number(value || 0), 0) : order.unreceivedAmountCny) }), _jsx(SummaryValue, { label: "\u56DE\u6B3E\u72B6\u6001", value: paymentLabel(order.paymentStatus) }), _jsx(SummaryValue, { label: "\u6240\u5C5E\u5BA2\u6237", value: order.customerName }), _jsx(SummaryValue, { label: "\u6709\u6548\u5B9A\u4EF7\u5229\u6DA6\u7387", value: percent(receipt ? order.effectivePricingProfitRate : value || order.effectivePricingProfitRate) }), _jsx(SummaryValue, { label: "\u6570\u636E\u6765\u6E90", value: `${sourceLabel(order.pricingProfitRateSource)} + 人工维护` })] }), _jsx(InfoNotice, { children: "\u5DF2\u6536\u6B3E\u91D1\u989D\u4E0D\u5F97\u5927\u4E8E\u9500\u552E\u8BA2\u5355\u603B\u989D\uFF1B\u4FEE\u6539\u4FDD\u5B58\u540E\u5373\u65F6\u5F71\u54CD\u8BA2\u5355\u8BA1\u7B97\u4E0E\u62A5\u8868\u5C55\u793A\u3002" })] }), receipt && Number(value) > Number(order.orderAmountCny) && _jsx(RiskNotice, { children: "\u5DF2\u6536\u6B3E\u4E0D\u5F97\u8D85\u8FC7\u5B9E\u65F6\u8BA2\u5355\u603B\u989D\u3002" })] }) });
167
+ return _jsx(Modal, { open: true, title: "\u7EF4\u62A4\u9500\u552E\u8BA2\u5355\u6570\u636E", size: "wide", onClose: onClose, footer: _jsxs(_Fragment, { children: [_jsxs("button", { type: "button", className: "tcw-button tcw-button--secondary", onClick: onClose, children: [_jsx("i", { className: "ri-close-line", "aria-hidden": "true" }), "\u53D6\u6D88"] }), _jsxs("button", { type: "button", className: "tcw-button tcw-button--primary", disabled: busy || invalid, onClick: () => void onSave(value, { remarks }), children: [_jsx("i", { className: "ri-save-line", "aria-hidden": "true" }), "\u4FDD\u5B58"] })] }), children: _jsxs("div", { className: "tcw-sales-order-dialog", children: [_jsx("section", { children: _jsxs(FieldGrid, { columns: 1, children: [_jsx(FormField, { label: "\u9500\u552E\u8BA2\u5355\u7F16\u53F7", children: _jsx("input", { disabled: true, value: order.salesOrderNo }) }), _jsx(FormField, { label: "\u5BA2\u6237\u5408\u540C\u7F16\u53F7", children: _jsx("input", { disabled: true, value: order.customerContractNo }) }), _jsx(FormField, { label: "\u91C7\u8D2D\u5408\u540C\u7F16\u53F7", children: _jsx("input", { disabled: true, value: order.purchaseContractNo }) }), _jsx(FormField, { label: "\u8BA2\u5355\u65E5\u671F", children: _jsx("input", { disabled: true, value: displayText(order.orderDate) }) }), _jsx(FormField, { label: "\u5E01\u79CD", children: _jsx("input", { disabled: true, value: order.currencyCode }) }), _jsx(FormField, { label: "\u8BA2\u5355\u5B9A\u4EF7\u5229\u6DA6\u7387\u8986\u76D6\u503C", hint: receipt ? undefined : '留空继承客户默认定价利润率', children: _jsx("input", { type: "number", min: "0", step: "0.0001", disabled: receipt, value: receipt ? (order.pricingProfitRateSource === 'ORDER_OVERRIDE' ? order.effectivePricingProfitRate : '') : value, onChange: event => setValue(event.target.value) }) }), _jsx(FormField, { label: "\u6709\u6548\u5B9A\u4EF7\u5229\u6DA6\u7387(\u81EA\u52A8\u8BA1\u7B97)", children: _jsx("input", { disabled: true, value: percent(receipt ? order.effectivePricingProfitRate : value || order.effectivePricingProfitRate) }) }), _jsx(FormField, { label: "\u5DF2\u6536\u6B3E\u91D1\u989D(\u4EBA\u6C11\u5E01)", children: _jsx("input", { type: "number", min: "0", max: order.orderAmountCny, step: "0.01", disabled: !receipt, value: receipt ? value : order.receivedAmountCny, onChange: event => setValue(event.target.value) }) }), _jsx(FormField, { label: "\u5907\u6CE8", children: _jsx("textarea", { rows: 3, maxLength: 200, value: remarks, onChange: event => setRemarks(event.target.value) }) })] }) }), _jsxs("aside", { children: [_jsxs("dl", { children: [_jsx(SummaryValue, { label: "\u9500\u552E\u8BA2\u5355\u603B\u989D\uFF08\u4EBA\u6C11\u5E01\uFF09", value: money(order.orderAmountCny) }), _jsx(SummaryValue, { label: "\u5DF2\u6536\u6B3E\u91D1\u989D(\u4EBA\u6C11\u5E01)", value: money(receipt ? value : order.receivedAmountCny) }), _jsx(SummaryValue, { label: "\u672A\u6536\u6B3E\uFF08\u4EBA\u6C11\u5E01\uFF09", value: money(receipt ? Math.max(Number(order.orderAmountCny) - Number(value || 0), 0) : order.unreceivedAmountCny) }), _jsx(SummaryValue, { label: "\u56DE\u6B3E\u72B6\u6001", value: paymentLabel(order.paymentStatus) }), _jsx(SummaryValue, { label: "\u6240\u5C5E\u5BA2\u6237", value: order.customerName }), _jsx(SummaryValue, { label: "\u6709\u6548\u5B9A\u4EF7\u5229\u6DA6\u7387", value: percent(receipt ? order.effectivePricingProfitRate : value || order.effectivePricingProfitRate) }), _jsx(SummaryValue, { label: "\u6570\u636E\u6765\u6E90", value: `${sourceLabel(order.pricingProfitRateSource)} + 人工维护` })] }), _jsx(InfoNotice, { children: "\u5DF2\u6536\u6B3E\u91D1\u989D\u4E0D\u5F97\u5927\u4E8E\u9500\u552E\u8BA2\u5355\u603B\u989D\uFF1B\u4FEE\u6539\u4FDD\u5B58\u540E\u5373\u65F6\u5F71\u54CD\u8BA2\u5355\u8BA1\u7B97\u4E0E\u62A5\u8868\u5C55\u793A\u3002" })] }), receipt && Number(value) > Number(order.orderAmountCny) && _jsx(RiskNotice, { children: "\u5DF2\u6536\u6B3E\u4E0D\u5F97\u8D85\u8FC7\u5B9E\u65F6\u8BA2\u5355\u603B\u989D\u3002" })] }) });
168
+ }
169
+ export function SalesGenerateFileDialog({ order, busy, initialFileType = 'PI_CI_PL', onClose, onConfirm }) {
170
+ const [draft, setDraft] = React.useState({ fileType: initialFileType, bankType: 'OVERSEAS_CNY', templateVersion: 'DEFAULT_V1_2', fileNumber: `SF-${order.salesOrderNo}`, remarks: '' });
171
+ const update = (key, value) => setDraft(current => ({ ...current, [key]: value }));
172
+ const previewTypes = salesGenerationPreviewTypes(draft.fileType);
173
+ return _jsx(Modal, { open: true, title: "\u751F\u6210\u9500\u552E\u6587\u4EF6", size: "wide", onClose: onClose, footer: _jsxs(_Fragment, { children: [_jsxs("button", { type: "button", className: "tcw-button tcw-button--secondary", onClick: onClose, children: [_jsx("i", { className: "ri-close-line", "aria-hidden": "true" }), "\u53D6\u6D88"] }), _jsxs("button", { type: "button", className: "tcw-button tcw-button--primary", disabled: busy || !draft.fileNumber.trim(), onClick: () => void onConfirm(draft), children: [_jsx("i", { className: "ri-file-add-line", "aria-hidden": "true" }), "\u786E\u8BA4\u751F\u6210"] })] }), children: _jsxs("div", { className: "tcw-sales-generate-dialog", children: [_jsxs("dl", { className: "tcw-sales-generate-summary", children: [_jsx(SummaryValue, { label: "\u5BA2\u6237\u540D\u79F0", value: order.customerName }), _jsx(SummaryValue, { label: "\u9500\u552E\u8BA2\u5355\u7F16\u53F7", value: order.salesOrderNo }), _jsx(SummaryValue, { label: "\u5BA2\u6237\u5408\u540C\u7F16\u53F7", value: order.customerContractNo }), _jsx(SummaryValue, { label: "\u9500\u552E\u8BA2\u5355\u603B\u989D\uFF08\u4EBA\u6C11\u5E01\uFF09", value: money(order.orderAmountCny) }), _jsx(SummaryValue, { label: "\u6709\u6548\u5B9A\u4EF7\u5229\u6DA6\u7387", value: percent(order.effectivePricingProfitRate) })] }), _jsxs("div", { className: "tcw-sales-generate-content", children: [_jsxs("section", { children: [_jsx(FormField, { label: "\u6587\u4EF6\u7C7B\u578B", required: true, children: _jsxs("select", { value: draft.fileType, onChange: event => update('fileType', event.target.value), children: [_jsx("option", { value: "PI_CI_PL", children: "PI/CI/PL" }), _jsx("option", { value: "PI", children: "PI" }), _jsx("option", { value: "CI", children: "CI" }), _jsx("option", { value: "PL", children: "PL" })] }) }), _jsx(FormField, { label: "\u94F6\u884C\u4FE1\u606F", required: true, children: _jsxs("select", { value: draft.bankType, onChange: event => update('bankType', event.target.value), children: [_jsx("option", { value: "OVERSEAS_CNY", children: "\u5883\u5916\u4EBA\u6C11\u5E01\u8D26\u6237" }), _jsx("option", { value: "OVERSEAS_USD", children: "\u5883\u5916\u7F8E\u5143\u8D26\u6237" })] }) }), _jsx(FormField, { label: "\u6A21\u677F\u7248\u672C", required: true, children: _jsx("select", { value: draft.templateVersion, onChange: event => update('templateVersion', event.target.value), children: _jsx("option", { value: "DEFAULT_V1_2", children: "\u9ED8\u8BA4\u6A21\u677F v1.2" }) }) }), _jsx(FormField, { label: "\u6587\u4EF6\u7F16\u53F7", required: true, children: _jsx("input", { value: draft.fileNumber, onChange: event => update('fileNumber', event.target.value) }) }), _jsx(FormField, { label: "\u5907\u6CE8", children: _jsx("textarea", { rows: 3, maxLength: 200, placeholder: "\u8BF7\u8F93\u5165\u5907\u6CE8\uFF08\u53EF\u9009\uFF0C\u81EA\u5B9A\u4E49\u8BF4\u660E\uFF09", value: draft.remarks, onChange: event => update('remarks', event.target.value) }) })] }), _jsxs("aside", { children: [_jsx("h3", { children: "\u751F\u6210\u9884\u89C8" }), _jsx("p", { children: "\u7CFB\u7EDF\u5C06\u57FA\u4E8E\u6240\u9009\u4FE1\u606F\u751F\u6210\u4EE5\u4E0B\u6587\u4EF6\uFF1A" }), _jsx("ul", { children: previewTypes.map(item => _jsxs("li", { children: [_jsx("i", { className: "ri-file-text-line", "aria-hidden": "true" }), item.label] }, item.type)) })] })] }), _jsx(RiskNotice, { children: "\u7CFB\u7EDF\u5C06\u81EA\u52A8\u5E26\u51FA\u5BA2\u6237\u4FE1\u606F\u3001\u8BA2\u5355\u5546\u54C1\u3001\u6709\u6548\u5B9A\u4EF7\u5229\u6DA6\u7387\u4E0E\u56DE\u6B3E\u4FE1\u606F\uFF0C\u751F\u6210\u540E\u8BF7\u5230\u9500\u552E\u6587\u4EF6\u7BA1\u7406\u67E5\u770B\u548C\u4E0B\u8F7D\u3002" })] }) });
174
+ }
175
+ export function salesGenerationPreviewTypes(fileType) {
176
+ const all = [
177
+ { type: 'PI', label: 'Proforma Invoice(形式发票)' },
178
+ { type: 'CI', label: 'Commercial Invoice(商业发票)' },
179
+ { type: 'PL', label: 'Packing List(装箱单)' }
180
+ ];
181
+ return fileType === 'PI_CI_PL' ? all : all.filter(item => item.type === fileType);
127
182
  }
128
183
  function SummaryValue({ label, value }) { return _jsxs("div", { children: [_jsx("dt", { children: label }), _jsx("dd", { children: value })] }); }
129
184
  function displayText(value) { return value == null || value === '' ? '—' : String(value); }
@@ -143,4 +198,17 @@ function similarityLabel(value) { const number = Number(value); return value !=
143
198
  function matchValues(matches, field) { return [...new Set(matches.map(match => match[field]?.trim()).filter((value) => Boolean(value)))]; }
144
199
  function validRate(value) { return value.trim() !== '' && Number.isFinite(Number(value)) && Number(value) >= 0; }
145
200
  function validAmount(value) { return value.trim() !== '' && Number.isFinite(Number(value)) && Number(value) >= 0; }
201
+ function isFailedActionResult(value) { return Boolean(value && typeof value === 'object' && 'success' in value && value.success === false); }
202
+ function actionFailureMessage(value, fallback) { return value.message || value.error?.message || fallback; }
203
+ function isRecord(value) { return Boolean(value && typeof value === 'object' && !Array.isArray(value)); }
204
+ function actionResultData(value) { return isRecord(value) && 'data' in value ? value.data : value; }
205
+ function recordArray(value, key) { return isRecord(value) && Array.isArray(value[key]) ? value[key].filter(isRecord) : []; }
206
+ function collectTranslationFailures(value) {
207
+ if (!isRecord(value))
208
+ return [];
209
+ const files = recordArray(value, 'files');
210
+ const sources = files.length ? files : [value];
211
+ return sources.flatMap(source => recordArray(source, 'translationFailures')).filter(isTranslationFailure);
212
+ }
213
+ function isTranslationFailure(value) { return value.code === 'TRANSLATION_FAILED' && typeof value.field === 'string' && typeof value.sourceValue === 'string' && typeof value.message === 'string'; }
146
214
  //# sourceMappingURL=sales.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sales.js","sourceRoot":"","sources":["../../../../src/lib/remote-ui/pages/sales.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sales.js","sourceRoot":"","sources":["../../../../src/lib/remote-ui/pages/sales.tsx"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { BankSettings, CompanySettings, MonthlyRateSettings, ProfitRuleSettings, SettingsData, SettingsDeleteRateRequest, SettingsHistoryOperationType, SettingsHistoryTransition, SettingsHistoryType, SettingsRestoreRequest, SettingsSaveRequest } from '../settings-contracts.js';
1
+ import type { BankSettings, CompanySettings, MonthlyRateCollection, MonthlyRateSettings, ProfitRuleSettings, SettingsData, SettingsDeleteRateRequest, SettingsHistoryOperationType, SettingsHistoryTransition, SettingsHistoryType, SettingsRestoreRequest, SettingsSaveRequest } from '../settings-contracts.js';
2
2
  import type { Notify } from '../toast-queue.js';
3
3
  import type { PaginationPageSize } from '../contracts.js';
4
4
  import './settings.css';
@@ -45,6 +45,19 @@ export declare function createMonthlyRateQueryScheduler(query: (request: {
45
45
  page: (page: number, pageSize: PaginationPageSize) => void | Promise<void>;
46
46
  pageSize: (pageSize: PaginationPageSize) => void | Promise<void>;
47
47
  };
48
+ export declare function buildMonthlyRatePresentation(rates: MonthlyRateCollection, editing: MonthlyRateSettings | null): {
49
+ variant: "current";
50
+ showProfitSnapshot: boolean;
51
+ showFilters: boolean;
52
+ showNotice: boolean;
53
+ items: MonthlyRateSettings[];
54
+ } | {
55
+ variant: "rate-create";
56
+ showProfitSnapshot: boolean;
57
+ showFilters: boolean;
58
+ showNotice: boolean;
59
+ items: MonthlyRateSettings[];
60
+ };
48
61
  export declare function RateDialog({ value, busy, onClose, onSave }: {
49
62
  value: MonthlyRateSettings;
50
63
  busy: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../../../src/lib/remote-ui/pages/settings.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../../../src/lib/remote-ui/pages/settings.tsx"],"names":[],"mappings":"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"}
@@ -143,11 +143,36 @@ export function createMonthlyRateQueryScheduler(query) {
143
143
  pageSize: (pageSize) => query({ page: 1, pageSize })
144
144
  };
145
145
  }
146
+ export function buildMonthlyRatePresentation(rates, editing) {
147
+ if (!editing || editing.id)
148
+ return { variant: 'current', showProfitSnapshot: true, showFilters: true, showNotice: true, items: rates.items };
149
+ const year = editing.year;
150
+ const items = [6, 5, 4, 3, 2, 1].map(month => {
151
+ const existing = rates.items.find(rate => rate.year === year && rate.month === month);
152
+ const fallback = rates.items.find(rate => rate.year === year) ?? rates.items[0];
153
+ return existing ?? {
154
+ ...(fallback ?? { currencyCode: 'USD', usdToCnyRate: '', sourceType: 'MANUAL', sourceReference: '外汇管理局首日汇率' }),
155
+ id: `rate-create-background-${year}-${month}`,
156
+ year,
157
+ month,
158
+ revision: 0
159
+ };
160
+ });
161
+ return { variant: 'rate-create', showProfitSnapshot: false, showFilters: false, showNotice: false, items };
162
+ }
146
163
  function MonthlyRateSection({ profit, rates, busy, onQuery, onSaveProfit, onRestoreProfit, onSave, onDelete }) {
147
164
  const [editing, setEditing] = React.useState(null);
148
165
  const [editingProfit, setEditingProfit] = React.useState(false);
149
166
  const [deleting, setDeleting] = React.useState(null);
167
+ const [yearFilter, setYearFilter] = React.useState(() => String(rates.items[0]?.year ?? ''));
168
+ const [monthFilter, setMonthFilter] = React.useState('');
150
169
  const scheduler = React.useMemo(() => createMonthlyRateQueryScheduler(onQuery), [onQuery]);
170
+ const years = [...new Set(rates.items.map(rate => rate.year))].sort((left, right) => right - left);
171
+ const presentation = buildMonthlyRatePresentation(rates, editing);
172
+ const filteredItems = presentation.variant === 'rate-create'
173
+ ? presentation.items
174
+ : presentation.items.filter(rate => (!yearFilter || String(rate.year) === yearFilter) && (!monthFilter || String(rate.month) === monthFilter));
175
+ const filteredRates = { ...rates, items: filteredItems, page: 1, total: filteredItems.length, pageCount: 1 };
151
176
  const completeDelete = async (confirmed) => {
152
177
  if (!deleting)
153
178
  return;
@@ -161,13 +186,13 @@ function MonthlyRateSection({ profit, rates, busy, onQuery, onSaveProfit, onRest
161
186
  const columns = [
162
187
  { type: 'text', key: 'year', header: '年份', width: 90, truncate: false },
163
188
  { type: 'text', key: 'month', header: '月份', width: 90, truncate: false, format: value => `${String(value).padStart(2, '0')}月` },
164
- { type: 'text', key: 'currencyCode', header: '币种代码', width: 100, truncate: false, format: value => String(value ?? 'USD') },
165
- { type: 'text', key: 'usdToCnyRate', header: '美元兑人民币汇率', width: 170, align: 'right', truncate: false },
166
- { type: 'text', key: 'sourceReference', header: '来源说明', width: 220, maxWidth: 220 },
189
+ { type: 'text', key: 'currencyCode', header: '币种代码', width: 115, truncate: false, format: value => String(value ?? 'USD') },
190
+ { type: 'text', key: 'usdToCnyRate', header: '美元兑人民币汇率', width: 180, align: 'right', truncate: false },
191
+ { type: 'text', key: 'sourceReference', header: '来源说明', width: 150, maxWidth: 150 },
167
192
  { type: 'text', key: 'revision', header: '修订号', width: 90, align: 'right', truncate: false, format: value => String(value ?? 0) },
168
- { type: 'text', key: 'updatedAt', header: '最后修改时间', width: 180, truncate: false, accessor: () => null }
193
+ { type: 'text', key: 'updatedAt', header: '最后修改时间', width: 200, truncate: false, accessor: row => formatBeijingDateTime(row.updatedAt) }
169
194
  ];
170
- return _jsxs("div", { className: "tcw-settings-rate-page", children: [_jsxs("section", { className: "tcw-settings-card tcw-settings-profit-snapshot", children: [_jsxs("header", { children: [_jsx("h2", { children: "\u6708\u5EA6\u5916\u6C47\u7BA1\u7406\u5C40\u9996\u65E5\u6C47\u7387 - \u89C4\u5219\u5FEB\u7167\uFF08\u5F53\u524D\u751F\u6548\uFF09" }), _jsxs("div", { children: [_jsxs("button", { type: "button", className: "tcw-button tcw-button--outline", disabled: busy, onClick: () => setEditingProfit(true), children: [_jsx("i", { className: "ri-edit-line", "aria-hidden": "true" }), "\u7F16\u8F91\u89C4\u5219"] }), _jsxs("button", { type: "button", className: "tcw-button tcw-button--secondary", disabled: busy, onClick: onRestoreProfit, children: [_jsx("i", { className: "ri-restart-line", "aria-hidden": "true" }), "\u6062\u590D\u89C4\u5219\u9ED8\u8BA4"] })] })] }), _jsxs("div", { children: [_jsx(Metric, { label: "\u6700\u4F4E\u6574\u5355\u5408\u89C4\u5229\u6DA6\u7387", value: `${Number(profit.minimumOrderProfitRate) * 100}%` }), _jsx(Metric, { label: "\u6362\u6C47\u6210\u672C\u4E0B\u9650", value: profit.exchangeCostMinimum }), _jsx(Metric, { label: "\u6362\u6C47\u6210\u672C\u4E0A\u9650", value: profit.exchangeCostMaximum }), _jsx(Metric, { label: "\u72B6\u6001", value: profit.status, status: true }), _jsx(Metric, { label: "\u4FEE\u8BA2\u53F7", value: String(profit.revision) })] })] }), _jsxs("section", { className: "tcw-settings-card tcw-settings-rate-card", children: [_jsxs("header", { children: [_jsx("h2", { children: "\u6708\u5EA6\u5916\u6C47\u7BA1\u7406\u5C40\u9996\u65E5\u6C47\u7387" }), _jsxs("button", { type: "button", className: "tcw-button tcw-button--primary", disabled: busy, onClick: () => setEditing(defaultRate()), children: [_jsx("i", { className: "ri-add-line", "aria-hidden": "true" }), "\u65B0\u589E\u6708\u5EA6\u6C47\u7387"] })] }), _jsx(DataGrid, { columns: columns, rows: rates.items, rowKey: row => row.id ?? `${row.year}-${row.month}`, actionWidth: 140, actions: row => _jsxs(_Fragment, { children: [_jsxs("button", { type: "button", onClick: () => setEditing(row), children: [_jsx("i", { className: "ri-edit-line", "aria-hidden": "true" }), "\u7F16\u8F91"] }), row.id && _jsxs("button", { type: "button", className: "is-danger", onClick: () => setDeleting(row), children: [_jsx("i", { className: "ri-delete-bin-line", "aria-hidden": "true" }), "\u5220\u9664"] })] }), pagination: rates, onPageChange: page => void scheduler.page(page, rates.pageSize), onPageSizeChange: pageSize => void scheduler.pageSize(pageSize), emptyText: "\u6682\u65E0\u6708\u5EA6\u6C47\u7387" }), _jsxs(InfoNotice, { children: [_jsx("b", { children: "\u8BF4\u660E" }), _jsx("br", {}), "\u3000\u00B7 \u6BCF\u4E2A\u7EC4\u7EC7 + \u81EA\u7136\u6708 + \u5E01\u79CD\uFF0C\u53EA\u5141\u8BB8\u5B58\u5728\u4E00\u6761\u6709\u6548\u8BB0\u5F55\u3002", _jsx("br", {}), "\u3000\u00B7 \u5E01\u79CD\u56FA\u5B9A\u4E3A USD\u3002", _jsx("br", {}), "\u3000\u00B7 \u6C47\u7387\u542B\u4E49\u4E3A\uFF1A1 \u7F8E\u5143\u5151\u6362\u591A\u5C11\u4EBA\u6C11\u5E01\u3002", _jsx("br", {}), "\u3000\u00B7 \u82E5\u672A\u7EF4\u62A4\u5FC5\u586B\u6708\u4EFD\u7684\u6C47\u7387\uFF0C\u53EF\u80FD\u5BFC\u81F4\u542B\u53EF\u9000\u7A0E\u5546\u54C1\u7684\u8BA2\u5355\u65E0\u6CD5\u751F\u6210\u6587\u4EF6\u3002"] })] }), editing && _jsx(RateDialog, { value: editing, busy: busy, onClose: () => setEditing(null), onSave: onSave }), editingProfit && _jsx(ProfitDialog, { value: profit, busy: busy, onClose: () => setEditingProfit(false), onSave: onSaveProfit }), deleting && _jsx(RateDeleteDialog, { value: deleting, busy: busy, onCancel: () => void completeDelete(false), onConfirm: () => void completeDelete(true) })] });
195
+ return _jsxs("div", { className: `tcw-settings-rate-page is-${presentation.variant}`, children: [presentation.showProfitSnapshot && _jsxs("section", { className: "tcw-settings-card tcw-settings-profit-snapshot", children: [_jsx("header", { children: _jsx("h2", { children: "\u6708\u5EA6\u5916\u6C47\u7BA1\u7406\u5C40\u9996\u65E5\u6C47\u7387 - \u89C4\u5219\u5FEB\u7167\uFF08\u5F53\u524D\u751F\u6548\uFF09" }) }), _jsxs("div", { children: [_jsx(Metric, { label: "\u6700\u4F4E\u6574\u5355\u5408\u89C4\u5229\u6DA6\u7387", value: `${Number(profit.minimumOrderProfitRate) * 100}%` }), _jsx(Metric, { label: "\u6362\u6C47\u6210\u672C\u4E0B\u9650", value: profit.exchangeCostMinimum }), _jsx(Metric, { label: "\u6362\u6C47\u6210\u672C\u4E0A\u9650", value: profit.exchangeCostMaximum }), _jsx(Metric, { label: "\u72B6\u6001", value: profit.status, status: true }), _jsx(Metric, { label: "\u4FEE\u8BA2\u53F7", value: String(profit.revision) })] })] }), _jsxs("section", { className: "tcw-settings-card tcw-settings-rate-card", children: [_jsxs("header", { children: [_jsx("h2", { children: "\u6708\u5EA6\u5916\u6C47\u7BA1\u7406\u5C40\u9996\u65E5\u6C47\u7387" }), _jsxs("div", { children: [_jsxs("button", { type: "button", className: "tcw-button tcw-button--primary", disabled: busy, onClick: () => setEditing(defaultRate()), children: [_jsx("i", { className: "ri-add-line", "aria-hidden": "true" }), "\u65B0\u589E\u6708\u5EA6\u6C47\u7387"] }), _jsxs("button", { type: "button", className: "tcw-button tcw-button--secondary tcw-settings-rate-import-button", disabled: busy, children: [_jsx("i", { className: "ri-upload-cloud-2-line", "aria-hidden": "true" }), "\u6279\u91CF\u5BFC\u5165"] })] })] }), presentation.showFilters && _jsxs("div", { className: "tcw-settings-rate-filters", children: [_jsxs("label", { children: [_jsx("span", { children: "\u5E74\u4EFD" }), _jsxs("select", { value: yearFilter, onChange: event => setYearFilter(event.target.value), children: [_jsx("option", { value: "", children: "\u5168\u90E8\u5E74\u4EFD" }), years.map(year => _jsx("option", { value: year, children: year }, year))] })] }), _jsxs("label", { children: [_jsx("span", { children: "\u6708\u4EFD" }), _jsxs("select", { value: monthFilter, onChange: event => setMonthFilter(event.target.value), children: [_jsx("option", { value: "", children: "\u8BF7\u9009\u62E9\u6708\u4EFD" }), Array.from({ length: 12 }, (_, index) => index + 1).map(month => _jsxs("option", { value: month, children: [String(month).padStart(2, '0'), "\u6708"] }, month))] })] })] }), _jsx(DataGrid, { columns: columns, rows: filteredItems, rowKey: row => row.id ?? `${row.year}-${row.month}`, actionWidth: 168, actions: row => _jsxs(_Fragment, { children: [_jsxs("button", { type: "button", onClick: () => setEditing(row), children: [_jsx("i", { className: "ri-eye-line", "aria-hidden": "true" }), "\u67E5\u770B"] }), _jsxs("button", { type: "button", onClick: () => setEditing(row), children: [_jsx("i", { className: "ri-edit-line", "aria-hidden": "true" }), "\u7F16\u8F91"] }), row.id && _jsxs("button", { type: "button", className: "is-danger", onClick: () => setDeleting(row), children: [_jsx("i", { className: "ri-delete-bin-line", "aria-hidden": "true" }), "\u5220\u9664"] })] }), pagination: filteredRates, onPageChange: page => void scheduler.page(page, rates.pageSize), onPageSizeChange: pageSize => void scheduler.pageSize(pageSize), emptyText: "\u6682\u65E0\u6708\u5EA6\u6C47\u7387" }), presentation.showNotice && _jsxs(InfoNotice, { children: [_jsx("b", { children: "\u8BF4\u660E" }), _jsx("br", {}), "\u3000\u00B7 \u6BCF\u4E2A\u7EC4\u7EC7 + \u81EA\u7136\u6708 + \u5E01\u79CD\uFF0C\u53EA\u5141\u8BB8\u5B58\u5728\u4E00\u6761\u6709\u6548\u8BB0\u5F55\u3002", _jsx("br", {}), "\u3000\u00B7 \u5E01\u79CD\u56FA\u5B9A\u4E3A USD\u3002", _jsx("br", {}), "\u3000\u00B7 \u6C47\u7387\u542B\u4E49\u4E3A\uFF1A1 \u7F8E\u5143\u5151\u6362\u591A\u5C11\u4EBA\u6C11\u5E01\u3002", _jsx("br", {}), "\u3000\u00B7 \u82E5\u672A\u7EF4\u62A4\u5FC5\u586B\u6708\u4EFD\u7684\u6C47\u7387\uFF0C\u53EF\u80FD\u5BFC\u81F4\u542B\u53EF\u9000\u7A0E\u5546\u54C1\u7684\u8BA2\u5355\u65E0\u6CD5\u751F\u6210\u6587\u4EF6\u3002"] })] }), editing && _jsx(RateDialog, { value: editing, busy: busy, onClose: () => setEditing(null), onSave: onSave }), editingProfit && _jsx(ProfitDialog, { value: profit, busy: busy, onClose: () => setEditingProfit(false), onSave: onSaveProfit }), deleting && _jsx(RateDeleteDialog, { value: deleting, busy: busy, onCancel: () => void completeDelete(false), onConfirm: () => void completeDelete(true) })] });
171
196
  }
172
197
  export function RateDialog({ value, busy, onClose, onSave }) {
173
198
  const [form, setForm] = React.useState(value);
@@ -190,7 +215,7 @@ function ProfitDialog({ value, busy, onClose, onSave }) {
190
215
  }
191
216
  export function RestoreDialog({ request, data, busy, onClose, onConfirm }) {
192
217
  const bank = request.settingsType === 'bank' ? bankOf(data, request.bankType) : null;
193
- return _jsx(Modal, { open: true, title: bank ? '确认恢复银行默认信息?' : '确认恢复系统默认配置?', onClose: onClose, footer: _jsxs(_Fragment, { children: [_jsxs("button", { type: "button", className: "tcw-button tcw-button--secondary", onClick: onClose, children: [_jsx("i", { className: "ri-close-line", "aria-hidden": "true" }), "\u53D6\u6D88"] }), _jsxs("button", { type: "button", className: "tcw-button tcw-button--primary", disabled: busy, onClick: onConfirm, children: [_jsx("i", { className: "ri-restart-line", "aria-hidden": "true" }), "\u786E\u8BA4\u6062\u590D\u9ED8\u8BA4"] })] }), children: _jsxs("div", { className: "tcw-settings-restore-dialog", children: [_jsxs(RiskNotice, { children: ["\u6B64\u64CD\u4F5C\u5C06\u8986\u76D6\u5F53\u524D\u81EA\u5B9A\u4E49\u7684\u914D\u7F6E\u4FE1\u606F\uFF0C\u6062\u590D\u4E3A\u7CFB\u7EDF\u9ED8\u8BA4\u914D\u7F6E\u3002", _jsx("br", {}), "\u539F\u6709\u914D\u7F6E\u5C06\u4FDD\u5B58\u5728\u5386\u53F2\u8BB0\u5F55\u4E2D\uFF0C\u60A8\u53EF\u4EE5\u968F\u65F6\u67E5\u770B\u3002"] }), bank ? _jsxs(_Fragment, { children: [_jsx("p", { children: "\u5C06\u6062\u590D\u4EE5\u4E0B\u76EE\u6807\u7684\u9ED8\u8BA4\u4FE1\u606F\uFF1A" }), _jsxs("h3", { children: [_jsx("i", { className: "ri-bank-line", "aria-hidden": "true" }), bankTitle(bank.bankType), "\u3000/ ", bank.bankType] }), _jsx("h4", { children: "\u7CFB\u7EDF\u5185\u7F6E\u9ED8\u8BA4" }), _jsx("p", { className: "tcw-settings-default-note", children: "\u9ED8\u8BA4\u94F6\u884C\u5B57\u6BB5\u7531\u670D\u52A1\u7AEF\u5185\u7F6E\u914D\u7F6E\u63D0\u4F9B\uFF0C\u5C06\u5728\u786E\u8BA4\u540E\u6574\u4F53\u6062\u590D\u3002\u5F53\u524D\u63A5\u53E3\u672A\u8FD4\u56DE\u9ED8\u8BA4\u503C\u9884\u89C8\uFF0C\u56E0\u6B64\u6B64\u5904\u4E0D\u5C55\u793A\u53EF\u80FD\u8FC7\u671F\u6216\u4E0D\u51C6\u786E\u7684\u4FE1\u606F\u3002" }), _jsxs("small", { children: [_jsx("i", { className: "ri-information-line", "aria-hidden": "true" }), "\u6062\u590D\u540E\uFF0C\u94F6\u884C\u4FE1\u606F\u7684\u6240\u6709\u5B57\u6BB5\u5C06\u91CD\u7F6E\u4E3A\u7CFB\u7EDF\u9ED8\u8BA4\u503C\u3002"] })] }) : _jsx("p", { children: "\u5F53\u524D\u81EA\u5B9A\u4E49\u5185\u5BB9\u5C06\u88AB\u7CFB\u7EDF\u9ED8\u8BA4\u503C\u8986\u76D6\uFF0C\u539F\u914D\u7F6E\u4ECD\u4F1A\u4FDD\u7559\u5728\u8BBE\u7F6E\u5386\u53F2\u4E2D\u3002" })] }) });
218
+ return _jsx(Modal, { open: true, title: bank ? '确认恢复银行默认信息?' : '确认恢复系统默认配置?', onClose: onClose, footer: _jsxs(_Fragment, { children: [_jsxs("button", { type: "button", className: "tcw-button tcw-button--secondary", onClick: onClose, children: [_jsx("i", { className: "ri-close-line", "aria-hidden": "true" }), "\u53D6\u6D88"] }), _jsxs("button", { type: "button", className: "tcw-button tcw-button--primary", disabled: busy, onClick: onConfirm, children: [_jsx("i", { className: "ri-restart-line", "aria-hidden": "true" }), "\u786E\u8BA4\u6062\u590D\u9ED8\u8BA4"] })] }), children: _jsxs("div", { className: "tcw-settings-restore-dialog", children: [_jsxs(RiskNotice, { children: ["\u6B64\u64CD\u4F5C\u5C06\u8986\u76D6\u5F53\u524D\u81EA\u5B9A\u4E49\u7684\u914D\u7F6E\u4FE1\u606F\uFF0C\u6062\u590D\u4E3A\u7CFB\u7EDF\u9ED8\u8BA4\u914D\u7F6E\u3002", _jsx("br", {}), "\u539F\u6709\u914D\u7F6E\u5C06\u4FDD\u5B58\u5728\u5386\u53F2\u8BB0\u5F55\u4E2D\uFF0C\u60A8\u53EF\u4EE5\u968F\u65F6\u67E5\u770B\u3002"] }), bank ? _jsxs(_Fragment, { children: [_jsx("p", { children: "\u5C06\u6062\u590D\u4EE5\u4E0B\u76EE\u6807\u7684\u9ED8\u8BA4\u4FE1\u606F\uFF1A" }), _jsxs("h3", { children: [_jsx("i", { className: "ri-bank-line", "aria-hidden": "true" }), bankTitle(bank.bankType), "\u3000/ ", bank.bankType] }), _jsx("h4", { children: "\u9ED8\u8BA4\u4FE1\u606F\u9884\u89C8" }), _jsx("p", { className: "tcw-settings-default-note", children: "\u7CFB\u7EDF\u5185\u7F6E\u9ED8\u8BA4\u94F6\u884C\u5B57\u6BB5\u7531\u670D\u52A1\u7AEF\u914D\u7F6E\u63D0\u4F9B\uFF0C\u5C06\u5728\u786E\u8BA4\u540E\u6574\u4F53\u6062\u590D\u3002\u5F53\u524D\u63A5\u53E3\u672A\u8FD4\u56DE\u9ED8\u8BA4\u503C\u9884\u89C8\uFF0C\u56E0\u6B64\u6B64\u5904\u4E0D\u5C55\u793A\u53EF\u80FD\u8FC7\u671F\u6216\u4E0D\u51C6\u786E\u7684\u4FE1\u606F\u3002" }), _jsxs("small", { children: [_jsx("i", { className: "ri-information-line", "aria-hidden": "true" }), "\u6062\u590D\u540E\uFF0C\u94F6\u884C\u4FE1\u606F\u7684\u6240\u6709\u5B57\u6BB5\u5C06\u91CD\u7F6E\u4E3A\u7CFB\u7EDF\u9ED8\u8BA4\u503C\u3002"] })] }) : _jsx("p", { children: "\u5F53\u524D\u81EA\u5B9A\u4E49\u5185\u5BB9\u5C06\u88AB\u7CFB\u7EDF\u9ED8\u8BA4\u503C\u8986\u76D6\uFF0C\u539F\u914D\u7F6E\u4ECD\u4F1A\u4FDD\u7559\u5728\u8BBE\u7F6E\u5386\u53F2\u4E2D\u3002" })] }) });
194
219
  }
195
220
  function RateDeleteDialog({ value, busy, onCancel, onConfirm }) {
196
221
  return _jsx(Modal, { open: true, title: "\u786E\u8BA4\u5220\u9664\u6708\u5EA6\u6C47\u7387\uFF1F", onClose: onCancel, footer: _jsxs(_Fragment, { children: [_jsxs("button", { type: "button", className: "tcw-button tcw-button--secondary", onClick: onCancel, children: [_jsx("i", { className: "ri-close-line", "aria-hidden": "true" }), "\u53D6\u6D88"] }), _jsxs("button", { type: "button", className: "tcw-button tcw-button--danger", disabled: busy, onClick: onConfirm, children: [_jsx("i", { className: "ri-delete-bin-line", "aria-hidden": "true" }), "\u786E\u8BA4\u5220\u9664"] })] }), children: _jsxs("div", { className: "tcw-settings-delete-dialog", children: [_jsxs("p", { children: ["\u5220\u9664\u540E\uFF0C\u8BE5\u6708\u5EA6\u6C47\u7387\u5C06\u8FDB\u884C\u903B\u8F91\u5220\u9664\uFF0C\u540E\u7AEF\u8BB0\u5F55\u5C06\u6C38\u4E45\u4FDD\u7559\uFF0C\u4E0D\u53EF\u6062\u590D\u3002", _jsx("br", {}), "\u5DF2\u751F\u6210\u7684\u5386\u53F2\u6587\u4EF6\u6216\u8BB0\u5F55\u4E0D\u53D7\u5F71\u54CD\u3002"] }), _jsx("p", { children: "\u5F85\u5220\u9664\u7684\u6708\u5EA6\u6C47\u7387\u4FE1\u606F\u5982\u4E0B\uFF1A" }), _jsxs("dl", { children: [_jsxs("div", { children: [_jsx("dt", { children: "\u5E74\u4EFD" }), _jsx("dd", { children: value.year })] }), _jsxs("div", { children: [_jsx("dt", { children: "\u6708\u4EFD" }), _jsx("dd", { children: String(value.month).padStart(2, '0') })] }), _jsxs("div", { children: [_jsx("dt", { children: "\u5E01\u79CD" }), _jsx("dd", { children: value.currencyCode ?? 'USD' })] }), _jsxs("div", { children: [_jsx("dt", { children: "\u7F8E\u5143\u5151\u4EBA\u6C11\u5E01\u6C47\u7387" }), _jsx("dd", { children: value.usdToCnyRate })] }), _jsxs("div", { children: [_jsx("dt", { children: "\u6765\u6E90\u8BF4\u660E" }), _jsx("dd", { children: value.sourceReference })] }), _jsxs("div", { children: [_jsx("dt", { children: "\u4FEE\u8BA2\u53F7" }), _jsx("dd", { children: value.revision ?? 0 })] })] })] }) });