refactor: 优化代码结构并修复类型问题

- 移除未使用的TabPane组件
- 修复类型定义和导入方式
- 优化mock数据源的环境变量判断逻辑
- 更新文档结构并归档旧文件
- 添加新的UI组件和Memo组件
- 调整API路径和响应处理
This commit is contained in:
2026-03-23 12:41:35 +08:00
parent a037843851
commit 2b86715c09
363 changed files with 39305 additions and 40622 deletions

View File

@@ -1,7 +1,7 @@
/**
* [MOCK-002] 证书数据源抽象层
* 通过环境变量自动切换Mock/真实API
* AI注意: 这是唯一入口,业务代码必须调用此
* AI注意: 这是唯一入口,业务代码必须调用此文件
*
* @module services/certificateDataSource
* @author AI-Frontend-Team
@@ -15,25 +15,11 @@ import { BaseDataSource, BaseMockDataSource, DataSourceFactory } from './dataSou
export type { Certificate } from '@/types/certificate';
export { CertificateStatus, CertificateType };
// ============================================
// 真实API实现
// ============================================
/**
* 证书API数据源
* 调用真实后端API
*/
class ApiCertificateDataSource extends BaseDataSource<Certificate, CertificateQueryParams> {
constructor() {
super('/api/v1/certificate/certificates');
}
/**
* 更新证书状态(审核)
* @param id 证书ID
* @param status 新状态
* @param approvedBy 审核人
*/
async updateStatus(id: string, status: string, approvedBy?: string): Promise<Certificate> {
const response = await fetch(`${this.baseUrl}/${id}/status`, {
method: 'PUT',
@@ -44,33 +30,18 @@ class ApiCertificateDataSource extends BaseDataSource<Certificate, CertificateQu
});
if (!response.ok) {
throw new Error(`API Error: ${response.status}`);
throw new Error(`HTTP error! status: ${response.status}`);
}
const result = await response.json();
// 更新成功后获取完整数据
const updated = await this.detail(id);
if (updated) return updated;
return result.data;
}
}
// ============================================
// Mock实现 (完全独立文件)
// ============================================
/**
* [MOCK] 证书Mock数据源
* AI注意: 这是Mock实现不是真实业务逻辑
* 仅在REACT_APP_USE_MOCK=true时启用
*/
class MockCertificateDataSource extends BaseMockDataSource<Certificate, CertificateQueryParams> {
/** Mock数据源名称 */
class MockCertificateDataSource extends BaseMockDataSource<Certificate, CertificateQueryParams> implements IDataSource<Certificate, CertificateQueryParams> {
readonly __MOCK__ = true as const;
readonly __MOCK_NAME__ = 'MockCertificateDataSource';
/** Mock数据 */
protected mockData: Certificate[] = [
{
id: '1',
@@ -156,12 +127,6 @@ class MockCertificateDataSource extends BaseMockDataSource<Certificate, Certific
},
];
/**
* 更新证书状态(审核)
* @param id 证书ID
* @param status 新状态
* @param approvedBy 审核人
*/
async updateStatus(id: string, status: string, approvedBy?: string): Promise<Certificate> {
await this.delay(300);
@@ -184,10 +149,6 @@ class MockCertificateDataSource extends BaseMockDataSource<Certificate, Certific
}
}
// ============================================
// 导出数据源
// ============================================
export const certificateDataSource = DataSourceFactory.createWithMethods<
Certificate,
CertificateQueryParams,
@@ -199,8 +160,4 @@ export const certificateDataSource = DataSourceFactory.createWithMethods<
mockDataSource: MockCertificateDataSource,
});
/**
* Mock状态标记
* 用于调试和开发环境识别
*/
export { __MOCK__, __DATA_SOURCE_TYPE__ } from './dataSourceFactory';