-- 智跑平台测试数据 (PostgreSQL格式) -- 生成日期: 2025-06-16 -- 注意: 此文件包含测试数据,仅用于开发和测试环境 -- =============================== -- 第一段: 基础数据 (语言、地区、学校) -- =============================== -- 1. 语言数据 INSERT INTO public.ak_languages (id, code, name, native_name, is_active, is_default, created_at) VALUES ('00000000-0000-0000-0000-000000000001', 'zh-CN', 'Chinese (Simplified)', '简体中文', true, true, now()), ('00000000-0000-0000-0000-000000000002', 'en-US', 'English (US)', 'English (US)', true, false, now()); -- 2. 地区数据 (省-市-区县-街道 四级结构) -- 省级 INSERT INTO public.ak_regions (id, name, parent_id, level, created_at) VALUES ('11111111-1111-1111-1111-111111111111', '北京市', NULL, 1, now()), ('22222222-2222-2222-2222-222222222222', '上海市', NULL, 1, now()), ('33333333-3333-3333-3333-333333333333', '广东省', NULL, 1, now()), ('44444444-4444-4444-4444-444444444444', '浙江省', NULL, 1, now()); -- 市级 INSERT INTO public.ak_regions (id, name, parent_id, level, created_at) VALUES ('11111111-1111-1111-1111-111111111112', '北京市', '11111111-1111-1111-1111-111111111111', 2, now()), ('22222222-2222-2222-2222-222222222223', '上海市', '22222222-2222-2222-2222-222222222222', 2, now()), ('33333333-3333-3333-3333-333333333334', '广州市', '33333333-3333-3333-3333-333333333333', 2, now()), ('33333333-3333-3333-3333-333333333335', '深圳市', '33333333-3333-3333-3333-333333333333', 2, now()), ('44444444-4444-4444-4444-444444444445', '杭州市', '44444444-4444-4444-4444-444444444444', 2, now()); -- 区县级 INSERT INTO public.ak_regions (id, name, parent_id, level, created_at) VALUES ('11111111-1111-1111-1111-111111111121', '海淀区', '11111111-1111-1111-1111-111111111112', 3, now()), ('11111111-1111-1111-1111-111111111122', '朝阳区', '11111111-1111-1111-1111-111111111112', 3, now()), ('22222222-2222-2222-2222-222222222231', '浦东新区', '22222222-2222-2222-2222-222222222223', 3, now()), ('22222222-2222-2222-2222-222222222232', '黄浦区', '22222222-2222-2222-2222-222222222223', 3, now()), ('33333333-3333-3333-3333-333333333341', '天河区', '33333333-3333-3333-3333-333333333334', 3, now()), ('33333333-3333-3333-3333-333333333351', '南山区', '33333333-3333-3333-3333-333333333335', 3, now()), ('44444444-4444-4444-4444-444444444451', '西湖区', '44444444-4444-4444-4444-444444444445', 3, now()); -- 街道级 INSERT INTO public.ak_regions (id, name, parent_id, level, created_at) VALUES ('11111111-1111-1111-1111-111111111211', '中关村街道', '11111111-1111-1111-1111-111111111121', 4, now()), ('11111111-1111-1111-1111-111111111212', '清华园街道', '11111111-1111-1111-1111-111111111121', 4, now()), ('11111111-1111-1111-1111-111111111221', '三里屯街道', '11111111-1111-1111-1111-111111111122', 4, now()), ('22222222-2222-2222-2222-222222222311', '陆家嘴街道', '22222222-2222-2222-2222-222222222231', 4, now()), ('22222222-2222-2222-2222-222222222321', '外滩街道', '22222222-2222-2222-2222-222222222232', 4, now()), ('33333333-3333-3333-3333-333333333411', '天河北街道', '33333333-3333-3333-3333-333333333341', 4, now()), ('33333333-3333-3333-3333-333333333511', '科技园街道', '33333333-3333-3333-3333-333333333351', 4, now()), ('44444444-4444-4444-4444-444444444511', '文三街道', '44444444-4444-4444-4444-444444444451', 4, now()); -- 3. 学校数据 INSERT INTO public.ak_schools (id, name, region_id, type, created_at) VALUES -- 北京学校 ('11111111-2222-1111-1111-111111111111', '北京市第一实验中学', '11111111-1111-1111-1111-111111111121', '中学', now()), ('11111111-2222-1111-1111-111111111112', '清华附属中学', '11111111-1111-1111-1111-111111111121', '中学', now()), ('11111111-2222-1111-1111-111111111113', '朝阳实验小学', '11111111-1111-1111-1111-111111111122', '小学', now()), -- 上海学校 ('22222222-2222-1111-1111-111111111111', '上海市实验学校', '22222222-2222-2222-2222-222222222231', '九年一贯制', now()), ('22222222-2222-1111-1111-111111111112', '黄浦区第一中学', '22222222-2222-2222-2222-222222222232', '中学', now()), -- 广州学校 ('33333333-2222-1111-1111-111111111111', '广州市第一中学', '33333333-3333-3333-3333-333333333341', '中学', now()), ('33333333-2222-1111-1111-111111111112', '天河区实验小学', '33333333-3333-3333-3333-333333333341', '小学', now()), -- 深圳学校 ('33333333-2222-1111-1111-111111111113', '深圳实验学校', '33333333-3333-3333-3333-333333333351', '九年一贯制', now()), ('33333333-2222-1111-1111-111111111114', '南山外国语学校', '33333333-3333-3333-3333-333333333351', '中学', now()), -- 杭州学校 ('44444444-2222-1111-1111-111111111111', '杭州市学军中学', '44444444-4444-4444-4444-444444444451', '中学', now()); -- 4. 年级数据 INSERT INTO public.ak_grades (id, school_id, name, created_at) VALUES -- 北京市第一实验中学年级 ('11111111-3333-1111-1111-111111111111', '11111111-2222-1111-1111-111111111111', '高一', now()), ('11111111-3333-1111-1111-111111111112', '11111111-2222-1111-1111-111111111111', '高二', now()), ('11111111-3333-1111-1111-111111111113', '11111111-2222-1111-1111-111111111111', '高三', now()), -- 清华附属中学年级 ('11111111-3333-1111-1111-111111111114', '11111111-2222-1111-1111-111111111112', '初一', now()), ('11111111-3333-1111-1111-111111111115', '11111111-2222-1111-1111-111111111112', '初二', now()), ('11111111-3333-1111-1111-111111111116', '11111111-2222-1111-1111-111111111112', '初三', now()), -- 朝阳实验小学年级 ('11111111-3333-1111-1111-111111111117', '11111111-2222-1111-1111-111111111113', '三年级', now()), ('11111111-3333-1111-1111-111111111118', '11111111-2222-1111-1111-111111111113', '四年级', now()), -- 上海市实验学校年级 ('22222222-3333-1111-1111-111111111111', '22222222-2222-1111-1111-111111111111', '七年级', now()), ('22222222-3333-1111-1111-111111111112', '22222222-2222-1111-1111-111111111111', '八年级', now()), ('22222222-3333-1111-1111-111111111113', '22222222-2222-1111-1111-111111111111', '九年级', now()), -- 广州市第一中学年级 ('33333333-3333-1111-1111-111111111111', '33333333-2222-1111-1111-111111111111', '高一', now()), ('33333333-3333-1111-1111-111111111112', '33333333-2222-1111-1111-111111111111', '高二', now()), -- 深圳实验学校年级 ('33333333-3333-1111-1111-111111111113', '33333333-2222-1111-1111-111111111113', '六年级', now()), ('33333333-3333-1111-1111-111111111114', '33333333-2222-1111-1111-111111111113', '七年级', now()); -- 5. 班级数据 INSERT INTO public.ak_classes (id, grade_id, name, created_at) VALUES -- 北京市第一实验中学班级 ('11111111-4444-1111-1111-111111111111', '11111111-3333-1111-1111-111111111111', '高一(1)班', now()), ('11111111-4444-1111-1111-111111111112', '11111111-3333-1111-1111-111111111111', '高一(2)班', now()), ('11111111-4444-1111-1111-111111111113', '11111111-3333-1111-1111-111111111112', '高二(1)班', now()), -- 清华附属中学班级 ('11111111-4444-1111-1111-111111111114', '11111111-3333-1111-1111-111111111114', '初一(1)班', now()), ('11111111-4444-1111-1111-111111111115', '11111111-3333-1111-1111-111111111114', '初一(2)班', now()), -- 朝阳实验小学班级 ('11111111-4444-1111-1111-111111111116', '11111111-3333-1111-1111-111111111117', '三年级(1)班', now()), -- 上海市实验学校班级 ('22222222-4444-1111-1111-111111111111', '22222222-3333-1111-1111-111111111111', '七年级(1)班', now()), ('22222222-4444-1111-1111-111111111112', '22222222-3333-1111-1111-111111111111', '七年级(2)班', now()), ('22222222-4444-1111-1111-111111111113', '22222222-3333-1111-1111-111111111112', '八年级(1)班', now()), -- 广州市第一中学班级 ('33333333-4444-1111-1111-111111111111', '33333333-3333-1111-1111-111111111111', '高一(1)班', now()), ('33333333-4444-1111-1111-111111111112', '33333333-3333-1111-1111-111111111111', '高一(2)班', now()), -- 深圳实验学校班级 ('33333333-4444-1111-1111-111111111113', '33333333-3333-1111-1111-111111111113', '六年级(1)班', now()), ('33333333-4444-1111-1111-111111111114', '33333333-3333-1111-1111-111111111114', '七年级(1)班', now()); -- =============================== -- 第二段: 用户数据 (学生、教师、管理员) -- =============================== -- 6. 用户数据 INSERT INTO public.ak_users ( id, username, email, password_hash, gender, birthday, height_cm, weight_kg, region_id, school_id, grade_id, class_id, role, preferred_language, created_at ) VALUES -- 学生用户 (使用真实用户ID) ('7bf7378e-a027-473e-97ac-3460ed3f170a', 'student_bj_01', 'student_bj_01@example.com', '$2b$12$hashed_password_example', '男', '2008-05-10', 175, 65, '11111111-1111-1111-1111-111111111121', '11111111-2222-1111-1111-111111111111', '11111111-3333-1111-1111-111111111111', '11111111-4444-1111-1111-111111111111', 'student', '00000000-0000-0000-0000-000000000001', now()), ('10000001-0000-0000-0000-000000000002', 'student_bj_02', 'student_bj_02@example.com', '$2b$12$hashed_password_example', '女', '2008-03-15', 165, 52, '11111111-1111-1111-1111-111111111121', '11111111-2222-1111-1111-111111111111', '11111111-3333-1111-1111-111111111111', '11111111-4444-1111-1111-111111111111', 'student', '00000000-0000-0000-0000-000000000001', now()), ('10000001-0000-0000-0000-000000000003', 'student_bj_03', 'student_bj_03@example.com', '$2b$12$hashed_password_example', '男', '2008-07-22', 178, 68, '11111111-1111-1111-1111-111111111121', '11111111-2222-1111-1111-111111111111', '11111111-3333-1111-1111-111111111111', '11111111-4444-1111-1111-111111111112', 'student', '00000000-0000-0000-0000-000000000001', now()), -- 上海学生 ('20000001-0000-0000-0000-000000000001', 'student_sh_01', 'student_sh_01@example.com', '$2b$12$hashed_password_example', '女', '2012-04-05', 155, 45, '22222222-2222-2222-2222-222222222231', '22222222-2222-1111-1111-111111111111', '22222222-3333-1111-1111-111111111111', '22222222-4444-1111-1111-111111111111', 'student', '00000000-0000-0000-0000-000000000001', now()), ('20000001-0000-0000-0000-000000000002', 'student_sh_02', 'student_sh_02@example.com', '$2b$12$hashed_password_example', '男', '2012-09-18', 158, 48, '22222222-2222-2222-2222-222222222231', '22222222-2222-1111-1111-111111111111', '22222222-3333-1111-1111-111111111111', '22222222-4444-1111-1111-111111111112', 'student', '00000000-0000-0000-0000-000000000001', now()), -- 广州学生 ('30000001-0000-0000-0000-000000000001', 'student_gz_01', 'student_gz_01@example.com', '$2b$12$hashed_password_example', '男', '2007-12-05', 180, 70, '33333333-3333-3333-3333-333333333341', '33333333-2222-1111-1111-111111111111', '33333333-3333-1111-1111-111111111111', '33333333-4444-1111-1111-111111111111', 'student', '00000000-0000-0000-0000-000000000001', now()), -- 深圳学生 ('30000001-0000-0000-0000-000000000002', 'student_sz_01', 'student_sz_01@example.com', '$2b$12$hashed_password_example', '女', '2013-01-22', 150, 42, '33333333-3333-3333-3333-333333333351', '33333333-2222-1111-1111-111111111113', '33333333-3333-1111-1111-111111111113', '33333333-4444-1111-1111-111111111113', 'student', '00000000-0000-0000-0000-000000000001', now()); -- 教师用户 INSERT INTO public.ak_users ( id, username, email, password_hash, gender, birthday, region_id, school_id, role, preferred_language, created_at ) VALUES -- 北京教师 (使用真实用户ID) ('eed3824b-bba1-4309-8048-19d17367c084', 'teacher_bj_01', 'teacher_bj_01@example.com', '$2b$12$hashed_password_example', '男', '1985-06-12', '11111111-1111-1111-1111-111111111121', '11111111-2222-1111-1111-111111111111', 'teacher', '00000000-0000-0000-0000-000000000001', now()), ('10000002-0000-0000-0000-000000000002', 'teacher_bj_02', 'teacher_bj_02@example.com', '$2b$12$hashed_password_example', '女', '1982-09-28', '11111111-1111-1111-1111-111111111121', '11111111-2222-1111-1111-111111111112', 'teacher', '00000000-0000-0000-0000-000000000001', now()), -- 上海教师 ('20000002-0000-0000-0000-000000000001', 'teacher_sh_01', 'teacher_sh_01@example.com', '$2b$12$hashed_password_example', '女', '1988-03-14', '22222222-2222-2222-2222-222222222231', '22222222-2222-1111-1111-111111111111', 'teacher', '00000000-0000-0000-0000-000000000001', now()), -- 广州教师 ('30000002-0000-0000-0000-000000000001', 'teacher_gz_01', 'teacher_gz_01@example.com', '$2b$12$hashed_password_example', '男', '1979-11-05', '33333333-3333-3333-3333-333333333341', '33333333-2222-1111-1111-111111111111', 'teacher', '00000000-0000-0000-0000-000000000001', now()); -- 管理员用户 INSERT INTO public.ak_users ( id, username, email, password_hash, gender, birthday, region_id, role, preferred_language, created_at ) VALUES -- 系统管理员 ('00000000-0000-0000-0000-000000000001', 'admin', 'admin@zhipao.com', '$2b$12$hashed_password_example', '男', '1980-01-01', NULL, 'system_admin', '00000000-0000-0000-0000-000000000001', now()), -- 区域管理员 ('10000003-0000-0000-0000-000000000001', 'admin_beijing', 'admin_beijing@zhipao.com', '$2b$12$hashed_password_example', '男', '1975-05-20', '11111111-1111-1111-1111-111111111111', 'region_admin', '00000000-0000-0000-0000-000000000001', now()), ('20000003-0000-0000-0000-000000000001', 'admin_shanghai', 'admin_shanghai@zhipao.com', '$2b$12$hashed_password_example', '女', '1978-08-15', '22222222-2222-2222-2222-222222222222', 'region_admin', '00000000-0000-0000-0000-000000000001', now()), -- 学校管理员 ('10000004-0000-0000-0000-000000000001', 'school_admin_bj01', 'school_admin_bj01@zhipao.com', '$2b$12$hashed_password_example', '男', '1976-03-25', '11111111-1111-1111-1111-111111111121', 'school_admin', '00000000-0000-0000-0000-000000000001', now()); -- 7. 用户个人展示设置 INSERT INTO public.ak_user_profiles (id, user_id, declaration, status_text, updated_at) VALUES ('p0000001-0000-0000-0000-000000000001', '10000001-0000-0000-0000-000000000001', '运动让我更健康!', '今天跑了5公里', now()), ('p0000001-0000-0000-0000-000000000002', '10000001-0000-0000-0000-000000000002', '坚持就是胜利', '准备参加校运会', now()), ('p0000001-0000-0000-0000-000000000003', '20000001-0000-0000-0000-000000000001', '爱运动爱生活', '刚完成今日训练计划', now()); -- 8. 用户联系方式 INSERT INTO public.ak_user_contacts (id, user_id, contact_type, contact_value, is_primary, remark, created_at) VALUES ('c0000001-0000-0000-0000-000000000001', '10000001-0000-0000-0000-000000000001', 'phone', '13800138001', true, '主要联系方式', now()), ('c0000001-0000-0000-0000-000000000002', '10000001-0000-0000-0000-000000000002', 'phone', '13800138002', true, '主要联系方式', now()), ('c0000001-0000-0000-0000-000000000003', '10000002-0000-0000-0000-000000000001', 'phone', '13900139001', true, '办公电话', now()); -- =============================== -- 第三段: 设备和训练数据 -- =============================== -- 9. 设备数据 INSERT INTO public.ak_devices (id, user_id, device_type, device_name, device_mac, bind_time, status, extra) VALUES ('d1111111-0000-0000-0000-000000000001', '10000001-0000-0000-0000-000000000001', 'watch', '小米手环7', 'AA:BB:CC:DD:EE:01', now(), 'active', '{"brand": "Xiaomi", "model": "Band 7"}'), ('d1111111-0000-0000-0000-000000000002', '10000001-0000-0000-0000-000000000002', 'watch', '华为手环B5', 'AA:BB:CC:DD:EE:02', now(), 'active', '{"brand": "Huawei", "model": "Band B5"}'), ('d2222222-0000-0000-0000-000000000001', '20000001-0000-0000-0000-000000000001', 'watch', 'Apple Watch SE', 'AA:BB:CC:DD:EE:03', now(), 'active', '{"brand": "Apple", "model": "Watch SE"}'), ('d3333333-0000-0000-0000-000000000001', '30000001-0000-0000-0000-000000000001', 'phone', 'iPhone 14', 'AA:BB:CC:DD:EE:04', now(), 'active', '{"brand": "Apple", "model": "iPhone 14"}'), ('d3333333-0000-0000-0000-000000000002', '30000001-0000-0000-0000-000000000002', 'watch', '荣耀手环6', 'AA:BB:CC:DD:EE:05', now(), 'active', '{"brand": "Honor", "model": "Band 6"}'); -- 10. 训练计划数据 INSERT INTO public.ak_training_plans (id, user_id, plan_name, description, start_date, end_date, status, created_at, updated_at) VALUES ('tp111111-0000-0000-0000-000000000001', '10000001-0000-0000-0000-000000000001', '春季体能提升计划', '为期4周的春季体能训练计划,包含跑步、跳绳、俯卧撑等', '2025-06-10', '2025-07-08', 'active', now(), now()), ('tp111111-0000-0000-0000-000000000002', '10000001-0000-0000-0000-000000000002', '校运会备赛训练', '为校运会800米比赛准备的专项训练', '2025-06-01', '2025-06-30', 'active', now(), now()), ('tp222222-0000-0000-0000-000000000001', '20000001-0000-0000-0000-000000000001', '夏季减脂计划', '结合有氧运动和力量训练的减脂计划', '2025-06-15', '2025-08-15', 'active', now(), now()), ('tp333333-0000-0000-0000-000000000001', '30000001-0000-0000-0000-000000000001', '基础体能训练', '针对初学者的基础体能训练计划', '2025-06-05', '2025-07-05', 'active', now(), now()); -- 11. 训练计划明细数据 INSERT INTO public.ak_training_plan_items (id, plan_id, item_date, activity_type, target_value, unit, description, created_at) VALUES -- 春季体能提升计划明细 ('tpi11111-0000-0000-0000-000000000001', 'tp111111-0000-0000-0000-000000000001', '2025-06-10', '跑步', 3.0, 'km', '慢跑3公里,注意节奏', now()), ('tpi11111-0000-0000-0000-000000000002', 'tp111111-0000-0000-0000-000000000001', '2025-06-11', '跳绳', 500, '次', '分组完成,每组100次', now()), ('tpi11111-0000-0000-0000-000000000003', 'tp111111-0000-0000-0000-000000000001', '2025-06-12', '俯卧撑', 30, '次', '分3组,每组10次', now()), ('tpi11111-0000-0000-0000-000000000004', 'tp111111-0000-0000-0000-000000000001', '2025-06-13', '跑步', 3.5, 'km', '适当提高配速', now()), -- 校运会备赛训练明细 ('tpi11111-0000-0000-0000-000000000005', 'tp111111-0000-0000-0000-000000000002', '2025-06-16', '间歇跑', 800, 'm', '800米*4组,间歇3分钟', now()), ('tpi11111-0000-0000-0000-000000000006', 'tp111111-0000-0000-0000-000000000002', '2025-06-17', '恢复跑', 2.0, 'km', '轻松跑,恢复体能', now()), -- 夏季减脂计划明细 ('tpi22222-0000-0000-0000-000000000001', 'tp222222-0000-0000-0000-000000000001', '2025-06-15', '有氧运动', 45, '分钟', '椭圆机或跑步机', now()), ('tpi22222-0000-0000-0000-000000000002', 'tp222222-0000-0000-0000-000000000001', '2025-06-16', '力量训练', 30, '分钟', '哑铃训练,重点上肢', now()); -- 12. 训练记录数据 INSERT INTO public.ak_training_records (id, user_id, plan_item_id, device_id, activity_type, start_time, end_time, duration_sec, distance_km, calories, steps, avg_heart_rate, max_heart_rate, data, created_at) VALUES ('tr111111-0000-0000-0000-000000000001', '10000001-0000-0000-0000-000000000001', 'tpi11111-0000-0000-0000-000000000001', 'd1111111-0000-0000-0000-000000000001', '跑步', '2025-06-10 07:00:00+08', '2025-06-10 07:25:00+08', 1500, 3.0, 210, 4000, 120, 150, '{"pace": "8:20/km", "route": "校园跑道"}', now()), ('tr111111-0000-0000-0000-000000000002', '10000001-0000-0000-0000-000000000002', 'tpi11111-0000-0000-0000-000000000005', 'd1111111-0000-0000-0000-000000000002', '间歇跑', '2025-06-16 16:00:00+08', '2025-06-16 16:30:00+08', 1800, 3.2, 280, 3500, 145, 175, '{"intervals": 4, "rest_time": "3min"}', now()), ('tr222222-0000-0000-0000-000000000001', '20000001-0000-0000-0000-000000000001', 'tpi22222-0000-0000-0000-000000000001', 'd2222222-0000-0000-0000-000000000001', '有氧运动', '2025-06-15 18:00:00+08', '2025-06-15 18:45:00+08', 2700, 5.5, 320, 6200, 135, 160, '{"equipment": "椭圆机", "resistance": 5}', now()), ('tr333333-0000-0000-0000-000000000001', '30000001-0000-0000-0000-000000000001', NULL, 'd3333333-0000-0000-0000-000000000001', '跑步', '2025-06-12 06:30:00+08', '2025-06-12 07:00:00+08', 1800, 2.5, 180, 3200, 115, 140, '{"weather": "晴朗", "temperature": "22°C"}', now()); -- 13. 体征监测数据 INSERT INTO public.ak_biometric_data (id, user_id, device_id, data_type, value, unit, measured_at, extra) VALUES ('bio11111-0000-0000-0000-000000000001', '10000001-0000-0000-0000-000000000001', 'd1111111-0000-0000-0000-000000000001', 'heart_rate', 120, 'bpm', '2025-06-10 07:10:00+08', '{"context": "运动中"}'), ('bio11111-0000-0000-0000-000000000002', '10000001-0000-0000-0000-000000000001', 'd1111111-0000-0000-0000-000000000001', 'heart_rate', 65, 'bpm', '2025-06-10 08:00:00+08', '{"context": "静息"}'), ('bio11111-0000-0000-0000-000000000003', '10000001-0000-0000-0000-000000000002', 'd1111111-0000-0000-0000-000000000002', 'sleep', 7.5, 'hours', '2025-06-10 07:00:00+08', '{"deep_sleep": 2.5, "light_sleep": 5.0}'), ('bio22222-0000-0000-0000-000000000001', '20000001-0000-0000-0000-000000000001', 'd2222222-0000-0000-0000-000000000001', 'steps', 8500, 'count', '2025-06-15 23:59:00+08', '{"daily_goal": 10000}'), ('bio33333-0000-0000-0000-000000000001', '30000001-0000-0000-0000-000000000001', 'd3333333-0000-0000-0000-000000000001', 'weight', 70.5, 'kg', '2025-06-12 07:30:00+08', '{"bmi": 21.8}); -- 14. 视频分析结果数据 INSERT INTO public.ak_video_analysis (id, user_id, device_id, record_id, video_url, analysis_type, result, created_at) VALUES ('va111111-0000-0000-0000-000000000001', '10000001-0000-0000-0000-000000000001', 'd3333333-0000-0000-0000-000000000001', 'tr111111-0000-0000-0000-000000000001', 'https://example.com/videos/running_analysis_001.mp4', 'running_form', '{"posture_score": 85, "stride_analysis": {"length": "good", "frequency": "optimal"}, "recommendations": ["保持头部稳定", "增加步频"]}', now()), ('va222222-0000-0000-0000-000000000001', '20000001-0000-0000-0000-000000000001', 'd2222222-0000-0000-0000-000000000001', 'tr222222-0000-0000-0000-000000000001', 'https://example.com/videos/cardio_analysis_001.mp4', 'cardio_form', '{"technique_score": 78, "efficiency": "good", "suggestions": ["保持稳定节奏", "注意呼吸配合"]}', now()); -- =============================== -- 第四段: AI分析、通知和反馈数据 -- =============================== -- 15. AI分析报告数据 INSERT INTO public.ak_ai_reports (id, user_id, report_type, period_start, period_end, analysis_data, created_at) VALUES ('air11111-0000-0000-0000-000000000001', '10000001-0000-0000-0000-000000000001', 'weekly_summary', '2025-06-09', '2025-06-15', '{ "total_activities": 5, "total_distance": 12.5, "total_calories": 890, "avg_heart_rate": 125, "fitness_score": 78, "improvement_areas": ["耐力提升", "速度训练"], "achievements": ["完成本周训练目标", "心率控制良好"], "recommendations": [ "下周可适当增加跑步距离", "建议加入力量训练", "保持良好的训练节奏" ], "trend_analysis": { "distance_trend": "上升", "pace_trend": "稳定", "heart_rate_trend": "改善" } }', now()), ('air11111-0000-0000-0000-000000000002', '10000001-0000-0000-0000-000000000002', 'monthly_analysis', '2025-05-16', '2025-06-15', '{ "monthly_progress": { "training_days": 18, "rest_days": 12, "total_distance": 45.8, "avg_weekly_distance": 11.45 }, "performance_metrics": { "best_pace": "7:45/km", "longest_run": 5.0, "fitness_improvement": "12%" }, "health_indicators": { "resting_heart_rate": 62, "sleep_quality": "良好", "recovery_score": 85 } }', now()), ('air22222-0000-0000-0000-000000000001', '20000001-0000-0000-0000-000000000001', 'technique_analysis', '2025-06-15', '2025-06-15', '{ "activity_type": "有氧运动", "technique_score": 82, "strengths": ["节奏稳定", "呼吸配合好"], "weaknesses": ["上肢摆动不够充分"], "specific_feedback": { "posture": "保持良好", "breathing": "配合到位", "movement_efficiency": "可进一步提升" }, "training_suggestions": [ "增加上肢力量练习", "练习协调性动作" ] }', now()); -- 16. 通知数据 INSERT INTO public.ak_notifications (id, user_id, type, title, content, data, is_read, created_at) VALUES ('noti1111-0000-0000-0000-000000000001', '10000001-0000-0000-0000-000000000001', 'training_reminder', '今日训练提醒', '别忘了完成今天的跑步训练:慢跑3公里', '{"plan_item_id": "tpi11111-0000-0000-0000-000000000001", "target": "3.0km"}', false, now()), ('noti1111-0000-0000-0000-000000000002', '10000001-0000-0000-0000-000000000001', 'achievement', '恭喜达成成就!', '连续训练7天,获得"坚持不懈"徽章', '{"badge_id": "badge_persistence_7days", "achievement_type": "consistency"}', false, now()), ('noti1111-0000-0000-0000-000000000003', '10000001-0000-0000-0000-000000000002', 'report_ready', 'AI分析报告已生成', '您的本周训练分析报告已经准备好了,快来查看吧!', '{"report_id": "air11111-0000-0000-0000-000000000001", "report_type": "weekly_summary"}', true, now()), ('noti2222-0000-0000-0000-000000000001', '20000001-0000-0000-0000-000000000001', 'social_interaction', '好友点赞提醒', '张小明为你的训练记录点赞了', '{"from_user_id": "10000001-0000-0000-0000-000000000001", "record_id": "tr222222-0000-0000-0000-000000000001"}', false, now()), ('noti3333-0000-0000-0000-000000000001', '30000001-0000-0000-0000-000000000001', 'system_message', '系统维护通知', '系统将于今晚22:00-24:00进行维护,期间服务可能暂时不可用', '{"maintenance_start": "2025-06-16 22:00:00", "maintenance_end": "2025-06-17 00:00:00"}', false, now()); -- 17. 用户反馈数据 INSERT INTO public.ak_feedbacks (id, user_id, type, category, content, attachments, status, created_at, handled_at) VALUES ('fb111111-0000-0000-0000-000000000001', '10000001-0000-0000-0000-000000000001', 'bug_report', 'app_function', '跑步记录界面有时会卡死,需要重启APP才能正常使用', '["screenshot_bug_001.jpg"]', 'pending', now(), NULL), ('fb111111-0000-0000-0000-000000000002', '10000001-0000-0000-0000-000000000002', 'feature_request', 'training_plan', '希望能添加游泳训练计划,现在只有跑步和力量训练', NULL, 'in_progress', now(), now()), ('fb222222-0000-0000-0000-000000000001', '20000001-0000-0000-0000-000000000001', 'praise', 'ai_analysis', 'AI分析报告非常详细和准确,对我的监测帮助很大!', NULL, 'resolved', now(), now()), ('fb333333-0000-0000-0000-000000000001', '30000001-0000-0000-0000-000000000001', 'suggestion', 'user_interface', '建议在主界面增加快速开始训练的按钮,现在操作步骤有点多', NULL, 'pending', now(), NULL); -- 18. 系统日志数据 (用户行为追踪) INSERT INTO public.ak_user_logs (id, user_id, action_type, description, ip_address, user_agent, created_at) VALUES ('log11111-0000-0000-0000-000000000001', '10000001-0000-0000-0000-000000000001', 'login', '用户登录系统', '192.168.1.100', 'Mozilla/5.0 (iPhone; CPU iPhone OS 16_0 like Mac OS X)', now()), ('log11111-0000-0000-0000-000000000002', '10000001-0000-0000-0000-000000000001', 'start_workout', '开始跑步训练', '192.168.1.100', 'ZhiPao/1.2.0 (iPhone)', now()), ('log11111-0000-0000-0000-000000000003', '10000001-0000-0000-0000-000000000001', 'complete_workout', '完成跑步训练', '192.168.1.100', 'ZhiPao/1.2.0 (iPhone)', now()), ('log11111-0000-0000-0000-000000000004', '10000001-0000-0000-0000-000000000002', 'view_report', '查看AI分析报告', '192.168.1.101', 'ZhiPao/1.2.0 (Android)', now()), ('log22222-0000-0000-0000-000000000001', '20000001-0000-0000-0000-000000000001', 'share_record', '分享训练记录到朋友圈', '192.168.1.102', 'ZhiPao/1.2.0 (iPhone)', now()), ('log33333-0000-0000-0000-000000000001', '30000001-0000-0000-0000-000000000001', 'update_profile', '更新个人资料', '192.168.1.103', 'Mozilla/5.0 (Windows NT 10.0)', now()); -- =============================== -- 第五段: 社交分享和体育报告数据 -- =============================== -- 19. 体育报告数据 INSERT INTO public.ak_sport_reports (id, user_id, school_id, class_id, semester, report_type, content, status, created_at, updated_at) VALUES ('spr11111-0000-0000-0000-000000000001', '10000001-0000-0000-0000-000000000001', '11111111-2222-1111-1111-111111111111', '11111111-4444-1111-1111-111111111111', '2024-2025学年第二学期', 'monthly', '{ "student_name": "张小明", "class_name": "高一(1)班", "month": "2025-06", "training_summary": { "total_days": 15, "completed_sessions": 12, "completion_rate": 80, "total_distance": 25.5, "avg_heart_rate": 125 }, "performance_metrics": { "endurance_score": 85, "speed_improvement": "8%", "consistency_rating": "良好" }, "teacher_comments": "张小明同学训练积极性很高,耐力有明显提升,建议继续保持。", "recommendations": [ "可以适当增加力量训练", "注意训练后的拉伸放松" ] }', 'published', now(), now()), ('spr11111-0000-0000-0000-000000000002', '10000001-0000-0000-0000-000000000002', '11111111-2222-1111-1111-111111111111', '11111111-4444-1111-1111-111111111114', '2024-2025学年第二学期', 'semester', '{ "student_name": "李小红", "class_name": "高一(1)班", "semester": "2024-2025学年第二学期", "overall_performance": { "attendance_rate": 95, "participation_level": "优秀", "fitness_improvement": "显著", "skill_development": "良好" }, "physical_test_results": { "50m_dash": "7.8秒", "800m_run": "3分15秒", "long_jump": "4.2米", "pull_ups": 8 }, "final_grade": "A", "teacher_evaluation": "李小红同学在体育方面表现优异,各项身体素质都有明显提升。" }', 'draft', now(), now()), ('spr22222-0000-0000-0000-000000000001', '20000001-0000-0000-0000-000000000001', '22222222-2222-1111-1111-111111111111', '22222222-4444-1111-1111-111111111111', '2024-2025学年第二学期', 'weekly', '{ "student_name": "王小刚", "class_name": "七年级(1)班", "week": "第25周", "weekly_activities": [ {"date": "2025-06-15", "activity": "有氧运动", "duration": 45, "performance": "优秀"}, {"date": "2025-06-17", "activity": "篮球练习", "duration": 30, "performance": "良好"} ], "week_summary": "本周训练表现良好,建议继续保持。" }', 'published', now(), now()); -- 20. 分享记录数据 INSERT INTO public.ak_shares (id, user_id, share_type, content_id, platform, content, share_time, view_count, like_count) VALUES ('share111-0000-0000-0000-000000000001', '10000001-0000-0000-0000-000000000001', 'training_record', 'tr111111-0000-0000-0000-000000000001', 'wechat_moments', '{ "title": "今日跑步打卡", "description": "完成3公里慢跑,感觉状态不错!", "image": "running_record_001.jpg", "data": { "distance": "3.0km", "time": "25分钟", "pace": "8:20/km", "calories": 210 } }', now(), 15, 8), ('share111-0000-0000-0000-000000000002', '10000001-0000-0000-0000-000000000002', 'achievement', 'badge_persistence_7days', 'qq_zone', '{ "title": "获得新成就", "description": "连续训练7天,坚持就是胜利!", "badge_image": "badge_persistence.png" }', now(), 22, 12), ('share222-0000-0000-0000-000000000001', '20000001-0000-0000-0000-000000000001', 'ai_report', 'air22222-0000-0000-0000-000000000001', 'weibo', '{ "title": "AI训练分析报告", "description": "本次有氧运动技术分析得分82分,继续加油!", "report_summary": "节奏稳定,呼吸配合好" }', now(), 8, 3); -- 21. 朋友关系数据 INSERT INTO public.ak_user_friends (id, user_id, friend_id, status, created_at, updated_at) VALUES ('friend11-0000-0000-0000-000000000001', '10000001-0000-0000-0000-000000000001', '10000001-0000-0000-0000-000000000002', 'accepted', now(), now()), ('friend11-0000-0000-0000-000000000002', '10000001-0000-0000-0000-000000000002', '10000001-0000-0000-0000-000000000001', 'accepted', now(), now()), ('friend11-0000-0000-0000-000000000003', '10000001-0000-0000-0000-000000000001', '20000001-0000-0000-0000-000000000001', 'accepted', now(), now()), ('friend22-0000-0000-0000-000000000001', '20000001-0000-0000-0000-000000000001', '10000001-0000-0000-0000-000000000001', 'accepted', now(), now()), ('friend11-0000-0000-0000-000000000004', '10000001-0000-0000-0000-000000000003', '30000001-0000-0000-0000-000000000001', 'pending', now(), now()); -- 22. 互动记录数据 (点赞、评论) INSERT INTO public.ak_interactions (id, user_id, target_type, target_id, interaction_type, content, created_at) VALUES ('int11111-0000-0000-0000-000000000001', '10000001-0000-0000-0000-000000000002', 'training_record', 'tr111111-0000-0000-0000-000000000001', 'like', NULL, now()), ('int11111-0000-0000-0000-000000000002', '10000001-0000-0000-0000-000000000002', 'training_record', 'tr111111-0000-0000-0000-000000000001', 'comment', '跑得不错,继续加油!', now()), ('int22222-0000-0000-0000-000000000001', '20000001-0000-0000-0000-000000000001', 'share', 'share111-0000-0000-0000-000000000001', 'like', NULL, now()), ('int33333-0000-0000-0000-000000000001', '30000001-0000-0000-0000-000000000001', 'share', 'share111-0000-0000-0000-000000000002', 'comment', '厉害了,我也要坚持运动!', now()), ('int11111-0000-0000-0000-000000000003', '10000001-0000-0000-0000-000000000001', 'training_record', 'tr222222-0000-0000-0000-000000000001', 'like', NULL, now()); -- =============================== -- 第六段: 积分系统和游戏化数据 -- =============================== -- 23. 用户积分数据 INSERT INTO public.ak_user_points (id, user_id, total_points, available_points, created_at, updated_at) VALUES ('points11-0000-0000-0000-000000000001', '10000001-0000-0000-0000-000000000001', 1250, 850, now(), now()), ('points11-0000-0000-0000-000000000002', '10000001-0000-0000-0000-000000000002', 980, 680, now(), now()), ('points22-0000-0000-0000-000000000001', '20000001-0000-0000-0000-000000000001', 1450, 1200, now(), now()), ('points33-0000-0000-0000-000000000001', '30000001-0000-0000-0000-000000000001', 750, 500, now(), now()); -- 24. 积分变动记录 INSERT INTO public.ak_point_transactions (id, user_id, transaction_type, points, description, reference_id, created_at) VALUES ('pt111111-0000-0000-0000-000000000001', '10000001-0000-0000-0000-000000000001', 'earn', 50, '完成训练计划项目', 'tpi11111-0000-0000-0000-000000000001', now()), ('pt111111-0000-0000-0000-000000000002', '10000001-0000-0000-0000-000000000001', 'earn', 100, '获得坚持不懈成就', 'badge_persistence_7days', now()), ('pt111111-0000-0000-0000-000000000003', '10000001-0000-0000-0000-000000000001', 'spend', -200, '兑换运动装备优惠券', 'reward_coupon_001', now()), ('pt111111-0000-0000-0000-000000000004', '10000001-0000-0000-0000-000000000002', 'earn', 75, '分享训练记录', 'share111-0000-0000-0000-000000000001', now()), ('pt222222-0000-0000-0000-000000000001', '20000001-0000-0000-0000-000000000001', 'earn', 120, '完成AI推荐训练', 'air22222-0000-0000-0000-000000000001', now()), ('pt333333-0000-0000-0000-000000000001', '30000001-0000-0000-0000-000000000001', 'earn', 80, '连续登录7天', 'login_streak_7', now()); -- 25. 成就徽章数据 INSERT INTO public.ak_achievements (id, name, description, icon, condition_type, condition_value, points_reward, created_at) VALUES ('badge001-0000-0000-0000-000000000001', '坚持不懈', '连续训练7天', 'persistence_badge.png', 'consecutive_training', 7, 100, now()), ('badge002-0000-0000-0000-000000000001', '马拉松新手', '累计跑步距离达到42.195公里', 'marathon_beginner.png', 'total_distance', 42.195, 300, now()), ('badge003-0000-0000-0000-000000000001', '早起鸟儿', '在早上6点前完成训练10次', 'early_bird.png', 'early_workout', 10, 150, now()), ('badge004-0000-0000-0000-000000000001', '社交达人', '获得好友点赞50次', 'social_master.png', 'likes_received', 50, 200, now()), ('badge005-0000-0000-0000-000000000001', '健康生活', '连续记录睡眠数据30天', 'healthy_life.png', 'sleep_records', 30, 250, now()); -- 26. 用户成就记录 INSERT INTO public.ak_user_achievements (id, user_id, achievement_id, unlocked_at) VALUES ('ua111111-0000-0000-0000-000000000001', '10000001-0000-0000-0000-000000000001', 'badge001-0000-0000-0000-000000000001', now()), ('ua111111-0000-0000-0000-000000000002', '10000001-0000-0000-0000-000000000002', 'badge003-0000-0000-0000-000000000001', now()), ('ua222222-0000-0000-0000-000000000001', '20000001-0000-0000-0000-000000000001', 'badge001-0000-0000-0000-000000000001', now()), ('ua222222-0000-0000-0000-000000000002', '20000001-0000-0000-0000-000000000001', 'badge004-0000-0000-0000-000000000001', now()), ('ua333333-0000-0000-0000-000000000001', '30000001-0000-0000-0000-000000000001', 'badge005-0000-0000-0000-000000000001', now()); -- 27. 排行榜数据 INSERT INTO public.ak_leaderboards (id, type, period, region_id, school_id, class_id, data, created_at, updated_at) VALUES ('lb111111-0000-0000-0000-000000000001', 'weekly_distance', 'weekly', '11111111-1111-1111-1111-111111111121', '11111111-2222-1111-1111-111111111111', '11111111-4444-1111-1111-111111111111', ' [ {"rank": 1, "user_id": "10000001-0000-0000-0000-000000000001", "username": "张小明", "value": 15.5, "unit": "km"}, {"rank": 2, "user_id": "10000001-0000-0000-0000-000000000002", "username": "李小红", "value": 12.8, "unit": "km"}, {"rank": 3, "user_id": "10000001-0000-0000-0000-000000000003", "username": "王小刚", "value": 10.2, "unit": "km"} ]', now(), now()), ('lb222222-0000-0000-0000-000000000001', 'monthly_points', 'monthly', '22222222-2222-2222-2222-222222222231', '22222222-2222-1111-1111-111111111111', NULL, ' [ {"rank": 1, "user_id": "20000001-0000-0000-0000-000000000001", "username": "陈小美", "value": 1450, "unit": "points"}, {"rank": 2, "user_id": "20000001-0000-0000-0000-000000000002", "username": "赵小帅", "value": 1280, "unit": "points"} ]', now(), now()), ('lb333333-0000-0000-0000-000000000001', 'daily_steps', 'daily', '33333333-3333-3333-3333-333333333341', NULL, NULL, ' [ {"rank": 1, "user_id": "30000001-0000-0000-0000-000000000001", "username": "刘小强", "value": 12500, "unit": "steps"}, {"rank": 2, "user_id": "30000001-0000-0000-0000-000000000002", "username": "周小丽", "value": 11800, "unit": "steps"} ]', now(), now()); -- =============================== -- 第六段: 作业布置和教育功能数据 -- =============================== -- 28. 体育作业数据 INSERT INTO public.ak_assignments (id, teacher_id, school_id, class_id, title, description, requirements, due_date, status, created_at) VALUES ('assign11-0000-0000-0000-000000000001', '10000002-0000-0000-0000-000000000001', '11111111-2222-1111-1111-111111111111', '11111111-4444-1111-1111-111111111111', '本周跑步训练作业', '完成每日跑步训练,总距离不少于10公里', '{ "total_distance": 10, "min_sessions": 3, "max_heart_rate": 160, "upload_required": true, "deadline": "2025-06-22" }', '2025-06-22', 'active', now()), ('assign11-0000-0000-0000-000000000002', '10000002-0000-0000-0000-000000000002', '11111111-2222-1111-1111-111111111112', '11111111-4444-1111-1111-111111111114', '体能测试准备', '为即将到来的体能测试做准备,包含50米短跑和800米长跑练习', '{ "activities": ["50m冲刺", "800m耐力跑"], "frequency": "每日一次", "video_analysis": true }', '2025-06-25', 'active', now()), ('assign22-0000-0000-0000-000000000001', '20000002-0000-0000-0000-000000000001', '22222222-2222-1111-1111-111111111111', '22222222-4444-1111-1111-111111111111', '篮球基本功练习', '练习篮球运球、投篮基本动作', '{ "skills": ["运球", "投篮", "传球"], "practice_time": 30, "record_video": true }', '2025-06-20', 'active', now()); -- 29. 作业提交数据 INSERT INTO public.ak_assignment_submissions (id, assignment_id, student_id, submission_data, submission_time, status, score, teacher_feedback) VALUES ('sub11111-0000-0000-0000-000000000001', 'assign11-0000-0000-0000-000000000001', '10000001-0000-0000-0000-000000000001', '{ "completed_sessions": 4, "total_distance": 12.5, "training_records": [ "tr111111-0000-0000-0000-000000000001" ], "notes": "每天坚持跑步,感觉体能有所提升" }', now(), 'submitted', 95, '完成质量很高,超额完成了距离要求,值得表扬!'), ('sub11111-0000-0000-0000-000000000002', 'assign11-0000-0000-0000-000000000001', '10000001-0000-0000-0000-000000000002', '{ "completed_sessions": 3, "total_distance": 10.2, "training_records": [], "notes": "按要求完成了训练" }', now(), 'submitted', 88, '达到了基本要求,建议增加训练频次'), ('sub22222-0000-0000-0000-000000000001', 'assign22-0000-0000-0000-000000000001', '20000001-0000-0000-0000-000000000001', '{ "practice_videos": ["basketball_practice_001.mp4"], "self_assessment": "运球技术有进步,投篮命中率还需提高", "practice_duration": 35 }', now(), 'graded', 92, '基本动作掌握良好,继续练习投篮准确性'); -- 30. 教学资源数据 INSERT INTO public.ak_teaching_resources (id, teacher_id, type, title, description, content_url, tags, is_public, created_at) VALUES ('res11111-0000-0000-0000-000000000001', '10000002-0000-0000-0000-000000000001', 'video', '正确跑步姿势教学', '详细讲解跑步时的正确姿势和呼吸方法', 'https://example.com/videos/running_posture_guide.mp4', '["跑步", "姿势", "教学视频"]', true, now()), ('res11111-0000-0000-0000-000000000002', '10000002-0000-0000-0000-000000000001', 'document', '训练安全须知', 'AI监测过程中的安全注意事项', 'https://example.com/docs/safety_guidelines.pdf', '["安全", "训练", "须知"]', true, now()), ('res22222-0000-0000-0000-000000000001', '20000002-0000-0000-0000-000000000001', 'video', '篮球基本功训练', '篮球运球、投篮、传球基本技巧', 'https://example.com/videos/basketball_basics.mp4', '["篮球", "基本功", "技巧"]', true, now()), ('res33333-0000-0000-0000-000000000001', '30000002-0000-0000-0000-000000000001', 'plan', '青少年体能训练计划模板', '适合中学生的综合体能训练计划', 'https://example.com/plans/youth_fitness_template.json', '["体能", "训练计划", "青少年"]', false, now()); -- 31. 课程安排数据 INSERT INTO public.ak_class_schedules (id, teacher_id, school_id, class_id, subject, day_of_week, start_time, end_time, location, created_at) VALUES ('sch11111-0000-0000-0000-000000000001', '10000002-0000-0000-0000-000000000001', '11111111-2222-1111-1111-111111111111', '11111111-4444-1111-1111-111111111111', '体育', 2, '08:00:00', '08:45:00', '学校操场', now()), ('sch11111-0000-0000-0000-000000000002', '10000002-0000-0000-0000-000000000001', '11111111-2222-1111-1111-111111111111', '11111111-4444-1111-1111-111111111112', '体育', 4, '14:00:00', '14:45:00', '体育馆', now()), ('sch22222-0000-0000-0000-000000000001', '20000002-0000-0000-0000-000000000001', '22222222-2222-1111-1111-111111111111', '22222222-4444-1111-1111-111111111111', '体育', 1, '09:00:00', '09:45:00', '篮球场', now()), ('sch22222-0000-0000-0000-000000000002', '20000002-0000-0000-0000-000000000001', '22222222-2222-1111-1111-111111111111', '22222222-4444-1111-1111-111111111112', '体育', 3, '15:30:00', '16:15:00', '足球场', now()); -- =============================== -- 数据生成完毕 -- =============================== -- 统计信息查询 SELECT 'ak_languages' as table_name, COUNT(*) as record_count FROM public.ak_languages UNION ALL SELECT 'ak_regions', COUNT(*) FROM public.ak_regions UNION ALL SELECT 'ak_schools', COUNT(*) FROM public.ak_schools UNION ALL SELECT 'ak_grades', COUNT(*) FROM public.ak_grades UNION ALL SELECT 'ak_classes', COUNT(*) FROM public.ak_classes UNION ALL SELECT 'ak_users', COUNT(*) FROM public.ak_users UNION ALL SELECT 'ak_user_profiles', COUNT(*) FROM public.ak_user_profiles UNION ALL SELECT 'ak_user_contacts', COUNT(*) FROM public.ak_user_contacts UNION ALL SELECT 'ak_devices', COUNT(*) FROM public.ak_devices UNION ALL SELECT 'ak_training_plans', COUNT(*) FROM public.ak_training_plans UNION ALL SELECT 'ak_training_plan_items', COUNT(*) FROM public.ak_training_plan_items UNION ALL SELECT 'ak_training_records', COUNT(*) FROM public.ak_training_records UNION ALL SELECT 'ak_biometric_data', COUNT(*) FROM public.ak_biometric_data UNION ALL SELECT 'ak_video_analysis', COUNT(*) FROM public.ak_video_analysis UNION ALL SELECT 'ak_ai_reports', COUNT(*) FROM public.ak_ai_reports UNION ALL SELECT 'ak_notifications', COUNT(*) FROM public.ak_notifications UNION ALL SELECT 'ak_feedbacks', COUNT(*) FROM public.ak_feedbacks UNION ALL SELECT 'ak_user_logs', COUNT(*) FROM public.ak_user_logs UNION ALL SELECT 'ak_sport_reports', COUNT(*) FROM public.ak_sport_reports UNION ALL SELECT 'ak_shares', COUNT(*) FROM public.ak_shares UNION ALL SELECT 'ak_user_friends', COUNT(*) FROM public.ak_user_friends UNION ALL SELECT 'ak_interactions', COUNT(*) FROM public.ak_interactions UNION ALL SELECT 'ak_user_points', COUNT(*) FROM public.ak_user_points UNION ALL SELECT 'ak_point_transactions', COUNT(*) FROM public.ak_point_transactions UNION ALL SELECT 'ak_achievements', COUNT(*) FROM public.ak_achievements UNION ALL SELECT 'ak_user_achievements', COUNT(*) FROM public.ak_user_achievements UNION ALL SELECT 'ak_leaderboards', COUNT(*) FROM public.ak_leaderboards UNION ALL SELECT 'ak_assignments', COUNT(*) FROM public.ak_assignments UNION ALL SELECT 'ak_assignment_submissions', COUNT(*) FROM public.ak_assignment_submissions UNION ALL SELECT 'ak_teaching_resources', COUNT(*) FROM public.ak_teaching_resources UNION ALL SELECT 'ak_class_schedules', COUNT(*) FROM public.ak_class_schedules ORDER BY table_name;