Merge branch 'amirah' of https://gitlab.com/azfararsyad/lelong into amirah

This commit is contained in:
Amirah22
2022-02-24 11:31:43 +08:00
20 changed files with 974 additions and 83 deletions
+13 -5
View File
@@ -2,6 +2,8 @@
namespace App\Http\Controllers;
use App\Events\PaymentNotify;
use Illuminate\Http\Request;
use Spatie\Permission\Models\Role;
use Spatie\Permission\Models\Permission;
@@ -155,13 +157,13 @@ class ApiController extends Controller
$collection_id = $this->collection_id;
$response = $bill->create(
$collection_id,
'test@gmail.com',
$request->email,
$request->notel,
$request->name,
Money::MYR($total_bayaran),
route('pay.callback'),
'Bayaran Borang',
['redirect_url' => 'http://192.168.0.85:8003/api/pembayaran/response']
['redirect_url' => 'http://192.168.0.88:8003/api/pembayaran/response']
);
// dd($response);
$previous_siri = Resit::orderBy('id','desc')->first();
@@ -218,7 +220,7 @@ class ApiController extends Controller
}
public function callback(Request $request){
// dd('hye');
// dd('hye callback');
$http = new HttpMethodsClient(
new GuzzleHttpClient(),
new GuzzleMessageFactory()
@@ -239,7 +241,8 @@ class ApiController extends Controller
$resit->status = 'PAID';
$resit->paid_at = $data['billplz']['paid_at'];
$resit->save();
event(new PaymentNotify('PAID',$resit->user_id));
// $transactionOnline = Http::get(config('api.url') . '/api/transaction/online/express',[
// 'billplz_id' => $data['billplz']['id']
// ])->json();
@@ -253,6 +256,8 @@ class ApiController extends Controller
$resit->status = 'UNSUCCESSFUL';
$resit->paid_at = null;
$resit->save();
event(new PaymentNotify('UNSUCCESSFUL',$resit->user_id));
return response()->json([
'success' => false,
'resit' => $resit
@@ -261,7 +266,7 @@ class ApiController extends Controller
}
public function response(Request $request){
// dd('hye');
// dd('hye response');
$http = new HttpMethodsClient(
new GuzzleHttpClient(),
new GuzzleMessageFactory()
@@ -287,6 +292,7 @@ class ApiController extends Controller
// $transactionOnline = Http::get(config('api.url') . '/api/transaction/online/express',[
// 'billplz_id' => $data['billplz']['id']
// ])->json();
event(new PaymentNotify('PAID',$resit->user_id));
return response()->json([
'success' => true,
'resit' => $resit
@@ -297,6 +303,8 @@ class ApiController extends Controller
$resit->status = 'UNSUCCESSFUL';
$resit->paid_at = null;
$resit->save();
event(new PaymentNotify('UNSUCCESSFUL',$resit->user_id));
return response()->json([
'success' => false,
'resit' => $resit
@@ -96,6 +96,12 @@ class AuthController extends Controller
'message' => 'User Banned'
], 401);
}
else if($user->status == 'rejected')
{
return response([
'message' => 'Permohonan Ditolak'
], 401);
}
else
{
return response([
@@ -8,6 +8,8 @@ use Spatie\Permission\Models\Permission;
use Illuminate\Support\Facades\Auth;
use App\Models\Cawangan;
use App\Events\PaymentNotify;
class DatabaseController extends Controller
{
/**
@@ -27,6 +29,7 @@ class DatabaseController extends Controller
*/
public function index()
{
event(new PaymentNotify('lulus','8'));
$caw = Cawangan::all();
// $user = Auth::user();
// $user->assignRole('admin');
+51 -27
View File
@@ -6,8 +6,8 @@ use Illuminate\Http\Request;
use Spatie\Permission\Models\Role;
use Spatie\Permission\Models\Permission;
use Illuminate\Support\Facades\Auth;
use App\Models\User;
use PDF;
use App\Models\User;
use App\Models\Cawangan;
use App\Models\JenisEmas;
use App\Models\JenisKarat;
@@ -440,34 +440,35 @@ class LelongController extends Controller
$lelongbid = LelongBid::where('lelong_id','=',$id)->get();
foreach($lelongbid as $bid)
{
$bidders = LelongBidder::where('lelongbid_id','=',$bid->id)->orderByRaw('lelongbidder.masa_bidaan ASC, lelongbidder.hargabida DESC' )->get();
if($bidders)
$highestprice = LelongBidder::where('lelongbid_id','=',$bid->id)->orderByRaw('lelongbidder.hargabida DESC' )->get();
if($highestprice)
{
$count = 0;
foreach($bidders as $bidder)
{
$count = $count + 1;
if($count == 1)
foreach($highestprice as $price){
$bidders = LelongBidder::where('hargabida','=',$price->hargabida)->MIN('lelongbidder.masa_bidaan' )->get();
$count = 0;
foreach($bidders as $bidder)
{
$pemenang = LelongBidder::where('lelongbid_id','=',$bidder->lelongbid_id)
->orderByRaw('lelongbidder.masa_bidaan ASC, lelongbidder.hargabida DESC' )
->first();
$pemenang->status_bidder = 1;
$pemenang->save();
$count = $count + 1;
if($count == 1)
{
$pemenang = LelongBidder::where('id','=',$bidder->id)
->first();
$pemenang->status_bidder = 1;
$pemenang->save();
$updatebid = LelongBid::where('id','=',$bid->id)->first();
$updatebid->hargajual = $bidder->hargabida;
$updatebid->nopembeli = $bidder->user_id;
$updatebid->status_jual = 1;
$updatebid->save();
}
else
{
$kalah = LelongBidder::where('lelongbid_id','=',$bidder->lelongbid_id)
->orderByRaw('lelongbidder.masa_bidaan ASC, lelongbidder.hargabida DESC' )
->first();
$kalah->status_bidder = 1;
$kalah->save();
$updatebid = LelongBid::where('id','=',$bid->id)->first();
$updatebid->hargajual = $bidder->hargabida;
$updatebid->nopembeli = $bidder->user_id;
$updatebid->status_jual = 1;
$updatebid->save();
}
else
{
$kalah = LelongBidder::where('id','=',$bidder->id)
->first();
$kalah->status_bidder = 0;
$kalah->save();
}
}
}
@@ -531,10 +532,23 @@ class LelongController extends Controller
}
public function lelongtaklaku(Request $request){
public function senarailelongtaklaku(Request $request){
$user = Auth::user();
$senarai = CawanganLelong::join('lelong', 'cawangan_lelong.lelong_id', '=', 'lelong.id')
->join('cawangan','cawangan_lelong.caw_id', '=', 'cawangan.id')
->where('cawangan.caw_code', $user->kodcaw)
->get();
return view('lelong.senarailelongtaklaku',compact('senarai'));
}
public function lelongtaklaku($lelong_id){
$lelongtaklaku = LelongBid::join('cawangan', 'lelongbid.kodcaw', '=', 'cawangan.caw_code')
->where('status_jual', 0)
->where('lelongbid.lelong_id', $lelong_id)
->whereNull('t_jual')
->select(
'lelongbid.t_lelong',
@@ -550,6 +564,16 @@ class LelongController extends Controller
'lelongbid.status_jual',
)
->get();
foreach($lelongtaklaku as $index1=>$suratlelongtaklaku){
$suratlelongtaklaku = LelongBid::join('lelong', 'lelongbid.lelong_id', '=', 'lelong.id')
->where('lelongbid.lelong_id', $lelong_id)
->whereNull('t_jual')
->get();
$lelongtaklaku[$index1]['suratlelongtaklaku'] = sizeof($suratlelongtaklaku);
}
return view('lelong.lelongtaklaku',compact('lelongtaklaku'));
}
+113 -19
View File
@@ -3,16 +3,37 @@
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Models\Lelong;
use App\Models\CawanganLelong;
use App\Models\Cawangan;
use App\Models\Resit;
use App\Models\LelongBid;
use App\Models\LelongBidder;
use App\Models\LelongBidMarhun;
use App\Models\Payment;
use App\Models\User;
use Carbon\Carbon;
use Illuminate\Support\Facades\Auth;
class PaymentController extends Controller
{
public function SenaraiPemenang(Request $request){
public function SenaraiLelongBayar(Request $request){
$user = Auth::user();
$senarai = CawanganLelong::join('lelong', 'cawangan_lelong.lelong_id', '=', 'lelong.id')
->join('cawangan','cawangan_lelong.caw_id', '=', 'cawangan.id')
->where('cawangan.caw_code', $user->kodcaw)
->get();
// dd($senarai);
return view('pembayaran.senarailelongbayaran',compact('senarai'));
}
public function SenaraiPemenang($lelong_id){
$lelong_id = 1;
$listwinner = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id')
->where('lelongbidder.status_bidder', 1)
->where('lelongbid.lelong_id', $lelong_id)
@@ -21,8 +42,6 @@ class PaymentController extends Controller
->groupBy('lelongbidder.user_id')
->get()->toArray();
// dd($listwinner);
foreach($listwinner as $index1=>$winner){
$userdetails = User::where('id', $winner['user_id'])->first();
@@ -31,24 +50,10 @@ class PaymentController extends Controller
->where('lelongbidder.status_bidder', 1)
->where('lelongbid.lelong_id', $lelong_id)
->get();
// $totalBid = 0;
// foreach($SAGWin as $SAG){
// $totalBid = $totalBid + $SAG->hargabida;
// }
$listwinner[$index1]['details'] = $userdetails;
$listwinner[$index1]['total_surat'] = sizeof($SAGWin);
$listwinner[$index1]['totalBid'] = $SAGWin->sum('hargabida');
// $listwinner = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id')
// ->join('users', 'lelongbidder.user_id', '=', 'users.id')
// ->where('lelongbidder.status_bidder', 1)
// ->where('lelongbid.lelong_id', $lelongId)
// ->get();
// $totalBid = LelongBidder::where('status_bidder', 1)->sum('hargabida');
}
return view('pembayaran.kaunterpembayaran',compact('listwinner','lelong_id'));
@@ -63,6 +68,7 @@ class PaymentController extends Controller
->where('users.id', $user_id)
->where('lelongbid.lelong_id', $lelong_id)
->select(
'users.id',
'users.name',
'users.nokp',
'users.alamat'
@@ -78,7 +84,9 @@ class PaymentController extends Controller
->where('lelongbid.lelong_id', $lelong_id)
->select('lelongbidder.hargabida',
'lelongbid.hargaasas',
'lelongbid.norujukan')
'lelongbid.norujukan',
'lelongbidder.lelongbid_id'
)
->get();
}
@@ -86,6 +94,92 @@ class PaymentController extends Controller
return view('pembayaran.SAGBidItem',compact('SAGBidItem', 'eachbid'));
}
public function paymentdenokaunter(Request $request){
// dd($request->all());
$currentdate = Carbon::now();
$currentdate = $currentdate->toDateString();
$current = Carbon::now();
$current = new Carbon();
$day = $current->day;
$month = $current->month;
$year = $current->format('y');
$user = Auth::user();
$bid_id = explode(",", $request->eachbid);
foreach($bid_id as $bid){
$eachbid = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id')
->join('users', 'lelongbidder.user_id', '=', 'users.id')
->where('lelongbidder.lelongbid_id', $bid)
->select('lelongbidder.hargabida',
'lelongbid.hargaasas',
'lelongbid.norujukan',
'lelongbidder.lelongbid_id',
'lelongbidder.id as lelongbidder_id'
)
->first();
$previous_siri = Resit::orderBy('id','desc')->first();
if($previous_siri){
$nosiri = $previous_siri->id + 1;
}else{
$nosiri = 1;
}
$reference_no = 'LPKB' . $day . $month . $year . sprintf("%08d", $nosiri);
$resit = new Resit;
$resit->user_id = $request->user_id;
$resit->lelongbid_id = $bid;
$resit->reference_no = $reference_no;
$resit->billplz_id = '';
$resit->total_payment = $request->amaunkiraan;
$resit->resit_type = 2; // 1 = fee , 2 = bid
$resit->status = 'PAID';
$resit->paid_at = $currentdate;
$resit->save();
$payment = Payment::create([
'user_id' => $request->user_id,
'lelongbidder_id' => $eachbid->lelongbidder_id,
'lelongbid_id' => $bid,
'kodcaw' => $user->kodcaw,
'status_payment_opt' => 1,
'status' => 2,
'remark' => 'BAYARAN DI KAUNTER',
'resit_id' => $resit->id,
'total_payment' => $request->amaunkiraan,
'1sen' => $request->ambilansen1,
'5sen' => $request->ambilansen5,
'10sen' => $request->ambilansen10,
'20sen' => $request->ambilansen20,
'50sen' => $request->ambilansen50,
'rm1' => $request->ambilanring1,
'rm5' => $request->ambilanring5,
'rm10' => $request->ambilanring10,
'rm20' => $request->ambilanring20,
'rm50' => $request->ambilanring50,
'rm100' => $request->ambilanring100,
'disahkan_oleh' => $user->id,
'disahkan_pada' => $currentdate
]);
$updatelelbidbidder = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id')
->update(array(
'lelongbid.status_jual' => 1,
'lelongbid.t_jual' => $currentdate
));
}
return redirect()->route('pembayaran.SenaraiLelongBayar')->with('success','Pembayaran Berjaya');
}
public function pengesahanPembayaran(Request $request){
$pengesahanPembayaran = LelongBidder::join('lelongbid', 'lelongbidder.lelongbid_id', '=', 'lelongbid.id')
@@ -34,6 +34,7 @@ class PembidaController extends Controller
// $alluser = User::all();
$alluser = User::doesntHave('roles')
->where('user_type','=',2)
->where('status', '!=', 'rejected')
->get();
// dd($alluser);
@@ -92,6 +93,23 @@ class PembidaController extends Controller
->with('success','Pengesahan Berjaya');
}
public function reject(Request $request)
{
// dd($request->all());
$currentdate = Carbon::now();
$currentdate = $currentdate->toDateString();
$user = User::where('id','=',$request->user_id)->first();
$user->disahkan_pada = $currentdate;
$user->disahkan_oleh = Auth::user()->id;
$user->note = $request->note;
$user->status = 'rejected';
$user->save();
return redirect()->route('pembida.senaraipembida')
->with('unsuccessful','Pengesahan Ditolak');
}
}