Compare commits
6 Commits
main
...
backend-ad
Author | SHA1 | Date | |
---|---|---|---|
16a9f17c88 | |||
48dabaef9c | |||
7e577fe9d7 | |||
1e6453b766 | |||
d1aa95341a | |||
2fe079984d |
@ -8,33 +8,75 @@ use Carbon\Carbon;
|
|||||||
use App\Models\Transactions;
|
use App\Models\Transactions;
|
||||||
use App\Models\Transaction;
|
use App\Models\Transaction;
|
||||||
use App\Models\Refund;
|
use App\Models\Refund;
|
||||||
|
use App\Models\User;
|
||||||
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;
|
$transactions = Transactions::allTransactions();
|
||||||
$sumRefund = 0;
|
$currentMonth = Carbon::now()->month;
|
||||||
$currentYear = Carbon::now()->year;
|
$currentYear = Carbon::now()->year;
|
||||||
|
|
||||||
|
$countSuccess = Transaction::where('status', 'settlement')
|
||||||
|
->whereMonth('updated_at', $currentMonth)
|
||||||
|
->whereYear('updated_at', $currentYear)
|
||||||
|
->count();
|
||||||
|
|
||||||
|
$countPending = Transaction::where('status', 'pending')
|
||||||
|
->whereMonth('updated_at', $currentMonth)
|
||||||
|
->whereYear('updated_at', $currentYear)
|
||||||
|
->count();
|
||||||
|
|
||||||
|
$countCancelled = Transaction::where('status', 'cancel')
|
||||||
|
->whereMonth('updated_at', $currentMonth)
|
||||||
|
->whereYear('updated_at', $currentYear)
|
||||||
|
->count();
|
||||||
|
|
||||||
|
$countRefund = Transaction::where('status', 'refund')
|
||||||
|
->whereMonth('updated_at', $currentMonth)
|
||||||
|
->whereYear('updated_at', $currentYear)
|
||||||
|
->count();
|
||||||
|
|
||||||
|
$totalTransaction = Transaction::whereMonth('updated_at', $currentMonth)
|
||||||
|
->whereYear('updated_at', $currentYear)
|
||||||
|
->count();
|
||||||
|
|
||||||
$dataChartTransaction = [];
|
$dataChartTransaction = [];
|
||||||
$dataChartRefund = [];
|
$dataChartRefund = [];
|
||||||
|
|
||||||
|
$totalRefund = Transaction::where('status', 'refund')->count();
|
||||||
|
$dataChartTotalRefund = [];
|
||||||
|
|
||||||
|
$totalUser = User::where('status', 'Finished')->count();
|
||||||
|
$dataChartTotalUser = [];
|
||||||
|
|
||||||
for ($bulan = 1; $bulan <= 12; $bulan++) {
|
for ($bulan = 1; $bulan <= 12; $bulan++) {
|
||||||
$transaction = Transaction::whereMonth('created_at',$bulan)->whereYear('created_at', $currentYear)->sum('total_bayar');
|
$transaction = Transaction::whereMonth('updated_at', $bulan)
|
||||||
// $transaction = Transaction::where('status','finished')->whereMonth('created_at',$bulan)->whereYear('created_at', $currentYear)->sum('total_bayar');
|
->whereYear('updated_at', $currentYear)
|
||||||
// $refund = Refund::whereMonth('created_at',$bulan)->whereYear('created_at', $currentYear)->sum('total');
|
->where('status', 'settlement')
|
||||||
// $refund = Refund::where('status','Partial Refund')->whereMonth('created_at',$bulan)->whereYear('created_at', $currentYear)->sum('total');
|
->sum('total_bayar');
|
||||||
|
|
||||||
|
$refund = Transaction::whereMonth('updated_at', $bulan)
|
||||||
|
->whereYear('updated_at', $currentYear)
|
||||||
|
->where('status', 'partial refund')
|
||||||
|
->sum('total_harga');
|
||||||
|
|
||||||
$dataChartTransaction[] = intval($transaction);
|
$dataChartTransaction[] = intval($transaction);
|
||||||
// $dataChartRefund[] = intval($refund);
|
$dataChartRefund[] = intval($refund);
|
||||||
}
|
|
||||||
return view('admin.index',[
|
|
||||||
"transaction"=>Transactions::allTransactions(),
|
|
||||||
"dataChartTransaction" => $dataChartTransaction,
|
|
||||||
// "dataChartRefund" => $dataChartRefund
|
|
||||||
]);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function profile(){
|
return view('admin.index', compact('transactions', 'countSuccess', 'countPending', 'countCancelled', 'countRefund', 'totalRefund', 'totalUser', 'totalTransaction', 'dataChartTransaction', 'dataChartRefund', 'dataChartTotalUser', 'dataChartTotalRefund'));
|
||||||
return view('admin.profile.index');
|
}
|
||||||
|
|
||||||
|
public function getChartByMonth()
|
||||||
|
{
|
||||||
|
$dataChartLaporan = [];
|
||||||
|
$tahun = Carbon::now()->year;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getCharByYear()
|
||||||
|
{
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -5,6 +5,7 @@ namespace App\Http\Controllers\Admin;
|
|||||||
use App\Models\Refund;
|
use App\Models\Refund;
|
||||||
use App\Models\Refunds;
|
use App\Models\Refunds;
|
||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
|
use App\Models\RefundDescription;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
|
|
||||||
class AdminRefundController extends Controller
|
class AdminRefundController extends Controller
|
||||||
@ -14,60 +15,33 @@ class AdminRefundController extends Controller
|
|||||||
*/
|
*/
|
||||||
public function index()
|
public function index()
|
||||||
{
|
{
|
||||||
// $refundData = Refund::all();
|
|
||||||
// return view('Admin.refund.history-refund', ['history_refund' => $refundData]);
|
|
||||||
return view('admin.refund.index',[
|
return view('admin.refund.index',[
|
||||||
"refunds" => Refunds::HistoryRefund()
|
"refunds" => Refund::latest()->get()
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Show the form for creating a new resource.
|
|
||||||
*/
|
|
||||||
public function create()
|
|
||||||
{
|
|
||||||
//
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Store a newly created resource in storage.
|
|
||||||
*/
|
|
||||||
public function store(Request $request)
|
|
||||||
{
|
|
||||||
//
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Display the specified resource.
|
* Display the specified resource.
|
||||||
*/
|
*/
|
||||||
public function show(Refund $refund)
|
public function show($id)
|
||||||
{
|
{
|
||||||
|
$refund = Refund::find($id);
|
||||||
|
$refundDescription = RefundDescription::where('refund_id',$id)->get();
|
||||||
return view('admin.refund.detail-refund',[
|
return view('admin.refund.detail-refund',[
|
||||||
"detail_refund"=> Refunds::DetailRefund()
|
"refund"=> $refund,
|
||||||
|
'descriptions' => $refundDescription
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
public function aprroveRefund($id){
|
||||||
* Show the form for editing the specified resource.
|
$query = Refund::where('id',$id)->update([
|
||||||
*/
|
|
||||||
public function edit(Refund $refund)
|
]);
|
||||||
{
|
|
||||||
//
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
public function denyRefund($id){
|
||||||
* Update the specified resource in storage.
|
$query = Refund::where('id',$id)->update([
|
||||||
*/
|
|
||||||
public function update(Request $request, Refund $refund)
|
|
||||||
{
|
|
||||||
//
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
]);
|
||||||
* Remove the specified resource from storage.
|
|
||||||
*/
|
|
||||||
public function destroy(Refund $refund)
|
|
||||||
{
|
|
||||||
//
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -5,6 +5,9 @@ namespace App\Http\Controllers\Admin;
|
|||||||
use App\Models\Setting;
|
use App\Models\Setting;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
|
use Illuminate\Support\Facades\DB;
|
||||||
|
use Illuminate\Support\Facades\Log;
|
||||||
|
use Throwable;
|
||||||
|
|
||||||
class AdminSettingController extends Controller
|
class AdminSettingController extends Controller
|
||||||
{
|
{
|
||||||
@ -24,40 +27,34 @@ class AdminSettingController extends Controller
|
|||||||
*/
|
*/
|
||||||
public function store(Request $request)
|
public function store(Request $request)
|
||||||
{
|
{
|
||||||
// dd($request->persentase);
|
try{
|
||||||
[$tahun, $bulan] = explode('-', $request->bulan_tahun);
|
DB::beginTransaction();
|
||||||
Setting::create([
|
|
||||||
'bulan' => $bulan,
|
Setting::updateOrCreate(
|
||||||
'tahun' => $tahun,
|
['bulan' => $request->bulan, 'tahun' => $request->tahun],
|
||||||
'persentase' => $request->persentase,
|
['persentase' => $request->persentase]
|
||||||
'status' => 'Active',
|
);
|
||||||
]);
|
|
||||||
return redirect()->route('admin-setting.index');
|
DB::commit();
|
||||||
|
|
||||||
|
return response()->json(['status' => true, 'message' => 'Berhasil menambah']);
|
||||||
|
|
||||||
|
}catch(Throwable $e){
|
||||||
|
DB::rollBack();
|
||||||
|
|
||||||
|
Log::error($e->getMessage());
|
||||||
|
|
||||||
|
return response()->json(['status' => false, 'message' => 'Terjadi Kesalahan pada sisi server', 'data' => $request]);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Display the specified resource.
|
|
||||||
*/
|
|
||||||
public function show(Setting $setting)
|
|
||||||
{
|
|
||||||
//
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Show the form for editing the specified resource.
|
|
||||||
*/
|
|
||||||
public function edit(Setting $setting)
|
|
||||||
{
|
|
||||||
//
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Update the specified resource in storage.
|
* Update the specified resource in storage.
|
||||||
*/
|
*/
|
||||||
public function update(Request $request, $id)
|
public function activeSetting(Request $request)
|
||||||
{
|
{
|
||||||
// dd($setting['status'] );
|
$setting = Setting::findOrFail($request->id);
|
||||||
$setting = Setting::findOrFail($id);
|
|
||||||
if ($setting->status == 'Active') {
|
if ($setting->status == 'Active') {
|
||||||
$setting->status = 'Nonactive';
|
$setting->status = 'Nonactive';
|
||||||
$result = $setting->save();
|
$result = $setting->save();
|
||||||
@ -87,15 +84,5 @@ class AdminSettingController extends Controller
|
|||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// return response()->json($id);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Remove the specified resource from storage.
|
|
||||||
*/
|
|
||||||
public function destroy(Setting $setting)
|
|
||||||
{
|
|
||||||
//
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -3,8 +3,8 @@
|
|||||||
namespace App\Http\Controllers\Admin;
|
namespace App\Http\Controllers\Admin;
|
||||||
|
|
||||||
use App\Models\Transaction;
|
use App\Models\Transaction;
|
||||||
use App\Models\Transactions;
|
|
||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
|
use App\Models\TransactionDescription;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
|
|
||||||
class AdminTransactionController extends Controller
|
class AdminTransactionController extends Controller
|
||||||
@ -15,57 +15,21 @@ class AdminTransactionController extends Controller
|
|||||||
public function index()
|
public function index()
|
||||||
{
|
{
|
||||||
return view('admin.transaction.index', [
|
return view('admin.transaction.index', [
|
||||||
'transactions' => Transaction::all(),
|
'transactions' => Transaction::latest()
|
||||||
|
->get(),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Show the form for creating a new resource.
|
|
||||||
*/
|
|
||||||
public function create()
|
|
||||||
{
|
|
||||||
//
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Store a newly created resource in storage.
|
|
||||||
*/
|
|
||||||
public function store(Request $request)
|
|
||||||
{
|
|
||||||
//
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Display the specified resource.
|
* Display the specified resource.
|
||||||
*/
|
*/
|
||||||
public function show(transaction $transaction)
|
public function show($id)
|
||||||
{
|
{
|
||||||
return view('admin.transaction.detail-transaction', [
|
return view('admin.transaction.detail-transaction', [
|
||||||
'detail_transaction' => Transactions::allDetailTransactions()
|
'transaction' => Transaction::findOrFail($id),
|
||||||
|
'trackings' => TransactionDescription::where('transaction_id', $id)
|
||||||
|
->latest()
|
||||||
|
->get(),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Show the form for editing the specified resource.
|
|
||||||
*/
|
|
||||||
public function edit(transaction $transaction)
|
|
||||||
{
|
|
||||||
//
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Update the specified resource in storage.
|
|
||||||
*/
|
|
||||||
public function update(Request $request, transaction $transaction)
|
|
||||||
{
|
|
||||||
//
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Remove the specified resource from storage.
|
|
||||||
*/
|
|
||||||
public function destroy(transaction $transaction)
|
|
||||||
{
|
|
||||||
//
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -13,10 +13,6 @@ class AdminUserController extends Controller
|
|||||||
*/
|
*/
|
||||||
public function index()
|
public function index()
|
||||||
{
|
{
|
||||||
// $users = User::where('role', 'User')
|
|
||||||
// ->orderByRaw("FIELD(status, 'Progress', 'Finished', 'Rejected') ASC")
|
|
||||||
// ->latest()
|
|
||||||
// ->get();
|
|
||||||
$users = User::where('role', 'User')
|
$users = User::where('role', 'User')
|
||||||
->orderByRaw("CASE WHEN status = 'Progress' THEN 1 WHEN status = 'Finished' THEN 2 WHEN status = 'Rejected' THEN 3 ELSE 4 END ASC")
|
->orderByRaw("CASE WHEN status = 'Progress' THEN 1 WHEN status = 'Finished' THEN 2 WHEN status = 'Rejected' THEN 3 ELSE 4 END ASC")
|
||||||
->latest()
|
->latest()
|
||||||
@ -24,22 +20,6 @@ class AdminUserController extends Controller
|
|||||||
return view('admin.users.index', ['users' => $users]);
|
return view('admin.users.index', ['users' => $users]);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Show the form for creating a new resource.
|
|
||||||
*/
|
|
||||||
public function create()
|
|
||||||
{
|
|
||||||
//
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Store a newly created resource in storage.
|
|
||||||
*/
|
|
||||||
public function store(Request $request)
|
|
||||||
{
|
|
||||||
//
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Display the specified resource.
|
* Display the specified resource.
|
||||||
*/
|
*/
|
||||||
@ -49,25 +29,6 @@ class AdminUserController extends Controller
|
|||||||
return view('admin.users.detail-user', ['user' => $user]);
|
return view('admin.users.detail-user', ['user' => $user]);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Show the form for editing the specified resource.
|
|
||||||
*/
|
|
||||||
public function edit(User $user)
|
|
||||||
{
|
|
||||||
//
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Update the specified resource in storage.
|
|
||||||
*/
|
|
||||||
public function update(Request $request, $id)
|
|
||||||
{
|
|
||||||
return response()->json([
|
|
||||||
'user' => $request,
|
|
||||||
'id' => $id,
|
|
||||||
]);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Remove the specified resource from storage.
|
* Remove the specified resource from storage.
|
||||||
*/
|
*/
|
||||||
|
@ -22,16 +22,6 @@ use Ramsey\Uuid\Uuid;
|
|||||||
|
|
||||||
class LoginController extends Controller
|
class LoginController extends Controller
|
||||||
{
|
{
|
||||||
// /**
|
|
||||||
// * Create a new AuthController instance.
|
|
||||||
// *
|
|
||||||
// * @return void
|
|
||||||
// */
|
|
||||||
// public function __construct()
|
|
||||||
// {
|
|
||||||
// $this->middleware('auth:api', ['except' => ['login', 'authenticate', 'register', 'hai']]);
|
|
||||||
// }
|
|
||||||
|
|
||||||
public function login()
|
public function login()
|
||||||
{
|
{
|
||||||
return view('index');
|
return view('index');
|
||||||
@ -44,7 +34,6 @@ class LoginController extends Controller
|
|||||||
*/
|
*/
|
||||||
public function authenticate(Request $request)
|
public function authenticate(Request $request)
|
||||||
{
|
{
|
||||||
// dd($request);
|
|
||||||
$credentials = $request->validate(
|
$credentials = $request->validate(
|
||||||
[
|
[
|
||||||
'email' => ['required', 'email'],
|
'email' => ['required', 'email'],
|
||||||
@ -62,7 +51,6 @@ class LoginController extends Controller
|
|||||||
if (Auth::user()->status == 'Finished') {
|
if (Auth::user()->status == 'Finished') {
|
||||||
$request->session()->regenerate();
|
$request->session()->regenerate();
|
||||||
if (ucwords(Auth::user()->role) == 'Admin') {
|
if (ucwords(Auth::user()->role) == 'Admin') {
|
||||||
// return redirect()->route('admin.index');
|
|
||||||
return redirect()->intended('admin');
|
return redirect()->intended('admin');
|
||||||
} else {
|
} else {
|
||||||
return redirect()->intended('user');
|
return redirect()->intended('user');
|
||||||
@ -74,17 +62,13 @@ class LoginController extends Controller
|
|||||||
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();
|
||||||
}
|
}
|
||||||
}
|
}else{
|
||||||
|
|
||||||
// $error = $credentials->errors();
|
|
||||||
// ->withInput($request->except('key'))
|
|
||||||
// ->withErrors($validator)
|
|
||||||
|
|
||||||
return redirect()
|
return redirect()
|
||||||
->back()
|
->back()
|
||||||
->withErrors($credentials)
|
->withErrors($credentials)
|
||||||
->onlyInput('email');
|
->onlyInput('email');
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Log the user out (Invalidate the token).
|
* Log the user out (Invalidate the token).
|
||||||
@ -114,7 +98,7 @@ class LoginController extends Controller
|
|||||||
$alamat = $request->get('alamat');
|
$alamat = $request->get('alamat');
|
||||||
$foto_ktp = '';
|
$foto_ktp = '';
|
||||||
$foto_wajah = '';
|
$foto_wajah = '';
|
||||||
$persentase_kemiripan = '0%';
|
$persentase_kemiripan = 0;
|
||||||
$gender = $request->get('gender');
|
$gender = $request->get('gender');
|
||||||
$kode_kelurahan = $request->get('kode-kelurahan');
|
$kode_kelurahan = $request->get('kode-kelurahan');
|
||||||
|
|
||||||
@ -201,7 +185,7 @@ class LoginController extends Controller
|
|||||||
'alamat' => $alamat,
|
'alamat' => $alamat,
|
||||||
'foto_ktp' => $foto_ktp,
|
'foto_ktp' => $foto_ktp,
|
||||||
'foto_wajah' => $foto_wajah,
|
'foto_wajah' => $foto_wajah,
|
||||||
'foto_profil' => null,
|
'foto_profile' => null,
|
||||||
'persentase_kemiripan' => $persentase_kemiripan,
|
'persentase_kemiripan' => $persentase_kemiripan,
|
||||||
'gender' => $gender,
|
'gender' => $gender,
|
||||||
'kode_kelurahan' => $kode_kelurahan,
|
'kode_kelurahan' => $kode_kelurahan,
|
||||||
@ -221,7 +205,7 @@ class LoginController extends Controller
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public function statusAkun($email)
|
public function accountStatus($email)
|
||||||
{
|
{
|
||||||
$result = User::where('email', $email)->get();
|
$result = User::where('email', $email)->get();
|
||||||
if ($result->isNotEmpty()) {
|
if ($result->isNotEmpty()) {
|
||||||
@ -237,14 +221,14 @@ class LoginController extends Controller
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public function cariProvinsi()
|
public function searchProvince()
|
||||||
{
|
{
|
||||||
$data = Province::where('name', 'LIKE', '%' . strtoupper(request('q')) . '%')->paginate(10);
|
$data = Province::where('name', 'LIKE', '%' . strtoupper(request('q')) . '%')->paginate(10);
|
||||||
|
|
||||||
return response()->json($data);
|
return response()->json($data);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function cariKota($code)
|
public function searchCity($code)
|
||||||
{
|
{
|
||||||
$data = City::where('province_code', $code)
|
$data = City::where('province_code', $code)
|
||||||
->where('name', 'LIKE', '%' . strtoupper(request('q')) . '%')
|
->where('name', 'LIKE', '%' . strtoupper(request('q')) . '%')
|
||||||
@ -253,7 +237,7 @@ class LoginController extends Controller
|
|||||||
return response()->json($data);
|
return response()->json($data);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function cariKecamatan($code)
|
public function searchDistrict($code)
|
||||||
{
|
{
|
||||||
$data = District::where('city_code', $code)
|
$data = District::where('city_code', $code)
|
||||||
->where('name', 'LIKE', '%' . strtoupper(request('q')) . '%')
|
->where('name', 'LIKE', '%' . strtoupper(request('q')) . '%')
|
||||||
@ -262,7 +246,7 @@ class LoginController extends Controller
|
|||||||
return response()->json($data);
|
return response()->json($data);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function cariKelurahan($code)
|
public function searchVillage($code)
|
||||||
{
|
{
|
||||||
$data = Village::where('district_code', $code)
|
$data = Village::where('district_code', $code)
|
||||||
->where('name', 'LIKE', '%' . strtoupper(request('q')) . '%')
|
->where('name', 'LIKE', '%' . strtoupper(request('q')) . '%')
|
||||||
@ -271,7 +255,7 @@ class LoginController extends Controller
|
|||||||
return response()->json($data);
|
return response()->json($data);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function kirimKodeVerifikasi(Request $request)
|
public function sendVerificationCode(Request $request)
|
||||||
{
|
{
|
||||||
$email = $request->get('email');
|
$email = $request->get('email');
|
||||||
$code = $request->get('code');
|
$code = $request->get('code');
|
||||||
|
105
app/Http/Controllers/Profile/ProfileController.php
Normal file
@ -0,0 +1,105 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Http\Controllers\Profile;
|
||||||
|
|
||||||
|
use App\Http\Controllers\Controller;
|
||||||
|
use Illuminate\Http\Request;
|
||||||
|
use Illuminate\Support\Facades\Auth;
|
||||||
|
use Illuminate\Support\Facades\DB;
|
||||||
|
use Illuminate\Support\Facades\Log;
|
||||||
|
use Throwable;
|
||||||
|
use App\Models\User;
|
||||||
|
use Illuminate\Support\Facades\Hash;
|
||||||
|
use Illuminate\Support\Facades\Storage;
|
||||||
|
use Laravolt\Indonesia\Models\City;
|
||||||
|
use Laravolt\Indonesia\Models\District;
|
||||||
|
use Laravolt\Indonesia\Models\Provinsi;
|
||||||
|
use Laravolt\Indonesia\Models\Village;
|
||||||
|
|
||||||
|
class ProfileController extends Controller
|
||||||
|
{
|
||||||
|
public function index()
|
||||||
|
{
|
||||||
|
$provinces = Provinsi::all();
|
||||||
|
$cities = City::where('province_code', auth()->user()->village->district->city->province->code)->get();
|
||||||
|
$districts = District::where('city_code', auth()->user()->village->district->city->code)->get();
|
||||||
|
$villages = Village::where('district_code', auth()->user()->village->district->code)->get();
|
||||||
|
return view('profile.index', compact('provinces', 'cities', 'districts', 'villages'));
|
||||||
|
}
|
||||||
|
|
||||||
|
public function updateProfile(Request $request)
|
||||||
|
{
|
||||||
|
$nama_depan = str_replace(' ', '_', $request->nama_depan);
|
||||||
|
$nama_belakang = str_replace(' ', '_', $request->nama_belakang);
|
||||||
|
$nohp = $request->nohp;
|
||||||
|
$kode_kelurahan = $request->kelurahan;
|
||||||
|
$alamat = $request->alamat;
|
||||||
|
$nama_bank = $request->nama_bank;
|
||||||
|
$no_rek = $request->no_rek;
|
||||||
|
$foto_profile = '';
|
||||||
|
if ($request->hasFile('foto')) {
|
||||||
|
$file = $request->file('foto');
|
||||||
|
$foto_profile = 'Foto_Profil_' . $nama_depan . '_' . $nama_belakang .'.'. $file->getClientOriginalExtension();
|
||||||
|
$path = 'foto-profile/' . $foto_profile;
|
||||||
|
|
||||||
|
Storage::disk('public')->put($path, file_get_contents($file));
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
DB::beginTransaction();
|
||||||
|
|
||||||
|
User::where('id', Auth::user()->id)->update([
|
||||||
|
'nama_depan' => $nama_depan,
|
||||||
|
'nama_belakang' => $nama_belakang,
|
||||||
|
'nohp' => $nohp,
|
||||||
|
'kode_kelurahan' => $kode_kelurahan,
|
||||||
|
'alamat' => $alamat,
|
||||||
|
'nama_bank' => $nama_bank,
|
||||||
|
'no_rek' => $no_rek,
|
||||||
|
'foto_profile' => $foto_profile,
|
||||||
|
]);
|
||||||
|
|
||||||
|
DB::commit();
|
||||||
|
|
||||||
|
return response()->json(['status' => true, 'message' => 'Data Profile berhasil diupdate']);
|
||||||
|
} catch (Throwable $e) {
|
||||||
|
DB::rollBack();
|
||||||
|
|
||||||
|
Log::error($e->getMessage());
|
||||||
|
|
||||||
|
return response()->json(['status' => false, 'message' => 'Terjadi Kesalahan pada sisi server']);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public function changePassword(Request $request){
|
||||||
|
$currentPassword = $request->currentPassword;
|
||||||
|
$newPassword = $request->newPassword;
|
||||||
|
$renewPassword = $request->renewPassword;
|
||||||
|
|
||||||
|
if(!Hash::check($currentPassword, auth()->user()->password)){
|
||||||
|
return response()->json(['status' => false, 'message' => 'Password sekarang tidak sama','password' => $currentPassword]);
|
||||||
|
}
|
||||||
|
|
||||||
|
if($renewPassword != $newPassword){
|
||||||
|
return response()->json(['status' => false, 'message' => 'Ketikan ulang password baru']);
|
||||||
|
}
|
||||||
|
|
||||||
|
try{
|
||||||
|
DB::beginTransaction();
|
||||||
|
|
||||||
|
User::where('id', auth()->user()->id)->update([
|
||||||
|
'password' => Hash::make($newPassword)
|
||||||
|
]);
|
||||||
|
|
||||||
|
DB::commit();
|
||||||
|
|
||||||
|
return response()->json(['status' => true, 'message' => 'Password Berhasil diubah']);
|
||||||
|
}catch(Throwable $e){
|
||||||
|
DB::rollBack();
|
||||||
|
|
||||||
|
Log::error($e->getMessage());
|
||||||
|
|
||||||
|
return response()->json(['status' => false, 'message' => 'Terjadi Kesalahan pada sisi server']);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -18,7 +18,6 @@ class UserContactController extends Controller
|
|||||||
{
|
{
|
||||||
$contacts = Contact::where('pemilik_kontak', Auth::user()->email)->get();
|
$contacts = Contact::where('pemilik_kontak', Auth::user()->email)->get();
|
||||||
return view('user.contact.index', ['contacts' => $contacts]);
|
return view('user.contact.index', ['contacts' => $contacts]);
|
||||||
// dd($contacts);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getContact()
|
public function getContact()
|
||||||
@ -31,14 +30,6 @@ class UserContactController extends Controller
|
|||||||
return response()->json($data);
|
return response()->json($data);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Show the form for creating a new resource.
|
|
||||||
*/
|
|
||||||
public function create()
|
|
||||||
{
|
|
||||||
//
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Store a newly created resource in storage.
|
* Store a newly created resource in storage.
|
||||||
*/
|
*/
|
||||||
@ -70,33 +61,10 @@ class UserContactController extends Controller
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Display the specified resource.
|
|
||||||
*/
|
|
||||||
public function show(Contact $contact)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Show the form for editing the specified resource.
|
|
||||||
*/
|
|
||||||
public function edit(Contact $contact)
|
|
||||||
{
|
|
||||||
//
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Update the specified resource in storage.
|
|
||||||
*/
|
|
||||||
public function update(Request $request, Contact $contact)
|
|
||||||
{
|
|
||||||
//
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Remove the specified resource from storage.
|
* Remove the specified resource from storage.
|
||||||
*/
|
*/
|
||||||
public function destroy(Contact $contact, $id)
|
public function destroy($id)
|
||||||
{
|
{
|
||||||
try {
|
try {
|
||||||
$result = Contact::destroy($id);
|
$result = Contact::destroy($id);
|
||||||
@ -121,7 +89,7 @@ class UserContactController extends Controller
|
|||||||
|
|
||||||
public function cekEmail($email)
|
public function cekEmail($email)
|
||||||
{
|
{
|
||||||
$result = User::where('email', $email)->get();
|
$result = User::where('email', $email)->first();
|
||||||
if ($result->isNotEmpty() && $result[0]->role == 'User' && $result[0]->status != 'Rejected') {
|
if ($result->isNotEmpty() && $result[0]->role == 'User' && $result[0]->status != 'Rejected') {
|
||||||
if ($result[0]->status == 'Finished') {
|
if ($result[0]->status == 'Finished') {
|
||||||
return response()->json([
|
return response()->json([
|
||||||
|
@ -5,16 +5,16 @@ namespace App\Http\Controllers\User;
|
|||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
use App\Models\RefundUser;
|
use App\Models\RefundUser;
|
||||||
|
use Illuminate\Support\Facades\Auth;
|
||||||
|
use Illuminate\Support\Facades\DB;
|
||||||
|
use Illuminate\Support\Facades\Log;
|
||||||
|
use Throwable;
|
||||||
|
|
||||||
class UserDashboardController extends Controller
|
class UserDashboardController extends Controller
|
||||||
{
|
{
|
||||||
public function index(){
|
public function index(){
|
||||||
return view('user.index',[
|
return view('user.index',[
|
||||||
"refundUserss"=>RefundUser::HistoryRefundUser()
|
"refundUserss"=>RefundUser::HistoryRefundUser(),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function profile(){
|
|
||||||
return view('user.profile.index');
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -5,26 +5,85 @@ namespace App\Http\Controllers\User;
|
|||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
use App\Models\RefundUser;
|
use App\Models\RefundUser;
|
||||||
|
use App\Models\Refund;
|
||||||
|
use App\Models\RefundDescription;
|
||||||
|
use App\Models\Transaction;
|
||||||
|
use Illuminate\Support\Facades\DB;
|
||||||
|
use Illuminate\Support\Facades\Log;
|
||||||
|
use Throwable;
|
||||||
|
|
||||||
class UserRefundController extends Controller
|
class UserRefundController extends Controller
|
||||||
{
|
{
|
||||||
public function index()
|
public function index()
|
||||||
{
|
{
|
||||||
return view('user.refund.index', [
|
return view('user.refund.index', [
|
||||||
'name' => 'npannisa',
|
'refunds' => Refund::join('transactions', 'refunds.transaction_id', '=', 'transactions.id')
|
||||||
'refundUserss' => RefundUser::HistoryRefundUser(),
|
->where('transactions.pembeli', auth()->user()->email)
|
||||||
|
->select()
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function createRefund(Request $request)
|
public function create($id)
|
||||||
{
|
{
|
||||||
return view('user.refund.new-refund');
|
return view('user.refund.new-refund',['id' => $id]);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function historyRefund($id){
|
public function store(Request $request, $id){
|
||||||
return view('user.transaction.pembeli.history-refund',[
|
try{
|
||||||
'name'=>'npannisa',
|
DB::beginTransaction();
|
||||||
"refundUserss"=>RefundUser::HistoryRefundUser()
|
|
||||||
|
$transaction = Transaction::where('id',$id)->first();
|
||||||
|
|
||||||
|
$refund = Refund::create([
|
||||||
|
'transaction_id' => $id,
|
||||||
|
'total' => $transaction->harga,
|
||||||
|
'due_date' => $transaction,
|
||||||
|
'complain' => $request->complain
|
||||||
|
]);
|
||||||
|
|
||||||
|
if ($request->hasFile('files')) {
|
||||||
|
$files = $request->file('files');
|
||||||
|
foreach ($files as $file) {
|
||||||
|
$filename = $file->getClientOriginalName();
|
||||||
|
$mime = $file->getClientMimeType();
|
||||||
|
if (strpos($mime, 'image') !== false) {
|
||||||
|
$type = 'image';
|
||||||
|
$file->storeAs('public/refund-image/', $filename);
|
||||||
|
} elseif (strpos($mime, 'video') !== false) {
|
||||||
|
$type = 'video';
|
||||||
|
$file->storeAs('public/refund-video/', $filename);
|
||||||
|
} else {
|
||||||
|
$type = 'Other';
|
||||||
|
}
|
||||||
|
|
||||||
|
RefundDescription::create([
|
||||||
|
'refund_id' => $refund->id,
|
||||||
|
'filename' => $filename,
|
||||||
|
'type' => $type
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
DB::commit();
|
||||||
|
}catch(Throwable $e){
|
||||||
|
DB::rollback();
|
||||||
|
|
||||||
|
Log::error($e->getMessage());
|
||||||
|
|
||||||
|
return response()->json(['success' => false, 'message' => 'Terjadi Kesalahan pada sisi server']);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public function show($id){
|
||||||
|
$refund = Refund::find($id);
|
||||||
|
$refundDescription = RefundDescription::where($id)->get();
|
||||||
|
return view('admin.refund.detail-refund',[
|
||||||
|
"refund"=> $refund,
|
||||||
|
'descriptions' => $refundDescription
|
||||||
|
]);
|
||||||
|
return view('user.refund.history-refund',[
|
||||||
|
'refund' => $refund,
|
||||||
|
'descriptions' => $refundDescription
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -5,6 +5,9 @@ namespace App\Http\Controllers\User;
|
|||||||
use App\Models\Transaction;
|
use App\Models\Transaction;
|
||||||
use App\Models\TransactionDescription;
|
use App\Models\TransactionDescription;
|
||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
|
use App\Models\Contact;
|
||||||
|
use App\Models\Refund;
|
||||||
|
use App\Models\RefundDescription;
|
||||||
use App\Models\Setting;
|
use App\Models\Setting;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
use App\Models\TransactionUser;
|
use App\Models\TransactionUser;
|
||||||
@ -12,10 +15,14 @@ use App\Models\User;
|
|||||||
use Carbon\Carbon;
|
use Carbon\Carbon;
|
||||||
use Illuminate\Support\Facades\Http;
|
use Illuminate\Support\Facades\Http;
|
||||||
use Illuminate\Support\Facades\Auth;
|
use Illuminate\Support\Facades\Auth;
|
||||||
|
use Illuminate\Support\Facades\DB;
|
||||||
|
use Illuminate\Support\Facades\Log;
|
||||||
use Ramsey\Uuid\Uuid;
|
use Ramsey\Uuid\Uuid;
|
||||||
use Midtrans\Config;
|
use Midtrans\Config;
|
||||||
use Midtrans\Snap;
|
use Midtrans\Snap;
|
||||||
use Midtrans\Transaction as Trans;
|
use Midtrans\Transaction as Trans;
|
||||||
|
use Stichoza\GoogleTranslate\GoogleTranslate;
|
||||||
|
use Throwable;
|
||||||
|
|
||||||
class UserTransactionController extends Controller
|
class UserTransactionController extends Controller
|
||||||
{
|
{
|
||||||
@ -23,6 +30,16 @@ class UserTransactionController extends Controller
|
|||||||
* Display a listing of the resource.
|
* Display a listing of the resource.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
public function __construct()
|
||||||
|
{
|
||||||
|
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;
|
||||||
|
}
|
||||||
|
|
||||||
public function indexPembeli()
|
public function indexPembeli()
|
||||||
{
|
{
|
||||||
return view('user.transaction.pembeli.index', [
|
return view('user.transaction.pembeli.index', [
|
||||||
@ -30,7 +47,6 @@ class UserTransactionController extends Controller
|
|||||||
->latest()
|
->latest()
|
||||||
->get(),
|
->get(),
|
||||||
]);
|
]);
|
||||||
// dd(Transaction::where('pembeli',Auth::user()->email)->get());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -39,26 +55,42 @@ class UserTransactionController extends Controller
|
|||||||
public function indexPenjual()
|
public function indexPenjual()
|
||||||
{
|
{
|
||||||
return view('user.transaction.penjual.index', [
|
return view('user.transaction.penjual.index', [
|
||||||
'transactions' => Transaction::where('penjual', Auth::user()->email)->get(),
|
'transactions' => Transaction::where('penjual', Auth::user()->email)
|
||||||
|
->latest()
|
||||||
|
->get(),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function detailTransaction($id)
|
public function show($id)
|
||||||
{
|
{
|
||||||
return view('user.transaction.pembeli.detail-transaction', [
|
return view('user.transaction.pembeli.detail-transaction', [
|
||||||
'transaction' => Transaction::findOrFail($id),
|
'transaction' => Transaction::findOrFail($id),
|
||||||
'trackings' => TransactionDescription::where('order_id', $id)->get(),
|
'trackings' => TransactionDescription::where('transaction_id', $id)
|
||||||
|
->latest()
|
||||||
|
->get(),
|
||||||
]);
|
]);
|
||||||
|
|
||||||
// dd(Transaction::findOrFail($id));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Show the form for creating a new resource.
|
* Show the form for creating a new resource.
|
||||||
*/
|
*/
|
||||||
public function createTransaction(Request $request)
|
public function create()
|
||||||
{
|
{
|
||||||
return view('user.transaction.pembeli.new-transaction');
|
$now = Carbon::now();
|
||||||
|
$bulan = $now->format('F');
|
||||||
|
$tahun = $now->year;
|
||||||
|
$persentase_keuntungan = Setting::where('status', 'Active')
|
||||||
|
->where('bulan', '=', $bulan)
|
||||||
|
->where('tahun', '=', $tahun)
|
||||||
|
->value('persentase');
|
||||||
|
if (is_null($persentase_keuntungan)) {
|
||||||
|
$persentase_keuntungan = Setting::where('status', 'Active')
|
||||||
|
->latest()
|
||||||
|
->value('persentase');
|
||||||
|
}
|
||||||
|
return view('user.transaction.pembeli.new-transaction', [
|
||||||
|
'persentase_keuntungan' => $persentase_keuntungan,
|
||||||
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -67,12 +99,11 @@ 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',
|
|
||||||
'TransactionUser' => TransactionUser::HistoryTransaction(),
|
'TransactionUser' => TransactionUser::HistoryTransaction(),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function storeTransaction(Request $request)
|
public function store(Request $request)
|
||||||
{
|
{
|
||||||
$pembeli = Auth::user()->email;
|
$pembeli = Auth::user()->email;
|
||||||
$penjual = $request->get('email_penjual');
|
$penjual = $request->get('email_penjual');
|
||||||
@ -89,13 +120,8 @@ class UserTransactionController extends Controller
|
|||||||
$alamat = ucwords(strtolower(Auth::user()->alamat));
|
$alamat = ucwords(strtolower(Auth::user()->alamat));
|
||||||
$id = Uuid::uuid4();
|
$id = Uuid::uuid4();
|
||||||
|
|
||||||
$now = Carbon::now()->tz('Asia/Jakarta');
|
$now = Carbon::now();
|
||||||
$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');
|
$persentase_keuntungan = $request->get('persentase_keuntungan');
|
||||||
|
|
||||||
$total_harga = $request->get('total_harga');
|
$total_harga = $request->get('total_harga');
|
||||||
@ -104,7 +130,7 @@ class UserTransactionController extends Controller
|
|||||||
|
|
||||||
$batas_pembayaran = $now->addDays(1)->toDateTimeString();
|
$batas_pembayaran = $now->addDays(1)->toDateTimeString();
|
||||||
$batas_pengiriman_barang_awal = $now->addDays(2)->toDateTimeString();
|
$batas_pengiriman_barang_awal = $now->addDays(2)->toDateTimeString();
|
||||||
$batas_pengiriman_barang_akhir = $now->addDays(5)->toDateTimeString();
|
$batas_pengiriman_barang_akhir = $now->addDays(4)->toDateTimeString();
|
||||||
|
|
||||||
$params = [
|
$params = [
|
||||||
'transaction_details' => [
|
'transaction_details' => [
|
||||||
@ -135,33 +161,32 @@ class UserTransactionController extends Controller
|
|||||||
'last_name' => $nama_belakang_pembeli,
|
'last_name' => $nama_belakang_pembeli,
|
||||||
'email' => $pembeli,
|
'email' => $pembeli,
|
||||||
'phone' => $nohp_pembeli,
|
'phone' => $nohp_pembeli,
|
||||||
'address' => Auth::user()->alamat,
|
'address' => $alamat,
|
||||||
'city' => Auth::user()->village->district->city->name,
|
'city' => Auth::user()->village->district->city->name,
|
||||||
'country_code' => 'IDN',
|
'country_code' => 'IDN',
|
||||||
],
|
],
|
||||||
],
|
],
|
||||||
'callbacks' => [
|
'callbacks' => [
|
||||||
'finish' => 'http://127.0.0.1:8000/user/user-transaction-pembeli/',
|
'finish' => route('user-transaction.index.pembeli'),
|
||||||
|
],
|
||||||
|
'enabled_payments' => [
|
||||||
|
'credit_card', 'gopay', 'shopeepay'
|
||||||
],
|
],
|
||||||
'expiry' => [
|
'expiry' => [
|
||||||
'start_time' => $now->format('Y-m-d H:i:s P'),
|
'start_time' => $now->format('Y-m-d H:i:s P'),
|
||||||
'unit' => 'hours',
|
'unit' => 'days',
|
||||||
'duration' => 24,
|
'duration' => 1,
|
||||||
],
|
],
|
||||||
];
|
];
|
||||||
|
|
||||||
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);
|
$snap_token = Snap::getSnapToken($params);
|
||||||
$token = $snap_token;
|
$token = $snap_token;
|
||||||
$status = 'pending';
|
$status = 'created';
|
||||||
|
|
||||||
|
try{
|
||||||
|
DB::beginTransaction();
|
||||||
|
|
||||||
$query = Transaction::create([
|
$query = Transaction::create([
|
||||||
'id' => $id,
|
|
||||||
'pembeli' => $pembeli,
|
'pembeli' => $pembeli,
|
||||||
'penjual' => $penjual,
|
'penjual' => $penjual,
|
||||||
'nama_barang' => $nama_barang,
|
'nama_barang' => $nama_barang,
|
||||||
@ -180,20 +205,37 @@ class UserTransactionController extends Controller
|
|||||||
'batas_pengiriman_barang_akhir' => $batas_pengiriman_barang_akhir,
|
'batas_pengiriman_barang_akhir' => $batas_pengiriman_barang_akhir,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
if ($query) {
|
$contact = Contact::where('pemilik_kontak', $pembeli)
|
||||||
|
->where('relasi_kontak', $penjual)
|
||||||
|
->count();
|
||||||
|
|
||||||
|
if ($contact == 0) {
|
||||||
|
Contact::create([
|
||||||
|
'pemilik_kontak' => $pembeli,
|
||||||
|
'relasi_kontak' => $penjual,
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
TransactionDescription::create([
|
TransactionDescription::create([
|
||||||
'order_id' => $id,
|
'transaction_id' => $query->id,
|
||||||
'status' => $status,
|
'status' => $status,
|
||||||
'user' => $pembeli,
|
'user' => $pembeli,
|
||||||
'judul' => 'fa fa-plus',
|
'judul' => 'fa fa-plus',
|
||||||
'background' => 'bg-buyer',
|
'background' => 'bg-buyer',
|
||||||
'deskripsi' => $nama_depan_pembeli . ' telah membuat transaksi baru dengan ' . $nama_penjual,
|
'deskripsi' => $nama_depan_pembeli . ' telah membuat transaksi baru dengan ' . $nama_penjual,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
|
DB::commit();
|
||||||
|
|
||||||
return response()->json([
|
return response()->json([
|
||||||
'status' => true,
|
'status' => true,
|
||||||
'message' => 'Berhasil menambahkan transaksi. Silahkan lakukan pembayaran.',
|
'message' => 'Berhasil menambahkan transaksi. Silahkan lakukan pembayaran.',
|
||||||
]);
|
]);
|
||||||
} else {
|
}catch(Throwable $e){
|
||||||
|
DB::rollBack();
|
||||||
|
|
||||||
|
Log::error($e->getMessage());
|
||||||
|
|
||||||
return response()->json([
|
return response()->json([
|
||||||
'status' => false,
|
'status' => false,
|
||||||
'message' => 'Gagal menambahkan transaksi.',
|
'message' => 'Gagal menambahkan transaksi.',
|
||||||
@ -201,80 +243,257 @@ class UserTransactionController extends Controller
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public function updateStatusTransaction(Request $request)
|
public function acceptTransaction($id)
|
||||||
{
|
{
|
||||||
}
|
|
||||||
|
|
||||||
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([
|
$query = Transaction::where('id', $id)->update([
|
||||||
'acquire' => $result['acquirer'],
|
'status' => 'process',
|
||||||
'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) {
|
if ($query) {
|
||||||
|
TransactionDescription::create([
|
||||||
|
'transaction_id' => $id,
|
||||||
|
'status' => 'process',
|
||||||
|
'background' => 'bg-seller',
|
||||||
|
'user' => Auth::user()->email,
|
||||||
|
'judul' => 'fas fa-handshake',
|
||||||
|
'deskripsi' => 'Transaksi telah diterima oleh ' . Auth::user()->nama_depan,
|
||||||
|
]);
|
||||||
|
|
||||||
return response()->json([
|
return response()->json([
|
||||||
'status' => true,
|
'status' => true,
|
||||||
'message' => 'Pembayaran sukses. Proses akan dilanjutkan ke penjual',
|
'message' => 'Transaksi telah diterima. Siapkan pesanan untuk dikirim ke penjual.',
|
||||||
]);
|
]);
|
||||||
} else {
|
} else {
|
||||||
return response()->json([
|
return response()->json([
|
||||||
'status' => false,
|
'status' => false,
|
||||||
'message' => 'Pembayaran gagal',
|
'message' => 'Gagal update status karena kesalahan server.',
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
public function sendingOrder($id)
|
||||||
* Display the specified resource.
|
|
||||||
*/
|
|
||||||
public function show(Transaction $transaction)
|
|
||||||
{
|
{
|
||||||
//
|
$query = Transaction::where('id', $id)->update([
|
||||||
|
'status' => 'sending',
|
||||||
|
]);
|
||||||
|
if ($query) {
|
||||||
|
TransactionDescription::create([
|
||||||
|
'transaction_id' => $id,
|
||||||
|
'status' => 'sending',
|
||||||
|
'background' => 'bg-seller',
|
||||||
|
'user' => Auth::user()->email,
|
||||||
|
'judul' => 'fas fa-truck-moving',
|
||||||
|
'deskripsi' => 'Pesanan telah dikirim oleh ' . Auth::user()->nama_depan . ' dan sedang dalam perjalanan menuju pembeli.',
|
||||||
|
]);
|
||||||
|
|
||||||
|
return response()->json([
|
||||||
|
'status' => true,
|
||||||
|
'message' => 'Pesanan sedang dikirim dan menuju pembeli.',
|
||||||
|
]);
|
||||||
|
} else {
|
||||||
|
return response()->json([
|
||||||
|
'status' => false,
|
||||||
|
'message' => 'Gagal update status karena kesalahan server.',
|
||||||
|
]);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
public function sentOrder($id)
|
||||||
* Show the form for editing the specified resource.
|
|
||||||
*/
|
|
||||||
public function edit(Transaction $transaction)
|
|
||||||
{
|
{
|
||||||
//
|
$query = Transaction::where('id', $id)->update([
|
||||||
|
'status' => 'sended',
|
||||||
|
]);
|
||||||
|
if ($query) {
|
||||||
|
TransactionDescription::create([
|
||||||
|
'transaction_id' => $id,
|
||||||
|
'status' => 'sended',
|
||||||
|
'background' => 'bg-seller',
|
||||||
|
'user' => Auth::user()->email,
|
||||||
|
'judul' => 'fas fa-check',
|
||||||
|
'deskripsi' => 'Pesanan telah sampai di tempat pembeli.',
|
||||||
|
]);
|
||||||
|
|
||||||
|
return response()->json([
|
||||||
|
'status' => true,
|
||||||
|
'message' => 'Pesanan telah sampai di tempat pembeli.',
|
||||||
|
]);
|
||||||
|
} else {
|
||||||
|
return response()->json([
|
||||||
|
'status' => false,
|
||||||
|
'message' => 'Gagal update status karena kesalahan server.',
|
||||||
|
]);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
public function finishTransaction($id)
|
||||||
* Update the specified resource in storage.
|
|
||||||
*/
|
|
||||||
public function update(Request $request, Transaction $transaction)
|
|
||||||
{
|
{
|
||||||
//
|
$query = Transaction::where('id', $id)->update([
|
||||||
|
'status' => 'finished',
|
||||||
|
]);
|
||||||
|
if ($query) {
|
||||||
|
TransactionDescription::create([
|
||||||
|
'transaction_id' => $id,
|
||||||
|
'status' => 'sended',
|
||||||
|
'background' => 'bg-buyer',
|
||||||
|
'user' => Auth::user()->email,
|
||||||
|
'judul' => 'fas fa-check',
|
||||||
|
'deskripsi' => 'Pesanan telah sampai di tempat pembeli.',
|
||||||
|
]);
|
||||||
|
|
||||||
|
return response()->json([
|
||||||
|
'status' => true,
|
||||||
|
'message' => 'Pesanan telah sampai di tempat pembeli.',
|
||||||
|
]);
|
||||||
|
} else {
|
||||||
|
return response()->json([
|
||||||
|
'status' => false,
|
||||||
|
'message' => 'Gagal update status karena kesalahan server.',
|
||||||
|
]);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
public function payTransaction($id)
|
||||||
* Remove the specified resource from storage.
|
|
||||||
*/
|
|
||||||
public function destroy(Transaction $transaction)
|
|
||||||
{
|
{
|
||||||
//
|
// Membuat objek Google Translate
|
||||||
|
$translator = new GoogleTranslate();
|
||||||
|
|
||||||
|
// Mengatur bahasa sumber (Inggris) dan bahasa target (Indonesia)
|
||||||
|
$translator->setSource('en');
|
||||||
|
$translator->setTarget('id');
|
||||||
|
|
||||||
|
$payment = Trans::status($id);
|
||||||
|
$result = json_decode(json_encode($payment), true);
|
||||||
|
if (in_array($result['status_code'], ['200', '201', '202'])) {
|
||||||
|
$query = Transaction::where('id', $id)->update([
|
||||||
|
'currency' => $result['currency'],
|
||||||
|
'merchant_id' => $result['merchant_id'],
|
||||||
|
'metode_pembayaran' => $result['payment_type'],
|
||||||
|
'tanggal_transaksi' => $result['transaction_time'],
|
||||||
|
'signature_key' => $result['signature_key'],
|
||||||
|
'status' => $result['transaction_status'],
|
||||||
|
'fraud_status' => $result['fraud_status'],
|
||||||
|
]);
|
||||||
|
if ($query) {
|
||||||
|
if ($result['transaction_status'] == 'pending') {
|
||||||
|
TransactionDescription::create([
|
||||||
|
'transaction_id' => $id,
|
||||||
|
'status' => $result['transaction_status'],
|
||||||
|
'user' => Auth::user()->email,
|
||||||
|
'judul' => 'fas fa-clock',
|
||||||
|
'status_code' => $result['status_code'],
|
||||||
|
'background' => 'bg-buyer',
|
||||||
|
'deskripsi' => 'Pembayaran ditunda.',
|
||||||
|
]);
|
||||||
|
return response()->json([
|
||||||
|
'status' => true,
|
||||||
|
'message' => 'Transaksi ditunda. Silahkan bayar nanti selama dalam waktu batas pembayaran.',
|
||||||
|
]);
|
||||||
|
} else {
|
||||||
|
TransactionDescription::create([
|
||||||
|
'transaction_id' => $id,
|
||||||
|
'status' => $result['transaction_status'],
|
||||||
|
'user' => Auth::user()->email,
|
||||||
|
'judul' => 'fas fa-plus',
|
||||||
|
'status_code' => $result['status_code'],
|
||||||
|
'background' => 'bg-buyer',
|
||||||
|
'deskripsi' => Auth::user()->nama_depan . ' telah sukses melakukan pembayaran. Transaksi diteruskan ke penjual.',
|
||||||
|
]);
|
||||||
|
return response()->json([
|
||||||
|
'status' => true,
|
||||||
|
'message' => 'Pembayaran sukses.',
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
return response()->json([
|
||||||
|
'status' => false,
|
||||||
|
'message' => 'Transaksi pembayaran gagal.',
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
} elseif (in_array($result['status_code'], ['400', '401', '402', '403', '404', '405', '406', '407', '408', '409', '410', '411', '412', '413'])) {
|
||||||
|
return response()->json([
|
||||||
|
'status' => false,
|
||||||
|
'message' => 'Terjadi kesalahan di server.',
|
||||||
|
]);
|
||||||
|
} else {
|
||||||
|
return response()->json([
|
||||||
|
'status' => false,
|
||||||
|
'message' => 'Transaksi pembayaran gagal',
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public function cancelTransaction($id)
|
||||||
|
{
|
||||||
|
// Membuat objek Google Translate
|
||||||
|
$translator = new GoogleTranslate();
|
||||||
|
|
||||||
|
// Mengatur bahasa sumber (Inggris) dan bahasa target (Indonesia)
|
||||||
|
$translator->setSource('en');
|
||||||
|
$translator->setTarget('id');
|
||||||
|
|
||||||
|
$transaction = Transaction::where('id', $id)->first();
|
||||||
|
|
||||||
|
if ($transaction->status == 'created') {
|
||||||
|
$query = Transaction::where('id', $id)->update([
|
||||||
|
'status' => 'cancel',
|
||||||
|
]);
|
||||||
|
if ($query) {
|
||||||
|
TransactionDescription::create([
|
||||||
|
'transcation_id' => $id,
|
||||||
|
'status' => 'cancel',
|
||||||
|
'user' => Auth::user()->email,
|
||||||
|
'judul' => 'fas fa-exclamation',
|
||||||
|
'background' => 'bg-buyer',
|
||||||
|
'deskripsi' => 'Transaksi dibatalkan',
|
||||||
|
]);
|
||||||
|
|
||||||
|
return response()->json([
|
||||||
|
'status' => true,
|
||||||
|
'message' => 'Transaksi berhasil dibatal',
|
||||||
|
]);
|
||||||
|
} else {
|
||||||
|
return response()->json([
|
||||||
|
'status' => false,
|
||||||
|
'message' => 'Transaksi gagal dibatalkan',
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
$cancel = json_decode(json_encode(Trans::cancel($id)), true);
|
||||||
|
if ($cancel['status_code'] == '200') {
|
||||||
|
$query = Transaction::where('id', $id)->update([
|
||||||
|
'status' => $cancel['transaction_status'],
|
||||||
|
]);
|
||||||
|
if ($query) {
|
||||||
|
TransactionDescription::create([
|
||||||
|
'transaction_id' => $id,
|
||||||
|
'status' => $cancel['transaction_status'],
|
||||||
|
'user' => Auth::user()->email,
|
||||||
|
'judul' => 'fas fa-exclamation',
|
||||||
|
'status_code' => $cancel['status_code'],
|
||||||
|
'background' => 'bg-buyer',
|
||||||
|
'deskripsi' => $translator->translate($cancel['status_message']),
|
||||||
|
]);
|
||||||
|
|
||||||
|
return response()->json([
|
||||||
|
'status' => true,
|
||||||
|
'message' => $translator->translate($cancel['status_message']),
|
||||||
|
]);
|
||||||
|
} else {
|
||||||
|
return response()->json([
|
||||||
|
'status' => false,
|
||||||
|
'message' => $translator->translate($cancel['status_message']),
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
} elseif ($cancel['status_code'] == '412') {
|
||||||
|
return response()->json([
|
||||||
|
'status' => false,
|
||||||
|
'message' => $translator->translate($cancel['status_message']),
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public function complainTransaction($id)
|
||||||
|
{
|
||||||
|
return view('user.refund.new-refund', compact('id'));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -19,6 +19,11 @@ class Contact extends Model
|
|||||||
'relasi_kontak',
|
'relasi_kontak',
|
||||||
];
|
];
|
||||||
|
|
||||||
|
protected $casts = [
|
||||||
|
'id' => 'string',
|
||||||
|
];
|
||||||
|
|
||||||
|
|
||||||
//Relasi
|
//Relasi
|
||||||
public function pemilikKontak(){
|
public function pemilikKontak(){
|
||||||
return $this->belongsTo(User::class, 'pemilik_kontak', 'email');
|
return $this->belongsTo(User::class, 'pemilik_kontak', 'email');
|
||||||
|
@ -15,15 +15,20 @@ class Refund extends Model
|
|||||||
* @var array<int, string>
|
* @var array<int, string>
|
||||||
*/
|
*/
|
||||||
protected $fillable = [
|
protected $fillable = [
|
||||||
'order_id',
|
'transaction_id',
|
||||||
'total',
|
'total',
|
||||||
'due_date',
|
'due_date',
|
||||||
'status',
|
'status',
|
||||||
];
|
];
|
||||||
|
|
||||||
|
protected $casts = [
|
||||||
|
'id' => 'string',
|
||||||
|
];
|
||||||
|
|
||||||
|
|
||||||
//Relasi
|
//Relasi
|
||||||
public function orders(){
|
public function transaction(){
|
||||||
return $this->belongsTo(Transaction::class, 'id', 'order_id');
|
return $this->belongsTo(Transaction::class, 'transaction_id', 'id');
|
||||||
}
|
}
|
||||||
//Relasi
|
//Relasi
|
||||||
}
|
}
|
||||||
|
@ -18,6 +18,10 @@ class Setting extends Model
|
|||||||
'bulan',
|
'bulan',
|
||||||
'tahun',
|
'tahun',
|
||||||
'persentase',
|
'persentase',
|
||||||
'status',
|
|
||||||
];
|
];
|
||||||
|
|
||||||
|
protected $casts = [
|
||||||
|
'id' => 'string',
|
||||||
|
];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -19,13 +19,14 @@ class TransactionDescription extends Model
|
|||||||
'user',
|
'user',
|
||||||
'judul',
|
'judul',
|
||||||
'status',
|
'status',
|
||||||
|
'status_code',
|
||||||
'background',
|
'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', 'id');
|
||||||
}
|
}
|
||||||
|
|
||||||
public function user(){
|
public function user(){
|
||||||
|
@ -32,7 +32,7 @@ class User extends Authenticatable
|
|||||||
'alamat',
|
'alamat',
|
||||||
'foto_ktp',
|
'foto_ktp',
|
||||||
'foto_wajah',
|
'foto_wajah',
|
||||||
'foto_profil',
|
'foto_profile',
|
||||||
'persentase_kemiripan',
|
'persentase_kemiripan',
|
||||||
'status',
|
'status',
|
||||||
'gender',
|
'gender',
|
||||||
|
@ -15,7 +15,6 @@ class Transaction extends Model
|
|||||||
* @var array<int, string>
|
* @var array<int, string>
|
||||||
*/
|
*/
|
||||||
protected $fillable = [
|
protected $fillable = [
|
||||||
'id',
|
|
||||||
'pembeli',
|
'pembeli',
|
||||||
'penjual',
|
'penjual',
|
||||||
'nama_barang',
|
'nama_barang',
|
||||||
@ -55,7 +54,11 @@ class Transaction extends Model
|
|||||||
}
|
}
|
||||||
|
|
||||||
public function refunds(){
|
public function refunds(){
|
||||||
return $this->hasMany(Refund::class, 'order_id', 'id');
|
return $this->hasMany(Refund::class, 'transaction_id', 'id');
|
||||||
|
}
|
||||||
|
|
||||||
|
public function transactionDescription(){
|
||||||
|
return $this->hasMany(TransactionDescription::class, 'transaction_id', 'id');
|
||||||
}
|
}
|
||||||
//Relasi
|
//Relasi
|
||||||
}
|
}
|
||||||
|
@ -19,6 +19,7 @@
|
|||||||
"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",
|
||||||
|
"stichoza/google-translate-php": "^5.1",
|
||||||
"thiagoalessio/tesseract_ocr": "^2.12",
|
"thiagoalessio/tesseract_ocr": "^2.12",
|
||||||
"tymon/jwt-auth": "^2.0"
|
"tymon/jwt-auth": "^2.0"
|
||||||
},
|
},
|
||||||
|
644
composer.lock
generated
@ -70,7 +70,7 @@ return [
|
|||||||
|
|
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
'timezone' => 'UTC',
|
'timezone' => 'Asia/Jakarta',
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|--------------------------------------------------------------------------
|
|--------------------------------------------------------------------------
|
||||||
|
@ -30,7 +30,7 @@ class UserFactory extends Factory
|
|||||||
'nik' => $this->faker->nik($this->faker->randomElement(['male', 'female']),$this->faker->dateTimeBetween('-65 years', '-18 years')),
|
'nik' => $this->faker->nik($this->faker->randomElement(['male', 'female']),$this->faker->dateTimeBetween('-65 years', '-18 years')),
|
||||||
'alamat'=> $this->faker->address,
|
'alamat'=> $this->faker->address,
|
||||||
'nohp'=> $this->faker->phoneNumber(),
|
'nohp'=> $this->faker->phoneNumber(),
|
||||||
'persentase_kemiripan' => random_int(0, 100).'%',
|
'persentase_kemiripan' => random_int(0, 100),
|
||||||
'status'=> $this->faker->randomElement(['Progress', 'Finished', 'Rejected']),
|
'status'=> $this->faker->randomElement(['Progress', 'Finished', 'Rejected']),
|
||||||
'gender' => $this->faker->randomElement(['Laki-laki', 'Perempuan']),
|
'gender' => $this->faker->randomElement(['Laki-laki', 'Perempuan']),
|
||||||
'kode_kelurahan' => '1101012002',
|
'kode_kelurahan' => '1101012002',
|
||||||
|
@ -3,6 +3,7 @@
|
|||||||
use Illuminate\Database\Migrations\Migration;
|
use Illuminate\Database\Migrations\Migration;
|
||||||
use Illuminate\Database\Schema\Blueprint;
|
use Illuminate\Database\Schema\Blueprint;
|
||||||
use Illuminate\Support\Facades\Schema;
|
use Illuminate\Support\Facades\Schema;
|
||||||
|
use Illuminate\Support\Facades\DB;
|
||||||
|
|
||||||
return new class extends Migration
|
return new class extends Migration
|
||||||
{
|
{
|
||||||
@ -12,7 +13,7 @@ return new class extends Migration
|
|||||||
public function up(): void
|
public function up(): void
|
||||||
{
|
{
|
||||||
Schema::create('users', function (Blueprint $table) {
|
Schema::create('users', function (Blueprint $table) {
|
||||||
$table->uuid('id')->primary;
|
$table->uuid('id')->default(DB::raw('uuid_generate_v4()'))->primary();
|
||||||
$table->string('nama_depan',255);
|
$table->string('nama_depan',255);
|
||||||
$table->string('nama_belakang',255);
|
$table->string('nama_belakang',255);
|
||||||
$table->date('tanggal_lahir');
|
$table->date('tanggal_lahir');
|
||||||
@ -21,19 +22,22 @@ return new class extends Migration
|
|||||||
$table->string('password');
|
$table->string('password');
|
||||||
$table->enum('role',['Admin','User'])->default('User');
|
$table->enum('role',['Admin','User'])->default('User');
|
||||||
$table->string('nohp',20);
|
$table->string('nohp',20);
|
||||||
$table->string('nik',20);
|
$table->string('nik',20)->unique();
|
||||||
$table->string('alamat',255);
|
$table->string('alamat',255);
|
||||||
$table->string('foto_ktp')->nullable();
|
$table->string('foto_ktp')->nullable();
|
||||||
$table->string('foto_wajah')->nullable();
|
$table->string('foto_wajah')->nullable();
|
||||||
$table->string('foto_profil')->nullable();
|
$table->string('foto_profile')->nullable();
|
||||||
$table->string('persentase_kemiripan')->nullable();
|
$table->integer('persentase_kemiripan')->nullable();
|
||||||
$table->enum('status',['Finished','Progress','Rejected'])->default('Progress');
|
$table->enum('status',['Finished','Progress','Rejected'])->default('Progress');
|
||||||
$table->string('gender',15);
|
$table->string('gender',15);
|
||||||
$table->char('kode_kelurahan',10);
|
$table->char('kode_kelurahan',10);
|
||||||
|
$table->string('no_rek')->nullable();
|
||||||
|
$table->string('nama_bank')->nullable();
|
||||||
$table->rememberToken();
|
$table->rememberToken();
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
|
|
||||||
// $table->foreign('kode_kelurahan')->on('villages')->references('code');
|
$table->index('status');
|
||||||
|
$table->index('kode_kelurahan');
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -19,6 +19,9 @@ class CreateProvincesTable extends Migration
|
|||||||
$table->string('name', 255);
|
$table->string('name', 255);
|
||||||
$table->text('meta')->nullable();
|
$table->text('meta')->nullable();
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
|
|
||||||
|
$table->index('code');
|
||||||
|
$table->index('id');
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -25,6 +25,9 @@ class CreateCitiesTable extends Migration
|
|||||||
->references('code')
|
->references('code')
|
||||||
->on(config('laravolt.indonesia.table_prefix').'provinces')
|
->on(config('laravolt.indonesia.table_prefix').'provinces')
|
||||||
->onUpdate('cascade')->onDelete('restrict');
|
->onUpdate('cascade')->onDelete('restrict');
|
||||||
|
$table->index('id');
|
||||||
|
$table->index('code');
|
||||||
|
$table->index('province_code');
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -21,10 +21,15 @@ class CreateDistrictsTable extends Migration
|
|||||||
$table->text('meta')->nullable();
|
$table->text('meta')->nullable();
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
|
|
||||||
$table->foreign('city_code')
|
$table
|
||||||
|
->foreign('city_code')
|
||||||
->references('code')
|
->references('code')
|
||||||
->on(config('laravolt.indonesia.table_prefix') . 'cities')
|
->on(config('laravolt.indonesia.table_prefix') . 'cities')
|
||||||
->onUpdate('cascade')->onDelete('restrict');
|
->onUpdate('cascade')
|
||||||
|
->onDelete('restrict');
|
||||||
|
$table->index('id');
|
||||||
|
$table->index('code');
|
||||||
|
$table->index('city_code');
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -21,10 +21,15 @@ class CreateVillagesTable extends Migration
|
|||||||
$table->text('meta')->nullable();
|
$table->text('meta')->nullable();
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
|
|
||||||
$table->foreign('district_code')
|
$table
|
||||||
|
->foreign('district_code')
|
||||||
->references('code')
|
->references('code')
|
||||||
->on(config('laravolt.indonesia.table_prefix') . 'districts')
|
->on(config('laravolt.indonesia.table_prefix') . 'districts')
|
||||||
->onUpdate('cascade')->onDelete('restrict');
|
->onUpdate('cascade')
|
||||||
|
->onDelete('restrict');
|
||||||
|
$table->index('id');
|
||||||
|
$table->index('code');
|
||||||
|
$table->index('district_code');
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
use Illuminate\Database\Migrations\Migration;
|
use Illuminate\Database\Migrations\Migration;
|
||||||
use Illuminate\Database\Schema\Blueprint;
|
use Illuminate\Database\Schema\Blueprint;
|
||||||
|
use Illuminate\Support\Facades\DB;
|
||||||
use Illuminate\Support\Facades\Schema;
|
use Illuminate\Support\Facades\Schema;
|
||||||
|
|
||||||
return new class extends Migration
|
return new class extends Migration
|
||||||
@ -12,7 +13,7 @@ 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('id')->default(DB::raw('uuid_generate_v4()'))->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('nama_barang'); // item_details -> item_name
|
||||||
@ -27,19 +28,18 @@ return new class extends Migration
|
|||||||
$table->string('signature_key')->nullable();
|
$table->string('signature_key')->nullable();
|
||||||
$table->string('token');
|
$table->string('token');
|
||||||
$table->string('metode_pembayaran')->nullable();
|
$table->string('metode_pembayaran')->nullable();
|
||||||
$table->string('acquire')->nullable();
|
|
||||||
$table->string('issuer')->nullable();
|
|
||||||
$table->char('currency',3)->nullable();
|
$table->char('currency',3)->nullable();
|
||||||
$table->string('fraud_status')->nullable();
|
$table->string('fraud_status')->nullable();
|
||||||
$table->string('merchant_id')->nullable();
|
$table->string('merchant_id')->nullable();
|
||||||
$table->string('status_code')->nullable();
|
$table->enum('status',['settlement','capture','pending','cancel','refund', 'expire','failure','process','sending','sended','finished','created'])->default('created'); // transaction_status
|
||||||
$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_awal');
|
||||||
$table->timestamp('batas_pengiriman_barang_akhir');
|
$table->timestamp('batas_pengiriman_barang_akhir');
|
||||||
$table->timestamp('tanggal_pembayaran')->nullable();
|
$table->timestamp('tanggal_transaksi')->nullable();
|
||||||
|
$table->string('nama_bank_penjual');
|
||||||
|
$table->string('no_rek_penjual');
|
||||||
$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');
|
||||||
});
|
});
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
use Illuminate\Database\Migrations\Migration;
|
use Illuminate\Database\Migrations\Migration;
|
||||||
use Illuminate\Database\Schema\Blueprint;
|
use Illuminate\Database\Schema\Blueprint;
|
||||||
|
use Illuminate\Support\Facades\DB;
|
||||||
use Illuminate\Support\Facades\Schema;
|
use Illuminate\Support\Facades\Schema;
|
||||||
|
|
||||||
return new class extends Migration
|
return new class extends Migration
|
||||||
@ -12,13 +13,14 @@ return new class extends Migration
|
|||||||
public function up(): void
|
public function up(): void
|
||||||
{
|
{
|
||||||
Schema::create('refunds', function (Blueprint $table) {
|
Schema::create('refunds', function (Blueprint $table) {
|
||||||
$table->id();
|
$table->uuid('id')->default(DB::raw('uuid_generate_v4()'))->primary();
|
||||||
$table->foreignUuid('order_id');
|
$table->foreignUuid('transaction_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->text('complaint');
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
$table->foreign('order_id')->on('transactions')->references('id');
|
$table->foreign('transaction_id')->on('transactions')->references('id');
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
use Illuminate\Database\Migrations\Migration;
|
use Illuminate\Database\Migrations\Migration;
|
||||||
use Illuminate\Database\Schema\Blueprint;
|
use Illuminate\Database\Schema\Blueprint;
|
||||||
|
use Illuminate\Support\Facades\DB;
|
||||||
use Illuminate\Support\Facades\Schema;
|
use Illuminate\Support\Facades\Schema;
|
||||||
|
|
||||||
return new class extends Migration
|
return new class extends Migration
|
||||||
@ -12,11 +13,12 @@ return new class extends Migration
|
|||||||
public function up(): void
|
public function up(): void
|
||||||
{
|
{
|
||||||
Schema::create('settings', function (Blueprint $table) {
|
Schema::create('settings', function (Blueprint $table) {
|
||||||
$table->id();
|
$table->uuid('id')->default(DB::raw('uuid_generate_v4()'))->primary();
|
||||||
$table->string('bulan',20);
|
$table->string('bulan',5);
|
||||||
$table->string('tahun',5);
|
$table->string('tahun',5);
|
||||||
$table->integer('persentase');
|
$table->float('persentase');
|
||||||
$table->enum('status',['Active', 'Nonactive']);
|
$table->enum('status',['Active', 'Nonactive'])->default('Active');
|
||||||
|
$table->unique(['bulan','tahun']);
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
use Illuminate\Database\Migrations\Migration;
|
use Illuminate\Database\Migrations\Migration;
|
||||||
use Illuminate\Database\Schema\Blueprint;
|
use Illuminate\Database\Schema\Blueprint;
|
||||||
|
use Illuminate\Support\Facades\DB;
|
||||||
use Illuminate\Support\Facades\Schema;
|
use Illuminate\Support\Facades\Schema;
|
||||||
|
|
||||||
return new class extends Migration
|
return new class extends Migration
|
||||||
@ -12,7 +13,7 @@ return new class extends Migration
|
|||||||
public function up(): void
|
public function up(): void
|
||||||
{
|
{
|
||||||
Schema::create('contacts', function (Blueprint $table) {
|
Schema::create('contacts', function (Blueprint $table) {
|
||||||
$table->id();
|
$table->uuid('id')->default(DB::raw('uuid_generate_v4()'))->primary();
|
||||||
$table->string('pemilik_kontak');
|
$table->string('pemilik_kontak');
|
||||||
$table->string('relasi_kontak');
|
$table->string('relasi_kontak');
|
||||||
$table->foreign('pemilik_kontak')->on('users')->references('email');
|
$table->foreign('pemilik_kontak')->on('users')->references('email');
|
||||||
|
@ -13,15 +13,17 @@ return new class extends Migration
|
|||||||
{
|
{
|
||||||
Schema::create('transaction_descriptions', function (Blueprint $table) {
|
Schema::create('transaction_descriptions', function (Blueprint $table) {
|
||||||
$table->id();
|
$table->id();
|
||||||
$table->foreignUuid('order_id');
|
$table->foreignUuid('transaction_id');
|
||||||
$table->string('status',15);
|
$table->string('status',15);
|
||||||
$table->string('user');
|
$table->string('user');
|
||||||
$table->string('background');
|
$table->string('background');
|
||||||
$table->string('judul');
|
$table->string('judul');
|
||||||
$table->string('deskripsi');
|
$table->string('deskripsi');
|
||||||
|
$table->string('status_code')->nullable();
|
||||||
|
$table->string('bukti_foto')->nullable();
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
|
|
||||||
$table->foreign('order_id')->on('transactions')->references('id');
|
$table->foreign('transaction_id')->on('transactions')->references('id');
|
||||||
$table->foreign('user')->on('users')->references('email');
|
$table->foreign('user')->on('users')->references('email');
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -13,7 +13,7 @@ return new class extends Migration
|
|||||||
{
|
{
|
||||||
Schema::create('refund_descriptions', function (Blueprint $table) {
|
Schema::create('refund_descriptions', function (Blueprint $table) {
|
||||||
$table->id();
|
$table->id();
|
||||||
$table->foreignId('refund_id');
|
$table->foreignUuid('refund_id');
|
||||||
$table->string('filename');
|
$table->string('filename');
|
||||||
$table->string('type');
|
$table->string('type');
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
|
@ -3,10 +3,15 @@
|
|||||||
namespace Database\Seeders;
|
namespace Database\Seeders;
|
||||||
|
|
||||||
// use Illuminate\Database\Console\Seeds\WithoutModelEvents;
|
// use Illuminate\Database\Console\Seeds\WithoutModelEvents;
|
||||||
|
|
||||||
|
use App\Models\Refund;
|
||||||
|
use App\Models\RefundDescription;
|
||||||
use Illuminate\Database\Seeder;
|
use Illuminate\Database\Seeder;
|
||||||
use App\Models\User;
|
use App\Models\User;
|
||||||
use Carbon\Carbon;
|
use Carbon\Carbon;
|
||||||
use App\Models\Setting;
|
use App\Models\Setting;
|
||||||
|
use App\Models\Transaction;
|
||||||
|
use App\Models\TransactionDescription;
|
||||||
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;
|
||||||
@ -29,7 +34,7 @@ class DatabaseSeeder extends Seeder
|
|||||||
'id' => Str::uuid(),
|
'id' => Str::uuid(),
|
||||||
'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('Y-m-d', 'now'),
|
||||||
'email' => 'admin@example.net',
|
'email' => 'admin@example.net',
|
||||||
'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
|
||||||
@ -39,20 +44,131 @@ class DatabaseSeeder extends Seeder
|
|||||||
'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();
|
|
||||||
|
$user1 = User::factory()->create([
|
||||||
|
'id' => Str::uuid(),
|
||||||
|
'nama_depan' => $faker->firstName,
|
||||||
|
'nama_belakang' => $faker->lastName,
|
||||||
|
'tanggal_lahir' => $faker->date('Y-m-d', 'now'),
|
||||||
|
'email' => $faker->email,
|
||||||
|
'email_verified_at' => now(),
|
||||||
|
'password' => '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', // password
|
||||||
|
'remember_token' => Str::random(10),
|
||||||
|
'role' => 'User',
|
||||||
|
'nik' => $faker->nik($faker->randomElement(['male', 'female']), $faker->dateTimeBetween('-65 years', '-18 years')),
|
||||||
|
'alamat' => $faker->address,
|
||||||
|
'nohp' => $faker->phoneNumber(),
|
||||||
|
'status' => 'Finished',
|
||||||
|
'persentase_kemiripan' => 100,
|
||||||
|
'gender' => $faker->randomElement(['Laki-laki', 'Perempuan']),
|
||||||
|
'kode_kelurahan' => '1101012002',
|
||||||
|
]);
|
||||||
|
|
||||||
|
$user2 = User::factory()->create([
|
||||||
|
'id' => Str::uuid(),
|
||||||
|
'nama_depan' => $faker->firstName,
|
||||||
|
'nama_belakang' => $faker->lastName,
|
||||||
|
'tanggal_lahir' => $faker->date('Y-m-d', 'now'),
|
||||||
|
'email' => $faker->email(),
|
||||||
|
'email_verified_at' => now(),
|
||||||
|
'password' => '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', // password
|
||||||
|
'remember_token' => Str::random(10),
|
||||||
|
'role' => 'User',
|
||||||
|
'nik' => $faker->nik($faker->randomElement(['male', 'female']), $faker->dateTimeBetween('-65 years', '-18 years')),
|
||||||
|
'alamat' => $faker->address,
|
||||||
|
'nohp' => $faker->phoneNumber(),
|
||||||
|
'status' => 'Finished',
|
||||||
|
'persentase_kemiripan' => 100,
|
||||||
|
'gender' => $faker->randomElement(['Laki-laki', 'Perempuan']),
|
||||||
|
'kode_kelurahan' => '1101012002',
|
||||||
|
]);
|
||||||
|
// User::factory(20)->create();
|
||||||
|
|
||||||
$now = Carbon::now()->tz('Asia/Jakarta');
|
$now = Carbon::now()->tz('Asia/Jakarta');
|
||||||
$bulan = $now->format('F');
|
$bulan = $now->format('n');
|
||||||
$tahun = $now->year;
|
$tahun = $now->year;
|
||||||
Setting::create([
|
Setting::create([
|
||||||
|
'id' => Str::uuid(),
|
||||||
'bulan' => $bulan,
|
'bulan' => $bulan,
|
||||||
'tahun' => $tahun,
|
'tahun' => $tahun,
|
||||||
'persentase' => 5,
|
'persentase' => 5,
|
||||||
'status' => 'Active'
|
'status' => 'Active',
|
||||||
|
]);
|
||||||
|
|
||||||
|
$transaction = Transaction::create([
|
||||||
|
'id' => Str::uuid(),
|
||||||
|
'pembeli' => $user1->email,
|
||||||
|
'penjual' => $user2->email,
|
||||||
|
'nama_barang' => 'hah',
|
||||||
|
'deskripsi_transaksi' => null,
|
||||||
|
'satuan_barang' => 'barang',
|
||||||
|
'harga_barang' => 2000,
|
||||||
|
'jumlah_barang' => 2,
|
||||||
|
'persentase_keuntungan' => 2,
|
||||||
|
'total_keuntungan' => 2,
|
||||||
|
'total_harga' => 2,
|
||||||
|
'total_bayar' => 2,
|
||||||
|
'token' => 'asda',
|
||||||
|
'status' => 'pending',
|
||||||
|
'batas_pembayaran' => now(),
|
||||||
|
'batas_pengiriman_barang_awal' => now(),
|
||||||
|
'batas_pengiriman_barang_akhir' => now(),
|
||||||
|
'nama_bank_penjual' => 'asd',
|
||||||
|
'no_rek_penjual' => '21-',
|
||||||
|
]);
|
||||||
|
|
||||||
|
TransactionDescription::create([
|
||||||
|
'transaction_id' => $transaction->id,
|
||||||
|
'status' => 'pending',
|
||||||
|
'user' => $user1->email,
|
||||||
|
'judul' => 'fa fa-plus',
|
||||||
|
'background' => 'bg-buyer',
|
||||||
|
'deskripsi' => $user1->nama_depan . ' telah membuat transaksi baru dengan ' . $user2->nama_depan,
|
||||||
|
]);
|
||||||
|
|
||||||
|
$transactionRefund = Transaction::create([
|
||||||
|
'id' => Str::uuid(),
|
||||||
|
'pembeli' => $user1->email,
|
||||||
|
'penjual' => $user2->email,
|
||||||
|
'nama_barang' => 'hah',
|
||||||
|
'deskripsi_transaksi' => null,
|
||||||
|
'satuan_barang' => 'barang',
|
||||||
|
'harga_barang' => 2000,
|
||||||
|
'jumlah_barang' => 2,
|
||||||
|
'persentase_keuntungan' => 2,
|
||||||
|
'total_keuntungan' => 2,
|
||||||
|
'total_harga' => 2,
|
||||||
|
'total_bayar' => 2,
|
||||||
|
'token' => 'asda',
|
||||||
|
'status' => 'refund',
|
||||||
|
'batas_pembayaran' => now(),
|
||||||
|
'batas_pengiriman_barang_awal' => now(),
|
||||||
|
'batas_pengiriman_barang_akhir' => now(),
|
||||||
|
'nama_bank_penjual' => 'asd',
|
||||||
|
'no_rek_penjual' => '21-',
|
||||||
|
]);
|
||||||
|
|
||||||
|
$refund = Refund::create([
|
||||||
|
'transaction_id' => $transactionRefund->id,
|
||||||
|
'total' => $transactionRefund->total_harga,
|
||||||
|
'due_date' => now(),
|
||||||
|
'complaint' => 'ha',
|
||||||
|
]);
|
||||||
|
|
||||||
|
RefundDescription::create([
|
||||||
|
'refund_id' => $refund->id,
|
||||||
|
'filename' => 'img_1.jpg',
|
||||||
|
'type' => 'image'
|
||||||
|
]);
|
||||||
|
|
||||||
|
RefundDescription::create([
|
||||||
|
'refund_id' => $refund->id,
|
||||||
|
'filename' => 'img_2.jpg',
|
||||||
|
'type' => 'image'
|
||||||
]);
|
]);
|
||||||
|
|
||||||
$this->call([ProvincesSeeder::class, CitiesSeeder::class, DistrictsSeeder::class, VillagesSeeder::class]);
|
$this->call([ProvincesSeeder::class, CitiesSeeder::class, DistrictsSeeder::class, VillagesSeeder::class]);
|
||||||
|
BIN
public/assets/audio/Renai Saiban_[Uwamono].mp3
Normal file
@ -242,11 +242,11 @@ select.form-control:not([size]):not([multiple]),
|
|||||||
.form-control:not(.form-control-sm):not(.form-control-lg) {
|
.form-control:not(.form-control-sm):not(.form-control-lg) {
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
padding: 10px 15px;
|
padding: 10px 15px;
|
||||||
height: 42px;
|
height: auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
textarea.form-control {
|
textarea.form-control {
|
||||||
height: 64px !important;
|
min-height: 200px !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.custom-control {
|
.custom-control {
|
||||||
@ -1667,7 +1667,8 @@ table tr:hover .table-links {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.badge.badge-warning {
|
.badge.badge-warning {
|
||||||
color: #fff;
|
background-color: #ffb300;
|
||||||
|
color: #ffffff;
|
||||||
}
|
}
|
||||||
|
|
||||||
.badge.badge-primary {
|
.badge.badge-primary {
|
||||||
|
BIN
public/assets/img/metode_pembayaran/alfamart.png
Normal file
After Width: | Height: | Size: 61 KiB |
BIN
public/assets/img/metode_pembayaran/bank_transfer.png
Normal file
After Width: | Height: | Size: 4.5 KiB |
BIN
public/assets/img/metode_pembayaran/bca.png
Normal file
After Width: | Height: | Size: 103 KiB |
BIN
public/assets/img/metode_pembayaran/bri.png
Normal file
After Width: | Height: | Size: 33 KiB |
BIN
public/assets/img/metode_pembayaran/bri_epay.png
Normal file
After Width: | Height: | Size: 11 KiB |
BIN
public/assets/img/metode_pembayaran/gopay.png
Normal file
After Width: | Height: | Size: 70 KiB |
BIN
public/assets/img/metode_pembayaran/indomaret.png
Normal file
After Width: | Height: | Size: 60 KiB |
BIN
public/assets/img/metode_pembayaran/mandiri.png
Normal file
After Width: | Height: | Size: 63 KiB |
BIN
public/assets/img/metode_pembayaran/qris.png
Normal file
After Width: | Height: | Size: 27 KiB |
@ -52,6 +52,30 @@ $("#table-2").dataTable({
|
|||||||
|
|
||||||
// Transaksi pembeli
|
// Transaksi pembeli
|
||||||
$("#table-3").dataTable({
|
$("#table-3").dataTable({
|
||||||
|
columnDefs: [{ sortable: false, targets: [6] }],
|
||||||
|
searchable: true,
|
||||||
|
});
|
||||||
|
|
||||||
|
// Refund, Transaction Admin
|
||||||
|
$("#table-4").dataTable({
|
||||||
|
columnDefs: [{ sortable: false, targets: [8] }],
|
||||||
|
searchable: true,
|
||||||
|
});
|
||||||
|
|
||||||
|
// Setting Admin
|
||||||
|
$("#table-5").dataTable({
|
||||||
|
columnDefs: [{ sortable: false, targets: [4, 5] }],
|
||||||
|
searchable: true,
|
||||||
|
});
|
||||||
|
|
||||||
|
// Contact User
|
||||||
|
$("#table-6").dataTable({
|
||||||
|
columnDefs: [{ sortable: false, targets: [4] }],
|
||||||
|
searchable: true,
|
||||||
|
});
|
||||||
|
|
||||||
|
//Refund User
|
||||||
|
$("#table-7").dataTable({
|
||||||
columnDefs: [{ sortable: false, targets: [5] }],
|
columnDefs: [{ sortable: false, targets: [5] }],
|
||||||
searchable: true,
|
searchable: true,
|
||||||
});
|
});
|
||||||
|
9
public/assets/js/progress_bar/progress_bar.js
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
var modal = document.getElementById("modalProgressBar");
|
||||||
|
|
||||||
|
function showLoading() {
|
||||||
|
$(modal).modal("show");
|
||||||
|
}
|
||||||
|
|
||||||
|
function hideLoading() {
|
||||||
|
$(modal).modal("hide");
|
||||||
|
}
|
287
public/assets/js/user/new-transaction.js
Normal file
@ -0,0 +1,287 @@
|
|||||||
|
$(document).ready(function () {
|
||||||
|
let totalHarga = 0;
|
||||||
|
let biayaAdmin = persentaseKeuntungan;
|
||||||
|
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 () {
|
||||||
|
$("#selectContact").val(null).trigger("change");
|
||||||
|
});
|
||||||
|
|
||||||
|
$("#inputPenjual").on("input", function () {
|
||||||
|
let emailInput = $("#inputPenjual").val();
|
||||||
|
if (emailInput.trim() == "") {
|
||||||
|
$("#selectContact").prop("disabled", false);
|
||||||
|
$("#deleteOption").prop("disabled", false);
|
||||||
|
} else {
|
||||||
|
$("#selectContact").prop("disabled", true);
|
||||||
|
$("#deleteOption").prop("disabled", true);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$("#checkButton").click(function () {
|
||||||
|
let email = document.querySelector('[name="input_penjual"]').value;
|
||||||
|
const csrfToken = $('meta[name="csrf-token"]').attr("content");
|
||||||
|
|
||||||
|
if (email.trim() == "") {
|
||||||
|
Swal.fire({
|
||||||
|
title: "Gagal",
|
||||||
|
text: "Email tidak boleh kosong",
|
||||||
|
icon: "error",
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
if (email != "{{ Auth::user()->email }}") {
|
||||||
|
$.ajaxSetup({
|
||||||
|
headers: {
|
||||||
|
"X-CSRF-TOKEN": csrfToken,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
url: "{{ route('user-contact.email', ':email') }}".replace(
|
||||||
|
":email",
|
||||||
|
email
|
||||||
|
),
|
||||||
|
type: "GET",
|
||||||
|
success: function (response) {
|
||||||
|
if (
|
||||||
|
response.status &&
|
||||||
|
(response.message.nama_bank == null ||
|
||||||
|
response.message.nama_bank == "") &&
|
||||||
|
(response.message.no_rek == null ||
|
||||||
|
response.message.no_rek == "")
|
||||||
|
) {
|
||||||
|
Swal.fire({
|
||||||
|
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(
|
||||||
|
'textarea[name="deskripsi"]'
|
||||||
|
).value;
|
||||||
|
|
||||||
|
let emptyInput = [];
|
||||||
|
|
||||||
|
let penjual = "";
|
||||||
|
if (opsiKontak != "" && inputKontak != "") {
|
||||||
|
penjual = opsiKontak;
|
||||||
|
} else if (opsiKontak == "" && inputKontak != "") {
|
||||||
|
penjual = inputKontak;
|
||||||
|
} else if (inputKontak == "" && opsiKontak != "") {
|
||||||
|
penjual = opsiKontak;
|
||||||
|
} else {
|
||||||
|
emptyInput.push("Kolom penjual tidak boleh kosong");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (penjual == "{{ Auth::user()->email }}") {
|
||||||
|
emptyInput.push(
|
||||||
|
"Email penjual tidak boleh sama dengan email pembeli"
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (namaBarang == "") {
|
||||||
|
emptyInput.push("Nama barang tidak boleh kosong");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (hargaBarang == "") {
|
||||||
|
emptyInput.push("Harga barang tidak boleh kosong");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (satuanBarang == "") {
|
||||||
|
emptyInput.push("Satuan barang tidak boleh kosong");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (jumlahBarang == "") {
|
||||||
|
emptyInput.push("Jumlah barang tidak boleh kosong");
|
||||||
|
}
|
||||||
|
|
||||||
|
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", biayaAdmin);
|
||||||
|
formData.append("total_keuntungan", totalBiayaAdmin);
|
||||||
|
formData.append("total_harga", totalHarga);
|
||||||
|
formData.append("total_bayar", totalBayar);
|
||||||
|
|
||||||
|
$(modal).modal("show");
|
||||||
|
|
||||||
|
$.ajaxSetup({
|
||||||
|
headers: {
|
||||||
|
"X-CSRF-TOKEN": csrfToken,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
url: "{{ route('store-transaction.pembeli') }}",
|
||||||
|
type: "POST",
|
||||||
|
data: formData,
|
||||||
|
processData: false,
|
||||||
|
contentType: false,
|
||||||
|
success: function (response) {
|
||||||
|
$(modal).modal("hide");
|
||||||
|
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) {
|
||||||
|
$(modal).modal("hide");
|
||||||
|
Swal.fire({
|
||||||
|
title: "Gagal",
|
||||||
|
text: "Gagal mengirimkan data karena " + error,
|
||||||
|
icon: "error",
|
||||||
|
});
|
||||||
|
console.log(error);
|
||||||
|
},
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
@ -1,4 +1,4 @@
|
|||||||
@extends('admin.layout.main')
|
@extends('layouts.main')
|
||||||
@section('content')
|
@section('content')
|
||||||
<!-- Main Content -->
|
<!-- Main Content -->
|
||||||
<div class="main-content">
|
<div class="main-content">
|
||||||
@ -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,23 +26,23 @@
|
|||||||
<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">
|
||||||
<div class="card-stats-item-count">114</div>
|
<div class="card-stats-item-count">{{ $countSuccess }}</div>
|
||||||
<div class="card-stats-item-label">Success</div>
|
<div class="card-stats-item-label">Success</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-stats-item">
|
<div class="card-stats-item">
|
||||||
<div class="card-stats-item-count">12</div>
|
<div class="card-stats-item-count">{{ $countPending }}</div>
|
||||||
<div class="card-stats-item-label">Pending</div>
|
<div class="card-stats-item-label">Pending</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-stats-item">
|
<div class="card-stats-item">
|
||||||
<div class="card-stats-item-count">23</div>
|
<div class="card-stats-item-count">{{ $countCancelled }}</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">
|
||||||
<div class="card-stats-item-count">23</div>
|
<div class="card-stats-item-count">{{ $countRefund }}</div>
|
||||||
<div class="card-stats-item-label">Refund</div>
|
<div class="card-stats-item-label">Refund</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -55,7 +55,7 @@
|
|||||||
<h4>Total Transaction</h4>
|
<h4>Total Transaction</h4>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
159
|
{{ $totalTransaction }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<p class="mb-0 text-muted">
|
<p class="mb-0 text-muted">
|
||||||
@ -78,7 +78,7 @@
|
|||||||
<h4>Total Refund</h4>
|
<h4>Total Refund</h4>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
100
|
{{ $totalRefund }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<p class="mb-0 text-muted">
|
<p class="mb-0 text-muted">
|
||||||
@ -101,7 +101,7 @@
|
|||||||
<h4>Total user</h4>
|
<h4>Total user</h4>
|
||||||
</div>
|
</div>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
100 </div>
|
{{ $totalUser }}</div>
|
||||||
</div>
|
</div>
|
||||||
<p class="mb-0 text-muted">
|
<p class="mb-0 text-muted">
|
||||||
<span class="text-danger me-2"><span class="mdi mdi-arrow-down-bold"></span>
|
<span class="text-danger me-2"><span class="mdi mdi-arrow-down-bold"></span>
|
||||||
@ -111,16 +111,6 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row justify-content-end d-flex">
|
|
||||||
<div class="col-lg-4 col-md-4 col-sm-12 ml-auto">
|
|
||||||
<div class="input-group">
|
|
||||||
<input type="text" name="from-to" class="form-control" id="date-range">
|
|
||||||
<span class="input-group-text bg-primary text-white align-items-center">
|
|
||||||
<i class="mdi mdi-calendar-range font-13"></i>
|
|
||||||
</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<br>
|
<br>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-lg-8">
|
<div class="col-lg-8">
|
||||||
@ -170,11 +160,18 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-lg-4">
|
<div class="col-lg-4">
|
||||||
|
<div class="input-group mt-4">
|
||||||
|
<input type="text" name="from-to" class="form-control" id="date-range">
|
||||||
|
<span class="input-group-text bg-primary text-white align-items-center">
|
||||||
|
<i class="mdi mdi-calendar-range font-13"></i>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
<div class="card gradient-bottom">
|
<div class="card gradient-bottom">
|
||||||
<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>
|
||||||
@ -291,11 +288,11 @@
|
|||||||
<div class="card-footer pt-3 d-flex justify-content-center">
|
<div class="card-footer pt-3 d-flex justify-content-center">
|
||||||
<div class="budget-price justify-content-center">
|
<div class="budget-price justify-content-center">
|
||||||
<div class="budget-price-square bg-primary" data-width="20"></div>
|
<div class="budget-price-square bg-primary" data-width="20"></div>
|
||||||
<div class="budget-price-label">Selling Price</div>
|
<div class="budget-price-label">Sukses</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="budget-price justify-content-center">
|
<div class="budget-price justify-content-center">
|
||||||
<div class="budget-price-square bg-danger" data-width="20"></div>
|
<div class="budget-price-square bg-danger" data-width="20"></div>
|
||||||
<div class="budget-price-label">Budget Price</div>
|
<div class="budget-price-label">Refund</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -325,26 +322,26 @@
|
|||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
@foreach ($transaction as $transactions)
|
@foreach ($transactions as $transaction)
|
||||||
<tr>
|
<tr>
|
||||||
<td>{{ $transactions['no'] }}</td>
|
<td>{{ $transaction['no'] }}</td>
|
||||||
<td><a href="#">{{ $transactions['orderId'] }}</a></td>
|
<td><a href="#">{{ $transaction['orderId'] }}</a></td>
|
||||||
<td class="font-weight-600">{{ $transactions['customer'] }}</td>
|
<td class="font-weight-600">{{ $transaction['customer'] }}</td>
|
||||||
<td class="font-weight-600">{{ $transactions['seller'] }}</td>
|
<td class="font-weight-600">{{ $transaction['seller'] }}</td>
|
||||||
<td class="font-weight-600">{{ $transactions['total'] }}</td>
|
<td class="font-weight-600">{{ $transaction['total'] }}</td>
|
||||||
<td>{{ $transactions['date'] }}</td>
|
<td>{{ $transaction['date'] }}</td>
|
||||||
<td>
|
<td>
|
||||||
@php
|
@php
|
||||||
$statusClass = '';
|
$statusClass = '';
|
||||||
if ($transactions['status'] === 'pending') {
|
if ($transaction['status'] === 'pending') {
|
||||||
$statusClass = 'badge-warning';
|
$statusClass = 'badge-warning';
|
||||||
} elseif ($transactions['status'] === 'paid') {
|
} elseif ($transaction['status'] === 'paid') {
|
||||||
$statusClass = 'badge-success';
|
$statusClass = 'badge-success';
|
||||||
} elseif ($transactions['status'] === 'unpaid') {
|
} elseif ($transaction['status'] === 'unpaid') {
|
||||||
$statusClass = 'badge-danger';
|
$statusClass = 'badge-danger';
|
||||||
}
|
}
|
||||||
@endphp
|
@endphp
|
||||||
<div class="badge {{ $statusClass }}">{{ $transactions['status'] }}
|
<div class="badge {{ $statusClass }}">{{ $transaction['status'] }}
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
@ -375,6 +372,13 @@
|
|||||||
</section>
|
</section>
|
||||||
</div>
|
</div>
|
||||||
@include('admin.transaction.modal-tracking')
|
@include('admin.transaction.modal-tracking')
|
||||||
|
<script>
|
||||||
|
let dataChartTransaction = {{ json_encode($dataChartTransaction) }};
|
||||||
|
let dataChartRefund = {{ json_encode($dataChartRefund) }};
|
||||||
|
let labels = '';
|
||||||
|
let dataChartTotalRefund = {{ json_encode($dataChartTotalRefund) }};
|
||||||
|
let dataChartTotalUser = {{ json_encode($dataChartTotalUser) }};
|
||||||
|
</script>
|
||||||
<script>
|
<script>
|
||||||
// Date picker range
|
// Date picker range
|
||||||
$(document).ready(function() {
|
$(document).ready(function() {
|
||||||
@ -427,8 +431,8 @@
|
|||||||
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: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Agu", "Sep",
|
||||||
"Oktober", "November", "December"
|
"Okt", "Nov", "Des"
|
||||||
],
|
],
|
||||||
datasets: [{
|
datasets: [{
|
||||||
label: 'Transaction',
|
label: 'Transaction',
|
||||||
@ -458,12 +462,13 @@
|
|||||||
},
|
},
|
||||||
options: {
|
options: {
|
||||||
layout: {
|
layout: {
|
||||||
padding: 20,
|
padding: 10,
|
||||||
},
|
},
|
||||||
legend: {
|
legend: {
|
||||||
display: true,
|
display: true,
|
||||||
labels: {
|
labels: {
|
||||||
padding: 20,
|
padding: 10,
|
||||||
|
fontSize: 16
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
scales: {
|
scales: {
|
||||||
@ -475,20 +480,29 @@
|
|||||||
},
|
},
|
||||||
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', {
|
||||||
style: 'currency',
|
style: 'currency',
|
||||||
currency: 'IDR',
|
currency: 'IDR',
|
||||||
}).format(value);
|
}).format(value);
|
||||||
}
|
},
|
||||||
}
|
fontSize: 14,
|
||||||
|
},
|
||||||
|
scaleLabel: {
|
||||||
|
display: true,
|
||||||
|
labelString: 'Dalam Ratusan Juta', // Label khusus untuk sumbu Y
|
||||||
|
fontSize: 16 // Ukuran font untuk label sumbu Y
|
||||||
|
},
|
||||||
}],
|
}],
|
||||||
xAxes: [{
|
xAxes: [{
|
||||||
gridLines: {
|
gridLines: {
|
||||||
display: true,
|
display: true,
|
||||||
tickMarkLength: 15,
|
tickMarkLength: 15,
|
||||||
|
},
|
||||||
|
ticks: {
|
||||||
|
fontSize: 16,
|
||||||
}
|
}
|
||||||
}]
|
}]
|
||||||
},
|
},
|
||||||
|
@ -1,8 +0,0 @@
|
|||||||
<footer class="main-footer">
|
|
||||||
<div class="footer-left">
|
|
||||||
Copysright © 2020 <div class="bullet"></div> Design By <a href="#">Template</a>
|
|
||||||
</div>
|
|
||||||
<div class="footer-right">
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</footer>
|
|
@ -1,208 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en">
|
|
||||||
|
|
||||||
<head>
|
|
||||||
<style>
|
|
||||||
.data-field {
|
|
||||||
display: flex;
|
|
||||||
width: 100%;
|
|
||||||
justify-content: space-between;
|
|
||||||
font-size: 14px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.data-field:not(:last-child) {
|
|
||||||
margin-bottom: 15px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.data-field span {
|
|
||||||
text-align: end;
|
|
||||||
}
|
|
||||||
|
|
||||||
.card-title span a {
|
|
||||||
color: #899bbd;
|
|
||||||
text-decoration: underline;
|
|
||||||
}
|
|
||||||
|
|
||||||
.justified-text {
|
|
||||||
text-align: justify;
|
|
||||||
}
|
|
||||||
|
|
||||||
.font-weight-italic {
|
|
||||||
font-style: italic;
|
|
||||||
}
|
|
||||||
</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 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>
|
|
||||||
|
|
||||||
<!-- General CSS Files -->
|
|
||||||
<link rel="stylesheet" href="{{ asset('assets/modules/bootstrap/css/bootstrap.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') }}">
|
|
||||||
<link rel="stylesheet" href="{{ asset('assets/modules/summernote/summernote-bs4.css') }}">
|
|
||||||
<link rel="stylesheet" href="{{ asset('assets/modules/owlcarousel2/dist/assets/owl.carousel.min.css') }}">
|
|
||||||
<link rel="stylesheet" href="{{ asset('assets/modules/owlcarousel2/dist/assets/owl.theme.default.min.css') }}">
|
|
||||||
<link rel="stylesheet" type="text/css"
|
|
||||||
href="https://cdn.jsdelivr.net/npm/daterangepicker@3.1.0/daterangepicker.css" />
|
|
||||||
<!-- Template CSS -->
|
|
||||||
<link rel="stylesheet" href="{{ asset('assets/css/style.css') }}">
|
|
||||||
<link rel="stylesheet" href="{{ asset('assets/css/components.css') }}">
|
|
||||||
<!-- CSS Libraries -->
|
|
||||||
<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') }}">
|
|
||||||
<!-- Start GA -->
|
|
||||||
{{-- <script async src="https://www.googletagmanager.com/gtag/js?id=UA-94034622-3"></script>
|
|
||||||
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
|
||||||
<script>
|
|
||||||
window.dataLayer = window.dataLayer || [];
|
|
||||||
|
|
||||||
function gtag() {
|
|
||||||
dataLayer.push(arguments);
|
|
||||||
}
|
|
||||||
gtag('js', new Date());
|
|
||||||
|
|
||||||
gtag('config', 'UA-94034622-3');
|
|
||||||
<<<<<<< HEAD
|
|
||||||
</script>
|
|
||||||
<!-- /END GA -->
|
|
||||||
=======
|
|
||||||
</script> --}}
|
|
||||||
|
|
||||||
<!-- /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>
|
|
||||||
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<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')
|
|
||||||
</header>
|
|
||||||
|
|
||||||
<main id="main" style="min-height: 100vh;">
|
|
||||||
@include('admin.layout.sidebar')
|
|
||||||
@yield('content')
|
|
||||||
</main>
|
|
||||||
|
|
||||||
<footer id="footer">
|
|
||||||
@include('admin.layout.footer')
|
|
||||||
</footer>
|
|
||||||
|
|
||||||
|
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.1/moment.min.js"></script>
|
|
||||||
|
|
||||||
<!-- General JS Scripts -->
|
|
||||||
<script src="{{ asset('assets/modules/jquery.min.js') }}"></script>
|
|
||||||
<script src="{{ asset('assets/modules/popper.js') }}"></script>
|
|
||||||
<script src="{{ asset('assets/modules/tooltip.js') }}"></script>
|
|
||||||
<script src="{{ asset('assets/modules/bootstrap/js/bootstrap.min.js') }}"></script>
|
|
||||||
<script src="{{ asset('assets/modules/nicescroll/jquery.nicescroll.min.js') }}"></script>
|
|
||||||
<script src="{{ asset('assets/modules/moment.min.js') }}"></script>
|
|
||||||
<script src="{{ asset('assets/js/stisla.js') }}"></script>
|
|
||||||
<script src="//cdn.jsdelivr.net/npm/sweetalert2@11"></script>
|
|
||||||
|
|
||||||
<!-- JS Libraies -->
|
|
||||||
<script src="{{ asset('assets/modules/jquery.sparkline.min.js') }}"></script>
|
|
||||||
<script src="{{ asset('assets/modules/owlcarousel2/dist/owl.carousel.min.js') }}"></script>
|
|
||||||
<script src="{{ asset('assets/modules/summernote/summernote-bs4.js') }}"></script>
|
|
||||||
<script src="{{ asset('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>
|
|
||||||
|
|
||||||
<!-- Page Specific JS File -->
|
|
||||||
<script src="{{ asset('assets/js/page/modules-datatables.js') }}"></script>
|
|
||||||
|
|
||||||
<!-- Template JS File -->
|
|
||||||
<script src="{{ asset('assets/js/scripts.js') }}"></script>
|
|
||||||
<script src="{{ asset('assets/js/custom.js') }}"></script>
|
|
||||||
<script src="https://cdn.jsdelivr.net/npm/daterangepicker@3.1.0/daterangepicker.min.js"></script>
|
|
||||||
<script src="{{ asset('assets/js/tablesort.js') }}"></script>
|
|
||||||
{{-- <script src="{{ asset('assets/js/main.js') }}"></script> --}}
|
|
||||||
<script>
|
|
||||||
document.addEventListener('DOMContentLoaded', function() {
|
|
||||||
const alertCloseButtons = document.querySelectorAll('.alert .btn-close');
|
|
||||||
|
|
||||||
alertCloseButtons.forEach(function(button) {
|
|
||||||
button.addEventListener('click', function() {
|
|
||||||
const alert = this.closest('.alert');
|
|
||||||
if (alert) {
|
|
||||||
alert.remove();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
|
|
||||||
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
|
||||||
</body>
|
|
||||||
|
|
||||||
</html>
|
|
@ -1,37 +0,0 @@
|
|||||||
<div class="main-sidebar sidebar-style-2">
|
|
||||||
<aside id="sidebar-wrapper">
|
|
||||||
<div class="sidebar-brand">
|
|
||||||
<a href="index.html">REKBER</a>
|
|
||||||
</div>
|
|
||||||
<div class="sidebar-brand sidebar-brand-sm">
|
|
||||||
<a href="index.html">RK</a>
|
|
||||||
</div>
|
|
||||||
<ul class="sidebar-menu">
|
|
||||||
<li class="menu-header">Dashboard</li>
|
|
||||||
|
|
||||||
<li><a class="nav-link active" href="/"><i class="fas fa-fire"></i> <span>Dashboard</span></a></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="/history_transaction"><i
|
|
||||||
class="fas fa-columns"></i><span>Transaction</span></a></li>
|
|
||||||
{{-- <li class="dropdown">
|
|
||||||
<a href="#" class="nav-link has-dropdown" data-toggle="dropdown"><i class="fas fa-columns"></i>
|
|
||||||
<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>
|
|
||||||
</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>
|
|
||||||
</div>
|
|
@ -1,62 +0,0 @@
|
|||||||
@extends('Admin.layout.main')
|
|
||||||
@section('content')
|
|
||||||
<div class="main-content">
|
|
||||||
<section class="section">
|
|
||||||
<div class="section-header">
|
|
||||||
<h1>Profile</h1>
|
|
||||||
</div>
|
|
||||||
<div class="col-12">
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-head">
|
|
||||||
<img id="card_head" src="/assets/images/sampul.jpg"></img>
|
|
||||||
</div>
|
|
||||||
{{-- <div class="card-head"></div> --}}
|
|
||||||
<div class="image-crop">
|
|
||||||
<img id="avatar" src="/assets/images/dashboard/img_1.jpg"></img>
|
|
||||||
</div><br>
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-lg-12">
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-md-6">
|
|
||||||
<div>
|
|
||||||
<strong style="font-size: 20px; color: black;"><b>Tsalsabila Jilhan
|
|
||||||
Haura</b></strong><br>
|
|
||||||
Super Admin<br>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-md">
|
|
||||||
<div>
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-1"><i class="fas fa-id-card"></i></div>
|
|
||||||
<div class="col-lg-9 col-md-8">94894893848</div>
|
|
||||||
</div>
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-1"><i class="fas fa-user"></i></div>
|
|
||||||
<div class="col-lg-9 col-md-8">jilhan Haura</div>
|
|
||||||
</div>
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-1"><i class="fas fa-user-tag"></i></div>
|
|
||||||
<div class="col-lg-9 col-md-8">Super Admin</div>
|
|
||||||
</div>
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-1"><i class="fas fa-map-marker-alt"></i></div>
|
|
||||||
<div class="col-lg-9 col-md-8">Jl simpang komplek polda</div>
|
|
||||||
</div>
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-1"><i class="fas fa-phone"></i></div>
|
|
||||||
<div class="col-lg-9 col-md-8">+62 1209 0120 02</div>
|
|
||||||
</div>
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-1"><i class="fas fa-envelope"></i></div>
|
|
||||||
<div class="col-lg-9 col-md-8">jilhan@gmail.com</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
</div>
|
|
||||||
@endsection
|
|
@ -1,110 +0,0 @@
|
|||||||
@extends('Admin.layout.main')
|
|
||||||
@section('content')
|
|
||||||
<div class="main-content">
|
|
||||||
<section class="section">
|
|
||||||
<div class="section profile">
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-xl-4">
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-body profile-card pt-4 d-flex flex-column align-items-center">
|
|
||||||
<img src="/assets/img/avatar/avatar-6.png" alt="Profile"
|
|
||||||
class="rounded-circle profile-img-preview shadow"
|
|
||||||
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 class="col-xl-8">
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-body pt-3">
|
|
||||||
<!-- Bordered Tabs -->
|
|
||||||
<ul class="nav nav-tabs nav-tabs-bordered">
|
|
||||||
|
|
||||||
<li class="nav-item">
|
|
||||||
<button class="nav-link active" data-bs-toggle="tab"
|
|
||||||
data-bs-target="#profile-overview">Overview</button>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<div class="tab-content pt-2">
|
|
||||||
|
|
||||||
<div class="tab-pane fade show active profile-overview" id="profile-overview">
|
|
||||||
<h5 class="card-title">About</h5>
|
|
||||||
<p class="font-weight-italic justified-text">Lorem, ipsum dolor sit amet consectetur
|
|
||||||
adipisicing
|
|
||||||
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 class="row">
|
|
||||||
<div class="col-lg-3 col-md-4 label ">Full Name</div>
|
|
||||||
<div class="col-lg-9 col-md-8">JIlhan Haura</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-lg-3 col-md-4 label">Role</div>
|
|
||||||
<div class="col-lg-9 col-md-8">
|
|
||||||
Super-Admin
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-lg-3 col-md-4 label">Address</div>
|
|
||||||
<div class="col-lg-9 col-md-8">Jl simpang komplek polda</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-lg-3 col-md-4 label">Phone</div>
|
|
||||||
<div class="col-lg-9 col-md-8">0345893853</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><!-- End Bordered Tabs -->
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
@endsection
|
|
@ -1,50 +1,74 @@
|
|||||||
@extends('Admin.layout.main')
|
@extends('layouts.main')
|
||||||
@section('content')
|
@section('content')
|
||||||
<div class="main-content">
|
<div class="main-content">
|
||||||
<section class="section">
|
<section class="section">
|
||||||
<div class="section-header">
|
<div class="section-header">
|
||||||
<h1>Detail</h1>
|
<h1>Detail</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">Refund</div>
|
<div class="breadcrumb-item"><a href="{{ route('admin-refund.index') }}">Refund</a></div>
|
||||||
<div class="breadcrumb-item">History</div>
|
|
||||||
<div class="breadcrumb-item">Detail</div>
|
<div class="breadcrumb-item">Detail</div>
|
||||||
</div>
|
</div>
|
||||||
</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)
|
|
||||||
<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>Bukti Foto/Video</strong></p>
|
||||||
<img src="assets/images/dashboard/img_2.jpg" alt="Return Image" width="300">
|
@foreach ($descriptions as $description)
|
||||||
<img src="assets/images/dashboard/img_3.jpg" alt="Return Image" width="300">
|
@if ($description->type == 'image')
|
||||||
<img src="assets/images/dashboard/img_4.jpg" alt="Return Image" width="300"><br><br>
|
<img src="{{ asset('storage/refund-image/' . $description->filename) }}"
|
||||||
<p><strong>ID Order:</strong> {{ $DetailRefund['orderId'] }}</p>
|
alt="Return Image" width="300">
|
||||||
<p><strong>Customer Name:</strong> {{ $DetailRefund['customer'] }}</p>
|
@endif
|
||||||
<p><strong>Seller Name:</strong> {{ $DetailRefund['seller'] }}</p>
|
@if ($description->type == 'videos')
|
||||||
<p><strong>Total:</strong> {{ $DetailRefund['total'] }}</p>
|
<video src="{{ asset('storage/refund-video/' . $description->filename) }}"
|
||||||
<p><strong>Due Date:</strong> {{ $DetailRefund['date'] }}</p>
|
alt="Return Image" width="300">
|
||||||
<p class="justified-text"><strong>Reason Complaint:</strong>
|
@endif
|
||||||
{{ $DetailRefund['complaint'] }}</p>
|
@endforeach
|
||||||
|
<br><br>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-2"><strong>ID Order</strong></div>
|
||||||
|
<div class="col">{{ $refund->order_id }}</div>
|
||||||
|
</div><br>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-2"><strong>Customer Name</strong></div>
|
||||||
|
<div class="col">
|
||||||
|
{{ $refund->transaction->data_pembeli->nama_depan . ' ' . $refund->transaction->data_pembeli->nama_belakang }}
|
||||||
|
</div>
|
||||||
|
</div><br>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-2"><strong>Seller Name</strong></div>
|
||||||
|
<div class="col">
|
||||||
|
{{ $refund->transaction->data_penjual->nama_depan . ' ' . $refund->transaction->data_penjual->nama_belakang }}
|
||||||
|
</div>
|
||||||
|
</div><br>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-2"><strong>Total</strong></div>
|
||||||
|
<div class="col">{{ $refund->total }}</div>
|
||||||
|
</div><br>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-2"><strong>Batas Pengajuan Refund</strong></div>
|
||||||
|
<div class="col">{{ $refund->due_date }}</div>
|
||||||
|
</div><br>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-2"><strong>Alasan Komplain</strong></div>
|
||||||
|
<div class="col justified-text">{{ $refund->complaint }}</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="d-flex justify-content-center">
|
@if ($refund)
|
||||||
|
<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="{{ route('admin-refund.index') }}" class="btn btn-danger mx-1">Decline</a>
|
||||||
</div>
|
</div>
|
||||||
|
@endif
|
||||||
|
|
||||||
</div><br>
|
|
||||||
</div>
|
</div>
|
||||||
@endforeach
|
<br>
|
||||||
|
</div>
|
||||||
|
|
||||||
</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
|
|
@ -1,55 +1,61 @@
|
|||||||
@extends('admin.layout.main')
|
@extends('layouts.main')
|
||||||
@section('content')
|
@section('content')
|
||||||
<div class="main-content">
|
<div class="main-content">
|
||||||
<section class="section">
|
<section class="section">
|
||||||
<div class="section-header">
|
<div class="section-header">
|
||||||
<h1>History Refund</h1>
|
<h1>Refund</h1>
|
||||||
<div class="section-header-breadcrumb">
|
<div class="section-header-breadcrumb">
|
||||||
<div class="breadcrumb-item active"><a href="{{route('index')}}">Dashboard</a></div>
|
<div class="breadcrumb-item active"><a href="{{ route('admin.index') }}">Dashboard</a></div>
|
||||||
<div class="breadcrumb-item">Refund</div>
|
<div class="breadcrumb-item">Refund</div>
|
||||||
<div class="breadcrumb-item">History</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-12">
|
<div class="col-12">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div class="table-responsive">
|
<div class="table-responsive">
|
||||||
<table class="table table-striped" id="table-2">
|
<table class="table table-striped" id="table-4">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th class="text-center">
|
<th class="text-center">
|
||||||
#
|
#
|
||||||
</th>
|
</th>
|
||||||
<th>Order ID</th>
|
<th>ID</th>
|
||||||
<th>Customer</th>
|
<th>Pembeli</th>
|
||||||
<th>Seller</th>
|
<th>Nama Barang</th>
|
||||||
|
<th>Penjual</th>
|
||||||
<th>Total</th>
|
<th>Total</th>
|
||||||
<th>Due Date</th>
|
<th>Tanggal Pengajuan</th>
|
||||||
|
<th>Batas Konfirmasi</th>
|
||||||
<th>Status</th>
|
<th>Status</th>
|
||||||
<th>Action</th>
|
<th>Aksi</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
@foreach ($refunds as $refund)
|
@foreach ($refunds as $refund)
|
||||||
<tr>
|
<tr>
|
||||||
<td>{{ $loop->iteration }}</td>
|
<td>{{ $loop->iteration }}</td>
|
||||||
<td class="font-weight-600">{{ $refund->orderId }}</a></td>
|
<td>{{ $refund->id }}</td>
|
||||||
<td class="font-weight-600">{{ $refund['customer'] }}</td>
|
<td>{{ $refund->transaction->data_pembeli->nama_depan }}
|
||||||
<td class="font-weight-600">{{ $refund['seller'] }}</td>
|
</td>
|
||||||
<td class="font-weight-600">{{ $refund['total'] }}</td>
|
<td>{{ $refund->transaction->nama_barang }}
|
||||||
<td>{{ $refund['date'] }}</td>
|
</td>
|
||||||
<td>
|
<td>{{ $refund->transaction->data_penjual->nama_depan }}
|
||||||
<div class="badge {{ $refund->status == 'Partial Refund' ? 'badge-succes' : ($refund->status == 'Pending' ? 'badge-info' : 'badge-warning') }}">{{ $refund->status }}</div>
|
</td>
|
||||||
|
<td>{{ $refund->total }}</td>
|
||||||
|
<td>{{ $refund->created_at }}</td>
|
||||||
|
<td>{{ $refund->due_date }}</td>
|
||||||
|
<td><a href="#" data-toggle="modal" data-target="#modalKeteranganStatus"
|
||||||
|
class="badge {{ $refund->status == 'partial refund' ? 'badge-succes' : ($refund->status == 'pending' ? 'badge-warning' : 'badge-danger') }}">{{ ucwords($refund->status) }}</a>
|
||||||
</td>
|
</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"
|
||||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||||
Action
|
Aksi
|
||||||
</button>
|
</button>
|
||||||
<div class="dropdown-menu">
|
<div class="dropdown-menu">
|
||||||
<a class="dropdown-item" href="/detail_refund">Details</a>
|
<a class="dropdown-item"
|
||||||
<a class="dropdown-item" href="#">Delete</a>
|
href="{{ route('admin-refund.show', $refund->id) }}">Detail</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
@ -61,4 +67,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
</section>
|
||||||
|
</div>
|
||||||
|
@extends('admin.transaction.modal-keterangan-status')
|
||||||
@endsection
|
@endsection
|
||||||
|
@ -23,7 +23,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<button type="button" class="btn btn-danger" data-dismiss="modal">Cancel</button>
|
<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>
|
<a href="{{ route('admin-refund.index') }}" class="btn btn-primary mx-1">Accept Refund</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -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>
|
|
@ -1,70 +1,95 @@
|
|||||||
@extends('admin.layout.main')
|
@extends('layouts.main')
|
||||||
@section('content')
|
@section('content')
|
||||||
<div class="main-content">
|
|
||||||
<section class="section">
|
|
||||||
<div class="section-header">
|
|
||||||
<h1>Setting</h1>
|
|
||||||
<div class="section-header-breadcrumb">
|
|
||||||
<div class="breadcrumb-item active"><a href="{{ route('index') }}">Dashboard</a></div>
|
|
||||||
<div class="breadcrumb-item">Setting</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-12">
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-body">
|
|
||||||
<div class="d-flex justify-content-end mb-3">
|
|
||||||
<a class="btn btn-success active" href="#" data-toggle="modal"
|
|
||||||
data-target="#ModalSetting">Add Data</a>
|
|
||||||
</div>
|
|
||||||
<div class="table-responsive">
|
|
||||||
<table class="table table-striped" id="table-2">
|
|
||||||
<thead>
|
|
||||||
<tr>
|
|
||||||
<th>#</th>
|
|
||||||
<th>Bulan</th>
|
|
||||||
<th>Tahun</th>
|
|
||||||
<th>Persentase (%)</th>
|
|
||||||
<th>Status</th>
|
|
||||||
<th>Action</th>
|
|
||||||
</tr>
|
|
||||||
</thead>
|
|
||||||
<tbody>
|
|
||||||
@foreach ($settings as $setting)
|
|
||||||
<tr>
|
|
||||||
<td>{{ $loop->iteration }}</td>
|
|
||||||
<td>{{ DateTime::createFromFormat('!m', $setting->bulan)->format('F') }}</td>
|
|
||||||
<td>{{ $setting->tahun }}</td>
|
|
||||||
<td>{{ $setting->persentase }}</td>
|
|
||||||
{{-- <td hidden>{{$setting->id}}</td> --}}
|
|
||||||
<td>
|
|
||||||
<div
|
|
||||||
class="badge {{ $setting->status == 'Active' ? 'badge-success' : 'badge-danger' }}">
|
|
||||||
{{ $setting->status }}</div>
|
|
||||||
</td>
|
|
||||||
<td>
|
|
||||||
<label class="switch">
|
|
||||||
<input type="checkbox" @if ($setting->status === 'Active') checked @endif
|
|
||||||
data-id="{{ $setting->id }}">
|
|
||||||
<span class="slider round" data-on-text="Yes" data-off-text="No"
|
|
||||||
id="checkOnOf"></span>
|
|
||||||
</label>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
@endforeach
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
</div>
|
|
||||||
@include('admin.setting.modal-add-setting')
|
|
||||||
<script>
|
<script>
|
||||||
$(document).ready(function() {
|
$(document).ready(function() {
|
||||||
const table = $('#table-2').DataTable(); // Inisialisasi DataTable
|
|
||||||
|
|
||||||
$('#table-2').on('change', '.switch input[type="checkbox"]', function() {
|
$("#bulan").select2();
|
||||||
|
|
||||||
|
$('#tambahModal').click(function() {
|
||||||
|
$('#ModalSetting').modal('show');
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#buttonTanya').click(function() {
|
||||||
|
$('#ModalSetting').modal('hide');
|
||||||
|
$('#modalTanya').modal('show');
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#closeModal').click(function() {
|
||||||
|
$('#ModalSetting').modal('show');
|
||||||
|
$('#modalTanya').modal('hide');
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#formTambahSetting').on('submit', function(e) {
|
||||||
|
e.preventDefault();
|
||||||
|
|
||||||
|
let form = this;
|
||||||
|
|
||||||
|
|
||||||
|
if (!form.checkValidity()) {
|
||||||
|
form.reportValidity();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
let formData = new FormData(this);
|
||||||
|
|
||||||
|
Swal.fire({
|
||||||
|
html: '<div class="mt-3"><lord-icon src="https://cdn.lordicon.com/etwtznjn.json" trigger="loop" colors="primary:#0ab39c,secondary:#405189" style="width:120px;height:120px"></lord-icon><div class="mt-4 pt-2 fs-15"><h4>Form Anda sedang diproses!</h4><p class="text-muted mx-4 mb-0">Mohon tunggu...</p></div></div>',
|
||||||
|
allowEscapeKey: false,
|
||||||
|
allowOutsideClick: false,
|
||||||
|
didOpen: () => {
|
||||||
|
Swal.showLoading();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
if (formData) {
|
||||||
|
$.ajax({
|
||||||
|
type: 'POST',
|
||||||
|
url: "{{ route('admin-setting.store') }}",
|
||||||
|
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',
|
||||||
|
position: 'center',
|
||||||
|
}).then(function() {
|
||||||
|
Swal.close();
|
||||||
|
if (response.status) {
|
||||||
|
location.reload();
|
||||||
|
}
|
||||||
|
console.log(response);
|
||||||
|
});
|
||||||
|
},
|
||||||
|
error: function(error) {
|
||||||
|
console.log(error.responseText)
|
||||||
|
|
||||||
|
var response = JSON.parse(error.responseText);
|
||||||
|
|
||||||
|
var errorMessage = '';
|
||||||
|
|
||||||
|
for (var key in response.errors) {
|
||||||
|
if (response.errors.hasOwnProperty(key)) {
|
||||||
|
errorMessage += response.errors[key][0] + '<br>';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Swal.fire({
|
||||||
|
position: 'center',
|
||||||
|
icon: 'error',
|
||||||
|
title: 'Terjadi Kesalahan',
|
||||||
|
html: errorMessage,
|
||||||
|
showConfirmButton: true
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
const table = $('#table-5').DataTable(); // Inisialisasi DataTable
|
||||||
|
|
||||||
|
$('#table-5').on('change', '.switch input[type="checkbox"]', function() {
|
||||||
const parentRow = $(this).closest('tr');
|
const parentRow = $(this).closest('tr');
|
||||||
const csrfToken = $('meta[name="csrf-token"]').attr('content');
|
const csrfToken = $('meta[name="csrf-token"]').attr('content');
|
||||||
const statusBadge = parentRow.find('.badge');
|
const statusBadge = parentRow.find('.badge');
|
||||||
@ -75,11 +100,17 @@
|
|||||||
|
|
||||||
const rowData = table.row(parentRow).data(); // Dapatkan data baris dari DataTable
|
const rowData = table.row(parentRow).data(); // Dapatkan data baris dari DataTable
|
||||||
|
|
||||||
|
$.ajaxSetup({
|
||||||
|
headers: {
|
||||||
|
'X-CSRF-TOKEN': csrfToken
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
$.ajax({
|
$.ajax({
|
||||||
url: "{{ route('admin-setting.update', ':admin_setting') }}".replace(':admin_setting', dataId),
|
url: "{{ route('admin-setting.active-setting') }}",
|
||||||
type: 'PUT',
|
type: 'PUT',
|
||||||
data: {
|
data: {
|
||||||
_token: csrfToken,
|
id: dataId,
|
||||||
},
|
},
|
||||||
success: function(response) {
|
success: function(response) {
|
||||||
Swal.fire({
|
Swal.fire({
|
||||||
@ -114,4 +145,66 @@
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
<div class="main-content">
|
||||||
|
<section class="section">
|
||||||
|
<div class="section-header">
|
||||||
|
<h1>Kebijakan Keuntungan</h1>
|
||||||
|
<div class="section-header-breadcrumb">
|
||||||
|
<div class="breadcrumb-item active"><a href="{{ route('admin.index') }}">Dashboard</a></div>
|
||||||
|
<div class="breadcrumb-item">Kebijakan Keuntungan</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-12">
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-body">
|
||||||
|
<div class="d-flex justify-content-end mb-3">
|
||||||
|
<a class="btn btn-success active" href="#" id="tambahModal">Tambah Data Kebijakan</a>
|
||||||
|
</div>
|
||||||
|
<div class="table-responsive">
|
||||||
|
<table class="table table-striped" id="table-5">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th class="text-center">
|
||||||
|
#
|
||||||
|
</th>
|
||||||
|
<th>Bulan</th>
|
||||||
|
<th>Tahun</th>
|
||||||
|
<th>Persentase (%)</th>
|
||||||
|
<th>Status</th>
|
||||||
|
<th>Action</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
@foreach ($settings as $setting)
|
||||||
|
<tr>
|
||||||
|
<td>{{ $loop->iteration }}</td>
|
||||||
|
<td>{{ DateTime::createFromFormat('n', $setting->bulan)->format('F') }}</td>
|
||||||
|
<td>{{ $setting->tahun }}</td>
|
||||||
|
<td>{{ $setting->persentase }}</td>
|
||||||
|
<td>
|
||||||
|
<div
|
||||||
|
class="badge {{ $setting->status == 'Active' ? 'badge-success' : 'badge-danger' }}">
|
||||||
|
{{ $setting->status }}
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
<label class="switch">
|
||||||
|
<input type="checkbox" @if ($setting->status === 'Active') checked @endif
|
||||||
|
data-id="{{ $setting->id }}">
|
||||||
|
<span class="slider round" data-on-text="Yes" data-off-text="No"
|
||||||
|
id="checkOnOf"></span>
|
||||||
|
</label>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
@endforeach
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
</div>
|
||||||
|
@include('admin.setting.modal-add-setting')
|
||||||
|
@include('admin.setting.modal-tanya')
|
||||||
@endsection
|
@endsection
|
||||||
|
@ -2,33 +2,55 @@
|
|||||||
aria-hidden="true">
|
aria-hidden="true">
|
||||||
<div class="modal-dialog modal-dialog-centered" role="document">
|
<div class="modal-dialog modal-dialog-centered" role="document">
|
||||||
<div class="modal-content">
|
<div class="modal-content">
|
||||||
{{-- <div class="modal-header">
|
<div class="modal-header">
|
||||||
<h2 class="modal-title" id="exampleModalLongTitle">Tracking Information</h2>
|
<h2 class="modal-title" id="exampleModalLongTitle">Tambah Kebijakan</h2>
|
||||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
|
<button type="button" class="close" aria-label="Close" id="buttonTanya">
|
||||||
<span aria-hidden="true">×</span>
|
<span aria-hidden="true">?</span>
|
||||||
</button>
|
</button>
|
||||||
</div> --}}
|
</div>
|
||||||
<div class="modal-body">
|
<div class="modal-body">
|
||||||
<div class="section-body">
|
<div class="section-body">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-12">
|
<div class="col-12">
|
||||||
<form action="{{ route('admin-setting.store') }}" method="POST">
|
<form action="javascript:void(0);" id="formTambahSetting">
|
||||||
@csrf
|
@csrf
|
||||||
<div class="card-header">
|
|
||||||
<h4>Tambah data kebijakan persentase keuntungan</h4>
|
|
||||||
</div>
|
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label>Bulan</label>
|
<label>Bulan</label>
|
||||||
<input type="month" class="form-control" name="bulan_tahun" required>
|
<br>
|
||||||
|
<select class="form-control" style="width: 100%" id="bulanSetting"
|
||||||
|
name="bulan" required>
|
||||||
|
<option selected disabled>Pilih bulan</option>
|
||||||
|
<option value="1">Januari</option>
|
||||||
|
<option value="2">Februari</option>
|
||||||
|
<option value="3">Maret</option>
|
||||||
|
<option value="4">April</option>
|
||||||
|
<option value="5">May</option>
|
||||||
|
<option value="6">Juni</option>
|
||||||
|
<option value="7">Juli</option>
|
||||||
|
<option value="8">Agustus</option>
|
||||||
|
<option value="9">September</option>
|
||||||
|
<option value="10">Oktober</option>
|
||||||
|
<option value="11">November</option>
|
||||||
|
<option value="12">Desember</option>
|
||||||
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label>Persentase</label>
|
<label>Tahun</label>
|
||||||
<input type="number" class="form-control" name="persentase" required>
|
<input type="text" class="form-control" name="tahun" id="tahunSetting"
|
||||||
|
oninput="this.value = this.value.replace(/[^0-9]/g, '').replace(/(\..*?)\..*/g, '$1');"
|
||||||
|
required placeholder="Masukan tahun">
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label>Persentase (%)</label>
|
||||||
|
<input type="text" class="form-control" name="persentase"
|
||||||
|
id="persentaseSetting"
|
||||||
|
oninput="this.value = this.value.replace(/[^0-9.]/g, '').replace(/(\..*?)\..*/g, '$1');"
|
||||||
|
required>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</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="simpanSetting" type="submit">Simpan</button>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
|
20
resources/views/Admin/setting/modal-tanya.blade.php
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
<div class="modal fade" id="modalTanya" tabindex="-1" aria-labelledby="staticBackdropLabel" aria-hidden="true">
|
||||||
|
<div class="modal-dialog modal-dialog-centered" role="document">
|
||||||
|
<div class="modal-content">
|
||||||
|
<div class="modal-header d-flex justify-content-center">
|
||||||
|
<h3 class="modal-title fs-5" id="staticBackdropLabel">Cara Kerja Tambah/Perbarui Kebijakan</h3>
|
||||||
|
<button type="button" class="close" aria-label="Close" id="closeModal">
|
||||||
|
<span aria-hidden="true">×</span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
<div class="modal-body">
|
||||||
|
<div class="mb-3">
|
||||||
|
<h5>Tambah atau Perbarui</h5>
|
||||||
|
<p class="form-control">Anda bisa memperbarui persentase data dengan menyamai data bulan dan tahun.
|
||||||
|
Hal ini tidak akan mengubah data sebelumnya.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</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 --}}
|
|
@ -1,155 +1,169 @@
|
|||||||
@extends('Admin.layout.main')
|
@extends('layouts.main')
|
||||||
@section('content')
|
@section('content')
|
||||||
<div class="main-content">
|
<div class="main-content">
|
||||||
<section class="section">
|
<section class="section">
|
||||||
<div class="section-header">
|
<div class="col-lg-12 grid-margin stretch-card">
|
||||||
<h1>Detail Transaction</h1>
|
<div class="card">
|
||||||
<div class="section-header-breadcrumb">
|
<div class="card-body">
|
||||||
<div class="breadcrumb-item active"><a href="/">Dashboard</a></div>
|
<div class="d-flex justify-content-center">
|
||||||
<div class="breadcrumb-item">Transaction</div>
|
<h2 class="mb-4"> Informasi Pesanan</h2>
|
||||||
<div class="breadcrumb-item">Details</div>
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="section-body">
|
<div class="section-body">
|
||||||
<h2 class="section-title">Jilhan</h2>
|
|
||||||
|
<div class="row mt-sm-4">
|
||||||
|
<div class="col-sm-12 col-md-12 col-lg-5">
|
||||||
|
<h2 class="section-title">
|
||||||
|
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>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row mt-sm-4">
|
|
||||||
<div class="col-12 col-md-12 col-lg-3">
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-12">
|
<div class="col-12">
|
||||||
<div class="activities">
|
<div class="activities">
|
||||||
|
{{-- Awal --}}
|
||||||
|
@forelse ($trackings as $tracking)
|
||||||
<div class="activity">
|
<div class="activity">
|
||||||
<div class="activity-icon bg-primary text-white shadow-primary">
|
<div
|
||||||
<i class="fas fa-comment-alt"></i>
|
class="activity-icon {{ $tracking->background }} text-white shadow-primary">
|
||||||
|
<i class="{{ $tracking->judul }}" style="font-size: 30px;"
|
||||||
|
aria-hidden="true"></i>
|
||||||
</div>
|
</div>
|
||||||
<div class="activity-detail">
|
<div class="activity-detail">
|
||||||
<div class="mb-2">
|
<div class="mb-2">
|
||||||
<span class="text-job text-primary">August 21, 2023, 8:30:15 am</span>
|
<span
|
||||||
|
class="text-job text-primary">{{ date('F j, Y, g:i:s a', strtotime($tracking->created_at)) }}</span>
|
||||||
</div>
|
</div>
|
||||||
<p>User Created Trade</p>
|
<p>{{ $tracking->deskripsi }}</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@empty
|
||||||
<div class="activity">
|
<div class="activity">
|
||||||
<div class="activity-icon bg-primary text-white shadow-primary">
|
<div class="activity-icon bg-primary text-white shadow-primary">
|
||||||
<i class="fas fa-arrows-alt"></i>
|
<i class="fas fa-ban" style="font-size: 36px;"></i>
|
||||||
</div>
|
</div>
|
||||||
<div class="activity-detail">
|
<div class="activity-detail">
|
||||||
<div class="mb-2">
|
<div class="mb-2">
|
||||||
<span class="text-job text-primary">August 22, 2023, 8:30:15 am</span>
|
<span class="text-job text-primary">--</span>
|
||||||
</div>
|
</div>
|
||||||
<p>System Notified Admin</p>
|
<p>Tidak ada histori</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="activity">
|
@endforelse
|
||||||
<div class="activity-icon bg-primary text-white shadow-primary">
|
{{-- Akhir --}}
|
||||||
<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>
|
||||||
|
<div class="col-lg-7 col-sm-12">
|
||||||
|
<div class="section-body">
|
||||||
|
<div class="invoice">
|
||||||
|
<div class="invoice-print">
|
||||||
|
<h2 style="margin-bottom: -1em">REKBER</h2>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-lg-12">
|
||||||
|
<hr>
|
||||||
|
<div class="section-title">Keterangan</div>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-6">
|
||||||
|
<address>
|
||||||
|
<strong>Pembeli:</strong><br>
|
||||||
|
{{ ucwords(strtolower($transaction->data_pembeli->nama_depan . ' ' . $transaction->data_pembeli->nama_belakang)) }}<br>
|
||||||
|
{{ ucwords(strtolower($transaction->data_pembeli->alamat)) }}<br>
|
||||||
|
{{ ucwords(strtolower($transaction->data_pembeli->getVillageName() . ', ' . $transaction->data_pembeli->getDistrictName())) }}<br>
|
||||||
|
{{ ucwords(strtolower($transaction->data_pembeli->getCityName() . ', ' . $transaction->data_pembeli->getProvinceName())) }}
|
||||||
|
</address>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-6 text-md-right">
|
||||||
|
<address>
|
||||||
|
<strong>Penjual:</strong><br>
|
||||||
|
{{ ucwords(strtolower($transaction->data_penjual->nama_depan . ' ' . $transaction->data_penjual->nama_belakang)) }}<br>
|
||||||
|
{{ ucwords(strtolower($transaction->data_penjual->alamat)) }}<br>
|
||||||
|
{{ ucwords(strtolower($transaction->data_penjual->getVillageName() . ', ' . $transaction->data_penjual->getDistrictName())) }}<br>
|
||||||
|
{{ ucwords(strtolower($transaction->data_penjual->getCityName() . ', ' . $transaction->data_penjual->getProvinceName())) }}
|
||||||
|
</address>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-12 col-md-12 col-lg-9">
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-body">
|
|
||||||
<div class="card-title pb-2 m-0">
|
|
||||||
<h4>Transaction Detail</h4>
|
|
||||||
</div>
|
|
||||||
@foreach ($detail_transaction as $detailTransaction)
|
|
||||||
<div class="d-flex flex-column">
|
|
||||||
<div class="data-field">
|
|
||||||
<span class="fw-bold text-start">Order Details</span>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
<div class="data-field">
|
|
||||||
<span class="fw-bold text-start">ID Transaction</span>
|
|
||||||
<span class="text-muted ">{{ $detailTransaction['idTransaction'] }}</span>
|
|
||||||
</div>
|
|
||||||
<hr class="border border-1 opacity-75 w-100">
|
|
||||||
<div class="data-field">
|
|
||||||
<span class="fw-bold text-start">Side</span>
|
|
||||||
<span class="text-muted ">{{ $detailTransaction['side'] }}</span>
|
|
||||||
</div>
|
|
||||||
<div class="data-field">
|
|
||||||
<span class="fw-bold text-start">Market Pair</span>
|
|
||||||
<span class="text-muted ">{{ $detailTransaction['marketPair'] }}</span>
|
|
||||||
</div>
|
|
||||||
<div class="data-field">
|
|
||||||
<span class="fw-bold text-start">Email</span>
|
|
||||||
<span class="text-muted ">{{ $detailTransaction['email'] }}</span>
|
|
||||||
</div>
|
|
||||||
<div class="data-field">
|
|
||||||
<span class="fw-bold text-start">Amount Transaction</span>
|
|
||||||
<span class="text-muted ">{{ $detailTransaction['amountTransaction'] }}</span>
|
|
||||||
</div>
|
|
||||||
<div class="data-field">
|
|
||||||
<span class="fw-bold text-start">Fee Transaction</span>
|
|
||||||
<span class="text-muted ">{{ $detailTransaction['feeTransaction'] }}</span>
|
|
||||||
</div>
|
|
||||||
<div class="data-field">
|
|
||||||
<span class="fw-bold text-start">Total</span>
|
|
||||||
<span class="text-muted ">{{ $detailTransaction['total'] }}</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">
|
|
||||||
<h5>Payment</h5>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="data-field">
|
<div class="row mt-4">
|
||||||
<span class="fw-bold text-start">Payment Detail</span>
|
<div class="col-md-12">
|
||||||
<span class="text-muted ">{{ $detailTransaction['paymentDetail'] }}</span>
|
<div class="section-title">Rangkuman Transaksi</div>
|
||||||
|
<p class="section-lead">Semua barang yang didaftarkan dalam transaksi.</p>
|
||||||
|
<div class="table-responsive">
|
||||||
|
<table class="table table-striped table-hover table-md">
|
||||||
|
<tr>
|
||||||
|
<th data-width="40">#</th>
|
||||||
|
<th>Nama Barang</th>
|
||||||
|
<th class="text-center">Harga</th>
|
||||||
|
<th class="text-center">Jumlah</th>
|
||||||
|
<th class="text-right">Total</th>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>1</td>
|
||||||
|
<td>{{ $transaction->nama_barang }}</td>
|
||||||
|
<td class="text-center">{{ $transaction->harga_barang }}</td>
|
||||||
|
<td class="text-center">{{ $transaction->jumlah_barang }}</td>
|
||||||
|
<td class="text-right">
|
||||||
|
{{ $transaction->harga_barang * $transaction->jumlah_barang }}
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
</div>
|
</div>
|
||||||
<div class="data-field">
|
<div class="row mt-4">
|
||||||
<span class="fw-bold text-start">Bank Name</span>
|
<div class="col-lg-8">
|
||||||
<span class="text-muted ">{{ $detailTransaction['bankName'] }}</span>
|
<div class="section-title">Payment Method</div>
|
||||||
|
<div class="images">
|
||||||
|
@if ($transaction->metode_pembayaran != null)
|
||||||
|
<img style="width: 20%; height: 20%;"
|
||||||
|
src="{{ asset('assets/img/metode_pembayaran/' . $transaction->metode_pembayaran . '.png') }}"
|
||||||
|
alt="{{ $transaction->metode_pembayaran }}">
|
||||||
|
@endif
|
||||||
</div>
|
</div>
|
||||||
<div class="data-field">
|
|
||||||
<span class="fw-bold text-start">Account Number</span>
|
|
||||||
<span class="text-muted ">{{ $detailTransaction['accountNumber'] }}</span>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="data-field">
|
<div class="col-lg-4 text-right">
|
||||||
<span class="fw-bold text-start">Status Transaction</span>
|
<div class="invoice-detail-item">
|
||||||
<span class="text-muted ">{{ $detailTransaction['statusTransaction'] }}</span>
|
<div class="invoice-detail-name">Subtotal</div>
|
||||||
|
<div class="invoice-detail-value">Rp
|
||||||
|
{{ number_format($transaction->total_harga, 2, ',', '.') }}
|
||||||
</div>
|
</div>
|
||||||
@endforeach
|
</div>
|
||||||
|
<div class="invoice-detail-item">
|
||||||
|
<div class="invoice-detail-name">Biaya Admin</div>
|
||||||
|
<div class="invoice-detail-value">
|
||||||
|
Rp
|
||||||
|
{{ number_format($transaction->total_keuntungan, 2, ',', '.') }}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<hr class="mt-2 mb-2">
|
||||||
|
<div class="invoice-detail-item">
|
||||||
|
<div class="invoice-detail-name">Total</div>
|
||||||
|
<div class="invoice-detail-value invoice-detail-value-lg">
|
||||||
|
Rp {{ number_format($transaction->total_bayar, 2, ',', '.') }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<hr>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
</div>
|
||||||
@endsection
|
@endsection
|
||||||
|
@ -1,30 +1,30 @@
|
|||||||
@extends('Admin.layout.main')
|
@extends('layouts.main')
|
||||||
@section('content')
|
@section('content')
|
||||||
<div class="main-content">
|
<div class="main-content">
|
||||||
<section class="section">
|
<section class="section">
|
||||||
<div class="section-header">
|
<div class="section-header">
|
||||||
<h1>History Transaction</h1>
|
<h1>Transaksi</h1>
|
||||||
<div class="section-header-breadcrumb">
|
<div class="section-header-breadcrumb">
|
||||||
<div class="breadcrumb-item active"><a href="{{route('index')}}">Dashboard</a></div>
|
<div class="breadcrumb-item active"><a href="{{ route('admin.index') }}">Dashboard</a></div>
|
||||||
<div class="breadcrumb-item">Transaction</div>
|
<div class="breadcrumb-item">Transaksi</div>
|
||||||
<div class="breadcrumb-item">History</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-12">
|
<div class="col-12">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div class="table-responsive">
|
<div class="table-responsive">
|
||||||
<table class="table table-striped" id="table-2">
|
<table class="table table-striped" id="table-4">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th class="text-center">
|
<th class="text-center">
|
||||||
#
|
#
|
||||||
</th>
|
</th>
|
||||||
<th>Order Id</th>
|
<th>ID</th>
|
||||||
<th>Customer</th>
|
<th>Pembeli</th>
|
||||||
<th>Seller</th>
|
<th>Penjual</th>
|
||||||
<th>Total</th>
|
<th>Total</th>
|
||||||
<th>Status</th>
|
<th>Tanggal Transaksi</th>
|
||||||
|
<th>Tanggal Update</th>
|
||||||
<th>Status</th>
|
<th>Status</th>
|
||||||
<th>Action</th>
|
<th>Action</th>
|
||||||
</tr>
|
</tr>
|
||||||
@ -32,24 +32,27 @@
|
|||||||
<tbody>
|
<tbody>
|
||||||
@foreach ($transactions as $transaction)
|
@foreach ($transactions as $transaction)
|
||||||
<tr>
|
<tr>
|
||||||
<td>{{ $transaction['no'] }}</td>
|
<td>{{ $loop->iteration }}</td>
|
||||||
<td><a href="#">{{ $transaction['orderId'] }}</a></td>
|
<td>{{ $transaction->id }}</td>
|
||||||
<td class="font-weight-600">{{ $transaction['customer'] }}</td>
|
<td>{{ $transaction->data_pembeli->nama_depan . ' ' . $transaction->data_pembeli->nama_belakang }}
|
||||||
<td class="font-weight-600">{{ $transaction['seller'] }}</td>
|
</td>
|
||||||
<td class="font-weight-600">{{ $transaction['total'] }}</td>
|
<td>{{ $transaction->data_penjual->nama_depan . ' ' . $transaction->data_penjual->nama_belakang }}
|
||||||
<td>{{ $transaction['date'] }}</td>
|
</td>
|
||||||
<td>
|
<td>Rp {{ number_format($transaction->total_bayar, 2, ',', '.') }}</td>
|
||||||
@php
|
<td>{{ $transaction->created_at }}</td>
|
||||||
$statusClass = '';
|
<td>{{ $transaction->updated_at }}</td>
|
||||||
if ($transaction['status'] === 'pending') {
|
<td><a href="#" data-toggle="modal" data-target="#modalKeteranganStatus"
|
||||||
$statusClass = 'badge-warning';
|
class="badge {{ in_array($transaction->status, ['pending', 'created'])
|
||||||
} elseif ($transaction['status'] === 'paid') {
|
? 'badge-light'
|
||||||
$statusClass = 'badge-success';
|
: (in_array($transaction->status, ['settlement', 'capture'])
|
||||||
} elseif ($transaction['status'] === 'unpaid') {
|
? 'badge-info'
|
||||||
$statusClass = 'badge-danger';
|
: (in_array($transaction->status, ['process', 'sending', 'sended'])
|
||||||
}
|
? 'badge-warning'
|
||||||
@endphp
|
: (in_array($transaction->status, ['cancel', 'expire', 'failure', 'refund'])
|
||||||
<div class="badge {{ $transaction->status }}">{{ $transaction['status'] }}</div>
|
? 'badge-danger'
|
||||||
|
: ($transaction->status == 'finished'
|
||||||
|
? 'badge-success'
|
||||||
|
: '')))) }}">{{ ucwords($transaction->status) }}</a>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<div class="btn-group">
|
<div class="btn-group">
|
||||||
@ -57,12 +60,19 @@
|
|||||||
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||||
Action
|
Action
|
||||||
</button>
|
</button>
|
||||||
<div class="dropdown-menu">
|
|
||||||
<a class="dropdown-item" href="{{route('transaction.detail')}}">Details</a>
|
<ul class="dropdown-menu">
|
||||||
<a class="dropdown-item" href="#" data-toggle="modal"
|
<li><a class="dropdown-item"
|
||||||
data-target="#ModalTransaction">Tracking</a>
|
href="{{ route('admin-transaction.show', $transaction->id) }}">Detail</a>
|
||||||
<a class="dropdown-item" href="#">Delete</a>
|
</li>
|
||||||
</div>
|
|
||||||
|
@if (!$transaction->transactionDescription->isEmpty())
|
||||||
|
<li><a class="dropdown-item" data-toggle="modal"
|
||||||
|
data-target="#modalTracking"
|
||||||
|
data-transaction="{{ $transaction->transactionDescription }}">Tracking</a>
|
||||||
|
</li>
|
||||||
|
@endif
|
||||||
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@ -75,4 +85,57 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@include('admin.transaction.modal-tracking')
|
@include('admin.transaction.modal-tracking')
|
||||||
|
@extends('admin.transaction.modal-keterangan-status')
|
||||||
|
<script>
|
||||||
|
$(document).ready(function() {
|
||||||
|
$('#modalTracking').on('show.bs.modal', function(event) {
|
||||||
|
var triggerLink = $(event.relatedTarget); // Tombol yang memicu modal
|
||||||
|
var transactionDatas = triggerLink.data('transaction'); // Ambil data dari tombol
|
||||||
|
|
||||||
|
// Buat variabel untuk menyimpan HTML aktivitas
|
||||||
|
transactionDatas = transactionDatas.reverse();
|
||||||
|
var activitiesHtml = '';
|
||||||
|
|
||||||
|
// Periksa apakah ada data transaksi
|
||||||
|
if (transactionDatas && transactionDatas.length > 0) {
|
||||||
|
// Iterasi melalui data transaksi dan tambahkan ke activitiesHtml
|
||||||
|
$.each(transactionDatas, function(index, transactionDescription) {
|
||||||
|
activitiesHtml += `
|
||||||
|
<div class="activity">
|
||||||
|
<div class="activity-icon ${transactionDescription.background} text-white shadow-primary">
|
||||||
|
<i class="${transactionDescription.judul}" style="font-size: 36px;"></i>
|
||||||
|
</div>
|
||||||
|
<div class="activity-detail">
|
||||||
|
<div class="mb-2">
|
||||||
|
<span class="text-job text-primary">${new Date(transactionDescription.created_at).toLocaleString()}</span>
|
||||||
|
</div>
|
||||||
|
<p>${transactionDescription.deskripsi}</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
`;
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
// Tidak ada data transaksi, tambahkan pesan kosong
|
||||||
|
activitiesHtml += `
|
||||||
|
<div class="activity">
|
||||||
|
<div class="activity-icon bg-primary text-white shadow-primary">
|
||||||
|
<i class="fas fa-ban" style="font-size: 36px;"></i>
|
||||||
|
</div>
|
||||||
|
<div class="activity-detail">
|
||||||
|
<div class="mb-2">
|
||||||
|
<span class="text-job text-primary">--, --:--:-- --</span>
|
||||||
|
</div>
|
||||||
|
<p>Kosong</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
`;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Menampilkan data dalam modal
|
||||||
|
var modal = $(this);
|
||||||
|
modal.find('.activities').html(activitiesHtml);
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
</script>
|
||||||
@endsection
|
@endsection
|
||||||
|
@ -0,0 +1,72 @@
|
|||||||
|
<div class="modal fade" id="modalKeteranganStatus" 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">
|
||||||
|
<h3 class="modal-title fs-5" id="staticBackdropLabel">Keterangan Status Transaksi</h3>
|
||||||
|
{{-- <a type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close">×</a> --}}
|
||||||
|
</div>
|
||||||
|
<div class="modal-body">
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Created</label>
|
||||||
|
<p class="form-control">Transaksi baru telah dibuat.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Pending</label>
|
||||||
|
<p class="form-control">Transaksi menunggu pembayaran.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Capture</label>
|
||||||
|
<p class="form-control">Transaksi berhasil dan saldo kartu berhasil diambil. Jika Anda tidak mengambil tindakan apa pun, transaksi akan berhasil diselesaikan dalam waktu 24 jam atau dalam waktu penyelesaian yang disepakati dengan bank mitra Anda dan status transaksi anda akan berubah menjadi settlement. Sehingga aman untuk mengasumsikan pembayaran berhasil.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Settlement</label>
|
||||||
|
<p class="form-control">Transaksi berhasil diselesaikan. Dana telah dikreditkan ke Rekber.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Cancel</label>
|
||||||
|
<p class="form-control">Transaksi dibatalkan. Hal ini bisa dipicu oleh Midtrans, bank partner atau pembeli.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Expire</label>
|
||||||
|
<p class="form-control">Transaksi tidak dapat diproses karena pembayaran tertunda atau melebihi batas pembayaran.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Process</label>
|
||||||
|
<p class="form-control">Transaksi/pesanan pembeli sedang diproses oleh penjual.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Sending</label>
|
||||||
|
<p class="form-control">Pesanan sedang dikirim oleh penjual.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Sended</label>
|
||||||
|
<p class="form-control">Pesanan sudah sampai ditujuan pembeli.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Finished</label>
|
||||||
|
<p class="form-control">Transaksi telah selesai dan diselesaikan oleh pembeli.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Failure</label>
|
||||||
|
<p class="form-control">Terjadi kesalahan tak terduga selama pemrosesan transaksi.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Refund</label>
|
||||||
|
<p class="form-control">Transaksi ditandai untuk dikembalikan. Status pengembalian dana dipicu oleh pembeli.</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
@ -1,5 +1,5 @@
|
|||||||
<!-- Modal -->
|
<!-- Modal -->
|
||||||
<div class="modal fade" id="ModalTransaction" tabindex="-1" role="dialog" aria-labelledby="exampleModalCenterTitle"
|
<div class="modal fade" id="modalTracking" tabindex="-1" role="dialog" aria-labelledby="exampleModalCenterTitle"
|
||||||
aria-hidden="true">
|
aria-hidden="true">
|
||||||
<div class="modal-dialog modal-dialog-centered" role="document">
|
<div class="modal-dialog modal-dialog-centered" role="document">
|
||||||
<div class="modal-content">
|
<div class="modal-content">
|
||||||
@ -14,98 +14,12 @@
|
|||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-12">
|
<div class="col-12">
|
||||||
<div class="activities">
|
<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>
|
</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>
|
</div>
|
||||||
</section>
|
|
||||||
</div>
|
</div>
|
||||||
@endforeach
|
</div>
|
||||||
@endsection --}}
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
@ -1,42 +1,49 @@
|
|||||||
@extends('Admin.layout.main')
|
@extends('layouts.main')
|
||||||
@section('content')
|
@section('content')
|
||||||
<div class="main-content">
|
<div class="main-content">
|
||||||
<section class="section">
|
<section class="section">
|
||||||
<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,218 @@
|
|||||||
|
|
||||||
<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="{{ asset('storage/foto-ktp/ktp.jpg') }}"
|
||||||
|
alt="Foto KTP" class="align-self-center img-fluid" style="width: 400px">
|
||||||
|
</a>
|
||||||
|
@else
|
||||||
|
<a href="#" id="tampilKTP">
|
||||||
|
<img id="fotoKTP"
|
||||||
|
src="{{ asset('storage/foto-ktp/' . $user->foto_ktp) }}"
|
||||||
|
alt="Foto Wajah" class="align-self-center img-fluid"
|
||||||
|
style="width: 450px">
|
||||||
|
</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="{{ asset('storage/foto-wajah/wajah.jpg') }}"
|
||||||
|
alt="Foto KTP" class="align-self-center img-fluid" style="width: 400px">
|
||||||
|
</a>
|
||||||
|
@else
|
||||||
|
<a href="#" id="tampilWajah">
|
||||||
|
<img id="fotoWajah"
|
||||||
|
src="{{ asset('storage/foto-wajah/' . $user->foto_wajah) }}"
|
||||||
|
alt="Foto Wajah" class="align-self-center img-fluid"
|
||||||
|
style="width: 400px">
|
||||||
|
</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
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
@extends('admin.layout.main')
|
@extends('layouts.main')
|
||||||
@section('content')
|
@section('content')
|
||||||
<div class="main-content">
|
<div class="main-content">
|
||||||
<section class="section">
|
<section class="section">
|
||||||
@ -33,7 +33,8 @@
|
|||||||
<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 . ' ' . $user->nama_belakang }}</td>
|
||||||
@ -52,7 +53,7 @@
|
|||||||
</button>
|
</button>
|
||||||
<div class="dropdown-menu">
|
<div class="dropdown-menu">
|
||||||
<a class="dropdown-item"
|
<a class="dropdown-item"
|
||||||
href="{{ route('admin-user.show', $user->id) }}">Keterangan</a>
|
href="{{ route('admin-user.show', $user->id) }}">Detail</a>
|
||||||
<a class="dropdown-item" href="#"
|
<a class="dropdown-item" href="#"
|
||||||
data-id="{{ $user->id }}" id="deleteUser">Hapus</a>
|
data-id="{{ $user->id }}" id="deleteUser">Hapus</a>
|
||||||
</div>
|
</div>
|
||||||
@ -106,8 +107,7 @@
|
|||||||
icon: response.status ? 'success' : 'error',
|
icon: response.status ? 'success' : 'error',
|
||||||
confirmButtonText: 'OK'
|
confirmButtonText: 'OK'
|
||||||
}).then(function() {
|
}).then(function() {
|
||||||
// location.reload();
|
location.reload();
|
||||||
console.log(response);
|
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
error: function(error) {
|
error: function(error) {
|
||||||
|
@ -1,113 +0,0 @@
|
|||||||
@extends('Admin.layout.main')
|
|
||||||
@section('content')
|
|
||||||
<div class="main-content">
|
|
||||||
<section class="section">
|
|
||||||
<div class="section-header">
|
|
||||||
<h1>User</h1>
|
|
||||||
<div class="section-header-breadcrumb">
|
|
||||||
<div class="breadcrumb-item active"><a href="#">Dashboard</a></div>
|
|
||||||
<div class="breadcrumb-item">User</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-12">
|
|
||||||
<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="table-responsive">
|
|
||||||
<table class="table table-bordered table-md">
|
|
||||||
<tr>
|
|
||||||
<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>
|
|
||||||
<td class="font-weight-600"> {{ $list_user['userId'] }}</td>
|
|
||||||
<td>
|
|
||||||
<figure class="avatar mr-2 avatar-xl">
|
|
||||||
<img src="assets/img/avatar/avatar-6.png" alt="...">
|
|
||||||
</figure>
|
|
||||||
</td>
|
|
||||||
<td class="font-weight-600">{{ $list_user['nik'] }}</td>
|
|
||||||
<td class="font-weight-600">{{ $list_user['fullname'] }}</td>
|
|
||||||
<td class="font-weight-600">{{ $list_user['email'] }}</td>
|
|
||||||
{{-- <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>
|
|
||||||
@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>
|
|
||||||
</section>
|
|
||||||
</div>
|
|
||||||
@endsection
|
|
@ -1,15 +1,13 @@
|
|||||||
@extends('user.layout.main')
|
@extends('layouts.main')
|
||||||
@section('content')
|
@section('content')
|
||||||
<div class="main-content">
|
<div class="main-content">
|
||||||
<section class="section">
|
<section class="section">
|
||||||
|
|
||||||
<div class="section-header">
|
<div class="section-header">
|
||||||
<h1>Manajemen Contact</h1>
|
<h1>Kontak</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('user.index') }}">Dashboard</a></div>
|
||||||
<div class="breadcrumb-item"><a href="#"> Transaction</a></div>
|
<div class="breadcrumb-item">Kontak</div>
|
||||||
<div class="breadcrumb-item">Manajemen Kontak</div>
|
|
||||||
<div class="breadcrumb-item">Halaman Refund</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -19,13 +17,13 @@
|
|||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="card-header">
|
<div class="card-header">
|
||||||
<div class="d-flex justify-content-end">
|
<div class="d-flex justify-content-end">
|
||||||
<button class="btn btn-primary btn-lg" data-toggle="modal" data-target="#modalForm">Open
|
<button class="btn btn-primary btn-lg" data-toggle="modal"
|
||||||
Contact Form</button>
|
data-target="#modalForm">Tambahkan Kontak Baru</button>
|
||||||
</div>
|
</div>
|
||||||
</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-2">
|
<table class="table table-striped" id="table-6">
|
||||||
<thead>
|
<thead>
|
||||||
<tr class="text-center">
|
<tr class="text-center">
|
||||||
<th>#</th>
|
<th>#</th>
|
||||||
@ -54,9 +52,8 @@
|
|||||||
data-city="{{ $contact->relasiKontak->getCityName() }}"
|
data-city="{{ $contact->relasiKontak->getCityName() }}"
|
||||||
data-district="{{ $contact->relasiKontak->getDistrictName() }}"
|
data-district="{{ $contact->relasiKontak->getDistrictName() }}"
|
||||||
data-village="{{ $contact->relasiKontak->getVillageName() }}">Detail</button>
|
data-village="{{ $contact->relasiKontak->getVillageName() }}">Detail</button>
|
||||||
<button class="btn btn-danger open-detail-modal" data-toggle="modal"
|
<button class="btn btn-danger open-detail-modal" id="deleteContact"
|
||||||
data-target="#modaldelete" id="deleteContact"
|
data-id="{{ $contact->id }}">Hapus</button>
|
||||||
data-id="{{ $contact->id }}">Delete</button>
|
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@endforeach
|
@endforeach
|
||||||
@ -68,7 +65,6 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@extends('user.contact.modal-detail-contact')
|
@extends('user.contact.modal-detail-contact')
|
||||||
{{-- @extends('user.contact.modal-delete-contact') --}}
|
|
||||||
@extends('user.contact.modal-add-contact')
|
@extends('user.contact.modal-add-contact')
|
||||||
</section>
|
</section>
|
||||||
</div>
|
</div>
|
||||||
@ -119,7 +115,8 @@
|
|||||||
});
|
});
|
||||||
|
|
||||||
$.ajax({
|
$.ajax({
|
||||||
url: "{{ route('user-contact.delete', ':id') }}".replace(':id',
|
url: "{{ route('user-contact.destroy', ':id') }}".replace(
|
||||||
|
':id',
|
||||||
dataId),
|
dataId),
|
||||||
type: 'DELETE',
|
type: 'DELETE',
|
||||||
contentType: false,
|
contentType: false,
|
||||||
|
@ -1,8 +1,4 @@
|
|||||||
<<<<<<< HEAD
|
@extends('layouts.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">
|
||||||
@ -24,7 +20,22 @@
|
|||||||
<li><a href="#" class="dropdown-item">May</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">June</a></li>
|
||||||
<li><a href="#" class="dropdown-item">July</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">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>
|
||||||
|
<ul class="dropdown-menu dropdown-menu-sm">
|
||||||
|
<li class="dropdown-title">Select Year</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">August</a></li>
|
||||||
<li><a href="#" class="dropdown-item">September</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">October</a></li>
|
||||||
<li><a href="#" class="dropdown-item">November</a></li>
|
<li><a href="#" class="dropdown-item">November</a></li>
|
||||||
@ -73,11 +84,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 +99,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 +119,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 +128,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 +135,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 +156,6 @@
|
|||||||
{{ $HistoryRefundUser['uploadBukti'] }}</td>
|
{{ $HistoryRefundUser['uploadBukti'] }}</td>
|
||||||
<td>
|
<td>
|
||||||
|
|
||||||
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
|
||||||
</tr>
|
</tr>
|
||||||
@endforeach
|
@endforeach
|
||||||
</table>
|
</table>
|
||||||
@ -226,12 +163,6 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<<<<<<< HEAD
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
</div>
|
|
||||||
@include('Admin.transaction.Tracking')
|
|
||||||
=======
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
@ -435,5 +366,4 @@
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
|
||||||
@endsection
|
@endsection
|
||||||
|
@ -1,249 +0,0 @@
|
|||||||
<div class="navbar-bg"></div>
|
|
||||||
<nav class="navbar navbar-expand-lg main-navbar">
|
|
||||||
<form class="form-inline mr-auto">
|
|
||||||
<ul class="navbar-nav mr-3">
|
|
||||||
<li><a href="#" data-toggle="sidebar" class="nav-link nav-link-lg"><i class="fas fa-bars"></i></a></li>
|
|
||||||
<li><a href="#" data-toggle="search" class="nav-link nav-link-lg d-sm-none"><i
|
|
||||||
class="fas fa-search"></i></a></li>
|
|
||||||
</ul>
|
|
||||||
{{-- <div class="search-element">
|
|
||||||
<input class="form-control" type="search" placeholder="Search" aria-label="Search" data-width="250">
|
|
||||||
<button class="btn" type="submit"><i class="fas fa-search"></i></button>
|
|
||||||
<div class="search-backdrop"></div>
|
|
||||||
<div class="search-result">
|
|
||||||
<div class="search-header">
|
|
||||||
Histories
|
|
||||||
</div>
|
|
||||||
<div class="search-item">
|
|
||||||
<a href="#">How to hack NASA using CSS</a>
|
|
||||||
<a href="#" class="search-close"><i class="fas fa-times"></i></a>
|
|
||||||
</div>
|
|
||||||
<div class="search-item">
|
|
||||||
<a href="#">Kodinger.com</a>
|
|
||||||
<a href="#" class="search-close"><i class="fas fa-times"></i></a>
|
|
||||||
</div>
|
|
||||||
<div class="search-item">
|
|
||||||
<a href="#">#Stisla</a>
|
|
||||||
<a href="#" class="search-close"><i class="fas fa-times"></i></a>
|
|
||||||
</div>
|
|
||||||
<div class="search-header">
|
|
||||||
Result
|
|
||||||
</div>
|
|
||||||
<div class="search-item">
|
|
||||||
<a href="#">
|
|
||||||
<img class="mr-3 rounded" width="30" src="assets/img/products/product-3-50.png"
|
|
||||||
alt="product">
|
|
||||||
oPhone S9 Limited Edition
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<div class="search-item">
|
|
||||||
<a href="#">
|
|
||||||
<img class="mr-3 rounded" width="30" src="assets/img/products/product-2-50.png"
|
|
||||||
alt="product">
|
|
||||||
Drone X2 New Gen-7
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<div class="search-item">
|
|
||||||
<a href="#">
|
|
||||||
<img class="mr-3 rounded" width="30" src="assets/img/products/product-1-50.png"
|
|
||||||
alt="product">
|
|
||||||
Headphone Blitz
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<div class="search-header">
|
|
||||||
Projects
|
|
||||||
</div>
|
|
||||||
<div class="search-item">
|
|
||||||
<a href="#">
|
|
||||||
<div class="search-icon bg-danger text-white mr-3">
|
|
||||||
<i class="fas fa-code"></i>
|
|
||||||
</div>
|
|
||||||
Stisla Admin Template
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<div class="search-item">
|
|
||||||
<a href="#">
|
|
||||||
<div class="search-icon bg-primary text-white mr-3">
|
|
||||||
<i class="fas fa-laptop"></i>
|
|
||||||
</div>
|
|
||||||
Create a new Homepage Design
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div> --}}
|
|
||||||
</form>
|
|
||||||
<ul class="navbar-nav navbar-right">
|
|
||||||
<li class="dropdown dropdown-list-toggle"><a href="#" data-toggle="dropdown"
|
|
||||||
class="nav-link nav-link-lg message-toggle beep"><i class="far fa-envelope"></i></a>
|
|
||||||
<div class="dropdown-menu dropdown-list dropdown-menu-right">
|
|
||||||
<div class="dropdown-header">Messages
|
|
||||||
<div class="float-right">
|
|
||||||
<a href="#">Mark All As Read</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="dropdown-list-content dropdown-list-message">
|
|
||||||
<a href="#" class="dropdown-item dropdown-item-unread">
|
|
||||||
<div class="dropdown-item-avatar">
|
|
||||||
<img alt="image" src="{{ asset('assets/img/avatar/avatar-1.png') }}"
|
|
||||||
class="rounded-circle">
|
|
||||||
<div class="is-online"></div>
|
|
||||||
</div>
|
|
||||||
<div class="dropdown-item-desc">
|
|
||||||
<b>Kusnaedi</b>
|
|
||||||
<p>Hello, Bro!</p>
|
|
||||||
<div class="time">10 Hours Ago</div>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
<a href="#" class="dropdown-item dropdown-item-unread">
|
|
||||||
<div class="dropdown-item-avatar">
|
|
||||||
<img alt="image" src="{{ asset('assets/img/avatar/avatar-2.png') }}"
|
|
||||||
class="rounded-circle">
|
|
||||||
</div>
|
|
||||||
<div class="dropdown-item-desc">
|
|
||||||
<b>Dedik Sugiharto</b>
|
|
||||||
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit</p>
|
|
||||||
<div class="time">12 Hours Ago</div>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
<a href="#" class="dropdown-item dropdown-item-unread">
|
|
||||||
<div class="dropdown-item-avatar">
|
|
||||||
<img alt="image" src="{{ asset('assets/img/avatar/avatar-3.png') }}"
|
|
||||||
class="rounded-circle">
|
|
||||||
<div class="is-online"></div>
|
|
||||||
</div>
|
|
||||||
<div class="dropdown-item-desc">
|
|
||||||
<b>Agung Ardiansyah</b>
|
|
||||||
<p>Sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
|
|
||||||
<div class="time">12 Hours Ago</div>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
<a href="#" class="dropdown-item">
|
|
||||||
<div class="dropdown-item-avatar">
|
|
||||||
<img alt="image" src="{{ asset('assets/img/avatar/avatar-4.png') }}"
|
|
||||||
class="rounded-circle">
|
|
||||||
</div>
|
|
||||||
<div class="dropdown-item-desc">
|
|
||||||
<b>Ardian Rahardiansyah</b>
|
|
||||||
<p>Duis aute irure dolor in reprehenderit in voluptate velit ess</p>
|
|
||||||
<div class="time">16 Hours Ago</div>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
<a href="#" class="dropdown-item">
|
|
||||||
<div class="dropdown-item-avatar">
|
|
||||||
<img alt="image" src="{{ asset('assets/img/avatar/avatar-5.png') }}"
|
|
||||||
class="rounded-circle">
|
|
||||||
</div>
|
|
||||||
<div class="dropdown-item-desc">
|
|
||||||
<b>Alfa Zulkarnain</b>
|
|
||||||
<p>Exercitation ullamco laboris nisi ut aliquip ex ea commodo</p>
|
|
||||||
<div class="time">Yesterday</div>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<div class="dropdown-footer text-center">
|
|
||||||
<a href="#">View All <i class="fas fa-chevron-right"></i></a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</li>
|
|
||||||
<li class="dropdown dropdown-list-toggle"><a href="#" data-toggle="dropdown"
|
|
||||||
class="nav-link notification-toggle nav-link-lg beep"><i class="far fa-bell"></i></a>
|
|
||||||
<div class="dropdown-menu dropdown-list dropdown-menu-right">
|
|
||||||
<div class="dropdown-header">Notifications
|
|
||||||
<div class="float-right">
|
|
||||||
<a href="#">Mark All As Read</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="dropdown-list-content dropdown-list-icons">
|
|
||||||
<a href="#" class="dropdown-item dropdown-item-unread">
|
|
||||||
<div class="dropdown-item-icon bg-primary text-white">
|
|
||||||
<i class="fas fa-code"></i>
|
|
||||||
</div>
|
|
||||||
<div class="dropdown-item-desc">
|
|
||||||
Template update is available now!
|
|
||||||
<div class="time text-primary">2 Min Ago</div>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
<a href="#" class="dropdown-item">
|
|
||||||
<div class="dropdown-item-icon bg-info text-white">
|
|
||||||
<i class="far fa-user"></i>
|
|
||||||
</div>
|
|
||||||
<div class="dropdown-item-desc">
|
|
||||||
<b>You</b> and <b>Dedik Sugiharto</b> are now friends
|
|
||||||
<div class="time">10 Hours Ago</div>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
<a href="#" class="dropdown-item">
|
|
||||||
<div class="dropdown-item-icon bg-success text-white">
|
|
||||||
<i class="fas fa-check"></i>
|
|
||||||
</div>
|
|
||||||
<div class="dropdown-item-desc">
|
|
||||||
<b>Kusnaedi</b> has moved task <b>Fix bug header</b> to <b>Done</b>
|
|
||||||
<div class="time">12 Hours Ago</div>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
<a href="#" class="dropdown-item">
|
|
||||||
<div class="dropdown-item-icon bg-danger text-white">
|
|
||||||
<i class="fas fa-exclamation-triangle"></i>
|
|
||||||
</div>
|
|
||||||
<div class="dropdown-item-desc">
|
|
||||||
Low disk space. Let's clean it!
|
|
||||||
<div class="time">17 Hours Ago</div>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
<a href="#" class="dropdown-item">
|
|
||||||
<div class="dropdown-item-icon bg-info text-white">
|
|
||||||
<i class="fas fa-bell"></i>
|
|
||||||
</div>
|
|
||||||
<div class="dropdown-item-desc">
|
|
||||||
Welcome to Stisla template!
|
|
||||||
<div class="time">Yesterday</div>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<div class="dropdown-footer text-center">
|
|
||||||
<a href="#">View All <i class="fas fa-chevron-right"></i></a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</li>
|
|
||||||
<li class="dropdown"><a href="#" data-toggle="dropdown"
|
|
||||||
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">
|
|
||||||
<div class="d-sm-none d-lg-inline-block">Hi, {{ $name }}</div>
|
|
||||||
</a>
|
|
||||||
<div class="dropdown-menu dropdown-menu-right">
|
|
||||||
<div class="dropdown-title">Logged in 5 min ago</div>
|
|
||||||
<a href="#" class="dropdown-item has-icon">
|
|
||||||
<i class="far fa-user"></i> Profile
|
|
||||||
</a>
|
|
||||||
<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
|
|
||||||
</a>
|
|
||||||
<a href="features-settings.html" class="dropdown-item has-icon">
|
|
||||||
<i class="fas fa-cog"></i> Settings
|
|
||||||
<<<<<<< HEAD
|
|
||||||
</a>
|
|
||||||
<div class="dropdown-divider"></div>
|
|
||||||
<a href="#" class="dropdown-item has-icon text-danger">
|
|
||||||
=======
|
|
||||||
</a> --}}
|
|
||||||
<div class="dropdown-divider"></div>
|
|
||||||
<a href="{{ route('logout') }}" class="dropdown-item has-icon text-danger">
|
|
||||||
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
|
||||||
<i class="fas fa-sign-out-alt"></i> Logout
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</nav>
|
|
@ -1,106 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en">
|
|
||||||
|
|
||||||
<head>
|
|
||||||
<style>
|
|
||||||
.data-field {
|
|
||||||
display: flex;
|
|
||||||
width: 100%;
|
|
||||||
justify-content: space-between;
|
|
||||||
font-size: 14px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.data-field:not(:last-child) {
|
|
||||||
margin-bottom: 15px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.data-field span {
|
|
||||||
text-align: end;
|
|
||||||
}
|
|
||||||
|
|
||||||
.card-title span a {
|
|
||||||
color: #899bbd;
|
|
||||||
text-decoration: underline;
|
|
||||||
}
|
|
||||||
|
|
||||||
.justified-text {
|
|
||||||
text-align: justify;
|
|
||||||
}
|
|
||||||
|
|
||||||
.font-weight-italic {
|
|
||||||
font-style: italic;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
|
|
||||||
<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>
|
|
||||||
<script>
|
|
||||||
window.dataLayer = window.dataLayer || [];
|
|
||||||
|
|
||||||
function gtag() {
|
|
||||||
dataLayer.push(arguments);
|
|
||||||
}
|
|
||||||
gtag('js', new Date());
|
|
||||||
|
|
||||||
gtag('config', 'UA-94034622-3');
|
|
||||||
</script>
|
|
||||||
<!-- /END GA -->
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<header class="header-area header-sticky">
|
|
||||||
@include('User.layout.header')
|
|
||||||
</header>
|
|
||||||
<!-- ***** Main Banner Area Start ***** -->
|
|
||||||
<main id="main" style="min-height: 100vh;">
|
|
||||||
@include('User.layout.sidebar')
|
|
||||||
@yield('content')
|
|
||||||
</main>
|
|
||||||
<!-- End #main -->
|
|
||||||
<footer id="footer">
|
|
||||||
@include('User.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>
|
|
||||||
</body>
|
|
||||||
|
|
||||||
</html>
|
|
@ -1,60 +0,0 @@
|
|||||||
<div class="main-sidebar sidebar-style-2">
|
|
||||||
<aside id="sidebar-wrapper">
|
|
||||||
<div class="sidebar-brand">
|
|
||||||
<a href="{{ route('user.index') }}">REKBER</a>
|
|
||||||
</div>
|
|
||||||
<div class="sidebar-brand sidebar-brand-sm">
|
|
||||||
<a href="{{ route('user.index') }}">RK</a>
|
|
||||||
</div>
|
|
||||||
<ul class="sidebar-menu">
|
|
||||||
<li class="menu-header">Dashboard</li>
|
|
||||||
|
|
||||||
<li><a class="nav-link active" href="{{ route('user.index') }}"><i class="fas fa-fire"></i>
|
|
||||||
<span>Dashboard</span></a></li>
|
|
||||||
|
|
||||||
<li class="menu-header">Starter</li>
|
|
||||||
|
|
||||||
<li class="drop-down ">
|
|
||||||
<a class="nav-link" data-toggle="collapse" href="#submenuTransaction" aria-expanded="false"
|
|
||||||
aria-controls="submenuTransaction">
|
|
||||||
<i class="fas fa-columns"></i><span>Transaksi</span> <i class="fas fa-caret-down"></i>
|
|
||||||
</a>
|
|
||||||
|
|
||||||
<div id="submenuTransaction" class="collapse">
|
|
||||||
<ul class="nav flex-column sub-menu">
|
|
||||||
<li class="nav-item">
|
|
||||||
<a class="nav-link" href="{{ route('user-transaction.index.pembeli') }}">
|
|
||||||
<i class="fas fa-users"></i> Pembeli
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
<li class="nav-item">
|
|
||||||
<a class="nav-link" href="{{ route('user-transaction.index.penjual') }}">
|
|
||||||
<i class="fas fa-user"></i> Penjual
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<a class="nav-link active" href="{{ route('user-contact.index') }}">
|
|
||||||
<i class="fas fa-address-book"></i> <span>Kontak</span>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<a class="nav-link active" href="{{ route('user-refund.index') }}">
|
|
||||||
<i class="fas fa-money-check-alt"></i> <span>Refund</span>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
</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>
|
|
||||||
</div>
|
|
||||||
<script src="{{ asset('assets/modules/nicescroll/jquery.nicescroll.min.js') }}"></script>
|
|
@ -1,375 +0,0 @@
|
|||||||
@extends('user.layout.main')
|
|
||||||
@section('content')
|
|
||||||
<div class="main-content">
|
|
||||||
<section class="section">
|
|
||||||
<div class="section-header">
|
|
||||||
<h1>Profile</h1>
|
|
||||||
</div>
|
|
||||||
<div class="card-body profile-card py-2 d-flex flex-column align-items-center text-center" style="border: 1px solid #ddd; border-radius: 8px; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); position: relative; background: linear-gradient(45deg, #f3f3f3, #e0e0e0);">
|
|
||||||
<i class="bi bi-arrow-right" style="position: absolute; top: 10px; right: 10px; font-size: 24px;"></i>
|
|
||||||
<img src="{{asset('assets/img/avatar/ok.jpg')}}" alt="Profile" class="rounded-circle" style="width: 150px; height: 150px;">
|
|
||||||
<h2 class="mt-3">Nurul Prima Annisa</h2>
|
|
||||||
<h5 class="mb-0">#123udfai90-20udf82</h5>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-body pt-3">
|
|
||||||
<!-- Bordered Tabs -->
|
|
||||||
<ul class="nav nav-tabs nav-tabs-bordered">
|
|
||||||
|
|
||||||
<li class="nav-item">
|
|
||||||
<button class="nav-link active" data-bs-toggle="tab"
|
|
||||||
data-bs-target="#profile-overview">Overview</button>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="nav-item">
|
|
||||||
<button class="nav-link" data-bs-toggle="tab" data-bs-target="#profile-edit">Edit
|
|
||||||
Profile</button>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="nav-item">
|
|
||||||
<button class="nav-link" data-bs-toggle="tab"
|
|
||||||
data-bs-target="#profile-settings">Settings</button>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="nav-item">
|
|
||||||
<button class="nav-link" data-bs-toggle="tab" data-bs-target="#profile-change-password">Change
|
|
||||||
Password</button>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<div class="tab-content pt-2">
|
|
||||||
|
|
||||||
<div class="tab-pane fade show active profile-overview" id="profile-overview">
|
|
||||||
<h5 class="card-title">About</h5>
|
|
||||||
<p class="small fst-italic">Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima
|
|
||||||
annisa
|
|
||||||
Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima
|
|
||||||
annisa Nurul prima annisa
|
|
||||||
Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima
|
|
||||||
annisa Nurul prima annisa
|
|
||||||
Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima
|
|
||||||
annisa Nurul prima annisa
|
|
||||||
Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima
|
|
||||||
annisa Nurul prima annisa
|
|
||||||
Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima
|
|
||||||
annisa Nurul prima annisa
|
|
||||||
Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima
|
|
||||||
annisa Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul
|
|
||||||
prima
|
|
||||||
annisa
|
|
||||||
Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima
|
|
||||||
annisa Nurul prima annisa
|
|
||||||
Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima
|
|
||||||
annisa Nurul prima annisa
|
|
||||||
Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima
|
|
||||||
annisa Nurul prima annisa
|
|
||||||
Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima
|
|
||||||
annisa Nurul prima annisa
|
|
||||||
Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima
|
|
||||||
annisa Nurul prima annisa
|
|
||||||
Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima annisa Nurul prima
|
|
||||||
annisa Nurul prima annisa
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<h5 class="card-title">Profile Details</h5>
|
|
||||||
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-lg-3 col-md-4 label ">Full Name</div>
|
|
||||||
<div class="col-lg-9 col-md-8">Nurul Prima Annisa</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-lg-3 col-md-4 label">Company</div>
|
|
||||||
<div class="col-lg-9 col-md-8">Ya apa yak</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-lg-3 col-md-4 label">Job</div>
|
|
||||||
<div class="col-lg-9 col-md-8">Frontend Web </div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-lg-3 col-md-4 label">Country</div>
|
|
||||||
<div class="col-lg-9 col-md-8">Indonesia</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-lg-3 col-md-4 label">Address</div>
|
|
||||||
<div class="col-lg-9 col-md-8">Depok city broww</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-lg-3 col-md-4 label">Phone</div>
|
|
||||||
<div class="col-lg-9 col-md-8">(+62) 486-3538 29071</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-lg-3 col-md-4 label">Email</div>
|
|
||||||
<div class="col-lg-9 col-md-8">npannisa23@gmail.com</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="tab-pane fade profile-edit pt-3" id="profile-edit">
|
|
||||||
|
|
||||||
<!-- Profile Edit Form -->
|
|
||||||
<form>
|
|
||||||
<div class="row mb-3">
|
|
||||||
<label for="profileImage" class="col-md-4 col-lg-3 col-form-label">Profile Image</label>
|
|
||||||
<div class="col-md-8 col-lg-9">
|
|
||||||
<img id="profileImagePreview" src="{{asset('assets/img/avatar/ok.jpg')}}" alt="Profile"
|
|
||||||
style="max-width: 100%; max-height: 150px;">
|
|
||||||
<div class="d-flex justify-content-between align-items-center mt-2">
|
|
||||||
<label for="profileImageInput" class="btn btn-primary btn-sm"
|
|
||||||
title="Upload new profile image">
|
|
||||||
<i class="bi bi-upload"></i> Upload
|
|
||||||
<input type="file" id="profileImageInput" accept="image/*"
|
|
||||||
style="display: none;">
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row mb-3">
|
|
||||||
<label for="fullName" class="col-md-4 col-lg-3 col-form-label">Full Name</label>
|
|
||||||
<div class="col-md-8 col-lg-9">
|
|
||||||
<input name="fullName" type="text" class="form-control" id="fullName"
|
|
||||||
value="Nurul Prima Annisa">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row mb-3">
|
|
||||||
<label for="about" class="col-md-4 col-lg-3 col-form-label">About</label>
|
|
||||||
<div class="col-md-8 col-lg-9">
|
|
||||||
<textarea name="about" class="form-control" id="about" style="height: 100px">
|
|
||||||
|
|
||||||
</textarea>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row mb-3">
|
|
||||||
<label for="company" class="col-md-4 col-lg-3 col-form-label">Company</label>
|
|
||||||
<div class="col-md-8 col-lg-9">
|
|
||||||
<input name="company" type="text" class="form-control" id="company"
|
|
||||||
value="Abbauf Mulia Konsultan Teknologi">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row mb-3">
|
|
||||||
<label for="Job" class="col-md-4 col-lg-3 col-form-label">Job</label>
|
|
||||||
<div class="col-md-8 col-lg-9">
|
|
||||||
<input name="job" type="text" class="form-control" id="Job"
|
|
||||||
value="Frontend Web">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row mb-3">
|
|
||||||
<label for="Country" class="col-md-4 col-lg-3 col-form-label">Country</label>
|
|
||||||
<div class="col-md-8 col-lg-9">
|
|
||||||
<input name="country" type="text" class="form-control" id="Country"
|
|
||||||
value="Indonesia">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row mb-3">
|
|
||||||
<label for="Address" class="col-md-4 col-lg-3 col-form-label">Address</label>
|
|
||||||
<div class="col-md-8 col-lg-9">
|
|
||||||
<input name="address" type="text" class="form-control" id="Address"
|
|
||||||
value="Depok city broww">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row mb-3">
|
|
||||||
<label for="Phone" class="col-md-4 col-lg-3 col-form-label">Phone</label>
|
|
||||||
<div class="col-md-8 col-lg-9">
|
|
||||||
<input name="phone" type="text" class="form-control" id="Phone"
|
|
||||||
value="(+62) 486-3538 29071">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row mb-3">
|
|
||||||
<label for="Email" class="col-md-4 col-lg-3 col-form-label">Email</label>
|
|
||||||
<div class="col-md-8 col-lg-9">
|
|
||||||
<input name="email" type="email" class="form-control" id="Email"
|
|
||||||
value="npannisa23@gmail.com">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
{{-- <div class="row mb-3">
|
|
||||||
<label for="Twitter" class="col-md-4 col-lg-3 col-form-label">Twitter Profile</label>
|
|
||||||
<div class="col-md-8 col-lg-9">
|
|
||||||
<input name="twitter" type="text" class="form-control" id="Twitter"
|
|
||||||
value="https://twitter.com/#">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row mb-3">
|
|
||||||
<label for="Facebook" class="col-md-4 col-lg-3 col-form-label">Facebook
|
|
||||||
Profile</label>
|
|
||||||
<div class="col-md-8 col-lg-9">
|
|
||||||
<input name="facebook" type="text" class="form-control" id="Facebook"
|
|
||||||
value="https://facebook.com/#">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row mb-3">
|
|
||||||
<label for="Instagram" class="col-md-4 col-lg-3 col-form-label">Instagram
|
|
||||||
Profile</label>
|
|
||||||
<div class="col-md-8 col-lg-9">
|
|
||||||
<input name="instagram" type="text" class="form-control" id="Instagram"
|
|
||||||
value="https://instagram.com/npannisa_?utm_source=qr&igshid=MzNlNGNkZWQ4Mg%3D%3D#">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row mb-3">
|
|
||||||
<label for="Linkedin" class="col-md-4 col-lg-3 col-form-label">Linkedin
|
|
||||||
Profile</label>
|
|
||||||
<div class="col-md-8 col-lg-9">
|
|
||||||
<input name="linkedin" type="text" class="form-control" id="Linkedin"
|
|
||||||
value="https://github.com/npannisa#">
|
|
||||||
</div>
|
|
||||||
</div> --}}
|
|
||||||
|
|
||||||
<div class="text-center">
|
|
||||||
<a href="profile" type="submit" class="btn btn-primary">Save Changes</a>
|
|
||||||
</div>
|
|
||||||
</form><!-- End Profile Edit Form -->
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="tab-pane fade pt-3" id="profile-settings">
|
|
||||||
|
|
||||||
<!-- Settings Form -->
|
|
||||||
<form>
|
|
||||||
|
|
||||||
<div class="row mb-3">
|
|
||||||
<label for="fullName" class="col-md-4 col-lg-3 col-form-label">Email
|
|
||||||
Notifications</label>
|
|
||||||
<div class="col-md-8 col-lg-9">
|
|
||||||
<div class="form-check">
|
|
||||||
<input class="form-check-input" type="checkbox" id="changesMade" checked>
|
|
||||||
<label class="form-check-label" for="changesMade">
|
|
||||||
Changes made to your account
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
<div class="form-check">
|
|
||||||
<input class="form-check-input" type="checkbox" id="newProducts" checked>
|
|
||||||
<label class="form-check-label" for="newProducts">
|
|
||||||
Information on new products and services
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
<div class="form-check">
|
|
||||||
<input class="form-check-input" type="checkbox" id="proOffers">
|
|
||||||
<label class="form-check-label" for="proOffers">
|
|
||||||
Marketing and promo offers
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
<div class="form-check">
|
|
||||||
<input class="form-check-input" type="checkbox" id="securityNotify" checked
|
|
||||||
disabled>
|
|
||||||
<label class="form-check-label" for="securityNotify">
|
|
||||||
Security alerts
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="text-center">
|
|
||||||
<button type="submit" class="btn btn-primary">Save Changes</button>
|
|
||||||
</div>
|
|
||||||
</form><!-- End settings Form -->
|
|
||||||
|
|
||||||
</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>
|
|
||||||
</section>
|
|
||||||
</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
|
|
74
resources/views/User/refund/detail-refund.blade.php
Normal file
@ -0,0 +1,74 @@
|
|||||||
|
@extends('layouts.main')
|
||||||
|
@section('content')
|
||||||
|
<div class="main-content">
|
||||||
|
<section class="section">
|
||||||
|
<div class="section-header">
|
||||||
|
<h1>Detail</h1>
|
||||||
|
<div class="section-header-breadcrumb">
|
||||||
|
<div class="breadcrumb-item active"><a href="{{ route('admin.index') }}">Dashboard</a></div>
|
||||||
|
<div class="breadcrumb-item"><a href="{{ route('admin-refund.index') }}">Refund</a></div>
|
||||||
|
<div class="breadcrumb-item">Detail</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-12">
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-body p-0">
|
||||||
|
<div class="container">
|
||||||
|
<p><strong>Bukti Foto/Video</strong></p>
|
||||||
|
@foreach ($descriptions as $description)
|
||||||
|
@if ($description->type == 'image')
|
||||||
|
<img src="{{ asset('storage/refund-image/' . $description->filename) }}"
|
||||||
|
alt="Return Image" width="300">
|
||||||
|
@endif
|
||||||
|
@if ($description->type == 'videos')
|
||||||
|
<video src="{{ asset('storage/refund-video/' . $description->filename) }}"
|
||||||
|
alt="Return Image" width="300">
|
||||||
|
@endif
|
||||||
|
@endforeach
|
||||||
|
<br><br>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-2"><strong>ID Order</strong></div>
|
||||||
|
<div class="col">{{ $refund->order_id }}</div>
|
||||||
|
</div><br>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-2"><strong>Customer Name</strong></div>
|
||||||
|
<div class="col">
|
||||||
|
{{ $refund->transaction->data_pembeli->nama_depan . ' ' . $refund->transaction->data_pembeli->nama_belakang }}
|
||||||
|
</div>
|
||||||
|
</div><br>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-2"><strong>Seller Name</strong></div>
|
||||||
|
<div class="col">
|
||||||
|
{{ $refund->transaction->data_penjual->nama_depan . ' ' . $refund->transaction->data_penjual->nama_belakang }}
|
||||||
|
</div>
|
||||||
|
</div><br>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-2"><strong>Total</strong></div>
|
||||||
|
<div class="col">{{ $refund->total }}</div>
|
||||||
|
</div><br>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-2"><strong>Batas Pengajuan Refund</strong></div>
|
||||||
|
<div class="col">{{ $refund->due_date }}</div>
|
||||||
|
</div><br>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-2"><strong>Alasan Komplain</strong></div>
|
||||||
|
<div class="col justified-text">{{ $refund->complaint }}</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
@if ($refund)
|
||||||
|
<div class="d-flex justify-content-center mt-3">
|
||||||
|
<a href="#" data-toggle="modal" data-target="#ModalRefund"
|
||||||
|
class="btn btn-primary mx-1">Accept</a>
|
||||||
|
<a href="{{ route('admin-refund.index') }}" class="btn btn-danger mx-1">Decline</a>
|
||||||
|
</div>
|
||||||
|
@endif
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<br>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
</div>
|
||||||
|
@include('admin.refund.modal-next-detail-refund')
|
||||||
|
@endsection
|
@ -1,53 +0,0 @@
|
|||||||
@extends('user.layout.main')
|
|
||||||
@section('content')
|
|
||||||
<div class="main-content">
|
|
||||||
<section class="section">
|
|
||||||
<div class="col-md-12">
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-header">
|
|
||||||
<h2>History Refund</h2>
|
|
||||||
</div>
|
|
||||||
<div class="card-body p-0">
|
|
||||||
<div class="table-responsive table-invoice">
|
|
||||||
<table class="table table-striped">
|
|
||||||
<tr>
|
|
||||||
<th>Order ID</th>
|
|
||||||
<th>Customer</th>
|
|
||||||
<th>Seller</th>
|
|
||||||
<th>Total</th>
|
|
||||||
<th>Due Date</th>
|
|
||||||
<th>Status</th>
|
|
||||||
<th>Upload Bukti</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 class="font-weight-600">{{ $HistoryRefund['dueDate'] }}</td>
|
|
||||||
<td>{{ $HistoryRefund['date'] }}</td>
|
|
||||||
<td>
|
|
||||||
<div class="badge badge-danger">{{ $HistoryRefund['status'] }}</div>
|
|
||||||
</td>
|
|
||||||
<td>
|
|
||||||
<a href="/detail_refund" class="btn btn-primary">Detail</a>
|
|
||||||
</td>
|
|
||||||
<td>
|
|
||||||
<!-- Input field for uploading an image or video -->
|
|
||||||
<div class="col-md-12 d-flex align-items-center">
|
|
||||||
<label class="form-label me-3"
|
|
||||||
for="uploadFile{{ $HistoryRefund['orderId'] }}">Upload File</label>
|
|
||||||
<input class="form-control" type="file"
|
|
||||||
id="uploadFile{{ $HistoryRefund['orderId'] }}" name="uploadedFiles[]">
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
@endforeach
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
@endsection
|
|
@ -1,14 +1,12 @@
|
|||||||
@extends('user.layout.main')
|
@extends('layouts.main')
|
||||||
@section('content')
|
@section('content')
|
||||||
<div class="main-content">
|
<div class="main-content">
|
||||||
<section class="section">
|
<section class="section">
|
||||||
<div class="section-header">
|
<div class="section-header">
|
||||||
<h1>Halaman Refund</h1>
|
<h1>Refund</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('user.index') }}">Dashboard</a></div>
|
||||||
<div class="breadcrumb-item"><a href="#"> Transaction</a></div>
|
<div class="breadcrumb-item">Refund</div>
|
||||||
<div class="breadcrumb-item">Manajemen Kontak</div>
|
|
||||||
<div class="breadcrumb-item">Halaman Refund</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -17,51 +15,47 @@
|
|||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div class="table-responsive">
|
<div class="table-responsive">
|
||||||
<table class="table table-striped" id="table-1">
|
<table class="table table-striped" id="table-7">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th class="text-center">
|
<th class="text-center">
|
||||||
#
|
#
|
||||||
</th>
|
</th>
|
||||||
<th>Order Id</th>
|
<th>Nama Barang</th>
|
||||||
<th>Customer</th>
|
<th>Penjual</th>
|
||||||
<th>Seller</th>
|
<th>Total</th>
|
||||||
<th>total</th>
|
|
||||||
<th>Due Date</th>
|
|
||||||
<th>Status</th>
|
<th>Status</th>
|
||||||
<th>upload Bukti</th>
|
<th>Aksi</th>
|
||||||
<th>Action</th>
|
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
@foreach ($refundUserss as $key => $HistoryRefundUser)
|
@foreach ($refunds as $refund)
|
||||||
<tr>
|
<tr>
|
||||||
<td> {{ ++$key }}</td>
|
<td>{{ $loop->iteration }}</td>
|
||||||
<td class="font-weight-600">
|
<td>{{ $refund->transaction->nama_barang }}
|
||||||
{{ $HistoryRefundUser['orderId'] }}</td>
|
</td>
|
||||||
<td class="font-weight-600">
|
<td>{{ $refund->transaction->data_penjual->nama_depan }}
|
||||||
{{ $HistoryRefundUser['Customer'] }}</td>
|
</td>
|
||||||
<td class="font-weight-600">
|
<td>{{ $refund->total }}</td>
|
||||||
{{ $HistoryRefundUser['seller'] }}</td>
|
<td><a href="#" data-toggle="modal"
|
||||||
<td class="font-weight-600">
|
data-target="#modalKeteranganStatus"
|
||||||
{{ $HistoryRefundUser['Total'] }}</td>
|
class="badge {{ $refund->status == 'partial refund' ? 'badge-succes' : ($refund->status == 'pending' ? 'badge-warning' : 'badge-danger') }}">{{ ucwords($refund->status) }}</a>
|
||||||
<td>{{ $HistoryRefundUser['dueDate'] }}</td>
|
|
||||||
|
|
||||||
<td class="font-weight-600">
|
|
||||||
<div class="badge badge-danger" data-status="ditolak"
|
|
||||||
onclick="setStatus('ditolak')">Ditolak</div>
|
|
||||||
{{-- {{ $HistoryRefundUser['status'] }} --}}
|
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
<td class="font-weight-600">
|
|
||||||
{{ $HistoryRefundUser['uploadBukti'] }}</td>
|
|
||||||
<td>
|
<td>
|
||||||
<button class="btn btn-info open-detail-modal" data-toggle="modal"
|
<div class="btn-group">
|
||||||
data-target="#awaldetailrefund">Detail</button>
|
<button type="button" class="btn btn-primary dropdown-toggle"
|
||||||
|
data-toggle="dropdown" aria-haspopup="true"
|
||||||
|
aria-expanded="false">
|
||||||
|
Aksi
|
||||||
|
</button>
|
||||||
|
<div class="dropdown-menu">
|
||||||
|
<a class="dropdown-item"
|
||||||
|
href="{{ route('admin-refund.show', $refund->id) }}">Detail</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@endforeach
|
@endforeach
|
||||||
|
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
@ -69,6 +63,6 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
</section>
|
||||||
</div>
|
</div>
|
||||||
@extends('user.refund.detail-refund')
|
|
||||||
@endsection
|
@endsection
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
@extends('user.layout.main')
|
@extends('layouts.main')
|
||||||
@section('content')
|
@section('content')
|
||||||
<div class="main-content">
|
<div class="main-content">
|
||||||
<section class="section">
|
<section class="section">
|
||||||
@ -7,32 +7,39 @@
|
|||||||
<div class="col-md-12">
|
<div class="col-md-12">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
|
<form action="javascript:void(0);" id="formPengajuan" enctype="multipart/form-data">
|
||||||
|
@csrf
|
||||||
<div class="card"
|
<div class="card"
|
||||||
style="border: 1px solid #ddd; border-radius: 8px; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); position: relative; background: linear-gradient(45deg, #f3f3f3, #e0e0e0);">
|
style="border: 1px solid #ddd; border-radius: 8px; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); position: relative; background: linear-gradient(45deg, #f3f3f3, #e0e0e0);">
|
||||||
<div class="card-header d-flex justify-content-center">
|
<div class="card-header d-flex justify-content-center">
|
||||||
<h2>Form Refund Pesanan</h2>
|
<h2>Form Refund Pesanan</h2>
|
||||||
</div>
|
</div>
|
||||||
|
<input type="hidden" name="id" value="{{ $id }}">
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div class="section-title mt-0">Reason Complaint</div>
|
<div class="section-title mt-0">Alasan Komplain</div>
|
||||||
<div class="col-md-12">
|
<div class="col-md-12">
|
||||||
<label for="inputReasonComplaint" class="form-label">Berikan Alasan Mengapa
|
<label for="complaint" class="form-label">Berikan Alasan Mengapa
|
||||||
Melakukan Pengembalian</label>
|
Melakukan Pengembalian</label>
|
||||||
<textarea class="form-control" aria-label="With textarea"></textarea>
|
<textarea class="form-control" aria-label="With textarea" required id="complaint" name='complaint'></textarea>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="section-title">Upload Image / Video</div>
|
<div class="section-title">Unggah Foto dan Video</div>
|
||||||
<div class="custom-file">
|
<div class="custom-file">
|
||||||
<label for="uploadBukti" class="form-label">Sertakan bukti seperti Foto
|
<label for="uploadBukti" class="form-label">Sertakan bukti seperti foto atau
|
||||||
Pesanan</label>
|
video
|
||||||
<input type="file" class="form-control" name="transfer_proof" id="bukti"
|
barang</label>
|
||||||
accept="image/*" required multiple>
|
<input type="file" class="form-control" name="bukti[]" id="fileInput"
|
||||||
|
accept="image/*,video/*" required multiple>
|
||||||
|
<div id="previewContainer">
|
||||||
|
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="d-flex justify-content-center">
|
<div class="d-flex justify-content-center">
|
||||||
<button class="btn btn-info open-detail-modal" data-toggle="modal"
|
<button class="btn btn-info open-detail-modal" type="submit">Ajukan
|
||||||
data-target="#confirmtransaction">Ajukan Pengembalian</button>
|
Pengembalian</button>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
@ -57,10 +64,80 @@
|
|||||||
<a type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></a>
|
<a type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></a>
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<a href="/refund" type="button" class="btn btn-primary" data-bs-dismiss="modal">OK!</a>
|
<a type="button" class="btn btn-primary" data-bs-dismiss="modal">OK!</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{{-- akhir modal konfirmasi --}}
|
{{-- akhir modal konfirmasi --}}
|
||||||
|
|
||||||
|
<script>
|
||||||
|
$(document).ready(function() {
|
||||||
|
$('#formPengajuan').on('submit', function(e) {
|
||||||
|
e.preventDefault();
|
||||||
|
|
||||||
|
let form = this;
|
||||||
|
|
||||||
|
});
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
document.addEventListener('DOMContentLoaded', function() {
|
||||||
|
const fileInput = document.getElementById('fileInput');
|
||||||
|
const previewContainer = document.getElementById('previewContainer');
|
||||||
|
|
||||||
|
fileInput.addEventListener('change', function() {
|
||||||
|
previewContainer.innerHTML = ''; // Hapus pratinjau sebelumnya
|
||||||
|
|
||||||
|
const files = fileInput.files;
|
||||||
|
for (let i = 0; i < files.length; i++) {
|
||||||
|
const file = files[i];
|
||||||
|
const reader = new FileReader();
|
||||||
|
|
||||||
|
reader.onload = function(e) {
|
||||||
|
const preview = document.createElement('div');
|
||||||
|
preview.classList.add('preview-item');
|
||||||
|
|
||||||
|
if (file.type.startsWith('image/')) {
|
||||||
|
preview.innerHTML =
|
||||||
|
`<img src="${e.target.result}" alt="${file.name}" class="preview-img">`;
|
||||||
|
} else if (file.type.startsWith('video/')) {
|
||||||
|
var video = document.createElement('video');
|
||||||
|
var videoUrl = URL.createObjectURL(file);
|
||||||
|
|
||||||
|
video.src = videoUrl;
|
||||||
|
video.onloadedmetadata = function() {
|
||||||
|
var duration = video.duration;
|
||||||
|
|
||||||
|
if (duration > 60) {
|
||||||
|
Swal.fire({
|
||||||
|
title: 'Salah Inputan',
|
||||||
|
text: 'Inputan anda bukan foto atau video',
|
||||||
|
icon: 'error',
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
preview.innerHTML = `
|
||||||
|
<video controls class="preview-video">
|
||||||
|
<source src="${e.target.result}" type="${file.type}">
|
||||||
|
Your browser does not support the video tag.
|
||||||
|
</video>
|
||||||
|
`;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
previewContainer.appendChild(preview);
|
||||||
|
} else {
|
||||||
|
Swal.fire({
|
||||||
|
title: 'Salah Inputan',
|
||||||
|
text: 'Inputan anda bukan foto atau video',
|
||||||
|
icon: 'error',
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
reader.readAsDataURL(file);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
</script>
|
||||||
@endsection
|
@endsection
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
@extends('user.layout.main')
|
@extends('layouts.main')
|
||||||
@section('content')
|
@section('content')
|
||||||
<div class="main-content">
|
<div class="main-content">
|
||||||
<section class="section">
|
<section class="section">
|
||||||
@ -12,19 +12,22 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="section-body">
|
<div class="section-body">
|
||||||
|
|
||||||
|
<div class="row mt-sm-4">
|
||||||
|
<div class="col-sm-12 col-md-12 col-lg-5">
|
||||||
<h2 class="section-title">
|
<h2 class="section-title">
|
||||||
Admin</h2>
|
Admin</h2>
|
||||||
<h2 class="section-buyer">
|
<h2 class="section-buyer">
|
||||||
{{ $transaction->data_pembeli->nama_depan . ' ' . $transaction->data_pembeli->nama_belakang }}</h2>
|
{{ $transaction->data_pembeli->nama_depan . ' ' . $transaction->data_pembeli->nama_belakang }}
|
||||||
|
</h2>
|
||||||
<h2 class="section-seller">
|
<h2 class="section-seller">
|
||||||
{{ $transaction->data_penjual->nama_depan . ' ' . $transaction->data_penjual->nama_belakang }}</h2>
|
{{ $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>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row mt-sm-4">
|
|
||||||
<div class="col-12 col-md-12 col-lg-5">
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-12">
|
<div class="col-12">
|
||||||
<div class="activities">
|
<div class="activities">
|
||||||
@ -35,11 +38,11 @@
|
|||||||
class="activity-icon {{ $tracking->background }} text-white shadow-primary">
|
class="activity-icon {{ $tracking->background }} text-white shadow-primary">
|
||||||
<i class="{{ $tracking->judul }}" style="font-size: 30px;"
|
<i class="{{ $tracking->judul }}" style="font-size: 30px;"
|
||||||
aria-hidden="true"></i>
|
aria-hidden="true"></i>
|
||||||
<!-- Mengganti ikon dengan ikon clipboard-list dan mengatur ukuran ikon -->
|
|
||||||
</div>
|
</div>
|
||||||
<div class="activity-detail">
|
<div class="activity-detail">
|
||||||
<div class="mb-2">
|
<div class="mb-2">
|
||||||
<span class="text-job text-primary">{{ $tracking->created_at }}</span>
|
<span
|
||||||
|
class="text-job text-primary">{{ date('F j, Y, g:i:s a', strtotime($tracking->created_at)) }}</span>
|
||||||
</div>
|
</div>
|
||||||
<p>{{ $tracking->deskripsi }}</p>
|
<p>{{ $tracking->deskripsi }}</p>
|
||||||
</div>
|
</div>
|
||||||
@ -48,7 +51,6 @@
|
|||||||
<div class="activity">
|
<div class="activity">
|
||||||
<div class="activity-icon bg-primary text-white shadow-primary">
|
<div class="activity-icon bg-primary text-white shadow-primary">
|
||||||
<i class="fas fa-ban" style="font-size: 36px;"></i>
|
<i class="fas fa-ban" style="font-size: 36px;"></i>
|
||||||
<!-- Mengganti ikon dengan ikon clipboard-list dan mengatur ukuran ikon -->
|
|
||||||
</div>
|
</div>
|
||||||
<div class="activity-detail">
|
<div class="activity-detail">
|
||||||
<div class="mb-2">
|
<div class="mb-2">
|
||||||
@ -63,6 +65,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="col-lg-7 col-sm-12">
|
||||||
<div class="section-body">
|
<div class="section-body">
|
||||||
<div class="invoice">
|
<div class="invoice">
|
||||||
<div class="invoice-print">
|
<div class="invoice-print">
|
||||||
@ -91,28 +94,6 @@
|
|||||||
</address>
|
</address>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<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">
|
|
||||||
<address>
|
|
||||||
<strong>Metode Pembayaran:</strong><br>
|
|
||||||
Visa ending **** 4242<br>
|
|
||||||
npannisa@gmail.com
|
|
||||||
</address>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-6 text-md-right">
|
|
||||||
<address>
|
|
||||||
<strong>Tanggal Pembayaran:</strong><br>
|
|
||||||
{{ $transaction->updated_at }}<br><br>
|
|
||||||
{{-- {{$transaction->tanggal_pembayaran}}<br><br> --}}
|
|
||||||
</address>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -135,37 +116,42 @@
|
|||||||
<td class="text-center">{{ $transaction->harga_barang }}</td>
|
<td class="text-center">{{ $transaction->harga_barang }}</td>
|
||||||
<td class="text-center">{{ $transaction->jumlah_barang }}</td>
|
<td class="text-center">{{ $transaction->jumlah_barang }}</td>
|
||||||
<td class="text-right">
|
<td class="text-right">
|
||||||
{{ $transaction->harga_barang * $transaction->jumlah_barang }}</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>
|
|
||||||
<div class="images">
|
<div class="images">
|
||||||
<img src="{{ asset('assets/img/visa.png') }}" alt="visa">
|
@if ($transaction->metode_pembayaran != null)
|
||||||
<img src="{{ asset('assets/img/jcb.png') }}" alt="jcb">
|
<img style="width: 20%; height: 20%;"
|
||||||
<img src="{{ asset('assets/img/mastercard.png') }}" alt="mastercard">
|
src="{{ asset('assets/img/metode_pembayaran/' . $transaction->metode_pembayaran . '.png') }}"
|
||||||
<img src="{{ asset('assets/img/paypal.png') }}" alt="paypal">
|
alt="{{ $transaction->metode_pembayaran }}">
|
||||||
|
@endif
|
||||||
</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
|
||||||
|
{{ number_format($transaction->total_harga, 2, ',', '.') }}
|
||||||
|
</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">Biaya Admin</div>
|
||||||
<div class="invoice-detail-value">
|
<div class="invoice-detail-value">
|
||||||
Rp {{ number_format($transaction->total_keuntungan, 2, ',', '.') }}
|
Rp
|
||||||
|
{{ number_format($transaction->total_keuntungan, 2, ',', '.') }}
|
||||||
</div>
|
</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 {{ number_format($transaction->total_bayar, 2, ',', '.') }}
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -177,6 +163,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
</section>
|
</section>
|
||||||
</div>
|
</div>
|
||||||
@endsection
|
@endsection
|
||||||
|
@ -1,13 +1,13 @@
|
|||||||
@extends('user.layout.main')
|
@extends('layouts.main')
|
||||||
@section('content')
|
@section('content')
|
||||||
<div class="main-content">
|
<div class="main-content">
|
||||||
<section class="section">
|
<section class="section">
|
||||||
<div class="section-header">
|
<div class="section-header">
|
||||||
|
<h1>Halaman Pembeli</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('user.index') }}">Dashboard</a></div>
|
||||||
<div class="breadcrumb-item"><a href="#"> Transaction</a></div>
|
<div class="breadcrumb-item">Transaksi Pembeli
|
||||||
<div class="breadcrumb-item">Manajemen Kontak</div>
|
</div>
|
||||||
<div class="breadcrumb-item">Halaman Refund</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -15,7 +15,7 @@
|
|||||||
<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>Selamat Datang! {{ Auth::user()->nama_depan }}</h1>
|
||||||
<p class="lead">Mau belanja apa hari ini?</p>
|
<p class="lead">Mau belanja apa hari ini?</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -23,7 +23,7 @@
|
|||||||
<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="{{ route('user-pembeli.create') }}">
|
||||||
<button class="btn btn-primary btn-lg">Lakukan Transaksi Baru</button>
|
<button class="btn btn-primary btn-lg">Lakukan Transaksi Baru</button>
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
@ -33,26 +33,40 @@
|
|||||||
<table class="table table-striped" id="table-3">
|
<table class="table table-striped" id="table-3">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th>No</th>
|
<th class="text-center">
|
||||||
<th>Order ID</th>
|
#
|
||||||
|
</th>
|
||||||
<th>Penjual</th>
|
<th>Penjual</th>
|
||||||
<th>Total</th>
|
<th>Total</th>
|
||||||
<th>Tanggal Pembuatan</th>
|
<th>Tanggal Transaksi</th>
|
||||||
<th>Tanggal Update</th>
|
<th>Tanggal Update</th>
|
||||||
<th>Status</th>
|
<th>Status</th>
|
||||||
<th>Aksi</th>
|
<th>Aksi</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
@foreach ($transactions as $transaction)
|
@forelse ($transactions as $transaction)
|
||||||
<tr>
|
<tr>
|
||||||
<td>{{ $loop->iteration }}</td>
|
<td>{{ $loop->iteration }}</td>
|
||||||
<td>{{ $transaction->id }}</td>
|
<td>{{ $transaction->data_penjual->nama_depan . ' ' . $transaction->data_penjual->nama_belakang }}
|
||||||
<td>{{ $transaction->data_penjual->nama_depan.' '.$transaction->data_penjual->nama_belakang }}</td>
|
</td>
|
||||||
<td>Rp {{ number_format($transaction->total_bayar, 2, ',', '.') }}</td>
|
<td>Rp {{ number_format($transaction->total_bayar, 2, ',', '.') }}</td>
|
||||||
<td>{{ $transaction->created_at }}</td>
|
<td>{{ $transaction->created_at }}</td>
|
||||||
<td>{{ $transaction->updated_at }}</td>
|
<td>{{ $transaction->updated_at }}</td>
|
||||||
<td>{{ ($transaction->status == 'pending' ? 'Menunggu Pembayaran' : 'Selesai') }}</td>
|
<td><a href="#" data-toggle="modal"
|
||||||
|
data-target="#modalKeteranganStatus"
|
||||||
|
class="badge {{ in_array($transaction->status, ['pending', 'created'])
|
||||||
|
? 'badge-light'
|
||||||
|
: (in_array($transaction->status, ['settlement', 'capture'])
|
||||||
|
? 'badge-info'
|
||||||
|
: (in_array($transaction->status, ['process', 'sending', 'sended'])
|
||||||
|
? 'badge-warning'
|
||||||
|
: (in_array($transaction->status, ['cancel', 'expire', 'failure', 'refund'])
|
||||||
|
? 'badge-danger'
|
||||||
|
: ($transaction->status == 'finished'
|
||||||
|
? 'badge-success'
|
||||||
|
: '')))) }}">{{ ucwords($transaction->status) }}</a>
|
||||||
|
</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,29 +76,44 @@
|
|||||||
</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>
|
|
||||||
{{-- @if ($transaction->status == 'Pending')
|
|
||||||
|
|
||||||
@endif --}}
|
|
||||||
<li><a class="dropdown-item"
|
<li><a class="dropdown-item"
|
||||||
href="/refund-transaction">Refund</a></li>
|
href="{{ route('user-transaction.detail.pembeli', $transaction->id) }}">Detail</a>
|
||||||
{{-- <li><a class="dropdown-item"
|
</li>
|
||||||
href="/invoice-transaction">Bayar</a></li> --}}
|
|
||||||
|
{{-- di midtrans statusnya settlement --}}
|
||||||
|
@if ($transaction->status == 'sended')
|
||||||
|
<li><a class="dropdown-item" data-toggle="modal"
|
||||||
|
data-target="#modalFinish" id="tracking"
|
||||||
|
data-id="{{ $transaction->id }}"
|
||||||
|
href="#">Selesaikan</a>
|
||||||
|
</li>
|
||||||
|
@endif
|
||||||
|
|
||||||
|
@if (in_array($transaction->status, ['pending', 'created']))
|
||||||
<li><a class="dropdown-item" id="bayar"
|
<li><a class="dropdown-item" id="bayar"
|
||||||
data-id="{{ $transaction->id }}"
|
data-id="{{ $transaction->id }}"
|
||||||
data-token="{{$transaction->token}}">Bayar</a>
|
data-token="{{ $transaction->token }}"
|
||||||
{{-- data-id="{{ $transaction }}">Bayar</a> --}}
|
href="#">Bayar</a>
|
||||||
|
</li>
|
||||||
|
@endif
|
||||||
|
|
||||||
|
@if (in_array($transaction->status, ['pending', 'authorize', 'capture', 'created']))
|
||||||
|
<li><a href="#" data-id="{{ $transaction->id }}"
|
||||||
|
id="cancel" class="dropdown-item">Batal</a></li>
|
||||||
|
@endif
|
||||||
|
|
||||||
|
@if (!$transaction->transactionDescription->isEmpty())
|
||||||
|
<li><a class="dropdown-item" data-toggle="modal"
|
||||||
|
data-target="#modalTracking"
|
||||||
|
data-transaction="{{ $transaction->transactionDescription }}">Tracking</a>
|
||||||
</li>
|
</li>
|
||||||
<li><a class="dropdown-item" id="selesai"
|
@endif
|
||||||
data-id="{{ $transaction->id }}">Selesai</a>
|
|
||||||
{{-- data-id="{{ $transaction }}">Selesai</a> --}}
|
|
||||||
</li>
|
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@endforeach
|
@empty
|
||||||
|
@endforelse
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
@ -94,8 +123,15 @@
|
|||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
</div>
|
</div>
|
||||||
@extends('user.transaction.pembeli.modal-bayar-transaction')
|
<!-- Tambahkan elemen progress bar ke tampilan Anda (dengan awalnya disembunyikan) -->
|
||||||
|
<div class="progress" style="display: none;">
|
||||||
|
<div class="progress-bar" role="progressbar" style="width: 0%;" aria-valuenow="0" aria-valuemin="0"
|
||||||
|
aria-valuemax="100"></div>
|
||||||
|
</div>
|
||||||
@extends('user.transaction.pembeli.modal-end-transaction')
|
@extends('user.transaction.pembeli.modal-end-transaction')
|
||||||
|
@extends('user.transaction.pembeli.modal-tracking')
|
||||||
|
@extends('user.transaction.pembeli.modal-keterangan-status')
|
||||||
|
|
||||||
<script type="text/javascript" src="https://app.sandbox.midtrans.com/snap/snap.js"
|
<script type="text/javascript" src="https://app.sandbox.midtrans.com/snap/snap.js"
|
||||||
data-client-key="SB-Mid-client-rk6kY5XbPLChy3Lg"></script>
|
data-client-key="SB-Mid-client-rk6kY5XbPLChy3Lg"></script>
|
||||||
<script>
|
<script>
|
||||||
@ -108,75 +144,253 @@
|
|||||||
|
|
||||||
snap.pay(token, {
|
snap.pay(token, {
|
||||||
onSuccess: function(result) {
|
onSuccess: function(result) {
|
||||||
const formData = new FormData();
|
|
||||||
formData.append('status', result.transaction_status);
|
|
||||||
formData.append('tanggal_pembayaran', result.transaction_time);
|
|
||||||
formData.append('metode_pembayaran', result.payment_type);
|
|
||||||
|
|
||||||
$.ajaxSetup({
|
$.ajaxSetup({
|
||||||
headers: {
|
headers: {
|
||||||
'X-CSRF-TOKEN': csrfToken
|
'X-CSRF-TOKEN': csrfToken
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
$.ajax({
|
$.ajax({
|
||||||
url:"{{route('payment-transaction.pembeli',':id')}}".replace(':id',id),
|
url: "{{ route('user-pembeli.pay', ':id') }}"
|
||||||
|
.replace(':id', id),
|
||||||
type: "POST",
|
type: "POST",
|
||||||
data: formData,
|
|
||||||
contentType: false,
|
contentType: false,
|
||||||
processData: false,
|
processData: false,
|
||||||
success: function(response) {
|
success: function(response) {
|
||||||
Swal.fire({
|
Swal.fire({
|
||||||
title: response.status ? 'Berhasil' : 'Gagal',
|
title: response.status ? 'Berhasil' :
|
||||||
|
'Gagal',
|
||||||
text: response.message,
|
text: response.message,
|
||||||
icon: response.status ? 'success' : 'error',
|
icon: response.status ? 'success' :
|
||||||
|
'error',
|
||||||
confirmButtonText: 'OK'
|
confirmButtonText: 'OK'
|
||||||
|
}).then(function() {
|
||||||
|
location.reload();
|
||||||
});
|
});
|
||||||
console.log(response);
|
console.log(response);
|
||||||
},error:function(error){
|
},
|
||||||
|
error: function(error) {
|
||||||
Swal.fire({
|
Swal.fire({
|
||||||
title: 'Gagal',
|
title: 'Gagal',
|
||||||
text: 'Gagal mengupdate pembayaran ke database',
|
text: 'Gagal mengupdate pembayaran ke database',
|
||||||
icon: 'error'
|
icon: 'error'
|
||||||
});
|
});
|
||||||
|
console.log(result);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
console.log(result);
|
console.log(result);
|
||||||
},
|
},
|
||||||
onPending: function(result) {
|
onPending: function(result) {
|
||||||
/* You may add your own implementation here */
|
$.ajaxSetup({
|
||||||
// alert("wating your payment!");
|
headers: {
|
||||||
|
'X-CSRF-TOKEN': csrfToken
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
url: "{{ route('user-pembeli.pay', ':id') }}"
|
||||||
|
.replace(':id', id),
|
||||||
|
type: "POST",
|
||||||
|
contentType: false,
|
||||||
|
processData: false,
|
||||||
|
success: function(response) {
|
||||||
Swal.fire({
|
Swal.fire({
|
||||||
title: 'Ditunda',
|
title: 'Berhasil',
|
||||||
text: 'Pemabayaran ditunda. Silahkan tunggu sebentar ' + result,
|
text: response.message,
|
||||||
icon: 'info'
|
icon: 'info',
|
||||||
|
confirmButtonText: 'OK'
|
||||||
|
});
|
||||||
|
console.log(response);
|
||||||
|
},
|
||||||
|
error: function(error) {
|
||||||
|
Swal.fire({
|
||||||
|
title: 'Gagal',
|
||||||
|
text: 'Gagal mengupdate pembayaran ke database',
|
||||||
|
icon: 'error'
|
||||||
|
});
|
||||||
|
console.log(error);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
console.log(result);
|
console.log(result);
|
||||||
},
|
},
|
||||||
onError: function(result) {
|
onError: function(result) {
|
||||||
/* You may add your own implementation here */
|
$.ajaxSetup({
|
||||||
|
headers: {
|
||||||
|
'X-CSRF-TOKEN': csrfToken
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
url: "{{ route('user-pembeli.pay', ':id') }}"
|
||||||
|
.replace(':id', id),
|
||||||
|
type: "POST",
|
||||||
|
contentType: false,
|
||||||
|
processData: false,
|
||||||
|
success: function(response) {
|
||||||
Swal.fire({
|
Swal.fire({
|
||||||
title: 'Gagal',
|
title: 'Gagal',
|
||||||
text: 'Terjadi kesalahan ' + result,
|
text: response.message,
|
||||||
|
icon: 'error',
|
||||||
|
});
|
||||||
|
console.log(response);
|
||||||
|
},
|
||||||
|
error: function(error) {
|
||||||
|
Swal.fire({
|
||||||
|
title: 'Gagal',
|
||||||
|
text: 'Gagal mengupdate pembayaran ke database',
|
||||||
|
icon: 'error'
|
||||||
|
});
|
||||||
|
console.log(error);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
Swal.fire({
|
||||||
|
title: 'Gagal',
|
||||||
|
text: 'Terjadi kesalahan karena ' + result,
|
||||||
icon: 'error'
|
icon: 'error'
|
||||||
});
|
});
|
||||||
console.log(result);
|
console.log(result);
|
||||||
},
|
},
|
||||||
onClose: function(error) {
|
onClose: function(error) {
|
||||||
/* You may add your own implementation here */
|
|
||||||
Swal.fire({
|
Swal.fire({
|
||||||
title: 'Ditunda',
|
title: 'Ditunda',
|
||||||
text: 'Kamu menutup halaman pembayaran. Silahkan masuk lagi untuk melakukan pembayaran',
|
text: 'Kamu menutup halaman pembayaran. Silahkan lakukan pembayaran nanti',
|
||||||
icon: 'warning'
|
icon: 'info'
|
||||||
});
|
});
|
||||||
console.log(error);
|
console.log(error);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
$('#table-3').on('click', '#selesai', function() {
|
$('#table-3').on('click', '#cancel', function() {
|
||||||
const id = $(this).data('id');
|
const id = $(this).data('id');
|
||||||
console.log(id);
|
const csrfToken = $('meta[name="csrf-token"]').attr('content');
|
||||||
|
|
||||||
|
Swal.fire({
|
||||||
|
title: 'Batal Transaksi?',
|
||||||
|
text: 'Apakah anda yakin batal transaksi?',
|
||||||
|
icon: 'info',
|
||||||
|
showCancelButton: true,
|
||||||
|
confirmButtonText: 'Ya, batal',
|
||||||
|
cancelButtonText: 'Tidak',
|
||||||
|
}).then((result) => {
|
||||||
|
if (result.isConfirmed) {
|
||||||
|
$.ajaxSetup({
|
||||||
|
headers: {
|
||||||
|
'X-CSRF-TOKEN': csrfToken
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
url: "{{ route('user-pembeli.cancel', ':id') }}"
|
||||||
|
.replace(':id', id),
|
||||||
|
type: "POST",
|
||||||
|
contentType: false,
|
||||||
|
processData: false,
|
||||||
|
success: function(response) {
|
||||||
|
Swal.fire({
|
||||||
|
title: response.status ? 'Berhasil' :
|
||||||
|
'Gagal',
|
||||||
|
text: response.message,
|
||||||
|
icon: response.status ? 'success' : 'error'
|
||||||
|
}).then(function() {
|
||||||
|
location.reload();
|
||||||
|
});
|
||||||
|
console.log(response);
|
||||||
|
},
|
||||||
|
error: function(error) {
|
||||||
|
Swal.fire({
|
||||||
|
title: 'Gagal',
|
||||||
|
text: response.message,
|
||||||
|
icon: 'error'
|
||||||
|
});
|
||||||
|
console.log(error);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
{{-- Modal --}}
|
||||||
|
<script>
|
||||||
|
$(document).ready(function() {
|
||||||
|
$('#modalTracking').on('show.bs.modal', function(event) {
|
||||||
|
var triggerLink = $(event.relatedTarget); // Tombol yang memicu modal
|
||||||
|
var transactionDatas = triggerLink.data('transaction'); // Ambil data dari tombol
|
||||||
|
|
||||||
|
// Buat variabel untuk menyimpan HTML aktivitas
|
||||||
|
transactionDatas = transactionDatas.reverse();
|
||||||
|
var activitiesHtml = '';
|
||||||
|
|
||||||
|
// Periksa apakah ada data transaksi
|
||||||
|
if (transactionDatas && transactionDatas.length > 0) {
|
||||||
|
// Iterasi melalui data transaksi dan tambahkan ke activitiesHtml
|
||||||
|
$.each(transactionDatas, function(index, transactionDescription) {
|
||||||
|
activitiesHtml += `
|
||||||
|
<div class="activity">
|
||||||
|
<div class="activity-icon ${transactionDescription.background} text-white shadow-primary">
|
||||||
|
<i class="${transactionDescription.judul}" style="font-size: 36px;"></i>
|
||||||
|
</div>
|
||||||
|
<div class="activity-detail">
|
||||||
|
<div class="mb-2">
|
||||||
|
<span class="text-job text-primary">${new Date(transactionDescription.created_at).toLocaleString()}</span>
|
||||||
|
</div>
|
||||||
|
<p>${transactionDescription.deskripsi}</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
`;
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
// Tidak ada data transaksi, tambahkan pesan kosong
|
||||||
|
activitiesHtml += `
|
||||||
|
<div class="activity">
|
||||||
|
<div class="activity-icon bg-primary text-white shadow-primary">
|
||||||
|
<i class="fas fa-ban" style="font-size: 36px;"></i>
|
||||||
|
</div>
|
||||||
|
<div class="activity-detail">
|
||||||
|
<div class="mb-2">
|
||||||
|
<span class="text-job text-primary">--, --:--:-- --</span>
|
||||||
|
</div>
|
||||||
|
<p>Kosong</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
`;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Menampilkan data dalam modal
|
||||||
|
var modal = $(this);
|
||||||
|
modal.find('.activities').html(activitiesHtml);
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#modalFinish').on('show.bs.modal', function(event) {
|
||||||
|
var triggerLink = $(event.relatedTarget);
|
||||||
|
var id = triggerLink.data('id');
|
||||||
|
var activitiesHtml = '';
|
||||||
|
|
||||||
|
var modal = $(this);
|
||||||
|
activitiesHtml += `
|
||||||
|
<a href="#" type="button" class="btn btn-primary" data-id="${id}" id="finishTransaction">Selesaikan Transaksi</a>
|
||||||
|
<a href="#" type="button" class="btn btn-danger" data-id="${id}" id="complain">Ajukan Komplain</a>
|
||||||
|
`;
|
||||||
|
modal.find('.modal-footer').html(activitiesHtml);
|
||||||
|
console.log(id);
|
||||||
|
});
|
||||||
|
|
||||||
|
// selesai
|
||||||
|
$('#modalFinish').on('click', '#finishTransaction', function() {
|
||||||
|
var id = $(this).data('id');
|
||||||
|
console.log(id);
|
||||||
|
});
|
||||||
|
|
||||||
|
// complain
|
||||||
|
$('#modalFinish').on('click', '#complain', function() {
|
||||||
|
var id = $(this).data('id');
|
||||||
|
console.log(id);
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
});
|
||||||
|
</script>
|
||||||
@endsection
|
@endsection
|
||||||
|
@ -1,14 +1,13 @@
|
|||||||
@extends('user.layout.main')
|
@extends('layouts.main')
|
||||||
@section('content')
|
@section('content')
|
||||||
<div class="main-content">
|
<div class="main-content">
|
||||||
<section class="section">
|
<section class="section">
|
||||||
<div class="section-header">
|
<div class="section-header">
|
||||||
<h1>Invoice</h1>
|
<h1>Invoice</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('user.index') }}">Dashboard</a></div>
|
||||||
<div class="breadcrumb-item"><a href="#"> Transaction</a></div>
|
<div class="breadcrumb-item"><a href="{{ route('user-pembeli.index') }}"> Transaction</a></div>
|
||||||
<div class="breadcrumb-item">Manajemen Kontak</div>
|
<div class="breadcrumb-item">Invoice</div>
|
||||||
<div class="breadcrumb-item">Halaman Refund</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
@ -1,33 +0,0 @@
|
|||||||
<div class="modal fade" id="bayar" 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">
|
|
||||||
<h3 class="modal-title fs-5" id="staticBackdropLabel">Lakukan Pembayaran</h3>
|
|
||||||
<a type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></a>
|
|
||||||
</div>
|
|
||||||
<div class="modal-body">
|
|
||||||
<form action="#" method="post">
|
|
||||||
<div class="mb-3">
|
|
||||||
<label for="nominal" class="form-label">Nominal</label>
|
|
||||||
<input type="text" class="form-control" name="nominal" id="nominal" required>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="mb-3">
|
|
||||||
<label for="tujuan" class="form-label">Tujuan</label>
|
|
||||||
<input type="text" class="form-control" name="tujuan" id="tujuan" required>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="mb-3">
|
|
||||||
<label for="textare" class="form-label">Deskripsi</label>
|
|
||||||
<textarea class="form-control" id="deskripsi" rows="3"></textarea>
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="modal-footer">
|
|
||||||
<a href="/invoice-transaction" type="button" class="btn btn-primary">Selesai</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
@ -1,4 +1,4 @@
|
|||||||
<div class="modal fade" id="selesai" data-bs-backdrop="static" data-bs-keyboard="false" tabindex="-1"
|
<div class="modal fade" id="modalFinish" data-bs-backdrop="static" data-bs-keyboard="false" tabindex="-1"
|
||||||
aria-labelledby="staticBackdropLabel" aria-hidden="true">
|
aria-labelledby="staticBackdropLabel" aria-hidden="true">
|
||||||
<div class="modal-dialog modal-dialog-centered">
|
<div class="modal-dialog modal-dialog-centered">
|
||||||
<!-- Menggunakan class modal-dialog-centered untuk memusatkan modal -->
|
<!-- Menggunakan class modal-dialog-centered untuk memusatkan modal -->
|
||||||
@ -8,8 +8,7 @@
|
|||||||
<a type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></a>
|
<a type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></a>
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-footer d-flex justify-content-center">
|
<div class="modal-footer d-flex justify-content-center">
|
||||||
<a href="/pembeli" type="button" class="btn btn-danger">Pesanan Belum diterima</a>
|
|
||||||
<a href="/pembeli" type="button" class="btn btn-primary">Pesanan diterima</a>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -0,0 +1,72 @@
|
|||||||
|
<div class="modal fade" id="modalKeteranganStatus" 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">
|
||||||
|
<h3 class="modal-title fs-5" id="staticBackdropLabel">Keterangan Status Transaksi</h3>
|
||||||
|
{{-- <a type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close">×</a> --}}
|
||||||
|
</div>
|
||||||
|
<div class="modal-body">
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Created</label>
|
||||||
|
<p class="form-control">Transaksi baru telah dibuat.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Pending</label>
|
||||||
|
<p class="form-control">Transaksi menunggu pembayaran.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Capture</label>
|
||||||
|
<p class="form-control">Transaksi berhasil dan saldo kartu berhasil diambil. Jika Anda tidak mengambil tindakan apa pun, transaksi akan berhasil diselesaikan dalam waktu 24 jam atau dalam waktu penyelesaian yang disepakati dengan bank mitra Anda dan status transaksi anda akan berubah menjadi settlement. Sehingga aman untuk mengasumsikan pembayaran berhasil.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Settlement</label>
|
||||||
|
<p class="form-control">Transaksi berhasil diselesaikan. Dana telah dikreditkan ke Rekber.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Cancel</label>
|
||||||
|
<p class="form-control">Transaksi dibatalkan. Hal ini bisa dipicu oleh Midtrans, bank partner atau pembeli.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Expire</label>
|
||||||
|
<p class="form-control">Transaksi tidak dapat diproses karena pembayaran tertunda atau melebihi batas pembayaran.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Process</label>
|
||||||
|
<p class="form-control">Transaksi/pesanan pembeli sedang diproses oleh penjual.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Sending</label>
|
||||||
|
<p class="form-control">Pesanan sedang dikirim oleh penjual.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Sended</label>
|
||||||
|
<p class="form-control">Pesanan sudah sampai ditujuan pembeli.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Finished</label>
|
||||||
|
<p class="form-control">Transaksi telah selesai dan diselesaikan oleh pembeli.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Failure</label>
|
||||||
|
<p class="form-control">Terjadi kesalahan tak terduga selama pemrosesan transaksi.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Refund</label>
|
||||||
|
<p class="form-control">Transaksi ditandai untuk dikembalikan. Status pengembalian dana dipicu oleh pembeli.</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
@ -0,0 +1,25 @@
|
|||||||
|
<!-- Modal -->
|
||||||
|
<div class="modal fade" id="modalTracking" 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>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
@ -1,6 +1,5 @@
|
|||||||
@extends('user.layout.main')
|
@extends('layouts.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') }}">
|
<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">
|
||||||
@ -76,13 +75,7 @@
|
|||||||
<input type="number" class="form-control" name="jumlah_barang" id="jumlahBarang"
|
<input type="number" class="form-control" name="jumlah_barang" id="jumlahBarang"
|
||||||
placeholder="Jumlah satuan">
|
placeholder="Jumlah satuan">
|
||||||
</div>
|
</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">
|
<div class="form-group">
|
||||||
<label for="inputDeskripsi">
|
<label for="inputDeskripsi">
|
||||||
<h5>Deskripsi</h5>
|
<h5>Deskripsi</h5>
|
||||||
@ -99,7 +92,7 @@
|
|||||||
|
|
||||||
<div class="form-row">
|
<div class="form-row">
|
||||||
<label style="margin-right: 200px;" id="biayaAdmin" data-admin="">Biaya Admin
|
<label style="margin-right: 200px;" id="biayaAdmin" data-admin="">Biaya Admin
|
||||||
(0.1%)</label>
|
({{ $persentase_keuntungan }}%)</label>
|
||||||
<div style="display: inline-block;" id="totalBiayaAdmin">Rp 0,00</div>
|
<div style="display: inline-block;" id="totalBiayaAdmin">Rp 0,00</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -123,276 +116,11 @@
|
|||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
</div>
|
</div>
|
||||||
|
@extends('user.transaction.pembeli.modal-keterangan-status')
|
||||||
<script src="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/js/select2.min.js"></script>
|
<script src="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/js/select2.min.js"></script>
|
||||||
<script>
|
<script>
|
||||||
$(document).ready(function() {
|
var persentaseKeuntungan = {{ $persentase_keuntungan }};
|
||||||
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() {
|
|
||||||
$('#selectContact').val(null).trigger("change");
|
|
||||||
});
|
|
||||||
|
|
||||||
$('#inputPenjual').on('input', function() {
|
|
||||||
let emailInput = $('#inputPenjual').val();
|
|
||||||
if (emailInput.trim() == '') {
|
|
||||||
$('#selectContact').prop('disabled', false);
|
|
||||||
$('#deleteOption').prop('disabled', false);
|
|
||||||
} else {
|
|
||||||
$('#selectContact').prop('disabled', true);
|
|
||||||
$('#deleteOption').prop('disabled', true);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
$('#checkButton').click(function() {
|
|
||||||
let email = document.querySelector('[name="input_penjual"]').value;
|
|
||||||
const csrfToken = $('meta[name="csrf-token"]').attr('content');
|
|
||||||
|
|
||||||
if (email.trim() == '') {
|
|
||||||
Swal.fire({
|
|
||||||
title: 'Gagal',
|
|
||||||
text: 'Email tidak boleh kosong',
|
|
||||||
icon: 'error'
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
if (email != "{{ Auth::user()->email }}") {
|
|
||||||
$.ajaxSetup({
|
|
||||||
headers: {
|
|
||||||
'X-CSRF-TOKEN': csrfToken
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
$.ajax({
|
|
||||||
url: "{{ route('user-contact.email', ':email') }}".replace(':email',
|
|
||||||
email),
|
|
||||||
type: 'GET',
|
|
||||||
success: function(response) {
|
|
||||||
if (response.status) {
|
|
||||||
Swal.fire({
|
|
||||||
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 = [];
|
|
||||||
|
|
||||||
let penjual = '';
|
|
||||||
if (opsiKontak != "" && inputKontak != "") {
|
|
||||||
penjual = opsiKontak;
|
|
||||||
} else if (opsiKontak == "" && inputKontak != "") {
|
|
||||||
penjual = inputKontak;
|
|
||||||
} else if (inputKontak == "" && opsiKontak != "") {
|
|
||||||
penjual = opsiKontak;
|
|
||||||
} else {
|
|
||||||
console.log('Kosong');
|
|
||||||
emptyInput.push("Kolom penjual tidak boleh kosong");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (penjual == "{{ Auth::user()->email }}") {
|
|
||||||
emptyInput.push("Email penjual tidak boleh sama dengan email pembeli");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (namaBarang == "") {
|
|
||||||
emptyInput.push("Nama barang tidak boleh kosong");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (hargaBarang == "") {
|
|
||||||
emptyInput.push("Harga barang tidak boleh kosong");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (satuanBarang == "") {
|
|
||||||
emptyInput.push("Satuan barang tidak boleh kosong");
|
|
||||||
}
|
|
||||||
|
|
||||||
if (jumlahBarang == "") {
|
|
||||||
emptyInput.push("Jumlah barang tidak boleh kosong");
|
|
||||||
}
|
|
||||||
|
|
||||||
// if (batasPengiriman == "") {
|
|
||||||
// emptyInput.push("Batas pengiriman tidak boleh kosong");
|
|
||||||
// }
|
|
||||||
|
|
||||||
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>
|
</script>
|
||||||
|
<script src="{{ asset('assets/js/progress_bar/progress_bar.js') }}"></script>
|
||||||
|
<script src="{{ asset('assets/js/user/new-transaction.js') }}"></script>
|
||||||
@endsection
|
@endsection
|
||||||
|
@ -1,14 +1,12 @@
|
|||||||
@extends('user.layout.main')
|
@extends('layouts.main')
|
||||||
@section('content')
|
@section('content')
|
||||||
<div class="main-content">
|
<div class="main-content">
|
||||||
<section class="section">
|
<section class="section">
|
||||||
<div class="section-header">
|
<div class="section-header">
|
||||||
|
<h1>Halaman Penjual</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('user.index') }}">Dashboard</a></div>
|
||||||
<div class="breadcrumb-item"><a href="#"> Transaction</a></div>
|
<div class="breadcrumb-item">Transaksi Penjual</div>
|
||||||
<div class="breadcrumb-item">Manajemen Kontak</div>
|
|
||||||
<div class="breadcrumb-item">Halaman Refund</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -17,7 +15,7 @@
|
|||||||
<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 to the Rekber Aplication</h1>
|
<h1>Hallo!!</h1>
|
||||||
<p class="lead">Selamat Datang {{ Auth::user()->nama_depan }}!</p>
|
<p class="lead">Selamat Datang {{ Auth::user()->nama_depan }}!</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -26,30 +24,45 @@
|
|||||||
<div class="card">
|
<div class="card">
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div class="table-responsive">
|
<div class="table-responsive">
|
||||||
<table class="table table-striped" id="table-1">
|
<table class="table table-striped" id="table-3">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th>#</th>
|
<th class="text-center">
|
||||||
|
#
|
||||||
|
</th>
|
||||||
<th>Order ID</th>
|
<th>Order ID</th>
|
||||||
<th>Pembeli</th>
|
<th>Pembeli</th>
|
||||||
<th>Total</th>
|
<th>Total</th>
|
||||||
<th>Batas Pengiriman Barang</th>
|
<th>Tanggal Pembuatan</th>
|
||||||
|
<th>Tanggal Update</th>
|
||||||
<th>Status</th>
|
<th>Status</th>
|
||||||
<th>Action</th>
|
<th>Aksi</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
@foreach ($transactions as $transaction)
|
@forelse ($transactions as $transaction)
|
||||||
<tr>
|
<tr>
|
||||||
<td>{{ $loop->iteration }}</td>
|
<td>{{ $loop->iteration }}</td>
|
||||||
<td class="font-weight-600">{{ $transaction->id }}</td>
|
<td>{{ $transaction->id }}</td>
|
||||||
<td class="font-weight-600">
|
<td>{{ $transaction->data_pembeli->nama_depan . ' ' . $transaction->data_pembeli->nama_belakang }}
|
||||||
{{ ucwords(strtolower($transaction->data_pembeli->nama_depan . ' ' . $transaction->data_pembeli->nama_belakang)) }}
|
</td>
|
||||||
|
<td>Rp {{ number_format($transaction->total_bayar, 2, ',', '.') }}</td>
|
||||||
|
<td>{{ $transaction->created_at }}</td>
|
||||||
|
<td>{{ $transaction->updated_at }}</td>
|
||||||
|
<td><a href="#" data-toggle="modal"
|
||||||
|
data-target="#modalKeteranganStatus"
|
||||||
|
class="badge {{ in_array($transaction->status, ['pending', 'created'])
|
||||||
|
? 'badge-light'
|
||||||
|
: (in_array($transaction->status, ['settlement', 'capture'])
|
||||||
|
? 'badge-info'
|
||||||
|
: (in_array($transaction->status, ['process', 'sending', 'sended'])
|
||||||
|
? 'badge-warning'
|
||||||
|
: (in_array($transaction->status, ['cancel', 'expire', 'failure', 'refund'])
|
||||||
|
? 'badge-danger'
|
||||||
|
: ($transaction->status == 'finished'
|
||||||
|
? 'badge-success'
|
||||||
|
: '')))) }}">{{ ucwords($transaction->status) }}</a>
|
||||||
</td>
|
</td>
|
||||||
<td class="font-weight-600">{{ $transaction->total_bayar }}</td>
|
|
||||||
{{-- <td class="font-weight-600">{{ $transaction->batas_pengiriman_barang }}</td> --}}
|
|
||||||
<td>{{ $transaction->batas_pengiriman_barang }}</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,16 +72,36 @@
|
|||||||
</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="{{ route('user-penjual.show', $transaction->id) }}">Detail</a>
|
||||||
</li>
|
</li>
|
||||||
|
@if (!$transaction->transactionDescription->isEmpty())
|
||||||
<li><a class="dropdown-item" data-toggle="modal"
|
<li><a class="dropdown-item" data-toggle="modal"
|
||||||
data-target="#tracking">Tracking</a></li>
|
data-target="#modalTracking"
|
||||||
{{-- <li><a class="dropdown-item" href="/tracking">Tracking</a></li> --}}
|
data-transaction="{{ $transaction->transactionDescription }}">Tracking</a>
|
||||||
|
</li>
|
||||||
|
@endif
|
||||||
|
{{-- Setelah dibayar --}}
|
||||||
|
@if ($transaction->status == 'settlement')
|
||||||
|
<li><a class="dropdown-item" href="#">Process</a>
|
||||||
|
</li>
|
||||||
|
@endif
|
||||||
|
{{-- Pengiriman barang --}}
|
||||||
|
@if ($transaction->status == 'progress')
|
||||||
|
<li><a class="dropdown-item" href="#">Kirim
|
||||||
|
Barang</a>
|
||||||
|
</li>
|
||||||
|
@endif
|
||||||
|
@if ($transaction->status == 'sending')
|
||||||
|
<li><a class="dropdown-item" href="#">Barang sudah
|
||||||
|
sampai</a>
|
||||||
|
</li>
|
||||||
|
@endif
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@endforeach
|
@empty
|
||||||
|
@endforelse
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
@ -80,4 +113,56 @@
|
|||||||
</section>
|
</section>
|
||||||
</div>
|
</div>
|
||||||
@extends('user.transaction.penjual.modal-tracking')
|
@extends('user.transaction.penjual.modal-tracking')
|
||||||
|
@extends('user.transaction.penjual.modal-keterangan-status')
|
||||||
|
<script>
|
||||||
|
$(document).ready(function() {
|
||||||
|
$('#modalTracking').on('show.bs.modal', function(event) {
|
||||||
|
var triggerLink = $(event.relatedTarget); // Tombol yang memicu modal
|
||||||
|
var transactionDatas = triggerLink.data('transaction'); // Ambil data dari tombol
|
||||||
|
|
||||||
|
// Buat variabel untuk menyimpan HTML aktivitas
|
||||||
|
transactionDatas = transactionDatas.reverse();
|
||||||
|
var activitiesHtml = '';
|
||||||
|
|
||||||
|
// Periksa apakah ada data transaksi
|
||||||
|
if (transactionDatas && transactionDatas.length > 0) {
|
||||||
|
// Iterasi melalui data transaksi dan tambahkan ke activitiesHtml
|
||||||
|
$.each(transactionDatas, function(index, transactionDescription) {
|
||||||
|
activitiesHtml += `
|
||||||
|
<div class="activity">
|
||||||
|
<div class="activity-icon ${transactionDescription.background} text-white shadow-primary">
|
||||||
|
<i class="${transactionDescription.judul}" style="font-size: 36px;"></i>
|
||||||
|
</div>
|
||||||
|
<div class="activity-detail">
|
||||||
|
<div class="mb-2">
|
||||||
|
<span class="text-job text-primary">${new Date(transactionDescription.created_at).toLocaleString()}</span>
|
||||||
|
</div>
|
||||||
|
<p>${transactionDescription.deskripsi}</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
`;
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
// Tidak ada data transaksi, tambahkan pesan kosong
|
||||||
|
activitiesHtml += `
|
||||||
|
<div class="activity">
|
||||||
|
<div class="activity-icon bg-primary text-white shadow-primary">
|
||||||
|
<i class="fas fa-ban" style="font-size: 36px;"></i>
|
||||||
|
</div>
|
||||||
|
<div class="activity-detail">
|
||||||
|
<div class="mb-2">
|
||||||
|
<span class="text-job text-primary">--, --:--:-- --</span>
|
||||||
|
</div>
|
||||||
|
<p>Kosong</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
`;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Menampilkan data dalam modal
|
||||||
|
var modal = $(this);
|
||||||
|
modal.find('.activities').html(activitiesHtml);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
</script>
|
||||||
@endsection
|
@endsection
|
||||||
|
@ -0,0 +1,72 @@
|
|||||||
|
<div class="modal fade" id="modalKeteranganStatus" 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">
|
||||||
|
<h3 class="modal-title fs-5" id="staticBackdropLabel">Keterangan Status Transaksi</h3>
|
||||||
|
<a type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></a>
|
||||||
|
</div>
|
||||||
|
<div class="modal-body">
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Pending</label>
|
||||||
|
<p class="form-control">asdas</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Capture</label>
|
||||||
|
<p class="form-control">asdas</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Settlement</label>
|
||||||
|
<p class="form-control">asdas</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Cancel</label>
|
||||||
|
<p class="form-control">asdas</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Expire</label>
|
||||||
|
<p class="form-control">asdas</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Progress</label>
|
||||||
|
<p class="form-control">asdas</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Sending</label>
|
||||||
|
<p class="form-control">asdas</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Sended</label>
|
||||||
|
<p class="form-control">asdas</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Finished</label>
|
||||||
|
<p class="form-control">asdas</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Failure</label>
|
||||||
|
<p class="form-control">asdas</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Failed</label>
|
||||||
|
<p class="form-control">asdas</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label">Refund</label>
|
||||||
|
<p class="form-control">asdas</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
@ -1,5 +1,5 @@
|
|||||||
<!-- Modal -->
|
<!-- Modal -->
|
||||||
<div class="modal fade" id="tracking" tabindex="-1" role="dialog" aria-labelledby="exampleModalCenterTitle"
|
<div class="modal fade" id="modalTracking" tabindex="-1" role="dialog" aria-labelledby="exampleModalCenterTitle"
|
||||||
aria-hidden="true">
|
aria-hidden="true">
|
||||||
<div class="modal-dialog modal-dialog-centered" role="document">
|
<div class="modal-dialog modal-dialog-centered" role="document">
|
||||||
<div class="modal-content">
|
<div class="modal-content">
|
||||||
@ -14,64 +14,8 @@
|
|||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-12">
|
<div class="col-12">
|
||||||
<div class="activities">
|
<div class="activities">
|
||||||
<div class="activity">
|
|
||||||
<div class="activity-icon bg-primary text-white shadow-primary">
|
|
||||||
<i class="fas fa-clipboard-list" style="font-size: 36px;"></i>
|
|
||||||
|
|
||||||
</div>
|
</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-bell" style="font-size: 36px;"></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-check-circle" style="font-size: 36px;"></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-alt" style="font-size: 36px;"></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-clipboard-check" style="font-size: 36px;"></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>
|
||||||
@ -79,38 +23,3 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-footer">
|
|
||||||
<a href="#" 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,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">
|
||||||
|
|
||||||
@ -125,34 +68,15 @@
|
|||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<!-- ======= PRELOADER ======= -->
|
|
||||||
{{-- <div id="preloader">
|
|
||||||
<div id="status">
|
|
||||||
<div class="preloader" aria-busy="true" aria-label="Loading, please wait." role="progressbar">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div> --}}
|
|
||||||
<!-- ======= END PRELOADER ======= -->
|
|
||||||
|
|
||||||
<!-- ======= MODAL ======= -->
|
|
||||||
{{-- <div class="modal_wrapper">
|
|
||||||
<div class="shadow"></div>
|
|
||||||
<div class="success_wrap">
|
|
||||||
<span class="modal_icon"><ion-icon name="checkmark-sharp"></ion-icon></span>
|
|
||||||
<p>You have successfully completed the process.</p>
|
|
||||||
</div>
|
|
||||||
</div> --}}
|
|
||||||
<!-- ======= MODAL ======= -->
|
|
||||||
|
|
||||||
<div class="container mt-5">
|
<div class="container mt-5">
|
||||||
<div class="forms-container">
|
<div class="forms-container">
|
||||||
<div class="signin-signup">
|
<div class="signin-signup">
|
||||||
|
|
||||||
<!-- ======= SIGN IN FORM ======= -->
|
<!-- ======= SIGN IN FORM ======= -->
|
||||||
<form action="{{ route('authenticate') }}" class="sign-in-form" method="POST"
|
<form action="{{ route('autentikasi') }}" class="sign-in-form" method="POST"
|
||||||
enctype="multipart/form-data">
|
enctype="multipart/form-data">
|
||||||
@csrf
|
@csrf
|
||||||
<h2 class="title">Sign In</h2>
|
<h2 class="title">Login</h2>
|
||||||
<p>
|
<p>
|
||||||
Selamat datang kembali, silakan isi form login di bawah ini untuk masuk ke akun anda.
|
Selamat datang kembali, silakan isi form login di bawah ini untuk masuk ke akun anda.
|
||||||
</p>
|
</p>
|
||||||
@ -160,7 +84,6 @@
|
|||||||
<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="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>
|
||||||
|
|
||||||
@ -174,10 +97,9 @@
|
|||||||
<!-- ======= END SIGN IN FORM ======= -->
|
<!-- ======= END SIGN IN FORM ======= -->
|
||||||
|
|
||||||
<!-- ======= SIGN UP FORM ======= -->
|
<!-- ======= SIGN UP FORM ======= -->
|
||||||
<form action="{{ route('register') }}" class="sign-up-form" id="msform" enctype="multipart/form-data"
|
<form action="#" class="sign-up-form" id="msform" enctype="multipart/form-data" method="POST">
|
||||||
method="POST">
|
|
||||||
@csrf
|
@csrf
|
||||||
<h2 class="title">Sign Up</h2>
|
<h2 class="title">Daftar</h2>
|
||||||
<p style="width: 90%">
|
<p style="width: 90%">
|
||||||
Selamat datang kembali, silakan isi form login di bawah ini untuk masuk ke akun anda.
|
Selamat datang kembali, silakan isi form login di bawah ini untuk masuk ke akun anda.
|
||||||
</p>
|
</p>
|
||||||
@ -275,7 +197,7 @@
|
|||||||
<!-- ======= FORM ADDRESS ======= -->
|
<!-- ======= FORM ADDRESS ======= -->
|
||||||
<div class="form_2 data_info" style="display: none;">
|
<div class="form_2 data_info" style="display: none;">
|
||||||
<div class="input-field" style="width: 190%; padding: 0rem 1rem;">
|
<div class="input-field" style="width: 190%; padding: 0rem 1rem;">
|
||||||
<select id="selectProvince" data-url="{{ route('cari.provinsi') }}"
|
<select id="selectProvince" data-url="{{ route('cari-provinsi') }}"
|
||||||
style="width: 100%; border: 1px solid transparent; " class="input-field"
|
style="width: 100%; border: 1px solid transparent; " class="input-field"
|
||||||
aria-label="Default select example">
|
aria-label="Default select example">
|
||||||
|
|
||||||
@ -413,7 +335,7 @@
|
|||||||
<div class="common_btns form_4_btns" style="display: none;">
|
<div class="common_btns form_4_btns" style="display: none;">
|
||||||
<button type="button" class="btn_back"><span class="icon"><ion-icon
|
<button type="button" class="btn_back"><span class="icon"><ion-icon
|
||||||
name="arrow-back-sharp"></ion-icon></span>Back</button>
|
name="arrow-back-sharp"></ion-icon></span>Back</button>
|
||||||
<button type="button" class="btn_done" id="signUp">Sign Up</button>
|
<button type="button" class="btn_done" id="signUp">Daftar</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- ======= BTN FORM NEXT & BACK ======= -->
|
<!-- ======= BTN FORM NEXT & BACK ======= -->
|
||||||
@ -433,7 +355,7 @@
|
|||||||
Daftarkan akun anda sekarang untuk nikmatin Aplikasi RekBer. Daftar di sini.
|
Daftarkan akun anda sekarang untuk nikmatin Aplikasi RekBer. Daftar di sini.
|
||||||
</p>
|
</p>
|
||||||
<button class="btn transparent" id="sign-up-btn">
|
<button class="btn transparent" id="sign-up-btn">
|
||||||
Sign up
|
Daftar
|
||||||
</button>
|
</button>
|
||||||
<p><a href="{{ route('login') }}">kembali</a></p>
|
<p><a href="{{ route('login') }}">kembali</a></p>
|
||||||
</div>
|
</div>
|
||||||
@ -447,19 +369,15 @@
|
|||||||
Silakan masuk ke dalam RekBar menggunakan akun yang telah Anda buat sebelumnya di sini.
|
Silakan masuk ke dalam RekBar menggunakan akun yang telah Anda buat sebelumnya di sini.
|
||||||
</p>
|
</p>
|
||||||
<button class="btn transparent" id="sign-in-btn">
|
<button class="btn transparent" id="sign-in-btn">
|
||||||
Sign In
|
Masuk
|
||||||
</button>
|
</button>
|
||||||
<p><a href="/">kembali</a></p>
|
<p><a href="{{ route('login') }}">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="" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<<<<<<< HEAD
|
|
||||||
@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"
|
||||||
@ -529,7 +447,7 @@
|
|||||||
});
|
});
|
||||||
|
|
||||||
$.ajax({
|
$.ajax({
|
||||||
url: "{{ route('status.akun', ':email') }}".replace(':email', email),
|
url: "{{ route('status-akun', ':email') }}".replace(':email', email),
|
||||||
type: 'GET',
|
type: 'GET',
|
||||||
success: function(response) {
|
success: function(response) {
|
||||||
let status = response.message[0].status
|
let status = response.message[0].status
|
||||||
@ -652,7 +570,7 @@
|
|||||||
});
|
});
|
||||||
|
|
||||||
$.ajax({
|
$.ajax({
|
||||||
url: "{{ route('kirim.kode') }}",
|
url: "{{ route('kirim-kode') }}",
|
||||||
type: 'POST',
|
type: 'POST',
|
||||||
data: formData,
|
data: formData,
|
||||||
contentType: false,
|
contentType: false,
|
||||||
@ -840,4 +758,3 @@
|
|||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
||||||
>>>>>>> 5f01f0d124f30816c3c08e664df3a9b62a2847ab
|
|
||||||
|
51
resources/views/layouts/css.blade.php
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
<style>
|
||||||
|
.data-field {
|
||||||
|
display: flex;
|
||||||
|
width: 100%;
|
||||||
|
justify-content: space-between;
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.data-field:not(:last-child) {
|
||||||
|
margin-bottom: 15px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.data-field span {
|
||||||
|
text-align: end;
|
||||||
|
}
|
||||||
|
|
||||||
|
.card-title span a {
|
||||||
|
color: #899bbd;
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
|
||||||
|
.justified-text {
|
||||||
|
text-align: justify;
|
||||||
|
}
|
||||||
|
|
||||||
|
.font-weight-italic {
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<!-- General CSS Files -->
|
||||||
|
<link rel="stylesheet" href="{{ asset('assets/modules/bootstrap/css/bootstrap.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') }}">
|
||||||
|
<link rel="stylesheet" href="{{ asset('assets/modules/summernote/summernote-bs4.css') }}">
|
||||||
|
<link rel="stylesheet" href="{{ asset('assets/modules/owlcarousel2/dist/assets/owl.carousel.min.css') }}">
|
||||||
|
<link rel="stylesheet" href="{{ asset('assets/modules/owlcarousel2/dist/assets/owl.theme.default.min.css') }}">
|
||||||
|
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/daterangepicker@3.1.0/daterangepicker.css" />
|
||||||
|
<link rel="stylesheet" href="{{ asset('assets/modules/select2/dist/css/select2.min.css') }}">
|
||||||
|
|
||||||
|
<!-- Template CSS -->
|
||||||
|
<link rel="stylesheet" href="{{ asset('assets/css/style.css') }}">
|
||||||
|
<link rel="stylesheet" href="{{ asset('assets/css/components.css') }}">
|
||||||
|
|
||||||
|
{{-- CSS Libraries --}}
|
||||||
|
<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') }}">
|
@ -142,20 +142,16 @@
|
|||||||
</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="{{ Auth::user()->foto_profile == null ? asset('assets/img/avatar/avatar-1.png') : asset('storage/foto-profile/' . auth()->user()->foto_profile) }}"
|
||||||
|
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">
|
||||||
<div class="dropdown-title">Logged in 5 min ago</div>
|
<div class="dropdown-title">Logged in 5 min ago</div>
|
||||||
<a href="/profile" class="dropdown-item has-icon">
|
<a href="{{ route('profile.index') }}" 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">
|
|
||||||
<i class="fas fa-bolt"></i> Activities
|
|
||||||
</a>
|
|
||||||
<a href="features-settings.html" class="dropdown-item has-icon">
|
|
||||||
<i class="fas fa-cog"></i> Settings
|
|
||||||
</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
|
24
resources/views/layouts/js-bawah.blade.php
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
<!-- General JS Scripts -->
|
||||||
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.1/moment.min.js"></script>
|
||||||
|
|
||||||
|
<script src="{{ asset('assets/modules/tooltip.js') }}"></script>
|
||||||
|
<script src="{{ asset('assets/modules/moment.min.js') }}"></script>
|
||||||
|
<script src="{{ asset('assets/js/stisla.js') }}"></script>
|
||||||
|
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script>
|
||||||
|
|
||||||
|
<!-- JS Libraies -->
|
||||||
|
<script src="{{ asset('assets/modules/owlcarousel2/dist/owl.carousel.min.js') }}"></script>
|
||||||
|
<script src="{{ asset('assets/modules/summernote/summernote-bs4.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>
|
||||||
|
|
||||||
|
<!-- Page Specific JS File -->
|
||||||
|
<script src="{{ asset('assets/js/page/modules-datatables.js') }}"></script>
|
||||||
|
|
||||||
|
<!-- Template JS File -->
|
||||||
|
<script src="{{ asset('assets/js/scripts.js') }}"></script>
|
||||||
|
<script src="{{ asset('assets/js/custom.js') }}"></script>
|
||||||
|
<script src="https://cdn.jsdelivr.net/npm/daterangepicker@3.1.0/daterangepicker.min.js"></script>
|
17
resources/views/layouts/js.blade.php
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
<!-- Jquery -->
|
||||||
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.1/jquery.min.js"
|
||||||
|
integrity="sha512-aVKKRRi/Q/YV+4mjoKBsE4x3H+BkegoM/em46NNlCqNTmUYADjBbeNefNxYV7giUp0VxICtqdrbqU7iVaeZNXA=="
|
||||||
|
crossorigin="anonymous" referrerpolicy="no-referrer"></script>
|
||||||
|
{{-- <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> --}}
|
||||||
|
{{-- <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js"></script> --}}
|
||||||
|
|
||||||
|
<script src="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/js/select2.min.js"></script>
|
||||||
|
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.1/dist/js/bootstrap.bundle.min.js"
|
||||||
|
integrity="sha384-u1OknCvxWvY5kfmNBILK2hRnQC3Pr17a+RTT6rIHI7NnikvbZlHgTPOOmMi466C8" crossorigin="anonymous">
|
||||||
|
</script>
|
||||||
|
<script src="{{ asset('assets/modules/popper.js') }}"></script>
|
||||||
|
<script src="{{ asset('assets/modules/bootstrap/js/bootstrap.min.js') }}"></script>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- dashboard -->
|
||||||
|
<script src="{{ asset('assets/modules/chart.min.js') }}"></script>
|
36
resources/views/layouts/main.blade.php
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
<!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">
|
||||||
|
<meta name="csrf-token" content="{{ csrf_token() }}">
|
||||||
|
<title>REKBER</title>
|
||||||
|
|
||||||
|
@include('layouts.css')
|
||||||
|
|
||||||
|
@include('layouts.js')
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<header class="header-area header-sticky">
|
||||||
|
@include('layouts.header')
|
||||||
|
</header>
|
||||||
|
|
||||||
|
<!-- ***** Main Banner Area Start ***** -->
|
||||||
|
<main id="main" style="min-height: 100vh;">
|
||||||
|
@include('layouts.sidebar')
|
||||||
|
@yield('content')
|
||||||
|
</main>
|
||||||
|
|
||||||
|
<!-- End #main -->
|
||||||
|
<footer id="footer">
|
||||||
|
@include('layouts.footer')
|
||||||
|
</footer>
|
||||||
|
|
||||||
|
@include('layouts.js-bawah')
|
||||||
|
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
73
resources/views/layouts/sidebar.blade.php
Normal file
@ -0,0 +1,73 @@
|
|||||||
|
<div class="main-sidebar sidebar-style-2">
|
||||||
|
<aside id="sidebar-wrapper">
|
||||||
|
<div class="sidebar-brand">
|
||||||
|
<a href="{{ route(Auth::user()->role == 'Admin' ? 'admin.index' : 'user.index') }}">REKBER</a>
|
||||||
|
</div>
|
||||||
|
<div class="sidebar-brand sidebar-brand-sm">
|
||||||
|
<a href="{{ route(Auth::user()->role == 'Admin' ? 'admin.index' : 'user.index') }}">RK</a>
|
||||||
|
</div>
|
||||||
|
<ul class="sidebar-menu">
|
||||||
|
<li class="menu-header">Dashboard</li>
|
||||||
|
|
||||||
|
<li><a class="nav-link {{ request()->routeIs(auth()->user()->role == 'Admin' ? 'admin.index' : 'user.index') ? 'active' : '' }}"
|
||||||
|
href="{{ route(Auth::user()->role == 'Admin' ? 'admin.index' : 'user.index') }}"><i
|
||||||
|
class="fas fa-fire"></i> <span>Dashboard</span></a></li>
|
||||||
|
|
||||||
|
<li class="menu-header">Starter</li>
|
||||||
|
|
||||||
|
@if (Auth::user()->role == 'Admin')
|
||||||
|
<li><a class="nav-link {{ request()->routeIs('admin-user.index') ? 'active' : '' }}"
|
||||||
|
href="{{ route('admin-user.index') }}"><i class="far fa-user"></i>
|
||||||
|
<span>User</span></a></li>
|
||||||
|
<li><a class="nav-link {{ request()->routeIs('admin-transaction.index') ? 'active' : '' }}"
|
||||||
|
href="{{ route('admin-transaction.index') }}"><i
|
||||||
|
class="fas fa-columns"></i><span>Transaction</span></a></li>
|
||||||
|
<li><a class="nav-link {{ request()->routeIs('admin-refund.index') ? 'active' : '' }}"
|
||||||
|
href="{{ route('admin-refund.index') }}"><i class="far fa-square"></i>
|
||||||
|
<span>Refund</span></a>
|
||||||
|
</li>
|
||||||
|
<li><a class="nav-link {{ request()->routeIs('admin-setting.index') ? 'active' : '' }}"
|
||||||
|
href="{{ route('admin-setting.index') }}"><i class="fas fa-cog"></i>
|
||||||
|
<span>Setting</span></a></li>
|
||||||
|
@else
|
||||||
|
<li class="drop-down ">
|
||||||
|
<a class="nav-link {{ request()->routeIs('user-pembeli.index') || request()->routeIs('user-penjual.index') ? 'active' : '' }}"
|
||||||
|
data-toggle="collapse" href="#submenuTransaction" aria-expanded="false"
|
||||||
|
aria-controls="submenuTransaction">
|
||||||
|
<i class="fas fa-columns"></i><span>Transaksi</span> <i class="fas fa-caret-down"></i>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
<div id="submenuTransaction" class="collapse">
|
||||||
|
<ul class="nav flex-column sub-menu">
|
||||||
|
<li class="nav-item">
|
||||||
|
<a class="nav-link" href="{{ route('user-pembeli.index') }}">
|
||||||
|
<i class="fas fa-users"></i> Pembeli
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li class="nav-item">
|
||||||
|
<a class="nav-link" href="{{ route('user-penjual.index') }}">
|
||||||
|
<i class="fas fa-user"></i> Penjual
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a class="nav-link {{ request()->routeIs('user-contact.index') ? 'active' : '' }}"
|
||||||
|
href="{{ route('user-contact.index') }}">
|
||||||
|
<i class="fas fa-address-book"></i> <span>Kontak</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
|
||||||
|
<li>
|
||||||
|
<a class="nav-link {{ request()->routeIs('user-refund.index') ? 'active' : '' }}"
|
||||||
|
href="{{ route('user-refund.index') }}">
|
||||||
|
<i class="fas fa-money-check-alt"></i> <span>Refund</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
@endif
|
||||||
|
</ul>
|
||||||
|
</aside>
|
||||||
|
</div>
|
||||||
|
<script src="{{ asset('assets/modules/nicescroll/jquery.nicescroll.min.js') }}"></script>
|