clean up wallet

This commit is contained in:
omair saleh
2022-02-10 10:50:17 +08:00
parent 1585dcfa5a
commit cee0f99dc9
3 changed files with 109 additions and 37 deletions
+1 -1
View File
@@ -22,7 +22,7 @@ class WalletResource extends JsonResource
'amount' => (double) $this->amount,
'company_id' => (int) $this->owner->id,
'transactions' => WalletTransactionResource::collection($this->transactions()->whereIn('status', [2, 3])->orderBy('id', 'DESC')->get()),
'top_up_records' => WalletTransactionResource::collection($this->transactions()->where('type', TransactionType::TOP_UP)->orderBy('id', 'DESC')->get())
'top_up_records' => WalletTransactionResource::collection($this->transactions()->whereNotIn('status', [0])->where('type', TransactionType::TOP_UP)->orderBy('id', 'DESC')->get())
];
}
}
@@ -60,13 +60,11 @@
<div class="font-head fs-10 all-caps">Top Up Records</div>
</div>
</div>
<div class="row" v-if="company.wallet">
<div class="col">
<wallet-top-up-history-component v-for="item in company.wallet.top_up_records" v-bind:key="item.id" :data="item"></wallet-top-up-history-component>
</div>
</div>
<div class="row align-items-center justify-content-center p-t-50 p-b-50" v-if="!company.wallet || !company.wallet.top_up_records.length">
<div class="col-10">
<div class="row align-items-center justify-content-center hint-text">
@@ -1,50 +1,124 @@
<template>
<div class="row">
<div class="col">
<div class="row m-l-0 m-b-10 m-r-0 parentContainer" :class="[{'b-a': item.status === 4}, {'b-danger': item.status === 4}]" >
<div class="row" v-if="item.status === 1">
<div class="col">
<div class="row">
<div class="row m-l-0 m-b-10 m-r-0 parentContainer" >
<div class="col">
<div class="row">
<div class="col p-t-10 p-b-10 p-r-0" :class="[{'bg-master-lighter': item.status === 1 || item.status === 0}, {'bg-white': item.status !== 1 && item.status !== 4}]">
<div class="row m-b-5">
<div class="col-auto">
<div class="font-heading fs-8 muted all-caps">Status</div>
<div class="font-heading fs-10 bold" :class="[{'text-warning': item.status === 0}, {'text-danger': item.status === 1 || item.status === 4}, {'text-success': item.status == 2 && item.status == 3}]">
{{ item.status === 0 ? 'Pedning Verification' : ''}}
</div>
</div>
<div class="col-auto p-l-0">
<div class="font-heading fs-8 muted all-caps">Payment Amount</div>
<div class="font-heading fs-10 bold">
MYR {{(Math.round((item.amount + Number.EPSILON) * 100) / 100).toFixed(2).toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",")}}
</div>
</div>
</div>
<div class="row m-b-5" v-if="$store.getters.isAdmin">
<div class="col" v-if="$store.getters.isAdmin && item.type === 3">
<div class="font-heading fs-8 muted all-caps">Customer Marking</div>
<div class="font-heading fs-10 bold">
Marking & Link
</div>
</div>
</div>
<div class="col">
<div class="row">
<div class="col">
<div class="font-heading fs-8 all-caps" >{{ item.status === 1 ? 'Created On: ' + item.updated_at : 'Paid On:' + item.updated_at }}</div>
<div class="col p-t-10 p-b-10 p-r-0 bg-master-lighter">
<div class="row m-b-5">
<div class="col-auto">
<div class="font-heading fs-8 muted all-caps">Status</div>
<div class="font-heading fs-10 bold text-complete">Pending Verification</div>
</div>
<div class="col-auto p-l-0">
<div class="font-heading fs-8 muted all-caps">Payment Amount</div>
<div class="font-heading fs-10 bold">
MYR {{(Math.round((item.amount + Number.EPSILON) * 100) / 100).toFixed(2).toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",")}}
</div>
</div>
</div>
<div class="row">
<div class="col">
<div class="font-heading fs-8 all-caps" >Submitted On: {{ item.updated_at }}</div>
</div>
</div>
</div>
<div class="col-auto bg-master-light">
<div class="row align-items-center h-100">
<div class="col">
<i class="fa fa-cloud-download muted"></i>
</div>
</div>
</div>
</div>
</div>
<div class="col-auto pointer" :class="[{'bg-master-light': item.status === 0 || item.status === 1 }, {'bg-master-lighter': item.status === 2}]">
<div class="row align-items-center h-100">
<div class="col">
<i class="fa" :class="[{'fa-cloud-download': item.status === 1 || item.status === 2}, {'fa-ban': item.status === 4}, {'muted': item.status === 1 || item.status === 2}, {'text-danger': item.status === 4}]"></i>
<a :href="route('billplz.bill', item.payment_reference)"><i class="fa fa-repeat text-muted"></i></a>
</div>
</div>
</div>
</div>
</div>
<div class="row" v-if="item.status === 2">
<div class="col">
<div class="row m-l-0 m-b-10 m-r-0 parentContainer" >
<div class="col">
<div class="row">
<div class="col">
<div class="row">
<div class="col p-t-10 p-b-10 p-r-0 bg-white">
<div class="row m-b-5">
<div class="col-auto">
<div class="font-heading fs-8 muted all-caps">Status</div>
<div class="font-heading fs-10 bold text-success">Approved</div>
</div>
<div class="col-auto p-l-0">
<div class="font-heading fs-8 muted all-caps">Payment Amount</div>
<div class="font-heading fs-10 bold">
MYR {{(Math.round((item.amount + Number.EPSILON) * 100) / 100).toFixed(2).toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",")}}
</div>
</div>
</div>
<div class="row">
<div class="col">
<div class="font-heading fs-8 all-caps" >Paid On: {{ item.updated_at }}</div>
</div>
</div>
</div>
<div class="col-auto pointer bg-success">
<a :href="route('billplz.bill', item.reference)" target="_blank">
<div class="row align-items-center h-100">
<div class="col">
<i class="fa fa-cloud-download text-white"></i>
</div>
</div>
</a>
</div>
</div>
</div>
<div class="col-auto bg-success" v-if="item.status === 2 || item.status === 3">
</div>
</div>
</div>
</div>
</div>
<div class="row" v-if="item.status === 4">
<div class="col">
<div class="row m-l-0 m-b-10 m-r-0 parentContainer b-a b-danger" >
<div class="col">
<div class="row">
<div class="col">
<div class="row">
<div class="col p-t-10 p-b-10 p-r-0">
<div class="row m-b-5">
<div class="col-auto">
<div class="font-heading fs-8 muted all-caps">Status</div>
<div class="font-heading fs-10 bold text-danger">
Rejected
</div>
</div>
<div class="col-auto p-l-0">
<div class="font-heading fs-8 muted all-caps">Payment Amount</div>
<div class="font-heading fs-10 bold">
MYR {{(Math.round((item.amount + Number.EPSILON) * 100) / 100).toFixed(2).toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",")}}
</div>
</div>
</div>
<div class="row">
<div class="col">
<div class="font-heading fs-8 all-caps" >Rejected On: {{ item.updated_at }}</div>
</div>
</div>
</div>
<div class="col-auto">
<div class="row align-items-center h-100">
<div class="col">
<i class="fa fa-ban text-danger"></i>
</div>
</div>
</div>
</div>
</div>
</div>
</div>