geer-builder 1.2.531 → 1.2.532
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/GCashOut.vue +8 -10
- package/GInvestmentLeads.vue +103 -0
- package/GInvestmentLogin.vue +1 -1
- package/GInvestmentLogs.vue +23 -24
- package/GLogin.vue +2 -1
- package/GRegistration.vue +2 -2
- package/components/Investment/InvestmentListDialog.vue +1 -1
- package/components/Investment/InvestmentStatusDialog.vue +2 -2
- package/dialogs/AddInvestment.vue +41 -20
- package/dialogs/CashoutStatusDialog.vue +1 -1
- package/dialogs/InvestmentBreakdown.vue +83 -0
- package/dialogs/InvestmentLogs.vue +2 -2
- package/package.json +1 -1
package/GCashOut.vue
CHANGED
|
@@ -11,12 +11,12 @@
|
|
|
11
11
|
</g-card>
|
|
12
12
|
<g-card :nomargin="true" class="cashout__box cashout__amount">
|
|
13
13
|
<div class="cash__amount-balance">
|
|
14
|
-
<div class="cashout__content-label cashout_title">Your Wallet Balance</div>
|
|
14
|
+
<div class="cashout__content-label cashout_title">{{metamask ? 'Available Balance' : 'Your Wallet Balance?'}}</div>
|
|
15
15
|
<div class="cash__balance-value text-primary">{{ main_currency }} {{ $_formatNumber(this.walletBal, { decimal: 2 }) }}</div>
|
|
16
16
|
</div>
|
|
17
17
|
|
|
18
18
|
<div class="cash__amount-container">
|
|
19
|
-
<div class="cashout__content-label q-mt-md">How much would you like to cashout
|
|
19
|
+
<div class="cashout__content-label q-mt-md"> {{metamask ? 'How much would you like to withdraw?' : 'How much would you like to cashout?'}} </div>
|
|
20
20
|
<div class="cash__amount-textbox cashout_body">
|
|
21
21
|
<q-input stack-label type="text" v-model.number="cashout_amount" dense style="width:88%" borderless class="input"/>
|
|
22
22
|
<!-- <label >{{main_currency}}</label> -->
|
|
@@ -35,15 +35,14 @@
|
|
|
35
35
|
</div>
|
|
36
36
|
<div class="cashout__content-right">
|
|
37
37
|
<g-card :nomargin="true" class="cashout__box cashout__summary">
|
|
38
|
-
<div class="cashout__content-label cashout_title">Cash out Summary</div>
|
|
38
|
+
<div class="cashout__content-label cashout_title">{{metamask ? 'Withdrawal Summary': 'Cash out Summary'}}</div>
|
|
39
39
|
<div class="cashout_body">
|
|
40
|
-
<div class="summary__content">
|
|
41
|
-
<div class="summary__content-label"
|
|
42
|
-
<div class="summary__content-label" v-else>Cashout Method</div>
|
|
40
|
+
<div class="summary__content" v-if="!metamask">
|
|
41
|
+
<div class="summary__content-label">Cashout Method</div>
|
|
43
42
|
<div class="summary__content-info">{{cashout_choice.method_label}}</div>
|
|
44
43
|
</div>
|
|
45
44
|
<div class="summary__content">
|
|
46
|
-
<div class="summary__content-label">Cashout Amount</div>
|
|
45
|
+
<div class="summary__content-label">{{metamask ? 'Withdrawal Amount': 'Cashout Amount'}}</div>
|
|
47
46
|
<div class="summary__content-info">{{ main_currency }} {{ $_formatNumber(xfield.cashout_amount, { decimal: 2}) }}</div>
|
|
48
47
|
</div>
|
|
49
48
|
|
|
@@ -79,8 +78,8 @@
|
|
|
79
78
|
</div>
|
|
80
79
|
</g-card>
|
|
81
80
|
<div class="button-cashout">
|
|
82
|
-
<q-btn @click="viewStatus" color="primary" class="full-width q-pa-sm status_button" outline>View Cash Out Status</q-btn>
|
|
83
|
-
<q-btn type="submit" :disable="dontsubmit" color="primary" class="full-width q-pa-sm q-mt-sm cashout_button">Proceed on Cash out »</q-btn>
|
|
81
|
+
<q-btn @click="viewStatus" color="primary" class="full-width q-pa-sm status_button" outline v-if="!metamask">View Cash Out Status</q-btn>
|
|
82
|
+
<q-btn type="submit" :disable="dontsubmit" color="primary" class="full-width q-pa-sm q-mt-sm cashout_button">{{metamask? 'CONFIRM ':'Proceed on Cash out '}}»</q-btn>
|
|
84
83
|
</div>
|
|
85
84
|
</div>
|
|
86
85
|
</div>
|
|
@@ -143,7 +142,6 @@ export default {
|
|
|
143
142
|
props:['cashout_choice_hide', 'metamask'],
|
|
144
143
|
async mounted()
|
|
145
144
|
{
|
|
146
|
-
|
|
147
145
|
await this.$_getSlotInfo();
|
|
148
146
|
await this.getCashoutMethod();
|
|
149
147
|
await this.getpayoutmethod();
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="leads-table">
|
|
3
|
+
<q-card class="full-width full-height form member-lead-list">
|
|
4
|
+
<div v-if="lead_list.length > 0" class="list">
|
|
5
|
+
<q-table :loading="loading_table" :pagination.sync="pagination" flat bordered :data="!loading_table ? lead_list : []" :columns="table_column">
|
|
6
|
+
</q-table>
|
|
7
|
+
</div>
|
|
8
|
+
<div v-else class="list">
|
|
9
|
+
<div class="icon" style="text-align: center">
|
|
10
|
+
<q-icon class="q-mr-sm" name="fas fa-exclamation-circle" style="font-size: 100px; color: #3887d1;"></q-icon>
|
|
11
|
+
</div>
|
|
12
|
+
<div class="no-leads" style="height: 50%; width: 100% !important; text-align: center; font-size: 40px; color: gray">
|
|
13
|
+
No Affiliate Yet
|
|
14
|
+
</div>
|
|
15
|
+
</div>
|
|
16
|
+
</q-card>
|
|
17
|
+
<q-dialog v-model="is_slot_create_dialog_open">
|
|
18
|
+
<g-code-vault @closePopup="is_slot_create_dialog_open = false;" :lead_info="lead_info"></g-code-vault>
|
|
19
|
+
</q-dialog>
|
|
20
|
+
<q-dialog v-model="is_profile_dialog_open">
|
|
21
|
+
<g-profile @closePopup="is_profile_dialog_open = false" :mode="'dialog'" :create_slot="true" :prop_user_info="lead_info.lead"></g-profile>
|
|
22
|
+
</q-dialog>
|
|
23
|
+
</div>
|
|
24
|
+
</template>
|
|
25
|
+
|
|
26
|
+
<script>
|
|
27
|
+
import DB_USER from './models/DB_USER';
|
|
28
|
+
import GlobalMixins from './mixins/global_mixins';
|
|
29
|
+
import {formatDate} from './utilities/DateUtils';
|
|
30
|
+
import GCodeVault from './GCodeVault';
|
|
31
|
+
import GProfile from './components/GProfile';
|
|
32
|
+
export default
|
|
33
|
+
{
|
|
34
|
+
name: "GLeadsComponent",
|
|
35
|
+
components: { GCodeVault, GProfile},
|
|
36
|
+
mixins: [GlobalMixins],
|
|
37
|
+
filters: { },
|
|
38
|
+
data:() =>(
|
|
39
|
+
{
|
|
40
|
+
pagination: { rowsPerPage: 10 },
|
|
41
|
+
loading_table:false,
|
|
42
|
+
is_profile_dialog_open: false,
|
|
43
|
+
db_user: new DB_USER(),
|
|
44
|
+
lead_list: [],
|
|
45
|
+
is_dialog_open : false,
|
|
46
|
+
is_slot_create_dialog_open:false,
|
|
47
|
+
lead_info:{},
|
|
48
|
+
table_column:
|
|
49
|
+
[
|
|
50
|
+
{
|
|
51
|
+
name : 'email',
|
|
52
|
+
label : 'Email',
|
|
53
|
+
field : row => row.email,
|
|
54
|
+
align : 'left',
|
|
55
|
+
required: true,
|
|
56
|
+
sortable: true,
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
name : 'full_name',
|
|
60
|
+
label : 'Name',
|
|
61
|
+
field : row => row.full_name,
|
|
62
|
+
align : 'left',
|
|
63
|
+
required: true,
|
|
64
|
+
sortable: true,
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
name : 'created_date',
|
|
68
|
+
label : 'Date Joined',
|
|
69
|
+
field : row => row.created_date,
|
|
70
|
+
format : val => formatDate(val, 'MM/DD/YY (hh:mm A)'),
|
|
71
|
+
align : 'left',
|
|
72
|
+
required: true,
|
|
73
|
+
sortable: true,
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
name : 'contact_number',
|
|
77
|
+
label : 'Contact Number',
|
|
78
|
+
field : row => row.contact_number,
|
|
79
|
+
align : 'center',
|
|
80
|
+
required: true,
|
|
81
|
+
sortable: true,
|
|
82
|
+
}
|
|
83
|
+
],
|
|
84
|
+
}),
|
|
85
|
+
async mounted() {
|
|
86
|
+
await this.$_getSlotInfo();
|
|
87
|
+
await this.$bind('lead_list', this.db_user.collection().where('sponsor', '==', this.current_slot_info.slot_code));
|
|
88
|
+
console.log(this.lead_list);
|
|
89
|
+
},
|
|
90
|
+
methods: {
|
|
91
|
+
createSlot(lead)
|
|
92
|
+
{
|
|
93
|
+
this.lead_info.lead = lead;
|
|
94
|
+
this.is_profile_dialog_open = true;
|
|
95
|
+
},
|
|
96
|
+
open_dialog()
|
|
97
|
+
{
|
|
98
|
+
this.is_dialog_open=true;
|
|
99
|
+
}
|
|
100
|
+
},
|
|
101
|
+
computed: { }
|
|
102
|
+
}
|
|
103
|
+
</script>
|
package/GInvestmentLogin.vue
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
import GlobalMixins from './mixins/global_mixins';
|
|
10
10
|
import PaymentProcessor from './contracts/PaymentProcessor.json';
|
|
11
11
|
import USDT from './contracts/USDT.json';
|
|
12
|
-
import settings from './settings';
|
|
12
|
+
import settings from './settings/settings.js';
|
|
13
13
|
import { ethers, Contract } from 'ethers';
|
|
14
14
|
export default
|
|
15
15
|
{
|
package/GInvestmentLogs.vue
CHANGED
|
@@ -178,7 +178,6 @@ export default
|
|
|
178
178
|
}),
|
|
179
179
|
async mounted() {
|
|
180
180
|
await this.getTableData();
|
|
181
|
-
this.mbot = true;
|
|
182
181
|
if(this.mbot)
|
|
183
182
|
{
|
|
184
183
|
await this.mbotLog();
|
|
@@ -188,29 +187,29 @@ export default
|
|
|
188
187
|
{
|
|
189
188
|
async mbotLog()
|
|
190
189
|
{
|
|
191
|
-
this.table_data.forEach(element =>
|
|
192
|
-
{
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
});
|
|
190
|
+
// this.table_data.forEach(element =>
|
|
191
|
+
// {
|
|
192
|
+
// if(element.type == 'direct_invest')
|
|
193
|
+
// {
|
|
194
|
+
// element.message = `Your account <b>${element.current_owner_info.email}</b> earned direct referral amounting to <b>${element.amount} USDT</b> from invest a package ${element.cause_info.owner_info.email}`;
|
|
195
|
+
// }
|
|
196
|
+
// else if(element.type == 'unilevel_invest')
|
|
197
|
+
// {
|
|
198
|
+
// element.message = `Your account <b>${element.current_owner_info.email}</b> earned unilevel amounting to <b>${element.amount} USDT</b> from ${element.cause_info.owner_info.email}`;
|
|
199
|
+
// }
|
|
200
|
+
// else if(element.type == 'receive_interest')
|
|
201
|
+
// {
|
|
202
|
+
// // element.message = `Your account <b>${element.current_owner_info.email}</b> earned direct referral amounting to <b>USD 100.00</b> from invest a package IVABASNKNVL-PH`;
|
|
203
|
+
// }
|
|
204
|
+
// else if(element.type == 'capital_investment')
|
|
205
|
+
// {
|
|
206
|
+
// // element.message = `Your account <b>${element.current_owner_info.email}</b> earned direct referral amounting to <b>USD 100.00</b> from invest a package IVABASNKNVL-PH`;
|
|
207
|
+
// }
|
|
208
|
+
// else if(element.type == 'create_investment')
|
|
209
|
+
// {
|
|
210
|
+
// // element.message = `Your account <b>${element.current_owner_info.email}</b> earned direct referral amounting to <b>USD 100.00</b> from invest a package IVABASNKNVL-PH`;
|
|
211
|
+
// }
|
|
212
|
+
// });
|
|
214
213
|
console.log(this.table_data);
|
|
215
214
|
},
|
|
216
215
|
async getTableData()
|
package/GLogin.vue
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
<div class="g-login">
|
|
3
3
|
<q-form @submit="submitLogin()">
|
|
4
4
|
<div class="g-login__fields">
|
|
5
|
-
<div class="label">Emails Address / Slot Code</div>
|
|
5
|
+
<div class="label"> {{mbot ? 'Emails Address':'Emails Address / Slot Code'}}</div>
|
|
6
6
|
<div class="input">
|
|
7
7
|
<q-input :disable="is_submitting" v-model="form_data.email" dense placeholder="Enter Email" class="input input-email" outlined stack-label/>
|
|
8
8
|
</div>
|
|
@@ -83,6 +83,7 @@ export default
|
|
|
83
83
|
terms: String,
|
|
84
84
|
val: Boolean,
|
|
85
85
|
hide_registration: Boolean,
|
|
86
|
+
mbot:Boolean
|
|
86
87
|
|
|
87
88
|
},
|
|
88
89
|
components: { GRegistration,GForgotPassword },
|
package/GRegistration.vue
CHANGED
|
@@ -62,7 +62,7 @@
|
|
|
62
62
|
|
|
63
63
|
<!-- create account -->
|
|
64
64
|
<div class="g-registration__fields q-mt-md">
|
|
65
|
-
<q-btn :loading="is_submitting" unelevated class="full-width" color="primary" type="submit">Sign Up</q-btn>
|
|
65
|
+
<q-btn :loading="is_submitting" unelevated class="full-width" color="primary" type="submit"> {{mbot ? 'Register' : 'Sign Up'}}</q-btn>
|
|
66
66
|
</div>
|
|
67
67
|
<div v-if="!mbot" class="term"><q-checkbox v-model="val" /> <span @click="is_term_and_condition_open =true" class="term_span"> By clicking sign-up, I have read and I agree to the Company Policies, Terms and Conditions, Rules and Regulation, Code of Conduct And Ethical Standards and the Privacy Policy</span></div>
|
|
68
68
|
<!--
|
|
@@ -211,7 +211,7 @@ export default
|
|
|
211
211
|
|
|
212
212
|
this.$q.dialog(
|
|
213
213
|
{
|
|
214
|
-
title: 'An Error Has Occured',
|
|
214
|
+
title: this.mbot ? 'Error': 'An Error Has Occured' ,
|
|
215
215
|
message: error.message
|
|
216
216
|
});
|
|
217
217
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<q-card :style="`min-width: ${ $q.platform.is.mobile ? '100%' : '600px' };`" class="form add-slot">
|
|
3
3
|
<q-bar class='bg-primary text-white q-pa-lg'>
|
|
4
|
-
<q-icon class='q-mr-sm' name='
|
|
5
|
-
<b>
|
|
4
|
+
<q-icon class='q-mr-sm' name='stacked_line_chart'></q-icon>
|
|
5
|
+
<b>Trade Status</b>
|
|
6
6
|
<q-space />
|
|
7
7
|
<q-btn dense flat icon='close' v-close-popup><q-tooltip content-class='bg-white text-primary'>Close</q-tooltip></q-btn>
|
|
8
8
|
</q-bar>
|
|
@@ -2,10 +2,9 @@
|
|
|
2
2
|
<q-card :style="`min-width: ${ $q.platform.is.mobile ? '100%' : '400px' };`" class="form add-slot">
|
|
3
3
|
<!-- HEADER -->
|
|
4
4
|
<q-bar class="bg-primary text-white q-pa-lg">
|
|
5
|
-
<q-icon class="q-mr-sm" name="
|
|
6
|
-
<b>
|
|
5
|
+
<q-icon class="q-mr-sm" name="credit_card"></q-icon>
|
|
6
|
+
<b>DEPOSIT</b>
|
|
7
7
|
<q-space />
|
|
8
|
-
|
|
9
8
|
<q-btn dense flat icon="close" v-close-popup>
|
|
10
9
|
<q-tooltip content-class="bg-white text-primary">Close</q-tooltip>
|
|
11
10
|
</q-btn>
|
|
@@ -13,11 +12,10 @@
|
|
|
13
12
|
<div class="desktop-only">
|
|
14
13
|
<q-card-section class="content">
|
|
15
14
|
<q-stepper flat v-model="step" vertical color="primary" animated>
|
|
16
|
-
<q-step :name="1" title="Create your plan" icon="settings" :done="step > 1">
|
|
17
15
|
<q-form @submit.prevent="confirmPlan()">
|
|
18
16
|
<div class="row justify-center">
|
|
19
17
|
<div class="q-py-md col-12 plan-amount-text text-center">
|
|
20
|
-
<b>
|
|
18
|
+
<b>Available Balance</b> :
|
|
21
19
|
<div class="text-primary" v-if="current_slot_info">
|
|
22
20
|
{{ $_formatNumber(current_slot_info.wallet ? current_slot_info.wallet : 0, { decimal: 2 }) }} USDT
|
|
23
21
|
</div>
|
|
@@ -30,9 +28,8 @@
|
|
|
30
28
|
</div>
|
|
31
29
|
<q-btn type="submit" :loading="submit_loading" unelevated class="full-width q-mt-md" color="primary"><q-icon name="fa fa-check q-mr-sm" size="14px"></q-icon> Confirm</q-btn>
|
|
32
30
|
</q-form>
|
|
33
|
-
</q-step>
|
|
34
31
|
|
|
35
|
-
<q-step :name="2" title="Verify All Details" icon="assignment" :done="step > 2">
|
|
32
|
+
<!-- <q-step :name="2" title="Verify All Details" icon="assignment" :done="step > 2">
|
|
36
33
|
<div class="add-slot__verify-details">
|
|
37
34
|
<q-table flat :data="investment_preview" :columns="table_column"></q-table>
|
|
38
35
|
</div>
|
|
@@ -48,18 +45,21 @@
|
|
|
48
45
|
<div class="q-pt-sm q-mr-lg q-ml-lg">Your investment has been successfully created!</div>
|
|
49
46
|
</div>
|
|
50
47
|
<q-btn @click="emitClose" v-close-popup type="button" :loading="submit_loading" unelevated class="full-width q-mt-md" color="primary"><q-icon name="fa fa-check q-mr-sm" size="14px"></q-icon> Transaction Complete</q-btn>
|
|
51
|
-
</q-step>
|
|
48
|
+
</q-step> -->
|
|
52
49
|
</q-stepper>
|
|
53
50
|
</q-card-section>
|
|
54
51
|
</div>
|
|
52
|
+
<q-dialog :maximized="$q.platform.is.mobile" transition-show="slide-up" transition-hide="slide-down" v-model="is_investment_breakdown_open">
|
|
53
|
+
<investment-breakdown :breakdown_details="investment_info" @closeDialog="confirmDetails"></investment-breakdown>
|
|
54
|
+
</q-dialog>
|
|
55
55
|
</q-card>
|
|
56
56
|
</template>
|
|
57
57
|
|
|
58
58
|
<script>
|
|
59
59
|
import GlobalMixins from '../mixins/global_mixins';
|
|
60
60
|
import GRegistration from './../GRegistration';
|
|
61
|
-
import
|
|
62
|
-
import {
|
|
61
|
+
import InvestmentBreakdown from './InvestmentBreakdown.vue';
|
|
62
|
+
import {QSpinnerFacebook } from 'quasar'
|
|
63
63
|
|
|
64
64
|
|
|
65
65
|
export default
|
|
@@ -67,6 +67,7 @@ export default
|
|
|
67
67
|
mixins: [GlobalMixins],
|
|
68
68
|
data: () =>
|
|
69
69
|
({
|
|
70
|
+
is_investment_breakdown_open:false,
|
|
70
71
|
investment_packages:'',
|
|
71
72
|
submit_loading : false,
|
|
72
73
|
step : 1,
|
|
@@ -108,9 +109,12 @@ export default
|
|
|
108
109
|
format: val => `${val.toFixed(2)}`,
|
|
109
110
|
sortable: true,
|
|
110
111
|
}
|
|
111
|
-
]
|
|
112
|
+
],
|
|
113
|
+
investment_info:{
|
|
114
|
+
investment_preview:[]
|
|
115
|
+
}
|
|
112
116
|
}),
|
|
113
|
-
components: { GRegistration },
|
|
117
|
+
components: { GRegistration, InvestmentBreakdown },
|
|
114
118
|
props:
|
|
115
119
|
{
|
|
116
120
|
is_show: Boolean,
|
|
@@ -136,13 +140,17 @@ export default
|
|
|
136
140
|
{
|
|
137
141
|
this.$q.dialog({ title: "Something's not quite right", message: "Please choose a plan." });
|
|
138
142
|
}
|
|
139
|
-
else if(this.investment_amount <
|
|
143
|
+
else if(this.investment_amount < 1)
|
|
144
|
+
{
|
|
145
|
+
this.$q.dialog({ title: "Something's not quite right", message: "Please enter a valid amount" });
|
|
146
|
+
}
|
|
147
|
+
else if(this.investment_amount < this.plan.investment_minimum)
|
|
140
148
|
{
|
|
141
149
|
this.$q.dialog({ title: "Something's not quite right", message: "Investment amount is below the minimum required." });
|
|
142
150
|
}
|
|
143
151
|
else
|
|
144
152
|
{
|
|
145
|
-
this.step++;
|
|
153
|
+
// this.step++;
|
|
146
154
|
let days_left = this.plan.investment_duration
|
|
147
155
|
let ctr = 0;
|
|
148
156
|
let start_date = new Date();
|
|
@@ -163,10 +171,13 @@ export default
|
|
|
163
171
|
ctr++;
|
|
164
172
|
}
|
|
165
173
|
while(days_left > 0)
|
|
166
|
-
}
|
|
167
174
|
|
|
175
|
+
this.investment_info.investment_preview = this.investment_preview;
|
|
176
|
+
this.investment_info.plan = this.plan;
|
|
177
|
+
this.investment_info.amount = this.investment_amount;
|
|
178
|
+
this.is_investment_breakdown_open = true;
|
|
179
|
+
}
|
|
168
180
|
this.submit_loading = false;
|
|
169
|
-
|
|
170
181
|
},
|
|
171
182
|
addDaysToDate(days)
|
|
172
183
|
{
|
|
@@ -174,12 +185,13 @@ export default
|
|
|
174
185
|
res.setDate(res.getDate() + days);
|
|
175
186
|
return res;
|
|
176
187
|
},
|
|
177
|
-
async confirmDetails()
|
|
188
|
+
async confirmDetails(details)
|
|
178
189
|
{
|
|
190
|
+
this.is_investment_breakdown_open = false
|
|
179
191
|
this.submit_loading = true;
|
|
180
192
|
let fields = {}
|
|
181
|
-
fields.plan =
|
|
182
|
-
fields.amount =
|
|
193
|
+
fields.plan = details.plan;
|
|
194
|
+
fields.amount = Number(details.amount);
|
|
183
195
|
fields.slot_id = this.current_slot_info.id;
|
|
184
196
|
|
|
185
197
|
if(fields.amount < this.plan.invesment_minimum)
|
|
@@ -194,6 +206,14 @@ export default
|
|
|
194
206
|
}
|
|
195
207
|
else
|
|
196
208
|
{
|
|
209
|
+
this.$q.loading.show({
|
|
210
|
+
spinner: QSpinnerFacebook,
|
|
211
|
+
spinnerColor: 'white',
|
|
212
|
+
spinnerSize: 140,
|
|
213
|
+
backgroundColor: 'primary',
|
|
214
|
+
message: 'Some important process is in progress. Hang on...',
|
|
215
|
+
messageColor: 'black'
|
|
216
|
+
})
|
|
197
217
|
try
|
|
198
218
|
{
|
|
199
219
|
let res = await this.$_fbCall('memberCreateInvestment', { data: fields});
|
|
@@ -204,8 +224,9 @@ export default
|
|
|
204
224
|
this.submit_loading = false;
|
|
205
225
|
this.step --;
|
|
206
226
|
}
|
|
207
|
-
this.step++
|
|
208
227
|
this.submit_loading = false;
|
|
228
|
+
this.$q.loading.hide();
|
|
229
|
+
this.$emit('closeDialog');
|
|
209
230
|
}
|
|
210
231
|
}
|
|
211
232
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<q-card class="direct-downline" style="width: 1300px; height: 700px;max-width: 1700px;">
|
|
3
3
|
<div class="downline-container">
|
|
4
|
-
<div class="title text-primary">Cashout List</div>
|
|
4
|
+
<div class="title text-primary"> {{metamask ? 'Withdrawal List': 'Cashout List'}}</div>
|
|
5
5
|
<q-table :loading="table_loading"
|
|
6
6
|
separator="cell"
|
|
7
7
|
flat
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<q-card class="investment-breakdown">
|
|
3
|
+
<div class="table-holder">
|
|
4
|
+
<q-table :pagination.sync="pagination" flat :data="investment_breakdown" :columns="table_column"></q-table>
|
|
5
|
+
</div>
|
|
6
|
+
<div class="button-holder">
|
|
7
|
+
<q-btn color="primary" @click="emitFields" icon="check" label="confirm" class="confirm-button q-mr-sm"/>
|
|
8
|
+
<q-btn color="primary" icon="arrow_back" label="back" v-close-popup class="cancel-button"/>
|
|
9
|
+
</div>
|
|
10
|
+
</q-card>
|
|
11
|
+
</template>
|
|
12
|
+
|
|
13
|
+
<script>
|
|
14
|
+
export default
|
|
15
|
+
{
|
|
16
|
+
props: {
|
|
17
|
+
breakdown_details: Object,
|
|
18
|
+
},
|
|
19
|
+
filters: { },
|
|
20
|
+
data:() =>(
|
|
21
|
+
{
|
|
22
|
+
pagination:
|
|
23
|
+
{
|
|
24
|
+
rowsPerPage: 10 // current rows per page being displayed
|
|
25
|
+
},
|
|
26
|
+
investment_breakdown:[],
|
|
27
|
+
table_column :
|
|
28
|
+
[
|
|
29
|
+
{
|
|
30
|
+
name : 'interest_date',
|
|
31
|
+
label : 'Date of Interest',
|
|
32
|
+
field : row => row.interest_date,
|
|
33
|
+
align : 'center',
|
|
34
|
+
required: true,
|
|
35
|
+
format: val => `${val.toLocaleDateString()}`,
|
|
36
|
+
sortable: true,
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
name : 'projection',
|
|
40
|
+
label : 'Projected Interest',
|
|
41
|
+
field : row => row.projection,
|
|
42
|
+
align : 'center',
|
|
43
|
+
required: true,
|
|
44
|
+
format: val => `${val}`,
|
|
45
|
+
sortable: true,
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
name : 'projected_income',
|
|
49
|
+
label : 'Projected Income',
|
|
50
|
+
field : row => row.projected_income,
|
|
51
|
+
align : 'center',
|
|
52
|
+
required: true,
|
|
53
|
+
format: val => `${val.toFixed(2)}`,
|
|
54
|
+
sortable: true,
|
|
55
|
+
}
|
|
56
|
+
]
|
|
57
|
+
}),
|
|
58
|
+
mounted()
|
|
59
|
+
{
|
|
60
|
+
this.investment_breakdown = this.breakdown_details.investment_preview ? this.breakdown_details.investment_preview : [] ;
|
|
61
|
+
},
|
|
62
|
+
methods:
|
|
63
|
+
{
|
|
64
|
+
emitFields()
|
|
65
|
+
{
|
|
66
|
+
this.$emit('closeDialog', this.breakdown_details);
|
|
67
|
+
},
|
|
68
|
+
},
|
|
69
|
+
computed: { }
|
|
70
|
+
}
|
|
71
|
+
</script>
|
|
72
|
+
|
|
73
|
+
<style lang="scss">
|
|
74
|
+
.investment-breakdown
|
|
75
|
+
{
|
|
76
|
+
padding: 20px;
|
|
77
|
+
.table-holder{
|
|
78
|
+
}
|
|
79
|
+
.button-holder{
|
|
80
|
+
text-align: end;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
</style>
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<q-card class="investment-logs">
|
|
3
3
|
<q-bar class='bg-primary text-white q-pa-lg'>
|
|
4
|
-
<q-icon class='q-mr-sm' name='
|
|
5
|
-
<b>{{investment_info.plan.investment_name}}
|
|
4
|
+
<q-icon class='q-mr-sm' name='stacked_line_chart'></q-icon>
|
|
5
|
+
<b>{{investment_info.plan.investment_name}} History</b>
|
|
6
6
|
<q-space />
|
|
7
7
|
<q-btn dense flat icon='close' v-close-popup><q-tooltip content-class='bg-white text-primary'>Close</q-tooltip></q-btn>
|
|
8
8
|
</q-bar>
|