Merge pull request #54 from Ritikeshyadav/RitikeshFreeu

Ritikesh freeu
This commit is contained in:
Ritikeshyadav
2024-04-11 16:36:35 +05:30
committed by GitHub
14 changed files with 166 additions and 8 deletions

View File

@@ -410,7 +410,7 @@ class ManageFreeUInvestmentController extends Controller
3 => ['id' => Category::GlobalPrivateEquityFundId, 'file' => 'InternationalPrivateEquityFundTemplate'],
4 => ['id' => Category::GlobalVentureDebtId, 'file' => 'RealEstateInvestmentTrustsTemplate'],
5 => ['id' => Category::GlobalHedgeFundId, 'file' => 'InternationalHedgeFundTemplate'],
6 => ['id' => Category::GlobalPrivateCreditFundId, 'file' => 'PrivateCreditTemplate'],
6 => ['id' => Category::GlobalPrivateCreditFundId, 'file' => 'InternationalPrivateCreditFundTemplate'],
];
if (!array_key_exists($id, $exchangeData)) {

View File

@@ -471,6 +471,17 @@ class AlternativeInvestmentFundController extends Controller
}
}
public function longOnlyEquityFundAllData($type = 'Open')
{
try {
return (new test(Product::has('alternativeInvestmentFund')->with('alternativeInvestmentFund.companies')->longOnlyEquityFund()->active()->get()))
->response()
->setStatusCode(200);
} catch (\Exception $e) {
return response()->json(['message' => $e->getMessage()], 400);
}
}
public function longOnlyEquityFundData($slug)
{
try {
@@ -482,6 +493,28 @@ class AlternativeInvestmentFundController extends Controller
}
}
public function privateCreditFundAllData($type = 'Open')
{
try {
return (new test(Product::has('alternativeInvestmentFund')->with('alternativeInvestmentFund.companies')->privateCreditFund()->active()->get()))
->response()
->setStatusCode(200);
} catch (\Exception $e) {
return response()->json(['message' => $e->getMessage()], 400);
}
}
public function privateCreditFundData($slug)
{
try {
return (new LongOnlyEquityResource(AlternativeInvestmentFund::where('slug', $slug)->first()))
->response()
->setStatusCode(200);
} catch (\Exception $e) {
return response()->json(['message' => $e->getMessage()], 400);
}
}
public function pipeAllData($type = 'Open')
{
try {

View File

@@ -5,16 +5,38 @@ namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Controllers\Admin\ManageFreeUInvestments\FractionalRealEstateController as FractionalRealEstateFrontendController;
use App\Models\Product;
use App\Models\Fund;
use App\Http\Resources\FractionalRealEstate as test;
class GlobalPrivateCreditController extends Controller
{
public function getGlobalPrivateCreditFundPage()
{
$learnMore = (new FractionalRealEstateFrontendController)->globalPCFQuestionAndAnswer()->getData();
return view('Frontend.Pages.dummy.global-private-credit',[
'learnMore'=>$learnMore,
'openGPCF'=> Product::has('alternativeInvestmentFund')->with('alternativeInvestmentFund.companies','categorys')->globalPrivateCreditFund()->open()->active()->latest()->get(),
'resaleGPCF'=> Product::has('alternativeInvestmentFund')->with('alternativeInvestmentFund.companies','categorys')->globalPrivateCreditFund()->resale()->active()->latest()->get(),
return view('Frontend.Pages.dummy.global-private-credit', [
'learnMore' => $learnMore,
'openGPCF' => Product::has('alternativeInvestmentFund')->with('alternativeInvestmentFund.companies', 'categorys')->globalPrivateCreditFund()->open()->active()->latest()->get(),
'resaleGPCF' => Product::has('alternativeInvestmentFund')->with('alternativeInvestmentFund.companies', 'categorys')->globalPrivateCreditFund()->resale()->active()->latest()->get(),
]);
}
public function getGlobalPrivateCreditFundProduct($slug)
{
$ventureCapitalFund = Fund::where('slug', $slug)->first();
$productData = Fund::where('slug', '=', $slug)->first();
$productData = Product::where('id', '=', $productData->products_id)->first();
// dd($ventureCapitalFund);
return view('Frontend.Pages.venture-capital-funds.product', compact('ventureCapitalFund', 'productData'));
}
public function privateCreditAllData($type)
{
try {
return (new test(Product::has('funds')->with('funds')->where('type',$type)->funds()->globalPrivateCreditFunds()->get()))
->response()
->setStatusCode(200);
} catch (\Exception $e) {
return response()->json(['message' => $e->getMessage()], 400);
}
}
}

View File

@@ -74,6 +74,8 @@ class FundImport implements ToCollection, WithHeadingRow
$init = 18;
} else if($this->category_id == Category::GlobalVentureDebtId){
$init = 18;
} else if($this->category_id == Category::GlobalPrivateCreditFundId){
$init = 18;
}
$returns = array();
@@ -106,7 +108,7 @@ class FundImport implements ToCollection, WithHeadingRow
'ytd' => $row['ytd'],
'year1_return' => $row['1_year_return'],
'year3_return' => $row['3_year_return'],
'data_as_on' => $row['data_as_on']
'data_as_on' => $row['data_as_on'] ?? null,
]);
if ($returns) {
foreach ($returns as $key => $value) {

View File

@@ -92,7 +92,7 @@ class Category extends Model
const PrivateCreditFundId = 41;
const GlobalPrivateCreditFundId= 43;
const GlobalPrivateCreditFundId= 42;
public function scopeActive($query)
{

View File

@@ -265,6 +265,11 @@ class Product extends Model
return $query->where(['categories_id' => Category::GlobalVentureCapitalFundId, 'tables_id' => 3, 'status' => true]);
}
public function scopeGlobalPrivateCreditFunds($query)
{
return $query->where(['categories_id' => Category::GlobalPrivateCreditFundId, 'tables_id' => 3, 'status' => true]);
}
public function scopeGlobalPrivateEquityFund($query)
{
return $query->where(['categories_id' => Category::GlobalPrivateEquityFundId, 'tables_id' => 3, 'status' => true]);

View File

@@ -108,7 +108,7 @@ function routeForHandpickedInvestment($categoryId)
Category::PrivateEquityFundId => 'alternative-investment-fund.private-equity-fund-product',
Category::GlobalPrivateEquityFundId => 'alternative-investment-fund.private-equity-fund-product',
Category::PrivateCreditFundId => 'alternative-investment-fund.private-credit-fund-product',
Category::GlobalPrivateCreditFundId => 'alternative-investment-fund.private-credit-fund-product',
Category::GlobalPrivateCreditFundId => 'global-private-credit-fund-product',
Category::PrivateRealEstateFundId => 'alternative-investment-fund.private-real-estate-fund-product',
Category::HedgeFundId => 'alternative-investment-fund.hedge-fund-product',
// Category::LongOnlyFundId => 'alternative-investment-fund.hedge-fund-product',

View File

@@ -4486,6 +4486,61 @@ span.start {
height: 400px;
overflow-y: scroll;
}
/* <style> */
/* CSS for the zoom effect */
.img-zoom {
cursor: pointer;
/* Change cursor to indicate the image is clickable */
transition: transform 0.2s;
/* Add smooth transition effect */
}
.img-zoom:hover {
transform: scale(1.1);
/* Scale up the image on hover */
}
.img-thumbs {
background: #eee;
border: 1px solid #ccc;
border-radius: 0.25rem;
margin: 1.5rem 0;
padding: 0.75rem;
}
.img-thumbs-hidden {
display: none;
}
.edit_wrapper-thumb,
.wrapper-thumb {
position: relative;
display: inline-block;
/*margin: 1rem 0;*/
justify-content: space-around;
}
.img-preview-thumb {
background: #fff;
border: 1px solid none;
border-radius: 0.25rem;
box-shadow: 0.125rem 0.125rem 0.0625rem rgba(0, 0, 0, 0.12);
margin-right: 1rem;
max-width: 140px;
padding: 0.25rem;
}
/* Additional CSS to style the images within the carousel */
.carousel-inner img {
max-height: 350px;
/* Set maximum height for the images */
max-width: 75%;
margin: 0 auto;
/* Center the images horizontally */
}
/* </style> */
/*======responsive=====*/
@media (max-width: 2560px) {

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

View File

@@ -40,6 +40,36 @@
<!--</div>-->
<div class="table-invest">
<div class="container">
@if ($productData && $productData->product_images != null)
<div id="carouselExampleIndicators" class="carousel slide" data-bs-ride="carousel">
<div class="carousel-indicators">
@foreach ($productData->product_images as $key => $image)
<button type="button" data-bs-target="#carouselExampleIndicators"
data-bs-slide-to="{{ $key }}" class="{{ $key === 0 ? 'active' : '' }}"
aria-label="Slide {{ $key + 1 }}"></button>
@endforeach
</div>
<div class="carousel-inner">
@foreach ($productData->product_images as $key => $image)
<div class="carousel-item {{ $key === 0 ? 'active' : '' }}">
<img src="{{ asset('public/' . $image['images']) }}" class="d-block w-100 img-zoom"
alt="Image {{ $key }}">
</div>
@endforeach
</div>
<button class="carousel-control-prev" type="button" data-bs-target="#carouselExampleIndicators"
data-bs-slide="prev">
<span class="carousel-control-prev-icon" aria-hidden="true"></span>
<span class="visually-hidden">Previous</span>
</button>
<button class="carousel-control-next" type="button" data-bs-target="#carouselExampleIndicators"
data-bs-slide="next">
<span class="carousel-control-next-icon" aria-hidden="true"></span>
<span class="visually-hidden">Next</span>
</button>
</div>
@endif
<br />
<div class="categeory">
<div class="details aos-init aos-animate" data-aos="zoom-in">
<div class="tables row">

View File

@@ -61,6 +61,7 @@ use App\Http\Resources\FractionalRealEstate as test;
use App\Models\SecuritizedDebtInstrument;
use App\Http\Controllers\Admin\ManageChatController;
use App\Http\Controllers\GlobalPrivateCreditController;
/*
|--------------------------------------------------------------------------
@@ -261,6 +262,7 @@ Route::get('bonds-single-data/{slug}', [GlobalBondController::class, 'bondData']
Route::get('mutual-fund-all-data', [GlobalMutualFundController::class, 'mutualFundAllData']);
Route::get('venture-capital-fund-all-data/{type}', [GlobalVentureCapitalFund::class, 'ventureCapitalAllData']);
Route::get('private-credit-fund-all-data/{type}', [GlobalPrivateCreditController::class, 'privateCreditAllData']);
Route::get('private-equity-fund-all-data/{type}', [GlobalPrivateEquityFundController::class, 'privateEquityFundAllData']);
Route::get('hedge-fund-all-data/{type}', [GlobalHedgeFundController::class, 'hedgeFundAllData']);
Route::get('funds-single-data/{slug}', [GlobalMutualFundController::class, 'fundData']);
@@ -300,6 +302,14 @@ Route::get('private-equity-fund-single-data/{slug}', [AlternativeInvestmentFundC
Route::get('debt-fund-data/{type}', [AlternativeInvestmentFundController::class, 'debtFundAllData']);
Route::get('debt-fund-single-data/{slug}', [AlternativeInvestmentFundController::class, 'debtFundData']);
//Private Credit Fund
Route::get('private-credit-fund-data/{type}', [AlternativeInvestmentFundController::class, 'privateCreditFundAllData']);
Route::get('private-credit-fund-single-data/{slug}', [AlternativeInvestmentFundController::class, 'privateCreditFundData']);
//Long Only Equity Fund
Route::get('long-only-equity-fund-data/{type}', [AlternativeInvestmentFundController::class, 'longOnlyEquityFundAllData']);
Route::get('long-only-equity-fund-single-data/{slug}', [AlternativeInvestmentFundController::class, 'longOnlyEquityFundData']);
//Fund For Distressed Asset
Route::get('fund-for-distressed-asset-data/{type}', [AlternativeInvestmentFundController::class, 'fundForDistressedAssetAllData']);
Route::get('fund-for-distressed-asset-single-data/{slug}', [AlternativeInvestmentFundController::class, 'fundForDistressedAssetData']);

View File

@@ -1176,6 +1176,7 @@ Route::view('global-angel-investing', 'Frontend.Pages.dummy.global-angel-investi
Route::view('global-growth-capital', 'Frontend.Pages.dummy.global-growth-capital')->name('global-growth-capital');
Route::view('global-mezzanine-financing', 'Frontend.Pages.dummy.global-mezzanine-financing')->name('global-mezzanine-financing');
Route::get('global-private-credit', [GlobalPrivateCreditController::class, 'getGlobalPrivateCreditFundPage'])->name('global-private-credit');
Route::get('global-private-credit-fund-product/{slug}', [GlobalPrivateCreditController::class, 'getGlobalPrivateCreditFundProduct'])->name('global-private-credit-fund-product');
Route::view('global-private-equity', 'Frontend.Pages.dummy.global-private-equity')->name('global-private-equity');
// indian links
Route::view('indian-angel-investing', 'Frontend.Pages.dummy.indian-angel-investing')->name('indian-angel-investing');