diff --git a/src/common/oneos-web-approval/components/ApprovalCard.tsx b/src/common/oneos-web-approval/components/ApprovalCard.tsx index 9836c25..b52a183 100644 --- a/src/common/oneos-web-approval/components/ApprovalCard.tsx +++ b/src/common/oneos-web-approval/components/ApprovalCard.tsx @@ -21,7 +21,7 @@ function statusClassName(status: ApprovalCardItem['status']): string { export function ApprovalCard({ item, selected = false, onClick }: ApprovalCardProps) { const typeColor = getApprovalTypeColor(item.type); - const statusLabel = formatStatusLabel(item); + const statusLabel = item.statusLabel ?? formatStatusLabel(item); return (
) : null} + + {item.extraTags && item.extraTags.length > 0 ? ( +
+ {item.extraTags.map((tag) => ( + + {tag} + + ))} +
+ ) : null}
- {item.showInitiatorInFooter ? ( + {item.initiatorSuffixInFooter ? ( + {item.initiatedBy}发起 + ) : item.showInitiatorInFooter ? ( 发起人 {item.initiatedBy} ) : null} diff --git a/src/common/oneos-web-approval/components/ApprovalDetailPlaceholder.tsx b/src/common/oneos-web-approval/components/ApprovalDetailPlaceholder.tsx index d4c700d..36fae93 100644 --- a/src/common/oneos-web-approval/components/ApprovalDetailPlaceholder.tsx +++ b/src/common/oneos-web-approval/components/ApprovalDetailPlaceholder.tsx @@ -21,6 +21,7 @@ import { getApprovalTypeLabel, } from '../config/approvalTypeConfig'; import { InsuranceComparisonDetail } from './InsuranceComparisonDetail'; +import { LeaseBillingDetail } from './LeaseBillingDetail'; const { Text, Title } = Typography; @@ -56,6 +57,10 @@ export function ApprovalDetailPlaceholder({ item, onRefresh }: ApprovalDetailPla return ; } + if (item.type === 'billing') { + return ; + } + const statusLabel = formatStatusLabel(item); const typeLabel = getApprovalTypeLabel(item.type); diff --git a/src/common/oneos-web-approval/components/InsuranceComparisonDetail.tsx b/src/common/oneos-web-approval/components/InsuranceComparisonDetail.tsx index ff49360..fb96aa1 100644 --- a/src/common/oneos-web-approval/components/InsuranceComparisonDetail.tsx +++ b/src/common/oneos-web-approval/components/InsuranceComparisonDetail.tsx @@ -73,7 +73,7 @@ function buildSummaryRows(item: ApprovalCardItem, comparisonNo: string) { { label: '当前审批人', value: item.currentApprover ?? '-' }, { label: '保险公司数量', value: companyCount }, { label: '采购险种', value: insuranceType }, - { label: '中选保险公司', value: item.subtitle?.replace(/^中选:/, '') ?? '-' }, + { label: '中选保险公司', value: item.subtitle ?? '-' }, ]; } @@ -96,7 +96,7 @@ function buildVehicleRows(item: ApprovalCardItem): VehicleRow[] { } function buildQuoteRows(item: ApprovalCardItem): QuoteRow[] { - const winner = item.subtitle?.replace(/^中选:/, '') ?? '国元农业保险上海分公司'; + const winner = item.subtitle ?? '国元农业保险上海分公司'; const finalAmount = getFact(item, '最终报价').replace('¥', ''); return [ diff --git a/src/common/oneos-web-approval/components/LeaseBillingDetail.tsx b/src/common/oneos-web-approval/components/LeaseBillingDetail.tsx new file mode 100644 index 0000000..96f41d1 --- /dev/null +++ b/src/common/oneos-web-approval/components/LeaseBillingDetail.tsx @@ -0,0 +1,290 @@ +import React, { useState } from 'react'; +import { + Avatar, + Button, + Empty, + Space, + Table, + Tabs, + Tag, + Timeline, + Typography, +} from 'antd'; +import type { ColumnsType } from 'antd/es/table'; +import { + CheckCircleOutlined, + ClockCircleOutlined, + CopyOutlined, + ReloadOutlined, + UserOutlined, +} from '@ant-design/icons'; +import type { ApprovalCardItem } from '../types'; +import { formatStatusLabel, getApprovalTypeLabel } from '../config/approvalTypeConfig'; + +const { Text, Title } = Typography; + +export interface LeaseBillingDetailProps { + item: ApprovalCardItem; + onRefresh?: () => void; +} + +function getFact(item: ApprovalCardItem, label: string): string { + return item.keyFacts?.find((fact) => fact.label === label)?.value ?? '-'; +} + +function parseBillingCycle(text: string) { + const normalized = text.replace('·', ' ').trim(); + const periodMatch = normalized.match(/第\d+期/); + const period = periodMatch?.[0] ?? '-'; + const fullDateMatch = normalized.match(/(\d{4}-\d{2}-\d{2})至(\d{4}-\d{2}-\d{2})/); + if (fullDateMatch) { + return { period, startDate: fullDateMatch[1], endDate: fullDateMatch[2] }; + } + const rangeMatch = normalized.match(/(\d{2}-\d{2})至(\d{2}-\d{2})/); + const startDate = rangeMatch ? `2026-${rangeMatch[1]}` : '-'; + const endDate = rangeMatch ? `2026-${rangeMatch[2]}` : '-'; + return { period, startDate, endDate }; +} + +function parseAmount(value: string): string { + return value.replace(/[¥,]/g, '').trim() || '0.00'; +} + +function buildBillNo(item: ApprovalCardItem): string { + const seq = item.id.replace(/\D/g, '').padStart(16, '0'); + return `207${seq}994`; +} + +interface BillDetailRow { + key: string; + index: number; + brand: string; + model: string; + plateNo: string; + rentReceivable: string; + rentReceived: string; + rentRemark: string; + waivedAmount: string; + depositReceivable: string; +} + +function buildBillDetailRows(item: ApprovalCardItem): BillDetailRow[] { + const vehicleCount = Number(getFact(item, '计费车辆数量').match(/(\d+)/)?.[1] ?? 2); + const amount = parseAmount(getFact(item, '应收款总额')); + const receivedAmount = parseAmount(getFact(item, '实收款总额')); + const perVehicleReceivable = (Number(amount) / vehicleCount).toFixed(2); + const perVehicleReceived = (Number(receivedAmount) / vehicleCount).toFixed(2); + + return Array.from({ length: vehicleCount }, (_, index) => ({ + key: String(index + 1), + index: index + 1, + brand: '帕力安', + model: '4.5T 厢式货车', + plateNo: index === 0 ? '粤AGR9901' : '粤AGR9902', + rentReceivable: perVehicleReceivable, + rentReceived: perVehicleReceived, + rentRemark: '-', + waivedAmount: '0.00', + depositReceivable: '0.00', + })); +} + +export function LeaseBillingDetail({ item, onRefresh }: LeaseBillingDetailProps) { + const [activeTab, setActiveTab] = useState('detail'); + const billNo = buildBillNo(item); + const typeLabel = getApprovalTypeLabel(item.type); + const statusLabel = item.statusLabel ?? formatStatusLabel(item); + const cycle = parseBillingCycle(item.subtitle ?? ''); + const receivableTotal = parseAmount(getFact(item, '应收款总额')); + const receivedTotal = parseAmount(getFact(item, '实收款总额')); + const invoicedTotal = parseAmount(getFact(item, '开票总额')); + const pendingInvoice = Math.max(Number(receivedTotal) - Number(invoicedTotal), 0).toFixed(2); + const billDetailRows = buildBillDetailRows(item); + + const billInfoRows = [ + { label: '合同编码', value: 'AUTO_REG_20260703105722' }, + { label: '合同类型', value: '租赁合同' }, + { label: '项目名称', value: item.projectName ?? '-' }, + { label: '客户名称', value: item.title }, + { label: '交车任务编码', value: '-' }, + { label: '账单编码', value: `RS-ZD-${item.id.replace('ac-', '')}-${billNo.slice(-10)}` }, + { label: '账单期数', value: cycle.period }, + { label: '账单开始日期', value: cycle.startDate }, + { label: '账单结束日期', value: cycle.endDate }, + ]; + + const detailColumns: ColumnsType = [ + { title: '序号', dataIndex: 'index', width: 56, fixed: 'left' }, + { title: '品牌', dataIndex: 'brand', width: 80 }, + { title: '型号', dataIndex: 'model', width: 120 }, + { title: '车牌号', dataIndex: 'plateNo', width: 100 }, + { title: '应收车辆月租金', dataIndex: 'rentReceivable', width: 120 }, + { title: '实收车辆月租金', dataIndex: 'rentReceived', width: 120 }, + { title: '车辆租金备注', dataIndex: 'rentRemark', width: 110 }, + { title: '减免金额', dataIndex: 'waivedAmount', width: 90 }, + { title: '应收车辆保证金', dataIndex: 'depositReceivable', width: 120 }, + ]; + + return ( +
+
+ + 编号: + , text: billNo }}>{billNo} + + +
+ +
+
+ + {typeLabel}审批 + + {statusLabel} +
+
+ + + } /> + {item.initiatedBy} + + + 流程分类 + {typeLabel} + + + + 提交时间 + {item.initiatedAt} + + +
+
+ + + + 账单信息 + + + + {Array.from({ length: Math.ceil(billInfoRows.length / 3) }).map((_, rowIndex) => { + const cells = billInfoRows.slice(rowIndex * 3, rowIndex * 3 + 3); + return ( + + {cells.map((cell) => ( + + + + + ))} + {cells.length < 3 + ? Array.from({ length: 3 - cells.length }).map((__, fillIndex) => ( + + + ); + })} + +
{cell.label}{cell.value} + + + )) + : null} +
+ +
+ + 账单明细 + +
+ + 应收款总额 {receivableTotal} 元 + + + 实收款总额 {receivedTotal} 元 + + + 开票总额 {invoicedTotal} 元 + + + 待开票 {pendingInvoice} 元 + +
+ + + +
+ + 审批记录 + + +
+ 财务经理审批 + 待审批 +
+
+ ), + }, + { + color: 'green', + dot: , + children: ( +
+
+ 发起审批 + 通过 +
+ {item.initiatedBy} + + {item.initiatedAt} + +
+ ), + }, + ]} + /> + + + ), + }, + { + key: 'flow', + label: '审批流程图', + children: ( +
+ +
+ ), + }, + ]} + /> + +
+ +
+ + ); +} diff --git a/src/common/oneos-web-approval/data/mockApprovalCases.ts b/src/common/oneos-web-approval/data/mockApprovalCases.ts index ffddfef..509da9d 100644 --- a/src/common/oneos-web-approval/data/mockApprovalCases.ts +++ b/src/common/oneos-web-approval/data/mockApprovalCases.ts @@ -27,18 +27,55 @@ export const MOCK_APPROVAL_CASES: ApprovalCardItem[] = [ status: 'processing', listTab: 'initiated', title: '沪A51676F', - subtitle: '中选:国元农业保险上海分公司', + subtitle: '国元农业保险上海分公司', keyFacts: [ { label: '采购险种', value: '商业险' }, { label: '最终报价', value: '¥1000.00' }, { label: '保险公司数量', value: '3家' }, { label: '最晚付费日', value: '2026-08-09' }, ], - currentApprover: '财务部-赵总', + currentApprover: '赵总', showInitiatorInFooter: true, initiatedBy: CURRENT_USER, initiatedAt: '2026-06-10 14:00', }, + { + id: 'ac-24', + type: 'return_settlement', + status: 'processing', + listTab: 'initiated', + title: '粤AGR8536', + subtitle: '环迪新能源(广州)有限公司 · 荣达餐饮试-租赁帕力安4.5T', + keyFacts: [ + { label: '应退还总额', value: '¥11,610.18', emphasis: true }, + { label: '保证金总额', value: '¥10,000.00' }, + { label: '待结算总额', value: '¥-1,610.18' }, + { label: '应补缴总额', value: '¥0' }, + ], + currentApprover: '赵总', + showInitiatorInFooter: true, + initiatedBy: CURRENT_USER, + initiatedAt: '2026-06-10 14:00', + }, + { + id: 'ac-25', + type: 'billing', + status: 'processing', + listTab: 'initiated', + title: '嘉兴市振鑫物流有限公司', + subtitle: '第1期 · 2026-07-03至2026-07-31', + projectName: '浮云测试-0703-试用-1', + keyFacts: [ + { label: '计费车辆数量', value: '2辆' }, + { label: '应收款总额', value: '¥288.00', emphasis: true }, + { label: '实收款总额', value: '¥288.00' }, + { label: '开票总额', value: '¥244.00' }, + ], + currentApprover: '赵总', + showInitiatorInFooter: true, + initiatedBy: '王雨昊', + initiatedAt: '2026-07-31 16:40', + }, ]; export function filterCasesByTab( diff --git a/src/common/oneos-web-approval/styles/index.css b/src/common/oneos-web-approval/styles/index.css index dbb4288..242ab68 100644 --- a/src/common/oneos-web-approval/styles/index.css +++ b/src/common/oneos-web-approval/styles/index.css @@ -272,6 +272,7 @@ font-weight: 500; line-height: 1.45; word-break: break-word; + white-space: pre-line; } .ap-card__fact-value--emphasis { @@ -310,6 +311,25 @@ border-color: #fde68a; } +.ap-card__extra-tags { + display: flex; + flex-wrap: wrap; + gap: 8px; + margin-top: 12px; +} + +.ap-card__extra-tag { + display: inline-flex; + align-items: center; + padding: 2px 10px; + border-radius: 999px; + font-size: 12px; + font-weight: 500; + background: #f1f5f9; + color: var(--ap-muted); + border: 1px solid #e2e8f0; +} + .ap-card__footer { display: flex; align-items: flex-end; @@ -571,6 +591,56 @@ background: #f1f5f9; } +.ap-billing-summary th { + width: 10%; +} + +.ap-billing-summary td { + width: 23%; +} + +.ap-billing-detail-section { + margin-top: 8px; +} + +.ap-billing-totals { + display: flex; + flex-wrap: wrap; + align-items: center; + gap: 20px; + margin-bottom: 12px; + padding: 12px 14px; + border-radius: 8px; + background: #f8fafc; + font-size: 13px; + color: var(--ap-muted); +} + +.ap-billing-totals__value { + color: var(--ap-primary) !important; + font-weight: 600; +} + +.ap-billing-totals__meta { + margin-left: auto; + font-size: 12px; +} + +.ap-billing-timeline-section { + margin-top: 24px; +} + +.ap-billing-timeline-item { + padding-bottom: 4px; +} + +.ap-billing-timeline-head { + display: flex; + align-items: center; + gap: 8px; + margin-bottom: 4px; +} + @media (max-width: 960px) { .ap-page { height: auto; diff --git a/src/common/oneos-web-approval/types.ts b/src/common/oneos-web-approval/types.ts index 6d8bbdc..82186c9 100644 --- a/src/common/oneos-web-approval/types.ts +++ b/src/common/oneos-web-approval/types.ts @@ -50,8 +50,12 @@ export interface ApprovalCardItem { initiatedBy: string; initiatedAt: string; typeLabel?: string; + statusLabel?: string; + projectName?: string; footerText?: string; showInitiatorInFooter?: boolean; + initiatorSuffixInFooter?: boolean; + extraTags?: string[]; ccUsers?: string[]; handledBy?: string; } diff --git a/src/prototypes/oneos-prototype-nav/prototype-registry.json b/src/prototypes/oneos-prototype-nav/prototype-registry.json index e0f8eae..19bcf96 100644 --- a/src/prototypes/oneos-prototype-nav/prototype-registry.json +++ b/src/prototypes/oneos-prototype-nav/prototype-registry.json @@ -1,403 +1,311 @@ { "version": 1, - "updatedAt": "2026-07-18T04:30:15.800Z", + "updatedAt": "2026-07-18T08:46:27.733Z", "prototypes": { - "oneos-web-workbench": { - "title": "工作台", + "business-dept-ledger": { + "title": "项目盈亏情况", "version": "v1.4", "revision": 4, - "lastUpdated": "2026-07-12T14:44:00.000Z", - "contentHash": "112a83b91f6de93378a2c19185461be8d0c78efddb45c290ddc826e64b637775", + "lastUpdated": "2026-07-16T01:00:00.000Z", + "contentHash": "1ce9dec54d87077121a3bffb40114f1e504af1bfd9277a493e50ad1cd47a273f", "trackedFiles": [ + ".spec/prototype-comments.json", + "data/excel-2026-seed.json", "index.tsx", - "pages/01-工作台.jsx" + "styles/index.css" ], "changelog": [ { "version": "v1.4", - "date": "2026-07-09", - "time": "17:52", - "summary": "多业务台账/财务/工作台页面迭代与标注目录同步。", + "date": "2026-07-16", + "time": "09:00", + "summary": "样式与布局:index.css", "details": [], - "commit": "6ccbbef", - "files": [] + "commit": "47c223a", + "files": [ + "styles/index.css" + ] }, { "version": "v1.3", - "date": "2026-07-08", - "time": "11:44", - "summary": "新增车辆维修明细、还车应结款原型;车辆管理、收款记录、工作台、加氢站等同步对齐", - "details": [], - "commit": "6d14c58", - "files": [] + "date": "2026-07-12", + "time": "22:45", + "summary": "业务部台账:分组表头与表格可读性增强", + "details": [ + "统一边框 token、分组表头双层样式(业务板块 + 业绩/成本/盈亏)", + "冻结列滚动修复;金额列防裁切;盈亏钻取链接样式调整" + ], + "commit": "131b963", + "files": [ + "styles/index.css" + ] }, { "version": "v1.2", - "date": "2026-06-30", - "time": "16:54", + "date": "2026-07-09", + "time": "17:52", "summary": "页面逻辑与交互:index.tsx", - "details": [], - "commit": "0982837", + "details": [ + "样式与布局:index.css", + "演示数据与配置:excel-2026-seed.json" + ], + "commit": "6ccbbef", "files": [ - "index.tsx" + "data/excel-2026-seed.json", + "index.tsx", + "styles/index.css" ] }, { "version": "v1.1", - "date": "2026-06-30", - "time": "16:36", - "summary": "页面逻辑与交互:index.tsx", - "details": [], - "commit": "d71ebc5", + "date": "2026-07-06", + "time": "17:18", + "summary": "新增业务部台账、收款记录、业务条线说明及 ledger-shared / vm-shared 公共壳层", + "details": [ + "页面逻辑与交互:index.tsx" + ], + "commit": "d0d7458", "files": [ "index.tsx" ] } ] }, - "vehicle-management": { - "title": "车辆资产", + "contract-template-management": { + "title": "合同模板管理", "version": "v1.11", "revision": 11, - "lastUpdated": "2026-07-18T04:30:15.800Z", - "contentHash": "31524a813ece4d38c7971d7a945b6cf68dde1c72ab114f90665061d7ad191848", + "lastUpdated": "2026-07-13T01:31:00.000Z", + "contentHash": "d73aaafeba82194211c48a9012a786753c1f9e76a23d7148f5fbae6ee592d1d6", "trackedFiles": [ + ".spec/acp/conversations.json", ".spec/prototype-comments.json", ".spec/prototype-review.md", - ".spec/requirements-prd-detail.md", - ".spec/requirements-prd-list.md", ".spec/ui-review.md", - "components/DateRangeCalendarPanel.tsx", - "components/DateRangeFilterField.tsx", - "components/DetailAccidentRecordsTab.tsx", - "components/DetailAnnualReviewRecordsTab.tsx", - "components/DetailBasicInfoTab.tsx", - "components/DetailExpireField.tsx", - "components/DetailFaultRecordsTab.tsx", - "components/DetailInlineEditField.tsx", - "components/DetailInsuranceRecordsTab.tsx", - "components/DetailLeaseRecordsTab.tsx", - "components/DetailLicenseInfoTab.tsx", - "components/DetailModelParamsTab.tsx", - "components/DetailMovementRecordsTab.tsx", - "components/DetailOperateCityInlineEdit.tsx", - "components/DetailOpsManagerInlineEdit.tsx", - "components/DetailParamLayout.tsx", - "components/DetailTransferRecordsTab.tsx", - "components/DetailViolationRecordsTab.tsx", - "components/ExpireDate.tsx", - "components/FilterPanel.tsx", - "components/FilterPickerField.tsx", - "components/HandoverSituationCell.tsx", - "components/ImportModal.tsx", - "components/InspectExpireCell.tsx", - "components/InsuranceExpireCell.tsx", - "components/KpiCards.tsx", - "components/LocationMapModal.tsx", - "components/MultiPlateFilterField.tsx", - "components/OnLeaseFleetSection.tsx", - "components/OperateCityEditModal.tsx", - "components/OperateCityField.tsx", - "components/OperateCityPickerPanel.tsx", - "components/OperateCityProvincePicker.tsx", - "components/OpsManagerModal.tsx", - "components/OpsManagerMultiSelect.tsx", - "components/OpsManagerPickerPanel.tsx", - "components/PageDocToolbar.tsx", - "components/RowActionsMenu.tsx", - "components/SingleDateCalendarPanel.tsx", - "components/SingleYearPickerPanel.tsx", - "components/StatusTag.tsx", - "components/TablePagination.tsx", - "components/useDismissOnFocusOutside.ts", - "components/VehicleEditModal.tsx", - "components/VehicleTable.tsx", - "data/accident-records.json", - "data/annual-review-records.json", - "data/china-operate-regions.json", - "data/fault-records.json", - "data/insurance-purchases.json", - "data/lease-records.json", - "data/movement-records.json", - "data/transfer-records.json", - "data/vehicle-insurance-ledger.json", - "data/vehicles.json", - "data/violation-records.json", + "contract-template-catalog.js", + "contract-template-docx-fidelity.js", + "contract-template-section-filter.js", + "contract-template-section-headings.js", + "contract-template-section-html.js", + "contract-template-seed.js", + "contract-template-store.js", + "contract-template-types.js", + "contract-template-vars.js", + "contract-template-word-import.js", + "ContractTemplate.jsx", "index.tsx", - "pages/DetailPage.tsx", - "style.css", - "types.ts", - "utils/accidentRecords.ts", - "utils/annualReviewRecords.ts", - "utils/dateRangeCalendar.ts", - "utils/faultRecords.ts", - "utils/filters.ts", - "utils/insurance.ts", - "utils/leaseRecords.ts", - "utils/modelParams.ts", - "utils/movementRecords.ts", - "utils/onLeaseFleet.ts", - "utils/testCaseExport.ts", - "utils/testCasesData.ts", - "utils/transferRecords.ts", - "utils/vehicle.ts", - "utils/vehicleInsuranceRecords.ts", - "utils/vehicleLicenses.ts", - "utils/violationRecords.ts" + "styles/contract-template.css", + "styles/index.css", + "styles/oneos-app.css", + "styles/oneos-tokens.css", + "trial-agreement-18t-document.js", + "trial-agreement-document.js", + "v266-lease-document.js", + "vehicle-binding-utils.js", + "VehicleBrandModelPicker.jsx" ], "changelog": [ { "version": "v1.11", - "date": "2026-07-18", - "time": "12:30", - "summary": "车辆管理:筛选占位符与日期区间对齐全局设计规范", + "date": "2026-07-13", + "time": "00:26", + "summary": "更新需求说明与标注", "files": [ + ".spec/acp/conversations.json", ".spec/prototype-comments.json", ".spec/prototype-review.md", - ".spec/requirements-prd-detail.md", - ".spec/requirements-prd-list.md", ".spec/ui-review.md", - "components/DateRangeCalendarPanel.tsx", - "components/DateRangeFilterField.tsx", - "components/DetailAccidentRecordsTab.tsx", - "components/DetailAnnualReviewRecordsTab.tsx", - "components/DetailBasicInfoTab.tsx", - "components/DetailExpireField.tsx", - "components/DetailFaultRecordsTab.tsx" - ], - "details": [ - "DateRangeFilterField 与 filter placeholder 统一 0.875rem / muted-soft", - "对齐 global-design-spec §4.1 更多筛选与日期区间规则" + "contract-template-catalog.js", + "contract-template-docx-fidelity.js", + "contract-template-section-filter.js", + "contract-template-section-headings.js", + "contract-template-section-html.js", + "contract-template-seed.js", + "contract-template-store.js", + "contract-template-types.js" ] }, { "version": "v1.10", - "date": "2026-07-18", - "time": "10:51", + "date": "2026-07-13", + "time": "00:26", "summary": "更新需求说明与标注", "files": [ + ".spec/acp/conversations.json", ".spec/prototype-comments.json", ".spec/prototype-review.md", - ".spec/requirements-prd-detail.md", - ".spec/requirements-prd-list.md", ".spec/ui-review.md", - "components/DateRangeCalendarPanel.tsx", - "components/DateRangeFilterField.tsx", - "components/DetailAccidentRecordsTab.tsx", - "components/DetailAnnualReviewRecordsTab.tsx", - "components/DetailBasicInfoTab.tsx", - "components/DetailExpireField.tsx", - "components/DetailFaultRecordsTab.tsx" + "contract-template-catalog.js", + "contract-template-docx-fidelity.js", + "contract-template-section-filter.js", + "contract-template-section-headings.js", + "contract-template-section-html.js", + "contract-template-seed.js", + "contract-template-store.js", + "contract-template-types.js" ] }, { "version": "v1.9", - "date": "2026-07-18", - "time": "10:42", - "summary": "更新需求说明与标注", + "date": "2026-07-12", + "time": "22:45", + "summary": "合同模板:启用/停用、先付后用/先用后付变量与操作区重构", + "details": [ + "行操作:编辑 + 更多(启用/停用、版本日志、删除);启用中不可编辑/删除", + "模板变量新增 paymentMethod;付款周期与氢费结算文案更新" + ], + "commit": "131b963", "files": [ - ".spec/prototype-comments.json", - ".spec/prototype-review.md", - ".spec/requirements-prd-detail.md", - ".spec/requirements-prd-list.md", - ".spec/ui-review.md", - "components/DateRangeCalendarPanel.tsx", - "components/DateRangeFilterField.tsx", - "components/DetailAccidentRecordsTab.tsx", - "components/DetailAnnualReviewRecordsTab.tsx", - "components/DetailBasicInfoTab.tsx", - "components/DetailExpireField.tsx", - "components/DetailFaultRecordsTab.tsx" + "ContractTemplate.jsx", + "contract-template-catalog.js", + "contract-template-vars.js", + "index.tsx", + "styles/contract-template.css" ] }, { "version": "v1.8", - "date": "2026-07-18", - "time": "10:42", - "summary": "更新需求说明与标注", + "date": "2026-07-09", + "time": "17:52", + "summary": "页面逻辑与交互:contract-template-store.js", + "details": [], + "commit": "6ccbbef", "files": [ - ".spec/prototype-comments.json", - ".spec/prototype-review.md", - ".spec/requirements-prd-detail.md", - ".spec/requirements-prd-list.md", - ".spec/ui-review.md", - "components/DateRangeCalendarPanel.tsx", - "components/DateRangeFilterField.tsx", - "components/DetailAccidentRecordsTab.tsx", - "components/DetailAnnualReviewRecordsTab.tsx", - "components/DetailBasicInfoTab.tsx", - "components/DetailExpireField.tsx", - "components/DetailFaultRecordsTab.tsx" + "contract-template-store.js" ] }, { "version": "v1.7", - "date": "2026-07-18", - "time": "10:21", - "summary": "更新需求说明与标注", + "date": "2026-07-08", + "time": "11:44", + "summary": "合同模板:Word 导入与 docx 预览,模板编辑增强", + "details": [ + "租赁台账增强", + "合同模板 Word 导入", + "统一全局分页与筛选规范。", + "页面逻辑与交互:ContractTemplate.jsx、contract-template-docx-fidelity.js、contract-template-section-headings.js、contract-template-seed.js 等", + "样式与布局:contract-template.css", + "需求说明与 PRD:prototype-review.md" + ], + "commit": "6d14c58", "files": [ - ".spec/prototype-comments.json", ".spec/prototype-review.md", - ".spec/requirements-prd-detail.md", - ".spec/requirements-prd-list.md", - ".spec/ui-review.md", - "components/DateRangeCalendarPanel.tsx", - "components/DateRangeFilterField.tsx", - "components/DetailAccidentRecordsTab.tsx", - "components/DetailAnnualReviewRecordsTab.tsx", - "components/DetailBasicInfoTab.tsx", - "components/DetailExpireField.tsx", - "components/DetailFaultRecordsTab.tsx" + "ContractTemplate.jsx", + "contract-template-docx-fidelity.js", + "contract-template-section-headings.js", + "contract-template-seed.js", + "contract-template-store.js", + "contract-template-types.js", + "contract-template-word-import.js", + "styles/contract-template.css" ] }, { "version": "v1.6", - "date": "2026-07-16", - "time": "09:00", - "summary": "页面逻辑与交互:FilterPanel.tsx、KpiCards.tsx、OnLeaseFleetSection.tsx、VehicleTable.tsx 等", - "details": [ - "样式与布局:style.css", - "需求说明与 PRD:requirements-prd-detail.md、requirements-prd-list.md", - "演示数据与配置:vehicles.json" - ], - "commit": "47c223a", + "date": "2026-07-06", + "time": "17:18", + "summary": "页面逻辑与交互:contract-template-section-filter.js、contract-template-vars.js", + "details": [], + "commit": "d0d7458", "files": [ - ".spec/requirements-prd-detail.md", - ".spec/requirements-prd-list.md", - "components/FilterPanel.tsx", - "components/KpiCards.tsx", - "components/OnLeaseFleetSection.tsx", - "components/VehicleTable.tsx", - "data/vehicles.json", - "index.tsx", - "style.css", - "types.ts", - "utils/filters.ts", - "utils/leaseRecords.ts" + "contract-template-section-filter.js", + "contract-template-vars.js" ] }, { "version": "v1.5", - "date": "2026-07-12", - "time": "22:44", - "summary": "页面逻辑与交互:DetailAccidentRecordsTab.tsx、DetailAnnualReviewRecordsTab.tsx、DetailFaultRecordsTab.tsx、DetailInsuranceRecordsTab.tsx 等", - "details": [ - "样式与布局:style.css" - ], - "commit": "131b963", + "date": "2026-07-01", + "time": "16:28", + "summary": "页面逻辑与交互:index.tsx", + "details": [], + "commit": "b9dee3a", "files": [ - "components/DetailAccidentRecordsTab.tsx", - "components/DetailAnnualReviewRecordsTab.tsx", - "components/DetailFaultRecordsTab.tsx", - "components/DetailInsuranceRecordsTab.tsx", - "components/DetailLeaseRecordsTab.tsx", - "components/DetailMovementRecordsTab.tsx", - "components/DetailTransferRecordsTab.tsx", - "components/DetailViolationRecordsTab.tsx", - "components/FilterPanel.tsx", - "components/ImportModal.tsx", - "components/KpiCards.tsx", - "components/MultiPlateFilterField.tsx" + "index.tsx" ] }, { "version": "v1.4", - "date": "2026-07-08", - "time": "11:44", - "summary": "页面逻辑与交互:DateRangeFilterField.tsx、DetailAccidentRecordsTab.tsx、DetailAnnualReviewRecordsTab.tsx、DetailFaultRecordsTab.tsx 等", + "date": "2026-07-01", + "time": "09:11", + "summary": "合同模板管理:模板数据层、章节编辑与品牌车型选择器", "details": [ - "样式与布局:style.css" + "合同模板重构与租赁合同列表/表单增强", + "页面逻辑与交互:ContractTemplate.jsx、VehicleBrandModelPicker.jsx、contract-template-catalog.js、contract-template-section-filter.js 等", + "样式与布局:contract-template.css", + "需求说明与 PRD:prototype-review.md、ui-review.md" ], - "commit": "6d14c58", + "commit": "2e0a3d7", "files": [ - "components/DateRangeFilterField.tsx", - "components/DetailAccidentRecordsTab.tsx", - "components/DetailAnnualReviewRecordsTab.tsx", - "components/DetailFaultRecordsTab.tsx", - "components/DetailLeaseRecordsTab.tsx", - "components/DetailMovementRecordsTab.tsx", - "components/DetailTransferRecordsTab.tsx", - "components/DetailViolationRecordsTab.tsx", - "components/FilterPickerField.tsx", - "components/MultiPlateFilterField.tsx", - "components/TablePagination.tsx", - "style.css" + ".spec/prototype-review.md", + ".spec/ui-review.md", + "ContractTemplate.jsx", + "VehicleBrandModelPicker.jsx", + "contract-template-catalog.js", + "contract-template-section-filter.js", + "contract-template-section-html.js", + "contract-template-seed.js", + "contract-template-store.js", + "contract-template-types.js", + "index.tsx", + "styles/contract-template.css" ] }, { "version": "v1.3", - "date": "2026-07-06", - "time": "17:18", - "summary": "页面逻辑与交互:TablePagination.tsx", + "date": "2026-06-30", + "time": "15:27", + "summary": "页面逻辑与交互:ContractTemplate.jsx、index.tsx、trial-agreement-18t-document.js、trial-agreement-document.js", "details": [ - "样式与布局:style.css" + "样式与布局:contract-template.css" ], - "commit": "d0d7458", + "commit": "af29b26", "files": [ - "components/TablePagination.tsx", - "style.css" + "ContractTemplate.jsx", + "index.tsx", + "styles/contract-template.css", + "trial-agreement-18t-document.js", + "trial-agreement-document.js" ] }, { "version": "v1.2", - "date": "2026-06-30", - "time": "15:27", - "summary": "页面逻辑与交互:DetailBasicInfoTab.tsx、DetailInlineEditField.tsx、DetailOperateCityInlineEdit.tsx、DetailOpsManagerInlineEdit.tsx 等", - "details": [ - "样式与布局:style.css", - "需求说明与 PRD:prototype-review.md、requirements-prd-list.md", - "演示数据与配置:china-operate-regions.json" - ], - "commit": "af29b26", + "date": "2026-06-26", + "time": "17:56", + "summary": "页面逻辑与交互:contract-template-vars.js", + "details": [], + "commit": "00ca184", "files": [ - ".spec/prototype-review.md", - ".spec/requirements-prd-list.md", - "components/DetailBasicInfoTab.tsx", - "components/DetailInlineEditField.tsx", - "components/DetailOperateCityInlineEdit.tsx", - "components/DetailOpsManagerInlineEdit.tsx", - "components/FilterPanel.tsx", - "components/ImportModal.tsx", - "components/KpiCards.tsx", - "components/LocationMapModal.tsx", - "components/OperateCityEditModal.tsx", - "components/OperateCityField.tsx" + "contract-template-vars.js" ] }, { "version": "v1.1", "date": "2026-06-26", "time": "15:36", - "summary": "页面逻辑与交互:DateRangeCalendarPanel.tsx、DateRangeFilterField.tsx、DetailAccidentRecordsTab.tsx、DetailAnnualReviewRecordsTab.tsx 等", + "summary": "页面逻辑与交互:ContractTemplate.jsx、contract-template-vars.js、index.tsx、v266-lease-document.js", "details": [ - "样式与布局:style.css", - "需求说明与 PRD:requirements-prd-detail.md、requirements-prd-list.md、ui-review.md", - "演示数据与配置:accident-records.json、annual-review-records.json、fault-records.json、insurance-purchases.json、lease-records.json、movement-records.json、transfer-records.json、vehicle-insurance-ledger.json、vehicles.json、violation-records.json" + "样式与布局:contract-template.css、index.css、oneos-app.css、oneos-tokens.css" ], "commit": "7ef8852", "files": [ - ".spec/requirements-prd-detail.md", - ".spec/requirements-prd-list.md", - ".spec/ui-review.md", - "components/DateRangeCalendarPanel.tsx", - "components/DateRangeFilterField.tsx", - "components/DetailAccidentRecordsTab.tsx", - "components/DetailAnnualReviewRecordsTab.tsx", - "components/DetailBasicInfoTab.tsx", - "components/DetailExpireField.tsx", - "components/DetailFaultRecordsTab.tsx", - "components/DetailInlineEditField.tsx", - "components/DetailInsuranceRecordsTab.tsx" + "ContractTemplate.jsx", + "contract-template-vars.js", + "index.tsx", + "styles/contract-template.css", + "styles/index.css", + "styles/oneos-app.css", + "styles/oneos-tokens.css", + "v266-lease-document.js" ] } ] }, "customer-management": { "title": "客户管理", - "version": "v1.6", - "revision": 6, - "lastUpdated": "2026-07-13T01:31:00.000Z", - "contentHash": "619a8d374419d4c5a016ebb150e919f8c7e523009413e9a89b81d449f42d8b05", + "version": "v1.7", + "revision": 7, + "lastUpdated": "2026-07-13T01:31:55.559Z", + "contentHash": "bf7d8ecd03b4105b0c4acd47dcabb09e9437617fda46399f882ba742cde05189", "trackedFiles": [ ".spec/prototype-review.md", ".spec/requirements-prd-create.md", @@ -429,6 +337,26 @@ "utils/riskTagStore.ts" ], "changelog": [ + { + "version": "v1.7", + "date": "2026-07-13", + "time": "09:31", + "summary": "更新需求说明与标注", + "files": [ + ".spec/prototype-review.md", + ".spec/requirements-prd-create.md", + ".spec/requirements-prd-list.md", + ".spec/ui-review.md", + "components/BatchRiskTagModal.tsx", + "components/CustomerTable.tsx", + "components/FilterPanel.tsx", + "components/LabelTags.tsx", + "components/MultiSelectField.tsx", + "components/RiskKpiCards.tsx", + "components/RiskLabelTags.tsx", + "components/RiskTagDrawer.tsx" + ] + }, { "version": "v1.6", "date": "2026-07-13", @@ -440,6 +368,25 @@ "commit": "9b6244e", "files": [] }, + { + "version": "v1.4", + "date": "2026-07-12", + "time": "22:45", + "summary": "客户管理:OperationActions 统一操作列,移除面包屑", + "details": [ + "列表操作:详情 / 编辑 / 管理标签 / 删除", + "风险标签、批量打标等业务逻辑不变" + ], + "commit": "131b963", + "files": [ + "components/BatchRiskTagModal.tsx", + "components/CustomerTable.tsx", + "components/FilterPanel.tsx", + "components/RiskTagDrawer.tsx", + "index.tsx", + "pages/CreatePage.tsx" + ] + }, { "version": "v1.5", "date": "2026-07-12", @@ -456,19 +403,6 @@ "pages/CreatePage.tsx" ] }, - { - "version": "v1.4", - "date": "2026-07-08", - "time": "11:44", - "summary": "页面逻辑与交互:FilterPanel.tsx、MultiSelectField.tsx、index.tsx", - "details": [], - "commit": "6d14c58", - "files": [ - "components/FilterPanel.tsx", - "components/MultiSelectField.tsx", - "index.tsx" - ] - }, { "version": "v1.3", "date": "2026-07-02", @@ -552,129 +486,524 @@ } ] }, - "supplier-management": { - "title": "供应商管理", + "customer-payment-collection": { + "title": "客户回款情况", + "version": "v1.1", + "revision": 1, + "lastUpdated": "2026-07-16T01:00:00.000Z", + "contentHash": "00443b22a2f97d9e5162764025ec4246c3a1220f6f397c2df181da81aedb5437", + "trackedFiles": [ + "index.tsx", + "pages/客户回款情况.jsx" + ], + "changelog": [ + { + "version": "v1.1", + "date": "2026-07-16", + "time": "09:00", + "summary": "页面逻辑与交互:index.tsx", + "details": [], + "commit": "47c223a", + "files": [ + "index.tsx" + ] + } + ] + }, + "insurance-procurement": { + "title": "保险采购", "version": "v1.5", "revision": 5, - "lastUpdated": "2026-07-13T01:31:00.000Z", - "contentHash": "94261729b5316c2fbed8b4d554ca9acd38b708e89ef71d5341c2fb9465d309ea", + "lastUpdated": "2026-07-16T01:00:00.000Z", + "contentHash": "009327e1188652e0d99a6e4044acbcbba333c203978af4654fc71327bf62e6e4", "trackedFiles": [ - ".spec/prototype-review.md", - "components/BankAccountConfirmModal.tsx", - "components/ChangeLogDrawer.tsx", - "components/CoopStatusBadge.tsx", - "components/DeleteConfirmModal.tsx", - "components/FilterPanel.tsx", - "components/KpiCards.tsx", - "components/LeaveConfirmModal.tsx", - "components/RoleSwitcher.tsx", - "components/SupplierTable.tsx", - "data/suppliers.json", + ".spec/prototype-comments.json", "index.tsx", - "pages/CreatePage.tsx", - "styles/index.css", - "types.ts", - "utils/address.ts", - "utils/constants.ts", - "utils/createForm.ts", - "utils/filters.ts", - "utils/permissions.ts", - "utils/phone.ts", - "utils/region.ts", - "utils/supplierFields.ts", - "utils/validation.ts" + "InsuranceProcurement.jsx", + "styles/index.css" ], "changelog": [ { "version": "v1.5", - "date": "2026-07-13", - "time": "09:31", - "summary": "merge: 合并远程客户管理与供应商管理迭代", + "date": "2026-07-16", + "time": "09:00", + "summary": "页面逻辑与交互:InsuranceProcurement.jsx", "details": [ - "保留风险标签复核逻辑与统一操作按钮规范。" + "样式与布局:index.css" ], - "commit": "9b6244e", - "files": [] + "commit": "47c223a", + "files": [ + "InsuranceProcurement.jsx", + "styles/index.css" + ] }, { "version": "v1.4", "date": "2026-07-12", - "time": "22:44", - "summary": "页面逻辑与交互:FilterPanel.tsx、SupplierTable.tsx、index.tsx、CreatePage.tsx", - "details": [], + "time": "22:45", + "summary": "保险采购:OperationActions 统一操作列", + "details": [ + "保单列表:编辑 / 预览 / 下载 / 更多", + "标注壳切换" + ], "commit": "131b963", "files": [ - "components/FilterPanel.tsx", - "components/SupplierTable.tsx", - "index.tsx", - "pages/CreatePage.tsx" + "InsuranceProcurement.jsx", + "index.tsx" ] }, { "version": "v1.3", - "date": "2026-07-08", - "time": "11:44", - "summary": "页面逻辑与交互:index.tsx", + "date": "2026-07-01", + "time": "16:28", + "summary": "页面逻辑与交互:InsuranceProcurement.jsx、index.tsx", "details": [ "样式与布局:index.css" ], - "commit": "6d14c58", + "commit": "b9dee3a", "files": [ + "InsuranceProcurement.jsx", "index.tsx", "styles/index.css" ] }, { "version": "v1.2", - "date": "2026-07-03", - "time": "16:17", - "summary": "feat(supplier-management): 同步供应商管理最新原型迭代", - "details": [ - "页面逻辑与交互:BankAccountConfirmModal.tsx、ChangeLogDrawer.tsx、DeleteConfirmModal.tsx、KpiCards.tsx 等", - "样式与布局:index.css", - "需求说明与 PRD:prototype-review.md", - "演示数据与配置:suppliers.json" - ], - "commit": "d458d63", + "date": "2026-06-30", + "time": "15:27", + "summary": "页面逻辑与交互:InsuranceProcurement.jsx、index.tsx", + "details": [], + "commit": "af29b26", "files": [ - ".spec/prototype-review.md", - "components/BankAccountConfirmModal.tsx", - "components/ChangeLogDrawer.tsx", - "components/DeleteConfirmModal.tsx", - "components/KpiCards.tsx", - "components/LeaveConfirmModal.tsx", - "components/RoleSwitcher.tsx", - "data/suppliers.json", - "index.tsx", - "pages/CreatePage.tsx", - "styles/index.css", - "types.ts" + "InsuranceProcurement.jsx", + "index.tsx" ] }, { "version": "v1.1", - "date": "2026-07-01", - "time": "17:48", - "summary": "Add supplier-management prototype and enhance customer-management risk tags.", - "details": [ - "页面逻辑与交互:CoopStatusBadge.tsx、FilterPanel.tsx、KpiCards.tsx、SupplierTable.tsx 等", - "样式与布局:index.css", - "演示数据与配置:suppliers.json" - ], - "commit": "24a9fab", + "date": "2026-06-26", + "time": "15:36", + "summary": "页面逻辑与交互:InsuranceProcurement.jsx、index.tsx", + "details": [], + "commit": "7ef8852", "files": [ - "components/CoopStatusBadge.tsx", + "InsuranceProcurement.jsx", + "index.tsx" + ] + } + ] + }, + "lease-business-detail": { + "title": "租赁业务明细", + "version": "v1.5", + "revision": 5, + "lastUpdated": "2026-07-17T08:10:00.000Z", + "contentHash": "5dea68ab4a234edc3f7e76ac58eb2e2e8baaafe0150ff622a35ef1bae14e49ce", + "trackedFiles": [ + ".spec/field-checks.md", + ".spec/import-rules.md", + ".spec/prototype-comments.json", + ".spec/prototype-review.md", + ".spec/requirements-prd.md", + "columnHeaderTips.ts", + "components/DetailChangeLogModal.tsx", + "components/DetailDeleteConfirmModal.tsx", + "components/DetailEditModal.tsx", + "components/DetailImportModal.tsx", + "components/DetailKpiRow.tsx", + "components/DetailMainTabs.tsx", + "components/DetailTable.tsx", + "components/FieldCheckIcon.tsx", + "components/FilterPanel.tsx", + "components/MonthlyPlTab.tsx", + "components/tableColumns.ts", + "components/TableHeaderTip.tsx", + "data/change-log-seed.json", + "data/hydrogen-refuel-records.json", + "data/rows.json", + "index.tsx", + "styles/index.css", + "types.ts", + "utils/batch-io.ts", + "utils/calc-detail.ts", + "utils/change-log.ts", + "utils/detail.ts", + "utils/edit-fields.ts", + "utils/field-checks.ts", + "utils/hydrogen-fee.ts", + "utils/import-merge.ts", + "utils/monthly-pl.ts", + "utils/payment-status.ts", + "utils/role.ts", + "utils/row-key.ts", + "utils/system-ref.ts", + "utils/validate-detail.ts" + ], + "changelog": [ + { + "version": "v1.5", + "date": "2026-07-17", + "time": "16:10", + "summary": "页面逻辑与交互:DetailEditModal.tsx、DetailImportModal.tsx、batch-io.ts、import-merge.ts 等", + "details": [ + "需求说明与 PRD:import-rules.md、prototype-review.md、requirements-prd.md" + ], + "commit": "305199c", + "files": [ + ".spec/import-rules.md", + ".spec/prototype-review.md", + ".spec/requirements-prd.md", + "components/DetailEditModal.tsx", + "components/DetailImportModal.tsx", + "utils/batch-io.ts", + "utils/import-merge.ts", + "utils/row-key.ts", + "utils/validate-detail.ts" + ] + }, + { + "version": "v1.4", + "date": "2026-07-16", + "time": "09:00", + "summary": "页面逻辑与交互:columnHeaderTips.ts、DetailEditModal.tsx、DetailImportModal.tsx、DetailMainTabs.tsx 等", + "details": [ + "样式与布局:index.css", + "需求说明与 PRD:field-checks.md、prototype-review.md、requirements-prd.md", + "演示数据与配置:change-log-seed.json" + ], + "commit": "47c223a", + "files": [ + ".spec/field-checks.md", + ".spec/prototype-review.md", + ".spec/requirements-prd.md", + "columnHeaderTips.ts", + "components/DetailEditModal.tsx", + "components/DetailImportModal.tsx", + "components/DetailMainTabs.tsx", + "components/DetailTable.tsx", "components/FilterPanel.tsx", - "components/KpiCards.tsx", - "components/SupplierTable.tsx", - "data/suppliers.json", + "components/MonthlyPlTab.tsx", + "components/tableColumns.ts", + "data/change-log-seed.json" + ] + }, + { + "version": "v1.3", + "date": "2026-07-13", + "time": "09:26", + "summary": "更新需求说明与标注", + "files": [ + ".spec/prototype-comments.json", + ".spec/prototype-review.md", + ".spec/requirements-prd.md", + "columnHeaderTips.ts", + "components/DetailChangeLogModal.tsx", + "components/DetailDeleteConfirmModal.tsx", + "components/DetailEditModal.tsx", + "components/DetailImportModal.tsx", + "components/DetailKpiRow.tsx", + "components/DetailTable.tsx", + "components/FieldCheckIcon.tsx", + "components/FilterPanel.tsx" + ] + }, + { + "version": "v1.2", + "date": "2026-07-12", + "time": "22:45", + "summary": "租赁业务明细大改版:收款状态、47 列宽表、字段校验与变更记录", + "details": [ + "新增收款状态列(未收款/部分收款/已结清);月份、部门+业务员合并展示;表尾 23 项金额汇总", + "氢费可钻取 Popover;编辑/删除/变更记录;公式列(应收合计、未收、盈亏、氢费等)自动重算", + "客户/提车日期/租金等与车辆/客户/合同交叉校验,支持一键替换建议值", + "批量导入 36 列手工字段、导出 47 列;部分成功 + 错误日志;已对账锁定与主管解锁" + ], + "commit": "131b963", + "files": [ + ".spec/requirements-prd.md", + "columnHeaderTips.ts", + "components/DetailChangeLogModal.tsx", + "components/DetailDeleteConfirmModal.tsx", + "components/DetailEditModal.tsx", + "components/DetailImportModal.tsx", + "components/DetailTable.tsx", + "components/FieldCheckIcon.tsx", + "components/FilterPanel.tsx", + "components/TableHeaderTip.tsx", + "components/tableColumns.ts", + "data/change-log-seed.json" + ] + }, + { + "version": "v1.1", + "date": "2026-07-09", + "time": "17:52", + "summary": "页面逻辑与交互:DetailImportModal.tsx、DetailKpiRow.tsx、DetailTable.tsx、FilterPanel.tsx 等", + "details": [ + "样式与布局:index.css", + "需求说明与 PRD:prototype-review.md", + "演示数据与配置:rows.json" + ], + "commit": "6ccbbef", + "files": [ + ".spec/prototype-review.md", + "components/DetailImportModal.tsx", + "components/DetailKpiRow.tsx", + "components/DetailTable.tsx", + "components/FilterPanel.tsx", + "components/tableColumns.ts", + "data/rows.json", "index.tsx", - "pages/CreatePage.tsx", "styles/index.css", "types.ts", - "utils/address.ts", - "utils/constants.ts", - "utils/filters.ts" + "utils/batch-io.ts", + "utils/calc-detail.ts" + ] + } + ] + }, + "lease-business-ledger": { + "title": "租赁业务台账", + "version": "v1.6", + "revision": 6, + "lastUpdated": "2026-07-12T14:45:00.000Z", + "contentHash": "ab4c832a35d0908a485c165230822f87c822558c012c6ec838ace2b58e7c86a3", + "trackedFiles": [ + ".spec/prototype-comments.json", + ".spec/requirements-prd.md", + "columnHeaderTips.ts", + "components/AccidentLinkModal.tsx", + "components/ConfirmMarkModal.tsx", + "components/DeleteConfirmModal.tsx", + "components/FilterPanel.tsx", + "components/LeaseLedgerImportModal.tsx", + "components/LeaseLedgerTable.tsx", + "components/LedgerDetailPopover.tsx", + "components/LedgerKpiRow.tsx", + "components/LedgerLineItemsCell.tsx", + "components/MaintenanceLinkModal.tsx", + "components/OperationHistoryModal.tsx", + "components/ReceiptLinkModal.tsx", + "components/tableColumns.ts", + "data/accident-records.json", + "data/bi-mileage.json", + "data/hydrogen-fees.json", + "data/maintenance-ledger-records.json", + "data/maintenance-orders.json", + "data/receipts.json", + "data/return-settlement-fees.json", + "data/rows.json", + "index.tsx", + "styles/index.css", + "types.ts", + "utils/constants.ts", + "utils/ledger-batch-import.ts", + "utils/ledger.ts" + ], + "changelog": [ + { + "version": "v1.6", + "date": "2026-07-12", + "time": "22:45", + "summary": "租赁业务台账:操作区统一为 OperationActions,标注壳切换", + "details": [ + "行操作:编辑 / 操作记录 / 保存(编辑态)", + "关联收款、事故/维保/收据链接弹窗保留", + "接入 PrototypeAnnotationHost,移除内嵌原型导航目录" + ], + "commit": "131b963", + "files": [ + "components/AccidentLinkModal.tsx", + "components/ConfirmMarkModal.tsx", + "components/DeleteConfirmModal.tsx", + "components/FilterPanel.tsx", + "components/LeaseLedgerImportModal.tsx", + "components/LeaseLedgerTable.tsx", + "components/LedgerLineItemsCell.tsx", + "components/MaintenanceLinkModal.tsx", + "components/OperationHistoryModal.tsx", + "components/ReceiptLinkModal.tsx", + "index.tsx" + ] + }, + { + "version": "v1.5", + "date": "2026-07-09", + "time": "17:52", + "summary": "页面逻辑与交互:index.tsx", + "details": [], + "commit": "6ccbbef", + "files": [ + "index.tsx" + ] + }, + { + "version": "v1.4", + "date": "2026-07-08", + "time": "11:44", + "summary": "租赁业务台账:运维费汇总、明细钻取弹层、其他收入/减免批量导入", + "details": [ + "页面逻辑与交互:columnHeaderTips.ts、AccidentLinkModal.tsx、FilterPanel.tsx、LeaseLedgerImportModal.tsx 等", + "样式与布局:index.css", + "演示数据与配置:maintenance-ledger-records.json、return-settlement-fees.json、rows.json" + ], + "commit": "6d14c58", + "files": [ + "columnHeaderTips.ts", + "components/AccidentLinkModal.tsx", + "components/FilterPanel.tsx", + "components/LeaseLedgerImportModal.tsx", + "components/LeaseLedgerTable.tsx", + "components/LedgerDetailPopover.tsx", + "components/LedgerLineItemsCell.tsx", + "components/MaintenanceLinkModal.tsx", + "components/ReceiptLinkModal.tsx", + "components/tableColumns.ts", + "data/maintenance-ledger-records.json", + "data/return-settlement-fees.json" + ] + }, + { + "version": "v1.3", + "date": "2026-07-06", + "time": "17:18", + "summary": "租赁业务台账:字段计算、宽表交互、标注 PRD 与表头说明修复", + "details": [ + "页面逻辑与交互:columnHeaderTips.ts、DeleteConfirmModal.tsx、FilterPanel.tsx、LeaseLedgerTable.tsx 等", + "样式与布局:index.css", + "需求说明与 PRD:requirements-prd.md", + "演示数据与配置:hydrogen-fees.json、maintenance-orders.json、receipts.json、rows.json" + ], + "commit": "d0d7458", + "files": [ + ".spec/requirements-prd.md", + "columnHeaderTips.ts", + "components/DeleteConfirmModal.tsx", + "components/FilterPanel.tsx", + "components/LeaseLedgerTable.tsx", + "components/LedgerDetailPopover.tsx", + "components/LedgerLineItemsCell.tsx", + "components/OperationHistoryModal.tsx", + "components/ReceiptLinkModal.tsx", + "components/tableColumns.ts", + "data/hydrogen-fees.json", + "data/maintenance-orders.json" + ] + }, + { + "version": "v1.2", + "date": "2026-07-02", + "time": "03:35", + "summary": "租赁业务台账:空值留白、排序/列宽拖拽、操作列与交互优化", + "details": [ + "页面逻辑与交互:DeleteConfirmModal.tsx、FilterPanel.tsx、LeaseLedgerTable.tsx、tableColumns.ts 等", + "样式与布局:index.css" + ], + "commit": "f5e3126", + "files": [ + "components/DeleteConfirmModal.tsx", + "components/FilterPanel.tsx", + "components/LeaseLedgerTable.tsx", + "components/tableColumns.ts", + "index.tsx", + "styles/index.css", + "utils/ledger.ts" + ] + }, + { + "version": "v1.1", + "date": "2026-06-30", + "time": "15:27", + "summary": "页面逻辑与交互:AccidentLinkModal.tsx、ConfirmMarkModal.tsx、FilterPanel.tsx、LeaseLedgerTable.tsx 等", + "details": [ + "样式与布局:index.css", + "需求说明与 PRD:requirements-prd.md", + "演示数据与配置:accident-records.json、bi-mileage.json、hydrogen-fees.json、maintenance-orders.json、receipts.json、rows.json" + ], + "commit": "af29b26", + "files": [ + ".spec/requirements-prd.md", + "components/AccidentLinkModal.tsx", + "components/ConfirmMarkModal.tsx", + "components/FilterPanel.tsx", + "components/LeaseLedgerTable.tsx", + "components/LedgerKpiRow.tsx", + "components/MaintenanceLinkModal.tsx", + "components/ReceiptLinkModal.tsx", + "components/tableColumns.ts", + "data/accident-records.json", + "data/bi-mileage.json", + "data/hydrogen-fees.json" + ] + } + ] + }, + "lease-business-line-overview": { + "title": "业务条线说明", + "version": "v1.4", + "revision": 4, + "lastUpdated": "2026-07-16T01:00:00.000Z", + "contentHash": "a7fb7ee64b406ab87e38a2f8c1a66ef327fd488038cadb51400528bc692284ef", + "trackedFiles": [ + ".spec/prototype-comments.json", + "data-foundations.ts", + "hooks.ts", + "index.tsx", + "lines.ts", + "style.css" + ], + "changelog": [ + { + "version": "v1.4", + "date": "2026-07-16", + "time": "09:00", + "summary": "页面逻辑与交互:lines.ts", + "details": [], + "commit": "47c223a", + "files": [ + "lines.ts" + ] + }, + { + "version": "v1.3", + "date": "2026-07-12", + "time": "22:45", + "summary": "业务条线说明:标注目录微调", + "details": [ + "条线数据更新;移除内嵌导航节点" + ], + "commit": "131b963", + "files": [ + "lines.ts" + ] + }, + { + "version": "v1.2", + "date": "2026-07-08", + "time": "11:44", + "summary": "页面逻辑与交互:lines.ts", + "details": [], + "commit": "6d14c58", + "files": [ + "lines.ts" + ] + }, + { + "version": "v1.1", + "date": "2026-07-06", + "time": "17:18", + "summary": "新增业务部台账、收款记录、业务条线说明及 ledger-shared / vm-shared 公共壳层", + "details": [ + "页面逻辑与交互:data-foundations.ts、hooks.ts、index.tsx、lines.ts", + "样式与布局:style.css" + ], + "commit": "d0d7458", + "files": [ + "data-foundations.ts", + "hooks.ts", + "index.tsx", + "lines.ts", + "style.css" ] } ] @@ -741,11 +1070,14 @@ { "version": "v1.9", "date": "2026-07-12", - "time": "22:44", - "summary": "页面逻辑与交互:LeaseContractCreate.jsx、LeaseContractEditorForm.jsx、LeaseContractFleetSummary.jsx、LeaseContractManagement.jsx 等", + "time": "22:45", + "summary": "租赁合同增强:KPI/状态收敛、查看页、签署方式与提车应收联动", "details": [ - "样式与布局:lease-contract-create.css、lease-contract.css", - "需求说明与 PRD:requirements-annotation-context.md、requirements-flow-operations.md、requirements-prd-list.md" + "列表 KPI:全部/草稿/进行中/审批中/已终止;合同状态收敛;在租车队 KPI 迁至车辆管理", + "筛选:合同模板类型 + 标准合同名称二级联动;统一流程入口(新增/续签/转正式/增车等)", + "新增只读查看页;线上电子签章 / 线下人工上传;主动终止与交付安排变更(Cascader/TBD)", + "附加费用拆分已有/新增服务项;红线条款 + 新增条款检测;先付后用/先用后付", + "提交审批与交付计划变更同步提车应收 bridge" ], "commit": "131b963", "files": [ @@ -948,1714 +1280,79 @@ } ] }, - "insurance-procurement": { - "title": "保险采购", - "version": "v1.5", - "revision": 5, - "lastUpdated": "2026-07-16T01:00:00.000Z", - "contentHash": "009327e1188652e0d99a6e4044acbcbba333c203978af4654fc71327bf62e6e4", - "trackedFiles": [ - ".spec/prototype-comments.json", - "index.tsx", - "InsuranceProcurement.jsx", - "styles/index.css" - ], - "changelog": [ - { - "version": "v1.5", - "date": "2026-07-16", - "time": "09:00", - "summary": "页面逻辑与交互:InsuranceProcurement.jsx", - "details": [ - "样式与布局:index.css" - ], - "commit": "47c223a", - "files": [ - "InsuranceProcurement.jsx", - "styles/index.css" - ] - }, - { - "version": "v1.4", - "date": "2026-07-12", - "time": "22:44", - "summary": "页面逻辑与交互:InsuranceProcurement.jsx、index.tsx", - "details": [], - "commit": "131b963", - "files": [ - "InsuranceProcurement.jsx", - "index.tsx" - ] - }, - { - "version": "v1.3", - "date": "2026-07-01", - "time": "16:28", - "summary": "页面逻辑与交互:InsuranceProcurement.jsx、index.tsx", - "details": [ - "样式与布局:index.css" - ], - "commit": "b9dee3a", - "files": [ - "InsuranceProcurement.jsx", - "index.tsx", - "styles/index.css" - ] - }, - { - "version": "v1.2", - "date": "2026-06-30", - "time": "15:27", - "summary": "页面逻辑与交互:InsuranceProcurement.jsx、index.tsx", - "details": [], - "commit": "af29b26", - "files": [ - "InsuranceProcurement.jsx", - "index.tsx" - ] - }, - { - "version": "v1.1", - "date": "2026-06-26", - "time": "15:36", - "summary": "页面逻辑与交互:InsuranceProcurement.jsx、index.tsx", - "details": [], - "commit": "7ef8852", - "files": [ - "InsuranceProcurement.jsx", - "index.tsx" - ] - } - ] - }, - "contract-template-management": { - "title": "合同模板管理", - "version": "v1.10", - "revision": 10, - "lastUpdated": "2026-07-13T01:31:00.000Z", - "contentHash": "926fd8b5d887e6dc2381c34771f95caecf1d4869bd618797972b8c27483e57ee", - "trackedFiles": [ - ".spec/acp/conversations.json", - ".spec/prototype-comments.json", - ".spec/prototype-review.md", - ".spec/ui-review.md", - "contract-template-catalog.js", - "contract-template-docx-fidelity.js", - "contract-template-section-filter.js", - "contract-template-section-headings.js", - "contract-template-section-html.js", - "contract-template-seed.js", - "contract-template-store.js", - "contract-template-types.js", - "contract-template-vars.js", - "contract-template-word-import.js", - "ContractTemplate.jsx", - "index.tsx", - "styles/contract-template.css", - "styles/index.css", - "styles/oneos-app.css", - "styles/oneos-tokens.css", - "trial-agreement-18t-document.js", - "trial-agreement-document.js", - "v266-lease-document.js", - "vehicle-binding-utils.js", - "VehicleBrandModelPicker.jsx" - ], - "changelog": [ - { - "version": "v1.10", - "date": "2026-07-13", - "time": "09:31", - "summary": "页面逻辑与交互:contract-template-docx-fidelity.js、contract-template-word-import.js", - "details": [], - "commit": "962e835", - "files": [ - "contract-template-docx-fidelity.js", - "contract-template-word-import.js" - ] - }, - { - "version": "v1.9", - "date": "2026-07-12", - "time": "22:44", - "summary": "页面逻辑与交互:ContractTemplate.jsx、contract-template-catalog.js、contract-template-vars.js、index.tsx", - "details": [ - "样式与布局:contract-template.css" - ], - "commit": "131b963", - "files": [ - "ContractTemplate.jsx", - "contract-template-catalog.js", - "contract-template-vars.js", - "index.tsx", - "styles/contract-template.css" - ] - }, - { - "version": "v1.8", - "date": "2026-07-09", - "time": "17:52", - "summary": "页面逻辑与交互:contract-template-store.js", - "details": [], - "commit": "6ccbbef", - "files": [ - "contract-template-store.js" - ] - }, - { - "version": "v1.7", - "date": "2026-07-08", - "time": "11:44", - "summary": "合同模板:Word 导入与 docx 预览,模板编辑增强", - "details": [ - "租赁台账增强", - "合同模板 Word 导入", - "统一全局分页与筛选规范。", - "页面逻辑与交互:ContractTemplate.jsx、contract-template-docx-fidelity.js、contract-template-section-headings.js、contract-template-seed.js 等", - "样式与布局:contract-template.css", - "需求说明与 PRD:prototype-review.md" - ], - "commit": "6d14c58", - "files": [ - ".spec/prototype-review.md", - "ContractTemplate.jsx", - "contract-template-docx-fidelity.js", - "contract-template-section-headings.js", - "contract-template-seed.js", - "contract-template-store.js", - "contract-template-types.js", - "contract-template-word-import.js", - "styles/contract-template.css" - ] - }, - { - "version": "v1.6", - "date": "2026-07-06", - "time": "17:18", - "summary": "页面逻辑与交互:contract-template-section-filter.js、contract-template-vars.js", - "details": [], - "commit": "d0d7458", - "files": [ - "contract-template-section-filter.js", - "contract-template-vars.js" - ] - }, - { - "version": "v1.5", - "date": "2026-07-01", - "time": "16:28", - "summary": "页面逻辑与交互:index.tsx", - "details": [], - "commit": "b9dee3a", - "files": [ - "index.tsx" - ] - }, - { - "version": "v1.4", - "date": "2026-07-01", - "time": "09:11", - "summary": "合同模板管理:模板数据层、章节编辑与品牌车型选择器", - "details": [ - "合同模板重构与租赁合同列表/表单增强", - "页面逻辑与交互:ContractTemplate.jsx、VehicleBrandModelPicker.jsx、contract-template-catalog.js、contract-template-section-filter.js 等", - "样式与布局:contract-template.css", - "需求说明与 PRD:prototype-review.md、ui-review.md" - ], - "commit": "2e0a3d7", - "files": [ - ".spec/prototype-review.md", - ".spec/ui-review.md", - "ContractTemplate.jsx", - "VehicleBrandModelPicker.jsx", - "contract-template-catalog.js", - "contract-template-section-filter.js", - "contract-template-section-html.js", - "contract-template-seed.js", - "contract-template-store.js", - "contract-template-types.js", - "index.tsx", - "styles/contract-template.css" - ] - }, - { - "version": "v1.3", - "date": "2026-06-30", - "time": "15:27", - "summary": "页面逻辑与交互:ContractTemplate.jsx、index.tsx、trial-agreement-18t-document.js、trial-agreement-document.js", - "details": [ - "样式与布局:contract-template.css" - ], - "commit": "af29b26", - "files": [ - "ContractTemplate.jsx", - "index.tsx", - "styles/contract-template.css", - "trial-agreement-18t-document.js", - "trial-agreement-document.js" - ] - }, - { - "version": "v1.2", - "date": "2026-06-26", - "time": "17:56", - "summary": "页面逻辑与交互:contract-template-vars.js", - "details": [], - "commit": "00ca184", - "files": [ - "contract-template-vars.js" - ] - }, - { - "version": "v1.1", - "date": "2026-06-26", - "time": "15:36", - "summary": "页面逻辑与交互:ContractTemplate.jsx、contract-template-vars.js、index.tsx、v266-lease-document.js", - "details": [ - "样式与布局:contract-template.css、index.css、oneos-app.css、oneos-tokens.css" - ], - "commit": "7ef8852", - "files": [ - "ContractTemplate.jsx", - "contract-template-vars.js", - "index.tsx", - "styles/contract-template.css", - "styles/index.css", - "styles/oneos-app.css", - "styles/oneos-tokens.css", - "v266-lease-document.js" - ] - } - ] - }, - "oneos-web-h2-station-site": { - "title": "站点信息", - "version": "v1.27", - "revision": 27, - "lastUpdated": "2026-07-17T09:43:57.245Z", - "contentHash": "8c53fc1d73b2a4b0310916569e6248b04e44b8ec3902a4f32c86e5a969a422fd", - "trackedFiles": [ - ".spec/dispenser-brand.md", - ".spec/period-end-balance.md", - ".spec/prototype-comments.json", - ".spec/prototype-review.md", - ".spec/requirements-prd-kpi-balance-alert.md", - ".spec/requirements-prd-list.md", - ".spec/requirements-prd-statement.md", - ".spec/requirements-prd.md", - ".spec/requirements.md", - ".spec/statement-verified-filter.md", - "index.tsx", - "pages/03-站点信息.jsx" - ], - "changelog": [ - { - "version": "v1.27", - "date": "2026-07-17", - "time": "17:43", - "summary": "更新需求说明与标注", - "files": [ - ".spec/dispenser-brand.md", - ".spec/period-end-balance.md", - ".spec/prototype-comments.json", - ".spec/prototype-review.md", - ".spec/requirements-prd-kpi-balance-alert.md", - ".spec/requirements-prd-list.md", - ".spec/requirements-prd-statement.md", - ".spec/requirements-prd.md", - ".spec/requirements.md", - ".spec/statement-verified-filter.md", - "index.tsx", - "pages/03-站点信息.jsx" - ] - }, - { - "version": "v1.26", - "date": "2026-07-17", - "time": "17:41", - "summary": "更新需求说明与标注", - "files": [ - ".spec/dispenser-brand.md", - ".spec/period-end-balance.md", - ".spec/prototype-comments.json", - ".spec/prototype-review.md", - ".spec/requirements-prd-kpi-balance-alert.md", - ".spec/requirements-prd-list.md", - ".spec/requirements-prd-statement.md", - ".spec/requirements-prd.md", - ".spec/requirements.md", - ".spec/statement-verified-filter.md", - "index.tsx", - "pages/03-站点信息.jsx" - ] - }, - { - "version": "v1.25", - "date": "2026-07-17", - "time": "17:41", - "summary": "更新需求说明与标注", - "files": [ - ".spec/dispenser-brand.md", - ".spec/period-end-balance.md", - ".spec/prototype-comments.json", - ".spec/prototype-review.md", - ".spec/requirements-prd-kpi-balance-alert.md", - ".spec/requirements-prd-list.md", - ".spec/requirements-prd-statement.md", - ".spec/requirements-prd.md", - ".spec/requirements.md", - ".spec/statement-verified-filter.md", - "index.tsx", - "pages/03-站点信息.jsx" - ] - }, - { - "version": "v1.24", - "date": "2026-07-17", - "time": "17:41", - "summary": "更新需求说明与标注", - "files": [ - ".spec/dispenser-brand.md", - ".spec/period-end-balance.md", - ".spec/prototype-comments.json", - ".spec/prototype-review.md", - ".spec/requirements-prd-kpi-balance-alert.md", - ".spec/requirements-prd-list.md", - ".spec/requirements-prd-statement.md", - ".spec/requirements-prd.md", - ".spec/requirements.md", - ".spec/statement-verified-filter.md", - "index.tsx", - "pages/03-站点信息.jsx" - ] - }, - { - "version": "v1.23", - "date": "2026-07-17", - "time": "17:40", - "summary": "更新需求说明与标注", - "files": [ - ".spec/dispenser-brand.md", - ".spec/period-end-balance.md", - ".spec/prototype-comments.json", - ".spec/prototype-review.md", - ".spec/requirements-prd-kpi-balance-alert.md", - ".spec/requirements-prd-list.md", - ".spec/requirements-prd-statement.md", - ".spec/requirements-prd.md", - ".spec/requirements.md", - ".spec/statement-verified-filter.md", - "index.tsx", - "pages/03-站点信息.jsx" - ] - }, - { - "version": "v1.22", - "date": "2026-07-17", - "time": "17:40", - "summary": "更新需求说明与标注", - "files": [ - ".spec/dispenser-brand.md", - ".spec/period-end-balance.md", - ".spec/prototype-comments.json", - ".spec/prototype-review.md", - ".spec/requirements-prd-kpi-balance-alert.md", - ".spec/requirements-prd-list.md", - ".spec/requirements-prd-statement.md", - ".spec/requirements-prd.md", - ".spec/requirements.md", - ".spec/statement-verified-filter.md", - "index.tsx", - "pages/03-站点信息.jsx" - ] - }, - { - "version": "v1.21", - "date": "2026-07-17", - "time": "17:39", - "summary": "更新需求说明与标注", - "files": [ - ".spec/dispenser-brand.md", - ".spec/period-end-balance.md", - ".spec/prototype-comments.json", - ".spec/prototype-review.md", - ".spec/requirements-prd-kpi-balance-alert.md", - ".spec/requirements-prd-list.md", - ".spec/requirements-prd-statement.md", - ".spec/requirements-prd.md", - ".spec/requirements.md", - ".spec/statement-verified-filter.md", - "index.tsx", - "pages/03-站点信息.jsx" - ] - }, - { - "version": "v1.20", - "date": "2026-07-17", - "time": "17:39", - "summary": "更新需求说明与标注", - "files": [ - ".spec/dispenser-brand.md", - ".spec/period-end-balance.md", - ".spec/prototype-comments.json", - ".spec/prototype-review.md", - ".spec/requirements-prd-kpi-balance-alert.md", - ".spec/requirements-prd-list.md", - ".spec/requirements-prd-statement.md", - ".spec/requirements-prd.md", - ".spec/requirements.md", - ".spec/statement-verified-filter.md", - "index.tsx", - "pages/03-站点信息.jsx" - ] - }, - { - "version": "v1.19", - "date": "2026-07-17", - "time": "17:38", - "summary": "更新需求说明与标注", - "files": [ - ".spec/dispenser-brand.md", - ".spec/period-end-balance.md", - ".spec/prototype-comments.json", - ".spec/prototype-review.md", - ".spec/requirements-prd-kpi-balance-alert.md", - ".spec/requirements-prd-list.md", - ".spec/requirements-prd-statement.md", - ".spec/requirements-prd.md", - ".spec/requirements.md", - ".spec/statement-verified-filter.md", - "index.tsx", - "pages/03-站点信息.jsx" - ] - }, - { - "version": "v1.18", - "date": "2026-07-17", - "time": "17:37", - "summary": "更新需求说明与标注", - "files": [ - ".spec/dispenser-brand.md", - ".spec/period-end-balance.md", - ".spec/prototype-comments.json", - ".spec/prototype-review.md", - ".spec/requirements-prd-kpi-balance-alert.md", - ".spec/requirements-prd-list.md", - ".spec/requirements-prd-statement.md", - ".spec/requirements-prd.md", - ".spec/requirements.md", - ".spec/statement-verified-filter.md", - "index.tsx", - "pages/03-站点信息.jsx" - ] - }, - { - "version": "v1.17", - "date": "2026-07-17", - "time": "17:37", - "summary": "对账单仅纳入已核对氢费明细", - "files": [ - ".spec/dispenser-brand.md", - ".spec/period-end-balance.md", - ".spec/prototype-comments.json", - ".spec/prototype-review.md", - ".spec/requirements-prd-kpi-balance-alert.md", - ".spec/requirements-prd-list.md", - ".spec/requirements-prd-statement.md", - ".spec/requirements-prd.md", - ".spec/requirements.md", - ".spec/statement-verified-filter.md", - "index.tsx", - "pages/03-站点信息.jsx" - ] - }, - { - "version": "v1.16", - "date": "2026-07-17", - "time": "17:37", - "summary": "更新需求说明与标注", - "files": [ - ".spec/dispenser-brand.md", - ".spec/period-end-balance.md", - ".spec/prototype-comments.json", - ".spec/prototype-review.md", - ".spec/requirements-prd-kpi-balance-alert.md", - ".spec/requirements-prd-list.md", - ".spec/requirements-prd-statement.md", - ".spec/requirements-prd.md", - ".spec/requirements.md", - ".spec/statement-verified-filter.md", - "index.tsx", - "pages/03-站点信息.jsx" - ] - }, - { - "version": "v1.15", - "date": "2026-07-17", - "time": "17:20", - "summary": "更新需求说明与标注", - "files": [ - ".spec/period-end-balance.md", - ".spec/prototype-comments.json", - ".spec/prototype-review.md", - ".spec/requirements-prd-kpi-balance-alert.md", - ".spec/requirements-prd-list.md", - ".spec/requirements-prd-statement.md", - ".spec/requirements-prd.md", - ".spec/requirements.md", - "index.tsx", - "pages/03-站点信息.jsx" - ] - }, - { - "version": "v1.14", - "date": "2026-07-17", - "time": "17:20", - "summary": "更新需求说明与标注", - "files": [ - ".spec/period-end-balance.md", - ".spec/prototype-comments.json", - ".spec/prototype-review.md", - ".spec/requirements-prd-kpi-balance-alert.md", - ".spec/requirements-prd-list.md", - ".spec/requirements-prd-statement.md", - ".spec/requirements-prd.md", - ".spec/requirements.md", - "index.tsx", - "pages/03-站点信息.jsx" - ] - }, - { - "version": "v1.13", - "date": "2026-07-17", - "time": "17:19", - "summary": "更新需求说明与标注", - "files": [ - ".spec/period-end-balance.md", - ".spec/prototype-comments.json", - ".spec/prototype-review.md", - ".spec/requirements-prd-kpi-balance-alert.md", - ".spec/requirements-prd-list.md", - ".spec/requirements-prd-statement.md", - ".spec/requirements-prd.md", - ".spec/requirements.md", - "index.tsx", - "pages/03-站点信息.jsx" - ] - }, - { - "version": "v1.12", - "date": "2026-07-17", - "time": "16:27", - "summary": "更新需求说明与标注", - "files": [ - ".spec/period-end-balance.md", - ".spec/prototype-comments.json", - ".spec/prototype-review.md", - ".spec/requirements-prd-kpi-balance-alert.md", - ".spec/requirements-prd-list.md", - ".spec/requirements-prd-statement.md", - ".spec/requirements-prd.md", - ".spec/requirements.md", - "index.tsx", - "pages/03-站点信息.jsx" - ] - }, - { - "version": "v1.11", - "date": "2026-07-17", - "time": "16:27", - "summary": "更新需求说明与标注", - "files": [ - ".spec/period-end-balance.md", - ".spec/prototype-comments.json", - ".spec/prototype-review.md", - ".spec/requirements-prd-kpi-balance-alert.md", - ".spec/requirements-prd-list.md", - ".spec/requirements-prd-statement.md", - ".spec/requirements-prd.md", - ".spec/requirements.md", - "index.tsx", - "pages/03-站点信息.jsx" - ] - }, - { - "version": "v1.10", - "date": "2026-07-17", - "time": "16:26", - "summary": "更新需求说明与标注", - "files": [ - ".spec/period-end-balance.md", - ".spec/prototype-comments.json", - ".spec/prototype-review.md", - ".spec/requirements-prd-kpi-balance-alert.md", - ".spec/requirements-prd-list.md", - ".spec/requirements-prd-statement.md", - ".spec/requirements-prd.md", - ".spec/requirements.md", - "index.tsx", - "pages/03-站点信息.jsx" - ] - }, - { - "version": "v1.9", - "date": "2026-07-17", - "time": "16:26", - "summary": "更新需求说明与标注", - "files": [ - ".spec/period-end-balance.md", - ".spec/prototype-comments.json", - ".spec/prototype-review.md", - ".spec/requirements-prd-kpi-balance-alert.md", - ".spec/requirements-prd-list.md", - ".spec/requirements-prd-statement.md", - ".spec/requirements-prd.md", - ".spec/requirements.md", - "index.tsx", - "pages/03-站点信息.jsx" - ] - }, - { - "version": "v1.8", - "date": "2026-07-17", - "time": "16:26", - "summary": "更新需求说明与标注", - "files": [ - ".spec/period-end-balance.md", - ".spec/prototype-comments.json", - ".spec/prototype-review.md", - ".spec/requirements-prd-kpi-balance-alert.md", - ".spec/requirements-prd-list.md", - ".spec/requirements-prd-statement.md", - ".spec/requirements-prd.md", - ".spec/requirements.md", - "index.tsx", - "pages/03-站点信息.jsx" - ] - }, - { - "version": "v1.7", - "date": "2026-07-17", - "time": "16:25", - "summary": "更新需求说明与标注", - "files": [ - ".spec/period-end-balance.md", - ".spec/prototype-comments.json", - ".spec/prototype-review.md", - ".spec/requirements-prd-kpi-balance-alert.md", - ".spec/requirements-prd-list.md", - ".spec/requirements-prd-statement.md", - ".spec/requirements-prd.md", - ".spec/requirements.md", - "index.tsx", - "pages/03-站点信息.jsx" - ] - }, - { - "version": "v1.6", - "date": "2026-07-17", - "time": "16:10", - "summary": "手工台账与预约列表", - "details": [ - "导入主键与实收规则", - "并同步站点信息拆分与导航。", - "页面逻辑与交互:index.tsx", - "需求说明与 PRD:period-end-balance.md、prototype-review.md、requirements-prd-kpi-balance-alert.md、requirements-prd-list.md、requirements-prd.md" - ], - "commit": "305199c", - "files": [ - ".spec/period-end-balance.md", - ".spec/prototype-review.md", - ".spec/requirements-prd-kpi-balance-alert.md", - ".spec/requirements-prd-list.md", - ".spec/requirements-prd.md", - "index.tsx" - ] - }, - { - "version": "v1.5", - "date": "2026-07-16", - "time": "09:00", - "summary": "需求说明与 PRD:requirements-prd-list.md、requirements-prd.md、requirements.md", - "details": [], - "commit": "47c223a", - "files": [ - ".spec/requirements-prd-list.md", - ".spec/requirements-prd.md", - ".spec/requirements.md" - ] - }, - { - "version": "v1.4", - "date": "2026-07-12", - "time": "22:44", - "summary": "页面逻辑与交互:index.tsx", - "details": [], - "commit": "131b963", - "files": [ - "index.tsx" - ] - }, - { - "version": "v1.3", - "date": "2026-07-09", - "time": "17:52", - "summary": "需求说明与 PRD:requirements-prd-statement.md、requirements-prd.md", - "details": [], - "commit": "6ccbbef", - "files": [ - ".spec/requirements-prd-statement.md", - ".spec/requirements-prd.md" - ] - }, - { - "version": "v1.2", - "date": "2026-07-08", - "time": "11:44", - "summary": "需求说明与 PRD:requirements-prd-kpi-balance-alert.md、requirements-prd-list.md、requirements-prd.md、requirements.md", - "details": [], - "commit": "6d14c58", - "files": [ - ".spec/requirements-prd-kpi-balance-alert.md", - ".spec/requirements-prd-list.md", - ".spec/requirements-prd.md", - ".spec/requirements.md" - ] - }, - { - "version": "v1.1", - "date": "2026-07-02", - "time": "03:35", - "summary": "加氢站:新增站点信息独立原型,订单/记录页与共享样式调整", - "details": [ - "页面逻辑与交互:index.tsx", - "需求说明与 PRD:prototype-review.md、requirements-prd-list.md、requirements-prd-statement.md、requirements-prd.md、requirements.md" - ], - "commit": "f5e3126", - "files": [ - ".spec/prototype-review.md", - ".spec/requirements-prd-list.md", - ".spec/requirements-prd-statement.md", - ".spec/requirements-prd.md", - ".spec/requirements.md", - "index.tsx" - ] - } - ] - }, - "business-dept-ledger": { - "title": "项目盈亏情况", - "version": "v1.4", - "revision": 4, - "lastUpdated": "2026-07-16T01:00:00.000Z", - "contentHash": "1ce9dec54d87077121a3bffb40114f1e504af1bfd9277a493e50ad1cd47a273f", - "trackedFiles": [ - ".spec/prototype-comments.json", - "data/excel-2026-seed.json", - "index.tsx", - "styles/index.css" - ], - "changelog": [ - { - "version": "v1.4", - "date": "2026-07-16", - "time": "09:00", - "summary": "样式与布局:index.css", - "details": [], - "commit": "47c223a", - "files": [ - "styles/index.css" - ] - }, - { - "version": "v1.3", - "date": "2026-07-12", - "time": "22:44", - "summary": "样式与布局:index.css", - "details": [], - "commit": "131b963", - "files": [ - "styles/index.css" - ] - }, - { - "version": "v1.2", - "date": "2026-07-09", - "time": "17:52", - "summary": "页面逻辑与交互:index.tsx", - "details": [ - "样式与布局:index.css", - "演示数据与配置:excel-2026-seed.json" - ], - "commit": "6ccbbef", - "files": [ - "data/excel-2026-seed.json", - "index.tsx", - "styles/index.css" - ] - }, - { - "version": "v1.1", - "date": "2026-07-06", - "time": "17:18", - "summary": "页面逻辑与交互:index.tsx", - "details": [], - "commit": "d0d7458", - "files": [ - "index.tsx" - ] - } - ] - }, - "lease-business-ledger": { - "title": "租赁业务台账", + "ledger-shared": { + "title": "ledger-shared", "version": "v1.6", "revision": 6, - "lastUpdated": "2026-07-12T14:44:00.000Z", - "contentHash": "ab4c832a35d0908a485c165230822f87c822558c012c6ec838ace2b58e7c86a3", - "trackedFiles": [ - ".spec/prototype-comments.json", - ".spec/requirements-prd.md", - "columnHeaderTips.ts", - "components/AccidentLinkModal.tsx", - "components/ConfirmMarkModal.tsx", - "components/DeleteConfirmModal.tsx", - "components/FilterPanel.tsx", - "components/LeaseLedgerImportModal.tsx", - "components/LeaseLedgerTable.tsx", - "components/LedgerDetailPopover.tsx", - "components/LedgerKpiRow.tsx", - "components/LedgerLineItemsCell.tsx", - "components/MaintenanceLinkModal.tsx", - "components/OperationHistoryModal.tsx", - "components/ReceiptLinkModal.tsx", - "components/tableColumns.ts", - "data/accident-records.json", - "data/bi-mileage.json", - "data/hydrogen-fees.json", - "data/maintenance-ledger-records.json", - "data/maintenance-orders.json", - "data/receipts.json", - "data/return-settlement-fees.json", - "data/rows.json", - "index.tsx", - "styles/index.css", - "types.ts", - "utils/constants.ts", - "utils/ledger-batch-import.ts", - "utils/ledger.ts" - ], - "changelog": [ - { - "version": "v1.6", - "date": "2026-07-12", - "time": "22:44", - "summary": "页面逻辑与交互:AccidentLinkModal.tsx、ConfirmMarkModal.tsx、DeleteConfirmModal.tsx、FilterPanel.tsx 等", - "details": [], - "commit": "131b963", - "files": [ - "components/AccidentLinkModal.tsx", - "components/ConfirmMarkModal.tsx", - "components/DeleteConfirmModal.tsx", - "components/FilterPanel.tsx", - "components/LeaseLedgerImportModal.tsx", - "components/LeaseLedgerTable.tsx", - "components/LedgerLineItemsCell.tsx", - "components/MaintenanceLinkModal.tsx", - "components/OperationHistoryModal.tsx", - "components/ReceiptLinkModal.tsx", - "index.tsx" - ] - }, - { - "version": "v1.5", - "date": "2026-07-09", - "time": "17:52", - "summary": "页面逻辑与交互:index.tsx", - "details": [], - "commit": "6ccbbef", - "files": [ - "index.tsx" - ] - }, - { - "version": "v1.4", - "date": "2026-07-08", - "time": "11:44", - "summary": "租赁业务台账:运维费汇总、明细钻取弹层、其他收入/减免批量导入", - "details": [ - "页面逻辑与交互:columnHeaderTips.ts、AccidentLinkModal.tsx、FilterPanel.tsx、LeaseLedgerImportModal.tsx 等", - "样式与布局:index.css", - "演示数据与配置:maintenance-ledger-records.json、return-settlement-fees.json、rows.json" - ], - "commit": "6d14c58", - "files": [ - "columnHeaderTips.ts", - "components/AccidentLinkModal.tsx", - "components/FilterPanel.tsx", - "components/LeaseLedgerImportModal.tsx", - "components/LeaseLedgerTable.tsx", - "components/LedgerDetailPopover.tsx", - "components/LedgerLineItemsCell.tsx", - "components/MaintenanceLinkModal.tsx", - "components/ReceiptLinkModal.tsx", - "components/tableColumns.ts", - "data/maintenance-ledger-records.json", - "data/return-settlement-fees.json" - ] - }, - { - "version": "v1.3", - "date": "2026-07-06", - "time": "17:18", - "summary": "租赁业务台账:字段计算、宽表交互、标注 PRD 与表头说明修复", - "details": [ - "页面逻辑与交互:columnHeaderTips.ts、DeleteConfirmModal.tsx、FilterPanel.tsx、LeaseLedgerTable.tsx 等", - "样式与布局:index.css", - "需求说明与 PRD:requirements-prd.md", - "演示数据与配置:hydrogen-fees.json、maintenance-orders.json、receipts.json、rows.json" - ], - "commit": "d0d7458", - "files": [ - ".spec/requirements-prd.md", - "columnHeaderTips.ts", - "components/DeleteConfirmModal.tsx", - "components/FilterPanel.tsx", - "components/LeaseLedgerTable.tsx", - "components/LedgerDetailPopover.tsx", - "components/LedgerLineItemsCell.tsx", - "components/OperationHistoryModal.tsx", - "components/ReceiptLinkModal.tsx", - "components/tableColumns.ts", - "data/hydrogen-fees.json", - "data/maintenance-orders.json" - ] - }, - { - "version": "v1.2", - "date": "2026-07-02", - "time": "03:35", - "summary": "租赁业务台账:空值留白、排序/列宽拖拽、操作列与交互优化", - "details": [ - "页面逻辑与交互:DeleteConfirmModal.tsx、FilterPanel.tsx、LeaseLedgerTable.tsx、tableColumns.ts 等", - "样式与布局:index.css" - ], - "commit": "f5e3126", - "files": [ - "components/DeleteConfirmModal.tsx", - "components/FilterPanel.tsx", - "components/LeaseLedgerTable.tsx", - "components/tableColumns.ts", - "index.tsx", - "styles/index.css", - "utils/ledger.ts" - ] - }, - { - "version": "v1.1", - "date": "2026-06-30", - "time": "15:27", - "summary": "页面逻辑与交互:AccidentLinkModal.tsx、ConfirmMarkModal.tsx、FilterPanel.tsx、LeaseLedgerTable.tsx 等", - "details": [ - "样式与布局:index.css", - "需求说明与 PRD:requirements-prd.md", - "演示数据与配置:accident-records.json、bi-mileage.json、hydrogen-fees.json、maintenance-orders.json、receipts.json、rows.json" - ], - "commit": "af29b26", - "files": [ - ".spec/requirements-prd.md", - "components/AccidentLinkModal.tsx", - "components/ConfirmMarkModal.tsx", - "components/FilterPanel.tsx", - "components/LeaseLedgerTable.tsx", - "components/LedgerKpiRow.tsx", - "components/MaintenanceLinkModal.tsx", - "components/ReceiptLinkModal.tsx", - "components/tableColumns.ts", - "data/accident-records.json", - "data/bi-mileage.json", - "data/hydrogen-fees.json" - ] - } - ] - }, - "lease-business-detail": { - "title": "租赁业务明细", - "version": "v1.5", - "revision": 5, - "lastUpdated": "2026-07-17T08:10:00.000Z", - "contentHash": "5dea68ab4a234edc3f7e76ac58eb2e2e8baaafe0150ff622a35ef1bae14e49ce", - "trackedFiles": [ - ".spec/field-checks.md", - ".spec/import-rules.md", - ".spec/prototype-comments.json", - ".spec/prototype-review.md", - ".spec/requirements-prd.md", - "columnHeaderTips.ts", - "components/DetailChangeLogModal.tsx", - "components/DetailDeleteConfirmModal.tsx", - "components/DetailEditModal.tsx", - "components/DetailImportModal.tsx", - "components/DetailKpiRow.tsx", - "components/DetailMainTabs.tsx", - "components/DetailTable.tsx", - "components/FieldCheckIcon.tsx", - "components/FilterPanel.tsx", - "components/MonthlyPlTab.tsx", - "components/tableColumns.ts", - "components/TableHeaderTip.tsx", - "data/change-log-seed.json", - "data/hydrogen-refuel-records.json", - "data/rows.json", - "index.tsx", - "styles/index.css", - "types.ts", - "utils/batch-io.ts", - "utils/calc-detail.ts", - "utils/change-log.ts", - "utils/detail.ts", - "utils/edit-fields.ts", - "utils/field-checks.ts", - "utils/hydrogen-fee.ts", - "utils/import-merge.ts", - "utils/monthly-pl.ts", - "utils/payment-status.ts", - "utils/role.ts", - "utils/row-key.ts", - "utils/system-ref.ts", - "utils/validate-detail.ts" - ], - "changelog": [ - { - "version": "v1.5", - "date": "2026-07-17", - "time": "16:10", - "summary": "页面逻辑与交互:DetailEditModal.tsx、DetailImportModal.tsx、batch-io.ts、import-merge.ts 等", - "details": [ - "需求说明与 PRD:import-rules.md、prototype-review.md、requirements-prd.md" - ], - "commit": "305199c", - "files": [ - ".spec/import-rules.md", - ".spec/prototype-review.md", - ".spec/requirements-prd.md", - "components/DetailEditModal.tsx", - "components/DetailImportModal.tsx", - "utils/batch-io.ts", - "utils/import-merge.ts", - "utils/row-key.ts", - "utils/validate-detail.ts" - ] - }, - { - "version": "v1.4", - "date": "2026-07-16", - "time": "09:00", - "summary": "页面逻辑与交互:columnHeaderTips.ts、DetailEditModal.tsx、DetailImportModal.tsx、DetailMainTabs.tsx 等", - "details": [ - "样式与布局:index.css", - "需求说明与 PRD:field-checks.md、prototype-review.md、requirements-prd.md", - "演示数据与配置:change-log-seed.json" - ], - "commit": "47c223a", - "files": [ - ".spec/field-checks.md", - ".spec/prototype-review.md", - ".spec/requirements-prd.md", - "columnHeaderTips.ts", - "components/DetailEditModal.tsx", - "components/DetailImportModal.tsx", - "components/DetailMainTabs.tsx", - "components/DetailTable.tsx", - "components/FilterPanel.tsx", - "components/MonthlyPlTab.tsx", - "components/tableColumns.ts", - "data/change-log-seed.json" - ] - }, - { - "version": "v1.3", - "date": "2026-07-13", - "time": "09:31", - "summary": "需求说明与 PRD:requirements-prd.md", - "details": [], - "commit": "962e835", - "files": [ - ".spec/requirements-prd.md" - ] - }, - { - "version": "v1.2", - "date": "2026-07-12", - "time": "22:44", - "summary": "页面逻辑与交互:columnHeaderTips.ts、DetailChangeLogModal.tsx、DetailDeleteConfirmModal.tsx、DetailEditModal.tsx 等", - "details": [ - "样式与布局:index.css", - "需求说明与 PRD:requirements-prd.md", - "演示数据与配置:change-log-seed.json、hydrogen-refuel-records.json" - ], - "commit": "131b963", - "files": [ - ".spec/requirements-prd.md", - "columnHeaderTips.ts", - "components/DetailChangeLogModal.tsx", - "components/DetailDeleteConfirmModal.tsx", - "components/DetailEditModal.tsx", - "components/DetailImportModal.tsx", - "components/DetailTable.tsx", - "components/FieldCheckIcon.tsx", - "components/FilterPanel.tsx", - "components/TableHeaderTip.tsx", - "components/tableColumns.ts", - "data/change-log-seed.json" - ] - }, - { - "version": "v1.1", - "date": "2026-07-09", - "time": "17:52", - "summary": "页面逻辑与交互:DetailImportModal.tsx、DetailKpiRow.tsx、DetailTable.tsx、FilterPanel.tsx 等", - "details": [ - "样式与布局:index.css", - "需求说明与 PRD:prototype-review.md", - "演示数据与配置:rows.json" - ], - "commit": "6ccbbef", - "files": [ - ".spec/prototype-review.md", - "components/DetailImportModal.tsx", - "components/DetailKpiRow.tsx", - "components/DetailTable.tsx", - "components/FilterPanel.tsx", - "components/tableColumns.ts", - "data/rows.json", - "index.tsx", - "styles/index.css", - "types.ts", - "utils/batch-io.ts", - "utils/calc-detail.ts" - ] - } - ] - }, - "self-operated-business-ledger": { - "title": "物流业务明细", - "version": "v1.6", - "revision": 6, - "lastUpdated": "2026-07-16T01:00:00.000Z", - "contentHash": "f6a4e1450eaa01e07f5c52ee449b6b7f6c535f74f5e2d981f1691563939a4bba", - "trackedFiles": [ - ".spec/prototype-comments.json", - ".spec/requirements-prd.md", - "components/CalcFormulaTip.tsx", - "components/FilterPanel.tsx", - "components/LedgerKpiRow.tsx", - "components/PlateMultiSelectField.tsx", - "components/SelfImportModal.tsx", - "components/SelfLedgerTable.tsx", - "components/tableColumns.ts", - "data/rows.json", - "index.tsx", - "styles/index.css", - "types.ts", - "utils/batch-io.ts", - "utils/calc-row.ts", - "utils/ledger.ts", - "utils/vehicle-ref.ts" - ], - "changelog": [ - { - "version": "v1.6", - "date": "2026-07-16", - "time": "09:00", - "summary": "页面逻辑与交互:CalcFormulaTip.tsx、FilterPanel.tsx、PlateMultiSelectField.tsx、SelfLedgerTable.tsx 等", - "details": [ - "样式与布局:index.css", - "需求说明与 PRD:requirements-prd.md" - ], - "commit": "47c223a", - "files": [ - ".spec/requirements-prd.md", - "components/CalcFormulaTip.tsx", - "components/FilterPanel.tsx", - "components/PlateMultiSelectField.tsx", - "components/SelfLedgerTable.tsx", - "styles/index.css", - "utils/ledger.ts" - ] - }, - { - "version": "v1.5", - "date": "2026-07-12", - "time": "22:44", - "summary": "页面逻辑与交互:FilterPanel.tsx、LedgerKpiRow.tsx、SelfImportModal.tsx、SelfLedgerTable.tsx 等", - "details": [ - "样式与布局:index.css", - "演示数据与配置:rows.json" - ], - "commit": "131b963", - "files": [ - "components/FilterPanel.tsx", - "components/LedgerKpiRow.tsx", - "components/SelfImportModal.tsx", - "components/SelfLedgerTable.tsx", - "components/tableColumns.ts", - "data/rows.json", - "index.tsx", - "styles/index.css", - "types.ts", - "utils/batch-io.ts", - "utils/calc-row.ts", - "utils/ledger.ts" - ] - }, - { - "version": "v1.4", - "date": "2026-07-09", - "time": "17:52", - "summary": "页面逻辑与交互:index.tsx", - "details": [], - "commit": "6ccbbef", - "files": [ - "index.tsx" - ] - }, - { - "version": "v1.3", - "date": "2026-07-08", - "time": "11:44", - "summary": "页面逻辑与交互:FilterPanel.tsx、SelfLedgerTable.tsx、index.tsx", - "details": [], - "commit": "6d14c58", - "files": [ - "components/FilterPanel.tsx", - "components/SelfLedgerTable.tsx", - "index.tsx" - ] - }, - { - "version": "v1.2", - "date": "2026-07-06", - "time": "17:18", - "summary": "页面逻辑与交互:FilterPanel.tsx、SelfLedgerTable.tsx、tableColumns.ts、index.tsx 等", - "details": [ - "样式与布局:index.css", - "需求说明与 PRD:requirements-prd.md" - ], - "commit": "d0d7458", - "files": [ - ".spec/requirements-prd.md", - "components/FilterPanel.tsx", - "components/SelfLedgerTable.tsx", - "components/tableColumns.ts", - "index.tsx", - "styles/index.css", - "utils/ledger.ts" - ] - }, - { - "version": "v1.1", - "date": "2026-06-30", - "time": "15:27", - "summary": "页面逻辑与交互:FilterPanel.tsx、LedgerKpiRow.tsx、SelfLedgerTable.tsx、index.tsx 等", - "details": [ - "样式与布局:index.css", - "需求说明与 PRD:requirements-prd.md", - "演示数据与配置:rows.json" - ], - "commit": "af29b26", - "files": [ - ".spec/requirements-prd.md", - "components/FilterPanel.tsx", - "components/LedgerKpiRow.tsx", - "components/SelfLedgerTable.tsx", - "data/rows.json", - "index.tsx", - "styles/index.css", - "types.ts", - "utils/ledger.ts" - ] - } - ] - }, - "vehicle-h2-fee-ledger": { - "title": "车辆氢费明细", - "version": "v1.18", - "revision": 18, "lastUpdated": "2026-07-18T04:30:15.800Z", - "contentHash": "7d8df9ed52511e05498e4e3fb14e4343757505c96688df7df9498ca6157d6e95", + "contentHash": "cc964f24cd8ed59fec05c5f52ddee558bdceeae54b03f272d9f2364788cfd42e", "trackedFiles": [ - ".spec/PRD.md", - ".spec/prototype-comments.json", - ".spec/verify-reconcile.md", - "globals.ts", - "H2LedgerPage.jsx", - "index.tsx" + "DESIGN.md", + "styles/ledger-page.css" ], "changelog": [ { - "version": "v1.18", + "version": "v1.6", "date": "2026-07-18", "time": "12:30", - "summary": "车辆氢费明细:来源标签、核对人/对账人与行级变更日志", + "summary": "台账共享样式微调,对齐筛选与列表密度", "files": [ - ".spec/PRD.md", - ".spec/prototype-comments.json", - ".spec/verify-reconcile.md", - "globals.ts", - "H2LedgerPage.jsx", - "index.tsx" + "DESIGN.md", + "styles/ledger-page.css" ], "details": [ - "车牌下方标注站端上传/羚牛上传", - "完成核对写入核对人;对账单提交写入对账人", - "变更日志同步行级 changeLogs,弹窗展示时间/操作人/修改项/原值/新值" - ] - }, - { - "version": "v1.17", - "date": "2026-07-18", - "time": "11:44", - "summary": "更新需求说明与标注", - "files": [ - ".spec/PRD.md", - ".spec/prototype-comments.json", - ".spec/verify-reconcile.md", - "globals.ts", - "H2LedgerPage.jsx", - "index.tsx" - ] - }, - { - "version": "v1.16", - "date": "2026-07-18", - "time": "11:44", - "summary": "更新需求说明与标注", - "files": [ - ".spec/PRD.md", - ".spec/prototype-comments.json", - ".spec/verify-reconcile.md", - "globals.ts", - "H2LedgerPage.jsx", - "index.tsx" - ] - }, - { - "version": "v1.15", - "date": "2026-07-18", - "time": "11:43", - "summary": "更新需求说明与标注", - "files": [ - ".spec/PRD.md", - ".spec/prototype-comments.json", - ".spec/verify-reconcile.md", - "globals.ts", - "H2LedgerPage.jsx", - "index.tsx" - ] - }, - { - "version": "v1.14", - "date": "2026-07-18", - "time": "11:43", - "summary": "更新需求说明与标注", - "files": [ - ".spec/PRD.md", - ".spec/prototype-comments.json", - ".spec/verify-reconcile.md", - "globals.ts", - "H2LedgerPage.jsx", - "index.tsx" - ] - }, - { - "version": "v1.13", - "date": "2026-07-18", - "time": "11:43", - "summary": "更新需求说明与标注", - "files": [ - ".spec/PRD.md", - ".spec/prototype-comments.json", - ".spec/verify-reconcile.md", - "globals.ts", - "H2LedgerPage.jsx", - "index.tsx" - ] - }, - { - "version": "v1.12", - "date": "2026-07-18", - "time": "11:43", - "summary": "更新需求说明与标注", - "files": [ - ".spec/PRD.md", - ".spec/prototype-comments.json", - ".spec/verify-reconcile.md", - "globals.ts", - "H2LedgerPage.jsx", - "index.tsx" - ] - }, - { - "version": "v1.11", - "date": "2026-07-18", - "time": "11:42", - "summary": "更新需求说明与标注", - "files": [ - ".spec/PRD.md", - ".spec/prototype-comments.json", - ".spec/verify-reconcile.md", - "globals.ts", - "H2LedgerPage.jsx", - "index.tsx" - ] - }, - { - "version": "v1.10", - "date": "2026-07-18", - "time": "11:42", - "summary": "更新需求说明与标注", - "files": [ - ".spec/PRD.md", - ".spec/prototype-comments.json", - ".spec/verify-reconcile.md", - "globals.ts", - "H2LedgerPage.jsx", - "index.tsx" - ] - }, - { - "version": "v1.9", - "date": "2026-07-18", - "time": "11:42", - "summary": "更新需求说明与标注", - "files": [ - ".spec/PRD.md", - ".spec/prototype-comments.json", - ".spec/verify-reconcile.md", - "globals.ts", - "H2LedgerPage.jsx", - "index.tsx" - ] - }, - { - "version": "v1.8", - "date": "2026-07-18", - "time": "11:42", - "summary": "更新需求说明与标注", - "files": [ - ".spec/PRD.md", - ".spec/prototype-comments.json", - ".spec/verify-reconcile.md", - "globals.ts", - "H2LedgerPage.jsx", - "index.tsx" - ] - }, - { - "version": "v1.7", - "date": "2026-07-18", - "time": "11:42", - "summary": "更新需求说明与标注", - "files": [ - ".spec/PRD.md", - ".spec/prototype-comments.json", - ".spec/verify-reconcile.md", - "globals.ts", - "H2LedgerPage.jsx", - "index.tsx" - ] - }, - { - "version": "v1.6", - "date": "2026-07-17", - "time": "16:10", - "summary": "页面逻辑与交互:H2LedgerPage.jsx", - "details": [ - "需求说明与 PRD:PRD.md、verify-reconcile.md" - ], - "commit": "305199c", - "files": [ - ".spec/PRD.md", - ".spec/verify-reconcile.md", - "H2LedgerPage.jsx" + "ledger-page.css 小幅样式调整" ] }, { "version": "v1.5", - "date": "2026-07-12", - "time": "22:44", - "summary": "页面逻辑与交互:H2LedgerPage.jsx、index.tsx", - "details": [], - "commit": "131b963", + "date": "2026-07-16", + "time": "09:00", + "summary": "迭代 ONE-OS 多原型:加氢记录/订单同源对账、租赁明细校验与月度损益、车辆与台账增强;新增客户回款与加氢站统计;补齐业务逻辑与对象存储发布规范,同步原型导航。", + "details": [ + "变更 1 个文件" + ], + "commit": "47c223a", "files": [ - "H2LedgerPage.jsx", - "index.tsx" + "DESIGN.md" ] }, { "version": "v1.4", - "date": "2026-07-09", - "time": "18:34", - "summary": "车辆氢费明细标注目录同步至 v1.5。", - "details": [], - "commit": "824512a", - "files": [] + "date": "2026-07-12", + "time": "22:44", + "summary": "迭代 ONE-OS 多原型:统一标注壳与操作规范,租赁明细/合同/提车应收款增强,新增任务工单,同步导航与合包页面。", + "details": [ + "变更 1 个文件" + ], + "commit": "131b963", + "files": [ + "DESIGN.md" + ] }, { "version": "v1.3", "date": "2026-07-09", "time": "17:52", - "summary": "车辆氢费明细成本单价校验增强", + "summary": "迭代 ONE-OS 多原型:原型导航与版本追踪上线;车辆氢费明细成本单价校验增强;多业务台账/财务/工作台页面迭代与标注目录同步。", "details": [ - "页面逻辑与交互:H2LedgerPage.jsx", - "需求说明与 PRD:PRD.md" + "变更 1 个文件" ], "commit": "6ccbbef", "files": [ - ".spec/PRD.md", - "H2LedgerPage.jsx" - ] - }, - { - "version": "v1.2", - "date": "2026-07-02", - "time": "03:35", - "summary": "车辆氢费明细对接 h2VehicleLedgerBridge;移除 vehicle-management-clay", - "details": [ - "页面逻辑与交互:H2LedgerPage.jsx、globals.ts" - ], - "commit": "f5e3126", - "files": [ - "H2LedgerPage.jsx", - "globals.ts" - ] - }, - { - "version": "v1.1", - "date": "2026-06-30", - "time": "15:27", - "summary": "Add vehicle-h2-fee-ledger, customer-management, lease and self-operated ledgers, annotation sources, agent skills, and vite annotation runtime support. Update vehicle management, contract templates, and lease contract flows.", - "details": [ - "页面逻辑与交互:H2LedgerPage.jsx、globals.ts、index.tsx" - ], - "commit": "af29b26", - "files": [ - "H2LedgerPage.jsx", - "globals.ts", - "index.tsx" - ] - } - ] - }, - "vehicle-maintenance-ledger": { - "title": "维修保养台账", - "version": "v1.2", - "revision": 2, - "lastUpdated": "2026-07-12T14:44:00.000Z", - "contentHash": "47e529bd55e41108198a630ab148a354ddd72e92f732cf62183243936f833197", - "trackedFiles": [ - ".spec/prototype-comments.json", - ".spec/requirements-prd.md", - "globals.ts", - "index.tsx", - "MaintenanceLedgerPage.jsx", - "styles/index.css" - ], - "changelog": [ - { - "version": "v1.2", - "date": "2026-07-12", - "time": "22:44", - "summary": "页面逻辑与交互:MaintenanceLedgerPage.jsx、index.tsx", - "details": [], - "commit": "131b963", - "files": [ - "MaintenanceLedgerPage.jsx", - "index.tsx" - ] - }, - { - "version": "v1.1", - "date": "2026-07-08", - "time": "11:44", - "summary": "页面逻辑与交互:MaintenanceLedgerPage.jsx、globals.ts、index.tsx", - "details": [ - "样式与布局:index.css", - "需求说明与 PRD:requirements-prd.md" - ], - "commit": "6d14c58", - "files": [ - ".spec/requirements-prd.md", - "MaintenanceLedgerPage.jsx", - "globals.ts", - "index.tsx", - "styles/index.css" - ] - } - ] - }, - "payment-records": { - "title": "收款记录", - "version": "v1.3", - "revision": 3, - "lastUpdated": "2026-07-12T14:44:00.000Z", - "contentHash": "c6edcdbf2d5a6fd861d2a17324d57822a1a7faf75237f75a9ae3d126826f9e09", - "trackedFiles": [ - ".spec/prototype-comments.json", - "components/AddPaymentModal.tsx", - "components/BillLinkModal.tsx", - "components/FilterPanel.tsx", - "components/LinkedBillsNestedTable.tsx", - "components/PaymentKpiDetailFilterBar.tsx", - "components/PaymentKpiDetailModal.tsx", - "components/PaymentRecordsTable.tsx", - "data/bills.json", - "data/records.json", - "index.tsx", - "styles/index.css", - "types.ts", - "utils/payment.ts" - ], - "changelog": [ - { - "version": "v1.3", - "date": "2026-07-12", - "time": "22:44", - "summary": "页面逻辑与交互:FilterPanel.tsx、PaymentKpiDetailFilterBar.tsx、PaymentKpiDetailModal.tsx、PaymentRecordsTable.tsx 等", - "details": [], - "commit": "131b963", - "files": [ - "components/FilterPanel.tsx", - "components/PaymentKpiDetailFilterBar.tsx", - "components/PaymentKpiDetailModal.tsx", - "components/PaymentRecordsTable.tsx", - "index.tsx", - "utils/payment.ts" + "DESIGN.md" ] }, { "version": "v1.2", "date": "2026-07-08", "time": "11:44", - "summary": "新增车辆维修明细、还车应结款原型;车辆管理、收款记录、工作台、加氢站等同步对齐", - "details": [ - "页面逻辑与交互:AddPaymentModal.tsx、BillLinkModal.tsx、FilterPanel.tsx、PaymentKpiDetailModal.tsx 等", - "样式与布局:index.css", - "演示数据与配置:records.json" - ], + "summary": "样式与布局:ledger-page.css", + "details": [], "commit": "6d14c58", "files": [ - "components/AddPaymentModal.tsx", - "components/BillLinkModal.tsx", - "components/FilterPanel.tsx", - "components/PaymentKpiDetailModal.tsx", - "components/PaymentRecordsTable.tsx", - "data/records.json", - "index.tsx", - "styles/index.css", - "types.ts", - "utils/payment.ts" + "DESIGN.md", + "styles/ledger-page.css" ] }, { @@ -2664,21 +1361,490 @@ "time": "17:18", "summary": "新增业务部台账、收款记录、业务条线说明及 ledger-shared / vm-shared 公共壳层", "details": [ - "页面逻辑与交互:AddPaymentModal.tsx、BillLinkModal.tsx、FilterPanel.tsx、LinkedBillsNestedTable.tsx 等", - "样式与布局:index.css", - "演示数据与配置:bills.json、records.json" + "样式与布局:ledger-page.css" ], "commit": "d0d7458", "files": [ - "components/AddPaymentModal.tsx", - "components/BillLinkModal.tsx", - "components/FilterPanel.tsx", - "components/LinkedBillsNestedTable.tsx", - "components/PaymentKpiDetailFilterBar.tsx", - "components/PaymentKpiDetailModal.tsx", - "components/PaymentRecordsTable.tsx", - "data/bills.json", - "data/records.json", + "DESIGN.md", + "styles/ledger-page.css" + ] + } + ] + }, + "oneos-h5-h2-order": { + "title": "加氢记录(H5)", + "version": "v1.23", + "revision": 23, + "lastUpdated": "2026-07-18T04:30:15.800Z", + "contentHash": "f8635009e1ef7839b558004c630e4e9a00f87dc6e6f43f454e5b136bc2828753", + "trackedFiles": [ + ".spec/2026-07-14-implementation-plan.md", + ".spec/2026-07-14-requirements-design.md", + ".spec/feature-create.md", + ".spec/feature-detail.md", + ".spec/feature-list.md", + ".spec/feature-manual-ledger.md", + ".spec/fleet-plate-tag.md", + ".spec/prototype-comments.json", + ".spec/reconcile-linkage.md", + ".spec/requirements-prd.md", + "components/CreateWizard.tsx", + "components/DateTimePickerSheet.tsx", + "components/Icons.tsx", + "components/ManualLedgerPanel.tsx", + "components/OrderCard.tsx", + "components/OrderDetail.tsx", + "components/PhoneShell.tsx", + "components/PlateKeyboardSheet.tsx", + "index.tsx", + "styles/index.css", + "types.ts", + "utils/demo-photo.ts", + "utils/fleet-plates.ts", + "utils/format.ts", + "utils/manual-ledger.ts", + "utils/ocr-mock.ts", + "utils/orders.ts", + "utils/photo-watermark.ts", + "utils/vehicle-mileage.ts" + ], + "changelog": [ + { + "version": "v1.23", + "date": "2026-07-18", + "time": "12:30", + "summary": "加氢记录(H5):站端写入标注来源,手工台账说明同步", + "files": [ + ".spec/2026-07-14-implementation-plan.md", + ".spec/2026-07-14-requirements-design.md", + ".spec/feature-create.md", + ".spec/feature-detail.md", + ".spec/feature-list.md", + ".spec/feature-manual-ledger.md", + ".spec/fleet-plate-tag.md", + ".spec/prototype-comments.json", + ".spec/reconcile-linkage.md", + ".spec/requirements-prd.md", + "components/CreateWizard.tsx", + "components/DateTimePickerSheet.tsx" + ], + "details": [ + "upsert 写入 recordSource=station(站端上传)", + "手工台账规格与详情展示小幅同步" + ] + }, + { + "version": "v1.22", + "date": "2026-07-18", + "time": "10:36", + "summary": "更新需求说明与标注", + "files": [ + ".spec/2026-07-14-implementation-plan.md", + ".spec/2026-07-14-requirements-design.md", + ".spec/feature-create.md", + ".spec/feature-detail.md", + ".spec/feature-list.md", + ".spec/feature-manual-ledger.md", + ".spec/fleet-plate-tag.md", + ".spec/prototype-comments.json", + ".spec/reconcile-linkage.md", + ".spec/requirements-prd.md", + "components/CreateWizard.tsx", + "components/DateTimePickerSheet.tsx" + ] + }, + { + "version": "v1.21", + "date": "2026-07-18", + "time": "10:36", + "summary": "更新需求说明与标注", + "files": [ + ".spec/2026-07-14-implementation-plan.md", + ".spec/2026-07-14-requirements-design.md", + ".spec/feature-create.md", + ".spec/feature-detail.md", + ".spec/feature-list.md", + ".spec/feature-manual-ledger.md", + ".spec/fleet-plate-tag.md", + ".spec/prototype-comments.json", + ".spec/reconcile-linkage.md", + ".spec/requirements-prd.md", + "components/CreateWizard.tsx", + "components/DateTimePickerSheet.tsx" + ] + }, + { + "version": "v1.20", + "date": "2026-07-18", + "time": "10:33", + "summary": "更新需求说明与标注", + "files": [ + ".spec/2026-07-14-implementation-plan.md", + ".spec/2026-07-14-requirements-design.md", + ".spec/feature-create.md", + ".spec/feature-detail.md", + ".spec/feature-list.md", + ".spec/feature-manual-ledger.md", + ".spec/fleet-plate-tag.md", + ".spec/prototype-comments.json", + ".spec/reconcile-linkage.md", + ".spec/requirements-prd.md", + "components/CreateWizard.tsx", + "components/DateTimePickerSheet.tsx" + ] + }, + { + "version": "v1.19", + "date": "2026-07-18", + "time": "10:33", + "summary": "更新需求说明与标注", + "files": [ + ".spec/2026-07-14-implementation-plan.md", + ".spec/2026-07-14-requirements-design.md", + ".spec/feature-create.md", + ".spec/feature-detail.md", + ".spec/feature-list.md", + ".spec/feature-manual-ledger.md", + ".spec/fleet-plate-tag.md", + ".spec/prototype-comments.json", + ".spec/reconcile-linkage.md", + ".spec/requirements-prd.md", + "components/CreateWizard.tsx", + "components/DateTimePickerSheet.tsx" + ] + }, + { + "version": "v1.18", + "date": "2026-07-17", + "time": "17:27", + "summary": "更新需求说明与标注", + "files": [ + ".spec/2026-07-14-implementation-plan.md", + ".spec/2026-07-14-requirements-design.md", + ".spec/feature-create.md", + ".spec/feature-detail.md", + ".spec/feature-list.md", + ".spec/feature-manual-ledger.md", + ".spec/fleet-plate-tag.md", + ".spec/prototype-comments.json", + ".spec/reconcile-linkage.md", + ".spec/requirements-prd.md", + "components/CreateWizard.tsx", + "components/DateTimePickerSheet.tsx" + ] + }, + { + "version": "v1.17", + "date": "2026-07-17", + "time": "17:27", + "summary": "更新需求说明与标注", + "files": [ + ".spec/2026-07-14-implementation-plan.md", + ".spec/2026-07-14-requirements-design.md", + ".spec/feature-create.md", + ".spec/feature-detail.md", + ".spec/feature-list.md", + ".spec/feature-manual-ledger.md", + ".spec/fleet-plate-tag.md", + ".spec/prototype-comments.json", + ".spec/reconcile-linkage.md", + ".spec/requirements-prd.md", + "components/CreateWizard.tsx", + "components/DateTimePickerSheet.tsx" + ] + }, + { + "version": "v1.16", + "date": "2026-07-17", + "time": "17:26", + "summary": "更新需求说明与标注", + "files": [ + ".spec/2026-07-14-implementation-plan.md", + ".spec/2026-07-14-requirements-design.md", + ".spec/feature-create.md", + ".spec/feature-detail.md", + ".spec/feature-list.md", + ".spec/feature-manual-ledger.md", + ".spec/fleet-plate-tag.md", + ".spec/prototype-comments.json", + ".spec/reconcile-linkage.md", + ".spec/requirements-prd.md", + "components/CreateWizard.tsx", + "components/DateTimePickerSheet.tsx" + ] + }, + { + "version": "v1.15", + "date": "2026-07-17", + "time": "17:26", + "summary": "更新需求说明与标注", + "files": [ + ".spec/2026-07-14-implementation-plan.md", + ".spec/2026-07-14-requirements-design.md", + ".spec/feature-create.md", + ".spec/feature-detail.md", + ".spec/feature-list.md", + ".spec/feature-manual-ledger.md", + ".spec/fleet-plate-tag.md", + ".spec/prototype-comments.json", + ".spec/reconcile-linkage.md", + ".spec/requirements-prd.md", + "components/CreateWizard.tsx", + "components/DateTimePickerSheet.tsx" + ] + }, + { + "version": "v1.14", + "date": "2026-07-17", + "time": "17:26", + "summary": "更新 demo-photo.ts", + "files": [ + "utils/demo-photo.ts" + ] + }, + { + "version": "v1.13", + "date": "2026-07-17", + "time": "17:26", + "summary": "更新需求说明与标注", + "files": [ + ".spec/2026-07-14-implementation-plan.md", + ".spec/2026-07-14-requirements-design.md", + ".spec/feature-create.md", + ".spec/feature-detail.md", + ".spec/feature-list.md", + ".spec/feature-manual-ledger.md", + ".spec/fleet-plate-tag.md", + ".spec/prototype-comments.json", + ".spec/reconcile-linkage.md", + ".spec/requirements-prd.md", + "components/CreateWizard.tsx", + "components/DateTimePickerSheet.tsx" + ] + }, + { + "version": "v1.12", + "date": "2026-07-17", + "time": "17:25", + "summary": "更新需求说明与标注", + "files": [ + ".spec/2026-07-14-implementation-plan.md", + ".spec/2026-07-14-requirements-design.md", + ".spec/feature-create.md", + ".spec/feature-detail.md", + ".spec/feature-list.md", + ".spec/feature-manual-ledger.md", + ".spec/fleet-plate-tag.md", + ".spec/prototype-comments.json", + ".spec/reconcile-linkage.md", + ".spec/requirements-prd.md", + "components/CreateWizard.tsx", + "components/DateTimePickerSheet.tsx" + ] + }, + { + "version": "v1.11", + "date": "2026-07-17", + "time": "17:23", + "summary": "更新需求说明与标注", + "files": [ + ".spec/2026-07-14-implementation-plan.md", + ".spec/2026-07-14-requirements-design.md", + ".spec/feature-create.md", + ".spec/feature-detail.md", + ".spec/feature-list.md", + ".spec/feature-manual-ledger.md", + ".spec/fleet-plate-tag.md", + ".spec/prototype-comments.json", + ".spec/reconcile-linkage.md", + ".spec/requirements-prd.md", + "components/CreateWizard.tsx", + "components/DateTimePickerSheet.tsx" + ] + }, + { + "version": "v1.10", + "date": "2026-07-17", + "time": "17:23", + "summary": "更新需求说明与标注", + "files": [ + ".spec/2026-07-14-implementation-plan.md", + ".spec/2026-07-14-requirements-design.md", + ".spec/feature-create.md", + ".spec/feature-detail.md", + ".spec/feature-list.md", + ".spec/feature-manual-ledger.md", + ".spec/fleet-plate-tag.md", + ".spec/prototype-comments.json", + ".spec/reconcile-linkage.md", + ".spec/requirements-prd.md", + "components/CreateWizard.tsx", + "components/DateTimePickerSheet.tsx" + ] + }, + { + "version": "v1.9", + "date": "2026-07-17", + "time": "17:21", + "summary": "更新需求说明与标注", + "files": [ + ".spec/2026-07-14-implementation-plan.md", + ".spec/2026-07-14-requirements-design.md", + ".spec/feature-create.md", + ".spec/feature-detail.md", + ".spec/feature-list.md", + ".spec/feature-manual-ledger.md", + ".spec/fleet-plate-tag.md", + ".spec/prototype-comments.json", + ".spec/reconcile-linkage.md", + ".spec/requirements-prd.md", + "components/CreateWizard.tsx", + "components/DateTimePickerSheet.tsx" + ] + }, + { + "version": "v1.8", + "date": "2026-07-17", + "time": "17:19", + "summary": "更新需求说明与标注", + "files": [ + ".spec/2026-07-14-implementation-plan.md", + ".spec/2026-07-14-requirements-design.md", + ".spec/feature-create.md", + ".spec/feature-detail.md", + ".spec/feature-list.md", + ".spec/feature-manual-ledger.md", + ".spec/fleet-plate-tag.md", + ".spec/prototype-comments.json", + ".spec/reconcile-linkage.md", + ".spec/requirements-prd.md", + "components/CreateWizard.tsx", + "components/DateTimePickerSheet.tsx" + ] + }, + { + "version": "v1.7", + "date": "2026-07-17", + "time": "17:19", + "summary": "更新需求说明与标注", + "files": [ + ".spec/2026-07-14-implementation-plan.md", + ".spec/2026-07-14-requirements-design.md", + ".spec/feature-create.md", + ".spec/feature-detail.md", + ".spec/feature-list.md", + ".spec/feature-manual-ledger.md", + ".spec/fleet-plate-tag.md", + ".spec/prototype-comments.json", + ".spec/reconcile-linkage.md", + ".spec/requirements-prd.md", + "components/CreateWizard.tsx", + "components/DateTimePickerSheet.tsx" + ] + }, + { + "version": "v1.6", + "date": "2026-07-17", + "time": "17:19", + "summary": "更新需求说明与标注", + "files": [ + ".spec/2026-07-14-implementation-plan.md", + ".spec/2026-07-14-requirements-design.md", + ".spec/feature-create.md", + ".spec/feature-detail.md", + ".spec/feature-list.md", + ".spec/feature-manual-ledger.md", + ".spec/fleet-plate-tag.md", + ".spec/prototype-comments.json", + ".spec/reconcile-linkage.md", + ".spec/requirements-prd.md", + "components/CreateWizard.tsx", + "components/DateTimePickerSheet.tsx" + ] + }, + { + "version": "v1.5", + "date": "2026-07-17", + "time": "17:19", + "summary": "更新需求说明与标注", + "files": [ + ".spec/2026-07-14-implementation-plan.md", + ".spec/2026-07-14-requirements-design.md", + ".spec/feature-create.md", + ".spec/feature-detail.md", + ".spec/feature-list.md", + ".spec/feature-manual-ledger.md", + ".spec/fleet-plate-tag.md", + ".spec/prototype-comments.json", + ".spec/reconcile-linkage.md", + ".spec/requirements-prd.md", + "components/CreateWizard.tsx", + "components/DateTimePickerSheet.tsx" + ] + }, + { + "version": "v1.4", + "date": "2026-07-17", + "time": "17:18", + "summary": "更新 vehicle-mileage.ts", + "files": [ + "utils/vehicle-mileage.ts" + ] + }, + { + "version": "v1.3", + "date": "2026-07-17", + "time": "17:18", + "summary": "更新 photo-watermark.ts", + "files": [ + "utils/photo-watermark.ts" + ] + }, + { + "version": "v1.2", + "date": "2026-07-17", + "time": "16:10", + "summary": "页面逻辑与交互:CreateWizard.tsx、DateTimePickerSheet.tsx、ManualLedgerPanel.tsx、OrderCard.tsx 等", + "details": [ + "样式与布局:index.css", + "需求说明与 PRD:feature-create.md、feature-detail.md、feature-list.md、feature-manual-ledger.md、fleet-plate-tag.md、reconcile-linkage.md、requirements-prd.md" + ], + "commit": "305199c", + "files": [ + ".spec/feature-create.md", + ".spec/feature-detail.md", + ".spec/feature-list.md", + ".spec/feature-manual-ledger.md", + ".spec/fleet-plate-tag.md", + ".spec/reconcile-linkage.md", + ".spec/requirements-prd.md", + "components/CreateWizard.tsx", + "components/DateTimePickerSheet.tsx", + "components/ManualLedgerPanel.tsx", + "components/OrderCard.tsx", + "components/OrderDetail.tsx" + ] + }, + { + "version": "v1.1", + "date": "2026-07-16", + "time": "09:00", + "summary": "页面逻辑与交互:CreateWizard.tsx、Icons.tsx、OrderCard.tsx、OrderDetail.tsx 等", + "details": [ + "样式与布局:index.css", + "需求说明与 PRD:2026-07-14-implementation-plan.md、2026-07-14-requirements-design.md、reconcile-linkage.md、requirements-prd.md" + ], + "commit": "47c223a", + "files": [ + ".spec/2026-07-14-implementation-plan.md", + ".spec/2026-07-14-requirements-design.md", + ".spec/reconcile-linkage.md", + ".spec/requirements-prd.md", + "components/CreateWizard.tsx", + "components/Icons.tsx", + "components/OrderCard.tsx", + "components/OrderDetail.tsx", + "components/PhoneShell.tsx", "index.tsx", "styles/index.css", "types.ts" @@ -2686,113 +1852,6 @@ } ] }, - "vehicle-return-settlement": { - "title": "还车应结款", - "version": "v1.3", - "revision": 3, - "lastUpdated": "2026-07-12T14:44:00.000Z", - "contentHash": "d9ae6105c792609ffad4275d2730ff6361837ebd654af3a64f6f34473482f073", - "trackedFiles": [ - ".spec/prototype-comments.json", - "index.tsx", - "styles/index.css", - "VehicleReturnSettlementApp.jsx", - "VehicleReturnSettlementHandle.jsx" - ], - "changelog": [ - { - "version": "v1.3", - "date": "2026-07-12", - "time": "22:44", - "summary": "页面逻辑与交互:VehicleReturnSettlementHandle.jsx", - "details": [], - "commit": "131b963", - "files": [ - "VehicleReturnSettlementHandle.jsx" - ] - }, - { - "version": "v1.2", - "date": "2026-07-09", - "time": "17:52", - "summary": "页面逻辑与交互:VehicleReturnSettlementApp.jsx、VehicleReturnSettlementHandle.jsx、index.tsx", - "details": [ - "样式与布局:index.css" - ], - "commit": "6ccbbef", - "files": [ - "VehicleReturnSettlementApp.jsx", - "VehicleReturnSettlementHandle.jsx", - "index.tsx", - "styles/index.css" - ] - }, - { - "version": "v1.1", - "date": "2026-07-08", - "time": "11:44", - "summary": "新增车辆维修明细、还车应结款原型;车辆管理、收款记录、工作台、加氢站等同步对齐", - "details": [ - "页面逻辑与交互:index.tsx" - ], - "commit": "6d14c58", - "files": [ - "index.tsx" - ] - } - ] - }, - "vehicle-return-settlement-v2": { - "title": "还车应结款-新", - "version": "v1.2", - "revision": 2, - "lastUpdated": "2026-07-12T14:45:00.000Z", - "contentHash": "a581b2271b6687a81a82ae72e0f6e8523991596cad86c30080f79354b65b9a63", - "trackedFiles": [ - ".spec/prototype-comments.json", - "index.tsx", - "styles/index.css", - "VehicleReturnSettlementV2App.jsx", - "VehicleReturnSettlementV2Detail.jsx", - "VehicleReturnSettlementV2List.jsx", - "vrsV2Data.js" - ], - "changelog": [ - { - "version": "v1.2", - "date": "2026-07-12", - "time": "22:45", - "summary": "还车应结算 V2:OperationActions 统一为详情主操作", - "details": [ - "列表操作列标准化" - ], - "commit": "131b963", - "files": [ - "VehicleReturnSettlementV2Detail.jsx", - "VehicleReturnSettlementV2List.jsx", - "vrsV2Data.js" - ] - }, - { - "version": "v1.1", - "date": "2026-07-09", - "time": "17:52", - "summary": "页面逻辑与交互:VehicleReturnSettlementV2App.jsx、VehicleReturnSettlementV2Detail.jsx、VehicleReturnSettlementV2List.jsx、index.tsx 等", - "details": [ - "样式与布局:index.css" - ], - "commit": "6ccbbef", - "files": [ - "VehicleReturnSettlementV2App.jsx", - "VehicleReturnSettlementV2Detail.jsx", - "VehicleReturnSettlementV2List.jsx", - "index.tsx", - "styles/index.css", - "vrsV2Data.js" - ] - } - ] - }, "oneos-prototype-nav": { "title": "oneos-prototype-nav", "version": "v1.8", @@ -2879,11 +1938,17 @@ { "version": "v1.3", "date": "2026-07-12", - "time": "22:44", - "summary": "页面逻辑与交互:index.tsx、nav-data.ts", + "time": "22:45", + "summary": "统一标注壳与操作规范,租赁明细/合同/提车应收款增强,新增任务工单,同步合包页面", "details": [ - "样式与布局:style.css", - "演示数据与配置:xll-nav-menu.json" + "【平台】全项目接入 PrototypeAnnotationHost,PRD 迁入右侧标注目录;列表统一 OperationActions 与工具栏图标规范", + "【租赁业务明细】收款状态列、47 列宽表、氢费钻取、字段校验、变更记录、导入导出与主管解锁", + "【租赁合同】KPI/状态收敛、查看页、线上/线下签署、交付变更、附加费用与提车应收联动", + "【提车应收款】独立原型上线;finance 合包仅保留租赁账单;工作台快捷入口改跳独立原型", + "【任务工单】新增业管发起端:合同/独立双入口、六类任务类型与督办催办", + "【合包】business/ops/finance/ledger-data/lease-contract/h2-station 等移除面包屑并标准化操作区", + "【下线】移除 login/requirements/vehicle-asset 合包;侧栏新增任务工单与提车应收款", + "【发布】导航页固定发布至 /oneos-prototype-nav/index.html" ], "commit": "131b963", "files": [ @@ -2897,8 +1962,10 @@ "version": "v1.2", "date": "2026-07-09", "time": "18:34", - "summary": "页面逻辑与交互:index.tsx、nav-data.ts", + "summary": "VoltAgent 视觉改版", "details": [ + "密码门禁与侧栏按业务线切换", + "页面逻辑与交互:index.tsx、nav-data.ts", "样式与布局:style.css" ], "commit": "824512a", @@ -2912,8 +1979,9 @@ "version": "v1.1", "date": "2026-07-09", "time": "17:52", - "summary": "页面逻辑与交互:index.tsx、nav-data.ts", + "summary": "原型导航与版本追踪上线", "details": [ + "页面逻辑与交互:index.tsx、nav-data.ts", "样式与布局:style.css", "演示数据与配置:xll-nav-menu.json、xll-nav-source.json" ], @@ -2928,6 +1996,447 @@ } ] }, + "oneos-web-approval": { + "title": "oneos-web-approval", + "version": "v1.1", + "revision": 1, + "lastUpdated": "2026-07-15T00:58:00.000Z", + "contentHash": "36d94bc093043173cf16e2262f46f4ad753f6cacca8fbe970feed2ce020d2446", + "trackedFiles": [ + ".spec/prototype-comments.json", + "index.tsx" + ], + "changelog": [ + { + "version": "v1.1", + "date": "2026-07-15", + "time": "08:58", + "summary": "feat: add approval center module with split layout and nav registration", + "details": [ + "页面逻辑与交互:index.tsx" + ], + "commit": "6971529", + "files": [ + "index.tsx" + ] + }, + { + "version": "v1.16", + "date": "2026-07-14", + "time": "14:17", + "summary": "更新页面逻辑与交互", + "files": [ + ".spec/prototype-comments.json", + "index.tsx" + ] + }, + { + "version": "v1.15", + "date": "2026-07-14", + "time": "14:09", + "summary": "更新页面逻辑与交互", + "files": [ + "ApprovalApp.tsx" + ] + }, + { + "version": "v1.14", + "date": "2026-07-14", + "time": "14:03", + "summary": "更新页面样式", + "files": [ + ".spec/prototype-comments.json", + "components/ApprovalCard.tsx", + "components/ApprovalCardList.tsx", + "components/ApprovalDetailPlaceholder.tsx", + "config/approvalTypeConfig.ts", + "data/mockApprovalCases.ts", + "index.tsx", + "pages/ApprovalCenterPage.tsx", + "styles/index.css", + "types.ts" + ] + }, + { + "version": "v1.13", + "date": "2026-07-14", + "time": "14:03", + "summary": "更新页面样式", + "files": [ + ".spec/prototype-comments.json", + "components/ApprovalCard.tsx", + "components/ApprovalCardList.tsx", + "components/ApprovalDetailPlaceholder.tsx", + "config/approvalTypeConfig.ts", + "data/mockApprovalCases.ts", + "index.tsx", + "pages/ApprovalCenterPage.tsx", + "styles/index.css", + "types.ts" + ] + }, + { + "version": "v1.12", + "date": "2026-07-14", + "time": "13:59", + "summary": "更新页面样式", + "files": [ + ".spec/prototype-comments.json", + "components/ApprovalCard.tsx", + "components/ApprovalCardList.tsx", + "components/ApprovalDetailPlaceholder.tsx", + "config/approvalTypeConfig.ts", + "data/mockApprovalCases.ts", + "index.tsx", + "pages/ApprovalCenterPage.tsx", + "styles/index.css", + "types.ts" + ] + }, + { + "version": "v1.11", + "date": "2026-07-14", + "time": "13:55", + "summary": "更新页面样式", + "files": [ + ".spec/prototype-comments.json", + "components/ApprovalCard.tsx", + "components/ApprovalCardList.tsx", + "components/ApprovalDetailPlaceholder.tsx", + "config/approvalTypeConfig.ts", + "data/mockApprovalCases.ts", + "index.tsx", + "pages/ApprovalCenterPage.tsx", + "styles/index.css", + "types.ts" + ] + }, + { + "version": "v1.10", + "date": "2026-07-14", + "time": "13:54", + "summary": "更新页面样式", + "files": [ + ".spec/prototype-comments.json", + "components/ApprovalCard.tsx", + "components/ApprovalCardList.tsx", + "components/ApprovalDetailPlaceholder.tsx", + "config/approvalTypeConfig.ts", + "data/mockApprovalCases.ts", + "index.tsx", + "pages/ApprovalCenterPage.tsx", + "styles/index.css", + "types.ts" + ] + }, + { + "version": "v1.9", + "date": "2026-07-14", + "time": "13:19", + "summary": "更新页面样式", + "files": [ + ".spec/prototype-comments.json", + "components/ApprovalCard.tsx", + "components/ApprovalCardList.tsx", + "components/ApprovalDetailPlaceholder.tsx", + "config/approvalTypeConfig.ts", + "data/mockApprovalCases.ts", + "index.tsx", + "pages/ApprovalCenterPage.tsx", + "styles/index.css", + "types.ts" + ] + }, + { + "version": "v1.8", + "date": "2026-07-14", + "time": "10:58", + "summary": "更新页面样式", + "files": [ + "components/ApprovalCard.tsx", + "components/ApprovalCardList.tsx", + "components/ApprovalDetailPlaceholder.tsx", + "config/approvalTypeConfig.ts", + "data/mockApprovalCases.ts", + "index.tsx", + "pages/ApprovalCenterPage.tsx", + "styles/index.css", + "types.ts" + ] + }, + { + "version": "v1.7", + "date": "2026-07-14", + "time": "10:56", + "summary": "更新页面样式", + "files": [ + "components/ApprovalCard.tsx", + "components/ApprovalCardList.tsx", + "components/ApprovalDetailPlaceholder.tsx", + "config/approvalTypeConfig.ts", + "data/mockApprovalCases.ts", + "index.tsx", + "pages/ApprovalCenterPage.tsx", + "styles/index.css", + "types.ts" + ] + }, + { + "version": "v1.6", + "date": "2026-07-14", + "time": "10:56", + "summary": "更新页面样式", + "files": [ + "index.tsx", + "pages/ApprovalCenterPage.tsx", + "styles/index.css" + ] + }, + { + "version": "v1.5", + "date": "2026-07-14", + "time": "10:56", + "summary": "更新页面逻辑与交互", + "files": [ + "components/ApprovalDetailPlaceholder.tsx" + ] + }, + { + "version": "v1.4", + "date": "2026-07-14", + "time": "10:56", + "summary": "更新页面逻辑与交互", + "files": [ + "components/ApprovalCardList.tsx" + ] + }, + { + "version": "v1.3", + "date": "2026-07-14", + "time": "10:56", + "summary": "更新页面逻辑与交互", + "files": [ + "components/ApprovalCard.tsx" + ] + }, + { + "version": "v1.2", + "date": "2026-07-14", + "time": "10:55", + "summary": "更新 mockApprovalCases.ts", + "files": [ + "data/mockApprovalCases.ts" + ] + } + ] + }, + "oneos-web-approval-cc": { + "title": "我的抄送", + "version": "v1.1", + "revision": 1, + "lastUpdated": "2026-07-15T00:58:00.000Z", + "contentHash": "4d0ea26865ca537c9227a99441ff1e552c7f0d1df05ae1c995287123a72b1090", + "trackedFiles": [ + "index.tsx" + ], + "changelog": [ + { + "version": "v1.1", + "date": "2026-07-15", + "time": "08:58", + "summary": "页面逻辑与交互:index.tsx", + "details": [], + "commit": "6971529", + "files": [ + "index.tsx" + ] + } + ] + }, + "oneos-web-approval-done": { + "title": "我的已办", + "version": "v1.1", + "revision": 1, + "lastUpdated": "2026-07-15T00:58:00.000Z", + "contentHash": "a1e94700ad17be8996ba2bed95a12a975a7ead4fd640326d5742d74d06f9782a", + "trackedFiles": [ + "index.tsx" + ], + "changelog": [ + { + "version": "v1.1", + "date": "2026-07-15", + "time": "08:58", + "summary": "页面逻辑与交互:index.tsx", + "details": [], + "commit": "6971529", + "files": [ + "index.tsx" + ] + } + ] + }, + "oneos-web-approval-initiated": { + "title": "我发起的", + "version": "v1.2", + "revision": 2, + "lastUpdated": "2026-07-16T01:06:15.895Z", + "contentHash": "37527deeff81d5ef70bd987d0db930cc32109efa348f375a66149500bbdf2c66", + "trackedFiles": [ + "index.tsx" + ], + "changelog": [ + { + "version": "v1.2", + "date": "2026-07-16", + "time": "09:06", + "summary": "更新页面逻辑与交互", + "files": [ + "index.tsx" + ] + }, + { + "version": "v1.1", + "date": "2026-07-15", + "time": "08:58", + "summary": "页面逻辑与交互:index.tsx", + "details": [], + "commit": "6971529", + "files": [ + "index.tsx" + ] + } + ] + }, + "oneos-web-approval-todo": { + "title": "我的待办", + "version": "v1.1", + "revision": 1, + "lastUpdated": "2026-07-15T00:58:00.000Z", + "contentHash": "5766a14e5522689fbc89ca50891095a00672ea52c596ad00f0f9151c9ce1f3ba", + "trackedFiles": [ + "index.tsx" + ], + "changelog": [ + { + "version": "v1.1", + "date": "2026-07-15", + "time": "08:58", + "summary": "页面逻辑与交互:index.tsx", + "details": [], + "commit": "6971529", + "files": [ + "index.tsx" + ] + } + ] + }, + "oneos-web-business": { + "title": "业务管理", + "version": "v1.2", + "revision": 2, + "lastUpdated": "2026-07-12T14:45:00.000Z", + "contentHash": "e92802237c9714f6c476d9e69a912494c2d6a574e29e129e36e8969d65ac82aa", + "trackedFiles": [ + "index.tsx", + "pages/01-保险采购.jsx", + "pages/02-编辑交车任务.jsx", + "pages/03-查看交车任务.jsx", + "pages/04-车辆成本维护.jsx", + "pages/05-供应商管理-编辑.jsx", + "pages/06-供应商管理-查看.jsx", + "pages/07-供应商管理-新增.jsx", + "pages/08-供应商管理.jsx", + "pages/09-交车任务.jsx", + "pages/10-客户管理-编辑.jsx", + "pages/11-客户管理-查看.jsx", + "pages/12-客户管理-新增.jsx", + "pages/13-客户管理.jsx", + "pages/14-新增交车任务.jsx", + "pages/15-租赁账单-查看.jsx", + "pages/16-租赁账单-收费明细.jsx", + "pages/17-租赁账单.jsx", + "pages/18-ETC管理.jsx" + ], + "changelog": [ + { + "version": "v1.2", + "date": "2026-07-12", + "time": "22:45", + "summary": "业务管理合包:18 页移除面包屑,OperationActions 统一", + "details": [ + "保险采购、交车任务、客户/供应商、租赁账单、ETC 管理等页操作区标准化" + ], + "commit": "131b963", + "files": [ + "index.tsx" + ] + }, + { + "version": "v1.1", + "date": "2026-06-30", + "time": "16:36", + "summary": "Import desktop web originals into dedicated prototypes with a shared legacy shell, sync script, and a new「ONE-OS Web 端」sidebar section for review alongside existing refactored pages.", + "details": [ + "页面逻辑与交互:index.tsx" + ], + "commit": "d71ebc5", + "files": [ + "index.tsx" + ] + } + ] + }, + "oneos-web-contract-template": { + "title": "合同模板管理", + "version": "v1.3", + "revision": 3, + "lastUpdated": "2026-07-12T14:45:00.000Z", + "contentHash": "803f283222fa5653a5004d48fc4b7a1788478221e3cd52e96ba404c0fb66ee83", + "trackedFiles": [ + "index.tsx", + "pages/01-合同模板管理.jsx" + ], + "changelog": [ + { + "version": "v1.3", + "date": "2026-07-12", + "time": "22:45", + "summary": "合同模板合包:操作区与独立原型对齐", + "details": [ + "模板管理页 OperationActions 统一" + ], + "commit": "131b963", + "files": [ + "index.tsx" + ] + }, + { + "version": "v1.2", + "date": "2026-06-30", + "time": "16:54", + "summary": "页面逻辑与交互:index.tsx", + "details": [], + "commit": "0982837", + "files": [ + "index.tsx" + ] + }, + { + "version": "v1.1", + "date": "2026-06-30", + "time": "16:36", + "summary": "Import desktop web originals into dedicated prototypes with a shared legacy shell, sync script, and a new「ONE-OS Web 端」sidebar section for review alongside existing refactored pages.", + "details": [ + "页面逻辑与交互:index.tsx" + ], + "commit": "d71ebc5", + "files": [ + "index.tsx" + ] + } + ] + }, "oneos-web-data-analysis": { "title": "数据分析", "version": "v1.4", @@ -2986,8 +2495,10 @@ "version": "v1.1", "date": "2026-06-30", "time": "16:36", - "summary": "页面逻辑与交互:index.tsx", - "details": [], + "summary": "Import desktop web originals into dedicated prototypes with a shared legacy shell, sync script, and a new「ONE-OS Web 端」sidebar section for review alongside existing refactored pages.", + "details": [ + "页面逻辑与交互:index.tsx" + ], "commit": "d71ebc5", "files": [ "index.tsx" @@ -2995,120 +2506,11 @@ } ] }, - "task-work-order": { - "title": "任务工单", - "version": "v1.1", - "revision": 1, - "lastUpdated": "2026-07-12T14:44:00.000Z", - "contentHash": "7b34b266e3151485808e273b234681849a72c96501f10ac97693ab2540cc4205", - "trackedFiles": [ - ".spec/2026-07-10-requirements.md", - "components/task-work-order-kpi.jsx", - "data/task-work-order-seed.js", - "index.tsx", - "styles/index.css", - "TaskWorkOrderPage.jsx" - ], - "changelog": [ - { - "version": "v1.1", - "date": "2026-07-12", - "time": "22:44", - "summary": "统一标注壳与操作规范", - "details": [ - "租赁明细/合同/提车应收款增强", - "新增任务工单", - "同步导航与合包页面。", - "页面逻辑与交互:TaskWorkOrderPage.jsx、task-work-order-kpi.jsx、task-work-order-seed.js、index.tsx", - "样式与布局:index.css", - "需求说明与 PRD:2026-07-10-requirements.md" - ], - "commit": "131b963", - "files": [ - ".spec/2026-07-10-requirements.md", - "TaskWorkOrderPage.jsx", - "components/task-work-order-kpi.jsx", - "data/task-work-order-seed.js", - "index.tsx", - "styles/index.css" - ] - } - ] - }, - "vehicle-pickup-receivable": { - "title": "提车应收款", - "version": "v1.2", - "revision": 2, - "lastUpdated": "2026-07-13T01:31:00.000Z", - "contentHash": "1413543498eb688eea8219e4fd02da93f7857dcba1e7d4fdf755f5c15d248520", - "trackedFiles": [ - ".spec/PRD.md", - ".spec/prototype-comments.json", - "data/pickup-receivable-list-data.js", - "index.tsx", - "pickup-receivable-bridge.js", - "pickup-receivable-calc.js", - "styles/index.css", - "VehiclePickupReceivableApp.jsx", - "VehiclePickupReceivableCollectPage.jsx", - "VehiclePickupReceivableContractView.jsx", - "VehiclePickupReceivableList.jsx" - ], - "changelog": [ - { - "version": "v1.2", - "date": "2026-07-13", - "time": "09:31", - "summary": "提车应收款收款/合同页增强", - "details": [ - "租赁明细标注同步", - "导航注册表更新", - "页面逻辑与交互:VehiclePickupReceivableApp.jsx、VehiclePickupReceivableCollectPage.jsx、VehiclePickupReceivableContractView.jsx、VehiclePickupReceivableList.jsx 等", - "样式与布局:index.css" - ], - "commit": "962e835", - "files": [ - "VehiclePickupReceivableApp.jsx", - "VehiclePickupReceivableCollectPage.jsx", - "VehiclePickupReceivableContractView.jsx", - "VehiclePickupReceivableList.jsx", - "data/pickup-receivable-list-data.js", - "pickup-receivable-bridge.js", - "styles/index.css" - ] - }, - { - "version": "v1.1", - "date": "2026-07-12", - "time": "22:44", - "summary": "统一标注壳与操作规范", - "details": [ - "租赁明细/合同/提车应收款增强", - "新增任务工单", - "同步导航与合包页面。", - "页面逻辑与交互:VehiclePickupReceivableApp.jsx、VehiclePickupReceivableList.jsx、pickup-receivable-list-data.js、index.tsx 等", - "样式与布局:index.css", - "需求说明与 PRD:PRD.md" - ], - "commit": "131b963", - "files": [ - ".spec/PRD.md", - "VehiclePickupReceivableApp.jsx", - "VehiclePickupReceivableList.jsx", - "data/pickup-receivable-list-data.js", - "index.tsx", - "pickup-receivable-bridge.js", - "pickup-receivable-calc.js", - "styles/index.css" - ] - } - ] - }, "oneos-web-finance": { "title": "财务管理(合包)", "version": "v1.4", "revision": 4, - "lastUpdated": "2026-07-12T14:44:00.000Z", + "lastUpdated": "2026-07-12T14:45:00.000Z", "contentHash": "cec2aff84fd721db4c1035728399ce40001999ce5075ad7e59765ddea2f6bea5", "trackedFiles": [ "index.tsx", @@ -3127,135 +2529,24 @@ { "version": "v1.4", "date": "2026-07-12", - "time": "22:44", - "summary": "页面逻辑与交互:index.tsx", - "details": [], - "commit": "131b963", - "files": [ - "index.tsx" - ] - }, - { - "version": "v1.3", - "date": "2026-07-08", - "time": "11:44", - "summary": "页面逻辑与交互:index.tsx", - "details": [], - "commit": "6d14c58", - "files": [ - "index.tsx" - ] - }, - { - "version": "v1.2", - "date": "2026-06-30", - "time": "16:54", - "summary": "页面逻辑与交互:index.tsx", - "details": [], - "commit": "0982837", - "files": [ - "index.tsx" - ] - }, - { - "version": "v1.1", - "date": "2026-06-30", - "time": "16:36", - "summary": "页面逻辑与交互:index.tsx", - "details": [], - "commit": "d71ebc5", - "files": [ - "index.tsx" - ] - } - ] - }, - "lease-business-line-overview": { - "title": "业务条线说明", - "version": "v1.4", - "revision": 4, - "lastUpdated": "2026-07-16T01:00:00.000Z", - "contentHash": "a7fb7ee64b406ab87e38a2f8c1a66ef327fd488038cadb51400528bc692284ef", - "trackedFiles": [ - ".spec/prototype-comments.json", - "data-foundations.ts", - "hooks.ts", - "index.tsx", - "lines.ts", - "style.css" - ], - "changelog": [ - { - "version": "v1.4", - "date": "2026-07-16", - "time": "09:00", - "summary": "页面逻辑与交互:lines.ts", - "details": [], - "commit": "47c223a", - "files": [ - "lines.ts" - ] - }, - { - "version": "v1.3", - "date": "2026-07-12", - "time": "22:44", - "summary": "页面逻辑与交互:lines.ts", - "details": [], - "commit": "131b963", - "files": [ - "lines.ts" - ] - }, - { - "version": "v1.2", - "date": "2026-07-08", - "time": "11:44", - "summary": "页面逻辑与交互:lines.ts", - "details": [], - "commit": "6d14c58", - "files": [ - "lines.ts" - ] - }, - { - "version": "v1.1", - "date": "2026-07-06", - "time": "17:18", - "summary": "新增业务部台账、收款记录、业务条线说明及 ledger-shared / vm-shared 公共壳层", + "time": "22:45", + "summary": "财务管理合包:提车应收款剥离,仅保留租赁账单", "details": [ - "页面逻辑与交互:data-foundations.ts、hooks.ts、index.tsx、lines.ts", - "样式与布局:style.css" + "提车应收款 6 页移除;合包默认页改为租赁账单", + "提车流程由 vehicle-pickup-receivable 独立原型承接" ], - "commit": "d0d7458", + "commit": "131b963", "files": [ - "data-foundations.ts", - "hooks.ts", - "index.tsx", - "lines.ts", - "style.css" + "index.tsx" ] - } - ] - }, - "oneos-web-contract-template": { - "title": "合同模板管理", - "version": "v1.3", - "revision": 3, - "lastUpdated": "2026-07-12T14:44:00.000Z", - "contentHash": "803f283222fa5653a5004d48fc4b7a1788478221e3cd52e96ba404c0fb66ee83", - "trackedFiles": [ - "index.tsx", - "pages/01-合同模板管理.jsx" - ], - "changelog": [ + }, { "version": "v1.3", - "date": "2026-07-12", - "time": "22:44", + "date": "2026-07-08", + "time": "11:44", "summary": "页面逻辑与交互:index.tsx", "details": [], - "commit": "131b963", + "commit": "6d14c58", "files": [ "index.tsx" ] @@ -3275,8 +2566,10 @@ "version": "v1.1", "date": "2026-06-30", "time": "16:36", - "summary": "页面逻辑与交互:index.tsx", - "details": [], + "summary": "Import desktop web originals into dedicated prototypes with a shared legacy shell, sync script, and a new「ONE-OS Web 端」sidebar section for review alongside existing refactored pages.", + "details": [ + "页面逻辑与交互:index.tsx" + ], "commit": "d71ebc5", "files": [ "index.tsx" @@ -3300,7 +2593,12 @@ "index.tsx", "pages/02-加氢记录.jsx", "pages/README.md", - "styles/h2-station-vm-filter.css" + "styles/h2-station-vm-filter.css", + "pages/01-加氢订单.jsx", + "pages/03-站点信息.jsx", + "pages/04-站点周报统计.jsx", + "pages/站点周报统计-需求内容.js", + "shared/h2-station-view-shared.jsx" ], "changelog": [ { @@ -3824,29 +3122,673 @@ } ] }, - "oneos-web-procurement": { - "title": "采购管理", - "version": "v1.3", - "revision": 3, - "lastUpdated": "2026-07-12T14:44:00.000Z", - "contentHash": "de6458042cdb2d87f28d5ce249fca712009d2dba4e5be5bbba08559f07bc9d00", + "oneos-web-h2-station-analysis": { + "title": "oneos-web-h2-station-analysis", + "version": "v1.6", + "revision": 6, + "lastUpdated": "2026-07-13T07:20:12.550Z", + "contentHash": "a9a6164ccd59111309617d0c4421bd809d07d84a496ad7552bb0af57a4afa463", "trackedFiles": [ "index.tsx", - "pages/01-三方退租车管理.jsx", - "pages/02-三方退租申请-新增.jsx" + "pages/01-加氢站分析.jsx", + "shared/h2-analysis-charts.jsx", + "shared/h2-analysis-mock.js" ], "changelog": [ + { + "version": "v1.6", + "date": "2026-07-13", + "time": "15:20", + "summary": "更新页面逻辑与交互", + "files": [ + "index.tsx", + "pages/01-加氢站分析.jsx", + "shared/h2-analysis-charts.jsx", + "shared/h2-analysis-mock.js" + ] + }, + { + "version": "v1.5", + "date": "2026-07-13", + "time": "15:20", + "summary": "更新页面逻辑与交互", + "files": [ + "index.tsx", + "pages/01-加氢站分析.jsx", + "shared/h2-analysis-charts.jsx", + "shared/h2-analysis-mock.js" + ] + }, + { + "version": "v1.4", + "date": "2026-07-13", + "time": "15:19", + "summary": "更新页面逻辑与交互", + "files": [ + "index.tsx", + "pages/01-加氢站分析.jsx", + "shared/h2-analysis-charts.jsx", + "shared/h2-analysis-mock.js" + ] + }, { "version": "v1.3", - "date": "2026-07-12", - "time": "22:44", - "summary": "页面逻辑与交互:index.tsx", + "date": "2026-07-13", + "time": "15:18", + "summary": "更新页面逻辑与交互", + "files": [ + "index.tsx" + ] + }, + { + "version": "v1.2", + "date": "2026-07-13", + "time": "15:18", + "summary": "更新页面逻辑与交互", + "files": [ + "pages/01-加氢站分析.jsx" + ] + }, + { + "version": "v1.1", + "date": "2026-07-13", + "time": "15:18", + "summary": "更新页面逻辑与交互", + "files": [ + "shared/h2-analysis-charts.jsx" + ] + } + ] + }, + "oneos-web-h2-station-site": { + "title": "站点信息", + "version": "v1.27", + "revision": 27, + "lastUpdated": "2026-07-17T09:43:57.245Z", + "contentHash": "8c53fc1d73b2a4b0310916569e6248b04e44b8ec3902a4f32c86e5a969a422fd", + "trackedFiles": [ + ".spec/dispenser-brand.md", + ".spec/period-end-balance.md", + ".spec/prototype-comments.json", + ".spec/prototype-review.md", + ".spec/requirements-prd-kpi-balance-alert.md", + ".spec/requirements-prd-list.md", + ".spec/requirements-prd-statement.md", + ".spec/requirements-prd.md", + ".spec/requirements.md", + ".spec/statement-verified-filter.md", + "index.tsx", + "pages/03-站点信息.jsx" + ], + "changelog": [ + { + "version": "v1.27", + "date": "2026-07-17", + "time": "17:43", + "summary": "更新需求说明与标注", + "files": [ + ".spec/dispenser-brand.md", + ".spec/period-end-balance.md", + ".spec/prototype-comments.json", + ".spec/prototype-review.md", + ".spec/requirements-prd-kpi-balance-alert.md", + ".spec/requirements-prd-list.md", + ".spec/requirements-prd-statement.md", + ".spec/requirements-prd.md", + ".spec/requirements.md", + ".spec/statement-verified-filter.md", + "index.tsx", + "pages/03-站点信息.jsx" + ] + }, + { + "version": "v1.26", + "date": "2026-07-17", + "time": "17:41", + "summary": "更新需求说明与标注", + "files": [ + ".spec/dispenser-brand.md", + ".spec/period-end-balance.md", + ".spec/prototype-comments.json", + ".spec/prototype-review.md", + ".spec/requirements-prd-kpi-balance-alert.md", + ".spec/requirements-prd-list.md", + ".spec/requirements-prd-statement.md", + ".spec/requirements-prd.md", + ".spec/requirements.md", + ".spec/statement-verified-filter.md", + "index.tsx", + "pages/03-站点信息.jsx" + ] + }, + { + "version": "v1.25", + "date": "2026-07-17", + "time": "17:41", + "summary": "更新需求说明与标注", + "files": [ + ".spec/dispenser-brand.md", + ".spec/period-end-balance.md", + ".spec/prototype-comments.json", + ".spec/prototype-review.md", + ".spec/requirements-prd-kpi-balance-alert.md", + ".spec/requirements-prd-list.md", + ".spec/requirements-prd-statement.md", + ".spec/requirements-prd.md", + ".spec/requirements.md", + ".spec/statement-verified-filter.md", + "index.tsx", + "pages/03-站点信息.jsx" + ] + }, + { + "version": "v1.24", + "date": "2026-07-17", + "time": "17:41", + "summary": "更新需求说明与标注", + "files": [ + ".spec/dispenser-brand.md", + ".spec/period-end-balance.md", + ".spec/prototype-comments.json", + ".spec/prototype-review.md", + ".spec/requirements-prd-kpi-balance-alert.md", + ".spec/requirements-prd-list.md", + ".spec/requirements-prd-statement.md", + ".spec/requirements-prd.md", + ".spec/requirements.md", + ".spec/statement-verified-filter.md", + "index.tsx", + "pages/03-站点信息.jsx" + ] + }, + { + "version": "v1.23", + "date": "2026-07-17", + "time": "17:40", + "summary": "更新需求说明与标注", + "files": [ + ".spec/dispenser-brand.md", + ".spec/period-end-balance.md", + ".spec/prototype-comments.json", + ".spec/prototype-review.md", + ".spec/requirements-prd-kpi-balance-alert.md", + ".spec/requirements-prd-list.md", + ".spec/requirements-prd-statement.md", + ".spec/requirements-prd.md", + ".spec/requirements.md", + ".spec/statement-verified-filter.md", + "index.tsx", + "pages/03-站点信息.jsx" + ] + }, + { + "version": "v1.22", + "date": "2026-07-17", + "time": "17:40", + "summary": "更新需求说明与标注", + "files": [ + ".spec/dispenser-brand.md", + ".spec/period-end-balance.md", + ".spec/prototype-comments.json", + ".spec/prototype-review.md", + ".spec/requirements-prd-kpi-balance-alert.md", + ".spec/requirements-prd-list.md", + ".spec/requirements-prd-statement.md", + ".spec/requirements-prd.md", + ".spec/requirements.md", + ".spec/statement-verified-filter.md", + "index.tsx", + "pages/03-站点信息.jsx" + ] + }, + { + "version": "v1.21", + "date": "2026-07-17", + "time": "17:39", + "summary": "更新需求说明与标注", + "files": [ + ".spec/dispenser-brand.md", + ".spec/period-end-balance.md", + ".spec/prototype-comments.json", + ".spec/prototype-review.md", + ".spec/requirements-prd-kpi-balance-alert.md", + ".spec/requirements-prd-list.md", + ".spec/requirements-prd-statement.md", + ".spec/requirements-prd.md", + ".spec/requirements.md", + ".spec/statement-verified-filter.md", + "index.tsx", + "pages/03-站点信息.jsx" + ] + }, + { + "version": "v1.20", + "date": "2026-07-17", + "time": "17:39", + "summary": "更新需求说明与标注", + "files": [ + ".spec/dispenser-brand.md", + ".spec/period-end-balance.md", + ".spec/prototype-comments.json", + ".spec/prototype-review.md", + ".spec/requirements-prd-kpi-balance-alert.md", + ".spec/requirements-prd-list.md", + ".spec/requirements-prd-statement.md", + ".spec/requirements-prd.md", + ".spec/requirements.md", + ".spec/statement-verified-filter.md", + "index.tsx", + "pages/03-站点信息.jsx" + ] + }, + { + "version": "v1.19", + "date": "2026-07-17", + "time": "17:38", + "summary": "更新需求说明与标注", + "files": [ + ".spec/dispenser-brand.md", + ".spec/period-end-balance.md", + ".spec/prototype-comments.json", + ".spec/prototype-review.md", + ".spec/requirements-prd-kpi-balance-alert.md", + ".spec/requirements-prd-list.md", + ".spec/requirements-prd-statement.md", + ".spec/requirements-prd.md", + ".spec/requirements.md", + ".spec/statement-verified-filter.md", + "index.tsx", + "pages/03-站点信息.jsx" + ] + }, + { + "version": "v1.18", + "date": "2026-07-17", + "time": "17:37", + "summary": "更新需求说明与标注", + "files": [ + ".spec/dispenser-brand.md", + ".spec/period-end-balance.md", + ".spec/prototype-comments.json", + ".spec/prototype-review.md", + ".spec/requirements-prd-kpi-balance-alert.md", + ".spec/requirements-prd-list.md", + ".spec/requirements-prd-statement.md", + ".spec/requirements-prd.md", + ".spec/requirements.md", + ".spec/statement-verified-filter.md", + "index.tsx", + "pages/03-站点信息.jsx" + ] + }, + { + "version": "v1.17", + "date": "2026-07-17", + "time": "17:37", + "summary": "对账单仅纳入已核对氢费明细", + "files": [ + ".spec/dispenser-brand.md", + ".spec/period-end-balance.md", + ".spec/prototype-comments.json", + ".spec/prototype-review.md", + ".spec/requirements-prd-kpi-balance-alert.md", + ".spec/requirements-prd-list.md", + ".spec/requirements-prd-statement.md", + ".spec/requirements-prd.md", + ".spec/requirements.md", + ".spec/statement-verified-filter.md", + "index.tsx", + "pages/03-站点信息.jsx" + ] + }, + { + "version": "v1.16", + "date": "2026-07-17", + "time": "17:37", + "summary": "更新需求说明与标注", + "files": [ + ".spec/dispenser-brand.md", + ".spec/period-end-balance.md", + ".spec/prototype-comments.json", + ".spec/prototype-review.md", + ".spec/requirements-prd-kpi-balance-alert.md", + ".spec/requirements-prd-list.md", + ".spec/requirements-prd-statement.md", + ".spec/requirements-prd.md", + ".spec/requirements.md", + ".spec/statement-verified-filter.md", + "index.tsx", + "pages/03-站点信息.jsx" + ] + }, + { + "version": "v1.15", + "date": "2026-07-17", + "time": "17:20", + "summary": "更新需求说明与标注", + "files": [ + ".spec/period-end-balance.md", + ".spec/prototype-comments.json", + ".spec/prototype-review.md", + ".spec/requirements-prd-kpi-balance-alert.md", + ".spec/requirements-prd-list.md", + ".spec/requirements-prd-statement.md", + ".spec/requirements-prd.md", + ".spec/requirements.md", + "index.tsx", + "pages/03-站点信息.jsx" + ] + }, + { + "version": "v1.14", + "date": "2026-07-17", + "time": "17:20", + "summary": "更新需求说明与标注", + "files": [ + ".spec/period-end-balance.md", + ".spec/prototype-comments.json", + ".spec/prototype-review.md", + ".spec/requirements-prd-kpi-balance-alert.md", + ".spec/requirements-prd-list.md", + ".spec/requirements-prd-statement.md", + ".spec/requirements-prd.md", + ".spec/requirements.md", + "index.tsx", + "pages/03-站点信息.jsx" + ] + }, + { + "version": "v1.13", + "date": "2026-07-17", + "time": "17:19", + "summary": "更新需求说明与标注", + "files": [ + ".spec/period-end-balance.md", + ".spec/prototype-comments.json", + ".spec/prototype-review.md", + ".spec/requirements-prd-kpi-balance-alert.md", + ".spec/requirements-prd-list.md", + ".spec/requirements-prd-statement.md", + ".spec/requirements-prd.md", + ".spec/requirements.md", + "index.tsx", + "pages/03-站点信息.jsx" + ] + }, + { + "version": "v1.12", + "date": "2026-07-17", + "time": "16:27", + "summary": "更新需求说明与标注", + "files": [ + ".spec/period-end-balance.md", + ".spec/prototype-comments.json", + ".spec/prototype-review.md", + ".spec/requirements-prd-kpi-balance-alert.md", + ".spec/requirements-prd-list.md", + ".spec/requirements-prd-statement.md", + ".spec/requirements-prd.md", + ".spec/requirements.md", + "index.tsx", + "pages/03-站点信息.jsx" + ] + }, + { + "version": "v1.11", + "date": "2026-07-17", + "time": "16:27", + "summary": "更新需求说明与标注", + "files": [ + ".spec/period-end-balance.md", + ".spec/prototype-comments.json", + ".spec/prototype-review.md", + ".spec/requirements-prd-kpi-balance-alert.md", + ".spec/requirements-prd-list.md", + ".spec/requirements-prd-statement.md", + ".spec/requirements-prd.md", + ".spec/requirements.md", + "index.tsx", + "pages/03-站点信息.jsx" + ] + }, + { + "version": "v1.10", + "date": "2026-07-17", + "time": "16:26", + "summary": "更新需求说明与标注", + "files": [ + ".spec/period-end-balance.md", + ".spec/prototype-comments.json", + ".spec/prototype-review.md", + ".spec/requirements-prd-kpi-balance-alert.md", + ".spec/requirements-prd-list.md", + ".spec/requirements-prd-statement.md", + ".spec/requirements-prd.md", + ".spec/requirements.md", + "index.tsx", + "pages/03-站点信息.jsx" + ] + }, + { + "version": "v1.9", + "date": "2026-07-17", + "time": "16:26", + "summary": "更新需求说明与标注", + "files": [ + ".spec/period-end-balance.md", + ".spec/prototype-comments.json", + ".spec/prototype-review.md", + ".spec/requirements-prd-kpi-balance-alert.md", + ".spec/requirements-prd-list.md", + ".spec/requirements-prd-statement.md", + ".spec/requirements-prd.md", + ".spec/requirements.md", + "index.tsx", + "pages/03-站点信息.jsx" + ] + }, + { + "version": "v1.8", + "date": "2026-07-17", + "time": "16:26", + "summary": "更新需求说明与标注", + "files": [ + ".spec/period-end-balance.md", + ".spec/prototype-comments.json", + ".spec/prototype-review.md", + ".spec/requirements-prd-kpi-balance-alert.md", + ".spec/requirements-prd-list.md", + ".spec/requirements-prd-statement.md", + ".spec/requirements-prd.md", + ".spec/requirements.md", + "index.tsx", + "pages/03-站点信息.jsx" + ] + }, + { + "version": "v1.7", + "date": "2026-07-17", + "time": "16:25", + "summary": "更新需求说明与标注", + "files": [ + ".spec/period-end-balance.md", + ".spec/prototype-comments.json", + ".spec/prototype-review.md", + ".spec/requirements-prd-kpi-balance-alert.md", + ".spec/requirements-prd-list.md", + ".spec/requirements-prd-statement.md", + ".spec/requirements-prd.md", + ".spec/requirements.md", + "index.tsx", + "pages/03-站点信息.jsx" + ] + }, + { + "version": "v1.6", + "date": "2026-07-17", + "time": "16:10", + "summary": "手工台账与预约列表", + "details": [ + "导入主键与实收规则", + "并同步站点信息拆分与导航。", + "页面逻辑与交互:index.tsx", + "需求说明与 PRD:period-end-balance.md、prototype-review.md、requirements-prd-kpi-balance-alert.md、requirements-prd-list.md、requirements-prd.md" + ], + "commit": "305199c", + "files": [ + ".spec/period-end-balance.md", + ".spec/prototype-review.md", + ".spec/requirements-prd-kpi-balance-alert.md", + ".spec/requirements-prd-list.md", + ".spec/requirements-prd.md", + "index.tsx" + ] + }, + { + "version": "v1.5", + "date": "2026-07-16", + "time": "09:00", + "summary": "需求说明与 PRD:requirements-prd-list.md、requirements-prd.md、requirements.md", "details": [], + "commit": "47c223a", + "files": [ + ".spec/requirements-prd-list.md", + ".spec/requirements-prd.md", + ".spec/requirements.md" + ] + }, + { + "version": "v1.4", + "date": "2026-07-12", + "time": "22:45", + "summary": "站点信息:标注目录清理", + "details": [ + "移除内嵌原型导航节点;标注壳切换" + ], "commit": "131b963", "files": [ "index.tsx" ] }, + { + "version": "v1.3", + "date": "2026-07-09", + "time": "17:52", + "summary": "需求说明与 PRD:requirements-prd-statement.md、requirements-prd.md", + "details": [], + "commit": "6ccbbef", + "files": [ + ".spec/requirements-prd-statement.md", + ".spec/requirements-prd.md" + ] + }, + { + "version": "v1.2", + "date": "2026-07-08", + "time": "11:44", + "summary": "需求说明与 PRD:requirements-prd-kpi-balance-alert.md、requirements-prd-list.md、requirements-prd.md、requirements.md", + "details": [], + "commit": "6d14c58", + "files": [ + ".spec/requirements-prd-kpi-balance-alert.md", + ".spec/requirements-prd-list.md", + ".spec/requirements-prd.md", + ".spec/requirements.md" + ] + }, + { + "version": "v1.1", + "date": "2026-07-02", + "time": "03:35", + "summary": "加氢站:新增站点信息独立原型,订单/记录页与共享样式调整", + "details": [ + "页面逻辑与交互:index.tsx", + "需求说明与 PRD:prototype-review.md、requirements-prd-list.md、requirements-prd-statement.md、requirements-prd.md、requirements.md" + ], + "commit": "f5e3126", + "files": [ + ".spec/prototype-review.md", + ".spec/requirements-prd-list.md", + ".spec/requirements-prd-statement.md", + ".spec/requirements-prd.md", + ".spec/requirements.md", + "index.tsx" + ] + } + ] + }, + "oneos-web-h2-station-stats": { + "title": "加氢站数量统计", + "version": "v1.1", + "revision": 1, + "lastUpdated": "2026-07-16T01:00:00.000Z", + "contentHash": "c8997b472fe2f6fd6ad60208b7af42a30ed8d511a778a4b66f1057a39a81c8d5", + "trackedFiles": [ + ".spec/requirements-prd.md", + "components/FilterPanel.tsx", + "components/StationDetailTable.tsx", + "components/StatsCharts.tsx", + "components/StatsKpiRow.tsx", + "components/SummaryInsight.tsx", + "data/stations.json", + "index.tsx", + "styles/index.css", + "types.ts", + "utils/export.ts", + "utils/stats.ts", + "utils/week.ts" + ], + "changelog": [ + { + "version": "v1.1", + "date": "2026-07-16", + "time": "09:00", + "summary": "页面逻辑与交互:FilterPanel.tsx、StationDetailTable.tsx、StatsCharts.tsx、StatsKpiRow.tsx 等", + "details": [ + "样式与布局:index.css", + "需求说明与 PRD:requirements-prd.md", + "演示数据与配置:stations.json" + ], + "commit": "47c223a", + "files": [ + ".spec/requirements-prd.md", + "components/FilterPanel.tsx", + "components/StationDetailTable.tsx", + "components/StatsCharts.tsx", + "components/StatsKpiRow.tsx", + "components/SummaryInsight.tsx", + "data/stations.json", + "index.tsx", + "styles/index.css", + "types.ts", + "utils/export.ts", + "utils/stats.ts" + ] + } + ] + }, + "oneos-web-h2-station-weekly": { + "title": "oneos-web-h2-station-weekly", + "version": "v1.0", + "revision": 0, + "lastUpdated": "2026-07-13T03:01:39.575Z", + "contentHash": "68652d2c7c04dfe1dbf6a7254a1915043d509935d81db857f90464c9d1df9c6a", + "trackedFiles": [ + "index.tsx" + ], + "changelog": [] + }, + "oneos-web-help-center": { + "title": "帮助中心", + "version": "v1.2", + "revision": 2, + "lastUpdated": "2026-06-30T08:54:00.000Z", + "contentHash": "d0ce28b3fa6781237ad7e26dc4daf45ac4382c49d49ce14b6701a5457f55c291", + "trackedFiles": [ + "index.tsx", + "pages/01-功能说明书.jsx" + ], + "changelog": [ { "version": "v1.2", "date": "2026-06-30", @@ -3871,11 +3813,121 @@ } ] }, + "oneos-web-lease-contract": { + "title": "车辆租赁合同", + "version": "v1.3", + "revision": 3, + "lastUpdated": "2026-07-12T14:52:00.000Z", + "contentHash": "bc9e3b24d64b414542a9f45a6099db9b6e41d4a8348b6c3dc2c39b6907f44180", + "trackedFiles": [ + "index.tsx", + "pages/01-车辆租赁合同-变更为三方合同.jsx", + "pages/02-车辆租赁合同-查看.jsx", + "pages/03-车辆租赁合同-附加费用.jsx", + "pages/04-车辆租赁合同-新增.jsx", + "pages/05-车辆租赁合同-新增车辆.jsx", + "pages/06-车辆租赁合同-续签合同.jsx", + "pages/07-车辆租赁合同-转正式合同.jsx", + "pages/08-车辆租赁合同.jsx" + ], + "changelog": [ + { + "version": "v1.3", + "date": "2026-07-12", + "time": "22:52", + "summary": "修复租赁合同合包页面语法错误并补全对象存储发布依赖。", + "details": [], + "commit": "9a4a4a4", + "files": [] + }, + { + "version": "v1.2", + "date": "2026-07-12", + "time": "22:45", + "summary": "租赁合同合包:8 子页同步签署/流程字段与 OperationActions", + "details": [ + "新增、续签、转正式、三方变更、附加费用等子页操作区标准化", + "修复移除面包屑后的 JSX 括号语法" + ], + "commit": "131b963", + "files": [ + "index.tsx" + ] + }, + { + "version": "v1.1", + "date": "2026-06-30", + "time": "16:36", + "summary": "Import desktop web originals into dedicated prototypes with a shared legacy shell, sync script, and a new「ONE-OS Web 端」sidebar section for review alongside existing refactored pages.", + "details": [ + "页面逻辑与交互:index.tsx" + ], + "commit": "d71ebc5", + "files": [ + "index.tsx" + ] + } + ] + }, + "oneos-web-ledger-data": { + "title": "台账数据", + "version": "v1.3", + "revision": 3, + "lastUpdated": "2026-07-12T14:45:00.000Z", + "contentHash": "71c1849f4a65dcbc499c8c878715b5be510165faae2c60fd955024b1dada2a0c", + "trackedFiles": [ + "index.tsx", + "pages/01-保险分摊明细.jsx", + "pages/02-车辆氢费明细.jsx", + "pages/03-车辆维修明细.jsx", + "pages/04-氢费采购端汇总报表.jsx", + "pages/05-租赁业务台账.jsx" + ], + "changelog": [ + { + "version": "v1.3", + "date": "2026-07-12", + "time": "22:45", + "summary": "台账数据合包:5 页操作区标准化", + "details": [ + "保险分摊、氢费、维修明细、氢费采购端汇总、租赁业务台账等页 OperationActions" + ], + "commit": "131b963", + "files": [ + "index.tsx" + ] + }, + { + "version": "v1.2", + "date": "2026-06-30", + "time": "16:54", + "summary": "页面逻辑与交互:index.tsx", + "details": [], + "commit": "0982837", + "files": [ + "index.tsx" + ] + }, + { + "version": "v1.1", + "date": "2026-06-30", + "time": "16:36", + "summary": "Import desktop web originals into dedicated prototypes with a shared legacy shell, sync script, and a new「ONE-OS Web 端」sidebar section for review alongside existing refactored pages.", + "details": [ + "页面逻辑与交互:index.tsx" + ], + "commit": "d71ebc5", + "files": [ + "index.tsx" + ] + } + ] + }, "oneos-web-ops": { "title": "运维管理", "version": "v1.2", "revision": 2, - "lastUpdated": "2026-07-12T14:44:00.000Z", + "lastUpdated": "2026-07-12T14:45:00.000Z", "contentHash": "7f3478394aa4902e8d27903e9647e339c4da9d3326e9ff275ac096e3d18bcbe6", "trackedFiles": [ "index.tsx", @@ -3930,6 +3982,59 @@ "pages/49-型号参数.jsx" ], "changelog": [ + { + "version": "v1.2", + "date": "2026-07-12", + "time": "22:45", + "summary": "运维管理合包:45 页操作列与工具栏按钮标准化", + "details": [ + "备件/调拨/交还车/故障/异动/证件/型号参数等页 OperationActions 与 data-vm-icon 图标" + ], + "commit": "131b963", + "files": [ + "index.tsx" + ] + }, + { + "version": "v1.1", + "date": "2026-06-30", + "time": "16:36", + "summary": "Import desktop web originals into dedicated prototypes with a shared legacy shell, sync script, and a new「ONE-OS Web 端」sidebar section for review alongside existing refactored pages.", + "details": [ + "页面逻辑与交互:index.tsx" + ], + "commit": "d71ebc5", + "files": [ + "index.tsx" + ] + } + ] + }, + "oneos-web-procurement": { + "title": "采购管理", + "version": "v1.3", + "revision": 3, + "lastUpdated": "2026-07-12T14:45:00.000Z", + "contentHash": "de6458042cdb2d87f28d5ce249fca712009d2dba4e5be5bbba08559f07bc9d00", + "trackedFiles": [ + "index.tsx", + "pages/01-三方退租车管理.jsx", + "pages/02-三方退租申请-新增.jsx" + ], + "changelog": [ + { + "version": "v1.3", + "date": "2026-07-12", + "time": "22:45", + "summary": "采购管理合包:三方退租车页操作区标准化", + "details": [ + "退租申请与管理页 OperationActions" + ], + "commit": "131b963", + "files": [ + "index.tsx" + ] + }, { "version": "v1.2", "date": "2026-06-30", @@ -3945,8 +4050,10 @@ "version": "v1.1", "date": "2026-06-30", "time": "16:36", - "summary": "页面逻辑与交互:index.tsx", - "details": [], + "summary": "Import desktop web originals into dedicated prototypes with a shared legacy shell, sync script, and a new「ONE-OS Web 端」sidebar section for review alongside existing refactored pages.", + "details": [ + "页面逻辑与交互:index.tsx" + ], "commit": "d71ebc5", "files": [ "index.tsx" @@ -3954,31 +4061,56 @@ } ] }, - "oneos-web-lease-contract": { - "title": "车辆租赁合同", - "version": "v1.3", - "revision": 3, - "lastUpdated": "2026-07-12T14:52:00.000Z", - "contentHash": "bc9e3b24d64b414542a9f45a6099db9b6e41d4a8348b6c3dc2c39b6907f44180", + "oneos-web-workbench": { + "title": "工作台", + "version": "v1.6", + "revision": 6, + "lastUpdated": "2026-07-15T00:51:55.976Z", + "contentHash": "278a917e174783edccc1915cfa757bdfdf8fc81e83c9e42e31e7ed99811d5b4b", "trackedFiles": [ "index.tsx", - "pages/01-车辆租赁合同-变更为三方合同.jsx", - "pages/02-车辆租赁合同-查看.jsx", - "pages/03-车辆租赁合同-附加费用.jsx", - "pages/04-车辆租赁合同-新增.jsx", - "pages/05-车辆租赁合同-新增车辆.jsx", - "pages/06-车辆租赁合同-续签合同.jsx", - "pages/07-车辆租赁合同-转正式合同.jsx", - "pages/08-车辆租赁合同.jsx" + "pages/01-工作台.jsx" ], "changelog": [ { - "version": "v1.3", + "version": "v1.6", + "date": "2026-07-15", + "time": "08:51", + "summary": "更新页面逻辑与交互", + "files": [ + "index.tsx", + "pages/01-工作台.jsx" + ] + }, + { + "version": "v1.5", + "date": "2026-07-14", + "time": "10:58", + "summary": "更新页面逻辑与交互", + "files": [ + "index.tsx", + "pages/01-工作台.jsx" + ] + }, + { + "version": "v1.4", "date": "2026-07-12", - "time": "22:52", - "summary": "修复租赁合同合包页面语法错误并补全对象存储发布依赖。", + "time": "22:45", + "summary": "工作台:提车应收款快捷入口改跳独立原型", + "details": [ + "快捷入口指向 /prototypes/vehicle-pickup-receivable", + "protoNav 支持直接 location 跳转原型 URL" + ], + "commit": "131b963", + "files": [] + }, + { + "version": "v1.3", + "date": "2026-07-08", + "time": "11:44", + "summary": "新增车辆维修明细、还车应结款原型;车辆管理、收款记录、工作台、加氢站等同步对齐", "details": [], - "commit": "9a4a4a4", + "commit": "6d14c58", "files": [] }, { @@ -4005,181 +4137,70 @@ } ] }, - "oneos-web-business": { - "title": "业务管理", - "version": "v1.2", - "revision": 2, - "lastUpdated": "2026-07-12T14:44:00.000Z", - "contentHash": "e92802237c9714f6c476d9e69a912494c2d6a574e29e129e36e8969d65ac82aa", - "trackedFiles": [ - "index.tsx", - "pages/01-保险采购.jsx", - "pages/02-编辑交车任务.jsx", - "pages/03-查看交车任务.jsx", - "pages/04-车辆成本维护.jsx", - "pages/05-供应商管理-编辑.jsx", - "pages/06-供应商管理-查看.jsx", - "pages/07-供应商管理-新增.jsx", - "pages/08-供应商管理.jsx", - "pages/09-交车任务.jsx", - "pages/10-客户管理-编辑.jsx", - "pages/11-客户管理-查看.jsx", - "pages/12-客户管理-新增.jsx", - "pages/13-客户管理.jsx", - "pages/14-新增交车任务.jsx", - "pages/15-租赁账单-查看.jsx", - "pages/16-租赁账单-收费明细.jsx", - "pages/17-租赁账单.jsx", - "pages/18-ETC管理.jsx" - ], - "changelog": [ - { - "version": "v1.2", - "date": "2026-06-30", - "time": "16:54", - "summary": "页面逻辑与交互:index.tsx", - "details": [], - "commit": "0982837", - "files": [ - "index.tsx" - ] - }, - { - "version": "v1.1", - "date": "2026-06-30", - "time": "16:36", - "summary": "页面逻辑与交互:index.tsx", - "details": [], - "commit": "d71ebc5", - "files": [ - "index.tsx" - ] - } - ] - }, - "oneos-web-ledger-data": { - "title": "台账数据", + "payment-records": { + "title": "收款记录", "version": "v1.3", "revision": 3, - "lastUpdated": "2026-07-12T14:44:00.000Z", - "contentHash": "71c1849f4a65dcbc499c8c878715b5be510165faae2c60fd955024b1dada2a0c", + "lastUpdated": "2026-07-12T14:45:00.000Z", + "contentHash": "c6edcdbf2d5a6fd861d2a17324d57822a1a7faf75237f75a9ae3d126826f9e09", "trackedFiles": [ + ".spec/prototype-comments.json", + "components/AddPaymentModal.tsx", + "components/BillLinkModal.tsx", + "components/FilterPanel.tsx", + "components/LinkedBillsNestedTable.tsx", + "components/PaymentKpiDetailFilterBar.tsx", + "components/PaymentKpiDetailModal.tsx", + "components/PaymentRecordsTable.tsx", + "data/bills.json", + "data/records.json", "index.tsx", - "pages/01-保险分摊明细.jsx", - "pages/02-车辆氢费明细.jsx", - "pages/03-车辆维修明细.jsx", - "pages/04-氢费采购端汇总报表.jsx", - "pages/05-租赁业务台账.jsx" + "styles/index.css", + "types.ts", + "utils/payment.ts" ], "changelog": [ { "version": "v1.3", - "date": "2026-07-08", - "time": "11:44", - "summary": "页面逻辑与交互:index.tsx", - "details": [], - "commit": "6d14c58", - "files": [ - "index.tsx" - ] - }, - { - "version": "v1.2", - "date": "2026-06-30", - "time": "16:54", - "summary": "页面逻辑与交互:index.tsx", - "details": [], - "commit": "0982837", - "files": [ - "index.tsx" - ] - }, - { - "version": "v1.1", - "date": "2026-06-30", - "time": "16:36", - "summary": "页面逻辑与交互:index.tsx", - "details": [], - "commit": "d71ebc5", - "files": [ - "index.tsx" - ] - } - ] - }, - "ledger-shared": { - "title": "ledger-shared", - "version": "v1.6", - "revision": 6, - "lastUpdated": "2026-07-18T04:30:15.800Z", - "contentHash": "cc964f24cd8ed59fec05c5f52ddee558bdceeae54b03f272d9f2364788cfd42e", - "trackedFiles": [ - "DESIGN.md", - "styles/ledger-page.css" - ], - "changelog": [ - { - "version": "v1.6", - "date": "2026-07-18", - "time": "12:30", - "summary": "台账共享样式微调,对齐筛选与列表密度", - "files": [ - "DESIGN.md", - "styles/ledger-page.css" - ], - "details": [ - "ledger-page.css 小幅样式调整" - ] - }, - { - "version": "v1.5", - "date": "2026-07-16", - "time": "09:00", - "summary": "迭代 ONE-OS 多原型:加氢记录/订单同源对账、租赁明细校验与月度损益、车辆与台账增强;新增客户回款与加氢站统计;补齐业务逻辑与对象存储发布规范,同步原型导航。", - "details": [ - "变更 1 个文件" - ], - "commit": "47c223a", - "files": [ - "DESIGN.md" - ] - }, - { - "version": "v1.4", "date": "2026-07-12", - "time": "22:44", - "summary": "迭代 ONE-OS 多原型:统一标注壳与操作规范,租赁明细/合同/提车应收款增强,新增任务工单,同步导航与合包页面。", + "time": "22:45", + "summary": "收款记录:OperationActions 与关联账单操作", "details": [ - "变更 1 个文件" + "操作列标准化;表格新增「关联账单」", + "标注壳切换" ], "commit": "131b963", "files": [ - "DESIGN.md" - ] - }, - { - "version": "v1.3", - "date": "2026-07-09", - "time": "17:52", - "summary": "迭代 ONE-OS 多原型:原型导航与版本追踪上线;车辆氢费明细成本单价校验增强;多业务台账/财务/工作台页面迭代与标注目录同步。", - "details": [ - "变更 1 个文件" - ], - "commit": "6ccbbef", - "files": [ - "DESIGN.md" + "components/FilterPanel.tsx", + "components/PaymentKpiDetailFilterBar.tsx", + "components/PaymentKpiDetailModal.tsx", + "components/PaymentRecordsTable.tsx", + "index.tsx", + "utils/payment.ts" ] }, { "version": "v1.2", "date": "2026-07-08", "time": "11:44", - "summary": "样式与布局:ledger-page.css", - "details": [], + "summary": "新增车辆维修明细、还车应结款原型;车辆管理、收款记录、工作台、加氢站等同步对齐", + "details": [ + "页面逻辑与交互:AddPaymentModal.tsx、BillLinkModal.tsx、FilterPanel.tsx、PaymentKpiDetailModal.tsx 等", + "样式与布局:index.css", + "演示数据与配置:records.json" + ], "commit": "6d14c58", "files": [ - "DESIGN.md", - "styles/ledger-page.css" + "components/AddPaymentModal.tsx", + "components/BillLinkModal.tsx", + "components/FilterPanel.tsx", + "components/PaymentKpiDetailModal.tsx", + "components/PaymentRecordsTable.tsx", + "data/records.json", + "index.tsx", + "styles/index.css", + "types.ts", + "utils/payment.ts" ] }, { @@ -4188,12 +4209,1729 @@ "time": "17:18", "summary": "新增业务部台账、收款记录、业务条线说明及 ledger-shared / vm-shared 公共壳层", "details": [ - "样式与布局:ledger-page.css" + "页面逻辑与交互:AddPaymentModal.tsx、BillLinkModal.tsx、FilterPanel.tsx、LinkedBillsNestedTable.tsx 等", + "样式与布局:index.css", + "演示数据与配置:bills.json、records.json" ], "commit": "d0d7458", "files": [ - "DESIGN.md", - "styles/ledger-page.css" + "components/AddPaymentModal.tsx", + "components/BillLinkModal.tsx", + "components/FilterPanel.tsx", + "components/LinkedBillsNestedTable.tsx", + "components/PaymentKpiDetailFilterBar.tsx", + "components/PaymentKpiDetailModal.tsx", + "components/PaymentRecordsTable.tsx", + "data/bills.json", + "data/records.json", + "index.tsx", + "styles/index.css", + "types.ts" + ] + } + ] + }, + "self-operated-business-ledger": { + "title": "物流业务明细", + "version": "v1.6", + "revision": 6, + "lastUpdated": "2026-07-16T01:00:00.000Z", + "contentHash": "f6a4e1450eaa01e07f5c52ee449b6b7f6c535f74f5e2d981f1691563939a4bba", + "trackedFiles": [ + ".spec/prototype-comments.json", + ".spec/requirements-prd.md", + "components/CalcFormulaTip.tsx", + "components/FilterPanel.tsx", + "components/LedgerKpiRow.tsx", + "components/PlateMultiSelectField.tsx", + "components/SelfImportModal.tsx", + "components/SelfLedgerTable.tsx", + "components/tableColumns.ts", + "data/rows.json", + "index.tsx", + "styles/index.css", + "types.ts", + "utils/batch-io.ts", + "utils/calc-row.ts", + "utils/ledger.ts", + "utils/vehicle-ref.ts" + ], + "changelog": [ + { + "version": "v1.6", + "date": "2026-07-16", + "time": "09:00", + "summary": "页面逻辑与交互:CalcFormulaTip.tsx、FilterPanel.tsx、PlateMultiSelectField.tsx、SelfLedgerTable.tsx 等", + "details": [ + "样式与布局:index.css", + "需求说明与 PRD:requirements-prd.md" + ], + "commit": "47c223a", + "files": [ + ".spec/requirements-prd.md", + "components/CalcFormulaTip.tsx", + "components/FilterPanel.tsx", + "components/PlateMultiSelectField.tsx", + "components/SelfLedgerTable.tsx", + "styles/index.css", + "utils/ledger.ts" + ] + }, + { + "version": "v1.5", + "date": "2026-07-12", + "time": "22:45", + "summary": "物流业务明细:更名、列对齐 Excel、批量导入与自动计算", + "details": [ + "模块更名:物流业务台账 → 物流业务明细", + "列对齐 Excel 1.2:薪资、电费、日社保/挂车/停车/轮胎、线路计价等;系统车型列", + "新增批量导入:模板下载、错误日志、导入后自动计算金额/总成本/盈亏", + "移除行勾选与批量删除" + ], + "commit": "131b963", + "files": [ + "components/FilterPanel.tsx", + "components/LedgerKpiRow.tsx", + "components/SelfImportModal.tsx", + "components/SelfLedgerTable.tsx", + "components/tableColumns.ts", + "data/rows.json", + "index.tsx", + "styles/index.css", + "types.ts", + "utils/batch-io.ts", + "utils/calc-row.ts", + "utils/ledger.ts" + ] + }, + { + "version": "v1.4", + "date": "2026-07-09", + "time": "17:52", + "summary": "页面逻辑与交互:index.tsx", + "details": [], + "commit": "6ccbbef", + "files": [ + "index.tsx" + ] + }, + { + "version": "v1.3", + "date": "2026-07-08", + "time": "11:44", + "summary": "页面逻辑与交互:FilterPanel.tsx、SelfLedgerTable.tsx、index.tsx", + "details": [], + "commit": "6d14c58", + "files": [ + "components/FilterPanel.tsx", + "components/SelfLedgerTable.tsx", + "index.tsx" + ] + }, + { + "version": "v1.2", + "date": "2026-07-06", + "time": "17:18", + "summary": "页面逻辑与交互:FilterPanel.tsx、SelfLedgerTable.tsx、tableColumns.ts、index.tsx 等", + "details": [ + "样式与布局:index.css", + "需求说明与 PRD:requirements-prd.md" + ], + "commit": "d0d7458", + "files": [ + ".spec/requirements-prd.md", + "components/FilterPanel.tsx", + "components/SelfLedgerTable.tsx", + "components/tableColumns.ts", + "index.tsx", + "styles/index.css", + "utils/ledger.ts" + ] + }, + { + "version": "v1.1", + "date": "2026-06-30", + "time": "15:27", + "summary": "页面逻辑与交互:FilterPanel.tsx、LedgerKpiRow.tsx、SelfLedgerTable.tsx、index.tsx 等", + "details": [ + "样式与布局:index.css", + "需求说明与 PRD:requirements-prd.md", + "演示数据与配置:rows.json" + ], + "commit": "af29b26", + "files": [ + ".spec/requirements-prd.md", + "components/FilterPanel.tsx", + "components/LedgerKpiRow.tsx", + "components/SelfLedgerTable.tsx", + "data/rows.json", + "index.tsx", + "styles/index.css", + "types.ts", + "utils/ledger.ts" + ] + } + ] + }, + "supplier-management": { + "title": "供应商管理", + "version": "v1.6", + "revision": 6, + "lastUpdated": "2026-07-13T04:59:56.469Z", + "contentHash": "1ed2c828156b908e834d6b346e149d94e34c80eff52985fcba277c115d37cf1c", + "trackedFiles": [ + ".spec/acp/conversations.json", + ".spec/prototype-comments.json", + ".spec/prototype-review.md", + "components/BankAccountConfirmModal.tsx", + "components/ChangeLogDrawer.tsx", + "components/CoopStatusBadge.tsx", + "components/DeleteConfirmModal.tsx", + "components/FilterPanel.tsx", + "components/KpiCards.tsx", + "components/LeaveConfirmModal.tsx", + "components/RoleSwitcher.tsx", + "components/SupplierTable.tsx", + "data/suppliers.json", + "index.tsx", + "pages/CreatePage.tsx", + "styles/index.css", + "types.ts", + "utils/address.ts", + "utils/constants.ts", + "utils/createForm.ts", + "utils/filters.ts", + "utils/permissions.ts", + "utils/phone.ts", + "utils/region.ts", + "utils/supplierFields.ts", + "utils/validation.ts" + ], + "changelog": [ + { + "version": "v1.6", + "date": "2026-07-13", + "time": "12:59", + "summary": "更新 2 个文件", + "files": [ + ".spec/acp/conversations.json", + ".spec/prototype-comments.json" + ] + }, + { + "version": "v1.5", + "date": "2026-07-13", + "time": "09:31", + "summary": "merge: 合并远程客户管理与供应商管理迭代", + "details": [ + "保留风险标签复核逻辑与统一操作按钮规范。" + ], + "commit": "9b6244e", + "files": [] + }, + { + "version": "v1.4", + "date": "2026-07-13", + "time": "09:31", + "summary": "更新需求说明与标注", + "files": [ + ".spec/prototype-review.md", + "components/BankAccountConfirmModal.tsx", + "components/ChangeLogDrawer.tsx", + "components/DeleteConfirmModal.tsx", + "components/LeaveConfirmModal.tsx", + "components/RoleSwitcher.tsx", + "utils/createForm.ts", + "utils/permissions.ts", + "utils/phone.ts", + "utils/region.ts", + "utils/supplierFields.ts", + "utils/validation.ts" + ] + }, + { + "version": "v1.3", + "date": "2026-07-12", + "time": "22:45", + "summary": "供应商管理:工具栏与操作区图标标准化", + "details": [ + "新增供应商按钮图标统一;删除收入 OperationActions" + ], + "commit": "131b963", + "files": [ + "components/FilterPanel.tsx", + "components/SupplierTable.tsx", + "index.tsx", + "pages/CreatePage.tsx" + ] + }, + { + "version": "v1.2", + "date": "2026-07-03", + "time": "16:17", + "summary": "feat(supplier-management): 同步供应商管理最新原型迭代", + "details": [ + "页面逻辑与交互:BankAccountConfirmModal.tsx、ChangeLogDrawer.tsx、DeleteConfirmModal.tsx、KpiCards.tsx 等", + "样式与布局:index.css", + "需求说明与 PRD:prototype-review.md", + "演示数据与配置:suppliers.json" + ], + "commit": "d458d63", + "files": [ + ".spec/prototype-review.md", + "components/BankAccountConfirmModal.tsx", + "components/ChangeLogDrawer.tsx", + "components/DeleteConfirmModal.tsx", + "components/KpiCards.tsx", + "components/LeaveConfirmModal.tsx", + "components/RoleSwitcher.tsx", + "data/suppliers.json", + "index.tsx", + "pages/CreatePage.tsx", + "styles/index.css", + "types.ts" + ] + }, + { + "version": "v1.1", + "date": "2026-07-01", + "time": "17:48", + "summary": "Add supplier-management prototype and enhance customer-management risk tags.", + "details": [ + "页面逻辑与交互:CoopStatusBadge.tsx、FilterPanel.tsx、KpiCards.tsx、SupplierTable.tsx 等", + "样式与布局:index.css", + "演示数据与配置:suppliers.json" + ], + "commit": "24a9fab", + "files": [ + "components/CoopStatusBadge.tsx", + "components/FilterPanel.tsx", + "components/KpiCards.tsx", + "components/SupplierTable.tsx", + "data/suppliers.json", + "index.tsx", + "pages/CreatePage.tsx", + "styles/index.css", + "types.ts", + "utils/address.ts", + "utils/constants.ts", + "utils/filters.ts" + ] + } + ] + }, + "task-work-order": { + "title": "任务工单", + "version": "v1.2", + "revision": 2, + "lastUpdated": "2026-07-13T01:59:13.978Z", + "contentHash": "a2b1853998ec7655a1ddfb705d0d39496b2544e8b21941d1ec73f17c828c038c", + "trackedFiles": [ + ".spec/2026-07-10-requirements.md", + "components/task-work-order-kpi.jsx", + "data/task-work-order-seed.js", + "index.tsx", + "styles/index.css", + "TaskWorkOrderPage.jsx" + ], + "changelog": [ + { + "version": "v1.2", + "date": "2026-07-13", + "time": "09:59", + "summary": "更新需求说明与标注", + "files": [ + ".spec/2026-07-10-requirements.md", + "components/task-work-order-kpi.jsx", + "data/task-work-order-seed.js", + "index.tsx", + "styles/index.css", + "TaskWorkOrderPage.jsx" + ] + }, + { + "version": "v1.1", + "date": "2026-07-12", + "time": "22:44", + "summary": "统一标注壳与操作规范", + "details": [ + "租赁明细/合同/提车应收款增强", + "新增任务工单", + "同步导航与合包页面。", + "页面逻辑与交互:TaskWorkOrderPage.jsx、task-work-order-kpi.jsx、task-work-order-seed.js、index.tsx", + "样式与布局:index.css", + "需求说明与 PRD:2026-07-10-requirements.md" + ], + "commit": "131b963", + "files": [ + ".spec/2026-07-10-requirements.md", + "TaskWorkOrderPage.jsx", + "components/task-work-order-kpi.jsx", + "data/task-work-order-seed.js", + "index.tsx", + "styles/index.css" + ] + } + ] + }, + "vehicle-h2-fee-ledger": { + "title": "车辆氢费明细", + "version": "v1.18", + "revision": 18, + "lastUpdated": "2026-07-18T04:30:15.800Z", + "contentHash": "7d8df9ed52511e05498e4e3fb14e4343757505c96688df7df9498ca6157d6e95", + "trackedFiles": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + ".spec/verify-reconcile.md", + "globals.ts", + "H2LedgerPage.jsx", + "index.tsx" + ], + "changelog": [ + { + "version": "v1.18", + "date": "2026-07-18", + "time": "12:30", + "summary": "车辆氢费明细:来源标签、核对人/对账人与行级变更日志", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + ".spec/verify-reconcile.md", + "globals.ts", + "H2LedgerPage.jsx", + "index.tsx" + ], + "details": [ + "车牌下方标注站端上传/羚牛上传", + "完成核对写入核对人;对账单提交写入对账人", + "变更日志同步行级 changeLogs,弹窗展示时间/操作人/修改项/原值/新值" + ] + }, + { + "version": "v1.17", + "date": "2026-07-18", + "time": "11:44", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + ".spec/verify-reconcile.md", + "globals.ts", + "H2LedgerPage.jsx", + "index.tsx" + ] + }, + { + "version": "v1.16", + "date": "2026-07-18", + "time": "11:44", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + ".spec/verify-reconcile.md", + "globals.ts", + "H2LedgerPage.jsx", + "index.tsx" + ] + }, + { + "version": "v1.15", + "date": "2026-07-18", + "time": "11:43", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + ".spec/verify-reconcile.md", + "globals.ts", + "H2LedgerPage.jsx", + "index.tsx" + ] + }, + { + "version": "v1.14", + "date": "2026-07-18", + "time": "11:43", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + ".spec/verify-reconcile.md", + "globals.ts", + "H2LedgerPage.jsx", + "index.tsx" + ] + }, + { + "version": "v1.13", + "date": "2026-07-18", + "time": "11:43", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + ".spec/verify-reconcile.md", + "globals.ts", + "H2LedgerPage.jsx", + "index.tsx" + ] + }, + { + "version": "v1.12", + "date": "2026-07-18", + "time": "11:43", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + ".spec/verify-reconcile.md", + "globals.ts", + "H2LedgerPage.jsx", + "index.tsx" + ] + }, + { + "version": "v1.11", + "date": "2026-07-18", + "time": "11:42", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + ".spec/verify-reconcile.md", + "globals.ts", + "H2LedgerPage.jsx", + "index.tsx" + ] + }, + { + "version": "v1.10", + "date": "2026-07-18", + "time": "11:42", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + ".spec/verify-reconcile.md", + "globals.ts", + "H2LedgerPage.jsx", + "index.tsx" + ] + }, + { + "version": "v1.9", + "date": "2026-07-18", + "time": "11:42", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + ".spec/verify-reconcile.md", + "globals.ts", + "H2LedgerPage.jsx", + "index.tsx" + ] + }, + { + "version": "v1.8", + "date": "2026-07-18", + "time": "11:42", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + ".spec/verify-reconcile.md", + "globals.ts", + "H2LedgerPage.jsx", + "index.tsx" + ] + }, + { + "version": "v1.7", + "date": "2026-07-18", + "time": "11:42", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + ".spec/verify-reconcile.md", + "globals.ts", + "H2LedgerPage.jsx", + "index.tsx" + ] + }, + { + "version": "v1.6", + "date": "2026-07-17", + "time": "16:10", + "summary": "页面逻辑与交互:H2LedgerPage.jsx", + "details": [ + "需求说明与 PRD:PRD.md、verify-reconcile.md" + ], + "commit": "305199c", + "files": [ + ".spec/PRD.md", + ".spec/verify-reconcile.md", + "H2LedgerPage.jsx" + ] + }, + { + "version": "v1.5", + "date": "2026-07-12", + "time": "22:45", + "summary": "车辆氢费明细:标注壳与操作区统一", + "details": [ + "OperationActions;标注目录规范化" + ], + "commit": "131b963", + "files": [ + "H2LedgerPage.jsx", + "index.tsx" + ] + }, + { + "version": "v1.4", + "date": "2026-07-09", + "time": "18:34", + "summary": "车辆氢费明细标注目录同步至 v1.5。", + "details": [], + "commit": "824512a", + "files": [] + }, + { + "version": "v1.3", + "date": "2026-07-09", + "time": "17:52", + "summary": "车辆氢费明细成本单价校验增强", + "details": [ + "页面逻辑与交互:H2LedgerPage.jsx", + "需求说明与 PRD:PRD.md" + ], + "commit": "6ccbbef", + "files": [ + ".spec/PRD.md", + "H2LedgerPage.jsx" + ] + }, + { + "version": "v1.2", + "date": "2026-07-02", + "time": "03:35", + "summary": "车辆氢费明细对接 h2VehicleLedgerBridge;移除 vehicle-management-clay", + "details": [ + "页面逻辑与交互:H2LedgerPage.jsx、globals.ts" + ], + "commit": "f5e3126", + "files": [ + "H2LedgerPage.jsx", + "globals.ts" + ] + }, + { + "version": "v1.1", + "date": "2026-06-30", + "time": "15:27", + "summary": "Add vehicle-h2-fee-ledger, customer-management, lease and self-operated ledgers, annotation sources, agent skills, and vite annotation runtime support. Update vehicle management, contract templates, and lease contract flows.", + "details": [ + "页面逻辑与交互:H2LedgerPage.jsx、globals.ts、index.tsx" + ], + "commit": "af29b26", + "files": [ + "H2LedgerPage.jsx", + "globals.ts", + "index.tsx" + ] + } + ] + }, + "vehicle-maintenance-ledger": { + "title": "维修保养台账", + "version": "v1.2", + "revision": 2, + "lastUpdated": "2026-07-12T14:45:00.000Z", + "contentHash": "47e529bd55e41108198a630ab148a354ddd72e92f732cf62183243936f833197", + "trackedFiles": [ + ".spec/prototype-comments.json", + ".spec/requirements-prd.md", + "globals.ts", + "index.tsx", + "MaintenanceLedgerPage.jsx", + "styles/index.css" + ], + "changelog": [ + { + "version": "v1.2", + "date": "2026-07-12", + "time": "22:45", + "summary": "车辆维修明细:标注壳与操作区统一", + "details": [ + "OperationActions;标注目录规范化" + ], + "commit": "131b963", + "files": [ + "MaintenanceLedgerPage.jsx", + "index.tsx" + ] + }, + { + "version": "v1.1", + "date": "2026-07-08", + "time": "11:44", + "summary": "页面逻辑与交互:MaintenanceLedgerPage.jsx、globals.ts、index.tsx", + "details": [ + "样式与布局:index.css", + "需求说明与 PRD:requirements-prd.md" + ], + "commit": "6d14c58", + "files": [ + ".spec/requirements-prd.md", + "MaintenanceLedgerPage.jsx", + "globals.ts", + "index.tsx", + "styles/index.css" + ] + } + ] + }, + "vehicle-management": { + "title": "车辆资产", + "version": "v1.11", + "revision": 11, + "lastUpdated": "2026-07-18T04:30:15.800Z", + "contentHash": "31524a813ece4d38c7971d7a945b6cf68dde1c72ab114f90665061d7ad191848", + "trackedFiles": [ + ".spec/prototype-comments.json", + ".spec/prototype-review.md", + ".spec/requirements-prd-detail.md", + ".spec/requirements-prd-list.md", + ".spec/ui-review.md", + "components/DateRangeCalendarPanel.tsx", + "components/DateRangeFilterField.tsx", + "components/DetailAccidentRecordsTab.tsx", + "components/DetailAnnualReviewRecordsTab.tsx", + "components/DetailBasicInfoTab.tsx", + "components/DetailExpireField.tsx", + "components/DetailFaultRecordsTab.tsx", + "components/DetailInlineEditField.tsx", + "components/DetailInsuranceRecordsTab.tsx", + "components/DetailLeaseRecordsTab.tsx", + "components/DetailLicenseInfoTab.tsx", + "components/DetailModelParamsTab.tsx", + "components/DetailMovementRecordsTab.tsx", + "components/DetailOperateCityInlineEdit.tsx", + "components/DetailOpsManagerInlineEdit.tsx", + "components/DetailParamLayout.tsx", + "components/DetailTransferRecordsTab.tsx", + "components/DetailViolationRecordsTab.tsx", + "components/ExpireDate.tsx", + "components/FilterPanel.tsx", + "components/FilterPickerField.tsx", + "components/HandoverSituationCell.tsx", + "components/ImportModal.tsx", + "components/InspectExpireCell.tsx", + "components/InsuranceExpireCell.tsx", + "components/KpiCards.tsx", + "components/LocationMapModal.tsx", + "components/MultiPlateFilterField.tsx", + "components/OnLeaseFleetSection.tsx", + "components/OperateCityEditModal.tsx", + "components/OperateCityField.tsx", + "components/OperateCityPickerPanel.tsx", + "components/OperateCityProvincePicker.tsx", + "components/OpsManagerModal.tsx", + "components/OpsManagerMultiSelect.tsx", + "components/OpsManagerPickerPanel.tsx", + "components/PageDocToolbar.tsx", + "components/RowActionsMenu.tsx", + "components/SingleDateCalendarPanel.tsx", + "components/SingleYearPickerPanel.tsx", + "components/StatusTag.tsx", + "components/TablePagination.tsx", + "components/useDismissOnFocusOutside.ts", + "components/VehicleEditModal.tsx", + "components/VehicleTable.tsx", + "data/accident-records.json", + "data/annual-review-records.json", + "data/china-operate-regions.json", + "data/fault-records.json", + "data/insurance-purchases.json", + "data/lease-records.json", + "data/movement-records.json", + "data/transfer-records.json", + "data/vehicle-insurance-ledger.json", + "data/vehicles.json", + "data/violation-records.json", + "index.tsx", + "pages/DetailPage.tsx", + "style.css", + "types.ts", + "utils/accidentRecords.ts", + "utils/annualReviewRecords.ts", + "utils/dateRangeCalendar.ts", + "utils/faultRecords.ts", + "utils/filters.ts", + "utils/insurance.ts", + "utils/leaseRecords.ts", + "utils/modelParams.ts", + "utils/movementRecords.ts", + "utils/onLeaseFleet.ts", + "utils/testCaseExport.ts", + "utils/testCasesData.ts", + "utils/transferRecords.ts", + "utils/vehicle.ts", + "utils/vehicleInsuranceRecords.ts", + "utils/vehicleLicenses.ts", + "utils/violationRecords.ts" + ], + "changelog": [ + { + "version": "v1.11", + "date": "2026-07-18", + "time": "12:30", + "summary": "车辆管理:筛选占位符与日期区间对齐全局设计规范", + "files": [ + ".spec/prototype-comments.json", + ".spec/prototype-review.md", + ".spec/requirements-prd-detail.md", + ".spec/requirements-prd-list.md", + ".spec/ui-review.md", + "components/DateRangeCalendarPanel.tsx", + "components/DateRangeFilterField.tsx", + "components/DetailAccidentRecordsTab.tsx", + "components/DetailAnnualReviewRecordsTab.tsx", + "components/DetailBasicInfoTab.tsx", + "components/DetailExpireField.tsx", + "components/DetailFaultRecordsTab.tsx" + ], + "details": [ + "DateRangeFilterField 与 filter placeholder 统一 0.875rem / muted-soft", + "对齐 global-design-spec §4.1 更多筛选与日期区间规则" + ] + }, + { + "version": "v1.10", + "date": "2026-07-18", + "time": "10:51", + "summary": "更新需求说明与标注", + "files": [ + ".spec/prototype-comments.json", + ".spec/prototype-review.md", + ".spec/requirements-prd-detail.md", + ".spec/requirements-prd-list.md", + ".spec/ui-review.md", + "components/DateRangeCalendarPanel.tsx", + "components/DateRangeFilterField.tsx", + "components/DetailAccidentRecordsTab.tsx", + "components/DetailAnnualReviewRecordsTab.tsx", + "components/DetailBasicInfoTab.tsx", + "components/DetailExpireField.tsx", + "components/DetailFaultRecordsTab.tsx" + ] + }, + { + "version": "v1.9", + "date": "2026-07-18", + "time": "10:42", + "summary": "更新需求说明与标注", + "files": [ + ".spec/prototype-comments.json", + ".spec/prototype-review.md", + ".spec/requirements-prd-detail.md", + ".spec/requirements-prd-list.md", + ".spec/ui-review.md", + "components/DateRangeCalendarPanel.tsx", + "components/DateRangeFilterField.tsx", + "components/DetailAccidentRecordsTab.tsx", + "components/DetailAnnualReviewRecordsTab.tsx", + "components/DetailBasicInfoTab.tsx", + "components/DetailExpireField.tsx", + "components/DetailFaultRecordsTab.tsx" + ] + }, + { + "version": "v1.8", + "date": "2026-07-18", + "time": "10:42", + "summary": "更新需求说明与标注", + "files": [ + ".spec/prototype-comments.json", + ".spec/prototype-review.md", + ".spec/requirements-prd-detail.md", + ".spec/requirements-prd-list.md", + ".spec/ui-review.md", + "components/DateRangeCalendarPanel.tsx", + "components/DateRangeFilterField.tsx", + "components/DetailAccidentRecordsTab.tsx", + "components/DetailAnnualReviewRecordsTab.tsx", + "components/DetailBasicInfoTab.tsx", + "components/DetailExpireField.tsx", + "components/DetailFaultRecordsTab.tsx" + ] + }, + { + "version": "v1.7", + "date": "2026-07-18", + "time": "10:21", + "summary": "更新需求说明与标注", + "files": [ + ".spec/prototype-comments.json", + ".spec/prototype-review.md", + ".spec/requirements-prd-detail.md", + ".spec/requirements-prd-list.md", + ".spec/ui-review.md", + "components/DateRangeCalendarPanel.tsx", + "components/DateRangeFilterField.tsx", + "components/DetailAccidentRecordsTab.tsx", + "components/DetailAnnualReviewRecordsTab.tsx", + "components/DetailBasicInfoTab.tsx", + "components/DetailExpireField.tsx", + "components/DetailFaultRecordsTab.tsx" + ] + }, + { + "version": "v1.6", + "date": "2026-07-16", + "time": "09:00", + "summary": "页面逻辑与交互:FilterPanel.tsx、KpiCards.tsx、OnLeaseFleetSection.tsx、VehicleTable.tsx 等", + "details": [ + "样式与布局:style.css", + "需求说明与 PRD:requirements-prd-detail.md、requirements-prd-list.md", + "演示数据与配置:vehicles.json" + ], + "commit": "47c223a", + "files": [ + ".spec/requirements-prd-detail.md", + ".spec/requirements-prd-list.md", + "components/FilterPanel.tsx", + "components/KpiCards.tsx", + "components/OnLeaseFleetSection.tsx", + "components/VehicleTable.tsx", + "data/vehicles.json", + "index.tsx", + "style.css", + "types.ts", + "utils/filters.ts", + "utils/leaseRecords.ts" + ] + }, + { + "version": "v1.5", + "date": "2026-07-12", + "time": "22:45", + "summary": "车辆管理:在租车队 KPI 迁入、车型分布弹窗与列表样式优化", + "details": [ + "在租车队 KPI 从租赁合同列表迁入;按品牌型号统计在租数量", + "车型分布弹窗:品牌筛选、车型卡片、占比进度条、车辆明细", + "详情 Tab 与列表筛选/导入/KPI 操作区统一;表格样式优化" + ], + "commit": "131b963", + "files": [ + "components/DetailAccidentRecordsTab.tsx", + "components/DetailAnnualReviewRecordsTab.tsx", + "components/DetailFaultRecordsTab.tsx", + "components/DetailInsuranceRecordsTab.tsx", + "components/DetailLeaseRecordsTab.tsx", + "components/DetailMovementRecordsTab.tsx", + "components/DetailTransferRecordsTab.tsx", + "components/DetailViolationRecordsTab.tsx", + "components/FilterPanel.tsx", + "components/ImportModal.tsx", + "components/KpiCards.tsx", + "components/MultiPlateFilterField.tsx" + ] + }, + { + "version": "v1.4", + "date": "2026-07-08", + "time": "11:44", + "summary": "页面逻辑与交互:DateRangeFilterField.tsx、DetailAccidentRecordsTab.tsx、DetailAnnualReviewRecordsTab.tsx、DetailFaultRecordsTab.tsx 等", + "details": [ + "样式与布局:style.css" + ], + "commit": "6d14c58", + "files": [ + "components/DateRangeFilterField.tsx", + "components/DetailAccidentRecordsTab.tsx", + "components/DetailAnnualReviewRecordsTab.tsx", + "components/DetailFaultRecordsTab.tsx", + "components/DetailLeaseRecordsTab.tsx", + "components/DetailMovementRecordsTab.tsx", + "components/DetailTransferRecordsTab.tsx", + "components/DetailViolationRecordsTab.tsx", + "components/FilterPickerField.tsx", + "components/MultiPlateFilterField.tsx", + "components/TablePagination.tsx", + "style.css" + ] + }, + { + "version": "v1.3", + "date": "2026-07-06", + "time": "17:18", + "summary": "页面逻辑与交互:TablePagination.tsx", + "details": [ + "样式与布局:style.css" + ], + "commit": "d0d7458", + "files": [ + "components/TablePagination.tsx", + "style.css" + ] + }, + { + "version": "v1.2", + "date": "2026-06-30", + "time": "15:27", + "summary": "页面逻辑与交互:DetailBasicInfoTab.tsx、DetailInlineEditField.tsx、DetailOperateCityInlineEdit.tsx、DetailOpsManagerInlineEdit.tsx 等", + "details": [ + "样式与布局:style.css", + "需求说明与 PRD:prototype-review.md、requirements-prd-list.md", + "演示数据与配置:china-operate-regions.json" + ], + "commit": "af29b26", + "files": [ + ".spec/prototype-review.md", + ".spec/requirements-prd-list.md", + "components/DetailBasicInfoTab.tsx", + "components/DetailInlineEditField.tsx", + "components/DetailOperateCityInlineEdit.tsx", + "components/DetailOpsManagerInlineEdit.tsx", + "components/FilterPanel.tsx", + "components/ImportModal.tsx", + "components/KpiCards.tsx", + "components/LocationMapModal.tsx", + "components/OperateCityEditModal.tsx", + "components/OperateCityField.tsx" + ] + }, + { + "version": "v1.1", + "date": "2026-06-26", + "time": "15:36", + "summary": "页面逻辑与交互:DateRangeCalendarPanel.tsx、DateRangeFilterField.tsx、DetailAccidentRecordsTab.tsx、DetailAnnualReviewRecordsTab.tsx 等", + "details": [ + "样式与布局:style.css", + "需求说明与 PRD:requirements-prd-detail.md、requirements-prd-list.md、ui-review.md", + "演示数据与配置:accident-records.json、annual-review-records.json、fault-records.json、insurance-purchases.json、lease-records.json、movement-records.json、transfer-records.json、vehicle-insurance-ledger.json、vehicles.json、violation-records.json" + ], + "commit": "7ef8852", + "files": [ + ".spec/requirements-prd-detail.md", + ".spec/requirements-prd-list.md", + ".spec/ui-review.md", + "components/DateRangeCalendarPanel.tsx", + "components/DateRangeFilterField.tsx", + "components/DetailAccidentRecordsTab.tsx", + "components/DetailAnnualReviewRecordsTab.tsx", + "components/DetailBasicInfoTab.tsx", + "components/DetailExpireField.tsx", + "components/DetailFaultRecordsTab.tsx", + "components/DetailInlineEditField.tsx", + "components/DetailInsuranceRecordsTab.tsx" + ] + } + ] + }, + "vehicle-pickup-receivable": { + "title": "提车应收款", + "version": "v1.2", + "revision": 2, + "lastUpdated": "2026-07-13T01:31:00.000Z", + "contentHash": "266723009574aadd9d2ee8dd0fc7a6bb36f086bd146a17fbf4c61b1746e7353f", + "trackedFiles": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + "data/pickup-receivable-list-data.js", + "index.tsx", + "pickup-receivable-bridge.js", + "pickup-receivable-calc.js", + "styles/index.css", + "VehiclePickupReceivableApp.jsx", + "VehiclePickupReceivableCollectPage.jsx", + "VehiclePickupReceivableContractView.jsx", + "VehiclePickupReceivableList.jsx" + ], + "changelog": [ + { + "version": "v1.2", + "date": "2026-07-13", + "time": "09:31", + "summary": "提车应收款收款/合同页增强", + "details": [ + "租赁明细标注同步", + "导航注册表更新", + "页面逻辑与交互:VehiclePickupReceivableApp.jsx、VehiclePickupReceivableCollectPage.jsx、VehiclePickupReceivableContractView.jsx、VehiclePickupReceivableList.jsx 等", + "样式与布局:index.css" + ], + "commit": "962e835", + "files": [ + "VehiclePickupReceivableApp.jsx", + "VehiclePickupReceivableCollectPage.jsx", + "VehiclePickupReceivableContractView.jsx", + "VehiclePickupReceivableList.jsx", + "data/pickup-receivable-list-data.js", + "pickup-receivable-bridge.js", + "styles/index.css" + ] + }, + { + "version": "v1.167", + "date": "2026-07-13", + "time": "01:21", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + "data/pickup-receivable-list-data.js", + "index.tsx", + "pickup-receivable-bridge.js", + "pickup-receivable-calc.js", + "styles/index.css", + "VehiclePickupReceivableApp.jsx", + "VehiclePickupReceivableCollectPage.jsx", + "VehiclePickupReceivableContractView.jsx", + "VehiclePickupReceivableList.jsx" + ] + }, + { + "version": "v1.166", + "date": "2026-07-13", + "time": "01:21", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + "data/pickup-receivable-list-data.js", + "index.tsx", + "pickup-receivable-bridge.js", + "pickup-receivable-calc.js", + "styles/index.css", + "VehiclePickupReceivableApp.jsx", + "VehiclePickupReceivableCollectPage.jsx", + "VehiclePickupReceivableContractView.jsx", + "VehiclePickupReceivableList.jsx" + ] + }, + { + "version": "v1.165", + "date": "2026-07-13", + "time": "01:21", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + "data/pickup-receivable-list-data.js", + "index.tsx", + "pickup-receivable-bridge.js", + "pickup-receivable-calc.js", + "styles/index.css", + "VehiclePickupReceivableApp.jsx", + "VehiclePickupReceivableCollectPage.jsx", + "VehiclePickupReceivableContractView.jsx", + "VehiclePickupReceivableList.jsx" + ] + }, + { + "version": "v1.164", + "date": "2026-07-13", + "time": "01:21", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + "data/pickup-receivable-list-data.js", + "index.tsx", + "pickup-receivable-bridge.js", + "pickup-receivable-calc.js", + "styles/index.css", + "VehiclePickupReceivableApp.jsx", + "VehiclePickupReceivableCollectPage.jsx", + "VehiclePickupReceivableContractView.jsx", + "VehiclePickupReceivableList.jsx" + ] + }, + { + "version": "v1.163", + "date": "2026-07-13", + "time": "01:21", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + "data/pickup-receivable-list-data.js", + "index.tsx", + "pickup-receivable-bridge.js", + "pickup-receivable-calc.js", + "styles/index.css", + "VehiclePickupReceivableApp.jsx", + "VehiclePickupReceivableCollectPage.jsx", + "VehiclePickupReceivableContractView.jsx", + "VehiclePickupReceivableList.jsx" + ] + }, + { + "version": "v1.162", + "date": "2026-07-13", + "time": "01:21", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + "data/pickup-receivable-list-data.js", + "index.tsx", + "pickup-receivable-bridge.js", + "pickup-receivable-calc.js", + "styles/index.css", + "VehiclePickupReceivableApp.jsx", + "VehiclePickupReceivableCollectPage.jsx", + "VehiclePickupReceivableContractView.jsx", + "VehiclePickupReceivableList.jsx" + ] + }, + { + "version": "v1.161", + "date": "2026-07-13", + "time": "01:21", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + "data/pickup-receivable-list-data.js", + "index.tsx", + "pickup-receivable-bridge.js", + "pickup-receivable-calc.js", + "styles/index.css", + "VehiclePickupReceivableApp.jsx", + "VehiclePickupReceivableCollectPage.jsx", + "VehiclePickupReceivableContractView.jsx", + "VehiclePickupReceivableList.jsx" + ] + }, + { + "version": "v1.160", + "date": "2026-07-13", + "time": "01:21", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + "data/pickup-receivable-list-data.js", + "index.tsx", + "pickup-receivable-bridge.js", + "pickup-receivable-calc.js", + "styles/index.css", + "VehiclePickupReceivableApp.jsx", + "VehiclePickupReceivableCollectPage.jsx", + "VehiclePickupReceivableContractView.jsx", + "VehiclePickupReceivableList.jsx" + ] + }, + { + "version": "v1.159", + "date": "2026-07-13", + "time": "01:16", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + "data/pickup-receivable-list-data.js", + "index.tsx", + "pickup-receivable-bridge.js", + "pickup-receivable-calc.js", + "styles/index.css", + "VehiclePickupReceivableApp.jsx", + "VehiclePickupReceivableCollectPage.jsx", + "VehiclePickupReceivableContractView.jsx", + "VehiclePickupReceivableList.jsx" + ] + }, + { + "version": "v1.158", + "date": "2026-07-13", + "time": "01:16", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + "data/pickup-receivable-list-data.js", + "index.tsx", + "pickup-receivable-bridge.js", + "pickup-receivable-calc.js", + "styles/index.css", + "VehiclePickupReceivableApp.jsx", + "VehiclePickupReceivableCollectPage.jsx", + "VehiclePickupReceivableContractView.jsx", + "VehiclePickupReceivableList.jsx" + ] + }, + { + "version": "v1.157", + "date": "2026-07-13", + "time": "01:16", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + "data/pickup-receivable-list-data.js", + "index.tsx", + "pickup-receivable-bridge.js", + "pickup-receivable-calc.js", + "styles/index.css", + "VehiclePickupReceivableApp.jsx", + "VehiclePickupReceivableCollectPage.jsx", + "VehiclePickupReceivableContractView.jsx", + "VehiclePickupReceivableList.jsx" + ] + }, + { + "version": "v1.156", + "date": "2026-07-13", + "time": "01:16", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + "data/pickup-receivable-list-data.js", + "index.tsx", + "pickup-receivable-bridge.js", + "pickup-receivable-calc.js", + "styles/index.css", + "VehiclePickupReceivableApp.jsx", + "VehiclePickupReceivableCollectPage.jsx", + "VehiclePickupReceivableContractView.jsx", + "VehiclePickupReceivableList.jsx" + ] + }, + { + "version": "v1.155", + "date": "2026-07-13", + "time": "01:16", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + "data/pickup-receivable-list-data.js", + "index.tsx", + "pickup-receivable-bridge.js", + "pickup-receivable-calc.js", + "styles/index.css", + "VehiclePickupReceivableApp.jsx", + "VehiclePickupReceivableCollectPage.jsx", + "VehiclePickupReceivableContractView.jsx", + "VehiclePickupReceivableList.jsx" + ] + }, + { + "version": "v1.154", + "date": "2026-07-13", + "time": "01:04", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + "data/pickup-receivable-list-data.js", + "index.tsx", + "pickup-receivable-bridge.js", + "pickup-receivable-calc.js", + "styles/index.css", + "VehiclePickupReceivableApp.jsx", + "VehiclePickupReceivableCollectPage.jsx", + "VehiclePickupReceivableContractView.jsx", + "VehiclePickupReceivableList.jsx" + ] + }, + { + "version": "v1.153", + "date": "2026-07-13", + "time": "01:03", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + "data/pickup-receivable-list-data.js", + "index.tsx", + "pickup-receivable-bridge.js", + "pickup-receivable-calc.js", + "styles/index.css", + "VehiclePickupReceivableApp.jsx", + "VehiclePickupReceivableCollectPage.jsx", + "VehiclePickupReceivableContractView.jsx", + "VehiclePickupReceivableList.jsx" + ] + }, + { + "version": "v1.152", + "date": "2026-07-13", + "time": "01:03", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + "data/pickup-receivable-list-data.js", + "index.tsx", + "pickup-receivable-bridge.js", + "pickup-receivable-calc.js", + "styles/index.css", + "VehiclePickupReceivableApp.jsx", + "VehiclePickupReceivableCollectPage.jsx", + "VehiclePickupReceivableContractView.jsx", + "VehiclePickupReceivableList.jsx" + ] + }, + { + "version": "v1.151", + "date": "2026-07-13", + "time": "01:03", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + "data/pickup-receivable-list-data.js", + "index.tsx", + "pickup-receivable-bridge.js", + "pickup-receivable-calc.js", + "styles/index.css", + "VehiclePickupReceivableApp.jsx", + "VehiclePickupReceivableCollectPage.jsx", + "VehiclePickupReceivableContractView.jsx", + "VehiclePickupReceivableList.jsx" + ] + }, + { + "version": "v1.150", + "date": "2026-07-13", + "time": "01:03", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + "data/pickup-receivable-list-data.js", + "index.tsx", + "pickup-receivable-bridge.js", + "pickup-receivable-calc.js", + "styles/index.css", + "VehiclePickupReceivableApp.jsx", + "VehiclePickupReceivableCollectPage.jsx", + "VehiclePickupReceivableContractView.jsx", + "VehiclePickupReceivableList.jsx" + ] + }, + { + "version": "v1.149", + "date": "2026-07-13", + "time": "00:54", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + "data/pickup-receivable-list-data.js", + "index.tsx", + "pickup-receivable-bridge.js", + "pickup-receivable-calc.js", + "styles/index.css", + "VehiclePickupReceivableApp.jsx", + "VehiclePickupReceivableCollectPage.jsx", + "VehiclePickupReceivableContractView.jsx", + "VehiclePickupReceivableList.jsx" + ] + }, + { + "version": "v1.148", + "date": "2026-07-13", + "time": "00:54", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + "data/pickup-receivable-list-data.js", + "index.tsx", + "pickup-receivable-bridge.js", + "pickup-receivable-calc.js", + "styles/index.css", + "VehiclePickupReceivableApp.jsx", + "VehiclePickupReceivableCollectPage.jsx", + "VehiclePickupReceivableContractView.jsx", + "VehiclePickupReceivableList.jsx" + ] + }, + { + "version": "v1.147", + "date": "2026-07-13", + "time": "00:54", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + "data/pickup-receivable-list-data.js", + "index.tsx", + "pickup-receivable-bridge.js", + "pickup-receivable-calc.js", + "styles/index.css", + "VehiclePickupReceivableApp.jsx", + "VehiclePickupReceivableCollectPage.jsx", + "VehiclePickupReceivableContractView.jsx", + "VehiclePickupReceivableList.jsx" + ] + }, + { + "version": "v1.146", + "date": "2026-07-13", + "time": "00:54", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + "data/pickup-receivable-list-data.js", + "index.tsx", + "pickup-receivable-bridge.js", + "pickup-receivable-calc.js", + "styles/index.css", + "VehiclePickupReceivableApp.jsx", + "VehiclePickupReceivableCollectPage.jsx", + "VehiclePickupReceivableContractView.jsx", + "VehiclePickupReceivableList.jsx" + ] + }, + { + "version": "v1.145", + "date": "2026-07-13", + "time": "00:54", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + "data/pickup-receivable-list-data.js", + "index.tsx", + "pickup-receivable-bridge.js", + "pickup-receivable-calc.js", + "styles/index.css", + "VehiclePickupReceivableApp.jsx", + "VehiclePickupReceivableCollectPage.jsx", + "VehiclePickupReceivableContractView.jsx", + "VehiclePickupReceivableList.jsx" + ] + }, + { + "version": "v1.144", + "date": "2026-07-13", + "time": "00:50", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + "data/pickup-receivable-list-data.js", + "index.tsx", + "pickup-receivable-bridge.js", + "pickup-receivable-calc.js", + "styles/index.css", + "VehiclePickupReceivableApp.jsx", + "VehiclePickupReceivableCollectPage.jsx", + "VehiclePickupReceivableContractView.jsx", + "VehiclePickupReceivableList.jsx" + ] + }, + { + "version": "v1.143", + "date": "2026-07-13", + "time": "00:50", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + "data/pickup-receivable-list-data.js", + "index.tsx", + "pickup-receivable-bridge.js", + "pickup-receivable-calc.js", + "styles/index.css", + "VehiclePickupReceivableApp.jsx", + "VehiclePickupReceivableCollectPage.jsx", + "VehiclePickupReceivableContractView.jsx", + "VehiclePickupReceivableList.jsx" + ] + }, + { + "version": "v1.142", + "date": "2026-07-13", + "time": "00:49", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + "data/pickup-receivable-list-data.js", + "index.tsx", + "pickup-receivable-bridge.js", + "pickup-receivable-calc.js", + "styles/index.css", + "VehiclePickupReceivableApp.jsx", + "VehiclePickupReceivableCollectPage.jsx", + "VehiclePickupReceivableContractView.jsx", + "VehiclePickupReceivableList.jsx" + ] + }, + { + "version": "v1.141", + "date": "2026-07-13", + "time": "00:49", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + "data/pickup-receivable-list-data.js", + "index.tsx", + "pickup-receivable-bridge.js", + "pickup-receivable-calc.js", + "styles/index.css", + "VehiclePickupReceivableApp.jsx", + "VehiclePickupReceivableCollectPage.jsx", + "VehiclePickupReceivableContractView.jsx", + "VehiclePickupReceivableList.jsx" + ] + }, + { + "version": "v1.140", + "date": "2026-07-13", + "time": "00:49", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + "data/pickup-receivable-list-data.js", + "index.tsx", + "pickup-receivable-bridge.js", + "pickup-receivable-calc.js", + "styles/index.css", + "VehiclePickupReceivableApp.jsx", + "VehiclePickupReceivableCollectPage.jsx", + "VehiclePickupReceivableContractView.jsx", + "VehiclePickupReceivableList.jsx" + ] + }, + { + "version": "v1.139", + "date": "2026-07-13", + "time": "00:45", + "summary": "更新需求说明与标注", + "files": [ + ".spec/PRD.md", + ".spec/prototype-comments.json", + "data/pickup-receivable-list-data.js", + "index.tsx", + "pickup-receivable-bridge.js", + "pickup-receivable-calc.js", + "styles/index.css", + "VehiclePickupReceivableApp.jsx", + "VehiclePickupReceivableCollectPage.jsx", + "VehiclePickupReceivableContractView.jsx", + "VehiclePickupReceivableList.jsx" + ] + } + ] + }, + "vehicle-return-settlement": { + "title": "还车应结款", + "version": "v1.3", + "revision": 3, + "lastUpdated": "2026-07-12T14:44:00.000Z", + "contentHash": "d9ae6105c792609ffad4275d2730ff6361837ebd654af3a64f6f34473482f073", + "trackedFiles": [ + ".spec/prototype-comments.json", + "index.tsx", + "styles/index.css", + "VehicleReturnSettlementApp.jsx", + "VehicleReturnSettlementHandle.jsx" + ], + "changelog": [ + { + "version": "v1.3", + "date": "2026-07-12", + "time": "22:44", + "summary": "页面逻辑与交互:VehicleReturnSettlementHandle.jsx", + "details": [], + "commit": "131b963", + "files": [ + "VehicleReturnSettlementHandle.jsx" + ] + }, + { + "version": "v1.2", + "date": "2026-07-09", + "time": "17:52", + "summary": "页面逻辑与交互:VehicleReturnSettlementApp.jsx、VehicleReturnSettlementHandle.jsx、index.tsx", + "details": [ + "样式与布局:index.css" + ], + "commit": "6ccbbef", + "files": [ + "VehicleReturnSettlementApp.jsx", + "VehicleReturnSettlementHandle.jsx", + "index.tsx", + "styles/index.css" + ] + }, + { + "version": "v1.1", + "date": "2026-07-08", + "time": "11:44", + "summary": "新增车辆维修明细、还车应结款原型;车辆管理、收款记录、工作台、加氢站等同步对齐", + "details": [ + "页面逻辑与交互:index.tsx" + ], + "commit": "6d14c58", + "files": [ + "index.tsx" + ] + } + ] + }, + "vehicle-return-settlement-v2": { + "title": "还车应结款-新", + "version": "v1.2", + "revision": 2, + "lastUpdated": "2026-07-12T14:45:00.000Z", + "contentHash": "a581b2271b6687a81a82ae72e0f6e8523991596cad86c30080f79354b65b9a63", + "trackedFiles": [ + ".spec/prototype-comments.json", + "index.tsx", + "styles/index.css", + "VehicleReturnSettlementV2App.jsx", + "VehicleReturnSettlementV2Detail.jsx", + "VehicleReturnSettlementV2List.jsx", + "vrsV2Data.js" + ], + "changelog": [ + { + "version": "v1.2", + "date": "2026-07-12", + "time": "22:45", + "summary": "还车应结算 V2:OperationActions 统一为详情主操作", + "details": [ + "列表操作列标准化" + ], + "commit": "131b963", + "files": [ + "VehicleReturnSettlementV2Detail.jsx", + "VehicleReturnSettlementV2List.jsx", + "vrsV2Data.js" + ] + }, + { + "version": "v1.1", + "date": "2026-07-09", + "time": "17:52", + "summary": "页面逻辑与交互:VehicleReturnSettlementV2App.jsx、VehicleReturnSettlementV2Detail.jsx、VehicleReturnSettlementV2List.jsx、index.tsx 等", + "details": [ + "样式与布局:index.css" + ], + "commit": "6ccbbef", + "files": [ + "VehicleReturnSettlementV2App.jsx", + "VehicleReturnSettlementV2Detail.jsx", + "VehicleReturnSettlementV2List.jsx", + "index.tsx", + "styles/index.css", + "vrsV2Data.js" ] } ] @@ -4203,7 +5941,7 @@ "version": "v1.5", "revision": 5, "lastUpdated": "2026-07-17T08:10:00.000Z", - "contentHash": "e818f6907d33452be1fe92f1f6162751af374856aa0fe464a06353c6e831752b", + "contentHash": "c3e7223b1958455ae3fbf88f59f3126cce94d06b5ca419057a7377d6b6887e90", "trackedFiles": [ "DESIGN.md" ], @@ -4221,6 +5959,15 @@ "DESIGN.md" ] }, + { + "version": "v1.6", + "date": "2026-07-13", + "time": "11:04", + "summary": "更新 DESIGN.md", + "files": [ + "DESIGN.md" + ] + }, { "version": "v1.4", "date": "2026-07-12", @@ -4273,713 +6020,6 @@ } ] }, - "oneos-web-h2-station-stats": { - "title": "加氢站数量统计", - "version": "v1.1", - "revision": 1, - "lastUpdated": "2026-07-16T01:00:00.000Z", - "contentHash": "c8997b472fe2f6fd6ad60208b7af42a30ed8d511a778a4b66f1057a39a81c8d5", - "trackedFiles": [ - ".spec/requirements-prd.md", - "components/FilterPanel.tsx", - "components/StationDetailTable.tsx", - "components/StatsCharts.tsx", - "components/StatsKpiRow.tsx", - "components/SummaryInsight.tsx", - "data/stations.json", - "index.tsx", - "styles/index.css", - "types.ts", - "utils/export.ts", - "utils/stats.ts", - "utils/week.ts" - ], - "changelog": [ - { - "version": "v1.1", - "date": "2026-07-16", - "time": "09:00", - "summary": "页面逻辑与交互:FilterPanel.tsx、StationDetailTable.tsx、StatsCharts.tsx、StatsKpiRow.tsx 等", - "details": [ - "样式与布局:index.css", - "需求说明与 PRD:requirements-prd.md", - "演示数据与配置:stations.json" - ], - "commit": "47c223a", - "files": [ - ".spec/requirements-prd.md", - "components/FilterPanel.tsx", - "components/StationDetailTable.tsx", - "components/StatsCharts.tsx", - "components/StatsKpiRow.tsx", - "components/SummaryInsight.tsx", - "data/stations.json", - "index.tsx", - "styles/index.css", - "types.ts", - "utils/export.ts", - "utils/stats.ts" - ] - } - ] - }, - "customer-payment-collection": { - "title": "客户回款情况", - "version": "v1.1", - "revision": 1, - "lastUpdated": "2026-07-16T01:00:00.000Z", - "contentHash": "00443b22a2f97d9e5162764025ec4246c3a1220f6f397c2df181da81aedb5437", - "trackedFiles": [ - "index.tsx", - "pages/客户回款情况.jsx" - ], - "changelog": [ - { - "version": "v1.1", - "date": "2026-07-16", - "time": "09:00", - "summary": "页面逻辑与交互:index.tsx", - "details": [], - "commit": "47c223a", - "files": [ - "index.tsx" - ] - } - ] - }, - "oneos-h5-h2-order": { - "title": "加氢记录(H5)", - "version": "v1.23", - "revision": 23, - "lastUpdated": "2026-07-18T04:30:15.800Z", - "contentHash": "f8635009e1ef7839b558004c630e4e9a00f87dc6e6f43f454e5b136bc2828753", - "trackedFiles": [ - ".spec/2026-07-14-implementation-plan.md", - ".spec/2026-07-14-requirements-design.md", - ".spec/feature-create.md", - ".spec/feature-detail.md", - ".spec/feature-list.md", - ".spec/feature-manual-ledger.md", - ".spec/fleet-plate-tag.md", - ".spec/prototype-comments.json", - ".spec/reconcile-linkage.md", - ".spec/requirements-prd.md", - "components/CreateWizard.tsx", - "components/DateTimePickerSheet.tsx", - "components/Icons.tsx", - "components/ManualLedgerPanel.tsx", - "components/OrderCard.tsx", - "components/OrderDetail.tsx", - "components/PhoneShell.tsx", - "components/PlateKeyboardSheet.tsx", - "index.tsx", - "styles/index.css", - "types.ts", - "utils/demo-photo.ts", - "utils/fleet-plates.ts", - "utils/format.ts", - "utils/manual-ledger.ts", - "utils/ocr-mock.ts", - "utils/orders.ts", - "utils/photo-watermark.ts", - "utils/vehicle-mileage.ts" - ], - "changelog": [ - { - "version": "v1.23", - "date": "2026-07-18", - "time": "12:30", - "summary": "加氢记录(H5):站端写入标注来源,手工台账说明同步", - "files": [ - ".spec/2026-07-14-implementation-plan.md", - ".spec/2026-07-14-requirements-design.md", - ".spec/feature-create.md", - ".spec/feature-detail.md", - ".spec/feature-list.md", - ".spec/feature-manual-ledger.md", - ".spec/fleet-plate-tag.md", - ".spec/prototype-comments.json", - ".spec/reconcile-linkage.md", - ".spec/requirements-prd.md", - "components/CreateWizard.tsx", - "components/DateTimePickerSheet.tsx" - ], - "details": [ - "upsert 写入 recordSource=station(站端上传)", - "手工台账规格与详情展示小幅同步" - ] - }, - { - "version": "v1.22", - "date": "2026-07-18", - "time": "10:36", - "summary": "更新需求说明与标注", - "files": [ - ".spec/2026-07-14-implementation-plan.md", - ".spec/2026-07-14-requirements-design.md", - ".spec/feature-create.md", - ".spec/feature-detail.md", - ".spec/feature-list.md", - ".spec/feature-manual-ledger.md", - ".spec/fleet-plate-tag.md", - ".spec/prototype-comments.json", - ".spec/reconcile-linkage.md", - ".spec/requirements-prd.md", - "components/CreateWizard.tsx", - "components/DateTimePickerSheet.tsx" - ] - }, - { - "version": "v1.21", - "date": "2026-07-18", - "time": "10:36", - "summary": "更新需求说明与标注", - "files": [ - ".spec/2026-07-14-implementation-plan.md", - ".spec/2026-07-14-requirements-design.md", - ".spec/feature-create.md", - ".spec/feature-detail.md", - ".spec/feature-list.md", - ".spec/feature-manual-ledger.md", - ".spec/fleet-plate-tag.md", - ".spec/prototype-comments.json", - ".spec/reconcile-linkage.md", - ".spec/requirements-prd.md", - "components/CreateWizard.tsx", - "components/DateTimePickerSheet.tsx" - ] - }, - { - "version": "v1.20", - "date": "2026-07-18", - "time": "10:33", - "summary": "更新需求说明与标注", - "files": [ - ".spec/2026-07-14-implementation-plan.md", - ".spec/2026-07-14-requirements-design.md", - ".spec/feature-create.md", - ".spec/feature-detail.md", - ".spec/feature-list.md", - ".spec/feature-manual-ledger.md", - ".spec/fleet-plate-tag.md", - ".spec/prototype-comments.json", - ".spec/reconcile-linkage.md", - ".spec/requirements-prd.md", - "components/CreateWizard.tsx", - "components/DateTimePickerSheet.tsx" - ] - }, - { - "version": "v1.19", - "date": "2026-07-18", - "time": "10:33", - "summary": "更新需求说明与标注", - "files": [ - ".spec/2026-07-14-implementation-plan.md", - ".spec/2026-07-14-requirements-design.md", - ".spec/feature-create.md", - ".spec/feature-detail.md", - ".spec/feature-list.md", - ".spec/feature-manual-ledger.md", - ".spec/fleet-plate-tag.md", - ".spec/prototype-comments.json", - ".spec/reconcile-linkage.md", - ".spec/requirements-prd.md", - "components/CreateWizard.tsx", - "components/DateTimePickerSheet.tsx" - ] - }, - { - "version": "v1.18", - "date": "2026-07-17", - "time": "17:27", - "summary": "更新需求说明与标注", - "files": [ - ".spec/2026-07-14-implementation-plan.md", - ".spec/2026-07-14-requirements-design.md", - ".spec/feature-create.md", - ".spec/feature-detail.md", - ".spec/feature-list.md", - ".spec/feature-manual-ledger.md", - ".spec/fleet-plate-tag.md", - ".spec/prototype-comments.json", - ".spec/reconcile-linkage.md", - ".spec/requirements-prd.md", - "components/CreateWizard.tsx", - "components/DateTimePickerSheet.tsx" - ] - }, - { - "version": "v1.17", - "date": "2026-07-17", - "time": "17:27", - "summary": "更新需求说明与标注", - "files": [ - ".spec/2026-07-14-implementation-plan.md", - ".spec/2026-07-14-requirements-design.md", - ".spec/feature-create.md", - ".spec/feature-detail.md", - ".spec/feature-list.md", - ".spec/feature-manual-ledger.md", - ".spec/fleet-plate-tag.md", - ".spec/prototype-comments.json", - ".spec/reconcile-linkage.md", - ".spec/requirements-prd.md", - "components/CreateWizard.tsx", - "components/DateTimePickerSheet.tsx" - ] - }, - { - "version": "v1.16", - "date": "2026-07-17", - "time": "17:26", - "summary": "更新需求说明与标注", - "files": [ - ".spec/2026-07-14-implementation-plan.md", - ".spec/2026-07-14-requirements-design.md", - ".spec/feature-create.md", - ".spec/feature-detail.md", - ".spec/feature-list.md", - ".spec/feature-manual-ledger.md", - ".spec/fleet-plate-tag.md", - ".spec/prototype-comments.json", - ".spec/reconcile-linkage.md", - ".spec/requirements-prd.md", - "components/CreateWizard.tsx", - "components/DateTimePickerSheet.tsx" - ] - }, - { - "version": "v1.15", - "date": "2026-07-17", - "time": "17:26", - "summary": "更新需求说明与标注", - "files": [ - ".spec/2026-07-14-implementation-plan.md", - ".spec/2026-07-14-requirements-design.md", - ".spec/feature-create.md", - ".spec/feature-detail.md", - ".spec/feature-list.md", - ".spec/feature-manual-ledger.md", - ".spec/fleet-plate-tag.md", - ".spec/prototype-comments.json", - ".spec/reconcile-linkage.md", - ".spec/requirements-prd.md", - "components/CreateWizard.tsx", - "components/DateTimePickerSheet.tsx" - ] - }, - { - "version": "v1.14", - "date": "2026-07-17", - "time": "17:26", - "summary": "更新 demo-photo.ts", - "files": [ - "utils/demo-photo.ts" - ] - }, - { - "version": "v1.13", - "date": "2026-07-17", - "time": "17:26", - "summary": "更新需求说明与标注", - "files": [ - ".spec/2026-07-14-implementation-plan.md", - ".spec/2026-07-14-requirements-design.md", - ".spec/feature-create.md", - ".spec/feature-detail.md", - ".spec/feature-list.md", - ".spec/feature-manual-ledger.md", - ".spec/fleet-plate-tag.md", - ".spec/prototype-comments.json", - ".spec/reconcile-linkage.md", - ".spec/requirements-prd.md", - "components/CreateWizard.tsx", - "components/DateTimePickerSheet.tsx" - ] - }, - { - "version": "v1.12", - "date": "2026-07-17", - "time": "17:25", - "summary": "更新需求说明与标注", - "files": [ - ".spec/2026-07-14-implementation-plan.md", - ".spec/2026-07-14-requirements-design.md", - ".spec/feature-create.md", - ".spec/feature-detail.md", - ".spec/feature-list.md", - ".spec/feature-manual-ledger.md", - ".spec/fleet-plate-tag.md", - ".spec/prototype-comments.json", - ".spec/reconcile-linkage.md", - ".spec/requirements-prd.md", - "components/CreateWizard.tsx", - "components/DateTimePickerSheet.tsx" - ] - }, - { - "version": "v1.11", - "date": "2026-07-17", - "time": "17:23", - "summary": "更新需求说明与标注", - "files": [ - ".spec/2026-07-14-implementation-plan.md", - ".spec/2026-07-14-requirements-design.md", - ".spec/feature-create.md", - ".spec/feature-detail.md", - ".spec/feature-list.md", - ".spec/feature-manual-ledger.md", - ".spec/fleet-plate-tag.md", - ".spec/prototype-comments.json", - ".spec/reconcile-linkage.md", - ".spec/requirements-prd.md", - "components/CreateWizard.tsx", - "components/DateTimePickerSheet.tsx" - ] - }, - { - "version": "v1.10", - "date": "2026-07-17", - "time": "17:23", - "summary": "更新需求说明与标注", - "files": [ - ".spec/2026-07-14-implementation-plan.md", - ".spec/2026-07-14-requirements-design.md", - ".spec/feature-create.md", - ".spec/feature-detail.md", - ".spec/feature-list.md", - ".spec/feature-manual-ledger.md", - ".spec/fleet-plate-tag.md", - ".spec/prototype-comments.json", - ".spec/reconcile-linkage.md", - ".spec/requirements-prd.md", - "components/CreateWizard.tsx", - "components/DateTimePickerSheet.tsx" - ] - }, - { - "version": "v1.9", - "date": "2026-07-17", - "time": "17:21", - "summary": "更新需求说明与标注", - "files": [ - ".spec/2026-07-14-implementation-plan.md", - ".spec/2026-07-14-requirements-design.md", - ".spec/feature-create.md", - ".spec/feature-detail.md", - ".spec/feature-list.md", - ".spec/feature-manual-ledger.md", - ".spec/fleet-plate-tag.md", - ".spec/prototype-comments.json", - ".spec/reconcile-linkage.md", - ".spec/requirements-prd.md", - "components/CreateWizard.tsx", - "components/DateTimePickerSheet.tsx" - ] - }, - { - "version": "v1.8", - "date": "2026-07-17", - "time": "17:19", - "summary": "更新需求说明与标注", - "files": [ - ".spec/2026-07-14-implementation-plan.md", - ".spec/2026-07-14-requirements-design.md", - ".spec/feature-create.md", - ".spec/feature-detail.md", - ".spec/feature-list.md", - ".spec/feature-manual-ledger.md", - ".spec/fleet-plate-tag.md", - ".spec/prototype-comments.json", - ".spec/reconcile-linkage.md", - ".spec/requirements-prd.md", - "components/CreateWizard.tsx", - "components/DateTimePickerSheet.tsx" - ] - }, - { - "version": "v1.7", - "date": "2026-07-17", - "time": "17:19", - "summary": "更新需求说明与标注", - "files": [ - ".spec/2026-07-14-implementation-plan.md", - ".spec/2026-07-14-requirements-design.md", - ".spec/feature-create.md", - ".spec/feature-detail.md", - ".spec/feature-list.md", - ".spec/feature-manual-ledger.md", - ".spec/fleet-plate-tag.md", - ".spec/prototype-comments.json", - ".spec/reconcile-linkage.md", - ".spec/requirements-prd.md", - "components/CreateWizard.tsx", - "components/DateTimePickerSheet.tsx" - ] - }, - { - "version": "v1.6", - "date": "2026-07-17", - "time": "17:19", - "summary": "更新需求说明与标注", - "files": [ - ".spec/2026-07-14-implementation-plan.md", - ".spec/2026-07-14-requirements-design.md", - ".spec/feature-create.md", - ".spec/feature-detail.md", - ".spec/feature-list.md", - ".spec/feature-manual-ledger.md", - ".spec/fleet-plate-tag.md", - ".spec/prototype-comments.json", - ".spec/reconcile-linkage.md", - ".spec/requirements-prd.md", - "components/CreateWizard.tsx", - "components/DateTimePickerSheet.tsx" - ] - }, - { - "version": "v1.5", - "date": "2026-07-17", - "time": "17:19", - "summary": "更新需求说明与标注", - "files": [ - ".spec/2026-07-14-implementation-plan.md", - ".spec/2026-07-14-requirements-design.md", - ".spec/feature-create.md", - ".spec/feature-detail.md", - ".spec/feature-list.md", - ".spec/feature-manual-ledger.md", - ".spec/fleet-plate-tag.md", - ".spec/prototype-comments.json", - ".spec/reconcile-linkage.md", - ".spec/requirements-prd.md", - "components/CreateWizard.tsx", - "components/DateTimePickerSheet.tsx" - ] - }, - { - "version": "v1.4", - "date": "2026-07-17", - "time": "17:18", - "summary": "更新 vehicle-mileage.ts", - "files": [ - "utils/vehicle-mileage.ts" - ] - }, - { - "version": "v1.3", - "date": "2026-07-17", - "time": "17:18", - "summary": "更新 photo-watermark.ts", - "files": [ - "utils/photo-watermark.ts" - ] - }, - { - "version": "v1.2", - "date": "2026-07-17", - "time": "16:10", - "summary": "页面逻辑与交互:CreateWizard.tsx、DateTimePickerSheet.tsx、ManualLedgerPanel.tsx、OrderCard.tsx 等", - "details": [ - "样式与布局:index.css", - "需求说明与 PRD:feature-create.md、feature-detail.md、feature-list.md、feature-manual-ledger.md、fleet-plate-tag.md、reconcile-linkage.md、requirements-prd.md" - ], - "commit": "305199c", - "files": [ - ".spec/feature-create.md", - ".spec/feature-detail.md", - ".spec/feature-list.md", - ".spec/feature-manual-ledger.md", - ".spec/fleet-plate-tag.md", - ".spec/reconcile-linkage.md", - ".spec/requirements-prd.md", - "components/CreateWizard.tsx", - "components/DateTimePickerSheet.tsx", - "components/ManualLedgerPanel.tsx", - "components/OrderCard.tsx", - "components/OrderDetail.tsx" - ] - }, - { - "version": "v1.1", - "date": "2026-07-16", - "time": "09:00", - "summary": "页面逻辑与交互:CreateWizard.tsx、Icons.tsx、OrderCard.tsx、OrderDetail.tsx 等", - "details": [ - "样式与布局:index.css", - "需求说明与 PRD:2026-07-14-implementation-plan.md、2026-07-14-requirements-design.md、reconcile-linkage.md、requirements-prd.md" - ], - "commit": "47c223a", - "files": [ - ".spec/2026-07-14-implementation-plan.md", - ".spec/2026-07-14-requirements-design.md", - ".spec/reconcile-linkage.md", - ".spec/requirements-prd.md", - "components/CreateWizard.tsx", - "components/Icons.tsx", - "components/OrderCard.tsx", - "components/OrderDetail.tsx", - "components/PhoneShell.tsx", - "index.tsx", - "styles/index.css", - "types.ts" - ] - } - ] - }, - "oneos-web-approval": { - "title": "oneos web approval", - "version": "v1.1", - "revision": 1, - "lastUpdated": "2026-07-15T00:58:00.000Z", - "contentHash": "d54f9542ce8e8bf62137245386bf33016140cbbe6e78243322c6a23130ae83fa", - "trackedFiles": [ - "index.tsx" - ], - "changelog": [ - { - "version": "v1.1", - "date": "2026-07-15", - "time": "08:58", - "summary": "feat: add approval center module with split layout and nav registration", - "details": [ - "页面逻辑与交互:index.tsx" - ], - "commit": "6971529", - "files": [ - "index.tsx" - ] - } - ] - }, - "oneos-web-approval-initiated": { - "title": "我发起的", - "version": "v1.1", - "revision": 1, - "lastUpdated": "2026-07-15T00:58:00.000Z", - "contentHash": "3fba821920f13c7fff1e25a0da4c8a905a733197fae9f50ceca853525580f9f7", - "trackedFiles": [ - "index.tsx" - ], - "changelog": [ - { - "version": "v1.1", - "date": "2026-07-15", - "time": "08:58", - "summary": "页面逻辑与交互:index.tsx", - "details": [], - "commit": "6971529", - "files": [ - "index.tsx" - ] - } - ] - }, - "oneos-web-approval-cc": { - "title": "我的抄送", - "version": "v1.1", - "revision": 1, - "lastUpdated": "2026-07-15T00:58:00.000Z", - "contentHash": "4d0ea26865ca537c9227a99441ff1e552c7f0d1df05ae1c995287123a72b1090", - "trackedFiles": [ - "index.tsx" - ], - "changelog": [ - { - "version": "v1.1", - "date": "2026-07-15", - "time": "08:58", - "summary": "页面逻辑与交互:index.tsx", - "details": [], - "commit": "6971529", - "files": [ - "index.tsx" - ] - } - ] - }, - "oneos-web-approval-todo": { - "title": "我的待办", - "version": "v1.1", - "revision": 1, - "lastUpdated": "2026-07-15T00:58:00.000Z", - "contentHash": "5766a14e5522689fbc89ca50891095a00672ea52c596ad00f0f9151c9ce1f3ba", - "trackedFiles": [ - "index.tsx" - ], - "changelog": [ - { - "version": "v1.1", - "date": "2026-07-15", - "time": "08:58", - "summary": "页面逻辑与交互:index.tsx", - "details": [], - "commit": "6971529", - "files": [ - "index.tsx" - ] - } - ] - }, - "oneos-web-approval-done": { - "title": "我的已办", - "version": "v1.1", - "revision": 1, - "lastUpdated": "2026-07-15T00:58:00.000Z", - "contentHash": "a1e94700ad17be8996ba2bed95a12a975a7ead4fd640326d5742d74d06f9782a", - "trackedFiles": [ - "index.tsx" - ], - "changelog": [ - { - "version": "v1.1", - "date": "2026-07-15", - "time": "08:58", - "summary": "页面逻辑与交互:index.tsx", - "details": [], - "commit": "6971529", - "files": [ - "index.tsx" - ] - } - ] - }, - "oneos-web-help-center": { - "title": "帮助中心", - "version": "v1.2", - "revision": 2, - "lastUpdated": "2026-06-30T08:54:00.000Z", - "contentHash": "d0ce28b3fa6781237ad7e26dc4daf45ac4382c49d49ce14b6701a5457f55c291", - "trackedFiles": [ - "index.tsx", - "pages/01-功能说明书.jsx" - ], - "changelog": [ - { - "version": "v1.2", - "date": "2026-06-30", - "time": "16:54", - "summary": "页面逻辑与交互:index.tsx", - "details": [], - "commit": "0982837", - "files": [ - "index.tsx" - ] - }, - { - "version": "v1.1", - "date": "2026-06-30", - "time": "16:36", - "summary": "页面逻辑与交互:index.tsx", - "details": [], - "commit": "d71ebc5", - "files": [ - "index.tsx" - ] - } - ] - }, "xll-miniapp": { "title": "小羚羚小程序", "version": "v1.1",