Merhabalar,
User, Payment, Installment ve Transaction olmak üzere 4 adet modelim mevcut.
Bu modeller ile hazırlamam gereken 6 adet rapor var.
Biliyorum uzun ve karışık oldu ama açıklamalarını yazdığım raporları nasıl oluşturabilirim?
Yardımcı olacak arkadaşlarıma şimdiden saygı ve sevgilerimle...
User modeli
public function payments()
{
return $this->hasMany('App\Models\Payment', 'customer_id');
}
public function transactions()
{
return $this->hasMany('App\Models\Transaction', 'customer_id');
}
public function installments()
{
return $this->hasMany('App\Models\Installment', 'customer_id');
}
Payment modeli
protected $fillable = [
'sale_id',
'customer_id',
'amount_one',
'payment_date_one',
'amount_two',
'payment_date_two',
'amount_three',
'payment_date_three',
'amount_four',
'payment_date_four',
'amount_five',
'payment_date_five',
'amount_six',
'payment_date_six',
];
public function customer()
{
return $this->belongsTo('App\Models\User', 'customer_id', 'id');
}
Installment modeli
protected $fillable = [
'installment_no',
'customer_id',
'installment_date',
'installment_type',
'undertaking_date',
'amount',
'status',
'staff_id',
'payment_date',
];
public function customer()
{
return $this->belongsTo('App\Models\User', 'customer_id', 'id');
}
Transaction modeli
protected $fillable = [
'installment_id',
'customer_id',
'sale_id',
'payment_date',
'payment_type',
'payment_method',
'bank_id',
'is_cancelled',
'notes',
'amount',
'staff_id',
];
public function customer()
{
return $this->belongsTo('App\Models\User', 'customer_id', 'id');
}
<-- Rapor Controller İçeriği -->
installments tablosundaki 'status' alanı 'ODENDI' olanların toplam 'amount' u, transactions tablosundaki 'payment_type' alanı 'BORC' olanların toplam 'amount' larından FAZLA olan müşteri listesi.
public function planSaveMore(Request $request)
{
$query = User::query();
$orderBy = 'asc';
$perPage = 20;
$sortBy = 'id';
if ($request->has('orderBy')) $orderBy = $request->query('orderBy');
if ($request->has('perPage')) $perPage = $request->query('perPage');
if ($request->has('sortBy')) $sortBy = $request->query('sortBy');
if ($request->has('name')) $query->where('name', 'like', '%'.request()->input('name').'%');
$dataList = $query->orderBy($sortBy, $orderBy)->paginate($perPage)->withQueryString();
return view('reports.plan-save-more', compact('dataList'));
}
installments tablosundaki 'status' alanı 'ODENDI' olanların toplam 'amount' u, transactions tablosundaki 'payment_type' alanı 'BORC' olanların toplam 'amount' larından EKSİK olan müşteri listesi.
public function planSaveMissing(Request $request)
{
$query = User::query();
$orderBy = 'asc';
$perPage = 20;
$sortBy = 'id';
if ($request->has('orderBy')) $orderBy = $request->query('orderBy');
if ($request->has('perPage')) $perPage = $request->query('perPage');
if ($request->has('sortBy')) $sortBy = $request->query('sortBy');
if ($request->has('name')) $query->where('name', 'like', '%'.request()->input('name').'%');
$dataList = $query->orderBy($sortBy, $orderBy)->paginate($perPage)->withQueryString();
return view('reports.plan-save-missing', compact('dataList'));
}
payments tablosundaki 'amount_one', 'amount_two', 'amount_three', 'amount_four', 'amount_five', 'amount_six' alanlarının toplamı, installments tablosundaki 'status' alanı 'ODENDI' olanların toplam 'amount' undan FAZLA olan müşteri listesi.
public function approvalPlanMore(Request $request)
{
$query = User::query();
$orderBy = 'asc';
$perPage = 20;
$sortBy = 'id';
if ($request->has('orderBy')) $orderBy = $request->query('orderBy');
if ($request->has('perPage')) $perPage = $request->query('perPage');
if ($request->has('sortBy')) $sortBy = $request->query('sortBy');
if ($request->has('name')) $query->where('name', 'like', '%'.request()->input('name').'%');
$dataList = $query->orderBy($sortBy, $orderBy)->paginate($perPage)->withQueryString();
return view('reports.approval-plan-more', compact('dataList'));
}
payments tablosundaki 'amount_one', 'amount_two', 'amount_three', 'amount_four', 'amount_five', 'amount_six' alanlarının toplamı, installments tablosundaki 'status' alanı 'ODENDI' olanların toplam 'amount' undan EKSİK olan müşteri listesi.
public function approvalPlanMissing(Request $request)
{
$query = User::query();
$orderBy = 'asc';
$perPage = 20;
$sortBy = 'id';
if ($request->has('orderBy')) $orderBy = $request->query('orderBy');
if ($request->has('perPage')) $perPage = $request->query('perPage');
if ($request->has('sortBy')) $sortBy = $request->query('sortBy');
if ($request->has('name')) $query->where('name', 'like', '%'.request()->input('name').'%');
$dataList = $query->orderBy($sortBy, $orderBy)->paginate($perPage)->withQueryString();
return view('reports.approval-plan-missing', compact('dataList'));
}
payments tablosundaki 'amount_one', 'amount_two', 'amount_three', 'amount_four', 'amount_five', 'amount_six' alanlarının toplamı, transactions tablosundaki 'payment_type' alanı 'BORC' olanların toplam 'amount' larından FAZLA olan müşteri listesi.
public function approvalSaveMore(Request $request)
{
$query = User::query();
$orderBy = 'asc';
$perPage = 20;
$sortBy = 'id';
if ($request->has('orderBy')) $orderBy = $request->query('orderBy');
if ($request->has('perPage')) $perPage = $request->query('perPage');
if ($request->has('sortBy')) $sortBy = $request->query('sortBy');
if ($request->has('name')) $query->where('name', 'like', '%'.request()->input('name').'%');
$dataList = $query->orderBy($sortBy, $orderBy)->paginate($perPage)->withQueryString();
return view('reports.approval-save-more', compact('dataList'));
}
payments tablosundaki 'amount_one', 'amount_two', 'amount_three', 'amount_four', 'amount_five', 'amount_six' alanlarının toplamı, transactions tablosundaki 'payment_type' alanı 'BORC' olanların toplam 'amount' larından EKSİK olan müşteri listesi.
public function approvalSaveMissing(Request $request)
{
$query = User::query();
$orderBy = 'asc';
$perPage = 20;
$sortBy = 'id';
if ($request->has('orderBy')) $orderBy = $request->query('orderBy');
if ($request->has('perPage')) $perPage = $request->query('perPage');
if ($request->has('sortBy')) $sortBy = $request->query('sortBy');
if ($request->has('name')) $query->where('name', 'like', '%'.request()->input('name').'%');
$dataList = $query->orderBy($sortBy, $orderBy)->paginate($perPage)->withQueryString();
return view('reports.approval-save-missing', compact('dataList'));
}