| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- /**
- * 地区测试数据
- * 用于在测试中模拟地区数据
- */
- export interface AreaTestData {
- id: number;
- name: string;
- level: number;
- parentId?: number;
- isDisabled?: number;
- sort?: number;
- }
- // 省份数据(level: 1)
- export const mockProvinces: AreaTestData[] = [
- { id: 1, name: '北京市', level: 1, isDisabled: 0, sort: 1 },
- { id: 2, name: '上海市', level: 1, isDisabled: 0, sort: 2 },
- { id: 3, name: '广东省', level: 1, isDisabled: 0, sort: 3 },
- { id: 4, name: '江苏省', level: 1, isDisabled: 0, sort: 4 },
- { id: 5, name: '浙江省', level: 1, isDisabled: 0, sort: 5 },
- ];
- // 城市数据(level: 2)
- export const mockCities: AreaTestData[] = [
- { id: 11, name: '北京市', level: 2, parentId: 1, isDisabled: 0, sort: 1 },
- { id: 12, name: '上海市', level: 2, parentId: 2, isDisabled: 0, sort: 1 },
- { id: 13, name: '广州市', level: 2, parentId: 3, isDisabled: 0, sort: 1 },
- { id: 14, name: '深圳市', level: 2, parentId: 3, isDisabled: 0, sort: 2 },
- { id: 15, name: '南京市', level: 2, parentId: 4, isDisabled: 0, sort: 1 },
- { id: 16, name: '苏州市', level: 2, parentId: 4, isDisabled: 0, sort: 2 },
- { id: 17, name: '杭州市', level: 2, parentId: 5, isDisabled: 0, sort: 1 },
- { id: 18, name: '宁波市', level: 2, parentId: 5, isDisabled: 0, sort: 2 },
- ];
- // 区县数据(level: 3)
- export const mockDistricts: AreaTestData[] = [
- { id: 101, name: '东城区', level: 3, parentId: 11, isDisabled: 0, sort: 1 },
- { id: 102, name: '西城区', level: 3, parentId: 11, isDisabled: 0, sort: 2 },
- { id: 103, name: '黄浦区', level: 3, parentId: 12, isDisabled: 0, sort: 1 },
- { id: 104, name: '徐汇区', level: 3, parentId: 12, isDisabled: 0, sort: 2 },
- { id: 105, name: '天河区', level: 3, parentId: 13, isDisabled: 0, sort: 1 },
- { id: 106, name: '越秀区', level: 3, parentId: 13, isDisabled: 0, sort: 2 },
- { id: 107, name: '福田区', level: 3, parentId: 14, isDisabled: 0, sort: 1 },
- { id: 108, name: '南山区', level: 3, parentId: 14, isDisabled: 0, sort: 2 },
- ];
- // 所有地区数据
- export const mockAllAreas: AreaTestData[] = [
- ...mockProvinces,
- ...mockCities,
- ...mockDistricts,
- ];
- // 根据条件筛选地区数据
- export const filterAreas = (
- areas: AreaTestData[],
- filters?: { level?: number; parentId?: number; isDisabled?: number }
- ): AreaTestData[] => {
- return areas.filter(area => {
- if (filters?.level !== undefined && area.level !== filters.level) return false;
- if (filters?.parentId !== undefined && area.parentId !== filters.parentId) return false;
- if (filters?.isDisabled !== undefined && area.isDisabled !== filters.isDisabled) return false;
- return true;
- });
- };
- // 获取分页数据
- export const getPaginatedData = (
- areas: AreaTestData[],
- page: number = 1,
- pageSize: number = 10
- ) => {
- const start = (page - 1) * pageSize;
- const end = start + pageSize;
- return {
- data: areas.slice(start, end),
- total: areas.length,
- page,
- pageSize,
- totalPages: Math.ceil(areas.length / pageSize),
- };
- };
|