修复订单显示bug

This commit is contained in:
2026-06-10 20:20:47 +08:00
parent de62513987
commit 9fbc6f8cd1
45 changed files with 7514 additions and 2025 deletions

View File

@@ -0,0 +1,94 @@
#!/usr/bin/env node
/**
* 创建居家服务员 auth 用户Supabase Admin API
* 用法:
* 1. cd mall_sql/scripts
* 2. 设置环境变量 SUPABASE_URL 和 SUPABASE_SERVICE_ROLE_KEY
* 3. node create_homecare_auth_user.js
*
* 如果未安装 @supabase/supabase-js先执行
* npm install @supabase/supabase-js
*/
const { createClient } = require('@supabase/supabase-js');
const SUPABASE_URL = process.env.SUPABASE_URL || 'http://119.146.131.237:9126';
const SUPABASE_SERVICE_ROLE_KEY = process.env.SUPABASE_SERVICE_ROLE_KEY || '';
if (!SUPABASE_SERVICE_ROLE_KEY) {
console.error('❌ 请设置环境变量 SUPABASE_SERVICE_ROLE_KEY');
console.error(' 该 key 可在 Supabase Dashboard -> Project Settings -> API -> service_role key 获取');
process.exit(1);
}
const supabase = createClient(SUPABASE_URL, SUPABASE_SERVICE_ROLE_KEY, {
auth: { autoRefreshToken: false, persistSession: false }
});
async function main() {
const email = 'homecare_worker@test.com';
const password = 'Homecare123!';
console.log(`📝 正在创建/更新 auth 用户: ${email}`);
// 先尝试查找现有用户
const { data: existingUsers, error: listError } = await supabase.auth.admin.listUsers({
page: 1,
perPage: 1000
});
if (listError) {
console.error('❌ 查询用户列表失败:', listError.message);
process.exit(1);
}
const existingUser = existingUsers.users.find(u => u.email === email);
if (existingUser) {
console.log(`⚠️ 用户已存在 (ID: ${existingUser.id}),更新密码...`);
const { data: updateData, error: updateError } = await supabase.auth.admin.updateUserById(
existingUser.id,
{ password, email_confirm: true }
);
if (updateError) {
console.error('❌ 更新用户失败:', updateError.message);
process.exit(1);
}
console.log('✅ 密码已更新');
console.log(` 用户ID: ${updateData.user.id}`);
console.log(` 邮箱: ${updateData.user.email}`);
} else {
console.log('🔨 创建新用户...');
const { data: createData, error: createError } = await supabase.auth.admin.createUser({
email,
password,
email_confirm: true,
user_metadata: {
name: '居家服务员',
role: 'delivery',
nickname: '居家服务员'
}
});
if (createError) {
console.error('❌ 创建用户失败:', createError.message);
process.exit(1);
}
console.log('✅ 用户创建成功');
console.log(` 用户ID: ${createData.user.id}`);
console.log(` 邮箱: ${createData.user.email}`);
}
console.log('\n📋 下一步:');
console.log(' 在 Supabase SQL Editor 中执行 seed_homecare_worker.sql');
console.log(' 以创建 ak_users 和 ml_delivery_staff 记录。');
}
main().catch(err => {
console.error('❌ 未捕获错误:', err);
process.exit(1);
});