forked from goginyan/cryptocurrency-exchange-laravel
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDepositController.php
executable file
·93 lines (74 loc) · 2.63 KB
/
DepositController.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Deposit;
use App\Translog;
use App\User;
use App\Package;
use App\General;
class DepositController extends Controller
{
public function __construct()
{
}
public function index()
{
$deposits = Deposit::where('status', 1)->orderBy('id', 'desc')->get();
$page_title = "Deposit Log";
return view('admin.deposit.deposits', compact('deposits','page_title'));
}
public function requests()
{
$deposits = Deposit::where('status', 0)->orderBy('id', 'desc')->get();
$page_title = "DEPOSIT REQUESTS";
return view('admin.deposit.requests', compact('deposits','page_title'));
}
public function approve(Request $request, $id)
{
$deposit = Deposit::findorFail($id);
$deposit['status'] = 1;
$deposit->save();
$user = User::find($deposit['user_id']);
$user['balance'] = $user->balance + $deposit['amount'];
$user->save();
if ($user->refid != 0)
{
$pack = Package::first();
$gnl= General::first();
$refer = User::find($user->refid);
$coms = ($gnl->refcom*$deposit['amount'])/100;
$refer['balance'] = $refer->balance + $coms;
$refer->save();
$rlog['user_id'] = $refer->id;
$rlog['trxid'] = str_random(16);
$rlog['amount'] = $coms;
$rlog['balance'] = $refer->balance;
$rlog['type'] = 1;
$rlog['details'] = 'Referal Commision';
Translog::create($rlog);
}
$tlog['user_id'] = $user->id;
$tlog['trxid'] = str_random(16);
$tlog['amount'] = $deposit['amount'];
$tlog['balance'] = $user->balance;
$tlog['type'] = 1;
$tlog['details'] = 'Deposit Successfull';
Translog::create($tlog);
$msg = 'Your Deposit Processed Successfully';
send_email($user->email, $user->firstname, 'Purchase Processed', $msg);
$sms = 'Your Deposit Processed Successfully';
send_sms($user->mobile, $sms);
return back()->with('success', 'Deposit Request Approved Successfully!');
}
public function destroy(Deposit $deposit)
{
$user = User::find($deposit['user_id']);
$msg = 'Your Deposit Request canceled by Admin';
send_email($user->email, $user->username, 'Deposit Canceled', $msg);
$sms = 'Your Deposit Request canceled by Admin';
send_sms($user->mobile, $sms);
$deposit['status'] = 2;
$deposit->save();
return back()->with('success', 'Deposit Canceled Successfully!');
}
}