Add File based templates

This commit is contained in:
gohil jayvirsinh
2021-06-19 12:11:21 +00:00
committed by Mohit Panjwani
parent 00961bcae1
commit d1dd704cdf
58 changed files with 277 additions and 382 deletions

View File

@@ -32,7 +32,7 @@ class CloneInvoiceController extends Controller
'reference_number' => $invoice->reference_number,
'user_id' => $invoice->user_id,
'company_id' => $request->header('company'),
'invoice_template_id' => $invoice->invoice_template_id,
'template_name' => 'invoice1',
'status' => Invoice::STATUS_DRAFT,
'paid_status' => Invoice::STATUS_UNPAID,
'sub_total' => $invoice->sub_total,
@@ -78,8 +78,7 @@ class CloneInvoiceController extends Controller
$newInvoice = Invoice::with([
'items',
'user',
'invoiceTemplate',
'taxes',
'taxes'
])
->find($newInvoice->id);

View File

@@ -3,7 +3,8 @@
namespace Crater\Http\Controllers\V1\Invoice;
use Crater\Http\Controllers\Controller;
use Crater\Models\InvoiceTemplate;
use Illuminate\Support\Facades\Storage;
use Illuminate\Support\Str;
use Illuminate\Http\Request;
class InvoiceTemplatesController extends Controller
@@ -16,7 +17,14 @@ class InvoiceTemplatesController extends Controller
*/
public function __invoke(Request $request)
{
$invoiceTemplates = InvoiceTemplate::all();
$templates = Storage::disk('views')->files('/app/pdf/invoice');
$invoiceTemplates = [];
foreach ($templates as $key => $template) {
$templateName = Str::before(basename($template), '.blade.php');
$invoiceTemplates[$key]['name'] = $templateName;
$invoiceTemplates[$key]['path'] = asset('assets/img/PDF/'.$templateName.'.png');
}
return response()->json([
'invoiceTemplates' => $invoiceTemplates,

View File

@@ -20,7 +20,7 @@ class InvoicesController extends Controller
{
$limit = $request->has('limit') ? $request->limit : 10;
$invoices = Invoice::with(['items', 'user', 'creator', 'invoiceTemplate', 'taxes'])
$invoices = Invoice::with(['items', 'user', 'creator', 'taxes'])
->join('users', 'users.id', '=', 'invoices.user_id')
->applyFilters($request->only([
'status',
@@ -78,7 +78,6 @@ class InvoicesController extends Controller
'items',
'items.taxes',
'user',
'invoiceTemplate',
'taxes.taxType',
'fields.customField',
]);