mirror of
				https://github.com/crater-invoice/crater.git
				synced 2025-10-31 05:31:10 -04:00 
			
		
		
		
	Fix Invoice/Estimate template issues and Add Payment Receipt, Custom Payment Modes and Item units
This commit is contained in:
		
				
					committed by
					
						 Mohit Panjwani
						Mohit Panjwani
					
				
			
			
				
	
			
			
			
						parent
						
							56a955befd
						
					
				
				
					commit
					4c33a5d88c
				
			| @ -2,7 +2,6 @@ | ||||
| <html> | ||||
| <head> | ||||
|     <title>Estimate</title> | ||||
|     {{-- <link href="https://fonts.googleapis.com/css?family=Poppins&display=swap" rel="stylesheet"> --}} | ||||
|     <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> | ||||
|  | ||||
|     <style type="text/css"> | ||||
| @ -19,13 +18,18 @@ | ||||
|             border-collapse: collapse; | ||||
|         } | ||||
|  | ||||
|         hr { | ||||
|         .header-line { | ||||
|             color:rgba(0, 0, 0, 0.2); | ||||
|             position: absolute; | ||||
|             top: 90px; | ||||
|             left: 0px; | ||||
|             width: 100%; | ||||
|         } | ||||
|  | ||||
|         hr { | ||||
|             margin: 0 30px 0 30px; | ||||
|             color:rgba(0, 0, 0, 0.2); | ||||
|             border: 0.5px solid #EAF1FB; | ||||
|         } | ||||
|  | ||||
|         .header-center { | ||||
| @ -250,8 +254,7 @@ | ||||
|  | ||||
|         .table2 { | ||||
|             margin-top: 35px; | ||||
|             border-bottom: 1px solid #EAF1FB; | ||||
|             padding: 0px 30px 0 30px; | ||||
|             padding: 0px 30px 10px 30px; | ||||
|             page-break-before: avoid; | ||||
|             page-break-after: auto; | ||||
|         } | ||||
| @ -265,6 +268,7 @@ | ||||
|             text-align: center; | ||||
|             color: rgba(0, 0, 0, 0.85); | ||||
|             padding: 5px; | ||||
|             padding-bottom: 10px; | ||||
|         } | ||||
|  | ||||
|         tr.main-table-header th { | ||||
| @ -275,6 +279,10 @@ | ||||
|             line-height: 18px; | ||||
|         } | ||||
|  | ||||
|         .main-table-header { | ||||
|             margin-bottom: 10px; | ||||
|         } | ||||
|  | ||||
|         tr.item-details td { | ||||
|             font-style: normal; | ||||
|             font-weight: normal; | ||||
| @ -287,6 +295,7 @@ | ||||
|             color: rgba(0, 0, 0, 0.6); | ||||
|             text-align: center; | ||||
|             padding: 5px; | ||||
|             padding-top: 10px; | ||||
|         } | ||||
|  | ||||
|         .padd8 { | ||||
| @ -379,7 +388,7 @@ | ||||
|                 </td> | ||||
|             </tr> | ||||
|         </table> | ||||
|         <hr class="header-line" style="border: 0.620315px solid #E8E8E8;" /> | ||||
|         <hr class="header-line" /> | ||||
|     </div> | ||||
|     <div class="wrapper"> | ||||
|         <div class="address"> | ||||
|  | ||||
| @ -2,9 +2,7 @@ | ||||
| <html> | ||||
| <head> | ||||
|     <title>Estimate</title> | ||||
|     {{-- <link href="https://fonts.googleapis.com/css?family=Poppins&display=swap" rel="stylesheet"> --}} | ||||
|     <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> | ||||
|  | ||||
|     <style type="text/css"> | ||||
|         body { | ||||
|             font-family: "DejaVu Sans"; | ||||
| @ -25,7 +23,6 @@ | ||||
|             display:inline-block; | ||||
|             width:30%; | ||||
|         } | ||||
|  | ||||
|         @page { | ||||
|             margin-top: 60px !important; | ||||
|         } | ||||
| @ -80,7 +77,8 @@ | ||||
|         } | ||||
|  | ||||
|         .address { | ||||
|             display: inline-block; | ||||
|             display: block; | ||||
|             padding-top: 20px; | ||||
|         } | ||||
|         .company { | ||||
|             padding: 0 0 0 30px; | ||||
| @ -110,8 +108,8 @@ | ||||
|         /* -------------------------- */ | ||||
|         /* billing style */ | ||||
|         .bill-address-container { | ||||
|             display: inline; | ||||
|             position: absolute; | ||||
|             display: block; | ||||
|             /* position: absolute; */ | ||||
|             float:right; | ||||
|             padding: 0 40px 0 0; | ||||
|         } | ||||
| @ -159,8 +157,7 @@ | ||||
|         /* -------------------------- */ | ||||
|         /* shipping style */ | ||||
|         .ship-address-container { | ||||
|             display: inline; | ||||
|             position: absolute; | ||||
|             display: block; | ||||
|             float:right; | ||||
|             padding: 0 30px 0 0; | ||||
|         } | ||||
| @ -247,13 +244,18 @@ | ||||
|         } | ||||
|  | ||||
|         .table2 { | ||||
|             margin-top: 200px; | ||||
|             border-bottom: 1px solid #EAF1FB; | ||||
|             padding: 0px 30px 0 30px; | ||||
|             margin-top: 30px; | ||||
|             padding: 0px 30px 10px 30px; | ||||
|             page-break-before: avoid; | ||||
|             page-break-after: auto; | ||||
|         } | ||||
|  | ||||
|         hr { | ||||
|             margin: 0 30px 0 30px; | ||||
|             color:rgba(0, 0, 0, 0.2); | ||||
|             border: 0.5px solid #EAF1FB; | ||||
|         } | ||||
|  | ||||
|         .table2 hr { | ||||
|             height:0.1px; | ||||
|         } | ||||
| @ -285,6 +287,7 @@ | ||||
|             color: rgba(0, 0, 0, 0.6); | ||||
|             text-align: center; | ||||
|             padding: 5px; | ||||
|             padding-top: 10px; | ||||
|         } | ||||
|  | ||||
|         .note-header { | ||||
| @ -317,6 +320,16 @@ | ||||
|             page-break-after: auto; | ||||
|         } | ||||
|  | ||||
|         .text-per-item-table3 { | ||||
|             border: 1px solid #EAF1FB; | ||||
|             border-top: none; | ||||
|             padding-right: 30px; | ||||
|             box-sizing: border-box; | ||||
|             width: 260px; | ||||
|             /* height: 100px; */ | ||||
|             position: absolute; | ||||
|             right: -25; | ||||
|         } | ||||
|  | ||||
|         .inv-item { | ||||
|             border-color: #d9d9d9; | ||||
| @ -402,6 +415,7 @@ | ||||
|                             <h1 class="header-logo"> {{$estimate->user->company->name}} </h1> | ||||
|                         @endif | ||||
|                 @endif | ||||
|                 </td> | ||||
|                 <td width="40%" class="header-right company-details"> | ||||
|                     <h1>Estimate</h1> | ||||
|                     <h4>{{$estimate->estimate_number}}</h4> | ||||
| @ -426,6 +440,7 @@ | ||||
|             @endif | ||||
|                 @include('app.pdf.estimate.partials.billing-address') | ||||
|             </div> | ||||
|             <div style="clear: both;"></div> | ||||
|         </div> | ||||
|         @include('app.pdf.estimate.partials.table') | ||||
|         @include('app.pdf.estimate.partials.notes') | ||||
|  | ||||
| @ -2,7 +2,6 @@ | ||||
| <html> | ||||
| <head> | ||||
|     <title>Estimate</title> | ||||
|     {{-- <link href="https://fonts.googleapis.com/css?family=Poppins&display=swap" rel="stylesheet"> --}} | ||||
|     <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> | ||||
|  | ||||
|     <style type="text/css"> | ||||
| @ -18,7 +17,7 @@ | ||||
|             border-collapse: collapse; | ||||
|         } | ||||
|  | ||||
|         hr { | ||||
|         .header-line { | ||||
|             color:rgba(0, 0, 0, 0.2); | ||||
|             position: absolute; | ||||
|             top: 80px; | ||||
| @ -27,6 +26,15 @@ | ||||
|             width: 100%; | ||||
|         } | ||||
|  | ||||
|         hr { | ||||
|             color:rgba(0, 0, 0, 0.2); | ||||
|             border: 0.5px solid #EAF1FB; | ||||
|         } | ||||
|  | ||||
|         .items-table-hr{ | ||||
|             margin: 0 30px 0 30px; | ||||
|         } | ||||
|  | ||||
|         .header-left { | ||||
|             padding-top: 45px; | ||||
|             padding-bottom: 45px; | ||||
| @ -34,6 +42,7 @@ | ||||
|             display:inline-block; | ||||
|             width:30%; | ||||
|         } | ||||
|  | ||||
|         .header-table { | ||||
|             position: absolute; | ||||
|             width: 100%; | ||||
| @ -87,7 +96,7 @@ | ||||
|  | ||||
|         .address { | ||||
|             display: inline-block; | ||||
|             padding-top: 20px | ||||
|             padding-top: 100px | ||||
|         } | ||||
|  | ||||
|         .bill-add { | ||||
| @ -201,8 +210,7 @@ | ||||
|  | ||||
|  | ||||
|         .job-add { | ||||
|             display: inline; | ||||
|             position: absolute; | ||||
|             display: block; | ||||
|             float: right; | ||||
|             padding: 20px 30px 0 0; | ||||
|         } | ||||
| @ -251,9 +259,7 @@ | ||||
|             line-height: 18px; | ||||
|         } | ||||
|         .table2 { | ||||
|             margin-top: 188px; | ||||
|             border-bottom: 1px solid #EAF1FB; | ||||
|             padding: 0px 30px 0 30px; | ||||
|             padding: 0px 30px 10px 30px; | ||||
|             page-break-before: avoid; | ||||
|             page-break-after: auto; | ||||
|         } | ||||
| @ -417,7 +423,9 @@ | ||||
|             </tr> | ||||
|         </table> | ||||
|     </div> | ||||
|     <hr style="border: 0.620315px solid #E8E8E8;"> | ||||
|  | ||||
|     <hr class="header-line"> | ||||
|  | ||||
|     <div class="wrapper"> | ||||
|         <div class="address"> | ||||
|             <div class="bill-add"> | ||||
| @ -450,6 +458,7 @@ | ||||
|                     </tr> | ||||
|                 </table> | ||||
|             </div> | ||||
|             <div style="clear: both;"></div> | ||||
|         </div> | ||||
|         @include('app.pdf.estimate.partials.table') | ||||
|         @include('app.pdf.estimate.partials.notes') | ||||
|  | ||||
| @ -3,6 +3,6 @@ | ||||
|         <div class="notes-label"> | ||||
|             Notes | ||||
|         </div> | ||||
|         {{$estimate->notes}} | ||||
|         {!! nl2br(htmlspecialchars($estimate->notes)) !!} | ||||
|     </div> | ||||
| @endif | ||||
|  | ||||
| @ -1,17 +1,13 @@ | ||||
| <table width="100%" class="table2" cellspacing="0" border="0"> | ||||
|     <tr class="main-table-header"> | ||||
|         <th class="ItemTableHeader" style="text-align: right; color: #55547A; padding-right: 20px">#</th> | ||||
|         @if($estimate->discount_per_item === 'NO') | ||||
|             <th width="80%" class="ItemTableHeader" style="text-align: left; color: #55547A; padding-left: 0px">Items</th> | ||||
|         @else | ||||
|             <th width="40%" class="ItemTableHeader" style="text-align: left; color: #55547A; padding-left: 0px">Items</th> | ||||
|         @endif | ||||
|         <th width="17%" class="ItemTableHeader" style="text-align: right; color: #55547A; padding-right: 20px">Quantity</th> | ||||
|         <th width="18%" class="ItemTableHeader" style="text-align: right; color: #55547A; padding-right: 40px">Price</th> | ||||
|         <th width="2%" class="ItemTableHeader" style="text-align: right; color: #55547A; padding-right: 20px">#</th> | ||||
|         <th width="40%" class="ItemTableHeader" style="text-align: left; color: #55547A; padding-left: 0px">Items</th> | ||||
|         <th class="ItemTableHeader" style="text-align: right; color: #55547A; padding-right: 20px">Quantity</th> | ||||
|         <th class="ItemTableHeader" style="text-align: right; color: #55547A; padding-right: 20px">Price</th> | ||||
|         @if($estimate->discount_per_item === 'YES') | ||||
|             <th width="10%" class="ItemTableHeader" style="text-align: right; color: #55547A; padding-left: 10px">Discount</th> | ||||
|         <th class="ItemTableHeader" style="text-align: right; color: #55547A; padding-left: 10px">Discount</th> | ||||
|         @endif | ||||
|         <th width="15%" class="ItemTableHeader" style="text-align: right; color: #55547A;">Amount</th> | ||||
|         <th class="ItemTableHeader" style="text-align: right; color: #55547A;">Amount</th> | ||||
|     </tr> | ||||
|     @php | ||||
|         $index = 1 | ||||
| @ -32,7 +28,7 @@ | ||||
|                 <span | ||||
|                     style="text-align: left; color: #595959; font-size: 9px; font-weight:300; line-height: 12px;" | ||||
|                 > | ||||
|                     {{ $item->description }} | ||||
|                     {!! nl2br(htmlspecialchars($item->description)) !!} | ||||
|                 </span> | ||||
|             </td> | ||||
|             <td | ||||
| @ -43,7 +39,7 @@ | ||||
|             </td> | ||||
|             <td | ||||
|                 class="inv-item items" | ||||
|                 style="text-align: right; color: #040405; padding-right: 40px" | ||||
|                 style="text-align: right; color: #040405; padding-right: 20px" | ||||
|             > | ||||
|                 {!! format_money_pdf($item->price, $estimate->user->currency) !!} | ||||
|             </td> | ||||
| @ -67,7 +63,9 @@ | ||||
|     @endforeach | ||||
| </table> | ||||
|  | ||||
| <table width="100%" cellspacing="0px" style="margin-left:420px" border="0" class="table3 @if(count($estimate->items) > 12) page-break @endif"> | ||||
| <hr class="items-table-hr"> | ||||
|  | ||||
| <table width="100%" cellspacing="0px" style="margin-left:420px;margin-top: 10px" border="0" class="table3 @if(count($estimate->items) > 12) page-break @endif"> | ||||
|     <tr> | ||||
|         <td class="no-borde" style="color: #55547A; padding-left:10px;  font-size:12px;">Subtotal</td> | ||||
|         <td class="no-border items" | ||||
|  | ||||
| @ -2,7 +2,6 @@ | ||||
| <html> | ||||
| <head> | ||||
|     <title>Invoice</title> | ||||
|     {{-- <link href="https://fonts.googleapis.com/css?family=Poppins&display=swap" rel="stylesheet"> --}} | ||||
|     <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> | ||||
|  | ||||
|     <style type="text/css"> | ||||
| @ -20,13 +19,18 @@ | ||||
|             border-collapse: collapse; | ||||
|         } | ||||
|  | ||||
|         hr { | ||||
|         .header-line { | ||||
|             color:rgba(0, 0, 0, 0.2); | ||||
|             position: absolute; | ||||
|             top: 90px; | ||||
|             left: 0px; | ||||
|             width: 100%; | ||||
|         } | ||||
|  | ||||
|         hr { | ||||
|             margin: 0 30px 0 30px; | ||||
|             color:rgba(0, 0, 0, 0.2); | ||||
|             border: 0.5px solid #EAF1FB; | ||||
|         } | ||||
|  | ||||
|         .header-center { | ||||
| @ -251,8 +255,7 @@ | ||||
|  | ||||
|         .table2 { | ||||
|             margin-top: 35px; | ||||
|             border-bottom: 1px solid #EAF1FB; | ||||
|             padding: 0px 30px 0 30px; | ||||
|             padding: 0px 30px 10px 30px; | ||||
|             page-break-before: avoid; | ||||
|             page-break-after: auto; | ||||
|         } | ||||
| @ -289,6 +292,7 @@ | ||||
|             color: rgba(0, 0, 0, 0.6); | ||||
|             text-align: center; | ||||
|             padding: 5px; | ||||
|             padding-top: 10px; | ||||
|         } | ||||
|  | ||||
|         .padd8 { | ||||
|  | ||||
| @ -78,7 +78,8 @@ | ||||
|         } | ||||
|  | ||||
|         .address { | ||||
|             display: inline-block; | ||||
|             display: block; | ||||
|             padding-top: 20px; | ||||
|         } | ||||
|         .company { | ||||
|             padding: 0 0 0 30px; | ||||
| @ -108,8 +109,8 @@ | ||||
|         /* -------------------------- */ | ||||
|         /* billing style */ | ||||
|         .bill-address-container { | ||||
|             display: inline; | ||||
|             position: absolute; | ||||
|             display: block; | ||||
|             /* position: absolute; */ | ||||
|             float:right; | ||||
|             padding: 0 40px 0 0; | ||||
|         } | ||||
| @ -157,8 +158,7 @@ | ||||
|         /* -------------------------- */ | ||||
|         /* shipping style */ | ||||
|         .ship-address-container { | ||||
|             display: inline; | ||||
|             position: absolute; | ||||
|             display: block; | ||||
|             float:right; | ||||
|             padding: 0 30px 0 0; | ||||
|         } | ||||
| @ -245,13 +245,18 @@ | ||||
|         } | ||||
|  | ||||
|         .table2 { | ||||
|             margin-top: 200px; | ||||
|             border-bottom: 1px solid #EAF1FB; | ||||
|             padding: 0px 30px 0 30px; | ||||
|             margin-top: 30px; | ||||
|             padding: 0px 30px 10px 30px; | ||||
|             page-break-before: avoid; | ||||
|             page-break-after: auto; | ||||
|         } | ||||
|  | ||||
|         hr { | ||||
|             margin: 0 30px 0 30px; | ||||
|             color:rgba(0, 0, 0, 0.2); | ||||
|             border: 0.5px solid #EAF1FB; | ||||
|         } | ||||
|  | ||||
|         .table2 hr { | ||||
|             height:0.1px; | ||||
|         } | ||||
| @ -283,6 +288,7 @@ | ||||
|             color: rgba(0, 0, 0, 0.6); | ||||
|             text-align: center; | ||||
|             padding: 5px; | ||||
|             padding-top: 10px; | ||||
|         } | ||||
|  | ||||
|         .note-header { | ||||
| @ -435,8 +441,9 @@ | ||||
|             @endif | ||||
|                 @include('app.pdf.invoice.partials.billing-address') | ||||
|             </div> | ||||
|             <div style="clear: both;"></div> | ||||
|         </div> | ||||
|             @include('app.pdf.invoice.partials.table') | ||||
|         @include('app.pdf.invoice.partials.table') | ||||
|         @include('app.pdf.invoice.partials.notes') | ||||
|     </div> | ||||
| </body> | ||||
|  | ||||
| @ -18,7 +18,7 @@ | ||||
|             border-collapse: collapse; | ||||
|         } | ||||
|  | ||||
|         hr { | ||||
|         .header-line { | ||||
|             color:rgba(0, 0, 0, 0.2); | ||||
|             position: absolute; | ||||
|             top: 80px; | ||||
| @ -27,6 +27,16 @@ | ||||
|             width: 100%; | ||||
|         } | ||||
|  | ||||
|         hr { | ||||
|             color:rgba(0, 0, 0, 0.2); | ||||
|             border: 0.5px solid #EAF1FB; | ||||
|         } | ||||
|  | ||||
|         .items-table-hr{ | ||||
|             margin: 0 30px 0 30px; | ||||
|         } | ||||
|  | ||||
|  | ||||
|         .header-left { | ||||
|             padding-top: 45px; | ||||
|             padding-bottom: 45px; | ||||
| @ -86,7 +96,7 @@ | ||||
|  | ||||
|         .address { | ||||
|             display: inline-block; | ||||
|             padding-top: 20px | ||||
|             padding-top: 100px; | ||||
|         } | ||||
|  | ||||
|         .bill-add { | ||||
| @ -200,8 +210,7 @@ | ||||
|  | ||||
|  | ||||
|         .job-add { | ||||
|             display: inline; | ||||
|             position: absolute; | ||||
|             display: block; | ||||
|             float: right; | ||||
|             padding: 20px 30px 0 0; | ||||
|         } | ||||
| @ -250,9 +259,7 @@ | ||||
|             line-height: 18px; | ||||
|         } | ||||
|         .table2 { | ||||
|             margin-top: 188px; | ||||
|             border-bottom: 1px solid #EAF1FB; | ||||
|             padding: 0px 30px 0 30px; | ||||
|             padding: 0px 30px 10px 30px; | ||||
|             page-break-before: avoid; | ||||
|             page-break-after: auto; | ||||
|         } | ||||
| @ -427,7 +434,9 @@ | ||||
|             </tr> | ||||
|         </table> | ||||
|     </div> | ||||
|     <hr style="border: 0.620315px solid #E8E8E8;"> | ||||
|  | ||||
|     <hr class="header-line"> | ||||
|  | ||||
|     <div class="wrapper"> | ||||
|         <div class="address"> | ||||
|             <div class="bill-add"> | ||||
| @ -460,6 +469,7 @@ | ||||
|                     </tr> | ||||
|                 </table> | ||||
|             </div> | ||||
|             <div style="clear: both;"></div> | ||||
|         </div> | ||||
|         @include('app.pdf.invoice.partials.table') | ||||
|         @include('app.pdf.invoice.partials.notes') | ||||
|  | ||||
| @ -3,6 +3,6 @@ | ||||
|         <div class="notes-label"> | ||||
|             Notes | ||||
|         </div> | ||||
|         {!! $invoice->notes !!} | ||||
|         {!! nl2br(htmlspecialchars($invoice->notes)) !!} | ||||
|     </div> | ||||
| @endif | ||||
|  | ||||
| @ -1,17 +1,13 @@ | ||||
| <table width="100%" class="table2" cellspacing="0" border="0"> | ||||
|     <tr class="main-table-header"> | ||||
|         <th class="ItemTableHeader" style="text-align: right; color: #55547A; padding-right: 20px">#</th> | ||||
|         @if($invoice->discount_per_item === 'NO') | ||||
|             <th width="80%" class="ItemTableHeader" style="text-align: left; color: #55547A; padding-left: 0px">Items</th> | ||||
|         @else | ||||
|             <th width="40%" class="ItemTableHeader" style="text-align: left; color: #55547A; padding-left: 0px">Items</th> | ||||
|         @endif | ||||
|         <th width="17%" class="ItemTableHeader" style="text-align: right; color: #55547A; padding-right: 20px">Quantity</th> | ||||
|         <th width="18%" class="ItemTableHeader" style="text-align: right; color: #55547A; padding-right: 40px">Price</th> | ||||
|         <th width="2%" class="ItemTableHeader" style="text-align: right; color: #55547A; padding-right: 20px">#</th> | ||||
|         <th width="40%" class="ItemTableHeader" style="text-align: left; color: #55547A; padding-left: 0px">Items</th> | ||||
|         <th class="ItemTableHeader" style="text-align: right; color: #55547A; padding-right: 20px">Quantity</th> | ||||
|         <th class="ItemTableHeader" style="text-align: right; color: #55547A; padding-right: 20px">Price</th> | ||||
|         @if($invoice->discount_per_item === 'YES') | ||||
|             <th width="10%" class="ItemTableHeader" style="text-align: right; color: #55547A; padding-left: 10px">Discount</th> | ||||
|         <th class="ItemTableHeader" style="text-align: right; color: #55547A; padding-left: 10px">Discount</th> | ||||
|         @endif | ||||
|         <th width="15%" class="ItemTableHeader" style="text-align: right; color: #55547A;">Amount</th> | ||||
|         <th class="ItemTableHeader" style="text-align: right; color: #55547A;">Amount</th> | ||||
|     </tr> | ||||
|     @php | ||||
|         $index = 1 | ||||
| @ -29,7 +25,7 @@ | ||||
|                 style="text-align: left; color: #040405;padding-left: 0px" | ||||
|             > | ||||
|                 <span>{{ $item->name }}</span><br> | ||||
|                 <span style="text-align: left; color: #595959; font-size: 9px; font-weight:300; line-height: 12px;">{{ $item->description }}</span> | ||||
|                 <span style="text-align: left; color: #595959; font-size: 9px; font-weight:300; line-height: 12px;">{!! nl2br(htmlspecialchars($item->description)) !!}</span> | ||||
|             </td> | ||||
|             <td | ||||
|                 class="inv-item items" | ||||
| @ -39,7 +35,7 @@ | ||||
|             </td> | ||||
|             <td | ||||
|                 class="inv-item items" | ||||
|                 style="text-align: right; color: #040405; padding-right: 40px" | ||||
|                 style="text-align: right; color: #040405; padding-right: 20px" | ||||
|             > | ||||
|                 {!! format_money_pdf($item->price, $invoice->user->currency) !!} | ||||
|             </td> | ||||
| @ -66,10 +62,12 @@ | ||||
|     @endforeach | ||||
| </table> | ||||
|  | ||||
| <table width="100%" cellspacing="0px" style="margin-left:420px" border="0" class="table3 @if(count($invoice->items) > 12) page-break @endif"> | ||||
| <hr class="items-table-hr"> | ||||
|  | ||||
| <table width="100%" cellspacing="0px" style="margin-left:420px; margin-top: 10px" border="0" class="table3 @if(count($invoice->items) > 12) page-break @endif"> | ||||
|     <tr> | ||||
|         <td class="no-borde" style="color: #55547A; padding-left:10px;  font-size:12px;">Subtotal</td> | ||||
|         <td class="no-border items" | ||||
|         <td class="no-border" style="color: #55547A; padding-left:10px;  font-size:12px;">Subtotal</td> | ||||
|         <td class="no-border items padd2" | ||||
|             style="padding-right:10px; text-align: right;  font-size:12px; color: #040405; font-weight: 500;">{!! format_money_pdf($invoice->sub_total, $invoice->user->currency) !!}</td> | ||||
|     </tr> | ||||
|  | ||||
|  | ||||
| @ -0,0 +1,33 @@ | ||||
| @if($payment->user->billingaddress) | ||||
|     <p class="bill-to">Received From:</p> | ||||
|     @if($payment->user->billingaddress->name) | ||||
|         <p class="bill-user-name"> | ||||
|             {{$payment->user->billingaddress->name}} | ||||
|         </p> | ||||
|     @endif | ||||
|     <p class="bill-user-address"> | ||||
|         @if($payment->user->billingaddress->address_street_1) | ||||
|             {{$payment->user->billingaddress->address_street_1}}<br> | ||||
|         @endif | ||||
|         @if($payment->user->billingaddress->address_street_2) | ||||
|             {{$payment->user->billingaddress->address_street_2}}<br> | ||||
|         @endif | ||||
|         @if($payment->user->billingaddress->city && $payment->user->billingaddress->city) | ||||
|             {{$payment->user->billingaddress->city}}, | ||||
|         @endif | ||||
|         @if($payment->user->billingaddress->state && $payment->user->billingaddress->state) | ||||
|             {{$payment->user->billingaddress->state}}. | ||||
|         @endif | ||||
|         @if($payment->user->billingaddress->zip) | ||||
|             {{$payment->user->billingaddress->zip}}<br> | ||||
|         @endif | ||||
|         @if($payment->user->billingaddress->country && $payment->user->billingaddress->country->name) | ||||
|             {{$payment->user->billingaddress->country->name}}<br> | ||||
|         @endif | ||||
|         @if($payment->user->billingaddress->phone) | ||||
|             <p class="bill-user-phone"> | ||||
|                 Phone :{{$payment->user->billingaddress->phone}} | ||||
|             </p> | ||||
|         @endif | ||||
|     </p> | ||||
| @endif | ||||
| @ -0,0 +1,30 @@ | ||||
| @if($payment->user->company) | ||||
|     <h1 class="company-name"> {{$payment->user->company->name}} </h1> | ||||
| @endif | ||||
|  | ||||
| @if($company_address) | ||||
|     <p class="company-add"> | ||||
|         @if($company_address->addresses[0]['address_street_1']) | ||||
|             {{$company_address->addresses[0]['address_street_1']}} <br> | ||||
|         @endif | ||||
|  | ||||
|         @if($company_address->addresses[0]['address_street_2']) | ||||
|             {{$company_address->addresses[0]['address_street_2']}} <br> | ||||
|         @endif | ||||
|         @if($company_address->addresses[0]['city']) | ||||
|             {{$company_address->addresses[0]['city']}} | ||||
|         @endif | ||||
|         @if($company_address->addresses[0]['state']) | ||||
|             {{$company_address->addresses[0]['state']}} | ||||
|         @endif | ||||
|         @if($company_address->addresses[0]['zip']) | ||||
|             {{$company_address->addresses[0]['zip']}} <br> | ||||
|         @endif | ||||
|         @if($company_address->addresses[0]['country']) | ||||
|             {{$company_address->addresses[0]['country']->name}} <br> | ||||
|         @endif | ||||
|         @if($company_address->addresses[0]['phone']) | ||||
|            {{$company_address->addresses[0]['phone']}} <br> | ||||
|         @endif | ||||
|     </p> | ||||
| @endif | ||||
| @ -0,0 +1,40 @@ | ||||
| @if($payment->user->shippingaddress) | ||||
|     <p class="ship-to">Ship To,</p> | ||||
|     @if($payment->user->shippingaddress->name) | ||||
|         <p class="ship-user-name"> | ||||
|             {{$payment->user->shippingaddress->name}} | ||||
|         </p> | ||||
|     @endif | ||||
|     <p class="ship-user-address"> | ||||
|         @if($payment->user->shippingaddress->address_street_1) | ||||
|             {{$payment->user->shippingaddress->address_street_1}}<br> | ||||
|         @endif | ||||
|  | ||||
|         @if($payment->user->shippingaddress->address_street_2) | ||||
|             {{$payment->user->shippingaddress->address_street_2}}<br> | ||||
|         @endif | ||||
|  | ||||
|         @if($payment->user->shippingaddress->city && $payment->user->shippingaddress->city) | ||||
|             {{$payment->user->shippingaddress->city}}, | ||||
|         @endif | ||||
|  | ||||
|         @if($payment->user->shippingaddress->state && $payment->user->shippingaddress->state) | ||||
|             {{$payment->user->shippingaddress->state}}. | ||||
|         @endif | ||||
|  | ||||
|         @if($payment->user->shippingaddress->zip) | ||||
|             {{$payment->user->shippingaddress->zip}}<br> | ||||
|         @endif | ||||
|  | ||||
|         @if($payment->user->shippingaddress->country && $payment->user->shippingaddress->country->name) | ||||
|             {{$payment->user->shippingaddress->country->name}}<br> | ||||
|         @endif | ||||
|  | ||||
|         @if($payment->user->phone) | ||||
|             <p class="ship-user-phone"> | ||||
|                 Phone :{{$payment->user->shippingaddress->phone}} | ||||
|             </p> | ||||
|         @endif | ||||
|  | ||||
|     </p> | ||||
| @endif | ||||
							
								
								
									
										524
									
								
								resources/views/app/pdf/payment/payment.blade.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										524
									
								
								resources/views/app/pdf/payment/payment.blade.php
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,524 @@ | ||||
| <!DOCTYPE html> | ||||
| <html> | ||||
| <head> | ||||
|     <title>Invoice</title> | ||||
|     {{-- <link href="https://fonts.googleapis.com/css?family=Poppins&display=swap" rel="stylesheet"> --}} | ||||
|     <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> | ||||
|  | ||||
|     <style type="text/css"> | ||||
|         body { | ||||
|             font-family: "DejaVu Sans"; | ||||
|         } | ||||
|  | ||||
|         html { | ||||
|             margin: 0px; | ||||
|             padding: 0px; | ||||
|         } | ||||
|         table { | ||||
|             border-collapse: collapse; | ||||
|         } | ||||
|  | ||||
|         hr { | ||||
|             color:rgba(0, 0, 0, 0.2); | ||||
|             position: absolute; | ||||
|             top: 80px; | ||||
|             left: 0px; | ||||
|             right: -70px; | ||||
|             width: 100%; | ||||
|         } | ||||
|  | ||||
|         .header-left { | ||||
|             padding-top: 45px; | ||||
|             padding-bottom: 45px; | ||||
|             padding-left: 30px; | ||||
|             display:inline-block; | ||||
|             width:30%; | ||||
|         } | ||||
|         .header-table { | ||||
|             position: absolute; | ||||
|             width: 100%; | ||||
|             height: 150px; | ||||
|             left: 0px; | ||||
|             top: -60px; | ||||
|         } | ||||
|         .header-logo { | ||||
|             position: absolute; | ||||
|             height: 50px; | ||||
|             text-transform: capitalize; | ||||
|             color: #817AE3; | ||||
|         } | ||||
|         .header-right { | ||||
|             display:inline-block; | ||||
|             position: absolute; | ||||
|             right:0; | ||||
|             padding: 15px 30px 15px 0px; | ||||
|             float: right; | ||||
|         } | ||||
|         .inv-flex{ | ||||
|             display:flex; | ||||
|         } | ||||
|         .inv-data{ | ||||
|             text-align:right; | ||||
|             margin-right:120px; | ||||
|         } | ||||
|         .inv-value{ | ||||
|             text-align:left; | ||||
|             margin-left:160px; | ||||
|         } | ||||
|         .header { | ||||
|             font-size: 20px; | ||||
|             color: rgba(0, 0, 0, 0.7); | ||||
|         } | ||||
|  | ||||
|         .TextColor1 { | ||||
|             font-size: 16px; | ||||
|             color: rgba(0, 0, 0, 0.5); | ||||
|         } | ||||
|  | ||||
|         @page { | ||||
|             margin-top: 60px !important; | ||||
|         } | ||||
|         .wrapper { | ||||
|            display: block; | ||||
|            height: 200px; | ||||
|         } | ||||
|  | ||||
|         .address { | ||||
|             display: inline-block; | ||||
|             padding-top: 20px | ||||
|         } | ||||
|  | ||||
|         .bill-add { | ||||
|             display: block; | ||||
|             float:left; | ||||
|             width:40%; | ||||
|             padding: 0 0 0 30px; | ||||
|         } | ||||
|         .company { | ||||
|             padding-left: 30px; | ||||
|             display: inline; | ||||
|             float:left; | ||||
|             width:30%; | ||||
|         } | ||||
|  | ||||
|         .company h1 { | ||||
|             font-style: normal; | ||||
|             font-weight: bold; | ||||
|             font-size: 18px; | ||||
|             line-height: 22px; | ||||
|             letter-spacing: 0.05em; | ||||
|         } | ||||
|  | ||||
|         .company-add { | ||||
|             text-align: left; | ||||
|             font-style: normal; | ||||
|             font-weight: normal; | ||||
|             font-size: 10px; | ||||
|             line-height: 15px; | ||||
|             color: #595959; | ||||
|             margin: 0px; | ||||
|         } | ||||
|  | ||||
|          /* -------------------------- */ | ||||
|         /* shipping style */ | ||||
|         .ship-to { | ||||
|             padding-top: 5px; | ||||
|             font-style: normal; | ||||
|             font-weight: normal; | ||||
|             font-size: 12px; | ||||
|             line-height: 18px; | ||||
|             margin-bottom: 0px; | ||||
|         } | ||||
|  | ||||
|         .ship-user-name { | ||||
|             padding: 0px; | ||||
|             font-style: normal; | ||||
|             font-weight: normal; | ||||
|             font-size: 15px; | ||||
|             line-height: 22px; | ||||
|             margin: 0px; | ||||
|         } | ||||
|  | ||||
|         .ship-user-address { | ||||
|             font-style: normal; | ||||
|             font-weight: normal; | ||||
|             font-size: 10px; | ||||
|             line-height: 15px; | ||||
|             color: #595959; | ||||
|             margin: 0px; | ||||
|             width: 160px; | ||||
|         } | ||||
|  | ||||
|         .ship-user-phone { | ||||
|             font-style: normal; | ||||
|             font-weight: normal; | ||||
|             font-size: 10px; | ||||
|             line-height: 15px; | ||||
|             color: #595959; | ||||
|             margin: 0px; | ||||
|         } | ||||
|  | ||||
|          /* -------------------------- */ | ||||
|         /* billing style */ | ||||
|         .bill-to { | ||||
|             padding-top: 5px; | ||||
|             font-style: normal; | ||||
|             font-weight: normal; | ||||
|             font-size: 12px; | ||||
|             line-height: 18px; | ||||
|             margin-bottom: 0px; | ||||
|             color: #55547A; | ||||
|         } | ||||
|  | ||||
|         .bill-user-name { | ||||
|             padding: 0px; | ||||
|             font-style: normal; | ||||
|             font-weight: normal; | ||||
|             font-size: 15px; | ||||
|             line-height: 22px; | ||||
|             margin: 0px; | ||||
|         } | ||||
|  | ||||
|         .bill-user-address { | ||||
|             font-style: normal; | ||||
|             font-weight: normal; | ||||
|             font-size: 10px; | ||||
|             line-height: 15px; | ||||
|             color: #595959; | ||||
|             margin:0px; | ||||
|             width: 160px; | ||||
|         } | ||||
|  | ||||
|         .bill-user-phone { | ||||
|             font-style: normal; | ||||
|             font-weight: normal; | ||||
|             font-size: 10px; | ||||
|             line-height: 15px; | ||||
|             color: #595959; | ||||
|             margin: 0px; | ||||
|  | ||||
|         } | ||||
|  | ||||
|  | ||||
|         .job-add { | ||||
|             display: inline; | ||||
|             position: absolute; | ||||
|             float: right; | ||||
|             width: 40%; | ||||
|             height: 120px; | ||||
|             padding: 20px 30px 0 0; | ||||
|         } | ||||
|         .amount-due { | ||||
|             background-color: #f2f2f2; | ||||
|         } | ||||
|  | ||||
|         .textRight { | ||||
|             text-align: right; | ||||
|         } | ||||
|  | ||||
|         .textLeft { | ||||
|             text-align: left; | ||||
|         } | ||||
|  | ||||
|         .textStyle1 { | ||||
|             font-style: normal; | ||||
|             font-weight: normal; | ||||
|             font-size: 12px; | ||||
|             line-height: 18px; | ||||
|         } | ||||
|  | ||||
|         .textStyle2 { | ||||
|             font-style: normal; | ||||
|             font-weight: normal; | ||||
|             font-size: 12px; | ||||
|             line-height: 18px; | ||||
|             text-align: right; | ||||
|         } | ||||
|         .main-table-header td { | ||||
|             padding: 10px; | ||||
|         } | ||||
|         .main-table-header { | ||||
|             border-bottom: 1px solid red; | ||||
|         } | ||||
|         tr.main-table-header th { | ||||
|             font-style: normal; | ||||
|             font-weight: 600; | ||||
|             font-size: 12px; | ||||
|             line-height: 18px; | ||||
|         } | ||||
|         tr.item-details td { | ||||
|             font-style: normal; | ||||
|             font-weight: normal; | ||||
|             font-size: 12px; | ||||
|             line-height: 18px; | ||||
|         } | ||||
|         .table2 { | ||||
|             margin-top: 188px; | ||||
|             border-bottom: 1px solid #EAF1FB; | ||||
|             padding: 0px 30px 0 30px; | ||||
|             page-break-before: avoid; | ||||
|             page-break-after: auto; | ||||
|         } | ||||
|  | ||||
|         .table2 hr { | ||||
|             height:0.1px; | ||||
|         } | ||||
|  | ||||
|         .ItemTableHeader { | ||||
|             font-size: 13.5; | ||||
|             text-align: center; | ||||
|             color: rgba(0, 0, 0, 0.85); | ||||
|             padding: 5px; | ||||
|         } | ||||
|  | ||||
|         .items { | ||||
|             font-size: 13; | ||||
|             color: rgba(0, 0, 0, 0.6); | ||||
|             text-align: center; | ||||
|             padding: 5px; | ||||
|         } | ||||
|  | ||||
|         .note-header { | ||||
|             font-size: 13; | ||||
|             color: rgba(0, 0, 0, 0.6); | ||||
|         } | ||||
|  | ||||
|         .note-text { | ||||
|             font-size: 10; | ||||
|             color: rgba(0, 0, 0, 0.6); | ||||
|         } | ||||
|  | ||||
|         .padd8 { | ||||
|             padding-top: 8px; | ||||
|             padding-bottom: 8px; | ||||
|         } | ||||
|  | ||||
|         .padd2 { | ||||
|             padding-top: 2px; | ||||
|             padding-bottom: 2px; | ||||
|         } | ||||
|  | ||||
|         .table3 { | ||||
|             border: 1px solid #EAF1FB; | ||||
|             border-top: none; | ||||
|             box-sizing: border-box; | ||||
|             width: 630px; | ||||
|             page-break-inside: avoid; | ||||
|             page-break-before: auto; | ||||
|             page-break-after: auto; | ||||
|         } | ||||
|  | ||||
|         .text-per-item-table3 { | ||||
|             border: 1px solid #EAF1FB; | ||||
|             border-top: none; | ||||
|             padding-right: 30px; | ||||
|             box-sizing: border-box; | ||||
|             width: 260px; | ||||
|             /* height: 100px; */ | ||||
|             position: absolute; | ||||
|             right: -25; | ||||
|         } | ||||
|  | ||||
|         td.invoice-total1 { | ||||
|             text-align:left; | ||||
|             padding: 15px 0 15px 10px; | ||||
|             font-size:12px; | ||||
|             line-height: 18px; | ||||
|             color: #55547A; | ||||
|             border-bottom:1px solid #E8E8E8; | ||||
|             border-top:1px solid #E8E8E8; | ||||
|             border-left:1px solid #E8E8E8; | ||||
|         } | ||||
|  | ||||
|         td.invoice-total2 { | ||||
|             font-weight: 500; | ||||
|             text-align: right; | ||||
|             font-size:12px; | ||||
|             line-height: 18px; | ||||
|             padding: 15px 10px 15px 0; | ||||
|             color: #5851DB; | ||||
|             border-bottom:1px solid #E8E8E8; | ||||
|             border-top:1px solid #E8E8E8; | ||||
|             border-right:1px solid #E8E8E8; | ||||
|         } | ||||
|  | ||||
|         .inv-item { | ||||
|             border-color: #d9d9d9; | ||||
|         } | ||||
|  | ||||
|         .no-border { | ||||
|             border: none; | ||||
|         } | ||||
|         .desc { | ||||
|             font-weight: 100; | ||||
|             text-align: justify; | ||||
|             font-size: 10px; | ||||
|             margin-bottom: 15px; | ||||
|             margin-top:7px; | ||||
|             color:rgba(0, 0, 0, 0.85); | ||||
|         } | ||||
|         .company-details h1 { | ||||
|             margin:0; | ||||
|             font-style: normal; | ||||
|             font-weight: bold; | ||||
|             font-size: 15px; | ||||
|             line-height: 22px; | ||||
|             letter-spacing: 0.05em; | ||||
|             text-align: left; | ||||
|             max-width: 220px; | ||||
|         } | ||||
|         .company-details h4 { | ||||
|             margin:0; | ||||
|             font-style: normal; | ||||
|             font-weight: 100; | ||||
|             font-size: 18px; | ||||
|             line-height: 25px; | ||||
|             text-align: right; | ||||
|         } | ||||
|         .company-details h3 { | ||||
|              margin-bottom:1px; | ||||
|              margin-top:0; | ||||
|         } | ||||
|         tr.total td { | ||||
|             border-bottom:1px solid #E8E8E8; | ||||
|             border-top:1px solid #E8E8E8; | ||||
|         } | ||||
|  | ||||
|         .notes { | ||||
|             font-style: normal; | ||||
|             font-weight: 300; | ||||
|             font-size: 12px; | ||||
|             color: #595959; | ||||
|             margin-top: 15px; | ||||
|             margin-left: 30px; | ||||
|             width: 442px; | ||||
|             text-align: left; | ||||
|             page-break-inside: avoid; | ||||
|         } | ||||
|  | ||||
|         .notes-label { | ||||
|             font-style: normal; | ||||
|             font-weight: normal; | ||||
|             font-size: 15px; | ||||
|             line-height: 22px; | ||||
|             letter-spacing: 0.05em; | ||||
|             color: #040405; | ||||
|             width: 108px; | ||||
|             height: 19.87px; | ||||
|             padding-bottom: 10px; | ||||
|         } | ||||
|  | ||||
|         .content-header { | ||||
|             margin-top: 120px; | ||||
|             width: 100%; | ||||
|             text-align: center; | ||||
|         } | ||||
|  | ||||
|         p { | ||||
|             padding: 0 0 0 0; | ||||
|             margin:  0 0 0 0; | ||||
|         } | ||||
|  | ||||
|         .content-header span { | ||||
|             font-weight: 500; | ||||
|             font-size: 14px; | ||||
|             line-height: 25px; | ||||
|             border-bottom: 1px solid #B9C1D1; | ||||
|         } | ||||
|  | ||||
|         .total-amount { | ||||
|             width: 315px; | ||||
|             display: block; | ||||
|             margin-right: 30px; | ||||
|             background: #F9FBFF; | ||||
|             border: 1px solid #EAF1FB; | ||||
|             box-sizing: border-box; | ||||
|             float: right; | ||||
|             padding: 12px 15px 15px 15px; | ||||
|         } | ||||
|  | ||||
|         .total-amount-label { | ||||
|             display: inline; | ||||
|             font-weight: 600; | ||||
|             font-size: 14px; | ||||
|             line-height: 21px; | ||||
|             color: #595959; | ||||
|         } | ||||
|  | ||||
|         .total-amount span { | ||||
|             float: right; | ||||
|             font-weight: 500; | ||||
|             font-size: 14px; | ||||
|             line-height: 21px; | ||||
|             text-align: right; | ||||
|             color: #5851D8; | ||||
|         } | ||||
|  | ||||
|     </style> | ||||
| </head> | ||||
| <body> | ||||
|     <div class="header-table"> | ||||
|         <table width="100%"> | ||||
|             <tr> | ||||
|                 @if($logo) | ||||
|                     <td class="header-left"> | ||||
|                         <img class="header-logo" src="{{ $logo }}" alt="Company Logo"> | ||||
|                 @else | ||||
|                     @if($payment->user->company) | ||||
|                     <td class="header-left" style="padding-top:0px;"> | ||||
|                         <h1 class="header-logo"> {{$payment->user->company->name}} </h1> | ||||
|                     @endif | ||||
|                 @endif | ||||
|                 </td> | ||||
|                 <td class="header-right company-details"> | ||||
|                     @include('app.pdf.payment.partials.company-address') | ||||
|                 </td> | ||||
|             </tr> | ||||
|         </table> | ||||
|     </div> | ||||
|     <hr style="border: 0.620315px solid #E8E8E8;"> | ||||
|     <p class="content-header"> | ||||
|         <span>PAYMENT RECEIPT</span> | ||||
|     </p> | ||||
|     <div class="wrapper"> | ||||
|         <div class="address"> | ||||
|             <div class="bill-add"> | ||||
|                 <div style="float:left;"> | ||||
|                     @include('app.pdf.payment.partials.billing-address') | ||||
|                 </div> | ||||
|                 <div style="float:right;"> | ||||
|                 </div> | ||||
|                 <div style="clear: both;"></div> | ||||
|             </div> | ||||
|  | ||||
|             <div class="job-add"> | ||||
|                 <table width="100%"> | ||||
|                     <tr> | ||||
|                         <td class="textStyle1" style="text-align: left; color: #55547A">Payment Date</td> | ||||
|                         <td class="textStyle2">  {{$payment->formattedPaymentDate}}</td> | ||||
|                     </tr> | ||||
|                     <tr> | ||||
|                         <td class="textStyle1" style="text-align: left; color: #55547A">Payment Number</td> | ||||
|                         <td class="textStyle2">  {{$payment->payment_number}}</td> | ||||
|                     </tr> | ||||
|                     <tr> | ||||
|                         <td class="textStyle1" style="text-align: left; color: #55547A">Payment Mode</td> | ||||
|                         <td class="textStyle2">  {{$payment->paymentMethod->name}}</td> | ||||
|                     </tr> | ||||
|                     @if ($payment->invoice && $payment->invoice->invoice_number) | ||||
|                         <tr> | ||||
|                             <td class="textStyle1" style="text-align: left; color: #55547A">Invoice</td> | ||||
|                             <td class="textStyle2">  {{$payment->invoice->invoice_number}}</td> | ||||
|                         </tr> | ||||
|                     @endif | ||||
|                 </table> | ||||
|             </div> | ||||
|         </div> | ||||
|         <div style="clear: both;"></div> | ||||
|     </div> | ||||
|     <div class="total-amount"> | ||||
|         <p class="total-amount-label">Amount Received</p> | ||||
|         <span>{!! format_money_pdf($payment->amount, $payment->user->currency) !!}</span> | ||||
|     </div> | ||||
| </body> | ||||
| </html> | ||||
		Reference in New Issue
	
	Block a user