Refactor Invoice and Payment templates

This commit is contained in:
radhu587
2020-05-07 16:42:04 +05:30
parent 30f76e2088
commit 6046113cb1
16 changed files with 758 additions and 949 deletions

View File

@ -66,7 +66,6 @@
.company-address-container {
padding-left: 30px;
font-weight: normal;
float: left;
width: 30%;
text-transform: capitalize;
@ -74,8 +73,6 @@
}
.company-address-container h1 {
font-style: normal;
font-weight: normal;
font-size: 15px;
line-height: 22px;
letter-spacing: 0.05em;
@ -86,28 +83,25 @@
.company-address {
margin-top: 2px;
text-align: left;
font-style: normal;
font-weight: normal;
font-size: 12px;
line-height: 15px;
color: #595959;
}
.amount-due {
background-color: #f2f2f2;
.invoice-details-container {
float: right;
padding: 10px 30px 0 0;
}
.attribute-label {
font-style: normal;
font-weight: normal;
font-size: 12px;
line-height: 18px;
padding-right: 40px;
text-align: left;
color: #55547A;
}
.attribute-value {
font-style: normal;
font-weight: normal;
font-size: 12px;
line-height: 18px;
text-align: right;
@ -115,12 +109,12 @@
/* -- Shipping -- */
.ship-address-container {
.shipping-address-container {
float: right;
padding-left: 30px;
}
.ship-to {
.shipping-address-label {
font-size: 12px;
line-height: 18px;
padding: 0px;
@ -128,7 +122,7 @@
margin-bottom: 0px;
}
.ship-user-name {
.shipping-address-name {
max-width: 250px;
font-size: 15px;
line-height: 22px;
@ -136,9 +130,7 @@
margin: 0px;
}
.ship-user-address {
font-style: normal;
font-weight: normal;
.shipping-address {
font-size: 10px;
line-height: 15px;
color: #595959;
@ -147,23 +139,14 @@
width: 160px;
}
.ship-user-phone {
font-size: 10px;
line-height: 15px;
color: #595959;
padding: 0px;
margin: 0px;
}
/* -- Billing -- */
/* -------------------------- */
/* billing style */
.bill-address-container {
.billing-address-container {
float: left;
padding-left: 30px;
}
.bill-to {
.billing-address-label {
font-size: 12px;
line-height: 18px;
padding: 0px;
@ -171,7 +154,7 @@
margin-bottom: 0px;
}
.bill-user-name {
.billing-address-name {
max-width: 250px;
font-size: 15px;
line-height: 22px;
@ -179,7 +162,7 @@
margin: 0px;
}
.bill-user-address {
.billing-address {
font-size: 10px;
line-height: 15px;
color: #595959;
@ -188,23 +171,16 @@
width: 160px;
}
.bill-user-phone {
font-size: 10px;
line-height: 15px;
color: #595959;
padding: 0px;
margin: 0px;
}
/* -- Items Table -- */
.table2 {
.items-table {
margin-top: 35px;
padding: 0px 30px 10px 30px;
page-break-before: avoid;
page-break-after: auto;
}
.table2 hr {
.items-table hr {
height: 0.1px;
}
@ -213,52 +189,63 @@
text-align: center;
color: rgba(0, 0, 0, 0.85);
padding: 5px;
color: #55547A;
}
tr.item-table-heading-row th {
border-bottom: 0.620315px solid #E8E8E8;
font-style: normal;
font-weight: normal;
font-size: 12px;
line-height: 18px;
}
tr.item-row td {
font-style: normal;
font-weight: normal;
font-size: 12px;
line-height: 18px;
}
.item-cell {
font-size: 13;
color: rgba(0, 0, 0, 0.6);
text-align: center;
padding: 5px;
padding-top: 10px;
color: #040405;
}
.padd8 {
padding-top: 8px;
padding-bottom: 8px;
.item-description {
color: #595959;
font-size: 9px;
font-weight:300;
line-height: 12px;
}
.padd2 {
padding-top: 2px;
padding-bottom: 2px;
}
/* -- Total Display Table -- */
.table3 {
/* border: 1px solid #EAF1FB; */
.total-display-table {
border-top: none;
/* padding-right: 30px; */
box-sizing: border-box;
width: 630px;
/* position: absolute;
right: -25; */
page-break-inside: avoid;
page-break-before: auto;
page-break-after: auto;
margin-left: 420px;
margin-top: 10px;
}
.total-table-attribute-label {
font-size: 13px;
color: #55547A;
text-align: left;
padding-left: 10px;
}
.total-table-attribute-value {
font-weight: 500;
text-align: right;
font-size: 13px;
color: #040405;
padding-right: 10px;
padding-top: 2px;
padding-bottom: 2px;
}
.total-border-left {
@ -273,16 +260,9 @@
border-left: 0px !important;
padding-top: 0px;
padding: 8px !important;
}
.inv-item {
border-color: #d9d9d9;
}
.no-border {
border: none;
}
/* -- Notes -- */
.notes {
font-size: 12px;
@ -303,6 +283,62 @@
height: 19.87px;
padding-bottom: 10px;
}
/* -- Helpers -- */
.text-primary {
color: #5851DB;
}
.text-center {
text-align: center
}
table .text-left {
text-align: left;
}
table .text-right {
text-align: right;
}
.border-0 {
border: none;
}
.py-2 {
padding-top: 2px;
padding-bottom: 2px;
}
.py-8 {
padding-top: 8px;
padding-bottom: 8px;
}
.py-3 {
padding: 3px 0;
}
.pr-20 {
padding-right: 20px;
}
.pr-10 {
padding-right: 10px;
}
.pl-20 {
padding-left: 20px;
}
.pl-10 {
padding-left: 10px;
}
.pl-0 {
padding-left: 0;
}
</style>
</head>
@ -328,18 +364,18 @@
<div class="company-address-container">
@include('app.pdf.invoice.partials.company-address')
</div>
<div style="float: right; padding: 10px 30px 0 0;">
<div class="invoice-details-container">
<table>
<tr>
<td class="attribute-label" style="text-align: left; color: #55547A">Invoice Number</td>
<td class="attribute-label">Invoice Number</td>
<td class="attribute-value"> &nbsp;{{$invoice->invoice_number}}</td>
</tr>
<tr>
<td class="attribute-label" style="text-align: left; color: #55547A">Invoice Date </td>
<td class="attribute-label">Invoice Date </td>
<td class="attribute-value"> &nbsp;{{$invoice->formattedInvoiceDate}}</td>
</tr>
<tr>
<td class="attribute-label" style="text-align: left; color: #55547A">Due date</td>
<td class="attribute-label">Due date</td>
<td class="attribute-value"> &nbsp;{{$invoice->formattedDueDate}}</td>
</tr>
</table>
@ -347,11 +383,11 @@
<div style="clear: both;"></div>
</div>
<div class="bill-address-container">
<div class="billing-address-container">
@include('app.pdf.invoice.partials.billing-address')
</div>
<div class="ship-address-container" @if($invoice->user->billingaddress) style="float:left;" @endif>
<div class="shipping-address-container" @if($invoice->user->billingaddress) style="float:left;" @endif>
@include('app.pdf.invoice.partials.shipping-address')
<div style="clear: both;"></div>
</div>
@ -361,4 +397,4 @@
@include('app.pdf.invoice.partials.notes')
</body>
</html>
</html>

View File

@ -5,6 +5,7 @@
<title>Invoice</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style type="text/css">
/* -- Base -- */
body {
font-family: "DejaVu Sans";
}
@ -12,25 +13,22 @@
html {
margin: 0px;
padding: 0px;
margin-top: 50px;
}
table {
border-collapse: collapse;
}
.header-left {
padding-top: 45px;
padding-bottom: 45px;
padding-left: 30px;
display: inline-block;
width: 30%;
hr {
margin: 0 30px 0 30px;
color: rgba(0, 0, 0, 0.2);
border: 0.5px solid #EAF1FB;
}
@page {
margin-top: 60px !important;
}
/* -- Header -- */
.header-table {
.header-container {
background: #817AE3;
position: absolute;
width: 100%;
@ -39,6 +37,14 @@
top: -60px;
}
.header-section-left {
padding-top: 45px;
padding-bottom: 45px;
padding-left: 30px;
display: inline-block;
width: 30%;
}
.header-logo {
position: absolute;
height: 50px;
@ -46,14 +52,13 @@
color: #fff;
}
.header-right {
.header-section-right {
display: inline-block;
width: 35%;
float: right;
padding: 20px 30px 20px 0px;
text-align: right;
color: white;
}
.header {
@ -61,26 +66,56 @@
color: rgba(0, 0, 0, 0.7);
}
.wrapper {
/* -- Estimate Details -- */
.invoice-details-container {
text-align: center;
width: 40%;
}
.invoice-details-container h1 {
margin: 0;
font-weight: 500;
font-size: 24px;
line-height: 36px;
text-align: right;
}
.invoice-details-container h4 {
margin: 0;
font-size: 10px;
line-height: 15px;
text-align: right;
}
.invoice-details-container h3 {
margin-bottom: 1px;
margin-top: 0;
}
/* -- Content Wrapper -- */
.content-wrapper {
display: block;
margin-top: 60px;
padding-bottom: 20px;
}
.address {
.address-container {
display: block;
padding-top: 20px;
}
.company {
/* -- Company -- */
.company-address-container {
padding: 0 0 0 30px;
display: inline;
float: left;
width: 30%;
}
.company h1 {
font-style: normal;
.company-address-container h1 {
font-weight: bold;
font-size: 15px;
line-height: 22px;
@ -89,35 +124,30 @@
}
.company-address{
font-style: normal;
font-weight: normal;
font-size: 10px;
line-height: 15px;
color: #595959;
margin-top: 0px;
}
/* -------------------------- */
/* billing style */
.bill-address-container {
/* -- Billing -- */
.billing-address-container {
display: block;
/* position: absolute; */
float: right;
padding: 0 40px 0 0;
}
.bill-to {
font-style: normal;
font-weight: normal;
.billing-address-label {
font-size: 12px;
line-height: 18px;
padding: 0px;
margin-bottom: 0px;
}
.bill-user-name {
max-width: 250px font-style: normal;
font-weight: normal;
.billing-address-name {
max-width: 250px;
font-size: 15px;
line-height: 22px;
padding: 0px;
@ -125,9 +155,7 @@
margin-bottom: 0px;
}
.bill-user-address {
font-style: normal;
font-weight: normal;
.billing-address{
font-size: 10px;
line-height: 15px;
color: #595959;
@ -136,36 +164,23 @@
width: 170px;
}
.bill-user-phone {
font-style: normal;
font-weight: normal;
font-size: 10px;
line-height: 15px;
color: #595959;
padding: 0px;
margin: 0px;
}
/* -- Shipping -- */
/* -------------------------- */
/* shipping style */
.ship-address-container {
.shipping-address-container {
display: block;
float: right;
padding: 0 30px 0 0;
}
.ship-to {
font-style: normal;
font-weight: normal;
.shipping-address-label {
font-size: 12px;
line-height: 18px;
padding: 0px;
margin-bottom: 0px;
}
.ship-user-name {
max-width: 250px font-style: normal;
font-weight: normal;
.shipping-address-name {
max-width: 250px;
font-size: 15px;
line-height: 22px;
padding: 0px;
@ -173,9 +188,7 @@
margin-bottom: 0px;
}
.ship-user-address {
font-style: normal;
font-weight: normal;
.shipping-address {
font-size: 10px;
line-height: 15px;
color: #595959;
@ -184,37 +197,17 @@
width: 170px;
}
.ship-user-phone {
font-style: normal;
font-weight: normal;
font-size: 10px;
line-height: 15px;
color: #595959;
padding: 0px;
margin: 0px;
/* -- Items Table -- */
.items-table {
margin-top: 30px;
padding: 0px 30px 10px 30px;
page-break-before: avoid;
page-break-after: auto;
}
.job-add {
display: inline;
float: right;
width: 40%;
}
.amount-due {
background-color: #f2f2f2;
}
.attribute-label {
font-size: 12;
font-weight: bold;
line-height: 22px;
color: rgba(0, 0, 0, 0.8);
}
.attribute-value {
font-size: 12;
line-height: 22px;
color: rgba(0, 0, 0, 0.7);
.items-table hr {
height: 0.1px;
}
.item-table-heading-row td {
@ -226,23 +219,6 @@
border-bottom: 1px solid red;
}
.table2 {
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;
}
.item-table-heading {
font-size: 13.5;
text-align: center;
@ -252,48 +228,26 @@
tr.item-table-heading-row th {
border-bottom: 0.620315px solid #E8E8E8;
font-style: normal;
font-weight: normal;
font-size: 12px;
line-height: 18px;
}
tr.item-row td {
font-style: normal;
font-weight: normal;
font-size: 12px;
line-height: 18px;
}
.item-cell {
font-size: 13;
color: rgba(0, 0, 0, 0.6);
color: #040405;
text-align: center;
padding: 5px;
padding-top: 10px;
}
.note-header {
font-size: 13;
color: rgba(0, 0, 0, 0.6);
}
/* -- Total Display Table -- */
.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 {
.total-display-table {
border: 1px solid #EAF1FB;
border-top: none;
box-sizing: border-box;
@ -301,58 +255,44 @@
page-break-inside: avoid;
page-break-before: auto;
page-break-after: auto;
margin-left:420px;
margin-top: 10px
}
.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;
.total-table-attribute-label {
font-size: 12px;
color: #55547A;
text-align: left;
padding-left: 10px;
}
.inv-item {
border-color: #d9d9d9;
}
.no-border {
border: none;
}
.company-details {
text-align: center;
width: 40%;
}
.company-details h1 {
margin: 0;
font-style: normal;
.total-table-attribute-value {
font-weight: 500;
font-size: 24px;
line-height: 36px;
text-align: right;
font-size: 12px;
color: #040405;
padding-right: 10px;
padding-top: 2px;
padding-bottom: 2px;
}
.company-details h4 {
margin: 0;
font-style: normal;
font-weight: normal;
font-size: 10px;
line-height: 15px;
text-align: right;
.total-border-left {
border: 1px solid #E8E8E8 !important;
border-right: 0px !important;
padding-top: 0px;
padding: 8px !important;
}
.company-details h3 {
margin-bottom: 1px;
margin-top: 0;
.total-border-right {
border: 1px solid #E8E8E8 !important;
border-left: 0px !important;
padding-top: 0px;
padding: 8px !important;
}
/* -- Notes -- */
.notes {
font-style: normal;
font-weight: 300;
font-size: 12px;
color: #595959;
margin-top: 15px;
@ -363,8 +303,6 @@
}
.notes-label {
font-style: normal;
font-weight: normal;
font-size: 15px;
line-height: 22px;
letter-spacing: 0.05em;
@ -373,24 +311,80 @@
height: 19.87px;
padding-bottom: 10px;
}
/* -- Helpers -- */
.text-primary {
color: #5851DB;
}
.text-center {
text-align: center
}
table .text-left {
text-align: left;
}
table .text-right {
text-align: right;
}
.border-0 {
border: none;
}
.py-2 {
padding-top: 2px;
padding-bottom: 2px;
}
.py-8 {
padding-top: 8px;
padding-bottom: 8px;
}
.py-3 {
padding: 3px 0;
}
.pr-20 {
padding-right: 20px;
}
.pr-10 {
padding-right: 10px;
}
.pl-20 {
padding-left: 20px;
}
.pl-10 {
padding-left: 10px;
}
.pl-0 {
padding-left: 0;
}
</style>
</head>
<body>
<div class="header-table">
<div class="header-container">
<table width="100%">
<tr>
@if($logo)
<td width="60%" class="header-left">
<td width="60%" class="header-section-left">
<img class="header-logo" src="{{ $logo }}" alt="Company Logo">
@else
<td width="60%" class="header-left" style="padding-top: 0px;">
<td width="60%" class="header-section-left" style="padding-top: 0px;">
@if($invoice->user->company)
<h1 class="header-logo"> {{$invoice->user->company->name}} </h1>
@endif
@endif
</td>
<td width="40%" class="header-right company-details">
<td width="40%" class="header-section-right invoice-details-container">
<h1>Invoice</h1>
<h4>{{$invoice->invoice_number}}</h4>
<h4>{{$invoice->formattedInvoiceDate}}</h4>
@ -399,18 +393,18 @@
</table>
</div>
<hr>
<div class="wrapper">
<div class="address">
<div class="company">
<div class="content-wrapper">
<div class="address-container">
<div class="company-address-container">
@include('app.pdf.invoice.partials.company-address')
</div>
<div class="ship-address-container">
<div class="shipping-address-container">
@include('app.pdf.invoice.partials.shipping-address')
</div>
@if($invoice->user->shippingaddress)
<div class="bill-address-container">
<div class="billing-address-container">
@else
<div class="bill-address-container" style="float:right;padding-right:0px;">
<div class="billing-address-container" style="float:right;padding-right:0px;">
@endif
@include('app.pdf.invoice.partials.billing-address')
</div>
@ -421,4 +415,4 @@
</div>
</body>
</html>
</html>

View File

@ -6,6 +6,8 @@
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style type="text/css">
/* -- Base -- */
body {
font-family: "DejaVu Sans";
}
@ -13,32 +15,29 @@
html {
margin: 0px;
padding: 0px;
margin-top: 50px;
}
table {
border-collapse: collapse;
}
.header-line {
color: rgba(0, 0, 0, 0.2);
position: absolute;
top: 80px;
left: 0px;
right: -70px;
width: 100%;
}
hr {
color: rgba(0, 0, 0, 0.2);
border: 0.5px solid #EAF1FB;
}
.items-table-hr {
margin: 0 30px 0 30px;
/* -- Header -- */
.header-bottom-divider {
color: rgba(0, 0, 0, 0.2);
position: absolute;
top: 100px;
left: 0px;
width: 100%;
}
.header-left {
.header-section-left {
padding-top: 45px;
padding-bottom: 45px;
padding-left: 30px;
@ -46,7 +45,7 @@
width: 30%;
}
.header-table {
.header-container {
position: absolute;
width: 100%;
height: 150px;
@ -61,7 +60,7 @@
color: #817AE3;
}
.header-right {
.header-section-right {
display: inline-block;
position: absolute;
right: 0;
@ -74,76 +73,103 @@
color: rgba(0, 0, 0, 0.7);
}
@page {
margin-top: 60px !important;
/* -- Company Address */
.company-address-container {
width: auto;
text-transform: capitalize;
margin-bottom: 2px;
}
.wrapper {
.company-address-container h1 {
font-size: 15px;
line-height: 22px;
letter-spacing: 0.05em;
margin-bottom: 0px;
margin-top: 10px;
}
.company-address {
margin-top: 2px;
font-size: 12px;
line-height: 15px;
color: #595959;
}
/* -- Content Wrapper */
.content-wrapper {
display: block;
padding-top: 50px;
padding-bottom: 20px;
}
.address {
.main-content {
display: inline-block;
padding-top: 100px;
}
.bill-add {
.customer-address-container {
display: block;
float: left;
width: 40%;
padding: 0 0 0 30px;
}
.company {
padding-left: 30px;
display: inline;
/* -- Shipping -- */
.shipping-address-container {
float:right;
}
.shipping-address-container--left {
float:left;
}
.shipping-address-label {
padding-top: 5px;
font-size: 12px;
line-height: 18px;
margin-bottom: 0px;
}
.shipping-address-name {
padding: 0px;
font-size: 15px;
line-height: 22px;
margin: 0px;
}
.shipping-address {
font-size: 10px;
line-height: 15px;
color: #595959;
margin: 0px;
width: 160px;
}
/* -- Billing -- */
.billing-address-container {
float: left;
width: 30%;
}
.company h1 {
font-style: normal;
font-weight: bold;
font-size: 18px;
line-height: 22px;
letter-spacing: 0.05em;
}
.company-address{
text-align: left;
font-style: normal;
font-weight: normal;
font-size: 10px;
line-height: 15px;
color: #595959;
margin: 0px;
}
/* -------------------------- */
/* shipping style */
.ship-to {
.billing-address-label {
padding-top: 5px;
font-style: normal;
font-weight: normal;
font-size: 12px;
line-height: 18px;
margin-bottom: 0px;
}
.ship-user-name {
.billing-address-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;
.billing-address {
font-size: 10px;
line-height: 15px;
color: #595959;
@ -151,80 +177,40 @@
width: 160px;
}
.ship-user-phone {
font-style: normal;
font-weight: normal;
font-size: 10px;
line-height: 15px;
color: #595959;
margin: 0px;
}
/* -- Estimate Details -- */
/* -------------------------- */
/* billing style */
.bill-to {
padding-top: 5px;
font-style: normal;
font-weight: normal;
font-size: 12px;
line-height: 18px;
margin-bottom: 0px;
}
.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;
}
.invoice-attributes {
.invoice-details-container {
display: block;
float: right;
padding: 20px 30px 0 0;
}
.amount-due {
background-color: #f2f2f2;
}
.attribute-label {
font-style: normal;
font-weight: normal;
font-size: 12px;
line-height: 18px;
text-align: left;
color: #55547A
}
.attribute-value {
font-style: normal;
font-weight: normal;
font-size: 12px;
line-height: 18px;
text-align: right;
}
/* -- Items Table -- */
.items-table {
padding: 0px 30px 10px 30px;
page-break-before: avoid;
page-break-after: auto;
}
.items-table hr {
height: 0.1px;
margin: 0 30px 0 30px;
}
.item-table-heading-row td {
padding: 10px;
}
@ -234,29 +220,16 @@
}
tr.item-table-heading-row th {
font-style: normal;
font-weight: 600;
font-size: 12px;
line-height: 18px;
}
tr.item-row td {
font-style: normal;
font-weight: normal;
font-size: 12px;
line-height: 18px;
}
.table2 {
padding: 0px 30px 10px 30px;
page-break-before: avoid;
page-break-after: auto;
}
.table2 hr {
height: 0.1px;
}
.item-table-heading {
font-size: 13.5;
text-align: center;
@ -266,32 +239,14 @@
.item-cell {
font-size: 13;
color: rgba(0, 0, 0, 0.6);
color: #040405;
text-align: center;
padding: 5px;
}
.note-header {
font-size: 13;
color: rgba(0, 0, 0, 0.6);
}
/* -- Total Display Table -- */
.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 {
.total-display-table {
border: 1px solid #EAF1FB;
border-top: none;
box-sizing: border-box;
@ -299,83 +254,29 @@
page-break-inside: avoid;
page-break-before: auto;
page-break-after: auto;
margin-left:420px;
margin-top: 10px
}
.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;
.total-table-attribute-label {
font-size: 12px;
line-height: 18px;
color: #55547A;
border-bottom: 1px solid #E8E8E8;
border-top: 1px solid #E8E8E8;
border-left: 1px solid #E8E8E8;
text-align: left;
padding-left: 10px;
}
td.invoice-total2 {
.total-table-attribute-value {
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;
}
.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;
color: #040405;
padding-right: 10px;
padding-top: 2px;
padding-bottom: 2px;
}
/* -- Notes -- */
.notes {
font-style: normal;
font-weight: 300;
font-size: 12px;
color: #595959;
margin-top: 15px;
@ -386,8 +287,6 @@
}
.notes-label {
font-style: normal;
font-weight: normal;
font-size: 15px;
line-height: 22px;
letter-spacing: 0.05em;
@ -396,57 +295,113 @@
height: 19.87px;
padding-bottom: 10px;
}
/* -- Helpers -- */
.text-primary {
color: #5851DB;
}
.text-center {
text-align: center
}
table .text-left {
text-align: left;
}
table .text-right {
text-align: right;
}
.border-0 {
border: none;
}
.py-2 {
padding-top: 2px;
padding-bottom: 2px;
}
.py-8 {
padding-top: 8px;
padding-bottom: 8px;
}
.py-3 {
padding: 3px 0;
}
.pr-20 {
padding-right: 20px;
}
.pr-10 {
padding-right: 10px;
}
.pl-20 {
padding-left: 20px;
}
.pl-10 {
padding-left: 10px;
}
.pl-0 {
padding-left: 0;
}
</style>
</head>
<body>
<div class="header-table">
<div class="header-container">
<table width="100%">
<tr>
<td class="header-left">
<td class="header-section-left">
@if($logo)
<img class="header-logo" src="{{ $logo }}" alt="Company Logo">
@else
<h1 class="header-logo"> {{$invoice->user->company->name}} </h1>
@endif
</td>
<td class="header-right company-details">
<td class="header-section-right company-address-container">
@include('app.pdf.invoice.partials.company-address')
</td>
</tr>
</table>
</div>
<hr class="header-line">
<hr class="header-bottom-divider">
<div class="wrapper">
<div class="address">
<div class="bill-add">
<div style="float:left;">
<div class="content-wrapper">
<div class="main-content">
<div class="customer-address-container">
<div class="billing-address-container">
@include('app.pdf.invoice.partials.billing-address')
</div>
@if($invoice->user->billingaddress)
<div style="float:right;">
<div class="shipping-address-container">
@else
<div style="float:left;">
<div class="shipping-address-container--left">
@endif
@include('app.pdf.invoice.partials.shipping-address')
</div>
<div style="clear: both;"></div>
</div>
<div style="display: block;float: right;padding: 20px 30px 0 0;">
<div class="invoice-details-container">
<table>
<tr>
<td class="attribute-label" style="text-align: left; color: #55547A">Invoice Number</td>
<td class="attribute-label">Invoice Number</td>
<td class="attribute-value"> &nbsp;{{$invoice->invoice_number}}</td>
</tr>
<tr>
<td class="attribute-label" style="text-align: left; color: #55547A">Invoice Date </td>
<td class="attribute-label">Invoice Date </td>
<td class="attribute-value"> &nbsp;{{$invoice->formattedInvoiceDate}}</td>
</tr>
<tr>
<td class="attribute-label" style="text-align: left; color: #55547A">Due date</td>
<td class="attribute-label">Due date</td>
<td class="attribute-value"> &nbsp;{{$invoice->formattedDueDate}}</td>
</tr>
</table>
@ -458,4 +413,4 @@
</div>
</body>
</html>
</html>

View File

@ -1,11 +1,11 @@
@if($invoice->user->billingaddress)
<p class="bill-to">Bill To,</p>
<p class="billing-address-label">Bill To,</p>
@if($invoice->user->billingaddress->name)
<p class="bill-user-name">
<p class="billing-address-name">
{{$invoice->user->billingaddress->name}}
</p>
@endif
<p class="bill-user-address">
<p class="billing-address">
@if($invoice->user->billingaddress->address_street_1)
{!! nl2br(htmlspecialchars($invoice->user->billingaddress->address_street_1)) !!}<br>
@endif
@ -25,7 +25,7 @@
{{$invoice->user->billingaddress->country->name}}<br>
@endif
@if($invoice->user->billingaddress->phone)
<p class="bill-user-phone">
<p class="billing-address">
Phone :{{$invoice->user->billingaddress->phone}}
</p>
@endif

View File

@ -1,11 +1,11 @@
@if($invoice->user->shippingaddress)
<p class="ship-to">Ship To,</p>
<p class="shipping-address-label">Ship To,</p>
@if($invoice->user->shippingaddress->name)
<p class="ship-user-name">
<p class="shipping-address-name">
{{$invoice->user->shippingaddress->name}}
</p>
@endif
<p class="ship-user-address">
<p class="shipping-address">
@if($invoice->user->shippingaddress->address_street_1)
{!! nl2br(htmlspecialchars($invoice->user->shippingaddress->address_street_1)) !!}<br>
@endif
@ -31,7 +31,7 @@
@endif
@if($invoice->user->shippingaddress->phone)
<p class="ship-user-phone">
<p class="shipping-address">
Phone :{{$invoice->user->shippingaddress->phone}}
</p>
@endif

View File

@ -1,13 +1,13 @@
<table width="100%" class="table2" cellspacing="0" border="0">
<table width="100%" class="items-table" cellspacing="0" border="0">
<tr class="item-table-heading-row">
<th width="2%" class="item-table-heading" style="text-align: right; color: #55547A; padding-right: 20px">#</th>
<th width="40%" class="item-table-heading" style="text-align: left; color: #55547A; padding-left: 0px">Items</th>
<th class="item-table-heading" style="text-align: right; color: #55547A; padding-right: 20px">Quantity</th>
<th class="item-table-heading" style="text-align: right; color: #55547A; padding-right: 20px">Price</th>
<th width="2%" class="item-table-heading text-right pr-20">#</th>
<th width="40%" class="item-table-heading text-left pl-0">Items</th>
<th class="item-table-heading text-right pr-20">Quantity</th>
<th class="item-table-heading pr-20 text-right">Price</th>
@if($invoice->discount_per_item === 'YES')
<th class="item-table-heading" style="text-align: right; color: #55547A; padding-left: 10px">Discount</th>
<th class="item-table-heading pl-10">Discount</th>
@endif
<th class="item-table-heading" style="text-align: right; color: #55547A;">Amount</th>
<th class="item-table-heading text-right">Amount</th>
</tr>
@php
$index = 1
@ -15,32 +15,29 @@
@foreach ($invoice->items as $item)
<tr class="item-row">
<td
class="inv-item item-cell"
style="text-align: right; color: #040405; padding-right: 20px; vertical-align: top;"
class="item-cell text-right pr-20"
style="vertical-align: top;"
>
{{$index}}
</td>
<td
class="inv-item item-cell"
style="text-align: left; color: #040405;padding-left: 0px"
class="item-cell text-left pl-0"
>
<span>{{ $item->name }}</span><br>
<span style="text-align: left; color: #595959; font-size: 9px; font-weight:300; line-height: 12px;">{!! nl2br(htmlspecialchars($item->description)) !!}</span>
<span class="item-description">{!! nl2br(htmlspecialchars($item->description)) !!}</span>
</td>
<td
class="inv-item item-cell"
style="text-align: right; color: #040405; padding-right: 20px"
class="item-cell pr-20 text-right"
>
{{$item->quantity}}
</td>
<td
class="inv-item item-cell"
style="text-align: right; color: #040405; padding-right: 20px"
class="item-cell text-right pr-20"
>
{!! format_money_pdf($item->price, $invoice->user->currency) !!}
</td>
@if($invoice->discount_per_item === 'YES')
<td class="inv-item item-cell" style="text-align: right; color: #040405; padding-left: 10px">
<td class="item-cell text-right pl-10">
@if($item->discount_type === 'fixed')
{!! format_money_pdf($item->discount_val, $invoice->user->currency) !!}
@endif
@ -50,8 +47,7 @@
</td>
@endif
<td
class="inv-item item-cell"
style="text-align: right; color: #040405;"
class="item-cell text-right"
>
{!! format_money_pdf($item->total, $invoice->user->currency) !!}
</td>
@ -64,20 +60,21 @@
<hr class="item-cell-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">
<table width="100%" cellspacing="0px" border="0" class="total-display-table @if(count($invoice->items) > 12) page-break @endif">
<tr>
<td class="no-border" style="color: #55547A; padding-left:10px; font-size:12px;">Subtotal</td>
<td class="no-border item-cell 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>
<td class="border-0 total-table-attribute-label">Subtotal</td>
<td class="border-0 item-cell py-2 total-table-attribute-value">
{!! format_money_pdf($invoice->sub_total, $invoice->user->currency) !!}
</td>
</tr>
@if ($invoice->tax_per_item === 'YES')
@for ($i = 0; $i < count($labels); $i++)
<tr>
<td class="no-border" style="padding-left:10px; text-align:left; font-size:12px; color: #55547A;">
<td class="border-0 total-table-attribute-label">
{{$labels[$i]}}
</td>
<td class="no-border item-cell padd2" style="padding-right:10px; font-weight: 500; text-align: right; font-size:12px; color: #040405">
<td class="border-0 item-cell py-2 total-table-attribute-value">
{!! format_money_pdf($taxes[$i], $invoice->user->currency) !!}
</td>
</tr>
@ -85,10 +82,10 @@
@else
@foreach ($invoice->taxes as $tax)
<tr>
<td class="no-border" style="padding-left:10px; text-align:left; font-size:12px; color: #55547A;">
<td class="border-0 total-table-attribute-label">
{{$tax->name.' ('.$tax->percent.'%)'}}
</td>
<td class="no-border item-cell padd2" style="padding-right:10px; font-weight: 500; text-align: right; font-size:12px; color: #040405">
<td class="border-0 item-cell py-2 total-table-attribute-value">
{!! format_money_pdf($tax->amount, $invoice->user->currency) !!}
</td>
</tr>
@ -97,7 +94,7 @@
@if ($invoice->discount_per_item === 'NO')
<tr>
<td class="no-border" style="padding-left:10px; text-align:left; font-size:12px; color: #55547A;">
<td class="border-0 total-table-attribute-label">
@if($invoice->discount_type === 'fixed')
Discount
@endif
@ -105,7 +102,7 @@
Discount ({{$invoice->discount}}%)
@endif
</td>
<td class="no-border item-cell padd2" style="padding-right:10px; font-weight: 500; text-align: right; font-size:12px; color: #040405">
<td class="border-0 item-cell py-2 total-table-attribute-value" >
@if($invoice->discount_type === 'fixed')
{!! format_money_pdf($invoice->discount_val, $invoice->user->currency) !!}
@endif
@ -116,18 +113,15 @@
</tr>
@endif
<tr>
<td style="padding:3px 0px"></td>
<td style="padding:3px 0px"></td>
<td class="py-3"></td>
<td class="py-3"></td>
</tr>
<tr>
<td class="no-border total-border-left"
style="padding-left:10px; padding-bottom:10px; text-align:left; padding-top:20px; font-size:12px; color: #55547A;"
>
<label class="total-bottom"> Total </label>
<td class="border-0 total-border-left total-table-attribute-label">
Total
</td>
<td
class="no-border total-border-right item-cell padd8"
style="padding-right:10px; font-weight: 500; text-align: right; font-size:12px; padding-top:20px; color: #5851DB"
class="border-0 total-border-right item-cell py-8 total-table-attribute-value text-primary"
>
{!! format_money_pdf($invoice->total, $invoice->user->currency)!!}
</td>