270 lines
12 KiB
PHP
270 lines
12 KiB
PHP
<?php
|
|
require_once __DIR__ . '/db/config.php';
|
|
|
|
$db = db();
|
|
|
|
function hash_pass($p) {
|
|
return password_hash($p, PASSWORD_DEFAULT);
|
|
}
|
|
|
|
// Clear existing data to avoid conflicts during re-seed
|
|
$db->exec("SET FOREIGN_KEY_CHECKS = 0");
|
|
$tables = [
|
|
'ai_chats',
|
|
'blocked_users',
|
|
'faqs',
|
|
'funding_rounds',
|
|
'investments',
|
|
'matches',
|
|
'messages',
|
|
'notifications',
|
|
'startup_followers',
|
|
'startup_updates',
|
|
'startups',
|
|
'swipes',
|
|
'users'
|
|
];
|
|
foreach ($tables as $table) {
|
|
$db->exec("TRUNCATE TABLE $table");
|
|
}
|
|
$db->exec("SET FOREIGN_KEY_CHECKS = 1");
|
|
|
|
$founders = [
|
|
[
|
|
'full_name' => 'Alex Chen',
|
|
'email' => 'alex.chen@founder.io',
|
|
'role' => 'founder',
|
|
'university' => 'Stanford University',
|
|
'graduation_year' => 2018,
|
|
'bio' => 'Former software engineer at Google with a passion for logistics and AI.',
|
|
'interests' => 'AI, Logistics, E-commerce',
|
|
'country' => 'United States of America',
|
|
'cv_url' => 'assets/docs/cvs/placeholder.pdf',
|
|
'skills' => 'Python, TensorFlow, Cloud Architecture',
|
|
'years_experience' => 5,
|
|
'previous_startup_exp' => 1,
|
|
'startup_name' => 'LogiAI',
|
|
'legal_name' => 'LogiAI Systems Inc.',
|
|
'startup_desc' => 'AI-powered predictive analytics for global supply chain optimization.',
|
|
'industry' => 'AI & Robotics',
|
|
'sub_industry' => 'Logistics Tech',
|
|
'business_model' => 'B2B SaaS subscription model based on shipment volume.',
|
|
'product_service' => 'Predictive analytics dashboard and API for freight forwarders.',
|
|
'operational_stage' => 'Revenue-generating',
|
|
'cofounder_equity_pct' => '10-15%',
|
|
'cofounder_equity_type' => 'Options',
|
|
'cofounder_responsibilities' => 'Oversee hardware integrations and edge computing strategy.',
|
|
'desired_cofounder_experience' => 'Hardware engineering, IoT systems.',
|
|
'cofounder_commitment' => 'Full-time',
|
|
'other_partnership_details' => 'Preference for candidates with previous exit experience.',
|
|
'current_cash_balance' => 450000.00,
|
|
'burn_rate' => 25000.00,
|
|
'outstanding_debt' => '£50k Convertible Note',
|
|
'accounts_receivable_payable' => '£80k / £20k',
|
|
'funding_target' => 500000.00,
|
|
'recommended_return_rate' => 7.5,
|
|
'founder_return_rate' => 8.0
|
|
],
|
|
[
|
|
'full_name' => 'Sarah Jenkins',
|
|
'email' => 'sarah.j@sea-pack.com',
|
|
'role' => 'founder',
|
|
'university' => 'Oxford University',
|
|
'graduation_year' => 2015,
|
|
'bio' => 'Marine biologist turned entrepreneur.',
|
|
'interests' => 'Sustainability, Marine Biology',
|
|
'country' => 'United Kingdom',
|
|
'cv_url' => 'assets/docs/cvs/placeholder.pdf',
|
|
'skills' => 'Biochemistry, Product Development',
|
|
'years_experience' => 8,
|
|
'previous_startup_exp' => 0,
|
|
'startup_name' => 'SeaPack',
|
|
'legal_name' => 'SeaPack Solutions Ltd',
|
|
'startup_desc' => 'Biodegradable packaging solutions derived from cultivated seaweed.',
|
|
'industry' => 'Clean Energy',
|
|
'sub_industry' => 'Sustainable Packaging',
|
|
'business_model' => 'Direct-to-manufacturer wholesale of raw biopolymer sheets.',
|
|
'product_service' => 'Seaweed-based alternative to plastic shrink wrap.',
|
|
'operational_stage' => 'MVP',
|
|
'cofounder_equity_pct' => '20%',
|
|
'cofounder_equity_type' => 'Common Shares',
|
|
'cofounder_responsibilities' => 'Lead sales and business development efforts globally.',
|
|
'desired_cofounder_experience' => 'FMCG sales, supply chain networking.',
|
|
'cofounder_commitment' => 'Full-time',
|
|
'other_partnership_details' => 'Seeking someone with strong ties to major retail brands.',
|
|
'current_cash_balance' => 85000.00,
|
|
'burn_rate' => 8000.00,
|
|
'outstanding_debt' => 'None',
|
|
'accounts_receivable_payable' => '£5k / £2k',
|
|
'funding_target' => 250000.00,
|
|
'recommended_return_rate' => 12.0,
|
|
'founder_return_rate' => 10.5
|
|
],
|
|
[
|
|
'full_name' => 'Marco Rossi',
|
|
'email' => 'm.rossi@finflow.it',
|
|
'role' => 'founder',
|
|
'university' => 'Bocconi University',
|
|
'graduation_year' => 2012,
|
|
'bio' => 'Finance veteran with 10 years in investment banking.',
|
|
'interests' => 'Fintech, Banking, Blockchain',
|
|
'country' => 'Italy',
|
|
'cv_url' => 'assets/docs/cvs/placeholder.pdf',
|
|
'skills' => 'Financial Modeling, Compliance',
|
|
'years_experience' => 12,
|
|
'previous_startup_exp' => 1,
|
|
'startup_name' => 'FinFlow',
|
|
'legal_name' => 'FinFlow Payments S.p.A.',
|
|
'startup_desc' => 'Unified payment orchestration for SMEs operating across European borders.',
|
|
'industry' => 'Fintech',
|
|
'sub_industry' => 'Cross-border Payments',
|
|
'business_model' => 'Transaction fee (0.5%) on cross-border settlements.',
|
|
'product_service' => 'API-first payment gateway for multi-currency invoicing.',
|
|
'operational_stage' => 'Scaling',
|
|
'cofounder_equity_pct' => '5-8%',
|
|
'cofounder_equity_type' => 'Founder Shares',
|
|
'cofounder_responsibilities' => 'Chief Technology Officer - manage engineering team and security.',
|
|
'desired_cofounder_experience' => 'Scalable backend systems, FinTech compliance.',
|
|
'cofounder_commitment' => 'Full-time',
|
|
'other_partnership_details' => 'Must be based in or willing to relocate to Milan.',
|
|
'current_cash_balance' => 1200000.00,
|
|
'burn_rate' => 95000.00,
|
|
'outstanding_debt' => '£200k Venture Debt',
|
|
'accounts_receivable_payable' => '£400k / £150k',
|
|
'funding_target' => 1200000.00,
|
|
'recommended_return_rate' => 5.5,
|
|
'founder_return_rate' => 6.0
|
|
]
|
|
];
|
|
|
|
$investors = [
|
|
[
|
|
'full_name' => 'Sofia Moretti',
|
|
'email' => 'sofia@moretti-capital.com',
|
|
'role' => 'investor',
|
|
'bio' => 'Managing Partner at Moretti Capital.',
|
|
'interests' => 'Renewables, Sustainability',
|
|
'investment_appetite' => '$100k - $500k',
|
|
'country' => 'Italy'
|
|
],
|
|
[
|
|
'full_name' => 'Robert Sterling',
|
|
'email' => 'robert@sterling-ventures.com',
|
|
'role' => 'investor',
|
|
'bio' => 'Angel investor with a background in SaaS.',
|
|
'interests' => 'SaaS, B2B',
|
|
'investment_appetite' => '$50k - $250k',
|
|
'country' => 'United States of America'
|
|
]
|
|
];
|
|
|
|
$stmt_user = $db->prepare("INSERT INTO users (full_name, email, password, role, university, graduation_year, bio, interests, country, cv_url, skills, years_experience, previous_startup_exp, investment_appetite, verified, onboarding_completed)
|
|
VALUES (:full_name, :email, :password, :role, :university, :graduation_year, :bio, :interests, :country, :cv_url, :skills, :years_experience, :previous_startup_exp, :investment_appetite, 1, 1)");
|
|
|
|
$stmt_startup = $db->prepare("INSERT INTO startups (
|
|
name, description, founder_id, funding_target, status,
|
|
legal_name, country, industry, sub_industry, business_model, product_service, operational_stage,
|
|
cofounder_equity_pct, cofounder_equity_type, cofounder_responsibilities, desired_cofounder_experience, cofounder_commitment, other_partnership_details,
|
|
current_cash_balance, burn_rate, outstanding_debt, accounts_receivable_payable,
|
|
doc_income_statements, doc_balance_sheets, doc_cash_flow_statements, doc_revenue_breakdown, doc_gross_margin, doc_opex_breakdown,
|
|
recommended_return_rate, founder_return_rate
|
|
) VALUES (
|
|
:name, :description, :founder_id, :funding_target, 'public',
|
|
:legal_name, :country, :industry, :sub_industry, :business_model, :product_service, :operational_stage,
|
|
:cofounder_equity_pct, :cofounder_equity_type, :cofounder_responsibilities, :desired_cofounder_experience, :cofounder_commitment, :other_partnership_details,
|
|
:current_cash_balance, :burn_rate, :outstanding_debt, :accounts_receivable_payable,
|
|
'assets/docs/financials/placeholder.pdf', 'assets/docs/financials/placeholder.pdf', 'assets/docs/financials/placeholder.pdf', 'assets/docs/financials/placeholder.pdf', 'assets/docs/financials/placeholder.pdf', 'assets/docs/financials/placeholder.pdf',
|
|
:recommended_return_rate, :founder_return_rate)");
|
|
|
|
$stmt_round = $db->prepare("INSERT INTO funding_rounds (startup_id, funding_goal, status) VALUES (:startup_id, :funding_goal, 'Active')");
|
|
|
|
// Create CV directory if not exists
|
|
if (!is_dir('assets/docs/cvs/')) {
|
|
mkdir('assets/docs/cvs/', 0777, true);
|
|
}
|
|
// Create placeholder CV if not exists
|
|
if (!file_exists('assets/docs/cvs/placeholder.pdf')) {
|
|
file_put_contents('assets/docs/cvs/placeholder.pdf', '%PDF-1.4 Placeholder CV');
|
|
}
|
|
|
|
echo "Seeding founders...\n";
|
|
foreach ($founders as $f) {
|
|
$stmt_user->execute([
|
|
':full_name' => $f['full_name'],
|
|
':email' => $f['email'],
|
|
':password' => hash_pass('password123'),
|
|
':role' => $f['role'],
|
|
':university' => $f['university'],
|
|
':graduation_year' => $f['graduation_year'],
|
|
':bio' => $f['bio'],
|
|
':interests' => $f['interests'],
|
|
':country' => $f['country'],
|
|
':cv_url' => $f['cv_url'] ?? NULL,
|
|
':skills' => $f['skills'],
|
|
':years_experience' => $f['years_experience'],
|
|
':previous_startup_exp' => $f['previous_startup_exp'],
|
|
':investment_appetite' => NULL
|
|
]);
|
|
|
|
$founder_id = $db->lastInsertId();
|
|
if ($founder_id) {
|
|
$stmt_startup->execute([
|
|
':name' => $f['startup_name'],
|
|
':description' => $f['startup_desc'],
|
|
':founder_id' => $founder_id,
|
|
':funding_target' => $f['funding_target'],
|
|
':legal_name' => $f['legal_name'],
|
|
':country' => $f['country'],
|
|
':industry' => $f['industry'],
|
|
':sub_industry' => $f['sub_industry'],
|
|
':business_model' => $f['business_model'],
|
|
':product_service' => $f['product_service'],
|
|
':operational_stage' => $f['operational_stage'],
|
|
':cofounder_equity_pct' => $f['cofounder_equity_pct'],
|
|
':cofounder_equity_type' => $f['cofounder_equity_type'],
|
|
':cofounder_responsibilities' => $f['cofounder_responsibilities'],
|
|
':desired_cofounder_experience' => $f['desired_cofounder_experience'],
|
|
':cofounder_commitment' => $f['cofounder_commitment'],
|
|
':other_partnership_details' => $f['other_partnership_details'],
|
|
':current_cash_balance' => $f['current_cash_balance'],
|
|
':burn_rate' => $f['burn_rate'],
|
|
':outstanding_debt' => $f['outstanding_debt'],
|
|
':accounts_receivable_payable' => $f['accounts_receivable_payable'],
|
|
':recommended_return_rate' => $f['recommended_return_rate'],
|
|
':founder_return_rate' => $f['founder_return_rate']
|
|
]);
|
|
|
|
$startup_id = $db->lastInsertId();
|
|
$stmt_round->execute([
|
|
':startup_id' => $startup_id,
|
|
':funding_goal' => $f['funding_target']
|
|
]);
|
|
echo "Created founder {" . $f['full_name'] . "} and startup {" . $f['startup_name'] . "}\n";
|
|
}
|
|
}
|
|
|
|
echo "Seeding investors...\n";
|
|
foreach ($investors as $i) {
|
|
$stmt_user->execute([
|
|
':full_name' => $i['full_name'],
|
|
':email' => $i['email'],
|
|
':password' => hash_pass('password123'),
|
|
':role' => $i['role'],
|
|
':university' => NULL,
|
|
':graduation_year' => NULL,
|
|
':bio' => $i['bio'],
|
|
':interests' => $i['interests'],
|
|
':country' => $i['country'],
|
|
':cv_url' => NULL,
|
|
':skills' => NULL,
|
|
':years_experience' => 0,
|
|
':previous_startup_exp' => 0,
|
|
':investment_appetite' => $i['investment_appetite']
|
|
]);
|
|
if ($db->lastInsertId()) {
|
|
echo "Created investor {" . $i['full_name'] . "}\n";
|
|
}
|
|
}
|
|
|
|
echo "Done!\n";
|