{{-- Customer Show Page - Uses Admin Panel CSS Variables Only --}} @section('title', $customer->display_name . ' - Customer') @php $customerNotes = $customerNotes ?? collect(); $attachments = $attachments ?? collect(); @endphp
Customers {{ $customer->display_name }}
@csrf @method('DELETE')
Edit
{{ strtoupper(substr($customer->display_name, 0, 1)) }}
{{ $customer->isCompany() ? 'Company' : 'Individual' }}

{{ $customer->display_name }}

@if($customer->isCompany() && $customer->name)

{{ $customer->name }}@if($customer->designation) · {{ $customer->designation }}@endif

@endif
@if($customer->email){{ $customer->email }}@endif @if($customer->phone){{ $customer->phone }}@endif {{ $customer->isActive() ? 'Active' : 'Inactive' }}
@if($customer->isCompany())@endif
{{-- Profile Tab --}}
{{ $customer->isCompany() ? 'Company Info' : 'Customer Info' }}
@if($customer->isCompany())
Company{{ $customer->company ?: '-' }}
GST/VAT{{ $customer->vat ?: 'Not provided' }}
Website@if($customer->website){{ $customer->website }}@elseNot provided@endif
@endif
Contact Name{{ $customer->name ?: '-' }}
Group{{ $customer->group_name ?: 'No group' }}
Contact Details
Email@if($customer->email){{ $customer->email }}@elseNot provided@endif
Phone{{ $customer->phone ?: 'Not provided' }}
Designation{{ $customer->designation ?: 'Not provided' }}
Billing Address
@if($customer->billing_street || $customer->billing_city) @if($customer->billing_street)
Street{{ $customer->billing_street }}
@endif @if($customer->billing_city || $customer->billing_state)
City / State{{ implode(', ', array_filter([$customer->billing_city, $customer->billing_state])) }}
@endif @if($customer->billing_zip_code)
ZIP{{ $customer->billing_zip_code }}
@endif @if($customer->billing_country)
Country{{ $customer->billing_country }}
@endif @else

No billing address

@endif
Shipping Address
@if($customer->shipping_address || $customer->shipping_city) @if($customer->shipping_address)
Street{{ $customer->shipping_address }}
@endif @if($customer->shipping_city || $customer->shipping_state)
City / State{{ implode(', ', array_filter([$customer->shipping_city, $customer->shipping_state])) }}
@endif @if($customer->shipping_zip_code)
ZIP{{ $customer->shipping_zip_code }}
@endif @if($customer->shipping_country)
Country{{ $customer->shipping_country }}
@endif @else

No shipping address

@endif
Portal Access
@if($portalUser && $portalUser->is_active)

Portal Enabled

{{ $portalUser->email }}

@csrf
@csrf
@elseif($portalUser)

Portal Disabled

Account inactive

@csrf
@else

No Portal Access

Enable for customer login

@csrf
@endif
Email Notifications
{{ $customer->invoice_emails ? '✓' : '✗' }} Invoices {{ $customer->estimate_emails ? '✓' : '✗' }} Estimates {{ $customer->credit_note_emails ? '✓' : '✗' }} Credit Notes {{ $customer->contract_emails ? '✓' : '✗' }} Contracts {{ $customer->task_emails ? '✓' : '✗' }} Tasks {{ $customer->project_emails ? '✓' : '✗' }} Projects {{ $customer->ticket_emails ? '✓' : '✗' }} Tickets
{{-- Contacts Tab --}} @if($customer->isCompany())

Contacts at {{ $customer->company }}

@if($contacts && $contacts->count())
@foreach($contacts as $contact) @php $cPortal = $contact->user_id ? \App\Models\User::find($contact->user_id) : null; @endphp
{{ strtoupper(substr($contact->name, 0, 1)) }}
{{ $contact->name }}
{{ $contact->designation ?: 'No designation' }}
{{ $contact->isActive() ? 'Active' : 'Inactive' }} @if($cPortal && $cPortal->is_active)Portal@endif
@if($contact->email)@endif @if($contact->phone)
{{ $contact->phone }}
@endif
@if(!$cPortal || !$cPortal->is_active)
@csrf
@else
@csrf
@csrf
@endif @if($contacts->count() > 1)@endif
@endforeach
@else

No contacts yet

Add contacts to this company

@endif
@endif {{-- Invoices Tab --}}
@php $totalInvoiced = $invoices->sum('total'); $totalPaid = $invoices->sum('amount_paid'); $totalDue = $invoices->sum('amount_due'); @endphp
{{ $invoices->count() }}
Total Invoices
₹{{ number_format($totalInvoiced, 2) }}
Total Amount
₹{{ number_format($totalPaid, 2) }}
Paid
₹{{ number_format($totalDue, 2) }}
Due
Invoices + New Invoice
@if($invoices->count()) @foreach($invoices as $inv) @endforeach
Invoice # Subject Date Due Date Total Due Status Payment
{{ $inv->invoice_number }} {{ Str::limit($inv->subject, 30) ?: '-' }} {{ $inv->date ? date('d M Y', strtotime($inv->date)) : '-' }} {{ $inv->due_date ? date('d M Y', strtotime($inv->due_date)) : '-' }} ₹{{ number_format($inv->total, 2) }} ₹{{ number_format($inv->amount_due, 2) }} {{ ucfirst($inv->status) }} {{ ucfirst($inv->payment_status) }}
@else

No invoices yet

Create an invoice for this customer

Create Invoice
@endif
{{-- Estimations Tab --}}
@php $totalEstimated = $estimations->sum('total'); $acceptedCount = $estimations->where('status', 'accepted')->count(); @endphp
{{ $estimations->count() }}
Total Estimations
₹{{ number_format($totalEstimated, 2) }}
Total Value
{{ $acceptedCount }}
Accepted
{{ $estimations->where('status', 'sent')->count() }}
Pending
Estimations + New Estimation
@if($estimations->count()) @foreach($estimations as $est) @endforeach
Estimation # Subject Date Valid Until Total Status
{{ $est->estimation_number }} {{ Str::limit($est->subject, 30) ?: '-' }} {{ $est->date ? date('d M Y', strtotime($est->date)) : '-' }} {{ $est->valid_until ? date('d M Y', strtotime($est->valid_until)) : '-' }} ₹{{ number_format($est->total, 2) }} {{ ucfirst($est->status) }}
@else

No estimations yet

Create an estimation for this customer

Create Estimation
@endif
{{-- Proposals Tab --}}
@php $totalProposed = $proposals->sum('total'); $acceptedProposals = $proposals->where('status', 'accepted')->count(); @endphp
{{ $proposals->count() }}
Total Proposals
₹{{ number_format($totalProposed, 2) }}
Total Value
{{ $acceptedProposals }}
Accepted
{{ $proposals->whereIn('status', ['sent', 'open'])->count() }}
Pending
Proposals + New Proposal
@if($proposals->count()) @foreach($proposals as $prop) @endforeach
Proposal # Subject Date Open Till Total Status
{{ $prop->proposal_number }} {{ Str::limit($prop->subject, 30) ?: '-' }} {{ $prop->date ? date('d M Y', strtotime($prop->date)) : '-' }} {{ $prop->open_till ? date('d M Y', strtotime($prop->open_till)) : '-' }} ₹{{ number_format($prop->total, 2) }} {{ ucfirst($prop->status) }}
@else

No proposals yet

Create a proposal for this customer

Create Proposal
@endif
{{-- Notes Tab --}}
Notes {{ $customerNotes->count() }} {{ Str::plural('note', $customerNotes->count()) }}
@forelse($customerNotes as $note)
{{ strtoupper(substr($note->author_name, 0, 1)) }}
{{ $note->author_name }}
{{ $note->created_at->format('d M Y, h:i A') }} @if($note->updated_at->gt($note->created_at)) · edited @endif
{{ $note->content }}
@empty

No notes yet

Add a note below to keep track of important information.

@endforelse
{{-- Attachments Tab --}}
Attachments {{ $attachments->count() }} {{ Str::plural('file', $attachments->count()) }}
@forelse($attachments as $attachment)
{{ strtoupper($attachment->extension) }}
{{ $attachment->original_name }}
{{ $attachment->formatted_size }} · Uploaded by {{ $attachment->author_name }} · {{ $attachment->created_at->format('d M Y, h:i A') }}
@empty

No attachments yet

Upload files to keep related documents with this customer.

@endforelse

Click to upload or drag & drop

Max file size: 20MB
Uploading...
{{-- Modals --}}
Contact Details
J
-
-
Email-
Phone-
Status-
Portal-
Edit Contact
Email Notifications
Add Contact
Email Notifications