Compare commits
4 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
7cfa1dd8df | ||
|
af7c67312f | ||
|
8fe73b5327 | ||
|
62814cd226 |
@ -4,33 +4,14 @@ namespace App\Http\Controllers\Admin;
|
|||||||
|
|
||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
use Carbon\Carbon;
|
|
||||||
use App\Models\Transactions;
|
use App\Models\Transactions;
|
||||||
use App\Models\Transaction;
|
|
||||||
use App\Models\Refund;
|
|
||||||
use Illuminate\Support\Facades\Auth;
|
use Illuminate\Support\Facades\Auth;
|
||||||
|
|
||||||
class AdminDashboardController extends Controller
|
class AdminDashboardController extends Controller
|
||||||
{
|
{
|
||||||
public function index(){
|
public function index(){
|
||||||
$sumSettlement = 0;
|
|
||||||
$sumCancelled = 0;
|
|
||||||
$sumRefund = 0;
|
|
||||||
$currentYear = Carbon::now()->year;
|
|
||||||
$dataChartTransaction = [];
|
|
||||||
$dataChartRefund = [];
|
|
||||||
for($bulan = 1; $bulan <= 12; $bulan++){
|
|
||||||
$transaction = Transaction::whereMonth('created_at',$bulan)->whereYear('created_at', $currentYear)->sum('total_bayar');
|
|
||||||
// $transaction = Transaction::where('status','finished')->whereMonth('created_at',$bulan)->whereYear('created_at', $currentYear)->sum('total_bayar');
|
|
||||||
// $refund = Refund::whereMonth('created_at',$bulan)->whereYear('created_at', $currentYear)->sum('total');
|
|
||||||
// $refund = Refund::where('status','Partial Refund')->whereMonth('created_at',$bulan)->whereYear('created_at', $currentYear)->sum('total');
|
|
||||||
$dataChartTransaction[] = intval($transaction);
|
|
||||||
// $dataChartRefund[] = intval($refund);
|
|
||||||
}
|
|
||||||
return view('admin.index',[
|
return view('admin.index',[
|
||||||
"transaction"=>Transactions::allTransactions(),
|
"transaction"=>Transactions::allTransactions()
|
||||||
"dataChartTransaction" => $dataChartTransaction,
|
|
||||||
// "dataChartRefund" => $dataChartRefund
|
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3,12 +3,10 @@
|
|||||||
namespace App\Http\Controllers\Login;
|
namespace App\Http\Controllers\Login;
|
||||||
|
|
||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
use App\Mail\verificationMail;
|
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
use Illuminate\Support\Facades\Auth;
|
use Illuminate\Support\Facades\Auth;
|
||||||
use Illuminate\Support\Facades\Hash;
|
use Illuminate\Support\Facades\Hash;
|
||||||
use App\Models\User;
|
use App\Models\User;
|
||||||
use Illuminate\Support\Facades\Mail;
|
|
||||||
use Illuminate\Support\Str;
|
use Illuminate\Support\Str;
|
||||||
use Illuminate\Support\Facades\Storage;
|
use Illuminate\Support\Facades\Storage;
|
||||||
use thiagoalessio\TesseractOCR\TesseractOCR;
|
use thiagoalessio\TesseractOCR\TesseractOCR;
|
||||||
@ -34,6 +32,10 @@ class LoginController extends Controller
|
|||||||
|
|
||||||
public function login()
|
public function login()
|
||||||
{
|
{
|
||||||
|
$provinces = Province::all();
|
||||||
|
$cities = City::all();
|
||||||
|
$districts = District::all();
|
||||||
|
$villages = Village::all();
|
||||||
return view('index');
|
return view('index');
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -45,18 +47,10 @@ class LoginController extends Controller
|
|||||||
public function authenticate(Request $request)
|
public function authenticate(Request $request)
|
||||||
{
|
{
|
||||||
// dd($request);
|
// dd($request);
|
||||||
$credentials = $request->validate(
|
$credentials = $request->validate([
|
||||||
[
|
'email' => ['required', 'email'],
|
||||||
'email' => ['required', 'email'],
|
'password' => ['required', 'min:8'],
|
||||||
'password' => ['required', 'min:8'],
|
]);
|
||||||
],
|
|
||||||
[
|
|
||||||
'email.required' => 'Alamat email wajib diisi.',
|
|
||||||
'email.email' => 'Alamat email harus berformat valid.',
|
|
||||||
'password.required' => 'Password wajib diisi.',
|
|
||||||
'password.min' => 'Password harus memiliki panjang minimal 8 karakter.',
|
|
||||||
]
|
|
||||||
);
|
|
||||||
|
|
||||||
if (Auth::attempt($credentials)) {
|
if (Auth::attempt($credentials)) {
|
||||||
if (Auth::user()->status == 'Finished') {
|
if (Auth::user()->status == 'Finished') {
|
||||||
@ -67,22 +61,17 @@ class LoginController extends Controller
|
|||||||
} else {
|
} else {
|
||||||
return redirect()->intended('user');
|
return redirect()->intended('user');
|
||||||
}
|
}
|
||||||
} else if(Auth::user()->status == 'Rejected'){
|
|
||||||
Session::flash('message', 'Akun ditolak karena tidak memenuhi persyaratan');
|
|
||||||
return redirect()->back();
|
|
||||||
} else {
|
} else {
|
||||||
Session::flash('message', 'Akun tidak ditemukan atau sedang dalam pengajuan');
|
Session::flash('message', 'Akun tidak ditemukan atau sedang dalam pengajuan');
|
||||||
return redirect()->back();
|
return redirect()->back();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// $error = $credentials->errors();
|
|
||||||
// ->withInput($request->except('key'))
|
|
||||||
// ->withErrors($validator)
|
|
||||||
|
|
||||||
return redirect()
|
return redirect()
|
||||||
->back()
|
->back()
|
||||||
->withErrors($credentials)
|
->withErrors([
|
||||||
|
'email' => 'Email dengan' . $credentials['email'] . ' tidak tersedia.',
|
||||||
|
])
|
||||||
->onlyInput('email');
|
->onlyInput('email');
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -104,6 +93,7 @@ class LoginController extends Controller
|
|||||||
|
|
||||||
public function register(Request $request)
|
public function register(Request $request)
|
||||||
{
|
{
|
||||||
|
// input
|
||||||
$nama_depan = $request->get('nama-depan');
|
$nama_depan = $request->get('nama-depan');
|
||||||
$nama_belakang = $request->get('nama-belakang');
|
$nama_belakang = $request->get('nama-belakang');
|
||||||
$tanggal_lahir = $request->get('tanggal-lahir');
|
$tanggal_lahir = $request->get('tanggal-lahir');
|
||||||
@ -144,7 +134,7 @@ class LoginController extends Controller
|
|||||||
$image->greyscale(); // Convert to grayscale
|
$image->greyscale(); // Convert to grayscale
|
||||||
$image->contrast(10); // Increase contrast, adjust the value as needed
|
$image->contrast(10); // Increase contrast, adjust the value as needed
|
||||||
|
|
||||||
$preprocessedfotoKTP = public_path('storage/preprocessed/preprocessed_image.jpg');
|
$preprocessedfotoKTP = storage_path('preprocessed_image.jpg');
|
||||||
$image->save($preprocessedfotoKTP);
|
$image->save($preprocessedfotoKTP);
|
||||||
|
|
||||||
$result = (new TesseractOCR($preprocessedfotoKTP))->run();
|
$result = (new TesseractOCR($preprocessedfotoKTP))->run();
|
||||||
@ -152,10 +142,9 @@ class LoginController extends Controller
|
|||||||
// (5) Normalize
|
// (5) Normalize
|
||||||
|
|
||||||
$lines = explode("\n", $result);
|
$lines = explode("\n", $result);
|
||||||
$namaOCR = '';
|
|
||||||
$nikOCR = '';
|
$nikOCR = '';
|
||||||
$nikInputan = $nik;
|
$nikInputan = $nik;
|
||||||
$namaInputan = $nama_depan . ' ' . $nama_belakang;
|
$namaInputan = $nama_depan.' '.$nama_belakang;
|
||||||
|
|
||||||
foreach ($lines as $line) {
|
foreach ($lines as $line) {
|
||||||
// Mencari NIK
|
// Mencari NIK
|
||||||
@ -171,7 +160,7 @@ class LoginController extends Controller
|
|||||||
|
|
||||||
//Selesai
|
//Selesai
|
||||||
|
|
||||||
$persentase_kemiripan = (similar_text($nikInputan, $nikOCR, $percent) + similar_text($namaOCR, $namaOCR, $percent)) / 2;
|
$persentase_kemiripan = (similar_text($nikInputan, $nikOCR, $percent) + similar_text($namaOCR, $namaOCR, $percent))/2;
|
||||||
// $status = 'Progress';
|
// $status = 'Progress';
|
||||||
|
|
||||||
// if (similar_text($nikInputan, $nikOCR, $percent) >= 70 && similar_text($namaOCR, $namaOCR, $percent) >= 70) {
|
// if (similar_text($nikInputan, $nikOCR, $percent) >= 70 && similar_text($namaOCR, $namaOCR, $percent) >= 70) {
|
||||||
@ -179,6 +168,7 @@ class LoginController extends Controller
|
|||||||
// } else {
|
// } else {
|
||||||
// $status = 'Progress';
|
// $status = 'Progress';
|
||||||
// }
|
// }
|
||||||
|
|
||||||
} catch (\Exception $e) {
|
} catch (\Exception $e) {
|
||||||
// $status = 'Progress';
|
// $status = 'Progress';
|
||||||
}
|
}
|
||||||
@ -188,6 +178,11 @@ class LoginController extends Controller
|
|||||||
|
|
||||||
$password = Hash::make($new_password);
|
$password = Hash::make($new_password);
|
||||||
|
|
||||||
|
|
||||||
|
// return response()->json([
|
||||||
|
// 'status' => true,
|
||||||
|
// 'message' => Uuid::uuid4(),
|
||||||
|
// ]);
|
||||||
$result = User::create([
|
$result = User::create([
|
||||||
'id' => Uuid::uuid4(),
|
'id' => Uuid::uuid4(),
|
||||||
'nama_depan' => $nama_depan,
|
'nama_depan' => $nama_depan,
|
||||||
@ -270,83 +265,4 @@ class LoginController extends Controller
|
|||||||
|
|
||||||
return response()->json($data);
|
return response()->json($data);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function kirimKodeVerifikasi(Request $request)
|
|
||||||
{
|
|
||||||
$email = $request->get('email');
|
|
||||||
$code = $request->get('code');
|
|
||||||
|
|
||||||
$verificationEmail = [
|
|
||||||
'code' => $code,
|
|
||||||
'email' => $email,
|
|
||||||
];
|
|
||||||
try {
|
|
||||||
Mail::to($email)->send(new verificationMail($verificationEmail));
|
|
||||||
return response()->json([
|
|
||||||
'message' => 'Kode verifikasi berhasil dikirim ke email. Silahkan cek di email anda.',
|
|
||||||
'status' => true,
|
|
||||||
]);
|
|
||||||
} catch (\Exception $e) {
|
|
||||||
return response()->json([
|
|
||||||
'message' => 'Kode verifikasi gagal dikirim ke email. ' . $e,
|
|
||||||
'status' => false,
|
|
||||||
]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getOcr()
|
|
||||||
{
|
|
||||||
//OCR
|
|
||||||
// dd(phpinfo());
|
|
||||||
try {
|
|
||||||
$fotoKTP = public_path('storage/foto-ktp/ktp.jpg');
|
|
||||||
|
|
||||||
$image = Image::make($fotoKTP);
|
|
||||||
|
|
||||||
$image->greyscale(); // Convert to grayscale
|
|
||||||
$image->contrast(10); // Increase contrast, adjust the value as needed
|
|
||||||
|
|
||||||
$preprocessedfotoKTP = public_path('storage/preprocessed/preprocessed_image.jpg');
|
|
||||||
$image->save($preprocessedfotoKTP);
|
|
||||||
|
|
||||||
$result = (new TesseractOCR($preprocessedfotoKTP))->run();
|
|
||||||
|
|
||||||
// (5) Normalize
|
|
||||||
|
|
||||||
$lines = explode("\n", $result);
|
|
||||||
$nikOCR = '';
|
|
||||||
$namaOCR = '';
|
|
||||||
$nikInputan = '3471140209790001';
|
|
||||||
$namaInputan = 'RIYANTO. SE';
|
|
||||||
|
|
||||||
foreach ($lines as $line) {
|
|
||||||
// Mencari NIK
|
|
||||||
if (strpos($line, $nikInputan) !== false) {
|
|
||||||
$nikOCR = preg_replace('/[^0-9]/', '', $line);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Mencari nama
|
|
||||||
if (strpos($line, $namaInputan) !== false) {
|
|
||||||
$namaOCR = trim(substr($line, strpos($line, ':') + 1));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
//Selesai
|
|
||||||
|
|
||||||
$persentase_kemiripan = (similar_text($nikInputan, $nikOCR, $percent) + similar_text($namaOCR, $namaOCR, $percent)) / 2;
|
|
||||||
// $status = 'Progress';
|
|
||||||
|
|
||||||
dd([$persentase_kemiripan, $lines]);
|
|
||||||
|
|
||||||
// if (similar_text($nikInputan, $nikOCR, $percent) >= 70 && similar_text($namaOCR, $namaOCR, $percent) >= 70) {
|
|
||||||
// $status = 'Progress';
|
|
||||||
// } else {
|
|
||||||
// $status = 'Progress';
|
|
||||||
// }
|
|
||||||
} catch (\Exception $e) {
|
|
||||||
// $status = 'Progress';
|
|
||||||
dd($e);
|
|
||||||
}
|
|
||||||
//OCR
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -7,7 +7,6 @@ use App\Models\User;
|
|||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
use Illuminate\Support\Facades\Auth;
|
use Illuminate\Support\Facades\Auth;
|
||||||
use Illuminate\Support\Facades\DB;
|
|
||||||
|
|
||||||
class UserContactController extends Controller
|
class UserContactController extends Controller
|
||||||
{
|
{
|
||||||
@ -21,16 +20,6 @@ class UserContactController extends Controller
|
|||||||
// dd($contacts);
|
// dd($contacts);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getContact()
|
|
||||||
{
|
|
||||||
$data = DB::table('contacts')
|
|
||||||
->select('contacts.relasi_kontak', 'users.nama_depan', 'users.nama_belakang')
|
|
||||||
->join('users', 'contacts.relasi_kontak', '=', 'users.email')
|
|
||||||
->where('contacts.pemilik_kontak','=',Auth::user()->email)
|
|
||||||
->paginate(10);
|
|
||||||
return response()->json($data);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Show the form for creating a new resource.
|
* Show the form for creating a new resource.
|
||||||
*/
|
*/
|
||||||
@ -45,23 +34,23 @@ class UserContactController extends Controller
|
|||||||
public function store(Request $request)
|
public function store(Request $request)
|
||||||
{
|
{
|
||||||
$email_relasi = $request->input('email');
|
$email_relasi = $request->input('email');
|
||||||
if ($email_relasi == Auth::user()->email) {
|
if($email_relasi == Auth::user()->email){
|
||||||
return response()->json([
|
return response()->json([
|
||||||
'status' => false,
|
'status' => false,
|
||||||
'message' => 'Kontak yang ingin didaftarkan tidak boleh sama',
|
'message' => 'Kontak yang ingin didaftarkan tidak boleh sama',
|
||||||
]);
|
]);
|
||||||
} else {
|
}else{
|
||||||
$result = Contact::create([
|
$result = Contact::create([
|
||||||
'pemilik_kontak' => Auth::user()->email,
|
'pemilik_kontak' => Auth::user()->email,
|
||||||
'relasi_kontak' => $request->input('email'),
|
'relasi_kontak' => $request->input('email'),
|
||||||
]);
|
]);
|
||||||
|
|
||||||
if ($result) {
|
if($result){
|
||||||
return response()->json([
|
return response()->json([
|
||||||
'status' => true,
|
'status' => true,
|
||||||
'message' => 'Akun berhasil masuk ke kontak',
|
'message' => 'Akun berhasil masuk ke kontak',
|
||||||
]);
|
]);
|
||||||
} else {
|
}else{
|
||||||
return response()->json([
|
return response()->json([
|
||||||
'status' => false,
|
'status' => false,
|
||||||
'message' => 'Akun gagal masuk ke kontak',
|
'message' => 'Akun gagal masuk ke kontak',
|
||||||
@ -75,6 +64,7 @@ class UserContactController extends Controller
|
|||||||
*/
|
*/
|
||||||
public function show(Contact $contact)
|
public function show(Contact $contact)
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -100,14 +90,14 @@ class UserContactController extends Controller
|
|||||||
{
|
{
|
||||||
try {
|
try {
|
||||||
$result = Contact::destroy($id);
|
$result = Contact::destroy($id);
|
||||||
if ($result) {
|
if($result){
|
||||||
return response()->json([
|
return response()->json([
|
||||||
'message' => 'Berhasil hapus data',
|
'message' => 'Berhasil hapus data',
|
||||||
'status' => true,
|
'status' => true,
|
||||||
]);
|
]);
|
||||||
} else {
|
}else{
|
||||||
return response()->json([
|
return response()->json([
|
||||||
'message' => 'Gagal hapus data karena ' . $result,
|
'message' => 'Gagal hapus data karena '.$result,
|
||||||
'status' => false,
|
'status' => false,
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
@ -122,13 +112,13 @@ class UserContactController extends Controller
|
|||||||
public function cekEmail($email)
|
public function cekEmail($email)
|
||||||
{
|
{
|
||||||
$result = User::where('email', $email)->get();
|
$result = User::where('email', $email)->get();
|
||||||
if ($result->isNotEmpty() && $result[0]->role == 'User' && $result[0]->status != 'Rejected') {
|
if ($result->isNotEmpty() && $result[0]->role == 'User') {
|
||||||
if ($result[0]->status == 'Finished') {
|
if($result[0]->status == 'Finished'){
|
||||||
return response()->json([
|
return response()->json([
|
||||||
'status' => true,
|
'status' => true,
|
||||||
'message' => $result,
|
'message' => $result,
|
||||||
]);
|
]);
|
||||||
} else {
|
}else{
|
||||||
return response()->json([
|
return response()->json([
|
||||||
'status' => false,
|
'status' => false,
|
||||||
'message' => 'Akun dengen email ' . $email . ' tersedia dan belum diverifikasi',
|
'message' => 'Akun dengen email ' . $email . ' tersedia dan belum diverifikasi',
|
||||||
@ -137,7 +127,7 @@ class UserContactController extends Controller
|
|||||||
} else {
|
} else {
|
||||||
return response()->json([
|
return response()->json([
|
||||||
'status' => false,
|
'status' => false,
|
||||||
'message' => 'Akun dengen email ' . $email . ' tidak tersedia atau ditolak',
|
'message' => 'Akun dengen email ' . $email . ' tidak tersedia',
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -3,34 +3,21 @@
|
|||||||
namespace App\Http\Controllers\User;
|
namespace App\Http\Controllers\User;
|
||||||
|
|
||||||
use App\Models\Transaction;
|
use App\Models\Transaction;
|
||||||
use App\Models\TransactionDescription;
|
|
||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
use App\Models\Setting;
|
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
use App\Models\TransactionUser;
|
use App\Models\TransactionUser;
|
||||||
use App\Models\User;
|
|
||||||
use Carbon\Carbon;
|
|
||||||
use Illuminate\Support\Facades\Http;
|
|
||||||
use Illuminate\Support\Facades\Auth;
|
|
||||||
use Ramsey\Uuid\Uuid;
|
|
||||||
use Midtrans\Config;
|
|
||||||
use Midtrans\Snap;
|
|
||||||
use Midtrans\Transaction as Trans;
|
|
||||||
|
|
||||||
class UserTransactionController extends Controller
|
class UserTransactionController extends Controller
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* Display a listing of the resource.
|
* Display a listing of the resource.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public function indexPembeli()
|
public function indexPembeli()
|
||||||
{
|
{
|
||||||
return view('user.transaction.pembeli.index', [
|
return view('user.transaction.pembeli.transaction-pembeli',[
|
||||||
'transactions' => Transaction::where('pembeli', Auth::user()->email)
|
'name'=>'npannisa',
|
||||||
->latest()
|
'TransactionUser'=>TransactionUser::HistoryTransaction()
|
||||||
->get(),
|
|
||||||
]);
|
]);
|
||||||
// dd(Transaction::where('pembeli',Auth::user()->email)->get());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -38,19 +25,17 @@ class UserTransactionController extends Controller
|
|||||||
*/
|
*/
|
||||||
public function indexPenjual()
|
public function indexPenjual()
|
||||||
{
|
{
|
||||||
return view('user.transaction.penjual.index', [
|
return view('user.transaction.penjual.transaction-penjual',[
|
||||||
'transactions' => Transaction::where('penjual', Auth::user()->email)->get(),
|
'name'=>'npannisa',
|
||||||
|
"TransactionUser"=>TransactionUser::HistoryTransaction()
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function detailTransaction($id)
|
public function detailTransaction($id){
|
||||||
{
|
return view('user.transaction.pembeli.detail-transaction',[
|
||||||
return view('user.transaction.pembeli.detail-transaction', [
|
'name'=>'npannisa',
|
||||||
'transaction' => Transaction::findOrFail($id),
|
"TransactionUser"=>TransactionUser::HistoryTransaction()
|
||||||
'trackings' => TransactionDescription::where('order_id', $id)->get(),
|
|
||||||
]);
|
]);
|
||||||
|
|
||||||
// dd(Transaction::findOrFail($id));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -58,7 +43,10 @@ class UserTransactionController extends Controller
|
|||||||
*/
|
*/
|
||||||
public function createTransaction(Request $request)
|
public function createTransaction(Request $request)
|
||||||
{
|
{
|
||||||
return view('user.transaction.pembeli.new-transaction');
|
return view('user.transaction.pembeli.new-transaction',[
|
||||||
|
'name'=>'npannisa',
|
||||||
|
"TransactionUser"=>TransactionUser::HistoryTransaction()
|
||||||
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -66,186 +54,12 @@ class UserTransactionController extends Controller
|
|||||||
*/
|
*/
|
||||||
public function invoiceTransaction($id)
|
public function invoiceTransaction($id)
|
||||||
{
|
{
|
||||||
return view('user.transaction.pembeli.invoice-transaction', [
|
return view('user.transaction.pembeli.invoice-transaction',[
|
||||||
'name' => 'npannisa',
|
'name'=>'npannisa',
|
||||||
'TransactionUser' => TransactionUser::HistoryTransaction(),
|
"TransactionUser"=>TransactionUser::HistoryTransaction()
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function storeTransaction(Request $request)
|
|
||||||
{
|
|
||||||
$pembeli = Auth::user()->email;
|
|
||||||
$penjual = $request->get('email_penjual');
|
|
||||||
$nama_barang = $request->get('nama_barang');
|
|
||||||
$satuan_barang = $request->get('satuan_barang');
|
|
||||||
$deskripsi_transaksi = $request->get('deskripsi');
|
|
||||||
$harga_barang = $request->get('harga_barang');
|
|
||||||
$jumlah_barang = $request->get('jumlah_barang');
|
|
||||||
|
|
||||||
$nama_depan_pembeli = Auth::user()->nama_depan;
|
|
||||||
$nama_belakang_pembeli = Auth::user()->nama_belakang;
|
|
||||||
$nohp_pembeli = Auth::user()->nohp;
|
|
||||||
$nama_penjual = User::where('email', $penjual)->value('nama_depan');
|
|
||||||
$alamat = ucwords(strtolower(Auth::user()->alamat));
|
|
||||||
$id = Uuid::uuid4();
|
|
||||||
|
|
||||||
$now = Carbon::now()->tz('Asia/Jakarta');
|
|
||||||
$bulan = $now->format('F');
|
|
||||||
$tahun = $now->year;
|
|
||||||
|
|
||||||
// $persentase_keuntungan = Setting::where('status','Active')
|
|
||||||
// ->where('bulan','=',$bulan)
|
|
||||||
// ->where('tahun','=',$tahun)->get();
|
|
||||||
$persentase_keuntungan = $request->get('persentase_keuntungan');
|
|
||||||
|
|
||||||
$total_harga = $request->get('total_harga');
|
|
||||||
$total_keuntungan = $request->get('total_keuntungan');
|
|
||||||
$total_bayar = $request->get('total_bayar');
|
|
||||||
|
|
||||||
$batas_pembayaran = $now->addDays(1)->toDateTimeString();
|
|
||||||
$batas_pengiriman_barang_awal = $now->addDays(2)->toDateTimeString();
|
|
||||||
$batas_pengiriman_barang_akhir = $now->addDays(5)->toDateTimeString();
|
|
||||||
|
|
||||||
$params = [
|
|
||||||
'transaction_details' => [
|
|
||||||
'order_id' => $id,
|
|
||||||
'gross_amount' => $total_bayar,
|
|
||||||
],
|
|
||||||
'item_details' => [
|
|
||||||
[
|
|
||||||
'id' => $nama_barang . time(),
|
|
||||||
'price' => $harga_barang,
|
|
||||||
'quantity' => $jumlah_barang,
|
|
||||||
'name' => $nama_barang,
|
|
||||||
],
|
|
||||||
[
|
|
||||||
'id' => 'BA01',
|
|
||||||
'price' => $total_keuntungan,
|
|
||||||
'quantity' => 1,
|
|
||||||
'name' => 'Biaya Admin',
|
|
||||||
],
|
|
||||||
],
|
|
||||||
'customer_details' => [
|
|
||||||
'firts_name' => $nama_depan_pembeli,
|
|
||||||
'last_name' => $nama_belakang_pembeli,
|
|
||||||
'email' => $pembeli,
|
|
||||||
'phone' => $nohp_pembeli,
|
|
||||||
'billing' => [
|
|
||||||
'first_name' => $nama_depan_pembeli,
|
|
||||||
'last_name' => $nama_belakang_pembeli,
|
|
||||||
'email' => $pembeli,
|
|
||||||
'phone' => $nohp_pembeli,
|
|
||||||
'address' => Auth::user()->alamat,
|
|
||||||
'city' => Auth::user()->village->district->city->name,
|
|
||||||
'country_code' => 'IDN',
|
|
||||||
],
|
|
||||||
],
|
|
||||||
'callbacks' => [
|
|
||||||
'finish' => 'http://127.0.0.1:8000/user/user-transaction-pembeli/',
|
|
||||||
],
|
|
||||||
'expiry' => [
|
|
||||||
'start_time' => $now->format('Y-m-d H:i:s P'),
|
|
||||||
'unit' => 'hours',
|
|
||||||
'duration' => 24,
|
|
||||||
],
|
|
||||||
];
|
|
||||||
|
|
||||||
Config::$serverKey = 'SB-Mid-server-8rydZAwKoWuoQ6g_3ot0-K7p';
|
|
||||||
Config::$isProduction = false;
|
|
||||||
// Set sanitization on (default)
|
|
||||||
Config::$isSanitized = true;
|
|
||||||
// Set 3DS transaction for credit card to true
|
|
||||||
Config::$is3ds = true;
|
|
||||||
|
|
||||||
$snap_token = Snap::getSnapToken($params);
|
|
||||||
$token = $snap_token;
|
|
||||||
$status = 'pending';
|
|
||||||
$query = Transaction::create([
|
|
||||||
'id' => $id,
|
|
||||||
'pembeli' => $pembeli,
|
|
||||||
'penjual' => $penjual,
|
|
||||||
'nama_barang' => $nama_barang,
|
|
||||||
'deskripsi_transaksi' => $deskripsi_transaksi,
|
|
||||||
'satuan_barang' => $satuan_barang,
|
|
||||||
'harga_barang' => $harga_barang,
|
|
||||||
'jumlah_barang' => $jumlah_barang,
|
|
||||||
'persentase_keuntungan' => $persentase_keuntungan,
|
|
||||||
'total_keuntungan' => $total_keuntungan,
|
|
||||||
'total_harga' => $total_harga,
|
|
||||||
'total_bayar' => $total_bayar,
|
|
||||||
'token' => $token,
|
|
||||||
'status' => $status,
|
|
||||||
'batas_pembayaran' => $batas_pembayaran,
|
|
||||||
'batas_pengiriman_barang_awal' => $batas_pengiriman_barang_awal,
|
|
||||||
'batas_pengiriman_barang_akhir' => $batas_pengiriman_barang_akhir,
|
|
||||||
]);
|
|
||||||
|
|
||||||
if ($query) {
|
|
||||||
TransactionDescription::create([
|
|
||||||
'order_id' => $id,
|
|
||||||
'status' => $status,
|
|
||||||
'user' => $pembeli,
|
|
||||||
'judul' => 'fa fa-plus',
|
|
||||||
'background' => 'bg-buyer',
|
|
||||||
'deskripsi' => $nama_depan_pembeli . ' telah membuat transaksi baru dengan ' . $nama_penjual,
|
|
||||||
]);
|
|
||||||
return response()->json([
|
|
||||||
'status' => true,
|
|
||||||
'message' => 'Berhasil menambahkan transaksi. Silahkan lakukan pembayaran.',
|
|
||||||
]);
|
|
||||||
} else {
|
|
||||||
return response()->json([
|
|
||||||
'status' => false,
|
|
||||||
'message' => 'Gagal menambahkan transaksi.',
|
|
||||||
]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public function updateStatusTransaction(Request $request)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
public function acceptTransaction(Request $request)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
public function paymentTransaction(Request $request, $id)
|
|
||||||
{
|
|
||||||
Config::$serverKey = 'SB-Mid-server-8rydZAwKoWuoQ6g_3ot0-K7p';
|
|
||||||
Config::$isProduction = false;
|
|
||||||
// Set sanitization on (default)
|
|
||||||
Config::$isSanitized = true;
|
|
||||||
// Set 3DS transaction for credit card to true
|
|
||||||
Config::$is3ds = true;
|
|
||||||
|
|
||||||
$payment = Trans::status($id);
|
|
||||||
$result = json_decode(json_encode($payment), true);
|
|
||||||
$query = Transaction::where('id', $id)->update([
|
|
||||||
'acquire' => $result['acquirer'],
|
|
||||||
'currency' => $result['currency'],
|
|
||||||
'fraud_status' => $result['fraud_status'],
|
|
||||||
'issuer' => $result['issuer'],
|
|
||||||
'merchant_id' => $result['merchant_id'],
|
|
||||||
'metode_pembayaran' => $result['payment_type'],
|
|
||||||
'tanggal_pembayaran' => $result['settlement_time'],
|
|
||||||
'signature_key' => $result['signature_key'],
|
|
||||||
'status' => $result['transaction_status'],
|
|
||||||
'tipe_transaction' => $result['transaction_type'],
|
|
||||||
'status_code' => $result['status_code'],
|
|
||||||
]);
|
|
||||||
if ($query) {
|
|
||||||
return response()->json([
|
|
||||||
'status' => true,
|
|
||||||
'message' => 'Pembayaran sukses. Proses akan dilanjutkan ke penjual',
|
|
||||||
]);
|
|
||||||
} else {
|
|
||||||
return response()->json([
|
|
||||||
'status' => false,
|
|
||||||
'message' => 'Pembayaran gagal',
|
|
||||||
]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Display the specified resource.
|
* Display the specified resource.
|
||||||
*/
|
*/
|
||||||
|
@ -1,59 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
namespace App\Mail;
|
|
||||||
|
|
||||||
use Illuminate\Bus\Queueable;
|
|
||||||
use Illuminate\Contracts\Queue\ShouldQueue;
|
|
||||||
use Illuminate\Mail\Mailable;
|
|
||||||
use Illuminate\Mail\Mailables\Content;
|
|
||||||
use Illuminate\Mail\Mailables\Envelope;
|
|
||||||
use Illuminate\Queue\SerializesModels;
|
|
||||||
|
|
||||||
class verificationMail extends Mailable
|
|
||||||
{
|
|
||||||
use Queueable, SerializesModels;
|
|
||||||
|
|
||||||
public $verificationEmail;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Create a new message instance.
|
|
||||||
*/
|
|
||||||
public function __construct($verificationEmail)
|
|
||||||
{
|
|
||||||
$this->verificationEmail = $verificationEmail;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Get the message envelope.
|
|
||||||
*/
|
|
||||||
// public function envelope(): Envelope
|
|
||||||
// {
|
|
||||||
// return new Envelope(
|
|
||||||
// subject: 'Verification Mail',
|
|
||||||
// );
|
|
||||||
// }
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Get the message content definition.
|
|
||||||
*/
|
|
||||||
// public function content(): Content
|
|
||||||
// {
|
|
||||||
// return new Content(
|
|
||||||
// view: 'view.name',
|
|
||||||
// );
|
|
||||||
// }
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Get the attachments for the message.
|
|
||||||
*
|
|
||||||
* @return array<int, \Illuminate\Mail\Mailables\Attachment>
|
|
||||||
*/
|
|
||||||
// public function attachments(): array
|
|
||||||
// {
|
|
||||||
// return [];
|
|
||||||
// }
|
|
||||||
|
|
||||||
public function build(){
|
|
||||||
return $this->subject('Kode Verifikasi')->view('email.verification-email');
|
|
||||||
}
|
|
||||||
}
|
|
@ -23,7 +23,7 @@ class Refund extends Model
|
|||||||
|
|
||||||
//Relasi
|
//Relasi
|
||||||
public function orders(){
|
public function orders(){
|
||||||
return $this->belongsTo(Transaction::class, 'id', 'order_id');
|
return $this->belongsTo(Transaction::class, 'order_id', 'order_id');
|
||||||
}
|
}
|
||||||
//Relasi
|
//Relasi
|
||||||
}
|
}
|
||||||
|
@ -18,14 +18,12 @@ class TransactionDescription extends Model
|
|||||||
'order_id',
|
'order_id',
|
||||||
'user',
|
'user',
|
||||||
'judul',
|
'judul',
|
||||||
'status',
|
|
||||||
'background',
|
|
||||||
'deskripsi'
|
'deskripsi'
|
||||||
];
|
];
|
||||||
|
|
||||||
//Relasi
|
//Relasi
|
||||||
public function order(){
|
public function order(){
|
||||||
return $this->belongsTo(Transaction::class, 'id', 'order_id');
|
return $this->belongsTo(Transaction::class, 'order_id', 'order_id');
|
||||||
}
|
}
|
||||||
|
|
||||||
public function user(){
|
public function user(){
|
||||||
|
@ -15,23 +15,20 @@ class Transaction extends Model
|
|||||||
* @var array<int, string>
|
* @var array<int, string>
|
||||||
*/
|
*/
|
||||||
protected $fillable = [
|
protected $fillable = [
|
||||||
'id',
|
|
||||||
'pembeli',
|
'pembeli',
|
||||||
'penjual',
|
'penjual',
|
||||||
'nama_barang',
|
'judul_transaksi',
|
||||||
'deskripsi_transaksi',
|
'deskripsi transaksi',
|
||||||
'satuan_barang',
|
|
||||||
'harga_barang',
|
|
||||||
'jumlah_barang',
|
|
||||||
'persentase_keuntungan',
|
'persentase_keuntungan',
|
||||||
'total_keuntungan',
|
'total_keuntungan',
|
||||||
|
'harga',
|
||||||
|
'biaya_admin',
|
||||||
'total_harga',
|
'total_harga',
|
||||||
'total_bayar',
|
'signature_key',
|
||||||
'token',
|
'metode_pembayaran',
|
||||||
'status',
|
'status',
|
||||||
'batas_pembayaran',
|
'batas_pembayaran',
|
||||||
'batas_pengiriman_barang_awal',
|
'batas_pengiriman_barang',
|
||||||
'batas_pengiriman_barang_akhir',
|
|
||||||
];
|
];
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -42,20 +39,20 @@ class Transaction extends Model
|
|||||||
protected $casts = [
|
protected $casts = [
|
||||||
'batas_pembayaran' => 'datetime',
|
'batas_pembayaran' => 'datetime',
|
||||||
'batas_pengiriman_barang' => 'datetime',
|
'batas_pengiriman_barang' => 'datetime',
|
||||||
'id' => 'string',
|
'order_id' => 'string',
|
||||||
];
|
];
|
||||||
|
|
||||||
//Relasi
|
//Relasi
|
||||||
public function data_pembeli(){
|
public function pembeli(){
|
||||||
return $this->belongsTo(User::class, 'pembeli', 'email');
|
return $this->belongsTo(User::class, 'email', 'pembeli');
|
||||||
}
|
}
|
||||||
|
|
||||||
public function data_penjual(){
|
public function penjual(){
|
||||||
return $this->belongsTo(User::class, 'penjual', 'email');
|
return $this->belongsTo(User::class, 'email', 'penjual');
|
||||||
}
|
}
|
||||||
|
|
||||||
public function refunds(){
|
public function refunds(){
|
||||||
return $this->hasMany(Refund::class, 'order_id', 'id');
|
return $this->hasMany(Refund::class, 'order_id', 'order_id');
|
||||||
}
|
}
|
||||||
//Relasi
|
//Relasi
|
||||||
}
|
}
|
||||||
|
@ -15,7 +15,6 @@
|
|||||||
"laravel/sanctum": "^3.2",
|
"laravel/sanctum": "^3.2",
|
||||||
"laravel/tinker": "^2.8",
|
"laravel/tinker": "^2.8",
|
||||||
"laravolt/indonesia": "^0.34.0",
|
"laravolt/indonesia": "^0.34.0",
|
||||||
"midtrans/midtrans-php": "^2.5",
|
|
||||||
"nesbot/carbon": "^2.69",
|
"nesbot/carbon": "^2.69",
|
||||||
"pusher/pusher-php-server": "^7.2",
|
"pusher/pusher-php-server": "^7.2",
|
||||||
"ramsey/uuid": "^4.7",
|
"ramsey/uuid": "^4.7",
|
||||||
|
162
composer.lock
generated
162
composer.lock
generated
@ -4,7 +4,7 @@
|
|||||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||||
"This file is @generated automatically"
|
"This file is @generated automatically"
|
||||||
],
|
],
|
||||||
"content-hash": "4dd1066d585142b363e4e114601be8ce",
|
"content-hash": "eb6424bf82942b6b939788b88ee6586b",
|
||||||
"packages": [
|
"packages": [
|
||||||
{
|
{
|
||||||
"name": "brick/math",
|
"name": "brick/math",
|
||||||
@ -1056,16 +1056,16 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "laravel/framework",
|
"name": "laravel/framework",
|
||||||
"version": "v10.21.0",
|
"version": "v10.22.0",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/laravel/framework.git",
|
"url": "https://github.com/laravel/framework.git",
|
||||||
"reference": "96b15c7ac382a9adb4a56d40c640e782d669a112"
|
"reference": "9234388a895206d4e1df37342b61adc67e5c5d31"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/laravel/framework/zipball/96b15c7ac382a9adb4a56d40c640e782d669a112",
|
"url": "https://api.github.com/repos/laravel/framework/zipball/9234388a895206d4e1df37342b61adc67e5c5d31",
|
||||||
"reference": "96b15c7ac382a9adb4a56d40c640e782d669a112",
|
"reference": "9234388a895206d4e1df37342b61adc67e5c5d31",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
@ -1252,7 +1252,7 @@
|
|||||||
"issues": "https://github.com/laravel/framework/issues",
|
"issues": "https://github.com/laravel/framework/issues",
|
||||||
"source": "https://github.com/laravel/framework"
|
"source": "https://github.com/laravel/framework"
|
||||||
},
|
},
|
||||||
"time": "2023-08-29T13:55:56+00:00"
|
"time": "2023-09-05T13:20:01+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "laravel/prompts",
|
"name": "laravel/prompts",
|
||||||
@ -1304,16 +1304,16 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "laravel/sanctum",
|
"name": "laravel/sanctum",
|
||||||
"version": "v3.2.6",
|
"version": "v3.3.0",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/laravel/sanctum.git",
|
"url": "https://github.com/laravel/sanctum.git",
|
||||||
"reference": "217e8a2bc5aa6a827ced97fcb76504029d3115d7"
|
"reference": "95a0181900019e2d79acbd3e2ee7d57e3d0a086b"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/laravel/sanctum/zipball/217e8a2bc5aa6a827ced97fcb76504029d3115d7",
|
"url": "https://api.github.com/repos/laravel/sanctum/zipball/95a0181900019e2d79acbd3e2ee7d57e3d0a086b",
|
||||||
"reference": "217e8a2bc5aa6a827ced97fcb76504029d3115d7",
|
"reference": "95a0181900019e2d79acbd3e2ee7d57e3d0a086b",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
@ -1366,7 +1366,7 @@
|
|||||||
"issues": "https://github.com/laravel/sanctum/issues",
|
"issues": "https://github.com/laravel/sanctum/issues",
|
||||||
"source": "https://github.com/laravel/sanctum"
|
"source": "https://github.com/laravel/sanctum"
|
||||||
},
|
},
|
||||||
"time": "2023-08-22T13:21:11+00:00"
|
"time": "2023-09-04T14:26:54+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "laravel/serializable-closure",
|
"name": "laravel/serializable-closure",
|
||||||
@ -1909,16 +1909,16 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "league/flysystem",
|
"name": "league/flysystem",
|
||||||
"version": "3.15.1",
|
"version": "3.16.0",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/thephpleague/flysystem.git",
|
"url": "https://github.com/thephpleague/flysystem.git",
|
||||||
"reference": "a141d430414fcb8bf797a18716b09f759a385bed"
|
"reference": "4fdf372ca6b63c6e281b1c01a624349ccb757729"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/thephpleague/flysystem/zipball/a141d430414fcb8bf797a18716b09f759a385bed",
|
"url": "https://api.github.com/repos/thephpleague/flysystem/zipball/4fdf372ca6b63c6e281b1c01a624349ccb757729",
|
||||||
"reference": "a141d430414fcb8bf797a18716b09f759a385bed",
|
"reference": "4fdf372ca6b63c6e281b1c01a624349ccb757729",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
@ -1927,6 +1927,8 @@
|
|||||||
"php": "^8.0.2"
|
"php": "^8.0.2"
|
||||||
},
|
},
|
||||||
"conflict": {
|
"conflict": {
|
||||||
|
"async-aws/core": "<1.19.0",
|
||||||
|
"async-aws/s3": "<1.14.0",
|
||||||
"aws/aws-sdk-php": "3.209.31 || 3.210.0",
|
"aws/aws-sdk-php": "3.209.31 || 3.210.0",
|
||||||
"guzzlehttp/guzzle": "<7.0",
|
"guzzlehttp/guzzle": "<7.0",
|
||||||
"guzzlehttp/ringphp": "<1.1.1",
|
"guzzlehttp/ringphp": "<1.1.1",
|
||||||
@ -1946,7 +1948,7 @@
|
|||||||
"microsoft/azure-storage-blob": "^1.1",
|
"microsoft/azure-storage-blob": "^1.1",
|
||||||
"phpseclib/phpseclib": "^3.0.14",
|
"phpseclib/phpseclib": "^3.0.14",
|
||||||
"phpstan/phpstan": "^0.12.26",
|
"phpstan/phpstan": "^0.12.26",
|
||||||
"phpunit/phpunit": "^9.5.11",
|
"phpunit/phpunit": "^9.5.11|^10.0",
|
||||||
"sabre/dav": "^4.3.1"
|
"sabre/dav": "^4.3.1"
|
||||||
},
|
},
|
||||||
"type": "library",
|
"type": "library",
|
||||||
@ -1981,7 +1983,7 @@
|
|||||||
],
|
],
|
||||||
"support": {
|
"support": {
|
||||||
"issues": "https://github.com/thephpleague/flysystem/issues",
|
"issues": "https://github.com/thephpleague/flysystem/issues",
|
||||||
"source": "https://github.com/thephpleague/flysystem/tree/3.15.1"
|
"source": "https://github.com/thephpleague/flysystem/tree/3.16.0"
|
||||||
},
|
},
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
@ -1993,20 +1995,20 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"time": "2023-05-04T09:04:26+00:00"
|
"time": "2023-09-07T19:22:17+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "league/flysystem-local",
|
"name": "league/flysystem-local",
|
||||||
"version": "3.15.0",
|
"version": "3.16.0",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/thephpleague/flysystem-local.git",
|
"url": "https://github.com/thephpleague/flysystem-local.git",
|
||||||
"reference": "543f64c397fefdf9cfeac443ffb6beff602796b3"
|
"reference": "ec7383f25642e6fd4bb0c9554fc2311245391781"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/thephpleague/flysystem-local/zipball/543f64c397fefdf9cfeac443ffb6beff602796b3",
|
"url": "https://api.github.com/repos/thephpleague/flysystem-local/zipball/ec7383f25642e6fd4bb0c9554fc2311245391781",
|
||||||
"reference": "543f64c397fefdf9cfeac443ffb6beff602796b3",
|
"reference": "ec7383f25642e6fd4bb0c9554fc2311245391781",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
@ -2041,7 +2043,7 @@
|
|||||||
],
|
],
|
||||||
"support": {
|
"support": {
|
||||||
"issues": "https://github.com/thephpleague/flysystem-local/issues",
|
"issues": "https://github.com/thephpleague/flysystem-local/issues",
|
||||||
"source": "https://github.com/thephpleague/flysystem-local/tree/3.15.0"
|
"source": "https://github.com/thephpleague/flysystem-local/tree/3.16.0"
|
||||||
},
|
},
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
@ -2053,7 +2055,7 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"time": "2023-05-02T20:02:14+00:00"
|
"time": "2023-08-30T10:23:59+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "league/mime-type-detection",
|
"name": "league/mime-type-detection",
|
||||||
@ -2111,61 +2113,6 @@
|
|||||||
],
|
],
|
||||||
"time": "2023-08-05T12:09:49+00:00"
|
"time": "2023-08-05T12:09:49+00:00"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "midtrans/midtrans-php",
|
|
||||||
"version": "2.5.2",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/Midtrans/midtrans-php.git",
|
|
||||||
"reference": "a1ad0c824449ca8c68c4cf11b3417ad518311d2b"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://api.github.com/repos/Midtrans/midtrans-php/zipball/a1ad0c824449ca8c68c4cf11b3417ad518311d2b",
|
|
||||||
"reference": "a1ad0c824449ca8c68c4cf11b3417ad518311d2b",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"ext-curl": "*",
|
|
||||||
"ext-json": "*",
|
|
||||||
"php": ">=5.4"
|
|
||||||
},
|
|
||||||
"require-dev": {
|
|
||||||
"phpunit/phpunit": "5.7.*",
|
|
||||||
"psy/psysh": "0.4.*"
|
|
||||||
},
|
|
||||||
"type": "library",
|
|
||||||
"autoload": {
|
|
||||||
"psr-4": {
|
|
||||||
"Midtrans\\": "Midtrans/"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"MIT"
|
|
||||||
],
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "Andri Setiawan",
|
|
||||||
"email": "andri.setiawan@veritrans.co.id"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Alvin Litani",
|
|
||||||
"email": "alvin.litani@veritrans.co.id"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Ismail Faruqi",
|
|
||||||
"email": "ismail.faruqi@veritrans.co.id"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": "PHP Wrapper for Midtrans Payment API.",
|
|
||||||
"homepage": "https://midtrans.com",
|
|
||||||
"support": {
|
|
||||||
"issues": "https://github.com/Midtrans/midtrans-php/issues",
|
|
||||||
"source": "https://github.com/Midtrans/midtrans-php/tree/2.5.2"
|
|
||||||
},
|
|
||||||
"time": "2021-08-23T08:52:05+00:00"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "monolog/monolog",
|
"name": "monolog/monolog",
|
||||||
"version": "3.4.0",
|
"version": "3.4.0",
|
||||||
@ -2269,16 +2216,16 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "nesbot/carbon",
|
"name": "nesbot/carbon",
|
||||||
"version": "2.69.0",
|
"version": "2.70.0",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/briannesbitt/Carbon.git",
|
"url": "https://github.com/briannesbitt/Carbon.git",
|
||||||
"reference": "4308217830e4ca445583a37d1bf4aff4153fa81c"
|
"reference": "d3298b38ea8612e5f77d38d1a99438e42f70341d"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/4308217830e4ca445583a37d1bf4aff4153fa81c",
|
"url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/d3298b38ea8612e5f77d38d1a99438e42f70341d",
|
||||||
"reference": "4308217830e4ca445583a37d1bf4aff4153fa81c",
|
"reference": "d3298b38ea8612e5f77d38d1a99438e42f70341d",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
@ -2371,7 +2318,7 @@
|
|||||||
"type": "tidelift"
|
"type": "tidelift"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"time": "2023-08-03T09:00:52+00:00"
|
"time": "2023-09-07T16:43:50+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "nette/schema",
|
"name": "nette/schema",
|
||||||
@ -6543,16 +6490,16 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "laravel/pint",
|
"name": "laravel/pint",
|
||||||
"version": "v1.12.0",
|
"version": "v1.13.1",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/laravel/pint.git",
|
"url": "https://github.com/laravel/pint.git",
|
||||||
"reference": "08bcf51e520a5e5aea458fc600ac4869f6934a66"
|
"reference": "22f204242d68095b3ba7dab5d3ef0240454a4652"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/laravel/pint/zipball/08bcf51e520a5e5aea458fc600ac4869f6934a66",
|
"url": "https://api.github.com/repos/laravel/pint/zipball/22f204242d68095b3ba7dab5d3ef0240454a4652",
|
||||||
"reference": "08bcf51e520a5e5aea458fc600ac4869f6934a66",
|
"reference": "22f204242d68095b3ba7dab5d3ef0240454a4652",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
@ -6605,20 +6552,20 @@
|
|||||||
"issues": "https://github.com/laravel/pint/issues",
|
"issues": "https://github.com/laravel/pint/issues",
|
||||||
"source": "https://github.com/laravel/pint"
|
"source": "https://github.com/laravel/pint"
|
||||||
},
|
},
|
||||||
"time": "2023-08-30T07:53:32+00:00"
|
"time": "2023-09-06T11:03:34+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "laravel/sail",
|
"name": "laravel/sail",
|
||||||
"version": "v1.24.0",
|
"version": "v1.24.1",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/laravel/sail.git",
|
"url": "https://github.com/laravel/sail.git",
|
||||||
"reference": "c8a621d7b69ab2e568d97a20f837ca733a224006"
|
"reference": "3a373bb2845623aed2017c672dc61c84ae974890"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/laravel/sail/zipball/c8a621d7b69ab2e568d97a20f837ca733a224006",
|
"url": "https://api.github.com/repos/laravel/sail/zipball/3a373bb2845623aed2017c672dc61c84ae974890",
|
||||||
"reference": "c8a621d7b69ab2e568d97a20f837ca733a224006",
|
"reference": "3a373bb2845623aed2017c672dc61c84ae974890",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
@ -6670,7 +6617,7 @@
|
|||||||
"issues": "https://github.com/laravel/sail/issues",
|
"issues": "https://github.com/laravel/sail/issues",
|
||||||
"source": "https://github.com/laravel/sail"
|
"source": "https://github.com/laravel/sail"
|
||||||
},
|
},
|
||||||
"time": "2023-08-27T14:26:11+00:00"
|
"time": "2023-09-01T14:05:17+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "mockery/mockery",
|
"name": "mockery/mockery",
|
||||||
@ -7343,16 +7290,16 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "phpunit/phpunit",
|
"name": "phpunit/phpunit",
|
||||||
"version": "10.3.2",
|
"version": "10.3.3",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/sebastianbergmann/phpunit.git",
|
"url": "https://github.com/sebastianbergmann/phpunit.git",
|
||||||
"reference": "0dafb1175c366dd274eaa9a625e914451506bcd1"
|
"reference": "241ed4dd0db1c096984e62d414c4e1ac8d5dbff4"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/0dafb1175c366dd274eaa9a625e914451506bcd1",
|
"url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/241ed4dd0db1c096984e62d414c4e1ac8d5dbff4",
|
||||||
"reference": "0dafb1175c366dd274eaa9a625e914451506bcd1",
|
"reference": "241ed4dd0db1c096984e62d414c4e1ac8d5dbff4",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
@ -7424,7 +7371,7 @@
|
|||||||
"support": {
|
"support": {
|
||||||
"issues": "https://github.com/sebastianbergmann/phpunit/issues",
|
"issues": "https://github.com/sebastianbergmann/phpunit/issues",
|
||||||
"security": "https://github.com/sebastianbergmann/phpunit/security/policy",
|
"security": "https://github.com/sebastianbergmann/phpunit/security/policy",
|
||||||
"source": "https://github.com/sebastianbergmann/phpunit/tree/10.3.2"
|
"source": "https://github.com/sebastianbergmann/phpunit/tree/10.3.3"
|
||||||
},
|
},
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
@ -7440,7 +7387,7 @@
|
|||||||
"type": "tidelift"
|
"type": "tidelift"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"time": "2023-08-15T05:34:23+00:00"
|
"time": "2023-09-05T04:34:51+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "sebastian/cli-parser",
|
"name": "sebastian/cli-parser",
|
||||||
@ -7877,16 +7824,16 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "sebastian/exporter",
|
"name": "sebastian/exporter",
|
||||||
"version": "5.0.0",
|
"version": "5.0.1",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/sebastianbergmann/exporter.git",
|
"url": "https://github.com/sebastianbergmann/exporter.git",
|
||||||
"reference": "f3ec4bf931c0b31e5b413f5b4fc970a7d03338c0"
|
"reference": "32ff03d078fed1279c4ec9a407d08c5e9febb480"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/f3ec4bf931c0b31e5b413f5b4fc970a7d03338c0",
|
"url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/32ff03d078fed1279c4ec9a407d08c5e9febb480",
|
||||||
"reference": "f3ec4bf931c0b31e5b413f5b4fc970a7d03338c0",
|
"reference": "32ff03d078fed1279c4ec9a407d08c5e9febb480",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
@ -7942,7 +7889,8 @@
|
|||||||
],
|
],
|
||||||
"support": {
|
"support": {
|
||||||
"issues": "https://github.com/sebastianbergmann/exporter/issues",
|
"issues": "https://github.com/sebastianbergmann/exporter/issues",
|
||||||
"source": "https://github.com/sebastianbergmann/exporter/tree/5.0.0"
|
"security": "https://github.com/sebastianbergmann/exporter/security/policy",
|
||||||
|
"source": "https://github.com/sebastianbergmann/exporter/tree/5.0.1"
|
||||||
},
|
},
|
||||||
"funding": [
|
"funding": [
|
||||||
{
|
{
|
||||||
@ -7950,7 +7898,7 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"time": "2023-02-03T07:06:49+00:00"
|
"time": "2023-09-08T04:46:58+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "sebastian/global-state",
|
"name": "sebastian/global-state",
|
||||||
@ -8795,5 +8743,5 @@
|
|||||||
"php": "^8.1"
|
"php": "^8.1"
|
||||||
},
|
},
|
||||||
"platform-dev": [],
|
"platform-dev": [],
|
||||||
"plugin-api-version": "2.3.0"
|
"plugin-api-version": "2.6.0"
|
||||||
}
|
}
|
||||||
|
@ -12,33 +12,21 @@ return new class extends Migration
|
|||||||
public function up(): void
|
public function up(): void
|
||||||
{
|
{
|
||||||
Schema::create('transactions', function (Blueprint $table) {
|
Schema::create('transactions', function (Blueprint $table) {
|
||||||
$table->uuid('id')->primary(); //order_id
|
$table->uuid('order_id')->primary(); //order_id
|
||||||
$table->string('pembeli'); // untuk customer_details
|
$table->string('pembeli'); // untuk customer_details
|
||||||
$table->string('penjual'); //merchant_name
|
$table->string('penjual'); //merchant_name
|
||||||
$table->string('nama_barang'); // item_details -> item_name
|
$table->string('judul_transaksi'); // item_details -> item_name
|
||||||
$table->string('deskripsi_transaksi')->nullable();
|
$table->string('deskripsi_transaksi');
|
||||||
$table->string('satuan_barang');
|
|
||||||
$table->double('harga_barang'); // harga sebelum penambahan
|
|
||||||
$table->double('jumlah_barang');
|
|
||||||
$table->double('persentase_keuntungan'); // persentase keuntungan
|
$table->double('persentase_keuntungan'); // persentase keuntungan
|
||||||
$table->double('total_keuntungan'); // perolehan keuntungan
|
$table->double('total_keuntungan'); // perolehan keuntungan
|
||||||
|
$table->double('harga'); // harga sebelum penambahan
|
||||||
|
$table->double('biaya_admin'); // biaya tambahan
|
||||||
$table->double('total_harga'); // gross amount
|
$table->double('total_harga'); // gross amount
|
||||||
$table->double('total_bayar');
|
$table->string('signature_key');
|
||||||
$table->string('signature_key')->nullable();
|
$table->string('metode_pembayaran');
|
||||||
$table->string('token');
|
$table->enum('status',['Settlement','Capture','Pending','Cancel','Refund','Expire','Failure','Progress','Failed'])->default('Pending'); // transaction_status
|
||||||
$table->string('metode_pembayaran')->nullable();
|
|
||||||
$table->string('acquire')->nullable();
|
|
||||||
$table->string('issuer')->nullable();
|
|
||||||
$table->char('currency',3)->nullable();
|
|
||||||
$table->string('fraud_status')->nullable();
|
|
||||||
$table->string('merchant_id')->nullable();
|
|
||||||
$table->string('status_code')->nullable();
|
|
||||||
$table->string('tipe_transaction')->nullable();
|
|
||||||
$table->enum('status',['settlement','capture','pending','cancel','refund','expire','failure','progress','failed','sending','sended','finished'])->default('pending'); // transaction_status
|
|
||||||
$table->timestamp('batas_pembayaran');
|
$table->timestamp('batas_pembayaran');
|
||||||
$table->timestamp('batas_pengiriman_barang_awal');
|
$table->timestamp('batas_pengiriman_barang');
|
||||||
$table->timestamp('batas_pengiriman_barang_akhir');
|
|
||||||
$table->timestamp('tanggal_pembayaran')->nullable();
|
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
$table->foreign('pembeli')->on('users')->references('email');
|
$table->foreign('pembeli')->on('users')->references('email');
|
||||||
$table->foreign('penjual')->on('users')->references('email');
|
$table->foreign('penjual')->on('users')->references('email');
|
||||||
|
@ -16,9 +16,9 @@ return new class extends Migration
|
|||||||
$table->foreignUuid('order_id');
|
$table->foreignUuid('order_id');
|
||||||
$table->double('total',10);
|
$table->double('total',10);
|
||||||
$table->timestamp('due_date');
|
$table->timestamp('due_date');
|
||||||
$table->enum('status',['partial refund','deny','pending'])->default('Pending');
|
$table->enum('status',['Partial Refund','Deny','Pending'])->default('Pending');
|
||||||
$table->timestamps();
|
|
||||||
$table->foreign('order_id')->on('transactions')->references('id');
|
$table->foreign('order_id')->on('transactions')->references('order_id');
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -15,8 +15,8 @@ return new class extends Migration
|
|||||||
$table->id();
|
$table->id();
|
||||||
$table->string('bulan',20);
|
$table->string('bulan',20);
|
||||||
$table->string('tahun',5);
|
$table->string('tahun',5);
|
||||||
$table->integer('persentase');
|
$table->string('persentase',5);
|
||||||
$table->enum('status',['Active', 'Nonactive']);
|
$table->string('status',15);
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -16,12 +16,11 @@ return new class extends Migration
|
|||||||
$table->foreignUuid('order_id');
|
$table->foreignUuid('order_id');
|
||||||
$table->string('status',15);
|
$table->string('status',15);
|
||||||
$table->string('user');
|
$table->string('user');
|
||||||
$table->string('background');
|
|
||||||
$table->string('judul');
|
$table->string('judul');
|
||||||
$table->string('deskripsi');
|
$table->string('deskripsi');
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
|
|
||||||
$table->foreign('order_id')->on('transactions')->references('id');
|
$table->foreign('order_id')->on('transactions')->references('order_id');
|
||||||
$table->foreign('user')->on('users')->references('email');
|
$table->foreign('user')->on('users')->references('email');
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -5,8 +5,6 @@ namespace Database\Seeders;
|
|||||||
// use Illuminate\Database\Console\Seeds\WithoutModelEvents;
|
// use Illuminate\Database\Console\Seeds\WithoutModelEvents;
|
||||||
use Illuminate\Database\Seeder;
|
use Illuminate\Database\Seeder;
|
||||||
use App\Models\User;
|
use App\Models\User;
|
||||||
use Carbon\Carbon;
|
|
||||||
use App\Models\Setting;
|
|
||||||
use Illuminate\Support\Str;
|
use Illuminate\Support\Str;
|
||||||
use Faker\Factory as FakerFactory;
|
use Faker\Factory as FakerFactory;
|
||||||
use Faker\Provider\id_ID\Person as Person;
|
use Faker\Provider\id_ID\Person as Person;
|
||||||
@ -30,31 +28,27 @@ class DatabaseSeeder extends Seeder
|
|||||||
'nama_depan' => $faker->firstName,
|
'nama_depan' => $faker->firstName,
|
||||||
'nama_belakang' => $faker->lastName,
|
'nama_belakang' => $faker->lastName,
|
||||||
'tanggal_lahir' => $faker->date($format = 'Y-m-d', $max = 'now'),
|
'tanggal_lahir' => $faker->date($format = 'Y-m-d', $max = 'now'),
|
||||||
'email' => 'admin@example.net',
|
'email' => fake()->unique()->safeEmail(),
|
||||||
'email_verified_at' => now(),
|
'email_verified_at' => now(),
|
||||||
'password' => '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', // password
|
'password' => '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', // password
|
||||||
'remember_token' => Str::random(10),
|
'remember_token' => Str::random(10),
|
||||||
'role' => 'Admin',
|
'role' => 'Admin',
|
||||||
'nik' => $faker->nik($faker->randomElement(['male', 'female']), $faker->dateTimeBetween('-65 years', '-18 years')),
|
'nik' => $faker->nik($faker->randomElement(['male','female']), $faker->dateTimeBetween('-65 years', '-18 years')),
|
||||||
'alamat' => $faker->address,
|
'alamat'=> $faker->address,
|
||||||
'nohp' => $faker->phoneNumber(),
|
'nohp'=> $faker->phoneNumber(),
|
||||||
'status' => 'Finished',
|
'status'=> 'Finished',
|
||||||
'persentase_kemiripan' => '100%',
|
'persentase_kemiripan' => '100%',
|
||||||
'gender' => $faker->randomElement(['Laki-laki', 'Perempuan']),
|
'gender' => $faker->randomElement(['Laki-laki', 'Perempuan']),
|
||||||
'kode_kelurahan' => '1101012002',
|
'kode_kelurahan' => '1101012002',
|
||||||
]);
|
]);
|
||||||
User::factory(20)->create();
|
User::factory(20)->create();
|
||||||
|
|
||||||
$now = Carbon::now()->tz('Asia/Jakarta');
|
$this->call([
|
||||||
$bulan = $now->format('F');
|
ProvincesSeeder::class,
|
||||||
$tahun = $now->year;
|
CitiesSeeder::class,
|
||||||
Setting::create([
|
DistrictsSeeder::class,
|
||||||
'bulan' => $bulan,
|
VillagesSeeder::class,
|
||||||
'tahun' => $tahun,
|
|
||||||
'persentase' => 5,
|
|
||||||
'status' => 'Active'
|
|
||||||
]);
|
]);
|
||||||
|
|
||||||
$this->call([ProvincesSeeder::class, CitiesSeeder::class, DistrictsSeeder::class, VillagesSeeder::class]);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
17
package-lock.json
generated
17
package-lock.json
generated
@ -5,7 +5,8 @@
|
|||||||
"packages": {
|
"packages": {
|
||||||
"": {
|
"": {
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"datatables.net-dt": "^1.13.6"
|
"datatables.net-dt": "^1.13.6",
|
||||||
|
"sweetalert2": "^11.7.27"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"axios": "^1.1.2",
|
"axios": "^1.1.2",
|
||||||
@ -642,6 +643,15 @@
|
|||||||
"node": ">=0.10.0"
|
"node": ">=0.10.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/sweetalert2": {
|
||||||
|
"version": "11.7.27",
|
||||||
|
"resolved": "https://registry.npmjs.org/sweetalert2/-/sweetalert2-11.7.27.tgz",
|
||||||
|
"integrity": "sha512-QbRXGQn1sb7HEhzA/K2xtWIwQHh/qkSbb1w6jYcTql2xy17876lTREEt1D4X6Q0x2wHtfUjKJ+Cb8IVkRoq7DQ==",
|
||||||
|
"funding": {
|
||||||
|
"type": "individual",
|
||||||
|
"url": "https://github.com/sponsors/limonte"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/vite": {
|
"node_modules/vite": {
|
||||||
"version": "4.4.9",
|
"version": "4.4.9",
|
||||||
"resolved": "https://registry.npmjs.org/vite/-/vite-4.4.9.tgz",
|
"resolved": "https://registry.npmjs.org/vite/-/vite-4.4.9.tgz",
|
||||||
@ -1049,6 +1059,11 @@
|
|||||||
"integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
|
"integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
|
"sweetalert2": {
|
||||||
|
"version": "11.7.27",
|
||||||
|
"resolved": "https://registry.npmjs.org/sweetalert2/-/sweetalert2-11.7.27.tgz",
|
||||||
|
"integrity": "sha512-QbRXGQn1sb7HEhzA/K2xtWIwQHh/qkSbb1w6jYcTql2xy17876lTREEt1D4X6Q0x2wHtfUjKJ+Cb8IVkRoq7DQ=="
|
||||||
|
},
|
||||||
"vite": {
|
"vite": {
|
||||||
"version": "4.4.9",
|
"version": "4.4.9",
|
||||||
"resolved": "https://registry.npmjs.org/vite/-/vite-4.4.9.tgz",
|
"resolved": "https://registry.npmjs.org/vite/-/vite-4.4.9.tgz",
|
||||||
|
@ -11,6 +11,7 @@
|
|||||||
"vite": "^4.0.0"
|
"vite": "^4.0.0"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"datatables.net-dt": "^1.13.6"
|
"datatables.net-dt": "^1.13.6",
|
||||||
|
"sweetalert2": "^11.7.27"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -846,9 +846,8 @@ tr:first-child > td > .fc-day-grid-event {
|
|||||||
border-top: 1px solid #f2f2f2;
|
border-top: 1px solid #f2f2f2;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
/* 1.18 Select2 */
|
||||||
/* 1.18 Select2
|
.select2-container--default
|
||||||
/* .select2-container--default
|
|
||||||
.select2-search--dropdown
|
.select2-search--dropdown
|
||||||
.select2-search__field:focus {
|
.select2-search__field:focus {
|
||||||
outline: none;
|
outline: none;
|
||||||
@ -950,7 +949,6 @@ tr:first-child > td > .fc-day-grid-event {
|
|||||||
.select2-results__option {
|
.select2-results__option {
|
||||||
padding-right: 10px 15px;
|
padding-right: 10px 15px;
|
||||||
}
|
}
|
||||||
*/
|
|
||||||
|
|
||||||
/* 1.19 Selectric */
|
/* 1.19 Selectric */
|
||||||
.selectric {
|
.selectric {
|
||||||
|
1874
public/assets/css/components.min.css
vendored
1874
public/assets/css/components.min.css
vendored
File diff suppressed because one or more lines are too long
@ -58,13 +58,6 @@ video {
|
|||||||
z-index: 3;
|
z-index: 3;
|
||||||
}
|
}
|
||||||
|
|
||||||
.flex-input-btn {
|
|
||||||
width: 100%;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
margin-top: 3%;
|
|
||||||
}
|
|
||||||
|
|
||||||
form.sign-up-form {
|
form.sign-up-form {
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: start;
|
align-items: start;
|
||||||
@ -110,8 +103,8 @@ form p {
|
|||||||
.input-field-signup-flex {
|
.input-field-signup-flex {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 55px;
|
height: 55px;
|
||||||
margin-top: 2%;
|
|
||||||
background-color: #f0f0f0;
|
background-color: #f0f0f0;
|
||||||
|
margin-top: 10px;
|
||||||
border-radius: 1rem;
|
border-radius: 1rem;
|
||||||
display: grid;
|
display: grid;
|
||||||
grid-template-columns: 15% 85%;
|
grid-template-columns: 15% 85%;
|
||||||
@ -120,41 +113,6 @@ form p {
|
|||||||
position: relative;
|
position: relative;
|
||||||
}
|
}
|
||||||
|
|
||||||
.input {
|
|
||||||
width: 100%;
|
|
||||||
height: 55px;
|
|
||||||
background-color: #f0f0f0;
|
|
||||||
border-radius: 1rem;
|
|
||||||
display: grid;
|
|
||||||
grid-template-columns: 15% 85%;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
position: relative;
|
|
||||||
}
|
|
||||||
.input input {
|
|
||||||
width: 110%;
|
|
||||||
height: 100%;
|
|
||||||
background: none;
|
|
||||||
outline: none;
|
|
||||||
border: none;
|
|
||||||
border-radius: 1rem;
|
|
||||||
line-height: 1;
|
|
||||||
font-weight: 600;
|
|
||||||
margin-right: 1rem;
|
|
||||||
font-size: 0.8rem;
|
|
||||||
color: #333;
|
|
||||||
}
|
|
||||||
|
|
||||||
.input i {
|
|
||||||
padding: 0 1.5rem;
|
|
||||||
color: #acacac;
|
|
||||||
transition: 0.5s;
|
|
||||||
}
|
|
||||||
|
|
||||||
.up {
|
|
||||||
margin-top: 3%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.input-field-signin-flex input,
|
.input-field-signin-flex input,
|
||||||
.input-field-signup-flex input {
|
.input-field-signup-flex input {
|
||||||
width: 82%;
|
width: 82%;
|
||||||
@ -275,14 +233,6 @@ form p {
|
|||||||
transform: translateY(-0.252m);
|
transform: translateY(-0.252m);
|
||||||
}
|
}
|
||||||
|
|
||||||
.btn-otp:disabled {
|
|
||||||
cursor: not-allowed; /* Mengganti cursor menjadi "not-allowed" saat tombol dinonaktifkan */
|
|
||||||
opacity: 0.6; /* Mengurangi opasitas tombol saat dinonaktifkan */
|
|
||||||
border-color: #ccc; /* Mengganti warna border saat dinonaktifkan */
|
|
||||||
color: #ccc; /* Mengganti warna teks saat dinonaktifkan */
|
|
||||||
pointer-events: none; /* Mencegah interaksi dengan tombol saat dinonaktifkan */
|
|
||||||
}
|
|
||||||
|
|
||||||
.panels-container {
|
.panels-container {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
|
File diff suppressed because it is too large
Load Diff
BIN
public/assets/images/foto-ktp.jpg
Normal file
BIN
public/assets/images/foto-ktp.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 38 KiB |
Binary file not shown.
Before Width: | Height: | Size: 18 KiB |
@ -114,6 +114,13 @@ form_4_back_btn.addEventListener("click", function () {
|
|||||||
form_4_progessbar.classList.remove("active");
|
form_4_progessbar.classList.remove("active");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// btn_done.addEventListener("click", function () {
|
||||||
|
// modal_wrapper.classList.add("active");
|
||||||
|
// });
|
||||||
|
|
||||||
|
// shadow.addEventListener("click", function () {
|
||||||
|
// modal_wrapper.classList.remove("active");
|
||||||
|
// });
|
||||||
/******************************************
|
/******************************************
|
||||||
* MULTIPLE FORM END
|
* MULTIPLE FORM END
|
||||||
******************************************/
|
******************************************/
|
||||||
@ -243,7 +250,7 @@ document.addEventListener("DOMContentLoaded", function () {
|
|||||||
clearPhoto(fotoInputKtp, document.getElementById("foto-preview-ktp"));
|
clearPhoto(fotoInputKtp, document.getElementById("foto-preview-ktp"));
|
||||||
|
|
||||||
if (ktpStream) {
|
if (ktpStream) {
|
||||||
// Matikan kamera jika sedang aktif
|
|
||||||
turnOffCamera(ktpStream, videoElementKtp, startButtonKtp);
|
turnOffCamera(ktpStream, videoElementKtp, startButtonKtp);
|
||||||
ktpStream = null;
|
ktpStream = null;
|
||||||
}
|
}
|
||||||
|
@ -2,37 +2,27 @@
|
|||||||
|
|
||||||
$("[data-checkboxes]").each(function () {
|
$("[data-checkboxes]").each(function () {
|
||||||
var me = $(this),
|
var me = $(this),
|
||||||
group = me.data("checkboxes"),
|
group = me.data('checkboxes'),
|
||||||
role = me.data("checkbox-role");
|
role = me.data('checkbox-role');
|
||||||
|
|
||||||
me.change(function () {
|
me.change(function () {
|
||||||
var all = $(
|
var all = $('[data-checkboxes="' + group + '"]:not([data-checkbox-role="dad"])'),
|
||||||
'[data-checkboxes="' +
|
checked = $('[data-checkboxes="' + group + '"]:not([data-checkbox-role="dad"]):checked'),
|
||||||
group +
|
dad = $('[data-checkboxes="' + group + '"][data-checkbox-role="dad"]'),
|
||||||
'"]:not([data-checkbox-role="dad"])'
|
|
||||||
),
|
|
||||||
checked = $(
|
|
||||||
'[data-checkboxes="' +
|
|
||||||
group +
|
|
||||||
'"]:not([data-checkbox-role="dad"]):checked'
|
|
||||||
),
|
|
||||||
dad = $(
|
|
||||||
'[data-checkboxes="' + group + '"][data-checkbox-role="dad"]'
|
|
||||||
),
|
|
||||||
total = all.length,
|
total = all.length,
|
||||||
checked_length = checked.length;
|
checked_length = checked.length;
|
||||||
|
|
||||||
if (role == "dad") {
|
if (role == 'dad') {
|
||||||
if (me.is(":checked")) {
|
if (me.is(':checked')) {
|
||||||
all.prop("checked", true);
|
all.prop('checked', true);
|
||||||
} else {
|
} else {
|
||||||
all.prop("checked", false);
|
all.prop('checked', false);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (checked_length >= total) {
|
if (checked_length >= total) {
|
||||||
dad.prop("checked", true);
|
dad.prop('checked', true);
|
||||||
} else {
|
} else {
|
||||||
dad.prop("checked", false);
|
dad.prop('checked', false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@ -40,18 +30,14 @@ $("[data-checkboxes]").each(function () {
|
|||||||
|
|
||||||
// User
|
// User
|
||||||
$("#table-1").dataTable({
|
$("#table-1").dataTable({
|
||||||
columnDefs: [{ sortable: false, targets: [2, 7] }],
|
"columnDefs": [
|
||||||
searchable: true,
|
{ "sortable": false, "targets": [2] }
|
||||||
|
]
|
||||||
});
|
});
|
||||||
|
|
||||||
// Refund, Setting, Transaction
|
// Refund, Setting, Transaction
|
||||||
$("#table-2").dataTable({
|
$("#table-2").dataTable({
|
||||||
ordering: true,
|
"columnDefs": [
|
||||||
searchable: true,
|
{ "sortable": false, "targets": [0, 2, 3] }
|
||||||
});
|
]
|
||||||
|
|
||||||
// Transaksi pembeli
|
|
||||||
$("#table-3").dataTable({
|
|
||||||
columnDefs: [{ sortable: false, targets: [5] }],
|
|
||||||
searchable: true,
|
|
||||||
});
|
});
|
||||||
|
@ -1,62 +1,62 @@
|
|||||||
"use strict";
|
"use strict";
|
||||||
|
|
||||||
$("#swal-1").click(function() {
|
$("#swal-1").click(function () {
|
||||||
swal('Hello');
|
swal('Hello');
|
||||||
});
|
});
|
||||||
|
|
||||||
$("#swal-2").click(function() {
|
$("#swal-2").click(function () {
|
||||||
swal('Good Job', 'You clicked the button!', 'success');
|
swal('Tambah data setting', 'Berhasil', 'success');
|
||||||
});
|
});
|
||||||
|
|
||||||
$("#swal-3").click(function() {
|
$("#swal-3").click(function () {
|
||||||
swal('Good Job', 'You clicked the button!', 'warning');
|
swal('Good Job', 'You clicked the button!', 'warning');
|
||||||
});
|
});
|
||||||
|
|
||||||
$("#swal-4").click(function() {
|
$("#swal-4").click(function () {
|
||||||
swal('Good Job', 'You clicked the button!', 'info');
|
swal('Good Job', 'You clicked the button!', 'info');
|
||||||
});
|
});
|
||||||
|
|
||||||
$("#swal-5").click(function() {
|
$("#swal-5").click(function () {
|
||||||
swal('Good Job', 'You clicked the button!', 'error');
|
swal('Good Job', 'You clicked the button!', 'error');
|
||||||
});
|
});
|
||||||
|
|
||||||
$("#swal-6").click(function() {
|
$("#swal-6").click(function () {
|
||||||
swal({
|
swal({
|
||||||
title: 'Are you sure?',
|
title: 'Are you sure?',
|
||||||
text: 'Once deleted, you will not be able to recover this imaginary file!',
|
text: 'Once deleted, you will not be able to recover this imaginary file!',
|
||||||
icon: 'warning',
|
icon: 'warning',
|
||||||
buttons: true,
|
buttons: true,
|
||||||
dangerMode: true,
|
dangerMode: true,
|
||||||
})
|
})
|
||||||
.then((willDelete) => {
|
.then((willDelete) => {
|
||||||
if (willDelete) {
|
if (willDelete) {
|
||||||
swal('Poof! Your imaginary file has been deleted!', {
|
swal('Poof! Your imaginary file has been deleted!', {
|
||||||
icon: 'success',
|
icon: 'success',
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
swal('Your imaginary file is safe!');
|
swal('Your imaginary file is safe!');
|
||||||
}
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
$("#swal-7").click(function () {
|
||||||
|
swal({
|
||||||
|
title: 'What is your name?',
|
||||||
|
content: {
|
||||||
|
element: 'input',
|
||||||
|
attributes: {
|
||||||
|
placeholder: 'Type your name',
|
||||||
|
type: 'text',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}).then((data) => {
|
||||||
|
swal('Hello, ' + data + '!');
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
$("#swal-7").click(function() {
|
$("#swal-8").click(function () {
|
||||||
swal({
|
swal('This modal will disappear soon!', {
|
||||||
title: 'What is your name?',
|
buttons: false,
|
||||||
content: {
|
timer: 3000,
|
||||||
element: 'input',
|
});
|
||||||
attributes: {
|
|
||||||
placeholder: 'Type your name',
|
|
||||||
type: 'text',
|
|
||||||
},
|
|
||||||
},
|
|
||||||
}).then((data) => {
|
|
||||||
swal('Hello, ' + data + '!');
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
$("#swal-8").click(function() {
|
|
||||||
swal('This modal will disappear soon!', {
|
|
||||||
buttons: false,
|
|
||||||
timer: 3000,
|
|
||||||
});
|
|
||||||
});
|
});
|
File diff suppressed because it is too large
Load Diff
8284
public/assets/modules/bootstrap/css/bootstrap.min.css
vendored
8284
public/assets/modules/bootstrap/css/bootstrap.min.css
vendored
File diff suppressed because one or more lines are too long
4092
public/assets/modules/fontawesome/css/all.css
vendored
4092
public/assets/modules/fontawesome/css/all.css
vendored
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
884
public/assets/modules/select2/dist/css/select2.css
vendored
884
public/assets/modules/select2/dist/css/select2.css
vendored
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
Binary file not shown.
Before Width: | Height: | Size: 226 KiB |
@ -8,7 +8,7 @@
|
|||||||
<div class="card card-statistic-2">
|
<div class="card card-statistic-2">
|
||||||
<div class="card-stats">
|
<div class="card-stats">
|
||||||
<div class="card-stats-title">List Transaction -
|
<div class="card-stats-title">List Transaction -
|
||||||
{{-- <div class="dropdown d-inline">
|
<div class="dropdown d-inline">
|
||||||
<a class="font-weight-600 dropdown-toggle" data-toggle="dropdown" href="#"
|
<a class="font-weight-600 dropdown-toggle" data-toggle="dropdown" href="#"
|
||||||
id="orders-month">August</a>
|
id="orders-month">August</a>
|
||||||
<ul class="dropdown-menu dropdown-menu-sm">
|
<ul class="dropdown-menu dropdown-menu-sm">
|
||||||
@ -26,7 +26,7 @@
|
|||||||
<li><a href="#" class="dropdown-item">November</a></li>
|
<li><a href="#" class="dropdown-item">November</a></li>
|
||||||
<li><a href="#" class="dropdown-item">December</a></li>
|
<li><a href="#" class="dropdown-item">December</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</div> --}}
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-stats-items">
|
<div class="card-stats-items">
|
||||||
<div class="card-stats-item">
|
<div class="card-stats-item">
|
||||||
@ -41,10 +41,6 @@
|
|||||||
<div class="card-stats-item-count">23</div>
|
<div class="card-stats-item-count">23</div>
|
||||||
<div class="card-stats-item-label">Canceled</div>
|
<div class="card-stats-item-label">Canceled</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-stats-item">
|
|
||||||
<div class="card-stats-item-count">23</div>
|
|
||||||
<div class="card-stats-item-label">Refund</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-icon shadow-primary bg-primary">
|
<div class="card-icon shadow-primary bg-primary">
|
||||||
@ -174,7 +170,8 @@
|
|||||||
<div class="card-header">
|
<div class="card-header">
|
||||||
<h4>Top 5 Users</h4>
|
<h4>Top 5 Users</h4>
|
||||||
<div class="card-header-action dropdown">
|
<div class="card-header-action dropdown">
|
||||||
<a href="#" data-toggle="dropdown" class="btn btn-primary dropdown-toggle">Month</a>
|
<a href="#" data-toggle="dropdown"
|
||||||
|
class="btn btn-primary dropdown-toggle">Month</a>
|
||||||
<ul class="dropdown-menu dropdown-menu-sm dropdown-menu-right">
|
<ul class="dropdown-menu dropdown-menu-sm dropdown-menu-right">
|
||||||
<li class="dropdown-title">Select Period</li>
|
<li class="dropdown-title">Select Period</li>
|
||||||
<li><a href="#" class="dropdown-item">Today</a></li>
|
<li><a href="#" class="dropdown-item">Today</a></li>
|
||||||
@ -187,8 +184,8 @@
|
|||||||
<div class="card-body" id="top-5-scroll">
|
<div class="card-body" id="top-5-scroll">
|
||||||
<ul class="list-unstyled list-unstyled-border">
|
<ul class="list-unstyled list-unstyled-border">
|
||||||
<li class="media">
|
<li class="media">
|
||||||
<img class="mr-3 rounded" width="55"
|
<img class="mr-3 rounded" width="55" src="{{asset('assets/img/avatar/avatar-6.png')}}"
|
||||||
src="{{ asset('assets/img/avatar/avatar-6.png') }}" alt="product">
|
alt="product">
|
||||||
<div class="media-body">
|
<div class="media-body">
|
||||||
<div class="float-right">
|
<div class="float-right">
|
||||||
<div class="font-weight-600 text-muted text-small">86 Sales</div>
|
<div class="font-weight-600 text-muted text-small">86 Sales</div>
|
||||||
@ -207,8 +204,8 @@
|
|||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
<li class="media">
|
<li class="media">
|
||||||
<img class="mr-3 rounded" width="55"
|
<img class="mr-3 rounded" width="55" src="{{asset('assets/img/avatar/avatar-1.png')}}"
|
||||||
src="{{ asset('assets/img/avatar/avatar-1.png') }}" alt="product">
|
alt="product">
|
||||||
<div class="media-body">
|
<div class="media-body">
|
||||||
<div class="float-right">
|
<div class="float-right">
|
||||||
<div class="font-weight-600 text-muted text-small">67 Sales</div>
|
<div class="font-weight-600 text-muted text-small">67 Sales</div>
|
||||||
@ -227,8 +224,8 @@
|
|||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
<li class="media">
|
<li class="media">
|
||||||
<img class="mr-3 rounded" width="55"
|
<img class="mr-3 rounded" width="55" src="{{asset('assets/img/avatar/avatar-2.png')}}"
|
||||||
src="{{ asset('assets/img/avatar/avatar-2.png') }}" alt="product">
|
alt="product">
|
||||||
<div class="media-body">
|
<div class="media-body">
|
||||||
<div class="float-right">
|
<div class="float-right">
|
||||||
<div class="font-weight-600 text-muted text-small">63 Sales</div>
|
<div class="font-weight-600 text-muted text-small">63 Sales</div>
|
||||||
@ -247,8 +244,8 @@
|
|||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
<li class="media">
|
<li class="media">
|
||||||
<img class="mr-3 rounded" width="55"
|
<img class="mr-3 rounded" width="55" src="{{asset('assets/img/avatar/avatar-3.png')}}"
|
||||||
src="{{ asset('assets/img/avatar/avatar-3.png') }}" alt="product">
|
alt="product">
|
||||||
<div class="media-body">
|
<div class="media-body">
|
||||||
<div class="float-right">
|
<div class="float-right">
|
||||||
<div class="font-weight-600 text-muted text-small">28 Sales</div>
|
<div class="font-weight-600 text-muted text-small">28 Sales</div>
|
||||||
@ -267,8 +264,8 @@
|
|||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
<li class="media">
|
<li class="media">
|
||||||
<img class="mr-3 rounded" width="55"
|
<img class="mr-3 rounded" width="55" src="{{asset('assets/img/avatar/avatar-4.png')}}"
|
||||||
src="{{ asset('assets/img/avatar/avatar-4.png') }}" alt="product">
|
alt="product">
|
||||||
<div class="media-body">
|
<div class="media-body">
|
||||||
<div class="float-right">
|
<div class="float-right">
|
||||||
<div class="font-weight-600 text-muted text-small">19 Sales</div>
|
<div class="font-weight-600 text-muted text-small">19 Sales</div>
|
||||||
@ -376,48 +373,6 @@
|
|||||||
</div>
|
</div>
|
||||||
@include('admin.transaction.modal-tracking')
|
@include('admin.transaction.modal-tracking')
|
||||||
<script>
|
<script>
|
||||||
// Date picker range
|
|
||||||
$(document).ready(function() {
|
|
||||||
let searchParams = new URLSearchParams(window.location.search);
|
|
||||||
let dateInterval = searchParams.get('from-to');
|
|
||||||
let start = moment().subtract(29, 'days');
|
|
||||||
let end = moment();
|
|
||||||
|
|
||||||
if (dateInterval) {
|
|
||||||
dateInterval = dateInterval.split(' - ');
|
|
||||||
start = moment(dateInterval[0]);
|
|
||||||
end = moment(dateInterval[1]);
|
|
||||||
}
|
|
||||||
|
|
||||||
$('#date-range').daterangepicker({
|
|
||||||
"showDropdowns": true,
|
|
||||||
"showWeekNumbers": true,
|
|
||||||
"alwaysShowCalendars": true,
|
|
||||||
startDate: start,
|
|
||||||
endDate: end,
|
|
||||||
locale: {
|
|
||||||
format: 'YYYY-MM-DD',
|
|
||||||
firstDay: 1,
|
|
||||||
},
|
|
||||||
ranges: {
|
|
||||||
'Today': [moment(), moment()],
|
|
||||||
'Yesterday': [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
|
|
||||||
'Last 7 Days': [moment().subtract(6, 'days'), moment()],
|
|
||||||
'Last 30 Days': [moment().subtract(29, 'days'), moment()],
|
|
||||||
'This Month': [moment().startOf('month'), moment().endOf('month')],
|
|
||||||
'Last Month': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1,
|
|
||||||
'month').endOf(
|
|
||||||
'month')],
|
|
||||||
'This Year': [moment().startOf('year'), moment().endOf('year')],
|
|
||||||
'Last Year': [moment().subtract(1, 'year').startOf('year'), moment().subtract(1, 'year')
|
|
||||||
.endOf(
|
|
||||||
'year')
|
|
||||||
],
|
|
||||||
'All time': [moment().subtract(30, 'year').startOf('month'), moment().endOf('month')],
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
// Set new default font family and font color to mimic Bootstrap's default styling
|
// Set new default font family and font color to mimic Bootstrap's default styling
|
||||||
Chart.defaults.global.defaultFontFamily = 'Nunito',
|
Chart.defaults.global.defaultFontFamily = 'Nunito',
|
||||||
'-apple-system,system-ui,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif';
|
'-apple-system,system-ui,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif';
|
||||||
@ -427,12 +382,10 @@
|
|||||||
var myChart = new Chart(ctx, {
|
var myChart = new Chart(ctx, {
|
||||||
type: 'line',
|
type: 'line',
|
||||||
data: {
|
data: {
|
||||||
labels: ["January", "February", "March", "April", "May", "June", "July", "August", "September",
|
labels: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "Oktober", "November", "December"],
|
||||||
"Oktober", "November", "December"
|
|
||||||
],
|
|
||||||
datasets: [{
|
datasets: [{
|
||||||
label: 'Transaction',
|
label: 'Transaction',
|
||||||
data: {{json_encode($dataChartTransaction)}},
|
data: [3200, 18009, 4305, 3022, 6310, 5120, 5880, 6154, 0],
|
||||||
borderWidth: 2,
|
borderWidth: 2,
|
||||||
backgroundColor: 'rgba(63,82,227,.8)',
|
backgroundColor: 'rgba(63,82,227,.8)',
|
||||||
borderWidth: 0,
|
borderWidth: 0,
|
||||||
@ -457,12 +410,12 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
options: {
|
options: {
|
||||||
layout: {
|
layout:{
|
||||||
padding: 20,
|
padding: 20,
|
||||||
},
|
},
|
||||||
legend: {
|
legend: {
|
||||||
display: true,
|
display: true,
|
||||||
labels: {
|
labels:{
|
||||||
padding: 20,
|
padding: 20,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -475,7 +428,7 @@
|
|||||||
},
|
},
|
||||||
ticks: {
|
ticks: {
|
||||||
beginAtZero: true,
|
beginAtZero: true,
|
||||||
stepSize: 15000000,
|
stepSize: 15000,
|
||||||
callback: function(value, index, values) {
|
callback: function(value, index, values) {
|
||||||
// return 'Rp.' + value;
|
// return 'Rp.' + value;
|
||||||
return new Intl.NumberFormat('id-ID', {
|
return new Intl.NumberFormat('id-ID', {
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
<footer class="main-footer">
|
<footer class="main-footer">
|
||||||
<div class="footer-left">
|
<div class="footer-left">
|
||||||
Copysright © 2020 <div class="bullet"></div> Design By <a href="#">Template</a>
|
Copyright © 2020 <div class="bullet"></div> Design By <a href="#">Template</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="footer-right">
|
<div class="footer-right">
|
||||||
|
|
||||||
|
@ -19,8 +19,7 @@
|
|||||||
<div class="dropdown-list-content dropdown-list-message">
|
<div class="dropdown-list-content dropdown-list-message">
|
||||||
<a href="#" class="dropdown-item dropdown-item-unread">
|
<a href="#" class="dropdown-item dropdown-item-unread">
|
||||||
<div class="dropdown-item-avatar">
|
<div class="dropdown-item-avatar">
|
||||||
<img alt="image" src="{{ asset('assets/img/avatar/avatar-1.png') }}"
|
<img alt="image" src="{{asset('assets/img/avatar/avatar-1.png')}}" class="rounded-circle">
|
||||||
class="rounded-circle">
|
|
||||||
<div class="is-online"></div>
|
<div class="is-online"></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="dropdown-item-desc">
|
<div class="dropdown-item-desc">
|
||||||
@ -31,8 +30,7 @@
|
|||||||
</a>
|
</a>
|
||||||
<a href="#" class="dropdown-item dropdown-item-unread">
|
<a href="#" class="dropdown-item dropdown-item-unread">
|
||||||
<div class="dropdown-item-avatar">
|
<div class="dropdown-item-avatar">
|
||||||
<img alt="image" src="{{ asset('assets/img/avatar/avatar-2.png') }}"
|
<img alt="image" src="{{asset('assets/img/avatar/avatar-2.png')}}" class="rounded-circle">
|
||||||
class="rounded-circle">
|
|
||||||
</div>
|
</div>
|
||||||
<div class="dropdown-item-desc">
|
<div class="dropdown-item-desc">
|
||||||
<b>Dedik Sugiharto</b>
|
<b>Dedik Sugiharto</b>
|
||||||
@ -42,8 +40,7 @@
|
|||||||
</a>
|
</a>
|
||||||
<a href="#" class="dropdown-item dropdown-item-unread">
|
<a href="#" class="dropdown-item dropdown-item-unread">
|
||||||
<div class="dropdown-item-avatar">
|
<div class="dropdown-item-avatar">
|
||||||
<img alt="image" src="{{ asset('assets/img/avatar/avatar-3.png') }}"
|
<img alt="image" src="{{asset('assets/img/avatar/avatar-3.png')}}" class="rounded-circle">
|
||||||
class="rounded-circle">
|
|
||||||
<div class="is-online"></div>
|
<div class="is-online"></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="dropdown-item-desc">
|
<div class="dropdown-item-desc">
|
||||||
@ -54,8 +51,7 @@
|
|||||||
</a>
|
</a>
|
||||||
<a href="#" class="dropdown-item">
|
<a href="#" class="dropdown-item">
|
||||||
<div class="dropdown-item-avatar">
|
<div class="dropdown-item-avatar">
|
||||||
<img alt="image" src="{{ asset('assets/img/avatar/avatar-4.png') }}"
|
<img alt="image" src="{{asset('assets/img/avatar/avatar-4.png')}}" class="rounded-circle">
|
||||||
class="rounded-circle">
|
|
||||||
</div>
|
</div>
|
||||||
<div class="dropdown-item-desc">
|
<div class="dropdown-item-desc">
|
||||||
<b>Ardian Rahardiansyah</b>
|
<b>Ardian Rahardiansyah</b>
|
||||||
@ -65,8 +61,7 @@
|
|||||||
</a>
|
</a>
|
||||||
<a href="#" class="dropdown-item">
|
<a href="#" class="dropdown-item">
|
||||||
<div class="dropdown-item-avatar">
|
<div class="dropdown-item-avatar">
|
||||||
<img alt="image" src="{{ asset('assets/img/avatar/avatar-5.png') }}"
|
<img alt="image" src="{{asset('assets/img/avatar/avatar-5.png')}}" class="rounded-circle">
|
||||||
class="rounded-circle">
|
|
||||||
</div>
|
</div>
|
||||||
<div class="dropdown-item-desc">
|
<div class="dropdown-item-desc">
|
||||||
<b>Alfa Zulkarnain</b>
|
<b>Alfa Zulkarnain</b>
|
||||||
@ -142,7 +137,7 @@
|
|||||||
</li>
|
</li>
|
||||||
<li class="dropdown"><a href="#" data-toggle="dropdown"
|
<li class="dropdown"><a href="#" data-toggle="dropdown"
|
||||||
class="nav-link dropdown-toggle nav-link-lg nav-link-user">
|
class="nav-link dropdown-toggle nav-link-lg nav-link-user">
|
||||||
<img alt="image" src="{{ asset('assets/img/avatar/ok.jpg') }}" class="rounded-circle mr-1">
|
<img alt="image" src="{{asset('assets/img/avatar/ok.jpg')}}" class="rounded-circle mr-1">
|
||||||
<div class="d-sm-none d-lg-inline-block">Hi, {{ Auth::user()->nama_depan }}</div>
|
<div class="d-sm-none d-lg-inline-block">Hi, {{ Auth::user()->nama_depan }}</div>
|
||||||
</a>
|
</a>
|
||||||
<div class="dropdown-menu dropdown-menu-right">
|
<div class="dropdown-menu dropdown-menu-right">
|
||||||
@ -157,7 +152,7 @@
|
|||||||
<i class="fas fa-cog"></i> Settings
|
<i class="fas fa-cog"></i> Settings
|
||||||
</a> --}}
|
</a> --}}
|
||||||
<div class="dropdown-divider"></div>
|
<div class="dropdown-divider"></div>
|
||||||
<a href="{{ route('logout') }}" class="dropdown-item has-icon text-danger">
|
<a href="{{route('logout')}}" class="dropdown-item has-icon text-danger">
|
||||||
<i class="fas fa-sign-out-alt"></i> Logout
|
<i class="fas fa-sign-out-alt"></i> Logout
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
@ -31,29 +31,6 @@
|
|||||||
font-style: italic;
|
font-style: italic;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
<<<<<<< HEAD
|
|
||||||
|
|
||||||
<meta charset="UTF-8">
|
|
||||||
<meta content="width=device-width, initial-scale=1, maximum-scale=1, shrink-to-fit=no" name="viewport">
|
|
||||||
<title>REKBER</title>
|
|
||||||
|
|
||||||
<!-- General CSS Files -->
|
|
||||||
<link rel="stylesheet" href="assets/modules/bootstrap/css/bootstrap.min.css">
|
|
||||||
<link rel="stylesheet" href="assets/modules/fontawesome/css/all.min.css">
|
|
||||||
|
|
||||||
|
|
||||||
<!-- CSS Libraries -->
|
|
||||||
<link rel="stylesheet" href="assets/modules/jqvmap/dist/jqvmap.min.css">
|
|
||||||
<link rel="stylesheet" href="assets/modules/summernote/summernote-bs4.css">
|
|
||||||
<link rel="stylesheet" href="assets/modules/owlcarousel2/dist/assets/owl.carousel.min.css">
|
|
||||||
<link rel="stylesheet" href="assets/modules/owlcarousel2/dist/assets/owl.theme.default.min.css">
|
|
||||||
|
|
||||||
<!-- Template CSS -->
|
|
||||||
<link rel="stylesheet" href="assets/css/style.css">
|
|
||||||
<link rel="stylesheet" href="assets/css/components.css">
|
|
||||||
<!-- Start GA -->
|
|
||||||
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-94034622-3"></script>
|
|
||||||
=======
|
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta content="width=device-width, initial-scale=1, maximum-scale=1, shrink-to-fit=no" name="viewport">
|
<meta content="width=device-width, initial-scale=1, maximum-scale=1, shrink-to-fit=no" name="viewport">
|
||||||
<meta name="csrf-token" content="{{ csrf_token() }}">
|
<meta name="csrf-token" content="{{ csrf_token() }}">
|
||||||
@ -79,7 +56,6 @@
|
|||||||
<link rel="stylesheet" href="{{ asset('assets/modules/datatables/Select-1.2.4/css/select.bootstrap4.min.css') }}">
|
<link rel="stylesheet" href="{{ asset('assets/modules/datatables/Select-1.2.4/css/select.bootstrap4.min.css') }}">
|
||||||
<!-- Start GA -->
|
<!-- Start GA -->
|
||||||
{{-- <script async src="https://www.googletagmanager.com/gtag/js?id=UA-94034622-3"></script>
|
{{-- <script async src="https://www.googletagmanager.com/gtag/js?id=UA-94034622-3"></script>
|
||||||
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
|
||||||
<script>
|
<script>
|
||||||
window.dataLayer = window.dataLayer || [];
|
window.dataLayer = window.dataLayer || [];
|
||||||
|
|
||||||
@ -91,56 +67,21 @@
|
|||||||
gtag('config', 'UA-94034622-3');
|
gtag('config', 'UA-94034622-3');
|
||||||
<<<<<<< HEAD
|
<<<<<<< HEAD
|
||||||
</script>
|
</script>
|
||||||
<!-- /END GA -->
|
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
|
||||||
=======
|
=======
|
||||||
</script> --}}
|
</script> --}}
|
||||||
|
|
||||||
<!-- /END GA -->
|
<!-- /END GA -->
|
||||||
|
|
||||||
{{-- JS --}}
|
{{-- JS --}}
|
||||||
|
>>>>>>> c6e7e74f2a6981b808e6ad8dc9499362fdf9f043
|
||||||
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
|
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
|
||||||
<script src="{{ asset('assets/modules/chart.min.js') }}"></script>
|
<script src="{{ asset('assets/modules/chart.min.js') }}"></script>
|
||||||
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
|
|
||||||
<header class="header-area header-sticky">
|
<header class="header-area header-sticky">
|
||||||
<<<<<<< HEAD
|
|
||||||
@include('Admin.layout.header')
|
|
||||||
</header>
|
|
||||||
<!-- ***** Main Banner Area Start ***** -->
|
|
||||||
<main id="main" style="min-height: 100vh;">
|
|
||||||
@include('Admin.layout.sidebar')
|
|
||||||
@yield('content')
|
|
||||||
</main>
|
|
||||||
<!-- End #main -->
|
|
||||||
<footer id="footer">
|
|
||||||
@include('Admin.layout.footer')
|
|
||||||
</footer>
|
|
||||||
<!-- General JS Scripts -->
|
|
||||||
<script src="assets/modules/jquery.min.js"></script>
|
|
||||||
<script src="assets/modules/popper.js"></script>
|
|
||||||
<script src="assets/modules/tooltip.js"></script>
|
|
||||||
<script src="assets/modules/bootstrap/js/bootstrap.min.js"></script>
|
|
||||||
<script src="assets/modules/nicescroll/jquery.nicescroll.min.js"></script>
|
|
||||||
<script src="assets/modules/moment.min.js"></script>
|
|
||||||
<script src="assets/js/stisla.js"></script>
|
|
||||||
|
|
||||||
<!-- JS Libraies -->
|
|
||||||
<script src="assets/modules/jquery.sparkline.min.js"></script>
|
|
||||||
<script src="assets/modules/chart.min.js"></script>
|
|
||||||
<script src="assets/modules/owlcarousel2/dist/owl.carousel.min.js"></script>
|
|
||||||
<script src="assets/modules/summernote/summernote-bs4.js"></script>
|
|
||||||
<script src="assets/modules/chocolat/dist/js/jquery.chocolat.min.js"></script>
|
|
||||||
|
|
||||||
<!-- Page Specific JS File -->
|
|
||||||
<script src="assets/js/page/index.js"></script>
|
|
||||||
|
|
||||||
<!-- Template JS File -->
|
|
||||||
<script src="assets/js/scripts.js"></script>
|
|
||||||
<script src="assets/js/custom.js"></script>
|
|
||||||
=======
|
|
||||||
@include('admin.layout.header')
|
@include('admin.layout.header')
|
||||||
</header>
|
</header>
|
||||||
|
|
||||||
@ -155,6 +96,48 @@
|
|||||||
|
|
||||||
|
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.1/moment.min.js"></script>
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.1/moment.min.js"></script>
|
||||||
|
<script>
|
||||||
|
$(document).ready(function() {
|
||||||
|
let searchParams = new URLSearchParams(window.location.search);
|
||||||
|
let dateInterval = searchParams.get('from-to');
|
||||||
|
let start = moment().subtract(29, 'days');
|
||||||
|
let end = moment();
|
||||||
|
|
||||||
|
if (dateInterval) {
|
||||||
|
dateInterval = dateInterval.split(' - ');
|
||||||
|
start = moment(dateInterval[0]);
|
||||||
|
end = moment(dateInterval[1]);
|
||||||
|
}
|
||||||
|
|
||||||
|
$('#date-range').daterangepicker({
|
||||||
|
"showDropdowns": true,
|
||||||
|
"showWeekNumbers": true,
|
||||||
|
"alwaysShowCalendars": true,
|
||||||
|
startDate: start,
|
||||||
|
endDate: end,
|
||||||
|
locale: {
|
||||||
|
format: 'YYYY-MM-DD',
|
||||||
|
firstDay: 1,
|
||||||
|
},
|
||||||
|
ranges: {
|
||||||
|
'Today': [moment(), moment()],
|
||||||
|
'Yesterday': [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
|
||||||
|
'Last 7 Days': [moment().subtract(6, 'days'), moment()],
|
||||||
|
'Last 30 Days': [moment().subtract(29, 'days'), moment()],
|
||||||
|
'This Month': [moment().startOf('month'), moment().endOf('month')],
|
||||||
|
'Last Month': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1,
|
||||||
|
'month').endOf(
|
||||||
|
'month')],
|
||||||
|
'This Year': [moment().startOf('year'), moment().endOf('year')],
|
||||||
|
'Last Year': [moment().subtract(1, 'year').startOf('year'), moment().subtract(1, 'year')
|
||||||
|
.endOf(
|
||||||
|
'year')
|
||||||
|
],
|
||||||
|
'All time': [moment().subtract(30, 'year').startOf('month'), moment().endOf('month')],
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
<!-- General JS Scripts -->
|
<!-- General JS Scripts -->
|
||||||
<script src="{{ asset('assets/modules/jquery.min.js') }}"></script>
|
<script src="{{ asset('assets/modules/jquery.min.js') }}"></script>
|
||||||
@ -201,8 +184,71 @@
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
<script>
|
||||||
|
document.addEventListener('DOMContentLoaded', function() {
|
||||||
|
const toggleSwitches = document.querySelectorAll('.switch input[type="checkbox"]');
|
||||||
|
toggleSwitches.forEach(toggleSwitch => {
|
||||||
|
toggleSwitch.addEventListener('change', function() {
|
||||||
|
const parentRow = toggleSwitch.closest('tr');
|
||||||
|
const statusBadge = parentRow.querySelector('.badge');
|
||||||
|
const onText = toggleSwitch.nextElementSibling.getAttribute('data-on-text');
|
||||||
|
const offText = toggleSwitch.nextElementSibling.getAttribute('data-off-text');
|
||||||
|
if (toggleSwitch.checked) {
|
||||||
|
statusBadge.textContent = onText === 'Yes' ? 'Active' : 'Non Active';
|
||||||
|
statusBadge.classList.remove('badge-danger');
|
||||||
|
statusBadge.classList.add('badge-success');
|
||||||
|
} else {
|
||||||
|
statusBadge.textContent = offText === 'No' ? 'Non Active' : 'Active';
|
||||||
|
statusBadge.classList.remove('badge-success');
|
||||||
|
statusBadge.classList.add('badge-danger');
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
<script src="/assets/modules/sweetalert/sweetalert.min.js"></script>
|
||||||
|
<!-- Page Specific JS File -->
|
||||||
|
<script src="/assets/js/page/modules-sweetalert.js"></script>
|
||||||
|
{{-- <script>
|
||||||
|
document.addEventListener('DOMContentLoaded', function() {
|
||||||
|
const swalWithBootstrapButtons = Swal.mixin({
|
||||||
|
customClass: {
|
||||||
|
confirmButton: 'btn btn-success',
|
||||||
|
cancelButton: 'btn btn-danger'
|
||||||
|
},
|
||||||
|
buttonsStyling: false
|
||||||
|
});
|
||||||
|
const swalButton = document.getElementById('Swal');
|
||||||
|
swalButton.addEventListener('click', function() {
|
||||||
|
swalWithBootstrapButtons.fire({
|
||||||
|
title: 'Are you sure?',
|
||||||
|
text: "You won't be able to revert this!",
|
||||||
|
icon: 'warning',
|
||||||
|
showCancelButton: true,
|
||||||
|
confirmButtonText: 'Yes, delete it!',
|
||||||
|
cancelButtonText: 'No, cancel!',
|
||||||
|
reverseButtons: true
|
||||||
|
}).then((result) => {
|
||||||
|
if (result.isConfirmed) {
|
||||||
|
swalWithBootstrapButtons.fire(
|
||||||
|
'Deleted!',
|
||||||
|
'Your file has been deleted.',
|
||||||
|
'success'
|
||||||
|
);
|
||||||
|
} else if (
|
||||||
|
result.dismiss === Swal.DismissReason.cancel
|
||||||
|
) {
|
||||||
|
swalWithBootstrapButtons.fire(
|
||||||
|
'Cancelled',
|
||||||
|
'Your imaginary file is safe :)',
|
||||||
|
'error'
|
||||||
|
);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
</script> --}}
|
||||||
|
|
||||||
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
|
@ -1,37 +1,24 @@
|
|||||||
<div class="main-sidebar sidebar-style-2">
|
<div class="main-sidebar sidebar-style-2">
|
||||||
<aside id="sidebar-wrapper">
|
<aside id="sidebar-wrapper">
|
||||||
<div class="sidebar-brand">
|
<div class="sidebar-brand">
|
||||||
<a href="index.html">REKBER</a>
|
<a href="{{ route('admin.index') }}">REKBER</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="sidebar-brand sidebar-brand-sm">
|
<div class="sidebar-brand sidebar-brand-sm">
|
||||||
<a href="index.html">RK</a>
|
<a href="{{ route('admin.index') }}">RK</a>
|
||||||
</div>
|
</div>
|
||||||
<ul class="sidebar-menu">
|
<ul class="sidebar-menu">
|
||||||
<li class="menu-header">Dashboard</li>
|
<li class="menu-header">Dashboard</li>
|
||||||
|
<li><a class="nav-link active" href="{{ route('admin.index') }}"><i class="fas fa-fire"></i>
|
||||||
<li><a class="nav-link active" href="/"><i class="fas fa-fire"></i> <span>Dashboard</span></a></li>
|
<span>Dashboard</span></a></li>
|
||||||
|
|
||||||
<li class="menu-header">Starter</li>
|
<li class="menu-header">Starter</li>
|
||||||
<li><a class="nav-link" href="/list_user"><i class="far fa-user"></i> <span>User</span></a></li>
|
<li><a class="nav-link" href="{{ route('admin-user.index') }}"><i class="far fa-user"></i>
|
||||||
<li><a class="nav-link" href="/history_transaction"><i
|
<span>User</span></a></li>
|
||||||
|
<li><a class="nav-link" href="{{ route('admin-transaction.index') }}"><i
|
||||||
class="fas fa-columns"></i><span>Transaction</span></a></li>
|
class="fas fa-columns"></i><span>Transaction</span></a></li>
|
||||||
{{-- <li class="dropdown">
|
<li><a class="nav-link" href="{{ route('admin-refund.index') }}"><i class="far fa-square"></i> <span>List
|
||||||
<a href="#" class="nav-link has-dropdown" data-toggle="dropdown"><i class="fas fa-columns"></i>
|
Refund</span></a>
|
||||||
<span>Transaction</span></a>
|
|
||||||
<ul class="dropdown-menu">
|
|
||||||
<li><a class="nav-link" href="/list_transaction">List Transaction</a></li>
|
|
||||||
<li><a class="nav-link" href="/history_transaction">History Transaction</a></li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
</li> --}}
|
|
||||||
<li><a class="nav-link" href="/history_refund"><i class="far fa-square"></i> <span>List Refund</span></a>
|
|
||||||
</li>
|
</li>
|
||||||
|
<li><a class="nav-link" href="/setting"><i class="fas fa-cog"></i> <span>Setting</span></a></li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
{{-- <div class="mt-4 mb-4 p-3 hide-sidebar-mini">
|
|
||||||
<a href="https://getstisla.com/docs" class="btn btn-primary btn-lg btn-block btn-icon-split">
|
|
||||||
<i class="fas fa-rocket"></i> Documentation
|
|
||||||
</a>
|
|
||||||
</div> --}}
|
|
||||||
</aside>
|
</aside>
|
||||||
</div>
|
</div>
|
||||||
|
@ -1,110 +1,160 @@
|
|||||||
@extends('Admin.layout.main')
|
@extends('admin.layout.main')
|
||||||
@section('content')
|
@section('content')
|
||||||
<div class="main-content">
|
<div class="main-content">
|
||||||
<section class="section">
|
<section class="section">
|
||||||
<div class="section profile">
|
<div class="section-header">
|
||||||
<div class="row">
|
<h1>Profile</h1>
|
||||||
<div class="col-xl-4">
|
</div>
|
||||||
<div class="card">
|
<div class="col-12">
|
||||||
<div class="card-body profile-card pt-4 d-flex flex-column align-items-center">
|
<div class="card">
|
||||||
<img src="/assets/img/avatar/avatar-6.png" alt="Profile"
|
<div class="card-head">
|
||||||
class="rounded-circle profile-img-preview shadow"
|
<img id="card_head" src="/assets/images/sampul.jpg"></img>
|
||||||
style="max-width: 150px; max-height: 150px;">
|
|
||||||
{{-- <h2>{{ Auth::user()->get_name() }}</h2> --}}
|
|
||||||
<h3>Super-Admin</h3>
|
|
||||||
<div class="card-footer text-center">
|
|
||||||
<a href="#" class="btn btn-social-icon btn-facebook mr-1">
|
|
||||||
<i class="fab fa-facebook-f"></i>
|
|
||||||
</a>
|
|
||||||
<a href="#" class="btn btn-social-icon btn-twitter mr-1">
|
|
||||||
<i class="fab fa-twitter"></i>
|
|
||||||
</a>
|
|
||||||
<a href="#" class="btn btn-social-icon btn-github mr-1">
|
|
||||||
<i class="fab fa-github"></i>
|
|
||||||
</a>
|
|
||||||
<a href="#" class="btn btn-social-icon btn-instagram">
|
|
||||||
<i class="fab fa-instagram"></i>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
|
<div class="image-crop">
|
||||||
<div class="col-xl-8">
|
<img id="avatar" src="/assets/images/dashboard/img_1.jpg"></img>
|
||||||
<div class="card">
|
</div><br>
|
||||||
<div class="card-body pt-3">
|
<div class="row">
|
||||||
<!-- Bordered Tabs -->
|
<div class="col-lg-12">
|
||||||
<ul class="nav nav-tabs nav-tabs-bordered">
|
<div class="row">
|
||||||
|
<div class="col-md-6">
|
||||||
<li class="nav-item">
|
<div>
|
||||||
<button class="nav-link active" data-bs-toggle="tab"
|
<strong style="font-size: 30px; color: black;"><b>Tsalsabila Jilhan
|
||||||
data-bs-target="#profile-overview">Overview</button>
|
Haura</b></strong><br>
|
||||||
</li>
|
Super Admin<br>
|
||||||
|
</div>
|
||||||
</ul>
|
</div>
|
||||||
<div class="tab-content pt-2">
|
<div class="col-md my-3">
|
||||||
|
<div>
|
||||||
<div class="tab-pane fade show active profile-overview" id="profile-overview">
|
<div class="row justify-content-end row-divider">
|
||||||
<h5 class="card-title">About</h5>
|
<div class="col-1"><i class="fas fa-id-card" style="font-size: 20px;"></i>
|
||||||
<p class="font-weight-italic justified-text">Lorem, ipsum dolor sit amet consectetur
|
</div>
|
||||||
adipisicing
|
<div class="col-lg-9 col-md-8" style="font-size: 15px;">94894893848</div>
|
||||||
elit. Ipsum
|
|
||||||
aspernatur recusandae sapiente praesentium laboriosam reiciendis unde, tempora,
|
|
||||||
veniam
|
|
||||||
asperiores vel omnis ratione corrupti consequatur officia laudantium commodi
|
|
||||||
enim, eum
|
|
||||||
officiis. In earum non vero facere, obcaecati, repudiandae eaque dignissimos ut
|
|
||||||
iure
|
|
||||||
tempora libero ea. Omnis eius sit neque aliquam, sequi corrupti soluta itaque
|
|
||||||
laborum
|
|
||||||
non qui nisi nobis dicta, aperiam corporis voluptates! Ad dolore ipsam quo
|
|
||||||
molestias
|
|
||||||
neque consectetur at ipsa perspiciatis. Unde non possimus voluptas a, minus
|
|
||||||
voluptatem
|
|
||||||
iure inventore fugiat officia iste vitae beatae odit architecto laborum amet
|
|
||||||
voluptates
|
|
||||||
dolorum ut perspiciatis nulla nihil odio! Consequuntur, neque delectus!</p>
|
|
||||||
<h5 class="card-title">Profile Details</h5>
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-lg-3 col-md-4 label ">ID Number</div>
|
|
||||||
<div class="col-lg-9 col-md-8">94894893848</div>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="row">
|
<div class="row justify-content-end row-divider">
|
||||||
<div class="col-lg-3 col-md-4 label ">Full Name</div>
|
<div class="col-1"><i class="fas fa-user" style="font-size:20px"></i></div>
|
||||||
<div class="col-lg-9 col-md-8">JIlhan Haura</div>
|
<div class="col-lg-9 col-md-8" style="font-size: 15px">jilhan Haura</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="row justify-content-end row-divider">
|
||||||
<div class="row">
|
<div class="col-1"><i class="fas fa-user-tag" style="font-size:20px"></i>
|
||||||
<div class="col-lg-3 col-md-4 label">Role</div>
|
</div>
|
||||||
<div class="col-lg-9 col-md-8">
|
<div class="col-lg-9 col-md-8" style="font-size: 15px">Super Admin</div>
|
||||||
Super-Admin
|
</div>
|
||||||
|
<div class="row justify-content-end row-divider">
|
||||||
|
<div class="col-1"><i class="fas fa-map-marker-alt" style="font-size:20px"></i>
|
||||||
|
</div>
|
||||||
|
<div class="col-lg-9 col-md-8" style="font-size: 15px">Jl simpang komplek
|
||||||
|
polda
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="row justify-content-end row-divider">
|
||||||
<div class="row">
|
<div class="col-1"><i class="fas fa-phone" style="font-size:20px"></i>
|
||||||
<div class="col-lg-3 col-md-4 label">Address</div>
|
</div>
|
||||||
<div class="col-lg-9 col-md-8">Jl simpang komplek polda</div>
|
<div class="col-lg-9 col-md-8" style="font-size: 15px">+62 1209 0120 02
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="row justify-content-end row-divider">
|
||||||
<div class="row">
|
<div class="col-1"><i class="fas fa-envelope" style="font-size:20px"></i>
|
||||||
<div class="col-lg-3 col-md-4 label">Phone</div>
|
</div>
|
||||||
<div class="col-lg-9 col-md-8">0345893853</div>
|
<div class="col-lg-9 col-md-8" style="font-size: 15px">jilhan@gmail.com
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-lg-3 col-md-4 label">Email</div>
|
|
||||||
<div class="col-lg-9 col-md-8">jilhanhaura07@gmail.com</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="text-center">
|
||||||
|
<button type="submit" class="btn btn-primary">Save Changes</button>
|
||||||
</div><!-- End Bordered Tabs -->
|
</div>
|
||||||
|
</form><!-- End settings Form -->
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
|
<div class="tab-pane fade pt-3" id="profile-change-password">
|
||||||
|
<!-- Change Password Form -->
|
||||||
|
<form>
|
||||||
|
|
||||||
|
<div class="row mb-3">
|
||||||
|
<label for="currentPassword" class="col-md-4 col-lg-3 col-form-label">Current
|
||||||
|
Password</label>
|
||||||
|
<div class="col-md-8 col-lg-9">
|
||||||
|
<input name="password" type="password" class="form-control"
|
||||||
|
id="currentPassword">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row mb-3">
|
||||||
|
<label for="newPassword" class="col-md-4 col-lg-3 col-form-label">New
|
||||||
|
Password</label>
|
||||||
|
<div class="col-md-8 col-lg-9">
|
||||||
|
<input name="newpassword" type="password" class="form-control" id="newPassword">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row mb-3">
|
||||||
|
<label for="renewPassword" class="col-md-4 col-lg-3 col-form-label">Re-enter New
|
||||||
|
Password</label>
|
||||||
|
<div class="col-md-8 col-lg-9">
|
||||||
|
<input name="renewpassword" type="password" class="form-control"
|
||||||
|
id="renewPassword">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="text-center">
|
||||||
|
<button type="submit" class="btn btn-primary">Change Password</button>
|
||||||
|
</div>
|
||||||
|
</form><!-- End Change Password Form -->
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div><!-- End Bordered Tabs -->
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</section>
|
||||||
@endsection
|
</div>
|
||||||
|
{{-- profile --}}
|
||||||
|
<script>
|
||||||
|
document.addEventListener("DOMContentLoaded", function() {
|
||||||
|
// Mendapatkan elemen-elemen tombol tab
|
||||||
|
const editProfileTab = document.querySelector('[data-bs-target="#profile-edit"]');
|
||||||
|
const settingsTab = document.querySelector('[data-bs-target="#profile-settings"]');
|
||||||
|
const changePasswordTab = document.querySelector('[data-bs-target="#profile-change-password"]');
|
||||||
|
const overviewTab = document.querySelector('[data-bs-target="#profile-overview"]');
|
||||||
|
|
||||||
|
// Menambahkan event listener untuk mengubah tab saat tombol diklik
|
||||||
|
editProfileTab.addEventListener("click", function() {
|
||||||
|
activateTabAndContent(editProfileTab, "#profile-edit");
|
||||||
|
});
|
||||||
|
|
||||||
|
settingsTab.addEventListener("click", function() {
|
||||||
|
activateTabAndContent(settingsTab, "#profile-settings");
|
||||||
|
});
|
||||||
|
|
||||||
|
changePasswordTab.addEventListener("click", function() {
|
||||||
|
activateTabAndContent(changePasswordTab, "#profile-change-password");
|
||||||
|
});
|
||||||
|
|
||||||
|
// Menambahkan event listener untuk kembali ke tab "Overview"
|
||||||
|
overviewTab.addEventListener("click", function() {
|
||||||
|
activateTabAndContent(overviewTab, "#profile-overview");
|
||||||
|
});
|
||||||
|
|
||||||
|
// Fungsi untuk mengaktifkan tab dan konten
|
||||||
|
function activateTabAndContent(tabButton, tabContentId) {
|
||||||
|
// Nonaktifkan tab aktif saat ini
|
||||||
|
const activeTabButton = document.querySelector(".nav-link.active");
|
||||||
|
const activeTabContent = document.querySelector(".tab-pane.active");
|
||||||
|
|
||||||
|
activeTabButton.classList.remove("active");
|
||||||
|
activeTabContent.classList.remove("show", "active");
|
||||||
|
|
||||||
|
// Aktifkan tab yang dipilih
|
||||||
|
tabButton.classList.add("active");
|
||||||
|
|
||||||
|
// Tampilkan konten tab yang dipilih
|
||||||
|
const selectedTabContent = document.querySelector(tabContentId);
|
||||||
|
selectedTabContent.classList.add("show", "active");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
{{-- profile --}}
|
||||||
|
@endsection
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
@extends('Admin.layout.main')
|
@extends('admin.layout.main')
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
<div class="main-content">
|
<div class="main-content">
|
||||||
<section class="section">
|
<section class="section">
|
||||||
@ -13,38 +14,53 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="col-md-12">
|
<div class="col-md-12">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
{{-- <div class="card-header">
|
|
||||||
<h2>Detail Refund</h2>
|
|
||||||
</div> --}}
|
|
||||||
@foreach ($detail_refund as $DetailRefund)
|
@foreach ($detail_refund as $DetailRefund)
|
||||||
<div class="card-body p-0">
|
<div class="card-body p-0">
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<p><strong>Image/Video: </strong></p>
|
<p><strong>Image/Video</strong></p>
|
||||||
<img src="assets/images/dashboard/img_2.jpg" alt="Return Image" width="300">
|
<img src="assets/images/dashboard/img_2.jpg" alt="Return Image" width="300">
|
||||||
<img src="assets/images/dashboard/img_3.jpg" alt="Return Image" width="300">
|
<img src="assets/images/dashboard/img_3.jpg" alt="Return Image" width="300">
|
||||||
<img src="assets/images/dashboard/img_4.jpg" alt="Return Image" width="300"><br><br>
|
<img src="assets/images/dashboard/img_4.jpg" alt="Return Image" width="300">
|
||||||
<p><strong>ID Order:</strong> {{ $DetailRefund['orderId'] }}</p>
|
<br><br>
|
||||||
<p><strong>Customer Name:</strong> {{ $DetailRefund['customer'] }}</p>
|
<div class="row">
|
||||||
<p><strong>Seller Name:</strong> {{ $DetailRefund['seller'] }}</p>
|
<div class="col-2"><strong>ID Order</strong></div>
|
||||||
<p><strong>Total:</strong> {{ $DetailRefund['total'] }}</p>
|
<div class="col">: {{ $DetailRefund['orderId'] }}</div>
|
||||||
<p><strong>Due Date:</strong> {{ $DetailRefund['date'] }}</p>
|
</div><br>
|
||||||
<p class="justified-text"><strong>Reason Complaint:</strong>
|
<div class="row">
|
||||||
{{ $DetailRefund['complaint'] }}</p>
|
<div class="col-2"><strong>Customer Name</strong></div>
|
||||||
|
<div class="col">: {{ $DetailRefund['customer'] }}</div>
|
||||||
|
</div><br>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-2"><strong>Seller Name</strong></div>
|
||||||
|
<div class="col">: {{ $DetailRefund['seller'] }}</div>
|
||||||
|
</div><br>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-2"><strong>Total</strong></div>
|
||||||
|
<div class="col">: {{ $DetailRefund['total'] }}</div>
|
||||||
|
</div><br>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-2"><strong>Due Date</strong></div>
|
||||||
|
<div class="col">: {{ $DetailRefund['date'] }}</div>
|
||||||
|
</div><br>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-2"><strong>Reason Complaint</strong></div>
|
||||||
|
<div class="col justified-text">: {{ $DetailRefund['complaint'] }}</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="d-flex justify-content-center">
|
<div class="d-flex justify-content-center mt-3">
|
||||||
<a href="#" data-toggle="modal" data-target="#ModalRefund"
|
<a href="#" data-toggle="modal" data-target="#ModalRefund"
|
||||||
class="btn btn-primary mx-1">Accept</a>
|
class="btn btn-primary mx-1">Accept</a>
|
||||||
<a href="/history_refund" class="btn btn-danger mx-1">Decline</a>
|
<a href="/history_refund" class="btn btn-danger mx-1">Decline</a>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
</div><br>
|
<br>
|
||||||
</div>
|
</div>
|
||||||
@endforeach
|
@endforeach
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
</section>
|
</section>
|
||||||
</div>
|
</div>
|
||||||
@include('Admin.refund.next-detail-refund')
|
@include('admin.refund.modal-next-detail-refund')
|
||||||
@endsection
|
@endsection
|
||||||
|
@ -1,105 +0,0 @@
|
|||||||
@extends('Admin.layout.main')
|
|
||||||
@section('content')
|
|
||||||
<div class="main-content">
|
|
||||||
<section class="section">
|
|
||||||
<div class="section-header">
|
|
||||||
<h1>History Refund</h1>
|
|
||||||
<div class="section-header-breadcrumb">
|
|
||||||
<div class="breadcrumb-item active"><a href="#">Dashboard</a></div>
|
|
||||||
<div class="breadcrumb-item">Refund</div>
|
|
||||||
<div class="breadcrumb-item">History</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-12">
|
|
||||||
<div class="card">
|
|
||||||
{{-- <div class="card-header">
|
|
||||||
<h2>History Refund</h2>
|
|
||||||
</div> --}}
|
|
||||||
<div class="d-flex justify-content-between align-items-center p-4">
|
|
||||||
<div class="d-flex align-items-center">
|
|
||||||
<span class="mb-0 ml-2">Show:</span>
|
|
||||||
<select class="form-select ml-2">
|
|
||||||
<option>10</option>
|
|
||||||
<option>25</option>
|
|
||||||
<option>50</option>
|
|
||||||
<option>100</option>
|
|
||||||
</select>
|
|
||||||
<span class="ml-2">entries</span>
|
|
||||||
</div>
|
|
||||||
<div class="float-right">
|
|
||||||
<form>
|
|
||||||
<div class="input-group">
|
|
||||||
<input type="text" class="form-control" placeholder="Search">
|
|
||||||
<div class="input-group-append">
|
|
||||||
<button class="btn btn-primary"><i class="fas fa-search"></i></button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="card-body">
|
|
||||||
<div class="table-responsive">
|
|
||||||
<table class="table table-bordered table-md">
|
|
||||||
<tr>
|
|
||||||
<th>Order ID</th>
|
|
||||||
<th>Customer</th>
|
|
||||||
<th>Seller</th>
|
|
||||||
<th>Total</th>
|
|
||||||
<th>Due Date</th>
|
|
||||||
<th>Status</th>
|
|
||||||
<th>Action</th>
|
|
||||||
</tr>
|
|
||||||
@foreach ($history_refund as $HistoryRefund)
|
|
||||||
<tr>
|
|
||||||
<td class="font-weight-600">{{ $HistoryRefund['orderId'] }}</a></td>
|
|
||||||
<td class="font-weight-600">{{ $HistoryRefund['customer'] }}</td>
|
|
||||||
<td class="font-weight-600">{{ $HistoryRefund['seller'] }}</td>
|
|
||||||
<td class="font-weight-600">{{ $HistoryRefund['total'] }}</td>
|
|
||||||
<td>{{ $HistoryRefund['date'] }}</td>
|
|
||||||
<td>
|
|
||||||
<div class="badge badge-danger">{{ $HistoryRefund['status'] }}</div>
|
|
||||||
</td>
|
|
||||||
<td>
|
|
||||||
<div class="btn-group">
|
|
||||||
<button type="button" class="btn btn-primary dropdown-toggle"
|
|
||||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
|
||||||
Action
|
|
||||||
</button>
|
|
||||||
<div class="dropdown-menu">
|
|
||||||
<a class="dropdown-item" href="/detail_refund">Details</a>
|
|
||||||
<a class="dropdown-item" href="#">Edit</a>
|
|
||||||
<a class="dropdown-item" href="#">Delete</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
@endforeach
|
|
||||||
</table>
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-body">
|
|
||||||
<div class="d-flex justify-content-end">
|
|
||||||
<nav aria-label="paginate">
|
|
||||||
<ul class="pagination">
|
|
||||||
<li class="page-item disabled">
|
|
||||||
<a class="page-link" href="#" tabindex="-1">Previous</a>
|
|
||||||
</li>
|
|
||||||
<li class="page-item active"><a class="page-link" href="#">1</a></li>
|
|
||||||
<li class="page-item ">
|
|
||||||
<a class="page-link" href="#">2 <span
|
|
||||||
class="sr-only">(current)</span></a>
|
|
||||||
</li>
|
|
||||||
<li class="page-item"><a class="page-link" href="#">3</a></li>
|
|
||||||
<li class="page-item">
|
|
||||||
<a class="page-link" href="#">Next</a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</nav>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
@endsection
|
|
@ -49,7 +49,7 @@
|
|||||||
</button>
|
</button>
|
||||||
<div class="dropdown-menu">
|
<div class="dropdown-menu">
|
||||||
<a class="dropdown-item" href="/detail_refund">Details</a>
|
<a class="dropdown-item" href="/detail_refund">Details</a>
|
||||||
<a class="dropdown-item" href="#">Delete</a>
|
<a class="dropdown-item" href="#" id="Swal">Delete</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
|
@ -1,30 +0,0 @@
|
|||||||
<!-- Modal -->
|
|
||||||
<div class="modal fade" id="ModalRefund" tabindex="-1" role="dialog" aria-labelledby="exampleModalCenterTitle"
|
|
||||||
aria-hidden="true">
|
|
||||||
<div class="modal-dialog modal-dialog-centered" role="document">
|
|
||||||
<div class="modal-content">
|
|
||||||
<div class="modal-header">
|
|
||||||
<h5 class="modal-title" id="exampleModalLongTitle">Refund Confirmation</h5>
|
|
||||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
|
|
||||||
<span aria-hidden="true">×</span>
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
<div class="modal-body">
|
|
||||||
<h6> Apakah kamu yakin untuk menerima pengembalian dana? </h6>
|
|
||||||
<h7><b>Jumlah Pengembalian Dana: </b></h7>
|
|
||||||
<p>Rp. 15000</p>
|
|
||||||
|
|
||||||
<input type="radio" id="yes" name="fav_language" value="yes">
|
|
||||||
<label for="yes">Ya! Terima pengembalian dana </label> <br>
|
|
||||||
<input type="radio" id="no" name="fav_language" value="no">
|
|
||||||
<label for="no">Tidak! Pengembalian dana tidak bisa dilanjutkan</label>
|
|
||||||
|
|
||||||
|
|
||||||
</div>
|
|
||||||
<div class="modal-footer">
|
|
||||||
<button type="button" class="btn btn-danger" data-dismiss="modal">Cancel</button>
|
|
||||||
<a href="{{route('refund.index')}}" class="btn btn-primary mx-1">Accept Refund</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
@ -27,8 +27,15 @@
|
|||||||
<input type="number" class="form-control" name="persentase" required>
|
<input type="number" class="form-control" name="persentase" required>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<<<<<<< HEAD:resources/views/Admin/setting/add-Data.blade.php
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-body text-center">
|
||||||
|
<button class="btn btn-primary" id="swal-2">Submit</button>
|
||||||
|
</div>
|
||||||
|
=======
|
||||||
<div class="card-footer text-right">
|
<div class="card-footer text-right">
|
||||||
<button class="btn btn-primary" id="simpan" type="submit">Simpan</button>
|
<button class="btn btn-primary" id="simpan" type="submit">Simpan</button>
|
||||||
|
>>>>>>> c6e7e74f2a6981b808e6ad8dc9499362fdf9f043:resources/views/Admin/setting/modal-add-setting.blade.php
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
|
@ -1,178 +0,0 @@
|
|||||||
<!-- Modal -->
|
|
||||||
<div class="modal fade" id="ModalTransaction" tabindex="-1" role="dialog" aria-labelledby="exampleModalCenterTitle"
|
|
||||||
aria-hidden="true">
|
|
||||||
<div class="modal-dialog modal-dialog-centered" role="document">
|
|
||||||
<div class="modal-content">
|
|
||||||
<div class="modal-header">
|
|
||||||
<h2 class="modal-title" id="exampleModalLongTitle">Tracking Information</h2>
|
|
||||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
|
|
||||||
<span aria-hidden="true">×</span>
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
<div class="modal-body">
|
|
||||||
<div class="section-body">
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-12">
|
|
||||||
<div class="activities">
|
|
||||||
<div class="activity">
|
|
||||||
<div class="activity-icon bg-primary text-white shadow-primary">
|
|
||||||
<i class="fas fa-comment-alt"></i>
|
|
||||||
</div>
|
|
||||||
<div class="activity-detail">
|
|
||||||
<div class="mb-2">
|
|
||||||
<span class="text-job text-primary">2 min ago</span>
|
|
||||||
<span class="bullet"></span>
|
|
||||||
<a class="text-job" href="#">View</a>
|
|
||||||
<div class="float-right dropdown">
|
|
||||||
<a href="#" data-toggle="dropdown"><i
|
|
||||||
class="fas fa-ellipsis-h"></i></a>
|
|
||||||
<div class="dropdown-menu">
|
|
||||||
<div class="dropdown-title">Options</div>
|
|
||||||
<a href="#" class="dropdown-item has-icon"><i
|
|
||||||
class="fas fa-eye"></i> View</a>
|
|
||||||
<a href="#" class="dropdown-item has-icon"><i
|
|
||||||
class="fas fa-list"></i> Detail</a>
|
|
||||||
<div class="dropdown-divider"></div>
|
|
||||||
<a href="#" class="dropdown-item has-icon text-danger"
|
|
||||||
data-confirm="Wait, wait, wait...|This action can't be undone. Want to take risks?"
|
|
||||||
data-confirm-text-yes="Yes, IDC"><i
|
|
||||||
class="fas fa-trash-alt"></i> Archive</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<p>Have commented on the task of "<a href="#">Responsive
|
|
||||||
design</a>".</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="activity">
|
|
||||||
<div class="activity-icon bg-primary text-white shadow-primary">
|
|
||||||
<i class="fas fa-arrows-alt"></i>
|
|
||||||
</div>
|
|
||||||
<div class="activity-detail">
|
|
||||||
<div class="mb-2">
|
|
||||||
<span class="text-job">1 hour ago</span>
|
|
||||||
<span class="bullet"></span>
|
|
||||||
<a class="text-job" href="#">View</a>
|
|
||||||
<div class="float-right dropdown">
|
|
||||||
<a href="#" data-toggle="dropdown"><i
|
|
||||||
class="fas fa-ellipsis-h"></i></a>
|
|
||||||
<div class="dropdown-menu">
|
|
||||||
<div class="dropdown-title">Options</div>
|
|
||||||
<a href="#" class="dropdown-item has-icon"><i
|
|
||||||
class="fas fa-eye"></i> View</a>
|
|
||||||
<a href="#" class="dropdown-item has-icon"><i
|
|
||||||
class="fas fa-list"></i> Detail</a>
|
|
||||||
<div class="dropdown-divider"></div>
|
|
||||||
<a href="#" class="dropdown-item has-icon text-danger"
|
|
||||||
data-confirm="Wait, wait, wait...|This action can't be undone. Want to take risks?"
|
|
||||||
data-confirm-text-yes="Yes, IDC"><i
|
|
||||||
class="fas fa-trash-alt"></i> Archive</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<p>Moved the task "<a href="#">Fix some features that are bugs in
|
|
||||||
the master module</a>" from Progress to Finish.</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="activity">
|
|
||||||
<div class="activity-icon bg-primary text-white shadow-primary">
|
|
||||||
<i class="fas fa-unlock"></i>
|
|
||||||
</div>
|
|
||||||
<div class="activity-detail">
|
|
||||||
<div class="mb-2">
|
|
||||||
<span class="text-job">4 hour ago</span>
|
|
||||||
<span class="bullet"></span>
|
|
||||||
<a class="text-job" href="#">View</a>
|
|
||||||
<div class="float-right dropdown">
|
|
||||||
<a href="#" data-toggle="dropdown"><i
|
|
||||||
class="fas fa-ellipsis-h"></i></a>
|
|
||||||
<div class="dropdown-menu">
|
|
||||||
<div class="dropdown-title">Options</div>
|
|
||||||
<a href="#" class="dropdown-item has-icon"><i
|
|
||||||
class="fas fa-eye"></i> View</a>
|
|
||||||
<a href="#" class="dropdown-item has-icon"><i
|
|
||||||
class="fas fa-list"></i> Detail</a>
|
|
||||||
<div class="dropdown-divider"></div>
|
|
||||||
<a href="#" class="dropdown-item has-icon text-danger"
|
|
||||||
data-confirm="Wait, wait, wait...|This action can't be undone. Want to take risks?"
|
|
||||||
data-confirm-text-yes="Yes, IDC"><i
|
|
||||||
class="fas fa-trash-alt"></i> Archive</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<p>Login to the system with ujang@maman.com email and location in Bogor.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="activity">
|
|
||||||
<div class="activity-icon bg-primary text-white shadow-primary">
|
|
||||||
<i class="fas fa-trash"></i>
|
|
||||||
</div>
|
|
||||||
<div class="activity-detail">
|
|
||||||
<div class="mb-2">
|
|
||||||
<span class="text-job">Yesterday</span>
|
|
||||||
<span class="bullet"></span>
|
|
||||||
<a class="text-job" href="#">View</a>
|
|
||||||
<div class="float-right dropdown">
|
|
||||||
<a href="#" data-toggle="dropdown"><i
|
|
||||||
class="fas fa-ellipsis-h"></i></a>
|
|
||||||
<div class="dropdown-menu">
|
|
||||||
<div class="dropdown-title">Options</div>
|
|
||||||
<a href="#" class="dropdown-item has-icon"><i
|
|
||||||
class="fas fa-eye"></i> View</a>
|
|
||||||
<a href="#" class="dropdown-item has-icon"><i
|
|
||||||
class="fas fa-list"></i> Detail</a>
|
|
||||||
<div class="dropdown-divider"></div>
|
|
||||||
<a href="#" class="dropdown-item has-icon text-danger"
|
|
||||||
data-confirm="Wait, wait, wait...|This action can't be undone. Want to take risks?"
|
|
||||||
data-confirm-text-yes="Yes, IDC"><i
|
|
||||||
class="fas fa-trash-alt"></i> Archive</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<p>Assign the task of "<a href="#">Redesigning website header and
|
|
||||||
make it responsive AF</a>" to <a href="#">Syahdan
|
|
||||||
Ubaidilah</a>.</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="modal-footer">
|
|
||||||
<a href="/history_transaction" class="btn btn-primary mx-1">Back</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
{{-- @extends('layout.main')
|
|
||||||
@section('content')
|
|
||||||
@foreach ($detail_transaction as $detail_transactions)
|
|
||||||
<div class="main-content">
|
|
||||||
<section class="section">
|
|
||||||
<div class="tracking-container">
|
|
||||||
<h2>Tracking Information</h2>
|
|
||||||
<div class="tracking-info">
|
|
||||||
<p>Tracking Number: <span
|
|
||||||
class="tracking-status">{{ $detail_transactions['tracking_number'] }}</span></p>
|
|
||||||
<p>Order ID: <span class="tracking-status">{{ $detail_transactions['orderId'] }}</span></p>
|
|
||||||
<p>Status: <span class="tracking-status">{{ $detail_transactions['status'] }}</span></p>
|
|
||||||
<p>Estimated: {{ $detail_transactions['estimated'] }}</p>
|
|
||||||
</div>
|
|
||||||
<h2>Tracking Details</h2>
|
|
||||||
<ul>
|
|
||||||
<li>{{ $detail_transactions['tracking_detail1'] }}</li>
|
|
||||||
<li>{{ $detail_transactions['tracking_detail2'] }}</li>
|
|
||||||
<li>{{ $detail_transactions['tracking_detail3'] }}</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
</div>
|
|
||||||
@endforeach
|
|
||||||
@endsection --}}
|
|
@ -1,104 +0,0 @@
|
|||||||
@extends('Admin.layout.main')
|
|
||||||
@section('content')
|
|
||||||
<div class="main-content">
|
|
||||||
<section class="section">
|
|
||||||
<div class="section-header">
|
|
||||||
<h1>History Transaction</h1>
|
|
||||||
<div class="section-header-breadcrumb">
|
|
||||||
<div class="breadcrumb-item active"><a href="#">Dashboard</a></div>
|
|
||||||
<div class="breadcrumb-item">Transaction</div>
|
|
||||||
<div class="breadcrumb-item">History</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-12">
|
|
||||||
<div class="card">
|
|
||||||
<div class="d-flex justify-content-between align-items-center p-4">
|
|
||||||
<div class="d-flex align-items-center">
|
|
||||||
<span class="mb-0 ml-2">Show:</span>
|
|
||||||
<select class="form-select ml-2">
|
|
||||||
<option>10</option>
|
|
||||||
<option>25</option>
|
|
||||||
<option>50</option>
|
|
||||||
<option>100</option>
|
|
||||||
</select>
|
|
||||||
<span class="ml-2">entries</span>
|
|
||||||
</div>
|
|
||||||
<div class="float-right">
|
|
||||||
<form>
|
|
||||||
<div class="input-group">
|
|
||||||
<input type="text" class="form-control" placeholder="Search">
|
|
||||||
<div class="input-group-append">
|
|
||||||
<button class="btn btn-primary"><i class="fas fa-search"></i></button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="card-body">
|
|
||||||
<div class="table-responsive">
|
|
||||||
<table class="table table-bordered table-md">
|
|
||||||
<tr>
|
|
||||||
<th>Order ID</th>
|
|
||||||
<th>Customer</th>
|
|
||||||
<th>Seller</th>
|
|
||||||
<th>Total</th>
|
|
||||||
<th>Due Date</th>
|
|
||||||
<th>Status</th>
|
|
||||||
<th>Action</th>
|
|
||||||
</tr>
|
|
||||||
@foreach ($transaction as $transactions)
|
|
||||||
<tr>
|
|
||||||
<td><a href="#">{{ $transactions['orderId'] }}</a></td>
|
|
||||||
<td class="font-weight-600">{{ $transactions['customer'] }}</td>
|
|
||||||
<td class="font-weight-600">{{ $transactions['seller'] }}</td>
|
|
||||||
<td class="font-weight-600">{{ $transactions['total'] }}</td>
|
|
||||||
<td>{{ $transactions['date'] }}</td>
|
|
||||||
<td>
|
|
||||||
<div class="badge badge-success">{{ $transactions['status'] }}</div>
|
|
||||||
</td>
|
|
||||||
<td>
|
|
||||||
<div class="btn-group">
|
|
||||||
<button type="button" class="btn btn-primary dropdown-toggle"
|
|
||||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
|
||||||
Action
|
|
||||||
</button>
|
|
||||||
<div class="dropdown-menu">
|
|
||||||
<a class="dropdown-item" href="/detail_transaction">Details</a>
|
|
||||||
<a class="dropdown-item" href="#" data-toggle="modal"
|
|
||||||
data-target="#ModalTransaction">Tracking</a>
|
|
||||||
<a class="dropdown-item" href="#">Delete</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
@endforeach
|
|
||||||
</table>
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-body">
|
|
||||||
<div class="d-flex justify-content-end">
|
|
||||||
<nav aria-label="paginate">
|
|
||||||
<ul class="pagination">
|
|
||||||
<li class="page-item disabled">
|
|
||||||
<a class="page-link" href="#" tabindex="-1">Previous</a>
|
|
||||||
</li>
|
|
||||||
<li class="page-item active"><a class="page-link" href="#">1</a></li>
|
|
||||||
<li class="page-item ">
|
|
||||||
<a class="page-link" href="#">2 <span
|
|
||||||
class="sr-only">(current)</span></a>
|
|
||||||
</li>
|
|
||||||
<li class="page-item"><a class="page-link" href="#">3</a></li>
|
|
||||||
<li class="page-item">
|
|
||||||
<a class="page-link" href="#">Next</a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</nav>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
@include('Admin.transaction.Tracking')
|
|
||||||
@endsection
|
|
@ -1,111 +0,0 @@
|
|||||||
<!-- Modal -->
|
|
||||||
<div class="modal fade" id="ModalTransaction" tabindex="-1" role="dialog" aria-labelledby="exampleModalCenterTitle"
|
|
||||||
aria-hidden="true">
|
|
||||||
<div class="modal-dialog modal-dialog-centered" role="document">
|
|
||||||
<div class="modal-content">
|
|
||||||
<div class="modal-header">
|
|
||||||
<h2 class="modal-title" id="exampleModalLongTitle">Tracking Information</h2>
|
|
||||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
|
|
||||||
<span aria-hidden="true">×</span>
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
<div class="modal-body">
|
|
||||||
<div class="section-body">
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-12">
|
|
||||||
<div class="activities">
|
|
||||||
<div class="activity">
|
|
||||||
<div class="activity-icon bg-primary text-white shadow-primary">
|
|
||||||
<i class="fas fa-comment-alt"></i>
|
|
||||||
</div>
|
|
||||||
<div class="activity-detail">
|
|
||||||
<div class="mb-2">
|
|
||||||
<span class="text-job text-primary">August 21, 2023, 8:30:15 am</span>
|
|
||||||
</div>
|
|
||||||
<p>User Created Trade</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="activity">
|
|
||||||
<div class="activity-icon bg-primary text-white shadow-primary">
|
|
||||||
<i class="fas fa-arrows-alt"></i>
|
|
||||||
</div>
|
|
||||||
<div class="activity-detail">
|
|
||||||
<div class="mb-2">
|
|
||||||
<span class="text-job text-primary">August 22, 2023, 8:30:15 am</span>
|
|
||||||
</div>
|
|
||||||
<p>System Notified Admin</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="activity">
|
|
||||||
<div class="activity-icon bg-primary text-white shadow-primary">
|
|
||||||
<i class="fas fa-unlock"></i>
|
|
||||||
</div>
|
|
||||||
<div class="activity-detail">
|
|
||||||
<div class="mb-2">
|
|
||||||
<span class="text-job text-primary">August 23, 2023, 8:30:15 am</span>
|
|
||||||
</div>
|
|
||||||
<p>Admin Accepted Trade</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="activity">
|
|
||||||
<div class="activity-icon bg-primary text-white shadow-primary">
|
|
||||||
<i class="fas fa-trash"></i>
|
|
||||||
</div>
|
|
||||||
<div class="activity-detail">
|
|
||||||
<div class="mb-2">
|
|
||||||
<span class="text-job text-primary">August 24, 2023, 8:30:15 am</span>
|
|
||||||
</div>
|
|
||||||
<p>Trade in system</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="activity">
|
|
||||||
<div class="activity-icon bg-primary text-white shadow-primary">
|
|
||||||
<i class="fas fa-comment-alt"></i>
|
|
||||||
</div>
|
|
||||||
<div class="activity-detail">
|
|
||||||
<div class="mb-2">
|
|
||||||
<span class="text-job text-primary">August 24, 2023, 8:30:15 am</span>
|
|
||||||
</div>
|
|
||||||
<p>Transaction Success</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="modal-footer">
|
|
||||||
<a href="{{ route('admin-transaction.index') }}" class="btn btn-primary mx-1">Back</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
{{-- @extends('layout.main')
|
|
||||||
@section('content')
|
|
||||||
@foreach ($detail_transaction as $detail_transactions)
|
|
||||||
<div class="main-content">
|
|
||||||
<section class="section">
|
|
||||||
<div class="tracking-container">
|
|
||||||
<h2>Tracking Information</h2>
|
|
||||||
<div class="tracking-info">
|
|
||||||
<p>Tracking Number: <span
|
|
||||||
class="tracking-status">{{ $detail_transactions['tracking_number'] }}</span></p>
|
|
||||||
<p>Order ID: <span class="tracking-status">{{ $detail_transactions['orderId'] }}</span></p>
|
|
||||||
<p>Status: <span class="tracking-status">{{ $detail_transactions['status'] }}</span></p>
|
|
||||||
<p>Estimated: {{ $detail_transactions['estimated'] }}</p>
|
|
||||||
</div>
|
|
||||||
<h2>Tracking Details</h2>
|
|
||||||
<ul>
|
|
||||||
<li>{{ $detail_transactions['tracking_detail1'] }}</li>
|
|
||||||
<li>{{ $detail_transactions['tracking_detail2'] }}</li>
|
|
||||||
<li>{{ $detail_transactions['tracking_detail3'] }}</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
</div>
|
|
||||||
@endforeach
|
|
||||||
@endsection --}}
|
|
@ -61,7 +61,7 @@
|
|||||||
<a class="dropdown-item" href="{{route('transaction.detail')}}">Details</a>
|
<a class="dropdown-item" href="{{route('transaction.detail')}}">Details</a>
|
||||||
<a class="dropdown-item" href="#" data-toggle="modal"
|
<a class="dropdown-item" href="#" data-toggle="modal"
|
||||||
data-target="#ModalTransaction">Tracking</a>
|
data-target="#ModalTransaction">Tracking</a>
|
||||||
<a class="dropdown-item" href="#">Delete</a>
|
<a class="dropdown-item" href="#" id="Swal">Delete</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
|
@ -5,38 +5,45 @@
|
|||||||
<div class="section-header">
|
<div class="section-header">
|
||||||
<h1>Detail Users</h1>
|
<h1>Detail Users</h1>
|
||||||
<div class="section-header-breadcrumb">
|
<div class="section-header-breadcrumb">
|
||||||
<div class="breadcrumb-item active"><a href="#">Dashboard</a></div>
|
<div class="breadcrumb-item active"><a href="{{ route('admin.index') }}">Dashboard</a></div>
|
||||||
<div class="breadcrumb-item">Users</div>
|
<div class="breadcrumb-item">Users</div>
|
||||||
<div class="breadcrumb-item">Details</div>
|
<div class="breadcrumb-item">Details</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row justify-content-center">
|
<div class="row justify-content-center">
|
||||||
<div class="col-md-6">
|
<div class="col-md-9">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div class="d-flex justify-content-between align-items-center">
|
<div class="d-flex justify-content-between align-items-center">
|
||||||
<div class="card-title pb-2 m-0">User Id<br /><span>#324525</span>
|
<div class="card-title pb-2 m-0">User Id<br /><span>#{{ $user->id }}</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="d-flex flex-column">
|
<div class="d-flex flex-column">
|
||||||
<img src="/assets/img/avatar/avatar-6.png" class="rounded-circle shadow align-self-center"
|
@if ($user->foto_profil == null)
|
||||||
style="max-width: 130px;" alt="" srcset="">
|
<img src="{{ asset('assets/img/avatar/avatar-6.png') }}"
|
||||||
|
class="rounded-circle shadow align-self-center"style="max-width: 130px;"
|
||||||
|
alt="" srcset="">
|
||||||
|
@else
|
||||||
|
<img src="{{ asset('storage/foto-profil/' . $user->foto_profil) }}"
|
||||||
|
class="rounded-circle shadow align-self-center" style="max-width: 130px;"
|
||||||
|
alt="" srcset="">
|
||||||
|
@endif
|
||||||
|
<h4 class="align-self-center mt-3">Status :
|
||||||
|
{{ $user->status == 'Finished' ? 'Selesai diverifikasi' : ($user->status == 'Progress' ? 'Sedang diverifikasi' : 'Tolak') }}
|
||||||
|
</h4>
|
||||||
<hr class="border border-1 opacity-75 w-100">
|
<hr class="border border-1 opacity-75 w-100">
|
||||||
<div class="data-field">
|
<div class="data-field">
|
||||||
<span class="fw-bold text-start">Name</span>
|
<span class="fw-bold text-start">NIK</span>
|
||||||
<span class="text-muted ">jilhan haura</span>
|
<span class="text-muted ">{{ $user->nik }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="data-field">
|
<div class="data-field">
|
||||||
<span class="fw-bold text-start">Gender</span>
|
<span class="fw-bold text-start">Nama</span>
|
||||||
<span class="text-muted ">female</span>
|
<span
|
||||||
|
class="text-muted ">{{ ucwords(strtolower($user->nama_depan . ' ' . $user->nama_belakang)) }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="data-field">
|
<div class="data-field">
|
||||||
<span class="fw-bold text-start">Religion</span>
|
<span class="fw-bold text-start">Jenis Kelamin</span>
|
||||||
<span class="text-muted ">muslim</span>
|
<span class="text-muted ">{{ $user->gender }}</span>
|
||||||
</div>
|
|
||||||
<div class="data-field">
|
|
||||||
<span class="fw-bold text-start">Blood Type</span>
|
|
||||||
<span class="text-muted ">ab</span>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<hr class="border border-1 opacity-75 w-100">
|
<hr class="border border-1 opacity-75 w-100">
|
||||||
@ -48,41 +55,214 @@
|
|||||||
|
|
||||||
<div class="data-field">
|
<div class="data-field">
|
||||||
<span class="fw-bold text-start">Email</span>
|
<span class="fw-bold text-start">Email</span>
|
||||||
<span class="text-muted ">jilhanhaura07@gmail.com</span>
|
<span class="text-muted ">{{ $user->email }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="data-field">
|
<div class="data-field">
|
||||||
<span class="fw-bold text-start">Phone Number</span>
|
<span class="fw-bold text-start">Nomor HP</span>
|
||||||
<span class="text-muted ">929382044824</span>
|
<span class="text-muted ">{{ $user->nohp }}</span>
|
||||||
</div>
|
</div>
|
||||||
<hr class="border border-1 opacity-75 w-100">
|
<hr class="border border-1 opacity-75 w-100">
|
||||||
<div class="d-flex justify-content-between align-items-center">
|
<div class="d-flex justify-content-between align-items-center">
|
||||||
<div class="card-title pb-2 m-0">
|
<div class="card-title pb-2 m-0">
|
||||||
<h4>Address</h4>
|
<h4>Alamat</h4>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="data-field">
|
<div class="data-field">
|
||||||
<span class="fw-bold text-start">Province</span>
|
<span class="fw-bold text-start">Provinsi</span>
|
||||||
<span class="text-muted ">sumbar</span>
|
<span class="text-muted ">{{ ucwords(strtolower($user->getProvinceName())) }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="data-field">
|
<div class="data-field">
|
||||||
<span class="fw-bold text-start">City</span>
|
<span class="fw-bold text-start">Kota/Kabupaten</span>
|
||||||
<span class="text-muted ">padang</span>
|
<span class="text-muted ">{{ ucwords(strtolower($user->getCityName())) }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="data-field">
|
<div class="data-field">
|
||||||
<span class="fw-bold text-start">District</span>
|
<span class="fw-bold text-start">Kecamatan</span>
|
||||||
<span class="text-muted ">asadcas</span>
|
<span class="text-muted ">{{ ucwords(strtolower($user->getDistrictName())) }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="data-field">
|
<div class="data-field">
|
||||||
<span class="fw-bold text-start">Village</span>
|
<span class="fw-bold text-start">Kelurahan</span>
|
||||||
<span class="text-muted ">balaibaru</span>
|
<span class="text-muted ">{{ ucwords(strtolower($user->getVillageName())) }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="data-field">
|
<div class="data-field">
|
||||||
<span class="fw-bold text-start">Detail</span>
|
<span class="fw-bold text-start">Alamat</span>
|
||||||
<span class="text-muted ">fafaafadad</span>
|
<span class="text-muted ">{{ $user->alamat }}</span>
|
||||||
</div>
|
</div>
|
||||||
|
<hr class="border border-1 opacity-75 w-100">
|
||||||
|
<div class="d-flex justify-content-between align-items-center">
|
||||||
|
<div class="card-title pb-2 m-0">
|
||||||
|
<h4>Foto KTP dan Wajah</h4>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="container">
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-6 col-sm-12 text-center">
|
||||||
|
<!-- Kolom pertama, col-md-6 untuk layar medium dan col-sm-12 untuk layar kecil -->
|
||||||
|
@if ($user->foto_ktp == null)
|
||||||
|
<a href="#" id="tampilKTP">
|
||||||
|
<img id="fotoKTP" src="/assets/images/foto-ktp.jpg" alt="Foto KTP"
|
||||||
|
class="align-self-center img-fluid" style="max-width: 350px;">
|
||||||
|
</a>
|
||||||
|
@else
|
||||||
|
<a href="#" id="tampilKTP">
|
||||||
|
<img id="fotoKTP" src="/assets/images/foto-ktp.jpg" alt="Foto Wajah"
|
||||||
|
class="align-self-center img-fluid" style="max-width: 350px;">
|
||||||
|
</a>
|
||||||
|
@endif
|
||||||
|
</div>
|
||||||
|
<div class="col-md-6 col-sm-12 text-center">
|
||||||
|
<!-- Kolom kedua, col-md-6 untuk layar medium dan col-sm-12 untuk layar kecil -->
|
||||||
|
@if ($user->foto_wajah == null)
|
||||||
|
<a href="#" id="tampilWajah">
|
||||||
|
<img id="fotoWajah" src="/assets/images/foto-ktp.jpg" alt="Foto KTP"
|
||||||
|
class="align-self-center img-fluid" style="max-width: 350px;">
|
||||||
|
</a>
|
||||||
|
@else
|
||||||
|
<a href="#" id="tampilWajah">
|
||||||
|
<img id="fotoWajah" src="/assets/images/foto-ktp.jpg" alt="Foto Wajah"
|
||||||
|
class="align-self-center img-fluid" style="max-width: 350px;">
|
||||||
|
</a>
|
||||||
|
@endif
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="data-field mt-4">
|
||||||
|
<span class="fw-bold text-start">Persentase Kemiripan</span>
|
||||||
|
<span class="text-muted ">{{ $user->persentase_kemiripan }}</span>
|
||||||
|
</div>
|
||||||
|
@if ($user->status == 'Progress')
|
||||||
|
<div class="d-flex justify-content-between align-items-center">
|
||||||
|
<div class="card-title pb-2 m-0">
|
||||||
|
<h4>Setujui pembuatan akun ini?</h4>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<a class="btn btn-primary text-white" id="approveUser"
|
||||||
|
data-id="{{ $user->id }}">Setujui</a>
|
||||||
|
<a class="btn btn-danger text-white" id="denyUser"
|
||||||
|
data-id="{{ $user->id }}">Tolak</a>
|
||||||
|
@endif
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
</section>
|
||||||
</div>
|
</div>
|
||||||
|
<script>
|
||||||
|
$(document).ready(function() {
|
||||||
|
$('#tampilKTP').on('click', function() {
|
||||||
|
let fotoKTP = document.getElementById('fotoKTP').src;
|
||||||
|
console.log(fotoKTP);
|
||||||
|
Swal.fire({
|
||||||
|
title: 'Foto KTP',
|
||||||
|
imageUrl: fotoKTP,
|
||||||
|
imageWidth: 600,
|
||||||
|
// imageHeight: 1500,
|
||||||
|
imageAlt: 'Foto KTP'
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#tampilWajah').on('click', function() {
|
||||||
|
let fotoWajah = document.getElementById('fotoWajah').src;
|
||||||
|
Swal.fire({
|
||||||
|
title: 'Foto Wajah',
|
||||||
|
imageUrl: fotoWajah,
|
||||||
|
imageWidth: 600,
|
||||||
|
imageAlt: 'Foto Wajah'
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#approveUser').on('click', function() {
|
||||||
|
let id = $(this).data('id');
|
||||||
|
const csrfToken = $('meta[name="csrf-token"]').attr('content');
|
||||||
|
Swal.fire({
|
||||||
|
title: 'Status Akun',
|
||||||
|
text: 'Apakah anda yakin menyetujui akun ini?',
|
||||||
|
icon: 'info',
|
||||||
|
confirmButtonText: 'Ya, setuju!',
|
||||||
|
showCancelButton: true,
|
||||||
|
cancelButtonText: 'Tidak'
|
||||||
|
}).then((result) => {
|
||||||
|
if (result.isConfirmed) {
|
||||||
|
$.ajaxSetup({
|
||||||
|
headers: {
|
||||||
|
'X-CSRF-TOKEN': csrfToken
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
url: "{{ route('admin-user.approve', ':id') }}".replace(
|
||||||
|
':id', id),
|
||||||
|
type: 'PUT',
|
||||||
|
success: function(response) {
|
||||||
|
Swal.fire({
|
||||||
|
title: response.status ? 'Berhasil!' :
|
||||||
|
'Gagal!',
|
||||||
|
text: response.message,
|
||||||
|
icon: response.status ? 'success' : 'error',
|
||||||
|
confirmButtonText: 'OK'
|
||||||
|
}).then(function() {
|
||||||
|
location.reload();
|
||||||
|
});
|
||||||
|
},
|
||||||
|
error: function(error) {
|
||||||
|
Swal.fire({
|
||||||
|
title: 'Gagal!',
|
||||||
|
text: 'Tidak ada data yang dihapus, karena ' +
|
||||||
|
error,
|
||||||
|
icon: 'error'
|
||||||
|
}).then(function() {
|
||||||
|
location.reload();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#denyUser').on('click', function() {
|
||||||
|
let id = $(this).data('id');
|
||||||
|
const csrfToken = $('meta[name="csrf-token"]').attr('content');
|
||||||
|
Swal.fire({
|
||||||
|
title: 'Status Akun',
|
||||||
|
text: 'Apakah anda yakin menolak akun ini?',
|
||||||
|
icon: 'info',
|
||||||
|
confirmButtonText: 'Ya, setuju!',
|
||||||
|
showCancelButton: true,
|
||||||
|
cancelButtonText: 'Tidak'
|
||||||
|
}).then((result) => {
|
||||||
|
if (result.isConfirmed) {
|
||||||
|
$.ajaxSetup({
|
||||||
|
headers: {
|
||||||
|
'X-CSRF-TOKEN': csrfToken
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
url: "{{ route('admin-user.deny', ':id') }}".replace(
|
||||||
|
':id', id),
|
||||||
|
type: 'PUT',
|
||||||
|
success: function(response) {
|
||||||
|
Swal.fire({
|
||||||
|
title: response.status ? 'Berhasil!' :
|
||||||
|
'Gagal!',
|
||||||
|
text: response.message,
|
||||||
|
icon: response.status ? 'success' : 'error',
|
||||||
|
confirmButtonText: 'OK'
|
||||||
|
}).then(function() {
|
||||||
|
location.reload();
|
||||||
|
});
|
||||||
|
},
|
||||||
|
error: function(error) {
|
||||||
|
Swal.fire({
|
||||||
|
title: 'Gagal!',
|
||||||
|
text: 'Gagal mengubah status akun, karena ' +
|
||||||
|
error,
|
||||||
|
icon: 'info'
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
</script>
|
||||||
@endsection
|
@endsection
|
||||||
|
@ -21,6 +21,7 @@
|
|||||||
<th>Foto Profil</th>
|
<th>Foto Profil</th>
|
||||||
<th>Nama Panjang</th>
|
<th>Nama Panjang</th>
|
||||||
<th>Email</th>
|
<th>Email</th>
|
||||||
|
{{-- <th>Gender</th> --}}
|
||||||
<th>Tanggal Daftar</th>
|
<th>Tanggal Daftar</th>
|
||||||
<th>Status</th>
|
<th>Status</th>
|
||||||
<th>Aksi</th>
|
<th>Aksi</th>
|
||||||
@ -33,10 +34,11 @@
|
|||||||
<td>{{ $user->id }}</td>
|
<td>{{ $user->id }}</td>
|
||||||
<td>
|
<td>
|
||||||
<figure class="avatar mr-2 avatar-xl">
|
<figure class="avatar mr-2 avatar-xl">
|
||||||
<img src="{{ $user->foto_profil != null ? asset('storage') : asset('assets/img/avatar/avatar-6.png') }}" alt="...">
|
<img src="{{ $user->foto_profil != null ? asset('storage') : asset('assets/img/avatar/avatar-6.png') }}"
|
||||||
|
alt="...">
|
||||||
</figure>
|
</figure>
|
||||||
</td>
|
</td>
|
||||||
<td>{{ $user->nama_depan.' '.$user->nama_belakang }}</td>
|
<td>{{ $user->nama_depan }}</td>
|
||||||
<td>{{ $user->email }}</td>
|
<td>{{ $user->email }}</td>
|
||||||
<td>{{ $user->created_at }}</td>
|
<td>{{ $user->created_at }}</td>
|
||||||
<td>
|
<td>
|
||||||
|
@ -9,101 +9,65 @@
|
|||||||
<div class="breadcrumb-item">User</div>
|
<div class="breadcrumb-item">User</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-12">
|
<div class="col-12">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
{{-- <div class="card-header">
|
|
||||||
<h2 class="mb-4">List Users</h2>
|
|
||||||
</div> --}}
|
|
||||||
<div class="d-flex justify-content-between align-items-center p-4">
|
|
||||||
<div class="d-flex align-items-center">
|
|
||||||
<span class="mb-0 ml-2">Show:</span>
|
|
||||||
<select class="form-select ml-2">
|
|
||||||
<option>10</option>
|
|
||||||
<option>25</option>
|
|
||||||
<option>50</option>
|
|
||||||
<option>100</option>
|
|
||||||
</select>
|
|
||||||
<span class="ml-2">entries</span>
|
|
||||||
</div>
|
|
||||||
<div class="float-right">
|
|
||||||
<form>
|
|
||||||
<div class="input-group">
|
|
||||||
<input type="text" class="form-control" placeholder="Search">
|
|
||||||
<div class="input-group-append">
|
|
||||||
<button class="btn btn-primary"><i class="fas fa-search"></i></button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div class="table-responsive">
|
<div class="table-responsive">
|
||||||
<table class="table table-bordered table-md">
|
<table class="table table-striped" id="table-1">
|
||||||
<tr>
|
<thead>
|
||||||
<th>User Id</th>
|
|
||||||
<th>Avatar</th>
|
|
||||||
<th>NIK</th>
|
|
||||||
<th>FullName</th>
|
|
||||||
<th>Email</th>
|
|
||||||
{{-- <th>Gender</th> --}}
|
|
||||||
<th>Date</th>
|
|
||||||
<th>Status</th>
|
|
||||||
<th>Action</th>
|
|
||||||
</tr>
|
|
||||||
@foreach ($list_users as $list_user)
|
|
||||||
<tr>
|
<tr>
|
||||||
<td class="font-weight-600"> {{ $list_user['userId'] }}</td>
|
<th class="text-center">#</th>
|
||||||
<td>
|
<th>User Id</th>
|
||||||
<figure class="avatar mr-2 avatar-xl">
|
<th>Avatar</th>
|
||||||
<img src="assets/img/avatar/avatar-6.png" alt="...">
|
<th>Fullname</th>
|
||||||
</figure>
|
<th>Email</th>
|
||||||
</td>
|
<th>Gender</th>
|
||||||
<td class="font-weight-600">{{ $list_user['nik'] }}</td>
|
<th>Due Date</th>
|
||||||
<td class="font-weight-600">{{ $list_user['fullname'] }}</td>
|
<th>Status</th>
|
||||||
<td class="font-weight-600">{{ $list_user['email'] }}</td>
|
<th>Action</th>
|
||||||
{{-- <td class="font-weight-600">{{ $list_user['gender'] }}</td> --}}
|
|
||||||
<td>{{ $list_user['date'] }}</td>
|
|
||||||
<td>
|
|
||||||
<div class="badge badge-success">{{ $list_user['status'] }}</div>
|
|
||||||
</td>
|
|
||||||
<td>
|
|
||||||
<div class="btn-group">
|
|
||||||
<button type="button" class="btn btn-primary dropdown-toggle"
|
|
||||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
|
||||||
Action
|
|
||||||
</button>
|
|
||||||
<div class="dropdown-menu">
|
|
||||||
<a class="dropdown-item" href="/detail-user">Details</a>
|
|
||||||
<a class="dropdown-item" href="#">Edit</a>
|
|
||||||
<a class="dropdown-item" href="#">Delete</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
</tr>
|
</tr>
|
||||||
@endforeach
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
@foreach ($list_users as $list_user)
|
||||||
|
<tr>
|
||||||
|
<td>{{ $list_user['no'] }}</td>
|
||||||
|
<td>{{ $list_user['userId'] }}</td>
|
||||||
|
<td>
|
||||||
|
<figure class="avatar mr-2 avatar-xl">
|
||||||
|
<img src="assets/img/avatar/avatar-6.png" alt="...">
|
||||||
|
</figure>
|
||||||
|
</td>
|
||||||
|
<td>{{ $list_user['fullname'] }}</td>
|
||||||
|
<td>{{ $list_user['email'] }}</td>
|
||||||
|
<td>{{ $list_user['gender'] }}</td>
|
||||||
|
<td>{{ $list_user['date'] }}</td>
|
||||||
|
<td>
|
||||||
|
@php
|
||||||
|
$statusClass = '';
|
||||||
|
if ($list_user['status'] === 'Finished') {
|
||||||
|
$statusClass = 'badge-success';
|
||||||
|
} elseif ($list_user['status'] === 'Progress') {
|
||||||
|
$statusClass = 'badge-danger';
|
||||||
|
}
|
||||||
|
@endphp
|
||||||
|
<div class="badge {{ $statusClass }}">{{ $list_user['status'] }}</div>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<div class="btn-group">
|
||||||
|
<button type="button" class="btn btn-primary dropdown-toggle"
|
||||||
|
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||||
|
Action
|
||||||
|
</button>
|
||||||
|
<div class="dropdown-menu">
|
||||||
|
<a class="dropdown-item" href="/detail-user">Details</a>
|
||||||
|
<a class="dropdown-item" href="#" id="Swal">Delete</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
@endforeach
|
||||||
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
<div class="card">
|
|
||||||
<div class="card-body">
|
|
||||||
<div class="d-flex justify-content-end">
|
|
||||||
<nav aria-label="paginate">
|
|
||||||
<ul class="pagination">
|
|
||||||
<li class="page-item disabled">
|
|
||||||
<a class="page-link" href="#" tabindex="-1">Previous</a>
|
|
||||||
</li>
|
|
||||||
<li class="page-item active"><a class="page-link" href="#">1</a></li>
|
|
||||||
<li class="page-item ">
|
|
||||||
<a class="page-link" href="#">2 <span
|
|
||||||
class="sr-only">(current)</span></a>
|
|
||||||
</li>
|
|
||||||
<li class="page-item"><a class="page-link" href="#">3</a></li>
|
|
||||||
<li class="page-item">
|
|
||||||
<a class="page-link" href="#">Next</a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</nav>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -1,8 +1,4 @@
|
|||||||
<<<<<<< HEAD
|
|
||||||
@extends('User.layout.main')
|
|
||||||
=======
|
|
||||||
@extends('user.layout.main')
|
@extends('user.layout.main')
|
||||||
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
|
||||||
@section('content')
|
@section('content')
|
||||||
<!-- Main Content -->
|
<!-- Main Content -->
|
||||||
<div class="main-content">
|
<div class="main-content">
|
||||||
@ -73,11 +69,7 @@
|
|||||||
<h4>Total Refund</h4>
|
<h4>Total Refund</h4>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<<<<<<< HEAD
|
|
||||||
100
|
|
||||||
=======
|
|
||||||
190
|
190
|
||||||
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -92,17 +84,10 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="card-wrap">
|
<div class="card-wrap">
|
||||||
<div class="card-header">
|
<div class="card-header">
|
||||||
<<<<<<< HEAD
|
|
||||||
<h4>Total user</h4>
|
|
||||||
</div>
|
|
||||||
<div class="card-body">
|
|
||||||
100 </div>
|
|
||||||
=======
|
|
||||||
<h4>Total Transaction </h4>
|
<h4>Total Transaction </h4>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
109 </div>
|
109 </div>
|
||||||
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -119,38 +104,6 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<<<<<<< HEAD
|
|
||||||
<div class="col-md-12">
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-header">
|
|
||||||
<h2>History Transaction</h2>
|
|
||||||
</div>
|
|
||||||
<div class="d-flex justify-content-between align-items-center p-4">
|
|
||||||
<div class="d-flex align-items-center">
|
|
||||||
<span class="mb-0 ml-2">Show:</span>
|
|
||||||
<select class="form-select ml-2">
|
|
||||||
<option>10</option>
|
|
||||||
<option>25</option>
|
|
||||||
<option>50</option>
|
|
||||||
<option>100</option>
|
|
||||||
</select>
|
|
||||||
<span class="ml-2">entries</span>
|
|
||||||
</div>
|
|
||||||
<div class="float-right">
|
|
||||||
<form>
|
|
||||||
<div class="input-group">
|
|
||||||
<input type="text" class="form-control" placeholder="Search">
|
|
||||||
<div class="input-group-append">
|
|
||||||
<button class="btn btn-primary"><i class="fas fa-search"></i></button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="card-body">
|
|
||||||
<div class="table-responsive">
|
|
||||||
<table class="table table-bordered table-md">
|
|
||||||
=======
|
|
||||||
|
|
||||||
<div class="col-md-12">
|
<div class="col-md-12">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
@ -160,7 +113,6 @@
|
|||||||
<div class="card-body p-0">
|
<div class="card-body p-0">
|
||||||
<div class="table-responsive table-invoice">
|
<div class="table-responsive table-invoice">
|
||||||
<table class="table table-striped">
|
<table class="table table-striped">
|
||||||
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
|
||||||
<tr>
|
<tr>
|
||||||
<th>Order ID</th>
|
<th>Order ID</th>
|
||||||
<th>Customer</th>
|
<th>Customer</th>
|
||||||
@ -168,35 +120,6 @@
|
|||||||
<th>Total</th>
|
<th>Total</th>
|
||||||
<th>Due Date</th>
|
<th>Due Date</th>
|
||||||
<th>Status</th>
|
<th>Status</th>
|
||||||
<<<<<<< HEAD
|
|
||||||
<th>Action</th>
|
|
||||||
</tr>
|
|
||||||
@foreach ($transaction as $transactions)
|
|
||||||
<tr>
|
|
||||||
<td><a href="#">{{ $transactions['orderId'] }}</a></td>
|
|
||||||
<td class="font-weight-600">{{ $transactions['customer'] }}</td>
|
|
||||||
<td class="font-weight-600">{{ $transactions['seller'] }}</td>
|
|
||||||
<td class="font-weight-600">{{ $transactions['total'] }}</td>
|
|
||||||
<td>{{ $transactions['date'] }}</td>
|
|
||||||
<td>
|
|
||||||
<div class="badge badge-success">{{ $transactions['status'] }}</div>
|
|
||||||
</td>
|
|
||||||
<td>
|
|
||||||
<div class="btn-group">
|
|
||||||
<button type="button" class="btn btn-primary dropdown-toggle"
|
|
||||||
data-toggle="dropdown" aria-haspopup="true"
|
|
||||||
aria-expanded="false">
|
|
||||||
Action
|
|
||||||
</button>
|
|
||||||
<div class="dropdown-menu">
|
|
||||||
<a class="dropdown-item" href="/detail_transaction">Details</a>
|
|
||||||
<a class="dropdown-item" href="#" data-toggle="modal"
|
|
||||||
data-target="#ModalTransaction">Tracking</a>
|
|
||||||
<a class="dropdown-item" href="#">Delete</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
=======
|
|
||||||
<th>Image</th>
|
<th>Image</th>
|
||||||
</tr>
|
</tr>
|
||||||
@foreach ($refundUserss as $HistoryRefundUser)
|
@foreach ($refundUserss as $HistoryRefundUser)
|
||||||
@ -218,7 +141,6 @@
|
|||||||
{{ $HistoryRefundUser['uploadBukti'] }}</td>
|
{{ $HistoryRefundUser['uploadBukti'] }}</td>
|
||||||
<td>
|
<td>
|
||||||
|
|
||||||
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
|
||||||
</tr>
|
</tr>
|
||||||
@endforeach
|
@endforeach
|
||||||
</table>
|
</table>
|
||||||
@ -226,12 +148,6 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<<<<<<< HEAD
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
</div>
|
|
||||||
@include('Admin.transaction.Tracking')
|
|
||||||
=======
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
@ -435,5 +351,4 @@
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
|
||||||
@endsection
|
@endsection
|
||||||
|
@ -84,8 +84,7 @@
|
|||||||
<div class="dropdown-list-content dropdown-list-message">
|
<div class="dropdown-list-content dropdown-list-message">
|
||||||
<a href="#" class="dropdown-item dropdown-item-unread">
|
<a href="#" class="dropdown-item dropdown-item-unread">
|
||||||
<div class="dropdown-item-avatar">
|
<div class="dropdown-item-avatar">
|
||||||
<img alt="image" src="{{ asset('assets/img/avatar/avatar-1.png') }}"
|
<img alt="image" src="{{asset('assets/img/avatar/avatar-1.png')}}" class="rounded-circle">
|
||||||
class="rounded-circle">
|
|
||||||
<div class="is-online"></div>
|
<div class="is-online"></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="dropdown-item-desc">
|
<div class="dropdown-item-desc">
|
||||||
@ -96,8 +95,7 @@
|
|||||||
</a>
|
</a>
|
||||||
<a href="#" class="dropdown-item dropdown-item-unread">
|
<a href="#" class="dropdown-item dropdown-item-unread">
|
||||||
<div class="dropdown-item-avatar">
|
<div class="dropdown-item-avatar">
|
||||||
<img alt="image" src="{{ asset('assets/img/avatar/avatar-2.png') }}"
|
<img alt="image" src="{{asset('assets/img/avatar/avatar-2.png')}}" class="rounded-circle">
|
||||||
class="rounded-circle">
|
|
||||||
</div>
|
</div>
|
||||||
<div class="dropdown-item-desc">
|
<div class="dropdown-item-desc">
|
||||||
<b>Dedik Sugiharto</b>
|
<b>Dedik Sugiharto</b>
|
||||||
@ -107,8 +105,7 @@
|
|||||||
</a>
|
</a>
|
||||||
<a href="#" class="dropdown-item dropdown-item-unread">
|
<a href="#" class="dropdown-item dropdown-item-unread">
|
||||||
<div class="dropdown-item-avatar">
|
<div class="dropdown-item-avatar">
|
||||||
<img alt="image" src="{{ asset('assets/img/avatar/avatar-3.png') }}"
|
<img alt="image" src="{{asset('assets/img/avatar/avatar-3.png')}}" class="rounded-circle">
|
||||||
class="rounded-circle">
|
|
||||||
<div class="is-online"></div>
|
<div class="is-online"></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="dropdown-item-desc">
|
<div class="dropdown-item-desc">
|
||||||
@ -119,8 +116,7 @@
|
|||||||
</a>
|
</a>
|
||||||
<a href="#" class="dropdown-item">
|
<a href="#" class="dropdown-item">
|
||||||
<div class="dropdown-item-avatar">
|
<div class="dropdown-item-avatar">
|
||||||
<img alt="image" src="{{ asset('assets/img/avatar/avatar-4.png') }}"
|
<img alt="image" src="{{asset('assets/img/avatar/avatar-4.png')}}" class="rounded-circle">
|
||||||
class="rounded-circle">
|
|
||||||
</div>
|
</div>
|
||||||
<div class="dropdown-item-desc">
|
<div class="dropdown-item-desc">
|
||||||
<b>Ardian Rahardiansyah</b>
|
<b>Ardian Rahardiansyah</b>
|
||||||
@ -130,8 +126,7 @@
|
|||||||
</a>
|
</a>
|
||||||
<a href="#" class="dropdown-item">
|
<a href="#" class="dropdown-item">
|
||||||
<div class="dropdown-item-avatar">
|
<div class="dropdown-item-avatar">
|
||||||
<img alt="image" src="{{ asset('assets/img/avatar/avatar-5.png') }}"
|
<img alt="image" src="{{asset('assets/img/avatar/avatar-5.png')}}" class="rounded-circle">
|
||||||
class="rounded-circle">
|
|
||||||
</div>
|
</div>
|
||||||
<div class="dropdown-item-desc">
|
<div class="dropdown-item-desc">
|
||||||
<b>Alfa Zulkarnain</b>
|
<b>Alfa Zulkarnain</b>
|
||||||
@ -207,43 +202,25 @@
|
|||||||
</li>
|
</li>
|
||||||
<li class="dropdown"><a href="#" data-toggle="dropdown"
|
<li class="dropdown"><a href="#" data-toggle="dropdown"
|
||||||
class="nav-link dropdown-toggle nav-link-lg nav-link-user">
|
class="nav-link dropdown-toggle nav-link-lg nav-link-user">
|
||||||
<<<<<<< HEAD <img alt="image" src="assets/img/avatar/avatar-1.png" class="rounded-circle mr-1">
|
<img alt="image" src="{{asset('assets/img/avatar/avatar-1.png')}}" class="rounded-circle mr-1">
|
||||||
<div class="d-sm-none d-lg-inline-block">Hi, {{ $name }}</div>
|
<div class="d-sm-none d-lg-inline-block">Hi, {{ Auth::user()->nama_depan }}</div>
|
||||||
</a>
|
</a>
|
||||||
<div class="dropdown-menu dropdown-menu-right">
|
<div class="dropdown-menu dropdown-menu-right">
|
||||||
<div class="dropdown-title">Logged in 5 min ago</div>
|
<div class="dropdown-title">Logged in 5 min ago</div>
|
||||||
<a href="#" class="dropdown-item has-icon">
|
<a href="{{route('user.profile')}}" class="dropdown-item has-icon">
|
||||||
<i class="far fa-user"></i> Profile
|
<i class="far fa-user"></i> Profile
|
||||||
</a>
|
</a>
|
||||||
<a href="features-activities.html" class="dropdown-item has-icon">
|
{{-- <a href="features-activities.html" class="dropdown-item has-icon">
|
||||||
=======
|
|
||||||
<img alt="image" src="{{ asset('assets/img/avatar/avatar-1.png') }}"
|
|
||||||
class="rounded-circle mr-1">
|
|
||||||
<div class="d-sm-none d-lg-inline-block">Hi, {{ Auth::user()->nama_depan }}</div>
|
|
||||||
</a>
|
|
||||||
<div class="dropdown-menu dropdown-menu-right">
|
|
||||||
<div class="dropdown-title">Logged in 5 min ago</div>
|
|
||||||
<a href="{{ route('user.profile') }}" class="dropdown-item has-icon">
|
|
||||||
<i class="far fa-user"></i> Profile
|
|
||||||
</a>
|
|
||||||
{{-- <a href="features-activities.html" class="dropdown-item has-icon">
|
|
||||||
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
|
||||||
<i class="fas fa-bolt"></i> Activities
|
<i class="fas fa-bolt"></i> Activities
|
||||||
</a>
|
</a>
|
||||||
<a href="features-settings.html" class="dropdown-item has-icon">
|
<a href="features-settings.html" class="dropdown-item has-icon">
|
||||||
<i class="fas fa-cog"></i> Settings
|
<i class="fas fa-cog"></i> Settings
|
||||||
<<<<<<< HEAD
|
|
||||||
</a>
|
|
||||||
<div class="dropdown-divider"></div>
|
|
||||||
<a href="#" class="dropdown-item has-icon text-danger">
|
|
||||||
=======
|
|
||||||
</a> --}}
|
</a> --}}
|
||||||
<div class="dropdown-divider"></div>
|
<div class="dropdown-divider"></div>
|
||||||
<a href="{{ route('logout') }}" class="dropdown-item has-icon text-danger">
|
<a href="{{route('logout')}}" class="dropdown-item has-icon text-danger">
|
||||||
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
<i class="fas fa-sign-out-alt"></i> Logout
|
||||||
<i class="fas fa-sign-out-alt"></i> Logout
|
</a>
|
||||||
</a>
|
</div>
|
||||||
</div>
|
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
|
@ -34,25 +34,29 @@
|
|||||||
|
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta content="width=device-width, initial-scale=1, maximum-scale=1, shrink-to-fit=no" name="viewport">
|
<meta content="width=device-width, initial-scale=1, maximum-scale=1, shrink-to-fit=no" name="viewport">
|
||||||
|
<meta name="csrf-token" content="{{ csrf_token() }}">
|
||||||
<title>REKBER</title>
|
<title>REKBER</title>
|
||||||
|
|
||||||
<!-- General CSS Files -->
|
<!-- General CSS Files -->
|
||||||
<link rel="stylesheet" href="assets/modules/bootstrap/css/bootstrap.min.css">
|
<link rel="stylesheet" href="{{ asset('assets/modules/bootstrap/css/bootstrap.min.css') }}">
|
||||||
<link rel="stylesheet" href="assets/modules/fontawesome/css/all.min.css">
|
<link rel="stylesheet" href="{{ asset('assets/modules/fontawesome/css/all.min.css') }}">
|
||||||
|
<link rel="stylesheet" href="https://cdn.materialdesignicons.com/5.4.55/css/materialdesignicons.min.css">
|
||||||
|
<link rel="stylesheet" href="{{ asset('assets/modules/jqvmap/dist/jqvmap.min.css') }}">
|
||||||
<!-- CSS Libraries -->
|
<link rel="stylesheet" href="{{ asset('assets/modules/summernote/summernote-bs4.css') }}">
|
||||||
<link rel="stylesheet" href="assets/modules/jqvmap/dist/jqvmap.min.css">
|
<link rel="stylesheet" href="{{ asset('assets/modules/owlcarousel2/dist/assets/owl.carousel.min.css') }}">
|
||||||
<link rel="stylesheet" href="assets/modules/summernote/summernote-bs4.css">
|
<link rel="stylesheet" href="{{ asset('assets/modules/owlcarousel2/dist/assets/owl.theme.default.min.css') }}">
|
||||||
<link rel="stylesheet" href="assets/modules/owlcarousel2/dist/assets/owl.carousel.min.css">
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/daterangepicker@3.1.0/daterangepicker.css" />
|
||||||
<link rel="stylesheet" href="assets/modules/owlcarousel2/dist/assets/owl.theme.default.min.css">
|
|
||||||
|
|
||||||
|
<link rel="stylesheet" href="{{ asset('assets/modules/datatables/datatables.min.css') }}">
|
||||||
|
<link rel="stylesheet" href="{{ asset('assets/modules/datatables/DataTables-1.10.16/css/dataTables.bootstrap4.min.css') }}">
|
||||||
|
<link rel="stylesheet" href="{{ asset('assets/modules/datatables/Select-1.2.4/css/select.bootstrap4.min.css') }}">
|
||||||
|
<link rel="stylesheet" href="{{ asset('assets/css/main.css') }}">
|
||||||
<!-- Template CSS -->
|
<!-- Template CSS -->
|
||||||
<link rel="stylesheet" href="assets/css/style.css">
|
<link rel="stylesheet" href="{{ asset('assets/css/style.css') }}">
|
||||||
<link rel="stylesheet" href="assets/css/components.css">
|
<link rel="stylesheet" href="{{ asset('assets/css/components.css') }}">
|
||||||
<!-- Start GA -->
|
<!-- Start GA -->
|
||||||
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-94034622-3"></script>
|
{{-- <script async src="https://www.googletagmanager.com/gtag/js?id=UA-94034622-3"></script> --}}
|
||||||
<script>
|
{{-- <script>
|
||||||
window.dataLayer = window.dataLayer || [];
|
window.dataLayer = window.dataLayer || [];
|
||||||
|
|
||||||
function gtag() {
|
function gtag() {
|
||||||
@ -61,46 +65,129 @@
|
|||||||
gtag('js', new Date());
|
gtag('js', new Date());
|
||||||
|
|
||||||
gtag('config', 'UA-94034622-3');
|
gtag('config', 'UA-94034622-3');
|
||||||
</script>
|
</script> --}}
|
||||||
<!-- /END GA -->
|
<!-- /END GA -->
|
||||||
|
|
||||||
|
{{-- JS --}}
|
||||||
|
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
|
||||||
|
<script src="{{ asset('assets/modules/chart.min.js') }}"></script>
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
|
|
||||||
<header class="header-area header-sticky">
|
<header class="header-area header-sticky">
|
||||||
@include('User.layout.header')
|
@include('user.layout.header')
|
||||||
</header>
|
</header>
|
||||||
|
|
||||||
<!-- ***** Main Banner Area Start ***** -->
|
<!-- ***** Main Banner Area Start ***** -->
|
||||||
<main id="main" style="min-height: 100vh;">
|
<main id="main" style="min-height: 100vh;">
|
||||||
@include('User.layout.sidebar')
|
@include('user.layout.sidebar')
|
||||||
@yield('content')
|
@yield('content')
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<!-- End #main -->
|
<!-- End #main -->
|
||||||
<footer id="footer">
|
<footer id="footer">
|
||||||
@include('User.layout.footer')
|
@include('user.layout.footer')
|
||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.1/moment.min.js"></script>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
$(document).ready(function() {
|
||||||
|
let searchParams = new URLSearchParams(window.location.search);
|
||||||
|
let dateInterval = searchParams.get('from-to');
|
||||||
|
let start = moment().subtract(29, 'days');
|
||||||
|
let end = moment();
|
||||||
|
|
||||||
|
if (dateInterval) {
|
||||||
|
dateInterval = dateInterval.split(' - ');
|
||||||
|
start = moment(dateInterval[0]);
|
||||||
|
end = moment(dateInterval[1]);
|
||||||
|
}
|
||||||
|
|
||||||
|
$('#date-range').daterangepicker({
|
||||||
|
"showDropdowns": true,
|
||||||
|
"showWeekNumbers": true,
|
||||||
|
"alwaysShowCalendars": true,
|
||||||
|
startDate: start,
|
||||||
|
endDate: end,
|
||||||
|
locale: {
|
||||||
|
format: 'YYYY-MM-DD',
|
||||||
|
firstDay: 1,
|
||||||
|
},
|
||||||
|
ranges: {
|
||||||
|
'Today': [moment(), moment()],
|
||||||
|
'Yesterday': [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
|
||||||
|
'Last 7 Days': [moment().subtract(6, 'days'), moment()],
|
||||||
|
'Last 30 Days': [moment().subtract(29, 'days'), moment()],
|
||||||
|
'This Month': [moment().startOf('month'), moment().endOf('month')],
|
||||||
|
'Last Month': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1,
|
||||||
|
'month').endOf(
|
||||||
|
'month')],
|
||||||
|
'This Year': [moment().startOf('year'), moment().endOf('year')],
|
||||||
|
'Last Year': [moment().subtract(1, 'year').startOf('year'), moment().subtract(1, 'year')
|
||||||
|
.endOf(
|
||||||
|
'year')
|
||||||
|
],
|
||||||
|
'All time': [moment().subtract(30, 'year').startOf('month'), moment().endOf('month')],
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
<!-- General JS Scripts -->
|
<!-- General JS Scripts -->
|
||||||
<script src="assets/modules/jquery.min.js"></script>
|
<script src="{{ asset('assets/modules/jquery.min.js') }}"></script>
|
||||||
<script src="assets/modules/popper.js"></script>
|
<script src="{{ asset('assets/modules/popper.js') }}"></script>i
|
||||||
<script src="assets/modules/tooltip.js"></script>
|
<script src="{{ asset('assets/modules/tooltip.js') }}"></script>
|
||||||
<script src="assets/modules/bootstrap/js/bootstrap.min.js"></script>
|
<script src="{{ asset('assets/modules/bootstrap/js/bootstrap.min.js') }}"></script>
|
||||||
<script src="assets/modules/nicescroll/jquery.nicescroll.min.js"></script>
|
<script src="{{ asset('assets/modules/nicescroll/jquery.nicescroll.min.js') }}"></script>
|
||||||
<script src="assets/modules/moment.min.js"></script>
|
<script src="{{ asset('assets/modules/moment.min.js') }}"></script>
|
||||||
<script src="assets/js/stisla.js"></script>
|
<script src="{{ asset('assets/js/stisla.js') }}"></script>
|
||||||
|
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
|
||||||
|
|
||||||
<!-- JS Libraies -->
|
<!-- JS Libraies -->
|
||||||
<script src="assets/modules/jquery.sparkline.min.js"></script>
|
<script src="{{ asset('assets/modules/jquery.sparkline.min.js') }}"></script>
|
||||||
<script src="assets/modules/chart.min.js"></script>
|
<script src="{{ asset('assets/modules/owlcarousel2/dist/owl.carousel.min.js') }}"></script>
|
||||||
<script src="assets/modules/owlcarousel2/dist/owl.carousel.min.js"></script>
|
<script src="{{ asset('assets/modules/summernote/summernote-bs4.js') }}"></script>
|
||||||
<script src="assets/modules/summernote/summernote-bs4.js"></script>
|
<script src="{{ asset('assets/modules/chocolat/dist/js/jquery.chocolat.min.js') }}"></script>
|
||||||
<script src="assets/modules/chocolat/dist/js/jquery.chocolat.min.js"></script>
|
|
||||||
|
<!-- JS Libraies -->
|
||||||
|
<script src="{{ asset('assets/modules/datatables/datatables.min.js') }}"></script>
|
||||||
|
<script src="{{ asset('assets/modules/datatables/DataTables-1.10.16/js/dataTables.bootstrap4.min.js') }}"></script>
|
||||||
|
<script src="{{ asset('assets/modules/datatables/Select-1.2.4/js/dataTables.select.min.js') }}"></script>
|
||||||
|
<script src="{{ asset('assets/modules/jquery-ui/jquery-ui.min.js') }}"></script>
|
||||||
|
|
||||||
|
{{-- <script type="text/javascript">
|
||||||
|
$(function() {
|
||||||
|
$(document).on('click', '#payment', function(e) {
|
||||||
|
e.preventDefault();
|
||||||
|
var link = $(this).attr("href");
|
||||||
|
Swal.fire({
|
||||||
|
position: 'top-end',
|
||||||
|
icon: 'Success Payment!',
|
||||||
|
title: 'Your work has been saved',
|
||||||
|
showConfirmButton: false,
|
||||||
|
timer: 1500
|
||||||
|
})
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
</script> --}}
|
||||||
|
|
||||||
|
|
||||||
<!-- Page Specific JS File -->
|
<!-- Page Specific JS File -->
|
||||||
<script src="assets/js/page/index.js"></script>
|
<script src="{{ asset('assets/js/page/modules-datatables.js') }}"></script>
|
||||||
|
|
||||||
|
<!-- Page Specific JS File -->
|
||||||
|
{{-- <script src="{{ asset('assets/js/page/index.js') }}"></script> --}}
|
||||||
|
<script src="https://cdn.jsdelivr.net/npm/daterangepicker@3.1.0/daterangepicker.min.js"></script>i
|
||||||
|
{{-- <script src="{{ asset('assets/js/page/index-0.js') }}"></script> --}}
|
||||||
|
|
||||||
<!-- Template JS File -->
|
<!-- Template JS File -->
|
||||||
<script src="assets/js/scripts.js"></script>
|
<script src="{{ asset('assets/js/scripts.js') }}"></script>
|
||||||
<script src="assets/js/custom.js"></script>
|
<script src="{{ asset('assets/js/custom.js') }}"></script>
|
||||||
|
{{-- <script src="{{ asset('assets/js/main.js') }}"></script> --}}
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
|
@ -1,34 +1,32 @@
|
|||||||
<div class="main-sidebar sidebar-style-2">
|
<div class="main-sidebar sidebar-style-2">
|
||||||
<aside id="sidebar-wrapper">
|
<aside id="sidebar-wrapper">
|
||||||
<div class="sidebar-brand">
|
<div class="sidebar-brand">
|
||||||
<a href="{{ route('user.index') }}">REKBER</a>
|
<a href="{{route('user.index')}}">REKBER</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="sidebar-brand sidebar-brand-sm">
|
<div class="sidebar-brand sidebar-brand-sm">
|
||||||
<a href="{{ route('user.index') }}">RK</a>
|
<a href="{{route('user.index')}}">RK</a>
|
||||||
</div>
|
</div>
|
||||||
<ul class="sidebar-menu">
|
<ul class="sidebar-menu">
|
||||||
<li class="menu-header">Dashboard</li>
|
<li class="menu-header">Dashboard</li>
|
||||||
|
|
||||||
<li><a class="nav-link active" href="{{ route('user.index') }}"><i class="fas fa-fire"></i>
|
<li><a class="nav-link active" href="{{route('user.index')}}"><i class="fas fa-fire"></i> <span>Dashboard</span></a></li>
|
||||||
<span>Dashboard</span></a></li>
|
|
||||||
|
|
||||||
<li class="menu-header">Starter</li>
|
<li class="menu-header">Starter</li>
|
||||||
|
|
||||||
<li class="drop-down ">
|
<li class="drop-down ">
|
||||||
<a class="nav-link" data-toggle="collapse" href="#submenuTransaction" aria-expanded="false"
|
<a class="nav-link" data-toggle="collapse" href="#submenuTransaction" aria-expanded="false" aria-controls="submenuTransaction">
|
||||||
aria-controls="submenuTransaction">
|
|
||||||
<i class="fas fa-columns"></i><span>Transaksi</span> <i class="fas fa-caret-down"></i>
|
<i class="fas fa-columns"></i><span>Transaksi</span> <i class="fas fa-caret-down"></i>
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
<div id="submenuTransaction" class="collapse">
|
<div id="submenuTransaction" class="collapse">
|
||||||
<ul class="nav flex-column sub-menu">
|
<ul class="nav flex-column sub-menu">
|
||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<a class="nav-link" href="{{ route('user-transaction.index.pembeli') }}">
|
<a class="nav-link" href="{{route('user-transaction.index.pembeli')}}">
|
||||||
<i class="fas fa-users"></i> Pembeli
|
<i class="fas fa-users"></i> Pembeli
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<a class="nav-link" href="{{ route('user-transaction.index.penjual') }}">
|
<a class="nav-link" href="{{route('user-transaction.index.penjual')}}">
|
||||||
<i class="fas fa-user"></i> Penjual
|
<i class="fas fa-user"></i> Penjual
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@ -36,14 +34,14 @@
|
|||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a class="nav-link active" href="{{ route('user-contact.index') }}">
|
<a class="nav-link active" href="{{route('user-contact.index')}}">
|
||||||
<i class="fas fa-address-book"></i> <span>Kontak</span>
|
<i class="fas fa-address-book"></i> <span>Kontak</span>
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
|
|
||||||
<li>
|
<li>
|
||||||
<a class="nav-link active" href="{{ route('user-refund.index') }}">
|
<a class="nav-link active" href="{{route('user-refund.index')}}">
|
||||||
<i class="fas fa-money-check-alt"></i> <span>Refund</span>
|
<i class="fas fa-money-check-alt"></i> <span>Refund</span>
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@ -57,4 +55,3 @@
|
|||||||
</div> --}}
|
</div> --}}
|
||||||
</aside>
|
</aside>
|
||||||
</div>
|
</div>
|
||||||
<script src="{{ asset('assets/modules/nicescroll/jquery.nicescroll.min.js') }}"></script>
|
|
||||||
|
@ -12,12 +12,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="section-body">
|
<div class="section-body">
|
||||||
<h2 class="section-title">
|
<h2 class="section-title">npannisa</h2>
|
||||||
Admin</h2>
|
|
||||||
<h2 class="section-buyer">
|
|
||||||
{{ $transaction->data_pembeli->nama_depan . ' ' . $transaction->data_pembeli->nama_belakang }}</h2>
|
|
||||||
<h2 class="section-seller">
|
|
||||||
{{ $transaction->data_penjual->nama_depan . ' ' . $transaction->data_penjual->nama_belakang }}</h2>
|
|
||||||
<div class="d-flex justify-content-between align-items-center">
|
<div class="d-flex justify-content-between align-items-center">
|
||||||
<div class="card-title pb-2 m-0">
|
<div class="card-title pb-2 m-0">
|
||||||
<h4>Timeline</h4>
|
<h4>Timeline</h4>
|
||||||
@ -28,37 +23,66 @@
|
|||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-12">
|
<div class="col-12">
|
||||||
<div class="activities">
|
<div class="activities">
|
||||||
{{-- Awal --}}
|
<div class="activity">
|
||||||
@forelse ($trackings as $tracking)
|
<div class="activity-icon bg-primary text-white shadow-primary">
|
||||||
<div class="activity">
|
<i class="fas fa-clipboard-list" style="font-size: 36px;"></i>
|
||||||
<div
|
<!-- Mengganti ikon dengan ikon clipboard-list dan mengatur ukuran ikon -->
|
||||||
class="activity-icon {{ $tracking->background }} text-white shadow-primary">
|
|
||||||
<i class="{{ $tracking->judul }}" style="font-size: 30px;"
|
|
||||||
aria-hidden="true"></i>
|
|
||||||
<!-- Mengganti ikon dengan ikon clipboard-list dan mengatur ukuran ikon -->
|
|
||||||
</div>
|
|
||||||
<div class="activity-detail">
|
|
||||||
<div class="mb-2">
|
|
||||||
<span class="text-job text-primary">{{ $tracking->created_at }}</span>
|
|
||||||
</div>
|
|
||||||
<p>{{ $tracking->deskripsi }}</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
@empty
|
<div class="activity-detail">
|
||||||
<div class="activity">
|
<div class="mb-2">
|
||||||
<div class="activity-icon bg-primary text-white shadow-primary">
|
<span class="text-job text-primary">August 21, 2023, 8:30:15 am</span>
|
||||||
<i class="fas fa-ban" style="font-size: 36px;"></i>
|
|
||||||
<!-- Mengganti ikon dengan ikon clipboard-list dan mengatur ukuran ikon -->
|
|
||||||
</div>
|
|
||||||
<div class="activity-detail">
|
|
||||||
<div class="mb-2">
|
|
||||||
<span class="text-job text-primary">--</span>
|
|
||||||
</div>
|
|
||||||
<p>Tidak ada histori</p>
|
|
||||||
</div>
|
</div>
|
||||||
|
<p>User Created Trade</p>
|
||||||
</div>
|
</div>
|
||||||
@endforelse
|
</div>
|
||||||
{{-- Akhir --}}
|
<div class="activity">
|
||||||
|
<div class="activity-icon bg-primary text-white shadow-primary">
|
||||||
|
<i class="fas fa-bell" style="font-size: 36px;"></i>
|
||||||
|
<!-- Mengganti ikon dengan ikon bell dan mengatur ukuran ikon -->
|
||||||
|
</div>
|
||||||
|
<div class="activity-detail">
|
||||||
|
<div class="mb-2">
|
||||||
|
<span class="text-job text-primary">August 22, 2023, 8:30:15 am</span>
|
||||||
|
</div>
|
||||||
|
<p>System Notified Admin</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="activity">
|
||||||
|
<div class="activity-icon bg-primary text-white shadow-primary">
|
||||||
|
<i class="fas fa-check-circle" style="font-size: 36px;"></i>
|
||||||
|
<!-- Mengganti ikon dengan ikon check-circle dan mengatur ukuran ikon -->
|
||||||
|
</div>
|
||||||
|
<div class="activity-detail">
|
||||||
|
<div class="mb-2">
|
||||||
|
<span class="text-job text-primary">August 23, 2023, 8:30:15 am</span>
|
||||||
|
</div>
|
||||||
|
<p>Admin Accepted Trade</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="activity">
|
||||||
|
<div class="activity-icon bg-primary text-white shadow-primary">
|
||||||
|
<i class="fas fa-trash-alt" style="font-size: 36px;"></i>
|
||||||
|
<!-- Mengganti ikon dengan ikon trash-alt dan mengatur ukuran ikon -->
|
||||||
|
</div>
|
||||||
|
<div class="activity-detail">
|
||||||
|
<div class="mb-2">
|
||||||
|
<span class="text-job text-primary">August 24, 2023, 8:30:15 am</span>
|
||||||
|
</div>
|
||||||
|
<p>Trade in system</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="activity">
|
||||||
|
<div class="activity-icon bg-primary text-white shadow-primary">
|
||||||
|
<i class="fas fa-comment-alt" style="font-size: 36px;"></i>
|
||||||
|
<!-- Mengganti ikon dengan ikon comment-alt dan mengatur ukuran ikon -->
|
||||||
|
</div>
|
||||||
|
<div class="activity-detail">
|
||||||
|
<div class="mb-2">
|
||||||
|
<span class="text-job text-primary">August 24, 2023, 8:30:15 am</span>
|
||||||
|
</div>
|
||||||
|
<p>Transaction Success</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -66,50 +90,41 @@
|
|||||||
<div class="section-body">
|
<div class="section-body">
|
||||||
<div class="invoice">
|
<div class="invoice">
|
||||||
<div class="invoice-print">
|
<div class="invoice-print">
|
||||||
<h2 style="margin-bottom: -1em">REKBER</h2>
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-lg-12">
|
<div class="col-lg-12">
|
||||||
<hr>
|
<hr>
|
||||||
<div class="section-title">Keterangan</div>
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<address>
|
<address>
|
||||||
<strong>Pembeli:</strong><br>
|
<strong>Billed To:</strong><br>
|
||||||
{{ ucwords(strtolower($transaction->data_pembeli->nama_depan . ' ' . $transaction->data_pembeli->nama_belakang)) }}<br>
|
npannisa<br>
|
||||||
{{ ucwords(strtolower($transaction->data_pembeli->alamat)) }}<br>
|
1234 Main<br>
|
||||||
{{ ucwords(strtolower($transaction->data_pembeli->getVillageName() . ', ' . $transaction->data_pembeli->getDistrictName())) }}<br>
|
Apt. 4B<br>
|
||||||
{{ ucwords(strtolower($transaction->data_pembeli->getCityName() . ', ' . $transaction->data_pembeli->getProvinceName())) }}
|
Depok City, Indonesia
|
||||||
</address>
|
</address>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-6 text-md-right">
|
<div class="col-md-6 text-md-right">
|
||||||
<address>
|
<address>
|
||||||
<strong>Penjual:</strong><br>
|
<strong>Shipped To:</strong><br>
|
||||||
{{ ucwords(strtolower($transaction->data_penjual->nama_depan . ' ' . $transaction->data_penjual->nama_belakang)) }}<br>
|
Jilhan Haura<br>
|
||||||
{{ ucwords(strtolower($transaction->data_penjual->alamat)) }}<br>
|
12345 Main<br>
|
||||||
{{ ucwords(strtolower($transaction->data_penjual->getVillageName() . ', ' . $transaction->data_penjual->getDistrictName())) }}<br>
|
Apt. 5B<br>
|
||||||
{{ ucwords(strtolower($transaction->data_penjual->getCityName() . ', ' . $transaction->data_penjual->getProvinceName())) }}
|
Bogor Barat, Indonesia
|
||||||
</address>
|
</address>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-12 text-md-left">
|
|
||||||
<address>
|
|
||||||
<strong>Tanggal Transaksi:</strong><br>
|
|
||||||
{{ $transaction->created_at }}<br><br>
|
|
||||||
</address>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<address>
|
<address>
|
||||||
<strong>Metode Pembayaran:</strong><br>
|
<strong>Payment Method:</strong><br>
|
||||||
Visa ending **** 4242<br>
|
Visa ending **** 4242<br>
|
||||||
npannisa@gmail.com
|
npannisa@gmail.com
|
||||||
</address>
|
</address>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-6 text-md-right">
|
<div class="col-md-6 text-md-right">
|
||||||
<address>
|
<address>
|
||||||
<strong>Tanggal Pembayaran:</strong><br>
|
<strong>Order Date:</strong><br>
|
||||||
{{ $transaction->updated_at }}<br><br>
|
September 19, 2023<br><br>
|
||||||
{{-- {{$transaction->tanggal_pembayaran}}<br><br> --}}
|
|
||||||
</address>
|
</address>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -118,54 +133,53 @@
|
|||||||
|
|
||||||
<div class="row mt-4">
|
<div class="row mt-4">
|
||||||
<div class="col-md-12">
|
<div class="col-md-12">
|
||||||
<div class="section-title">Rangkuman Transaksi</div>
|
<div class="section-title">Order Summary</div>
|
||||||
<p class="section-lead">Semua barang yang didaftarkan dalam transaksi.</p>
|
<p class="section-lead">All items here cannot be deleted.</p>
|
||||||
<div class="table-responsive">
|
<div class="table-responsive">
|
||||||
<table class="table table-striped table-hover table-md">
|
<table class="table table-striped table-hover table-md">
|
||||||
<tr>
|
<tr>
|
||||||
<th data-width="40">#</th>
|
<th data-width="40">#</th>
|
||||||
<th>Nama Barang</th>
|
<th>Item</th>
|
||||||
<th class="text-center">Harga</th>
|
<th class="text-center">Price</th>
|
||||||
<th class="text-center">Jumlah</th>
|
<th class="text-center">Quantity</th>
|
||||||
<th class="text-right">Total</th>
|
<th class="text-right">Totals</th>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>1</td>
|
<td>1</td>
|
||||||
<td>{{ $transaction->nama_barang }}</td>
|
<td>Ayam Warna Warni</td>
|
||||||
<td class="text-center">{{ $transaction->harga_barang }}</td>
|
<td class="text-center">Rp. 50.000.000</td>
|
||||||
<td class="text-center">{{ $transaction->jumlah_barang }}</td>
|
<td class="text-center">1</td>
|
||||||
<td class="text-right">
|
<td class="text-right">Rp. 50.000.000</td>
|
||||||
{{ $transaction->harga_barang * $transaction->jumlah_barang }}</td>
|
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
<div class="row mt-4">
|
<div class="row mt-4">
|
||||||
<div class="col-lg-8">
|
<div class="col-lg-8">
|
||||||
<div class="section-title">Payment Method</div>
|
<div class="section-title">Payment Method</div>
|
||||||
<p class="section-lead">{{$transaction->metode_pembayaran}}</p>
|
<p class="section-lead">The payment method that we provide
|
||||||
|
is to make it easier for
|
||||||
|
you to pay invoices.</p>
|
||||||
<div class="images">
|
<div class="images">
|
||||||
<img src="{{ asset('assets/img/visa.png') }}" alt="visa">
|
<img src="assets/img/visa.png" alt="visa">
|
||||||
<img src="{{ asset('assets/img/jcb.png') }}" alt="jcb">
|
<img src="assets/img/jcb.png" alt="jcb">
|
||||||
<img src="{{ asset('assets/img/mastercard.png') }}" alt="mastercard">
|
<img src="assets/img/mastercard.png" alt="mastercard">
|
||||||
<img src="{{ asset('assets/img/paypal.png') }}" alt="paypal">
|
<img src="assets/img/paypal.png" alt="paypal">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-lg-4 text-right">
|
<div class="col-lg-4 text-right">
|
||||||
<div class="invoice-detail-item">
|
<div class="invoice-detail-item">
|
||||||
<div class="invoice-detail-name">Subtotal</div>
|
<div class="invoice-detail-name">Subtotal</div>
|
||||||
<div class="invoice-detail-value">Rp {{ number_format($transaction->total_harga, 2, ',', '.') }}</div>
|
<div class="invoice-detail-value">Rp.670.000.000</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="invoice-detail-item">
|
<div class="invoice-detail-item">
|
||||||
<div class="invoice-detail-name">Biaya Admin</div>
|
<div class="invoice-detail-name">Shipping</div>
|
||||||
<div class="invoice-detail-value">
|
<div class="invoice-detail-value">Rp.15.000</div>
|
||||||
Rp {{ number_format($transaction->total_keuntungan, 2, ',', '.') }}
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<hr class="mt-2 mb-2">
|
<hr class="mt-2 mb-2">
|
||||||
<div class="invoice-detail-item">
|
<div class="invoice-detail-item">
|
||||||
<div class="invoice-detail-name">Total</div>
|
<div class="invoice-detail-name">Total</div>
|
||||||
<div class="invoice-detail-value invoice-detail-value-lg">
|
<div class="invoice-detail-value invoice-detail-value-lg">
|
||||||
Rp {{ number_format($transaction->total_bayar, 2, ',', '.') }}</div>
|
Rp.6.715.000.000</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -177,6 +191,99 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
@endsection
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
{{-- <div class="col-12 col-md-12 col-lg-7">
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-body">
|
||||||
|
@foreach ($TransactionUser as $HistoryTransaction) --}}
|
||||||
|
{{-- <div class="d-flex flex-column">
|
||||||
|
<div class="data-fieldr">
|
||||||
|
<span class="fw-bold text-start">Order Details</span>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<hr class="border border-1 opacity-75 w-100">
|
||||||
|
<div class="data-field">
|
||||||
|
<span class="fw-bold text-start">Oder ID</span>
|
||||||
|
<span class="text-muted ">{{ $HistoryTransaction['orderId'] }}</span>
|
||||||
|
</div>
|
||||||
|
<div class="data-field">
|
||||||
|
<span class="fw-bold text-start">Customer</span>
|
||||||
|
<span class="text-muted ">{{ $HistoryTransaction['Customer'] }}</span>
|
||||||
|
</div>
|
||||||
|
<div class="data-field">
|
||||||
|
<span class="fw-bold text-start">Seller</span>
|
||||||
|
<span class="text-muted ">{{ $HistoryTransaction['seller'] }}</span>
|
||||||
|
</div>
|
||||||
|
<div class="data-field">
|
||||||
|
<span class="fw-bold text-start">Total</span>
|
||||||
|
<span class="text-muted ">{{ $HistoryTransaction['total'] }}</span>
|
||||||
|
</div>
|
||||||
|
<div class="data-field">
|
||||||
|
<span class="fw-bold text-start">Due Date</span>
|
||||||
|
<span class="text-muted ">{{ $HistoryTransaction['dueDate'] }}</span>
|
||||||
|
</div>
|
||||||
|
<div class="data-field">
|
||||||
|
<span class="fw-bold text-start">Status</span>
|
||||||
|
<span class="text-muted ">{{ $HistoryTransaction['status'] }}</span>
|
||||||
|
</div>
|
||||||
|
</div> --}}
|
||||||
|
|
||||||
|
{{-- @endforeach --}}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
{{-- Pindahan modal --}}
|
||||||
|
{{-- awal modal transaksi --}}
|
||||||
|
{{-- <div class="modal fade" id="detailtransaksi" data-bs-backdrop="static" data-bs-keyboard="false" tabindex="-1"
|
||||||
|
aria-labelledby="staticBackdropLabel" aria-hidden="true">
|
||||||
|
<div class="modal-dialog">
|
||||||
|
<div class="modal-content">
|
||||||
|
<div class="modal-header d-flex justify-content-center">
|
||||||
|
<h1 class="modal-title fs-5" id="staticBackdropLabel">Detail Transaksi</h1>
|
||||||
|
<a type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></a>
|
||||||
|
</div>
|
||||||
|
<div class="modal-body">
|
||||||
|
@foreach ($TransactionUser as $HistoryTransaction)
|
||||||
|
<div class="d-flex flex-column">
|
||||||
|
<div class="data-fieldr">
|
||||||
|
<span class="fw-bold text-start">Order Details</span>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<hr class="border border-1 opacity-75 w-100">
|
||||||
|
<div class="data-field">
|
||||||
|
<span class="fw-bold text-start">Oder ID</span>
|
||||||
|
<span class="text-muted ">{{ $HistoryTransaction['orderId'] }}</span>
|
||||||
|
</div>
|
||||||
|
<div class="data-field">
|
||||||
|
<span class="fw-bold text-start">Customer</span>
|
||||||
|
<span class="text-muted ">{{ $HistoryTransaction['Customer'] }}</span>
|
||||||
|
</div>
|
||||||
|
<div class="data-field">
|
||||||
|
<span class="fw-bold text-start">Seller</span>
|
||||||
|
<span class="text-muted ">{{ $HistoryTransaction['seller'] }}</span>
|
||||||
|
</div>
|
||||||
|
<div class="data-field">
|
||||||
|
<span class="fw-bold text-start">Total</span>
|
||||||
|
<span class="text-muted ">{{ $HistoryTransaction['total'] }}</span>
|
||||||
|
</div>
|
||||||
|
<div class="data-field">
|
||||||
|
<span class="fw-bold text-start">Due Date</span>
|
||||||
|
<span class="text-muted ">{{ $HistoryTransaction['dueDate'] }}</span>
|
||||||
|
</div>
|
||||||
|
<div class="data-field">
|
||||||
|
<span class="fw-bold text-start">Status</span>
|
||||||
|
<span class="text-muted ">{{ $HistoryTransaction['status'] }}</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
@endforeach
|
||||||
|
</div>
|
||||||
|
<div class="modal-footer">
|
||||||
|
<a href="/transaction" type="button" class="btn btn-primary">OK!</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@endsection
|
</div> --}}
|
||||||
|
@ -3,6 +3,8 @@
|
|||||||
<div class="main-content">
|
<div class="main-content">
|
||||||
<section class="section">
|
<section class="section">
|
||||||
<div class="section-header">
|
<div class="section-header">
|
||||||
|
|
||||||
|
|
||||||
<div class="section-header-breadcrumb">
|
<div class="section-header-breadcrumb">
|
||||||
<div class="breadcrumb-item active"><a href="#">Dashboard</a></div>
|
<div class="breadcrumb-item active"><a href="#">Dashboard</a></div>
|
||||||
<div class="breadcrumb-item"><a href="#"> Transaction</a></div>
|
<div class="breadcrumb-item"><a href="#"> Transaction</a></div>
|
||||||
@ -15,44 +17,44 @@
|
|||||||
<div class="col-12 mb-4">
|
<div class="col-12 mb-4">
|
||||||
<div class="hero bg-primary text-white">
|
<div class="hero bg-primary text-white">
|
||||||
<div class="hero-inner">
|
<div class="hero-inner">
|
||||||
<h1>Welcome! {{ Auth::user()->nama_depan }}</h1>
|
<h1>Welcome! npannisa</h1>
|
||||||
<p class="lead">Mau belanja apa hari ini?</p>
|
<p class="lead">How Are You Today?</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-12">
|
<div class="col-md-12">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="d-grid gap-2 d-md-flex justify-content-md-end" style="margin-bottom: 20px">
|
<div class="d-grid gap-2 d-md-flex justify-content-md-end" style="margin-bottom: 20px">
|
||||||
<a class="nav-link active" href="{{ route('tambah-transaction.pembeli') }}">
|
<a class="nav-link active" href="new-transaction">
|
||||||
<button class="btn btn-primary btn-lg">Lakukan Transaksi Baru</button>
|
<button class="btn btn-primary btn-lg">Lakukan Transaksi Baru</button>
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div class="table-responsive">
|
<div class="table-responsive">
|
||||||
<table class="table table-striped" id="table-3">
|
<table class="table table-striped" id="table-1">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th>No</th>
|
<th>User ID</th>
|
||||||
<th>Order ID</th>
|
<th>Order ID</th>
|
||||||
<th>Penjual</th>
|
<th>Customer</th>
|
||||||
|
<th>Seller</th>
|
||||||
<th>Total</th>
|
<th>Total</th>
|
||||||
<th>Tanggal Pembuatan</th>
|
<th>Due Date</th>
|
||||||
<th>Tanggal Update</th>
|
|
||||||
<th>Status</th>
|
<th>Status</th>
|
||||||
<th>Aksi</th>
|
<th>Action</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
@foreach ($transactions as $transaction)
|
@foreach ($TransactionUser as $HistoryTransaction)
|
||||||
<tr>
|
<tr>
|
||||||
<td>{{ $loop->iteration }}</td>
|
<td>{{ $HistoryTransaction['userId'] }}</td>
|
||||||
<td>{{ $transaction->id }}</td>
|
<td>{{ $HistoryTransaction['orderId'] }}</td>
|
||||||
<td>{{ $transaction->data_penjual->nama_depan.' '.$transaction->data_penjual->nama_belakang }}</td>
|
<td>{{ $HistoryTransaction['Customer'] }}</td>
|
||||||
<td>Rp {{number_format($transaction->total_bayar,2, ',', '.') }}</td>
|
<td>{{ $HistoryTransaction['seller'] }}</td>
|
||||||
<td>{{ $transaction->created_at }}</td>
|
<td>{{ $HistoryTransaction['total'] }}</td>
|
||||||
<td>{{ $transaction->updated_at }}</td>
|
<td>{{ $HistoryTransaction['dueDate'] }}</td>
|
||||||
<td>{{ ($transaction->status == 'pending' ? 'Menunggu Pembayaran' : 'Selesai') }}</td>
|
<td>{{ $HistoryTransaction['status'] }}</td>
|
||||||
<td>
|
<td>
|
||||||
<div class="btn-group">
|
<div class="btn-group">
|
||||||
<button type="button" class="btn btn-primary dropdown-toggle"
|
<button type="button" class="btn btn-primary dropdown-toggle"
|
||||||
@ -62,24 +64,16 @@
|
|||||||
</button>
|
</button>
|
||||||
|
|
||||||
<ul class="dropdown-menu">
|
<ul class="dropdown-menu">
|
||||||
<li><a class="dropdown-item" href="{{route('user-transaction.detail.pembeli',$transaction->id)}}">Detail</a></li>
|
<li><a class="dropdown-item"
|
||||||
{{-- @if ($transaction->status == 'Pending')
|
href="/detail-transaction">Detail</a></li>
|
||||||
|
|
||||||
@endif --}}
|
|
||||||
<li><a class="dropdown-item"
|
<li><a class="dropdown-item"
|
||||||
href="/refund-transaction">Refund</a></li>
|
href="/refund-transaction">Refund</a></li>
|
||||||
{{-- <li><a class="dropdown-item"
|
{{-- <li><a class="dropdown-item"
|
||||||
href="/invoice-transaction">Bayar</a></li> --}}
|
href="/invoice-transaction">Bayar</a></li> --}}
|
||||||
<li><a class="dropdown-item" id="bayar"
|
<li><a class="dropdown-item" data-toggle="modal"
|
||||||
data-id="{{ $transaction->id }}"
|
data-target="#bayar">Bayar</a></li>
|
||||||
data-token="{{$transaction->token}}">Bayar</a>
|
<li><a class="dropdown-item" data-toggle="modal"
|
||||||
{{-- data-id="{{ $transaction }}">Bayar</a> --}}
|
data-target="#selesai">Selesai</a></li>
|
||||||
|
|
||||||
</li>
|
|
||||||
<li><a class="dropdown-item" id="selesai"
|
|
||||||
data-id="{{ $transaction->id }}">Selesai</a>
|
|
||||||
{{-- data-id="{{ $transaction }}">Selesai</a> --}}
|
|
||||||
</li>
|
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
@ -93,90 +87,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
</div>
|
|
||||||
@extends('user.transaction.pembeli.modal-bayar-transaction')
|
|
||||||
@extends('user.transaction.pembeli.modal-end-transaction')
|
|
||||||
<script type="text/javascript" src="https://app.sandbox.midtrans.com/snap/snap.js"
|
|
||||||
data-client-key="SB-Mid-client-rk6kY5XbPLChy3Lg"></script>
|
|
||||||
<script>
|
|
||||||
$(document).ready(function() {
|
|
||||||
// Bayar
|
|
||||||
$('#table-3').on('click', '#bayar', function() {
|
|
||||||
const id = $(this).data('id');
|
|
||||||
const token =$(this).data('token');
|
|
||||||
const csrfToken = $('meta[name="csrf-token"]').attr('content');
|
|
||||||
|
|
||||||
snap.pay(token, {
|
@extends('user.transaction.pembeli.modal-bayar-transaction')
|
||||||
onSuccess: function(result) {
|
@extends('user.transaction.pembeli.modal-end-transaction')
|
||||||
const formData = new FormData();
|
@endsection
|
||||||
formData.append('status', result.transaction_status);
|
|
||||||
formData.append('tanggal_pembayaran', result.transaction_time);
|
|
||||||
formData.append('metode_pembayaran', result.payment_type);
|
|
||||||
|
|
||||||
$.ajaxSetup({
|
|
||||||
headers:{
|
|
||||||
'X-CSRF-TOKEN': csrfToken
|
|
||||||
}
|
|
||||||
});
|
|
||||||
$.ajax({
|
|
||||||
url:"{{route('payment-transaction.pembeli',':id')}}".replace(':id',id),
|
|
||||||
type:"POST",
|
|
||||||
data: formData,
|
|
||||||
contentType: false,
|
|
||||||
processData: false,
|
|
||||||
success:function(response){
|
|
||||||
Swal.fire({
|
|
||||||
title: response.status ? 'Berhasil' : 'Gagal',
|
|
||||||
text: response.message,
|
|
||||||
icon: response.status ? 'success' : 'error',
|
|
||||||
confirmButtonText: 'OK'
|
|
||||||
});
|
|
||||||
console.log(response);
|
|
||||||
},error:function(error){
|
|
||||||
Swal.fire({
|
|
||||||
title: 'Gagal',
|
|
||||||
text: 'Gagal mengupdate pembayaran ke database',
|
|
||||||
icon: 'error'
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
console.log(result);
|
|
||||||
},
|
|
||||||
onPending: function(result) {
|
|
||||||
/* You may add your own implementation here */
|
|
||||||
// alert("wating your payment!");
|
|
||||||
Swal.fire({
|
|
||||||
title: 'Ditunda',
|
|
||||||
text: 'Pemabayaran ditunda. Silahkan tunggu sebentar ' + result,
|
|
||||||
icon: 'info'
|
|
||||||
});
|
|
||||||
console.log(result);
|
|
||||||
},
|
|
||||||
onError: function(result) {
|
|
||||||
/* You may add your own implementation here */
|
|
||||||
Swal.fire({
|
|
||||||
title : 'Gagal',
|
|
||||||
text: 'Terjadi kesalahan ' + result,
|
|
||||||
icon: 'error'
|
|
||||||
});
|
|
||||||
console.log(result);
|
|
||||||
},
|
|
||||||
onClose: function(error) {
|
|
||||||
/* You may add your own implementation here */
|
|
||||||
Swal.fire({
|
|
||||||
title: 'Ditunda',
|
|
||||||
text: 'Kamu menutup halaman pembayaran. Silahkan masuk lagi untuk melakukan pembayaran',
|
|
||||||
icon: 'warning'
|
|
||||||
});
|
|
||||||
console.log(error);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
$('#table-3').on('click', '#selesai', function() {
|
|
||||||
const id = $(this).data('id');
|
|
||||||
console.log(id);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
@endsection
|
|
||||||
|
@ -1,7 +1,5 @@
|
|||||||
@extends('user.layout.main')
|
@extends('user.layout.main')
|
||||||
@section('content')
|
@section('content')
|
||||||
{{-- <link href="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/css/select2.min.css" rel="stylesheet" /> --}}
|
|
||||||
<link rel="stylesheet" href="{{ asset('assets/modules/select2/dist/css/select2.min.css') }}">
|
|
||||||
<div class="main-content">
|
<div class="main-content">
|
||||||
<section class="section">
|
<section class="section">
|
||||||
<div class="container">
|
<div class="container">
|
||||||
@ -16,383 +14,123 @@
|
|||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div class="form-row">
|
<div class="form-row">
|
||||||
<div class="form-group col-md-12">
|
<div class="form-group col-md-12">
|
||||||
<label for="inputpembeli">
|
<label for="inputpembeli">Nama Pembeli</label>
|
||||||
<h5>Nama Pembeli</h5>
|
|
||||||
</label>
|
|
||||||
<input type="email" class="form-control" id="inputpembeli"
|
<input type="email" class="form-control" id="inputpembeli"
|
||||||
placeholder="Masukkan nama pembeli"
|
placeholder="Masukkan nama pembeli">
|
||||||
value="{{ Auth::user()->nama_depan . ' ' . Auth::user()->nama_belakang }}"
|
|
||||||
disabled>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label for="inputpenjual">
|
<label for="inputpenjual">Nama Penjual</label>
|
||||||
<h5>Penjual</h5>
|
<input type="text" class="form-control" id="inputpenjual"
|
||||||
</label>
|
placeholder="Masukkan nama penjual">
|
||||||
<h6>Pilih dari kontak</h6>
|
</div>
|
||||||
<div class="input-group">
|
<div class="form-group">
|
||||||
<select class="form-control" id="selectContact" name="select_penjual">
|
<label for="harga">Harga</label>
|
||||||
|
<input type="text" class="form-control" id="harga" placeholder="Rp.1000.000">
|
||||||
</select>
|
</div>
|
||||||
<button class="btn btn-danger" type="button" id="deleteOption">Hapus</button>
|
<div class="form-group">
|
||||||
|
<label for="inputjenis">Jenis Barang</label>
|
||||||
|
<input type="text" class="form-control" id="inputjenis" placeholder="">
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label>Due Date</label>
|
||||||
|
<input type="date" class="form-control">
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="inputdeskripsi">Deskripsi</label>
|
||||||
|
<textarea class="form-control resizable" id="deskripsi"
|
||||||
|
placeholder="Deskripsikan jenis apa transaksi yang anda lakukan"></textarea>
|
||||||
|
</div>
|
||||||
|
<div class="form-group mb-0">
|
||||||
|
<div class="form-check">
|
||||||
|
<input class="form-check-input" type="checkbox" id="gridCheck">
|
||||||
|
<label class="form-check-label" for="gridCheck">
|
||||||
|
Check me out
|
||||||
|
</label>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
<div class="form-group">
|
<div class="card-footer d-flex justify-content-center">
|
||||||
<h6>atau dari email</h6>
|
<a href="/pembeli" class="btn btn-primary">Submit</a>
|
||||||
<div class="input-group">
|
|
||||||
<input type="email" class="form-control" id="inputPenjual"
|
|
||||||
name="input_penjual" placeholder="Masukkan email penjual">
|
|
||||||
<button class="btn btn-danger" type="button" id="checkButton">Check</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="inputBarang">
|
|
||||||
<h5>Nama Barang/Jasa</h5>
|
|
||||||
</label>
|
|
||||||
<input type="text" class="form-control" id="inputBarang"
|
|
||||||
placeholder="Sepeda Motor" name="nama_barang">
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="hargaBarang">
|
|
||||||
<h5>Harga Satuan</h5>
|
|
||||||
</label>
|
|
||||||
<input type="number" class="form-control" name="harga_barang" id="hargaBarang"
|
|
||||||
placeholder="Rp. 1000.000">
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="hargaBarang">
|
|
||||||
<h5>Satuan</h5>
|
|
||||||
</label>
|
|
||||||
<input type="text" class="form-control" name="satuan_barang" id="satuanBarang"
|
|
||||||
placeholder="Buah/Kg/Karung dll.">
|
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="jumlahBarang">
|
|
||||||
<h5>Jumlah Satuan</h5>
|
|
||||||
</label>
|
|
||||||
<input type="number" class="form-control" name="jumlah_barang" id="jumlahBarang"
|
|
||||||
placeholder="Jumlah satuan">
|
|
||||||
</div>
|
|
||||||
{{-- <div class="form-group">
|
|
||||||
<label for="batasPengiriman">
|
|
||||||
<h5>Batas Pengiriman Barang</h5>
|
|
||||||
</label>
|
|
||||||
<input type="date" class="form-control" name="batas_pengiriman"
|
|
||||||
id="batasPengiriman" nama="batas_pengiriman">
|
|
||||||
</div> --}}
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="inputDeskripsi">
|
|
||||||
<h5>Deskripsi</h5>
|
|
||||||
</label>
|
|
||||||
<textarea class="form-control resizable" name="deskripsi" id="inputDeskripsi" placeholder="Deskripsikan transaksi anda"></textarea>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="dashed-line"></div>
|
|
||||||
|
|
||||||
<div class="form-row">
|
|
||||||
<label style="margin-right: 200px;" id="jumlah">Nominal</label>
|
|
||||||
<div style="display: inline-block;" id="totalBiaya">Rp 0,00</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="form-row">
|
|
||||||
<label style="margin-right: 200px;" id="biayaAdmin" data-admin="">Biaya Admin
|
|
||||||
(0.1%)</label>
|
|
||||||
<div style="display: inline-block;" id="totalBiayaAdmin">Rp 0,00</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="form-row">
|
|
||||||
<h6 style="margin-right: 200px;">Total Biaya</h6>
|
|
||||||
<div style="display: inline-block;">
|
|
||||||
<h6 id="totalBayar">Rp 0,00</h6>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="dashed-line"></div>
|
|
||||||
|
|
||||||
<div class="card-footer d-flex justify-content-center">
|
|
||||||
<button type="button" class="btn btn-primary" id="save">Buat</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
|
||||||
</div>
|
</div>
|
||||||
<script src="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/js/select2.min.js"></script>
|
|
||||||
<script>
|
|
||||||
$(document).ready(function() {
|
|
||||||
let totalHarga = 0;
|
|
||||||
let biayaAdmin = 0.1;
|
|
||||||
let totalBiayaAdmin = 0;
|
|
||||||
let totalBayar = 0;
|
|
||||||
|
|
||||||
function tampilTotalHarga(harga) {
|
|
||||||
let tampilTotalNominal = document.getElementById('totalBiaya');
|
|
||||||
let tampilTotalBiaya = document.getElementById('totalBayar');
|
|
||||||
let tampilTotalBiayaAdmin = document.getElementById('totalBiayaAdmin');
|
|
||||||
totalBiayaAdmin = harga * biayaAdmin / 100
|
|
||||||
totalBayar = totalBiayaAdmin + harga
|
|
||||||
tampilTotalNominal.innerHTML = harga.toLocaleString('id-ID', {
|
|
||||||
style: 'currency',
|
|
||||||
currency: 'IDR'
|
|
||||||
});
|
|
||||||
tampilTotalBiaya.innerHTML = totalBayar.toLocaleString('id-ID', {
|
|
||||||
style: 'currency',
|
|
||||||
currency: 'IDR'
|
|
||||||
});;
|
|
||||||
tampilTotalBiayaAdmin.innerHTML = totalBiayaAdmin.toLocaleString('id-ID', {
|
|
||||||
style: 'currency',
|
|
||||||
currency: 'IDR'
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
$("#selectContact").select2({
|
|
||||||
placeholder: "Pilih Kontak",
|
|
||||||
ajax: {
|
|
||||||
url: "{{ route('user-contact.get') }}",
|
|
||||||
processResults: function({
|
|
||||||
data
|
|
||||||
}) {
|
|
||||||
return {
|
|
||||||
results: $.map(data, function(item) {
|
|
||||||
return {
|
|
||||||
id: item.relasi_kontak,
|
|
||||||
text: item.nama_depan + " " + item.nama_belakang,
|
|
||||||
};
|
|
||||||
}),
|
|
||||||
};
|
|
||||||
},
|
|
||||||
},
|
|
||||||
});
|
|
||||||
|
|
||||||
$('#hargaBarang').change(function() {
|
|
||||||
let harga = $(this).val();
|
|
||||||
let jumlah = $('#jumlahBarang').val();
|
|
||||||
let biaya = document.getElementById('totalBiaya');
|
|
||||||
if (harga.trim() != '') {
|
|
||||||
if (jumlah.trim() != '') {
|
|
||||||
totalHarga = harga * jumlah;
|
|
||||||
} else {
|
|
||||||
totalHarga = harga * 0;
|
|
||||||
}
|
|
||||||
tampilTotalHarga(totalHarga);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
$('#jumlahBarang').change(function() {
|
|
||||||
let jumlah = $(this).val();
|
|
||||||
let harga = $('#hargaBarang').val();
|
|
||||||
let nominal = document.getElementById('jumlah');
|
|
||||||
if (jumlah.trim() != '') {
|
|
||||||
if (jumlah == 0) {
|
|
||||||
nominal.innerHTML = 'Nominal';
|
|
||||||
} else {
|
|
||||||
nominal.innerHTML = 'Nominal (x' + jumlah + ')';
|
|
||||||
}
|
|
||||||
if (harga.trim() != '') {
|
|
||||||
totalHarga = harga * jumlah;
|
|
||||||
|
|
||||||
} else {
|
|
||||||
totalHarga = 0 * jumlah;
|
|
||||||
}
|
|
||||||
tampilTotalHarga(totalHarga);
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
|
|
||||||
$('#selectContact').change(function() {
|
|
||||||
let email = $('#selectContact').val();
|
|
||||||
if (email === null) {
|
|
||||||
$('#inputPenjual').prop('disabled', false);
|
|
||||||
$('#checkButton').prop('disabled', false);
|
|
||||||
$('#deleteOption').prop('disabled', false);
|
|
||||||
} else {
|
|
||||||
$('#inputPenjual').prop('disabled', true);
|
|
||||||
$('#deleteOption').prop('disabled', false);
|
|
||||||
$('#checkButton').prop('disabled', true);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
$('#deleteOption').click(function() {
|
{{-- form transaksi --}}
|
||||||
$('#selectContact').val(null).trigger("change");
|
{{-- <div class="container">
|
||||||
});
|
<div class="row justify-content-center">
|
||||||
|
<div class="col-md-6">
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-body">
|
||||||
|
<form>
|
||||||
|
<div class="mb-3">
|
||||||
|
<label for="orderid" class="form-label">Order Id</label>
|
||||||
|
<input type="text" class="form-control" id="orderId" name="order" required>
|
||||||
|
</div>
|
||||||
|
|
||||||
$('#inputPenjual').on('input', function() {
|
<div class="mb-3">
|
||||||
let emailInput = $('#inputPenjual').val();
|
<label for="customer" class="form-label">Customer</label>
|
||||||
if (emailInput.trim() == '') {
|
<input type="text" class="form-control" id="customer" name="customer" required>
|
||||||
$('#selectContact').prop('disabled', false);
|
</div>
|
||||||
$('#deleteOption').prop('disabled', false);
|
|
||||||
} else {
|
|
||||||
$('#selectContact').prop('disabled', true);
|
|
||||||
$('#deleteOption').prop('disabled', true);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
$('#checkButton').click(function() {
|
<div class="mb-3">
|
||||||
let email = document.querySelector('[name="input_penjual"]').value;
|
<label for="seller" class="form-label">Norek Asal</label>
|
||||||
const csrfToken = $('meta[name="csrf-token"]').attr('content');
|
<input type="text" class="form-control" id="norekasal" name="norekasal" pattern="[0-9]+" required>
|
||||||
|
<div class="invalid-feedback">
|
||||||
|
Harap masukkan hanya angka</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
if (email.trim() == '') {
|
<div class="mb-3">
|
||||||
Swal.fire({
|
<label for="seller" class="form-label">Seller</label>
|
||||||
title: 'Gagal',
|
<input type="text" class="form-control" id="seller" name="seller" required>
|
||||||
text: 'Email tidak boleh kosong',
|
</div>
|
||||||
icon: 'error'
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
if (email != "{{ Auth::user()->email }}") {
|
|
||||||
$.ajaxSetup({
|
|
||||||
headers: {
|
|
||||||
'X-CSRF-TOKEN': csrfToken
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
$.ajax({
|
<div class="mb-3">
|
||||||
url: "{{ route('user-contact.email', ':email') }}".replace(':email',
|
<label for="seller" class="form-label">Norek Tujuan</label>
|
||||||
email),
|
<input type="text" class="form-control" id="norektujuan" name="norektujuan" pattern="[0-9]+" required>
|
||||||
type: 'GET',
|
<div class="invalid-feedback">
|
||||||
success: function(response) {
|
Harap masukkan hanya angka.
|
||||||
if (response.status) {
|
</div>
|
||||||
Swal.fire({
|
</div>
|
||||||
title: 'Berhasil',
|
|
||||||
text: 'Akun tersedia',
|
|
||||||
icon: 'success'
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
Swal.fire({
|
|
||||||
title: 'Gagal',
|
|
||||||
text: response.message,
|
|
||||||
icon: 'error'
|
|
||||||
});
|
|
||||||
}
|
|
||||||
},
|
|
||||||
error: function(error) {
|
|
||||||
Swal.fire({
|
|
||||||
title: 'Gagal',
|
|
||||||
text: 'Terjadi error karena, ' + error,
|
|
||||||
icon: 'error'
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
Swal.fire({
|
|
||||||
title: 'Gagal',
|
|
||||||
text: 'Email penjual tidak boleh sama denggan email pembeli',
|
|
||||||
icon: 'error',
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
$('#save').on('click', function() {
|
|
||||||
let opsiKontak = document.querySelector('[name="select_penjual"]').value;
|
|
||||||
let inputKontak = document.querySelector('[name="input_penjual"]').value;
|
|
||||||
let namaBarang = document.querySelector('[name="nama_barang"]').value;
|
|
||||||
let hargaBarang = document.querySelector('[name="harga_barang"]').value;
|
|
||||||
let satuanBarang = document.querySelector('[name="satuan_barang"]').value;
|
|
||||||
let jumlahBarang = document.querySelector('[name="jumlah_barang"]').value;
|
|
||||||
let deskripsi = document.querySelector('[name="deskripsi"]').value;
|
|
||||||
|
|
||||||
let emptyInput = [];
|
<div class="mb-3">
|
||||||
|
<label for="total" class="form-label">Total</label>
|
||||||
|
<input type="text" class="form-control" id="total" name="total">
|
||||||
|
</div>
|
||||||
|
|
||||||
let penjual = '';
|
<div class="mb-3">
|
||||||
if (opsiKontak != "" && inputKontak != "") {
|
<label for="seller" class="form-label">Due Date</label>
|
||||||
penjual = opsiKontak;
|
<input type="calendar" class="form-control" id="duedate" name="duedate" required>
|
||||||
} else if (opsiKontak == "" && inputKontak != "") {
|
</div>
|
||||||
penjual = inputKontak;
|
|
||||||
} else if (inputKontak == "" && opsiKontak != "") {
|
|
||||||
penjual = opsiKontak;
|
|
||||||
} else {
|
|
||||||
console.log('Kosong');
|
|
||||||
emptyInput.push("Kolom penjual tidak boleh kosong");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (penjual == "{{ Auth::user()->email }}") {
|
<div class="mb-3">
|
||||||
emptyInput.push("Email penjual tidak boleh sama dengan email pembeli");
|
<label for="textareadesc" class="form-label">Deskripsi</label>
|
||||||
}
|
<textarea class="form-control" id="textareadesc" rows="3"></textarea>
|
||||||
|
</div>
|
||||||
|
|
||||||
if (namaBarang == "") {
|
|
||||||
emptyInput.push("Nama barang tidak boleh kosong");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (hargaBarang == "") {
|
{{-- <div class="d-flex justify-content-center">
|
||||||
emptyInput.push("Harga barang tidak boleh kosong");
|
<button class="btn btn-info open-detail-modal" data-toggle="modal fade"
|
||||||
}
|
data-target="#confirmtransaction">Transaksi Sudah Benar</button>
|
||||||
|
</div> --}}
|
||||||
|
|
||||||
if (satuanBarang == "") {
|
<div class="d-flex justiffy-content-center">
|
||||||
emptyInput.push("Satuan barang tidak boleh kosong");
|
<a href="/pembeli" type="button" class="btn btn-primary" data-bs-dismiss="modal">Transaksi Sudah
|
||||||
}
|
Benar</a>
|
||||||
|
</div>
|
||||||
if (jumlahBarang == "") {
|
</form>
|
||||||
emptyInput.push("Jumlah barang tidak boleh kosong");
|
</div>
|
||||||
}
|
</div>
|
||||||
|
</div>
|
||||||
// if (batasPengiriman == "") {
|
</div>
|
||||||
// emptyInput.push("Batas pengiriman tidak boleh kosong");
|
{{-- </div> --}}
|
||||||
// }
|
</div>
|
||||||
|
|
||||||
if (emptyInput.length > 0) {
|
|
||||||
const emptyInputError = emptyInput.join(', ');
|
|
||||||
Swal.fire({
|
|
||||||
title: 'Gagal',
|
|
||||||
text: emptyInputError,
|
|
||||||
icon: 'error',
|
|
||||||
confirmButtonText: 'OK',
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
const csrfToken = $('meta[name="csrf-token"]').attr('content');
|
|
||||||
const formData = new FormData();
|
|
||||||
formData.append('email_penjual', penjual);
|
|
||||||
formData.append('nama_barang', namaBarang);
|
|
||||||
formData.append('satuan_barang', satuanBarang);
|
|
||||||
formData.append('harga_barang', hargaBarang);
|
|
||||||
formData.append('jumlah_barang', jumlahBarang);
|
|
||||||
// formData.append('batas_pengiriman', batasPengiriman);
|
|
||||||
formData.append('deskripsi', deskripsi);
|
|
||||||
formData.append('persentase_keuntungan', 0.1);
|
|
||||||
formData.append('total_keuntungan', totalBiayaAdmin);
|
|
||||||
formData.append('total_harga', totalHarga);
|
|
||||||
formData.append('total_bayar', totalBayar);
|
|
||||||
|
|
||||||
$.ajaxSetup({
|
|
||||||
headers: {
|
|
||||||
'X-CSRF-TOKEN': csrfToken
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
$.ajax({
|
|
||||||
url: "{{ route('store-transaction.pembeli') }}",
|
|
||||||
type: "POST",
|
|
||||||
data: formData,
|
|
||||||
processData: false,
|
|
||||||
contentType: false,
|
|
||||||
success: function(response) {
|
|
||||||
Swal.fire({
|
|
||||||
title: response.status ? 'Berhasil' : 'Gagal',
|
|
||||||
text: response.message,
|
|
||||||
icon: response.status ? 'success' : 'error',
|
|
||||||
confirmButtonText: 'OK'
|
|
||||||
}).then(function() {
|
|
||||||
location.href =
|
|
||||||
"{{ route('user-transaction.index.pembeli') }}"
|
|
||||||
});
|
|
||||||
console.log(response);
|
|
||||||
},
|
|
||||||
error: function(error) {
|
|
||||||
Swal.fire({
|
|
||||||
title: 'Gagal',
|
|
||||||
text: 'Gagal mengirimkan data karena ' + error,
|
|
||||||
icon: 'error'
|
|
||||||
});
|
|
||||||
console.log(error);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
@endsection
|
@endsection
|
||||||
|
@ -18,7 +18,7 @@
|
|||||||
<div class="hero bg-primary text-white">
|
<div class="hero bg-primary text-white">
|
||||||
<div class="hero-inner">
|
<div class="hero-inner">
|
||||||
<h1>Welcome to the Rekber Aplication</h1>
|
<h1>Welcome to the Rekber Aplication</h1>
|
||||||
<p class="lead">Selamat Datang {{ Auth::user()->nama_depan }}!</p>
|
<p class="lead">Selamat Datang npannisa!</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -30,26 +30,27 @@
|
|||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th>#</th>
|
<th>#</th>
|
||||||
|
<th>User ID</th>
|
||||||
<th>Order ID</th>
|
<th>Order ID</th>
|
||||||
<th>Pembeli</th>
|
<th>Customer</th>
|
||||||
|
<th>Seller</th>
|
||||||
<th>Total</th>
|
<th>Total</th>
|
||||||
<th>Batas Pengiriman Barang</th>
|
<th>Due Date</th>
|
||||||
<th>Status</th>
|
<th>Status</th>
|
||||||
<th>Action</th>
|
<th>Action</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
@foreach ($transactions as $transaction)
|
@foreach ($TransactionUser as $key => $HistoryTransaction)
|
||||||
<tr>
|
<tr>
|
||||||
<td>{{ $loop->iteration }}</td>
|
<td>{{ ++$key }}</td>
|
||||||
<td class="font-weight-600">{{ $transaction->id }}</td>
|
<td class="font-weight-600">{{ $HistoryTransaction['userId'] }}</td>
|
||||||
<td class="font-weight-600">
|
<td class="font-weight-600">{{ $HistoryTransaction['orderId'] }}</td>
|
||||||
{{ ucwords(strtolower($transaction->data_pembeli->nama_depan . ' ' . $transaction->data_pembeli->nama_belakang)) }}
|
<td class="font-weight-600">{{ $HistoryTransaction['Customer'] }}</td>
|
||||||
</td>
|
<td class="font-weight-600">{{ $HistoryTransaction['seller'] }}</td>
|
||||||
<td class="font-weight-600">{{ $transaction->total_bayar }}</td>
|
<td class="font-weight-600">{{ $HistoryTransaction['total'] }}</td>
|
||||||
{{-- <td class="font-weight-600">{{ $transaction->batas_pengiriman_barang }}</td> --}}
|
<td>{{ $HistoryTransaction['dueDate'] }}</td>
|
||||||
<td>{{ $transaction->batas_pengiriman_barang }}</td>
|
<td class="font-weight-600">{{ $HistoryTransaction['status'] }}</td>
|
||||||
<td class="font-weight-600">{{ $transaction->status }}</td>
|
|
||||||
<td>
|
<td>
|
||||||
<div class="btn-group">
|
<div class="btn-group">
|
||||||
<button type="button" class="btn btn-primary dropdown-toggle"
|
<button type="button" class="btn btn-primary dropdown-toggle"
|
||||||
@ -59,8 +60,7 @@
|
|||||||
</button>
|
</button>
|
||||||
<ul class="dropdown-menu">
|
<ul class="dropdown-menu">
|
||||||
<li><a class="dropdown-item"
|
<li><a class="dropdown-item"
|
||||||
href="{{ route('user-transaction.detail.pembeli', $transaction->id) }}">Detail</a>
|
href="/detail-transaction">Detail</a></li>
|
||||||
</li>
|
|
||||||
<li><a class="dropdown-item" data-toggle="modal"
|
<li><a class="dropdown-item" data-toggle="modal"
|
||||||
data-target="#tracking">Tracking</a></li>
|
data-target="#tracking">Tracking</a></li>
|
||||||
{{-- <li><a class="dropdown-item" href="/tracking">Tracking</a></li> --}}
|
{{-- <li><a class="dropdown-item" href="/tracking">Tracking</a></li> --}}
|
||||||
@ -76,8 +76,5 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
@extends('user.transaction.Penjual.tracking')
|
||||||
</section>
|
@endsection
|
||||||
</div>
|
|
||||||
@extends('user.transaction.penjual.modal-tracking')
|
|
||||||
@endsection
|
|
||||||
|
@ -1,47 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en">
|
|
||||||
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8">
|
|
||||||
<meta content="width=device-width, initial-scale=1, maximum-scale=1, shrink-to-fit=no" name="viewport">
|
|
||||||
<title>Verifikasi Email Pemulihan</title>
|
|
||||||
|
|
||||||
<link rel="stylesheet" href="{{ asset('assets/modules/bootstrap/css/bootstrap.min.css') }}">
|
|
||||||
<link rel="stylesheet" href="{{ asset('assets/css/style.css') }}">
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
<div id="app">
|
|
||||||
<section class="section">
|
|
||||||
<div class="container mt-5">
|
|
||||||
<div class="row justify-content-center">
|
|
||||||
<div class="col-md-10">
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-header d-flex justify-content-center bg-primary text-white">
|
|
||||||
<img class="mr-3 rounded" width="150"
|
|
||||||
src="{{ asset('assets/images/google-removebg-preview.png') }}">
|
|
||||||
</div>
|
|
||||||
<div class="d-flex justify-content-center bg-primary text-white">
|
|
||||||
<h2 class="mb-0">Verifikasi Email</h2>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="card-body">
|
|
||||||
<p>Rekber mengirimkan kode verifikasi ke</p>
|
|
||||||
<p><b>{{ $verificationEmail['email'] }}</b></p>
|
|
||||||
<p class="mt-4">Gunakan kode ini untuk menyelesaikan syarat pendaftaran akun:</p>
|
|
||||||
<div class="d-flex justify-content-center">
|
|
||||||
<h1 class="verification-code">{{ $verificationEmail['code'] }}</h1>
|
|
||||||
</div>
|
|
||||||
<div class="text-center">
|
|
||||||
<p><b>Masa berlaku kode ini akan berakhir dalam 2 menit.</b> </p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
</div>
|
|
||||||
</body>
|
|
||||||
|
|
||||||
</html>
|
|
@ -1,60 +1,3 @@
|
|||||||
<<<<<<< HEAD
|
|
||||||
@extends('Admin.layout.main')
|
|
||||||
@section('content')
|
|
||||||
<!-- Main Content -->
|
|
||||||
<div class="main-content">
|
|
||||||
<section class="section">
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-lg-4 col-md-4 col-sm-12">
|
|
||||||
<div class="card card-statistic-2">
|
|
||||||
<div class="card-stats">
|
|
||||||
<div class="card-stats-title">List Transaction -
|
|
||||||
<div class="dropdown d-inline">
|
|
||||||
<a class="font-weight-600 dropdown-toggle" data-toggle="dropdown" href="#"
|
|
||||||
id="orders-month">August</a>
|
|
||||||
<ul class="dropdown-menu dropdown-menu-sm">
|
|
||||||
<li class="dropdown-title">Select Month</li>
|
|
||||||
<li><a href="#" class="dropdown-item">January</a></li>
|
|
||||||
<li><a href="#" class="dropdown-item">February</a></li>
|
|
||||||
<li><a href="#" class="dropdown-item">March</a></li>
|
|
||||||
<li><a href="#" class="dropdown-item">April</a></li>
|
|
||||||
<li><a href="#" class="dropdown-item">May</a></li>
|
|
||||||
<li><a href="#" class="dropdown-item">June</a></li>
|
|
||||||
<li><a href="#" class="dropdown-item">July</a></li>
|
|
||||||
<li><a href="#" class="dropdown-item active">August</a></li>
|
|
||||||
<li><a href="#" class="dropdown-item">September</a></li>
|
|
||||||
<li><a href="#" class="dropdown-item">October</a></li>
|
|
||||||
<li><a href="#" class="dropdown-item">November</a></li>
|
|
||||||
<li><a href="#" class="dropdown-item">December</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="card-stats-items">
|
|
||||||
<div class="card-stats-item">
|
|
||||||
<div class="card-stats-item-count">114</div>
|
|
||||||
<div class="card-stats-item-label">Success</div>
|
|
||||||
</div>
|
|
||||||
<div class="card-stats-item">
|
|
||||||
<div class="card-stats-item-count">12</div>
|
|
||||||
<div class="card-stats-item-label">Pending</div>
|
|
||||||
</div>
|
|
||||||
<div class="card-stats-item">
|
|
||||||
<div class="card-stats-item-count">23</div>
|
|
||||||
<div class="card-stats-item-label">Canceled</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="card-icon shadow-primary bg-primary">
|
|
||||||
<i class="fas fa-archive"></i>
|
|
||||||
</div>
|
|
||||||
<div class="card-wrap">
|
|
||||||
<div class="card-header">
|
|
||||||
<h4>Total Transaction</h4>
|
|
||||||
</div>
|
|
||||||
<div class="card-body">
|
|
||||||
159
|
|
||||||
</div>
|
|
||||||
=======
|
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html lang="en">
|
<html lang="en">
|
||||||
|
|
||||||
@ -144,7 +87,7 @@
|
|||||||
</div> --}}
|
</div> --}}
|
||||||
<!-- ======= MODAL ======= -->
|
<!-- ======= MODAL ======= -->
|
||||||
|
|
||||||
<div class="container mt-5">
|
<div class="container">
|
||||||
<div class="forms-container">
|
<div class="forms-container">
|
||||||
<div class="signin-signup">
|
<div class="signin-signup">
|
||||||
|
|
||||||
@ -159,8 +102,8 @@
|
|||||||
<div style="width: 100%; display: flex; align-items: center;">
|
<div style="width: 100%; display: flex; align-items: center;">
|
||||||
<div class="input-field-signin-flex">
|
<div class="input-field-signin-flex">
|
||||||
<i class="fas fa-envelope" aria-hidden="true"></i>
|
<i class="fas fa-envelope" aria-hidden="true"></i>
|
||||||
|
{{-- <input type="text" class="telp-input-signin" maxlength="13" oninput="this.value = this.value.replace(/[^0-9]/g, '').substring(0, 13);" placeholder="Nomer Telepon"> --}}
|
||||||
<input type="email" class="telp-input-signin" placeholder="Email" name="email" required>
|
<input type="email" class="telp-input-signin" placeholder="Email" name="email" required>
|
||||||
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
|
||||||
</div>
|
</div>
|
||||||
<button type="button" class="btn-otp solid" id="cekAkun">Cek Akun</button>
|
<button type="button" class="btn-otp solid" id="cekAkun">Cek Akun</button>
|
||||||
|
|
||||||
@ -218,7 +161,7 @@
|
|||||||
<div class="input-field-signup-flex">
|
<div class="input-field-signup-flex">
|
||||||
<i class="fas fa-user"></i>
|
<i class="fas fa-user"></i>
|
||||||
<input type="text" placeholder="Nama Depan" class="first-name-input"
|
<input type="text" placeholder="Nama Depan" class="first-name-input"
|
||||||
name="nama_depan" required />
|
name="nama_depan" />
|
||||||
</div>
|
</div>
|
||||||
<div class="input-field-signup-flex" style="margin-left: 3%">
|
<div class="input-field-signup-flex" style="margin-left: 3%">
|
||||||
<i class="fas fa-user"></i>
|
<i class="fas fa-user"></i>
|
||||||
@ -232,21 +175,11 @@
|
|||||||
maxlength="16"
|
maxlength="16"
|
||||||
oninput="this.value = this.value.replace(/[^0-9]/g, '').substring(0, 16);" />
|
oninput="this.value = this.value.replace(/[^0-9]/g, '').substring(0, 16);" />
|
||||||
</div>
|
</div>
|
||||||
<div class="flex-input-btn">
|
|
||||||
<div class="input">
|
|
||||||
<i class="fa fa-envelope" aria-hidden="true"></i>
|
|
||||||
<input type="email" placeholder="Email" class="email-input" name="new_email"
|
|
||||||
id="newEmail" />
|
|
||||||
</div>
|
|
||||||
<button id="verifikasiEmail" class="btn-otp" type="button"
|
|
||||||
disabled=true>Verifikasi</button>
|
|
||||||
</div>
|
|
||||||
<div class="input-field up">
|
<div class="input-field up">
|
||||||
<i class="fa fa-ellipsis-h" aria-hidden="true"></i>
|
<i class="fa fa-envelope" aria-hidden="true"></i>
|
||||||
<input type="text" class="telp-input-signup"
|
<input type="email" placeholder="Email" class="email-input" name="new_email" />
|
||||||
oninput="this.value = this.value.replace(/[^0-9]/g, '').substring(0, 6);"
|
|
||||||
placeholder="Kode Verifikasi Email" name="email_verification">
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="input-field up">
|
<div class="input-field up">
|
||||||
<i class="fa fa-phone" aria-hidden="true"></i>
|
<i class="fa fa-phone" aria-hidden="true"></i>
|
||||||
<input type="text" class="telp-input-signup" maxlength="13"
|
<input type="text" class="telp-input-signup" maxlength="13"
|
||||||
@ -435,7 +368,7 @@
|
|||||||
<button class="btn transparent" id="sign-up-btn">
|
<button class="btn transparent" id="sign-up-btn">
|
||||||
Sign up
|
Sign up
|
||||||
</button>
|
</button>
|
||||||
<p><a href="{{ route('login') }}">kembali</a></p>
|
<p><a href="/">kembali</a></p>
|
||||||
</div>
|
</div>
|
||||||
<img src="{{ asset('assets/img/login_register/Payment Information-pana.svg') }}" class="image"
|
<img src="{{ asset('assets/img/login_register/Payment Information-pana.svg') }}" class="image"
|
||||||
alt="" />
|
alt="" />
|
||||||
@ -456,12 +389,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<<<<<<< HEAD
|
{{-- <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> --}}
|
||||||
@include('Admin.transaction.Tracking')
|
|
||||||
@endsection
|
|
||||||
=======
|
|
||||||
|
|
||||||
|
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.1/jquery.min.js"
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.1/jquery.min.js"
|
||||||
integrity="sha512-aVKKRRi/Q/YV+4mjoKBsE4x3H+BkegoM/em46NNlCqNTmUYADjBbeNefNxYV7giUp0VxICtqdrbqU7iVaeZNXA=="
|
integrity="sha512-aVKKRRi/Q/YV+4mjoKBsE4x3H+BkegoM/em46NNlCqNTmUYADjBbeNefNxYV7giUp0VxICtqdrbqU7iVaeZNXA=="
|
||||||
crossorigin="anonymous" referrerpolicy="no-referrer"></script>
|
crossorigin="anonymous" referrerpolicy="no-referrer"></script>
|
||||||
@ -472,44 +400,9 @@
|
|||||||
<script src="//cdn.jsdelivr.net/npm/sweetalert2@11"></script>
|
<script src="//cdn.jsdelivr.net/npm/sweetalert2@11"></script>
|
||||||
<script src="{{ asset('assets/js/login_register/app.js') }}"></script>
|
<script src="{{ asset('assets/js/login_register/app.js') }}"></script>
|
||||||
<script src="{{ asset('assets/js/login_register/script.js') }}"></script>
|
<script src="{{ asset('assets/js/login_register/script.js') }}"></script>
|
||||||
@if (Session::has('message'))
|
|
||||||
<script>
|
|
||||||
Swal.fire({
|
|
||||||
icon: 'error',
|
|
||||||
title: 'Gagal',
|
|
||||||
text: "{{ Session::get('message') }}",
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
@endif
|
|
||||||
|
|
||||||
@if ($errors->any())
|
|
||||||
<script>
|
|
||||||
Swal.fire({
|
|
||||||
icon: 'error',
|
|
||||||
title: 'Kesalahan',
|
|
||||||
text: @json($errors->all()).join(' '),
|
|
||||||
});
|
|
||||||
console.log(@json($errors->all()));
|
|
||||||
</script>
|
|
||||||
@endif
|
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
$(document).ready(function() {
|
$(document).ready(function() {
|
||||||
let verificationStatus = false;
|
|
||||||
let verificationCode = '';
|
|
||||||
let waktuSekarangDetik = 0;
|
|
||||||
|
|
||||||
// Generate Kode Verifikasi
|
|
||||||
function generateVerificationCode() {
|
|
||||||
const codeLength = 6;
|
|
||||||
let code = '';
|
|
||||||
for (let i = 0; i < codeLength; i++) {
|
|
||||||
code += Math.floor(Math.random() * 10); // Menghasilkan digit acak dari 0 hingga 9
|
|
||||||
}
|
|
||||||
return code;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Login Awal
|
|
||||||
$('#cekAkun').on('click', function() {
|
$('#cekAkun').on('click', function() {
|
||||||
let email = document.querySelector('[name="email"]').value;
|
let email = document.querySelector('[name="email"]').value;
|
||||||
const csrfToken = $('meta[name="csrf-token"]').attr('content');
|
const csrfToken = $('meta[name="csrf-token"]').attr('content');
|
||||||
@ -576,114 +469,6 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
// Login Akhir
|
|
||||||
|
|
||||||
// Register Awal
|
|
||||||
$('#newEmail').on('input', function() {
|
|
||||||
const newEmail = $(this);
|
|
||||||
clearTimeout(newEmail.timer); // Menghapus timeout yang ada
|
|
||||||
const verificationButton = document.getElementById('verifikasiEmail');
|
|
||||||
verificationButton.disabled = true;
|
|
||||||
|
|
||||||
const email = newEmail.val().trim(); // Menghapus spasi di awal dan akhir
|
|
||||||
if (email != '') {
|
|
||||||
// Menunggu 5 detik sebelum menghasilkan kode verifikasi
|
|
||||||
newEmail.timer = setTimeout(function() {
|
|
||||||
if (waktuSekarangDetik == 0) {
|
|
||||||
verificationStatus = false;
|
|
||||||
verificationButton.disabled = false;
|
|
||||||
verificationButton.innerHTML = 'Verifikasi';
|
|
||||||
}
|
|
||||||
}, 1000);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
function isValidEmail(email) {
|
|
||||||
// Ekspresi reguler untuk memeriksa validitas alamat email
|
|
||||||
var emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
|
|
||||||
|
|
||||||
// Menggunakan test() untuk memeriksa apakah email sesuai dengan ekspresi reguler
|
|
||||||
return emailRegex.test(email);
|
|
||||||
}
|
|
||||||
|
|
||||||
$('#verifikasiEmail').on('click', function() {
|
|
||||||
const newEmail = $(this);
|
|
||||||
const email = document.querySelector('[name="new_email"]').value;
|
|
||||||
const csrfToken = $('meta[name="csrf-token"]').attr('content');
|
|
||||||
verificationCode = generateVerificationCode();
|
|
||||||
verificationStatus = false
|
|
||||||
|
|
||||||
if (isValidEmail(email)) {
|
|
||||||
const formData = new FormData();
|
|
||||||
formData.append('email', email);
|
|
||||||
formData.append('code', verificationCode);
|
|
||||||
|
|
||||||
// Menonaktifkan tombol verifikasi
|
|
||||||
newEmail.prop('disabled', true);
|
|
||||||
|
|
||||||
// Mengatur waktu dalam detik (misalnya, 2 menit = 120 detik)
|
|
||||||
const waktuTotalDetik = 120;
|
|
||||||
waktuSekarangDetik = waktuTotalDetik;
|
|
||||||
|
|
||||||
// Mengupdate teks tombol dengan format menit:detik
|
|
||||||
function updateButtonText() {
|
|
||||||
const menit = Math.floor(waktuSekarangDetik / 60);
|
|
||||||
const detik = waktuSekarangDetik % 60 < 10 ? '0' + (waktuSekarangDetik % 60) :
|
|
||||||
waktuSekarangDetik % 60;
|
|
||||||
newEmail.text(`${menit}:${detik}`);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Memulai timer dan mengupdate teks tombol setiap detik
|
|
||||||
const timerInterval = setInterval(function() {
|
|
||||||
if (waktuSekarangDetik > 0) {
|
|
||||||
waktuSekarangDetik--;
|
|
||||||
updateButtonText();
|
|
||||||
} else {
|
|
||||||
clearInterval(timerInterval);
|
|
||||||
newEmail.text("Verifikasi"); // Mengembalikan teks awal tombol
|
|
||||||
newEmail.prop('disabled', false); // Mengaktifkan kembali tombol
|
|
||||||
}
|
|
||||||
}, 1000); // Setiap 1 detik
|
|
||||||
|
|
||||||
$.ajaxSetup({
|
|
||||||
headers: {
|
|
||||||
'X-CSRF-TOKEN': csrfToken
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
$.ajax({
|
|
||||||
url: "{{ route('kirim.kode') }}",
|
|
||||||
type: 'POST',
|
|
||||||
data: formData,
|
|
||||||
contentType: false,
|
|
||||||
processData: false,
|
|
||||||
success: function(response) {
|
|
||||||
Swal.fire({
|
|
||||||
title: response.status ? 'Berhasil' : 'Gagal',
|
|
||||||
text: response.message,
|
|
||||||
icon: response.status ? 'success' : 'error',
|
|
||||||
});
|
|
||||||
verificationStatus = true;
|
|
||||||
},
|
|
||||||
error: function(error) {
|
|
||||||
Swal.fire({
|
|
||||||
title: 'Gagal',
|
|
||||||
text: 'Gagal karena kesalahan inputan atau jaringan',
|
|
||||||
icon: 'error',
|
|
||||||
});
|
|
||||||
console.log(error);
|
|
||||||
},
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
Swal.fire({
|
|
||||||
title: 'Kesalahan',
|
|
||||||
text: 'Inputan yang anda masukan bukan alamat email. Silahkan masukan alamat email yang benar.',
|
|
||||||
icon: 'error'
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
$('#signUp').on('click', function() {
|
$('#signUp').on('click', function() {
|
||||||
let emptyInput = [];
|
let emptyInput = [];
|
||||||
@ -694,7 +479,6 @@
|
|||||||
let email = document.querySelector('[name="new_email"]').value;
|
let email = document.querySelector('[name="new_email"]').value;
|
||||||
let nohp = document.querySelector('[name="nohp"]').value;
|
let nohp = document.querySelector('[name="nohp"]').value;
|
||||||
let gender = document.querySelector('[name="gender"]').value;
|
let gender = document.querySelector('[name="gender"]').value;
|
||||||
let emailVerification = document.querySelector('[name="email_verification"]').value;
|
|
||||||
|
|
||||||
// Tanggal lahir
|
// Tanggal lahir
|
||||||
let tanggalLahir = document.querySelector('[name="tanggal_lahir"]').value;
|
let tanggalLahir = document.querySelector('[name="tanggal_lahir"]').value;
|
||||||
@ -720,7 +504,7 @@
|
|||||||
let confirmPassword = document.querySelector('[name="confirm_password"]').value;
|
let confirmPassword = document.querySelector('[name="confirm_password"]').value;
|
||||||
|
|
||||||
// Pengecekan inputan yang kosong
|
// Pengecekan inputan yang kosong
|
||||||
if (namaDepan.trim() === "" && namaBelakang.trim() === "") {
|
if (namaDepan.trim() === "" || namaBelakang.trim() === "") {
|
||||||
emptyInput.push("Nama depan dan nama belakang tidak boleh kosong");
|
emptyInput.push("Nama depan dan nama belakang tidak boleh kosong");
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -731,15 +515,6 @@
|
|||||||
if (email.trim() === "") {
|
if (email.trim() === "") {
|
||||||
emptyInput.push("Email tidak boleh kosong");
|
emptyInput.push("Email tidak boleh kosong");
|
||||||
}
|
}
|
||||||
if (!verificationStatus) {
|
|
||||||
emptyInput.push("Verifikasi email terlebih dahulu");
|
|
||||||
}
|
|
||||||
if (emailVerification.trim() === "") {
|
|
||||||
emptyInput.push("Kode verifikasi harus diisi");
|
|
||||||
}
|
|
||||||
if (emailVerification != verificationCode) {
|
|
||||||
emptyInput.push('Kode verifikasi harus sama dengan kode yang dikirim ke email');
|
|
||||||
}
|
|
||||||
|
|
||||||
if (nohp.trim() === "") {
|
if (nohp.trim() === "") {
|
||||||
emptyInput.push("nomor HP tidak boleh kosong");
|
emptyInput.push("nomor HP tidak boleh kosong");
|
||||||
@ -768,7 +543,7 @@
|
|||||||
emptyInput.push("Silahkan ambil foto KTP anda");
|
emptyInput.push("Silahkan ambil foto KTP anda");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (newPassword.trim() === "" && confirmPassword === "") {
|
if (newPassword.trim() === "" || confirmPassword === "") {
|
||||||
emptyInput.push("Password tidak boleh kosong");
|
emptyInput.push("Password tidak boleh kosong");
|
||||||
} else if (newPassword.trim() != confirmPassword) {
|
} else if (newPassword.trim() != confirmPassword) {
|
||||||
emptyInput.push("Password baru harus sama dengan password yang dikonfirmasi");
|
emptyInput.push("Password baru harus sama dengan password yang dikonfirmasi");
|
||||||
@ -834,10 +609,8 @@
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
// Register Akhir
|
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
|
||||||
|
@ -93,23 +93,29 @@ Route::get('/next_detail_refund',function() {
|
|||||||
|
|
||||||
// --------------------------------------------------------------------------------------------
|
// --------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
//Index
|
// Route::get('/Ini', function () {
|
||||||
|
// return view('user/index',[
|
||||||
|
// 'name'=>'Jilhan Haura',
|
||||||
|
// "transaction"=>Transactions::allTransactions()
|
||||||
|
// ]);
|
||||||
|
// });
|
||||||
|
|
||||||
|
|
||||||
|
// Route::resource('/login',LoginController::class);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Login, logout dan register
|
// Login, logout dan register
|
||||||
Route::controller(LoginController::class)->group(function(){
|
Route::controller(LoginController::class)->group(function(){
|
||||||
Route::get('/login','login')->name('login');
|
Route::get('/','login')->name('login');
|
||||||
Route::get('/logout','logout')->name('logout');
|
Route::get('/logout','logout')->name('logout');
|
||||||
Route::post('/authenticate','authenticate')->name('authenticate');
|
Route::post('/','authenticate')->name('authenticate');
|
||||||
Route::post('/register','register')->name('register');
|
Route::post('/register','register')->name('register');
|
||||||
Route::get('/cek-email/{email}','statusAkun')->name('status.akun');
|
Route::get('/cek-email/{email}','statusAkun')->name('status.akun');
|
||||||
Route::get('/cari-provinsi','cariProvinsi')->name('cari.provinsi');
|
Route::get('/cari-provinsi','cariProvinsi')->name('cari.provinsi');
|
||||||
Route::get('/cari-kota/{code}','cariKota')->name('cari.kota');
|
Route::get('/cari-kota/{code}','cariKota')->name('cari.kota');
|
||||||
Route::get('/cari-kecamatan/{code}','cariKecamatan')->name('cari.kecamatan');
|
Route::get('/cari-kecamatan/{code}','cariKecamatan')->name('cari.kecamatan');
|
||||||
Route::get('/cari-kelurahan/{code}','cariKelurahan')->name('cari.kelurahan');
|
Route::get('/cari-kelurahan/{code}','cariKelurahan')->name('cari.kelurahan');
|
||||||
Route::post('/kode-verifikasi','kirimKodeVerifikasi')->name('kirim.kode');
|
|
||||||
Route::get('ocr','getOcr');
|
|
||||||
});
|
});
|
||||||
|
|
||||||
// admin dan user
|
// admin dan user
|
||||||
@ -151,19 +157,12 @@ Route::middleware(['auth'])->group(function(){
|
|||||||
Route::get('cek-contact/{email}','cekEmail')->name('user-contact.email');
|
Route::get('cek-contact/{email}','cekEmail')->name('user-contact.email');
|
||||||
Route::post('user-contact','store')->name('user-contact.store');
|
Route::post('user-contact','store')->name('user-contact.store');
|
||||||
Route::delete('user-contact/{id}','destroy')->name('user-contact.delete');
|
Route::delete('user-contact/{id}','destroy')->name('user-contact.delete');
|
||||||
Route::get('get-user-contact','getContact')->name('user-contact.get');
|
|
||||||
});
|
});
|
||||||
// Tampilan transaksi, bayar, update status pengiriman dan refund
|
// Tampilan transaksi, bayar, update status pengiriman dan refund
|
||||||
Route::controller(UserTransactionController::class)->group(function(){
|
Route::controller(UserTransactionController::class)->group(function(){
|
||||||
// Pembeli
|
|
||||||
Route::get('user-transaction-pembeli','indexPembeli')->name('user-transaction.index.pembeli');
|
Route::get('user-transaction-pembeli','indexPembeli')->name('user-transaction.index.pembeli');
|
||||||
Route::get('detail-user-transaction-pembeli/{id}','detailTransaction')->name('user-transaction.detail.pembeli');
|
|
||||||
Route::get('tambah-transaction','createTransaction')->name('tambah-transaction.pembeli');
|
|
||||||
Route::post('store-transaction','storeTransaction')->name('store-transaction.pembeli');
|
|
||||||
Route::post('payment-transaction/{id}','paymentTransaction')->name('payment-transaction.pembeli');
|
|
||||||
//Penjual
|
|
||||||
Route::get('user-transaction-penjual','indexPenjual')->name('user-transaction.index.penjual');
|
Route::get('user-transaction-penjual','indexPenjual')->name('user-transaction.index.penjual');
|
||||||
|
//bayar
|
||||||
|
|
||||||
});
|
});
|
||||||
// Tampilan refund
|
// Tampilan refund
|
||||||
|
Binary file not shown.
Before Width: | Height: | Size: 67 KiB |
Loading…
Reference in New Issue
Block a user