Path : /var/www/html/jewelry-pos/app/Http/Controllers/ |
B-Con CMD Config cPanel C-Rdp D-Log Info Jump Mass Ransom Symlink vHost Zone-H |
Current File : /var/www/html/jewelry-pos/app/Http/Controllers/BuyBackController.php |
<?php namespace App\Http\Controllers; use App\Exports\BuyBackExport; use App\Exports\SaleExport; use App\Models\Sale; use Illuminate\Http\Request; use Illuminate\Support\Facades\Auth; use Maatwebsite\Excel\Facades\Excel; class BuyBackController extends Controller { public function __construct() { $this->middleware('permission:reports-buy-back-list' , ['only' => ['index' , 'show' , 'print' , 'destroy' , 'export']]); } /** * Display a listing of the resource. */ public function index(Request $request) { $paginate = $request->get('paginate')??25; $start_date = $request->get('start_date') ?? date('Y-m-d'); $end_date = $request->get('end_date') ?? date('Y-m-d'); $dates = explode(' - ', $request->date); if ($request->date) { $start_date = $dates[0]; $end_date = $dates[1]; } $phone = $request->get('phone'); $search = $request->get('search'); if($search){ $sales = Sale::where('invoice_no' , 'like' , '%' . $search . '%')->where('already_buy_back' , true??1)->orderBy('id' , 'desc')->paginate($paginate); }else{ $sales = Sale::whereBetween('created_at', [$start_date . " 00:00:00", $end_date . " 23:59:59"])->where('already_buy_back' , true??1)->orderBy('id' , 'desc')->paginate($paginate); } return view('buy-backs.index' , compact('sales' , 'start_date' , 'end_date' , 'search' , 'paginate' , 'phone')); } /** * 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. */ public function show(string $id , Request $request) { $search = $request->get('search'); $start_date = $request->get('start_date') ?? date('Y-m-d'); $end_date = $request->get('end_date') ?? date('Y-m-d'); $dates = explode(' - ', $request->date); if ($request->date) { $start_date = $dates[0]; $end_date = $dates[1]; } $sale = Sale::find($id); $cashie = $sale->user??''; if(!$cashie || !$sale){ abort(404); } return view('buy-backs.show' , compact('sale' , 'cashie' , 'search' , 'start_date' , 'end_date')); } public function print(Request $request) { $start_date = $request->get('start_date') ?? date('Y-m-d'); $end_date = $request->get('end_date') ?? date('Y-m-d'); $dates = explode(' - ', $request->date); if ($request->date) { $start_date = $dates[0]; $end_date = $dates[1]; } $cashie = Auth::user()->name; $search = $request->get('search'); if($search){ $sales = Sale::where('invoice_no' , 'like' , '%' . $search . '%')->where('already_buy_back' , true??1)->orderBy('id' , 'desc')->get(); }else{ $sales = Sale::whereBetween('created_at', [$start_date . " 00:00:00", $end_date . " 23:59:59"])->where('already_buy_back' , true??1)->orderBy('id' , 'desc')->get(); } return view('buy-backs.print' , compact('sales' , 'cashie' , 'start_date' , 'end_date' , 'search')); } /** * Show the form for editing the specified resource. */ public function edit(string $id) { // } /** * Update the specified resource in storage. */ public function update(Request $request, string $id) { // } /** * Remove the specified resource from storage. */ public function destroy(string $id) { $sale = Sale::find($id); $product = $sale->product; $product->qty = $product->qty+$sale->qty; $product->save(); if($sale){ $sale->delete(); } return redirect()->route('reports.buy_back')->with('success' , __('message.buy back') . " " . __('message.deleted successfully')); } public function export(Request $request) { return Excel::download(new BuyBackExport($request->get('search'),$request->get('start_date'),$request->get('end_date')),'BuyBack.xlsx'); } }