46 lines
2.3 KiB
PHP
46 lines
2.3 KiB
PHP
<?php
|
|
namespace App\Services;
|
|
|
|
use App\Models\ExistingBusiness;
|
|
|
|
/** Access correspondence, never evidence of legality, title, finance or publication. */
|
|
final class ExistingBusinessProfileCategory
|
|
{
|
|
// Exact catalogue correspondences plus the explicit mappings already present
|
|
// in BusinessWizard and the transaction variants in OpportunityCategoryFields.
|
|
public const MAP = [
|
|
'company_sale'=>'business_sale', 'participation_sale'=>'business_sale',
|
|
'buyer_search'=>'business_sale', 'succession'=>'business_sale',
|
|
'franchise'=>'franchise', 'real_estate'=>'real_estate', 'land_right'=>'land_rights',
|
|
'investment_project'=>'investment_project', 'expansion'=>'investment_project',
|
|
'internationalization'=>'investment_project', 'agricultural_investment'=>'investment_project',
|
|
'business_partnership'=>'business_partnership', 'strategic_partner'=>'business_partnership',
|
|
'joint_venture'=>'business_partnership', 'capital_increase'=>'financing',
|
|
'financial_investor'=>'financing', 'financing_request'=>'financing',
|
|
'concession_opportunity'=>'concession', 'supply_opportunity'=>'supply',
|
|
];
|
|
|
|
// Native form types are separate from the persisted modality. No default to a project.
|
|
public const FORM_TYPES = [
|
|
'investment_project'=>'investment_project', 'company_sale'=>'company_sale',
|
|
'asset_sale'=>'asset_sale', 'business_partnership'=>'business_partnership',
|
|
'financing_request'=>'financing_request', 'concession_opportunity'=>'concession_opportunity',
|
|
'supply_opportunity'=>'supply_opportunity', 'participation_sale'=>'company_sale',
|
|
'asset_lease'=>'asset_sale', 'capital_increase'=>'financing_request',
|
|
'financial_investor'=>'financing_request', 'strategic_partner'=>'business_partnership',
|
|
'joint_venture'=>'business_partnership', 'expansion'=>'investment_project',
|
|
'agricultural_investment'=>'investment_project', 'internationalization'=>'investment_project',
|
|
'buyer_search'=>'company_sale', 'succession'=>'company_sale',
|
|
];
|
|
|
|
public static function category(ExistingBusiness $business): ?string
|
|
{
|
|
return self::MAP[$business->modality] ?? null;
|
|
}
|
|
|
|
public static function formType(string $modality): ?string
|
|
{
|
|
return self::FORM_TYPES[$modality] ?? null;
|
|
}
|
|
}
|