fix transaction not get data deleted_at

This commit is contained in:
2025-07-11 17:25:46 +07:00
parent 0b1589d173
commit 720e314bbd

View File

@@ -102,18 +102,20 @@ class TransactionController extends Controller
->leftJoin('works as w', 'w.id', '=', 'transactions.work_id') ->leftJoin('works as w', 'w.id', '=', 'transactions.work_id')
->leftJoin('categories as cat', 'cat.id', '=', 'w.category_id') ->leftJoin('categories as cat', 'cat.id', '=', 'w.category_id')
->select('transactions.id as transaction_id', 'transactions.status', 'transactions.user_id as user_id', 'transactions.user_sa_id as user_sa_id', 'users.name as username', 'sa.name as sa_name', 'cat.name as category_name', 'w.name as workname', 'transactions.qty as qty', 'transactions.date as date', 'transactions.police_number as police_number', 'transactions.warranty as warranty', 'transactions.spk as spk') ->select('transactions.id as transaction_id', 'transactions.status', 'transactions.user_id as user_id', 'transactions.user_sa_id as user_sa_id', 'users.name as username', 'sa.name as sa_name', 'cat.name as category_name', 'w.name as workname', 'transactions.qty as qty', 'transactions.date as date', 'transactions.police_number as police_number', 'transactions.warranty as warranty', 'transactions.spk as spk')
->whereNull('transactions.deleted_at')
->where('users.dealer_id', Auth::user()->dealer_id); ->where('users.dealer_id', Auth::user()->dealer_id);
$transaction_works = Work::select('id', 'name', 'shortname')->whereHas('transactions', function($q) { $transaction_works = Work::select('id', 'name', 'shortname')->whereHas('transactions', function($q) {
return $q->whereDate('date', '=', date('Y-m-d'))->where('dealer_id', Auth::user()->dealer_id); return $q->whereNull('deleted_at')->whereDate('date', '=', date('Y-m-d'))->where('dealer_id', Auth::user()->dealer_id);
})->get(); })->get();
$tm1 = []; $tm1 = [];
foreach($transaction_works as $index => $work) { foreach($transaction_works as $index => $work) {
$transaction_sas = Transaction::leftJoin('users as sa', 'sa.id', '=', 'transactions.user_sa_id') $transaction_sas = Transaction::leftJoin('users as sa', 'sa.id', '=', 'transactions.user_sa_id')
->select(DB::raw('SUM(transactions.qty) as qty'), 'sa.name as sa_name') ->select(DB::raw('SUM(transactions.qty) as qty'), 'sa.name as sa_name')
->whereNull('transactions.deleted_at')
->where('sa.dealer_id', Auth::user()->dealer_id) ->where('sa.dealer_id', Auth::user()->dealer_id)
->where('work_id', $work->id) ->where('work_id', $work->id)
->whereDate('transactions.date', '=', date('Y-m-d'))->groupBy('transactions.user_sa_id')->get(); ->whereDate('transactions.date', '=', date('Y-m-d'))->groupBy('transactions.user_sa_id')->get();
@@ -233,7 +235,7 @@ class TransactionController extends Controller
$mechanic = User::leftJoin('dealers as d', 'd.id', '=', 'users.dealer_id') $mechanic = User::leftJoin('dealers as d', 'd.id', '=', 'users.dealer_id')
->select('d.name as dealer_name', 'users.name', 'users.id', 'users.role', 'users.email', 'd.dealer_code', 'd.address') ->select('d.name as dealer_name', 'users.name', 'users.id', 'users.role', 'users.email', 'd.dealer_code', 'd.address')
->where('users.id', Auth::user()->id)->first(); ->where('users.id', Auth::user()->id)->first();
$d = Transaction::leftJoin('works as w', 'w.id', '=', 'transactions.work_id')->select('transactions.*', 'w.name as work_name', 'w.shortname as shortname')->where('dealer_id', $id); $d = Transaction::leftJoin('works as w', 'w.id', '=', 'transactions.work_id')->select('transactions.*', 'w.name as work_name', 'w.shortname as shortname')->whereNull('transactions.deleted_at')->where('dealer_id', $id);
if(isset($request->date_start)) { if(isset($request->date_start)) {
@@ -380,13 +382,13 @@ class TransactionController extends Controller
$id = Auth::user()->dealer_id; $id = Auth::user()->dealer_id;
$works = Work::select('id', 'name', 'shortname')->whereHas('transactions', function($q) use($request, $id) { $works = Work::select('id', 'name', 'shortname')->whereHas('transactions', function($q) use($request, $id) {
if(isset($request->month)) { if(isset($request->month)) {
return $q->whereMonth('date', '=', $request->month)->whereYear('date', date('Y'))->where('dealer_id', $id); return $q->whereNull('deleted_at')->whereMonth('date', '=', $request->month)->whereYear('date', date('Y'))->where('dealer_id', $id);
} }
})->get(); })->get();
$sas = User::select('id', 'name')->whereHas('sa_transactions', function($q) use($request, $id) { $sas = User::select('id', 'name')->whereHas('sa_transactions', function($q) use($request, $id) {
if(isset($request->month)) { if(isset($request->month)) {
return $q->whereMonth('date', '=', $request->month)->whereYear('date', date('Y'))->where('dealer_id', $id); return $q->whereNull('deleted_at')->whereMonth('date', '=', $request->month)->whereYear('date', date('Y'))->where('dealer_id', $id);
} }
})->get(); })->get();
@@ -395,7 +397,7 @@ class TransactionController extends Controller
->select('d.name as dealer_name', 'users.name', 'users.id', 'users.role', 'users.email', 'd.dealer_code', 'd.address') ->select('d.name as dealer_name', 'users.name', 'users.id', 'users.role', 'users.email', 'd.dealer_code', 'd.address')
->where('users.id', Auth::user()->id)->first(); ->where('users.id', Auth::user()->id)->first();
$dates = Transaction::select(DB::raw('DATE(`date`) as date'))->where('dealer_id', $id)->whereMonth('date', $request->month)->whereYear('date', date('Y'))->groupBy(DB::raw('DATE(`date`)'))->get()->toArray(); $dates = Transaction::select(DB::raw('DATE(`date`) as date'))->whereNull('deleted_at')->where('dealer_id', $id)->whereMonth('date', $request->month)->whereYear('date', date('Y'))->groupBy(DB::raw('DATE(`date`)'))->get()->toArray();
$dates = $this->array_value_recursive('date', $dates); $dates = $this->array_value_recursive('date', $dates);
$month_trxs = []; $month_trxs = [];
@@ -406,7 +408,7 @@ class TransactionController extends Controller
$prev_mth = explode('-', $prev_mth_start); $prev_mth = explode('-', $prev_mth_start);
$prev_mth_end = $prev_mth[0].'-'.$prev_mth[1].'-'.date('d'); $prev_mth_end = $prev_mth[0].'-'.$prev_mth[1].'-'.date('d');
$yesterday_month_trx = Transaction::where('work_id', $work1->id)->where('dealer_id', $id)->whereDate('date', '>=', $prev_mth_start)->whereDate('date', '<=', $prev_mth_end)->sum('qty'); $yesterday_month_trx = Transaction::whereNull('deleted_at')->where('work_id', $work1->id)->where('dealer_id', $id)->whereDate('date', '>=', $prev_mth_start)->whereDate('date', '<=', $prev_mth_end)->sum('qty');
if(array_key_exists($work1->id, $yesterday_month_trxs_total)) { if(array_key_exists($work1->id, $yesterday_month_trxs_total)) {
$yesterday_month_trxs_total[$work1->id] += $yesterday_month_trx; $yesterday_month_trxs_total[$work1->id] += $yesterday_month_trx;
@@ -420,7 +422,7 @@ class TransactionController extends Controller
$date_works = []; $date_works = [];
$share_works = []; $share_works = [];
foreach ($works as $key2 => $work) { foreach ($works as $key2 => $work) {
$d = Transaction::where('work_id', $work->id)->where('dealer_id', $id)->whereDate('date', $date); $d = Transaction::whereNull('deleted_at')->where('work_id', $work->id)->where('dealer_id', $id)->whereDate('date', $date);
if(isset($request->month)) { if(isset($request->month)) {
$d = $d->whereMonth('date', '=', $request->month)->whereYear('date', date('Y')); $d = $d->whereMonth('date', '=', $request->month)->whereYear('date', date('Y'));
@@ -463,7 +465,7 @@ class TransactionController extends Controller
foreach($sas as $key => $sa) { foreach($sas as $key => $sa) {
$sa_works = []; $sa_works = [];
foreach ($works as $key2 => $work) { foreach ($works as $key2 => $work) {
$d = Transaction::where('user_sa_id', $sa->id)->where('work_id', $work->id)->where('dealer_id', $id); $d = Transaction::whereNull('deleted_at')->where('user_sa_id', $sa->id)->where('work_id', $work->id)->where('dealer_id', $id);
if(isset($request->month)) { if(isset($request->month)) {
$d = $d->whereMonth('date', '=', $request->month)->whereYear('date', date('Y')); $d = $d->whereMonth('date', '=', $request->month)->whereYear('date', date('Y'));
@@ -535,13 +537,13 @@ class TransactionController extends Controller
$id = Auth::user()->dealer_id; $id = Auth::user()->dealer_id;
$works = Work::select('id', 'name', 'shortname')->whereHas('transactions', function($q) use($request, $id) { $works = Work::select('id', 'name', 'shortname')->whereHas('transactions', function($q) use($request, $id) {
if(isset($request->month)) { if(isset($request->month)) {
return $q->whereMonth('date', '=', $request->month)->whereYear('date', $request->year)->where('dealer_id', $id); return $q->whereNull('deleted_at')->whereMonth('date', '=', $request->month)->whereYear('date', $request->year)->where('dealer_id', $id);
} }
})->get(); })->get();
$sas = User::select('id', 'name')->whereHas('sa_transactions', function($q) use($request, $id) { $sas = User::select('id', 'name')->whereHas('sa_transactions', function($q) use($request, $id) {
if(isset($request->month)) { if(isset($request->month)) {
return $q->whereMonth('date', '=', $request->month)->whereYear('date', $request->year)->where('dealer_id', $id); return $q->whereNull('deleted_at')->whereMonth('date', '=', $request->month)->whereYear('date', $request->year)->where('dealer_id', $id);
} }
})->get(); })->get();
@@ -550,7 +552,7 @@ class TransactionController extends Controller
->select('d.name as dealer_name', 'users.name', 'users.id', 'users.role', 'users.email', 'd.dealer_code', 'd.address') ->select('d.name as dealer_name', 'users.name', 'users.id', 'users.role', 'users.email', 'd.dealer_code', 'd.address')
->where('users.id', Auth::user()->id)->first(); ->where('users.id', Auth::user()->id)->first();
$dates = Transaction::select(DB::raw('DATE(`date`) as date'))->where('dealer_id', $id)->whereMonth('date', $request->month)->whereYear('date', $request->year)->groupBy(DB::raw('DATE(`date`)'))->get()->toArray(); $dates = Transaction::select(DB::raw('DATE(`date`) as date'))->whereNull('deleted_at')->where('dealer_id', $id)->whereMonth('date', $request->month)->whereYear('date', $request->year)->groupBy(DB::raw('DATE(`date`)'))->get()->toArray();
// print_r($dates);die; // print_r($dates);die;
$dates = $this->array_value_recursive('date', $dates); $dates = $this->array_value_recursive('date', $dates);
@@ -567,7 +569,7 @@ class TransactionController extends Controller
} }
// dd($prev_mth_end); // dd($prev_mth_end);
$yesterday_month_trx = Transaction::where('work_id', $work1->id)->where('dealer_id', $id)->whereDate('date', '>=', $prev_mth_start)->whereDate('date', '<=', $prev_mth_end)->sum('qty'); $yesterday_month_trx = Transaction::whereNull('deleted_at')->where('work_id', $work1->id)->where('dealer_id', $id)->whereDate('date', '>=', $prev_mth_start)->whereDate('date', '<=', $prev_mth_end)->sum('qty');
if(array_key_exists($work1->id, $yesterday_month_trxs_total)) { if(array_key_exists($work1->id, $yesterday_month_trxs_total)) {
$yesterday_month_trxs_total[$work1->id] += $yesterday_month_trx; $yesterday_month_trxs_total[$work1->id] += $yesterday_month_trx;
@@ -580,7 +582,7 @@ class TransactionController extends Controller
$date_works = []; $date_works = [];
$share_works = []; $share_works = [];
foreach ($works as $key2 => $work) { foreach ($works as $key2 => $work) {
$d = Transaction::where('work_id', $work->id)->where('dealer_id', $id)->whereDate('date', $date); $d = Transaction::whereNull('deleted_at')->where('work_id', $work->id)->where('dealer_id', $id)->whereDate('date', $date);
if(isset($request->month)) { if(isset($request->month)) {
$d = $d->whereMonth('date', '=', $request->month)->whereYear('date', $request->year); $d = $d->whereMonth('date', '=', $request->month)->whereYear('date', $request->year);
@@ -620,14 +622,14 @@ class TransactionController extends Controller
} }
} }
$this_month_trxs = Transaction::select(DB::raw('SUM(qty) as qty'), 'u.name')->join('users AS u', 'u.id', '=', 'transactions.user_sa_id')->where('transactions.dealer_id', $id)->whereMonth('date', date('m'))->whereYear('date', $request->year)->groupBy('user_sa_id')->get(); $this_month_trxs = Transaction::select(DB::raw('SUM(qty) as qty'), 'u.name')->join('users AS u', 'u.id', '=', 'transactions.user_sa_id')->whereNull('transactions.deleted_at')->where('transactions.dealer_id', $id)->whereMonth('date', date('m'))->whereYear('date', $request->year)->groupBy('user_sa_id')->get();
$today_trxs = Transaction::select(DB::raw('SUM(qty) as qty'), 'u.name')->join('users AS u', 'u.id', '=', 'transactions.user_sa_id')->where('transactions.dealer_id', $id)->whereDate('date', date('Y-m-d'))->groupBy('user_sa_id')->get(); $today_trxs = Transaction::select(DB::raw('SUM(qty) as qty'), 'u.name')->join('users AS u', 'u.id', '=', 'transactions.user_sa_id')->whereNull('transactions.deleted_at')->where('transactions.dealer_id', $id)->whereDate('date', date('Y-m-d'))->groupBy('user_sa_id')->get();
$trxs = []; $trxs = [];
foreach($sas as $key => $sa) { foreach($sas as $key => $sa) {
$sa_works = []; $sa_works = [];
foreach ($works as $key2 => $work) { foreach ($works as $key2 => $work) {
$d = Transaction::where('user_sa_id', $sa->id)->where('work_id', $work->id)->where('dealer_id', $id); $d = Transaction::whereNull('deleted_at')->where('user_sa_id', $sa->id)->where('work_id', $work->id)->where('dealer_id', $id);
if(isset($request->month)) { if(isset($request->month)) {
$d = $d->whereMonth('date', '=', $request->month)->whereYear('date', $request->year); $d = $d->whereMonth('date', '=', $request->month)->whereYear('date', $request->year);
@@ -1102,6 +1104,7 @@ class TransactionController extends Controller
'sa.name as sa_name', 'sa.name as sa_name',
'users.name as mechanic_name' 'users.name as mechanic_name'
]) ])
->whereNull('transactions.deleted_at')
->where('transactions.dealer_id', $request->dealer_id) ->where('transactions.dealer_id', $request->dealer_id)
->whereIn('transactions.status', [0, 1]) // Only pending and completed transactions ->whereIn('transactions.status', [0, 1]) // Only pending and completed transactions
->orderBy('transactions.date', 'desc'); ->orderBy('transactions.date', 'desc');
@@ -1190,7 +1193,7 @@ class TransactionController extends Controller
} }
try { try {
$transaction = Transaction::find($id); $transaction = Transaction::whereNull('deleted_at')->find($id);
if (!$transaction) { if (!$transaction) {
return response()->json([ return response()->json([