rename performa to proforma

This commit is contained in:
edmondlang
2021-11-28 21:10:46 +08:00
parent bcbb3f53f6
commit fb4d17b46f
11 changed files with 30 additions and 36 deletions
@@ -5,18 +5,12 @@ namespace App\Classes\Modules\Bookings\ControllersLogic;
use App\Classes\General\Abstracts\AbstractControllerLogic;
use App\Classes\Modules\Bookings\Services\FetchesBooking;
use App\Classes\Modules\Bookings\Standards\Rules\CanFetchBooking;
use App\Classes\Modules\Bookings\Services\UpdatesBookingStatus;
use App\Classes\Modules\Transactions\Services\DeletesTransaction;
use App\Classes\Modules\Documents\Services\DeletesDocument;
use App\Classes\Modules\Transactions\Processors\CreatePerformaInvoiceTransactionProcessor;
use App\Classes\Modules\Transactions\Processors\CreateProformaInvoiceTransactionProcessor;
use App\Http\Resources\BookingResource;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
use App\Classes\ValueObjects\Constants\ApprovalStatus;
use App\Classes\ValueObjects\Constants\TransactionType;
class CreatePerformaInvoiceTransactionLogic extends AbstractControllerLogic
class CreateProformaInvoiceTransactionLogic extends AbstractControllerLogic
{
/**
@@ -24,8 +18,8 @@ class CreatePerformaInvoiceTransactionLogic extends AbstractControllerLogic
*/
protected function notification():array {
return [
'title' => 'Create Perfoma Invoice Transaction',
'message' => 'You have successfully create performa invoice transaction'
'title' => 'Create Proforma Invoice Transaction',
'message' => 'You have successfully create proforma invoice transaction'
];
}
@@ -35,24 +29,24 @@ class CreatePerformaInvoiceTransactionLogic extends AbstractControllerLogic
/** @var FetchesBooking */
private $fetchesBooking;
/** @var CreatePerformaInvoiceTransactionProcessor */
private $CreatePerformaInvoiceTransactionProcessor;
/** @var CreateProformaInvoiceTransactionProcessor */
private $CreateProformaInvoiceTransactionProcessor;
/**
* FetchBookingLogic constructor.
* @param CanFetchBooking $canFetchBooking
* @param FetchesBooking $fetchesBooking
* @param CreatePerformaInvoiceTransactionProcessor $CreatePerformaInvoiceTransactionProcessor
* @param CreateProformaInvoiceTransactionProcessor $CreateProformaInvoiceTransactionProcessor
*/
public function __construct(
CanFetchBooking $canFetchBooking,
FetchesBooking $fetchesBooking,
CreatePerformaInvoiceTransactionProcessor $CreatePerformaInvoiceTransactionProcessor
CreateProformaInvoiceTransactionProcessor $CreateProformaInvoiceTransactionProcessor
)
{
$this->canFetchBooking = $canFetchBooking;
$this->fetchesBooking = $fetchesBooking;
$this->CreatePerformaInvoiceTransactionProcessor = $CreatePerformaInvoiceTransactionProcessor;
$this->CreateProformaInvoiceTransactionProcessor = $CreateProformaInvoiceTransactionProcessor;
}
@@ -68,7 +62,7 @@ class CreatePerformaInvoiceTransactionLogic extends AbstractControllerLogic
$booking = $this->fetchesBooking->execute(['id' => $request->route('id')]);
$this->CreatePerformaInvoiceTransactionProcessor->execute($booking);
$this->CreateProformaInvoiceTransactionProcessor->execute($booking);
return $this->resourceResponse(new BookingResource($booking));
}
@@ -36,7 +36,7 @@ class ExportsTransactions implements FromQuery, WithHeadingRow, WithMapping
1 => 'PAYMENT',
2 => 'INVOICE',
3 => 'BILL',
4 => 'PERFORMA',
4 => 'PROFORMA',
5 => 'TOP_UP',
6 => 'REFUND',
7 => 'PURCHASE_ORDER',
@@ -25,7 +25,7 @@ use App\Models\Booking;
use App\Models\Document;
use Meneses\LaravelMpdf\Facades\LaravelMpdf;
class CreatePerformaInvoiceTransactionProcessor
class CreateProformaInvoiceTransactionProcessor
{
/** @var CreatesTransaction */
@@ -64,7 +64,7 @@ class CreatePerformaInvoiceTransactionProcessor
private $fetchesCompanyPaymentAttemptLimit;
/**
* CreatePerformaInvoiceTransactionProcessor constructor.
* CreateProformaInvoiceTransactionProcessor constructor.
* @param CreatesTransaction $createsTransaction
* @param GeneratesTransactionBillNumber $generatesTransactionBillNumber
* @param CalculatesBookingPayableAmount $calculatesBookingPayableAmount
@@ -106,7 +106,7 @@ class CreatePerformaInvoiceTransactionProcessor
->whereIn('status', [ApprovalStatus::PENDING_VERIFICATION, ApprovalStatus::APPROVED])
->first();
$billNumber = $this->generatesTransactionBillNumber->execute('PERFORMA-');
$billNumber = $this->generatesTransactionBillNumber->execute('PROFORMA-');
$outstanding = $this->calculatesBookingOutstanding->execute($booking);
@@ -137,7 +137,7 @@ class CreatePerformaInvoiceTransactionProcessor
$transaction_object = new TransactionObject(
$billNumber,
TransactionType::PERFORMA,
TransactionType::PROFORMA,
$transaction->issuer,
$transaction->receiver,
$transaction->recipient_bank_account_id,
@@ -157,13 +157,13 @@ class CreatePerformaInvoiceTransactionProcessor
$supplier = $this->fetchesCompany->execute(['id' => $transaction->receiver]);
$purchase_order_pdf = LaravelMpdf::loadView('pages.pdfs.performa_invoice', ['invoice_transaction' => $perofrma_transaction, 'po_order_transaction' => $po_order_transaction, 'supplier' => $supplier]);
$purchase_order_pdf = LaravelMpdf::loadView('pages.pdfs.proforma_invoice', ['invoice_transaction' => $perofrma_transaction, 'po_order_transaction' => $po_order_transaction, 'supplier' => $supplier]);
$document_object = new DocumentObject(
DocumentType::PERFORMA_INVOICE,
DocumentType::PROFORMA_INVOICE,
[chunk_split('data:application/pdf;base64,'.base64_encode($purchase_order_pdf->output()))],
'',
ApprovalStatus::COMPLETED,
'performa_invoices'
'proforma_invoices'
);
/** @var Document $document */
@@ -17,7 +17,7 @@ final class DocumentType {
public const WALLET_TOP_UP_PAYMENT_PROOF = 'WALLET_TOP_UP_PAYMENT_PROOF';
public const WALLET_REFUND_PAYMENT_PROOF = 'WALLET_REFUND_PAYMENT_PROOF';
public const PERFORMA_INVOICE = 'PERFORMA_INVOICE';
public const PROFORMA_INVOICE = 'PROFORMA_INVOICE';
public const PURCHASE_ORDER = 'PURCHASE_ORDER';
public const DELIVER_ORDER = 'DELIVER_ORDER';
public const INVOICE = 'INVOICE';
@@ -12,7 +12,7 @@ final class TransactionType {
public const BILL = 3;
public const PERFORMA = 4;
public const PROFORMA = 4;
public const TOP_UP = 5;
@@ -2,18 +2,18 @@
namespace App\Http\Controllers\Bookings;
use App\Classes\Modules\Bookings\ControllersLogic\CreatePerformaInvoiceTransactionLogic;
use App\Classes\Modules\Bookings\ControllersLogic\CreateProformaInvoiceTransactionLogic;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
class CreatePerformaInvoiceTransaction
class CreateProformaInvoiceTransaction
{
/**
* @param Request $request
* @param CreatePerformaInvoiceTransactionLogic $logic
* @param CreateProformaInvoiceTransactionLogic $logic
* @return JsonResponse
*/
public function create(Request $request, CreatePerformaInvoiceTransactionLogic $logic): JsonResponse {
public function create(Request $request, CreateProformaInvoiceTransactionLogic $logic): JsonResponse {
return $logic->execute($request);
}
+1 -1
View File
@@ -42,7 +42,7 @@ class BookingResource extends JsonResource
'delivery_order' => new DocumentResource($this->documents()->where('document_type', DocumentType::DELIVER_ORDER)->first()),
'invoice' => new DocumentResource($this->documents()->where('document_type', DocumentType::INVOICE)->first()),
'supplier_delivery_order' => new DocumentResource($this->documents()->where('document_type', DocumentType::SUPPLIER_DELIVER_ORDER)->first()),
'performa_invoice' => new DocumentResource($this->documents()->where('document_type', DocumentType::PERFORMA_INVOICE)->first()),
'proforma_invoice' => new DocumentResource($this->documents()->where('document_type', DocumentType::PROFORMA_INVOICE)->first()),
],
'status' => $this->status,
'created_at' => Carbon::parse($this->created_at)->format('d-m-Y'),
+1 -1
View File
@@ -230,7 +230,7 @@ class FakeBookingTransactions extends Seeder
Constants\TransactionType::PAYMENT,
Constants\TransactionType::INVOICE,
Constants\TransactionType::BILL,
Constants\TransactionType::PERFORMA,
Constants\TransactionType::PROFORMA,
Constants\TransactionType::TOP_UP,
Constants\TransactionType::REFUND,
Constants\TransactionType::PURCHASE_ORDER,
@@ -124,7 +124,7 @@
<button class="btn btn-xs btn-success b-rad-none" v-if="$store.getters.isAdmin && data.purchase_order.status === 1" @click="submit(route('api.booking.po.approval', data.id), 'post', section, true, true)">Approve Purchase Order</button>
<div class="row">
<div class="col-12 col-lg-6">
<document-file-viewer-component :file="data.documents.performa_invoice.files[0]" v-if="data.documents.performa_invoice">
<document-file-viewer-component :file="data.documents.proforma_invoice.files[0]" v-if="data.documents.proforma_invoice">
<template slot="button">
<div class="bg-master-lightest text-center padding-20 pointer b-grey">
<div class="m-b-10">
@@ -149,7 +149,7 @@
</div>
</div>
<button class="btn btn-xs all-caps b-rad-none btn-default bg-master-lightest w-100" @click="submitted = false">Edit Purchase Order</button>
<button class="btn btn-xs all-caps b-rad-none btn-success w-100 m-t-5" v-if="!data.documents.performa_invoice" @click="submit(route('api.booking.performa.create', data.id), 'post', section, true, true)">Generate Perfoma Invoice</button>
<button class="btn btn-xs all-caps b-rad-none btn-success w-100 m-t-5" v-if="!data.documents.proforma_invoice" @click="submit(route('api.booking.proforma.create', data.id), 'post', section, true, true)">Generate Proforma Invoice</button>
</div>
</div>
</div>
@@ -25,7 +25,7 @@
<td class="header-details">
<div class="title">
<strong>
Performa Invoice
Proforma Invoice
</strong>
</div>
+1 -1
View File
@@ -30,5 +30,5 @@ Route::group(['prefix' => 'booking', 'as' => 'booking.', 'namespace' => 'Booking
Route::post('/merge', 'MergeBookingController@merge')->name('merge');
Route::post('{id}/performa/create', 'CreatePerformaInvoiceTransaction@create')->name('performa.create');
Route::post('{id}/proforma/create', 'CreateProformaInvoiceTransaction@create')->name('proforma.create');
});