Files
akmon/doc_zhipao/mock_sport.sql
2026-01-20 08:04:15 +08:00

601 lines
45 KiB
SQL
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
-- 智跑平台测试数据 (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', '', '610', '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', '', '50800', '{
"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;