-- 积分兑换模块 Mock 数据 -- 用途:仅用于本地/测试环境查看“积分兑换”页面效果 -- 前置条件:已执行 backend/sql/update_points_exchange_schema.sql SET NAMES utf8mb4; -- 先清理本脚本生成的明细和汇总数据,保证可重复执行 DELETE FROM `tcm_points_exchange_order_item` WHERE `id` IN (9401, 9402, 9403, 9404, 9405, 9406, 9407); DELETE FROM `tcm_points_exchange_order` WHERE `id` IN (9301, 9302, 9303, 9304); DELETE FROM `tcm_points_ledger` WHERE `id` IN (9501, 9502, 9503, 9504, 9505, 9506, 9507); DELETE FROM `tcm_user_points_account` WHERE `id` IN (9201, 9202, 9203, 9204, 9205, 9206, 9207); DELETE FROM `tcm_points_config` WHERE `id` IN (9101, 9102); DELETE FROM `tcm_app_user` WHERE `id` IN (9001, 9002, 9003, 9004, 9005, 9006, 9007); DELETE FROM `tcm_clinic` WHERE `id` IN (8001, 8002, 8003); -- 诊所 INSERT INTO `tcm_clinic` (`id`, `name`, `contact_name`, `contact_phone`, `province_code`, `province_name`, `city_code`, `city_name`, `district_code`, `district_name`, `address`, `status`, `deleted`, `created_by`, `updated_by`) VALUES (8001, '成都青羊本草堂', '陈院长', '13811110001', '510000', '四川省', '510100', '成都市', '510105', '青羊区', '四川省成都市青羊区西御街88号', 1, 0, 'mock', 'mock'), (8002, '成都高新仁和馆', '李主任', '13811110002', '510000', '四川省', '510100', '成都市', '510109', '高新区', '四川省成都市高新区天府大道199号', 1, 0, 'mock', 'mock'), (8003, '重庆渝中岐黄馆', '王馆长', '13811110003', '500000', '重庆市', '500100', '重庆市', '500103', '渝中区', '重庆市渝中区解放碑步行街66号', 1, 0, 'mock', 'mock'); -- 用户 INSERT INTO `tcm_app_user` (`id`, `nickname`, `phone`, `avatar`, `wechat_openid`, `wechat_nickname`, `wechat_avatar`, `wechat_bound_at`, `apple_user_identifier`, `apple_identity_subject`, `apple_bound_at`, `type`, `gender`, `age`, `intro`, `status`, `clinic_id`, `member_expire_at`, `deleted`, `created_by`, `updated_by`) VALUES (9001, '岐黄学员A', '13900000001', 'https://example.com/mock/avatar-9001.png', 'mock_openid_9001', '岐黄学员A', 'https://example.com/mock/wx-9001.png', '2026-03-01 09:00:00', NULL, NULL, NULL, 1, 1, 32, '积分兑换 mock 用户 A', 1, 8001, '2027-03-01 00:00:00', 0, 'mock', 'mock'), (9002, '岐黄学员B', '13900000002', 'https://example.com/mock/avatar-9002.png', 'mock_openid_9002', '岐黄学员B', 'https://example.com/mock/wx-9002.png', '2026-03-02 09:00:00', NULL, NULL, NULL, 0, 0, 29, '积分兑换 mock 用户 B', 1, 8001, '2027-03-01 00:00:00', 0, 'mock', 'mock'), (9003, '岐黄学员C', '13900000003', 'https://example.com/mock/avatar-9003.png', 'mock_openid_9003', '岐黄学员C', 'https://example.com/mock/wx-9003.png', '2026-03-03 09:00:00', NULL, NULL, NULL, 1, 1, 35, '积分兑换 mock 用户 C', 1, 8002, '2027-03-01 00:00:00', 0, 'mock', 'mock'), (9004, '岐黄学员D', '13900000004', 'https://example.com/mock/avatar-9004.png', 'mock_openid_9004', '岐黄学员D', 'https://example.com/mock/wx-9004.png', '2026-03-04 09:00:00', NULL, NULL, NULL, 0, 0, 27, '积分兑换 mock 用户 D', 1, 8002, '2027-03-01 00:00:00', 0, 'mock', 'mock'), (9005, '岐黄学员E', '13900000005', 'https://example.com/mock/avatar-9005.png', 'mock_openid_9005', '岐黄学员E', 'https://example.com/mock/wx-9005.png', '2026-03-05 09:00:00', NULL, NULL, NULL, 1, 1, 41, '积分兑换 mock 用户 E', 1, 8003, '2027-03-01 00:00:00', 0, 'mock', 'mock'), (9006, '岐黄学员F', '13900000006', 'https://example.com/mock/avatar-9006.png', 'mock_openid_9006', '岐黄学员F', 'https://example.com/mock/wx-9006.png', '2026-03-06 09:00:00', NULL, NULL, NULL, 0, 0, 38, '积分兑换 mock 用户 F', 1, 8003, '2027-03-01 00:00:00', 0, 'mock', 'mock'), (9007, '岐黄学员G', '13900000007', 'https://example.com/mock/avatar-9007.png', 'mock_openid_9007', '岐黄学员G', 'https://example.com/mock/wx-9007.png', '2026-03-07 09:00:00', NULL, NULL, NULL, 0, 1, 30, '积分兑换 mock 用户 G', 1, 8003, '2027-03-01 00:00:00', 0, 'mock', 'mock'); -- 积分设置 INSERT INTO `tcm_points_config` (`id`, `activity_start_at`, `activity_end_at`, `gift_cover`, `gift_name`, `required_points`, `settlement_status`, `settled_at`, `deleted`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES (9101, '2026-03-01 00:00:00', '2026-03-31 23:59:59', 'https://example.com/mock/points-gift-box.png', '艾灸养生礼盒', 100, 1, '2026-04-01 10:00:00', 0, 'mock', 'mock', '2026-03-01 08:00:00', '2026-04-01 10:00:00'), (9102, '2026-04-01 00:00:00', '2026-04-30 23:59:59', 'https://example.com/mock/points-gift-pot.png', '草本泡脚包', 80, 0, NULL, 0, 'mock', 'mock', '2026-04-01 08:00:00', '2026-04-01 08:00:00'); -- 用户积分账户 INSERT INTO `tcm_user_points_account` (`id`, `app_user_id`, `points_balance`, `last_settled_config_id`, `last_cleared_at`, `deleted`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES (9201, 9001, 0, 9101, '2026-04-01 10:00:00', 0, 'mock', 'mock', '2026-03-01 08:00:00', '2026-04-01 10:00:00'), (9202, 9002, 0, 9101, '2026-04-01 10:00:00', 0, 'mock', 'mock', '2026-03-01 08:00:00', '2026-04-01 10:00:00'), (9203, 9003, 0, 9101, '2026-04-01 10:00:00', 0, 'mock', 'mock', '2026-03-01 08:00:00', '2026-04-01 10:00:00'), (9204, 9004, 0, 9101, '2026-04-01 10:00:00', 0, 'mock', 'mock', '2026-03-01 08:00:00', '2026-04-01 10:00:00'), (9205, 9005, 20, NULL, NULL, 0, 'mock', 'mock', '2026-04-01 08:00:00', '2026-04-01 08:00:00'), (9206, 9006, 150, NULL, NULL, 0, 'mock', 'mock', '2026-04-01 08:00:00', '2026-04-01 08:00:00'), (9207, 9007, 75, NULL, NULL, 0, 'mock', 'mock', '2026-04-01 08:00:00', '2026-04-01 08:00:00'); -- 汇总订单 INSERT INTO `tcm_points_exchange_order` (`id`, `order_no`, `config_id`, `gift_cover`, `gift_name`, `required_points`, `activity_start_at`, `activity_end_at`, `clinic_id`, `clinic_app_user_id`, `clinic_name`, `receiver_name`, `receiver_phone`, `receiver_address`, `item_count`, `total_points`, `status`, `tracking_no`, `shipped_at`, `completed_at`, `cancelled_at`, `deleted`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES (9301, 'PEO202604010001', 9101, 'https://example.com/mock/points-gift-box.png', '艾灸养生礼盒', 100, '2026-03-01 00:00:00', '2026-03-31 23:59:59', 8001, 9001, '成都青羊本草堂', '陈院长', '13811110001', '四川省成都市青羊区西御街88号', 2, 230, 0, NULL, NULL, NULL, NULL, 0, 'mock', 'mock', '2026-04-01 10:00:00', '2026-04-01 10:00:00'), (9302, 'PEO202604010002', 9101, 'https://example.com/mock/points-gift-box.png', '艾灸养生礼盒', 100, '2026-03-01 00:00:00', '2026-03-31 23:59:59', 8002, 9003, '成都高新仁和馆', '李主任', '13811110002', '四川省成都市高新区天府大道199号', 2, 230, 1, 'SF88A', '2026-04-02 14:30:00', NULL, NULL, 0, 'mock', 'mock', '2026-04-01 10:20:00', '2026-04-02 14:30:00'), (9303, 'PEO202604010003', 9101, 'https://example.com/mock/points-gift-box.png', '艾灸养生礼盒', 100, '2026-03-01 00:00:00', '2026-03-31 23:59:59', 8003, 9005, '重庆渝中岐黄馆', '王馆长', '13811110003', '重庆市渝中区解放碑步行街66号', 2, 210, 2, 'YT52C', '2026-04-03 11:20:00', NULL, NULL, 0, 'mock', 'mock', '2026-04-01 10:40:00', '2026-04-03 11:20:00'), (9304, 'PEO202604010004', 9101, 'https://example.com/mock/points-gift-box.png', '艾灸养生礼盒', 100, '2026-03-01 00:00:00', '2026-03-31 23:59:59', 8003, 9005, '重庆渝中岐黄馆', '王馆长', '13811110003', '重庆市渝中区解放碑步行街66号', 1, 110, 2, 'ZT99D', '2026-04-04 09:00:00', '2026-04-06 16:00:00', NULL, 0, 'mock', 'mock', '2026-04-01 11:00:00', '2026-04-06 16:00:00'); -- 明细订单 INSERT INTO `tcm_points_exchange_order_item` (`id`, `order_id`, `order_no`, `app_user_id`, `user_nickname`, `user_phone`, `clinic_id`, `clinic_name`, `province_code`, `province_name`, `city_code`, `city_name`, `district_code`, `district_name`, `settled_points`, `status`, `tracking_no`, `shipped_at`, `completed_at`, `cancelled_at`, `deleted`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES (9401, 9301, 'PEI202604010001', 9001, '岐黄学员A', '13900000001', 8001, '成都青羊本草堂', '510000', '四川省', '510100', '成都市', '510105', '青羊区', 120, 0, NULL, NULL, NULL, NULL, 0, 'mock', 'mock', '2026-04-01 10:00:00', '2026-04-01 10:00:00'), (9402, 9301, 'PEI202604010002', 9002, '岐黄学员B', '13900000002', 8001, '成都青羊本草堂', '510000', '四川省', '510100', '成都市', '510105', '青羊区', 110, 0, NULL, NULL, NULL, NULL, 0, 'mock', 'mock', '2026-04-01 10:03:00', '2026-04-01 10:03:00'), (9403, 9302, 'PEI202604010003', 9003, '岐黄学员C', '13900000003', 8002, '成都高新仁和馆', '510000', '四川省', '510100', '成都市', '510109', '高新区', 105, 1, 'SF88A', '2026-04-02 14:30:00', NULL, NULL, 0, 'mock', 'mock', '2026-04-01 10:20:00', '2026-04-02 14:30:00'), (9404, 9302, 'PEI202604010004', 9004, '岐黄学员D', '13900000004', 8002, '成都高新仁和馆', '510000', '四川省', '510100', '成都市', '510109', '高新区', 125, 1, 'SF88A', '2026-04-02 14:30:00', NULL, NULL, 0, 'mock', 'mock', '2026-04-01 10:25:00', '2026-04-02 14:30:00'), (9405, 9303, 'PEI202604010005', 9005, '岐黄学员E', '13900000005', 8003, '重庆渝中岐黄馆', '500000', '重庆市', '500100', '重庆市', '500103', '渝中区', 100, 2, 'YT52C', '2026-04-03 11:20:00', NULL, NULL, 0, 'mock', 'mock', '2026-04-01 10:40:00', '2026-04-03 11:20:00'), (9406, 9303, 'PEI202604010006', 9006, '岐黄学员F', '13900000006', 8003, '重庆渝中岐黄馆', '500000', '重庆市', '500100', '重庆市', '500103', '渝中区', 110, 2, 'YT52C', '2026-04-03 11:20:00', NULL, NULL, 0, 'mock', 'mock', '2026-04-01 10:45:00', '2026-04-03 11:20:00'), (9407, 9304, 'PEI202604010007', 9007, '岐黄学员G', '13900000007', 8003, '重庆渝中岐黄馆', '500000', '重庆市', '500100', '重庆市', '500103', '渝中区', 110, 2, 'ZT99D', '2026-04-04 09:00:00', '2026-04-06 16:00:00', NULL, 0, 'mock', 'mock', '2026-04-01 11:00:00', '2026-04-06 16:00:00'); -- 积分流水,便于联动查看“积分收支明细”时也有数据 INSERT INTO `tcm_points_ledger` (`id`, `app_user_id`, `user_nickname`, `user_phone`, `clinic_id`, `clinic_name`, `province_code`, `province_name`, `city_code`, `city_name`, `district_code`, `district_name`, `income_expense_type`, `business_type`, `content_name`, `reference_type`, `reference_id`, `reference_no`, `points_delta`, `operated_at`, `source_type`, `source_id`, `deleted`, `created_by`, `updated_by`, `created_at`, `updated_at`) VALUES (9501, 9001, '岐黄学员A', '13900000001', 8001, '成都青羊本草堂', '510000', '四川省', '510100', '成都市', '510105', '青羊区', 'EXPENSE', 'POINTS_EXCHANGE', '艾灸养生礼盒', 'EXCHANGE_ITEM', 9401, 'PEI202604010001', -120, '2026-04-01 10:00:00', 'EXCHANGE_ITEM', 9401, 0, 'mock', 'mock', '2026-04-01 10:00:00', '2026-04-01 10:00:00'), (9502, 9002, '岐黄学员B', '13900000002', 8001, '成都青羊本草堂', '510000', '四川省', '510100', '成都市', '510105', '青羊区', 'EXPENSE', 'POINTS_EXCHANGE', '艾灸养生礼盒', 'EXCHANGE_ITEM', 9402, 'PEI202604010002', -110, '2026-04-01 10:03:00', 'EXCHANGE_ITEM', 9402, 0, 'mock', 'mock', '2026-04-01 10:03:00', '2026-04-01 10:03:00'), (9503, 9003, '岐黄学员C', '13900000003', 8002, '成都高新仁和馆', '510000', '四川省', '510100', '成都市', '510109', '高新区', 'EXPENSE', 'POINTS_EXCHANGE', '艾灸养生礼盒', 'EXCHANGE_ITEM', 9403, 'PEI202604010003', -105, '2026-04-01 10:20:00', 'EXCHANGE_ITEM', 9403, 0, 'mock', 'mock', '2026-04-01 10:20:00', '2026-04-01 10:20:00'), (9504, 9004, '岐黄学员D', '13900000004', 8002, '成都高新仁和馆', '510000', '四川省', '510100', '成都市', '510109', '高新区', 'EXPENSE', 'POINTS_EXCHANGE', '艾灸养生礼盒', 'EXCHANGE_ITEM', 9404, 'PEI202604010004', -125, '2026-04-01 10:25:00', 'EXCHANGE_ITEM', 9404, 0, 'mock', 'mock', '2026-04-01 10:25:00', '2026-04-01 10:25:00'), (9505, 9005, '岐黄学员E', '13900000005', 8003, '重庆渝中岐黄馆', '500000', '重庆市', '500100', '重庆市', '500103', '渝中区', 'EXPENSE', 'POINTS_EXCHANGE', '艾灸养生礼盒', 'EXCHANGE_ITEM', 9405, 'PEI202604010005', -100, '2026-04-01 10:40:00', 'EXCHANGE_ITEM', 9405, 0, 'mock', 'mock', '2026-04-01 10:40:00', '2026-04-01 10:40:00'), (9506, 9006, '岐黄学员F', '13900000006', 8003, '重庆渝中岐黄馆', '500000', '重庆市', '500100', '重庆市', '500103', '渝中区', 'EXPENSE', 'POINTS_EXCHANGE', '艾灸养生礼盒', 'EXCHANGE_ITEM', 9406, 'PEI202604010006', -110, '2026-04-01 10:45:00', 'EXCHANGE_ITEM', 9406, 0, 'mock', 'mock', '2026-04-01 10:45:00', '2026-04-01 10:45:00'), (9507, 9007, '岐黄学员G', '13900000007', 8003, '重庆渝中岐黄馆', '500000', '重庆市', '500100', '重庆市', '500103', '渝中区', 'EXPENSE', 'POINTS_EXCHANGE', '艾灸养生礼盒', 'EXCHANGE_ITEM', 9407, 'PEI202604010007', -110, '2026-04-01 11:00:00', 'EXCHANGE_ITEM', 9407, 0, 'mock', 'mock', '2026-04-01 11:00:00', '2026-04-01 11:00:00');