VaKeR CYBER ARMY
Logo of a company Server : Apache
System : Linux host44.registrar-servers.com 4.18.0-513.18.1.lve.2.el8.x86_64 #1 SMP Sat Mar 30 15:36:11 UTC 2024 x86_64
User : vapecompany ( 2719)
PHP Version : 7.4.33
Disable Function : NONE
Directory :  /home/vapecompany/demo.vapecompany.com.bd/app/Http/Controllers/Backend/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //home/vapecompany/demo.vapecompany.com.bd/app/Http/Controllers/Backend/CourierController.php
<?php

namespace App\Http\Controllers;

use App\Models\Courier;
use App\Models\courierType;
use Illuminate\Http\Request;

class courierController extends Controller
{
    public function __construct()
    {
        $this->middleware('auth');
       
    }
   public function index()
    {
        if(!auth()->user()->canEvent('all_courier'))
        {
            return redirect('/');
        }
        return view('courier.list');
    }
    function get_all_courier(Request $request){
        $draw = $request->get('draw');
        $start = $request->get("start");
        $rowperpage = $request->get("length"); // Rows display per page

        $columnIndex_arr = $request->get('order');
        $columnName_arr = $request->get('columns');
        $order_arr = $request->get('order');
        $search_arr = $request->get('search');

        $columnIndex = $columnIndex_arr[0]['column']; // Column index
        $columnName = $columnName_arr[$columnIndex]['data']; // Column name
        $columnSortOrder = $order_arr[0]['dir']; // asc or desc
        $searchValue = $search_arr['value']; // Search value

        $totalRecords = courier::count();
        $couriers =courier::orderBy($columnName,$columnSortOrder);
          if($columnName_arr[0]['search']['value'] != null){
            $couriers=$couriers->Where('courier_id',$columnName_arr[0]['search']['value']);
        }
        if($columnName_arr[1]['search']['value'] != null){
            $couriers=$couriers->Where('courier_name', 'like', $columnName_arr[1]['search']['value'] . '%');
        }
        if($columnName_arr[2]['search']['value'] != null){
            $couriers=$couriers->Where('courier_email', 'like', $columnName_arr[2]['search']['value'] . '%');
        }
        if($columnName_arr[3]['search']['value'] != null){
            $couriers=$couriers->Where('courier_phone', 'like', $columnName_arr[3]['search']['value'] . '%');
        }
        if($columnName_arr[4]['search']['value'] != null){
            $couriers=$couriers->Where('courier_mobile', 'like', $columnName_arr[4]['search']['value'] . '%');
        }
        if($columnName_arr[5]['search']['value'] != null){
            $couriers=$couriers->Where('courier_website', 'like', $columnName_arr[5]['search']['value'] . '%');
        }
        if($columnName_arr[6]['search']['value'] != null){
            $couriers=$couriers->Where('courier_address', 'like', $columnName_arr[6]['search']['value'] . '%');
        }
        
        if($columnName_arr[7]['search']['value'] != null){
            $couriers=$couriers->Where('status', $columnName_arr[7]['search']['value']);
        }
            // ->where('courier_id', 'like', $searchValue . '%')
            // ->orWhere('courier_name', 'like', $searchValue . '%')
            // ->orWhere('courier_email', 'like', $searchValue . '%')
            // ->orWhere('courier_address', 'like',$searchValue . '%')
            // ->orWhere('courier_phone', 'like', $searchValue . '%')
        if($rowperpage < 0) {
            $rowperpage = 8999999999999999999;
        }
        $couriers=$couriers->skip($start)
            ->take($rowperpage)
            ->get();
        $data_arr = array();
        foreach($couriers as $courier){

            $action ='<div role="group" aria-label="Basic example" class="btn-group btn-group-sm">';
            if(auth()->user()->canEvent('edit_courier'))
            {
            $action .='<a href="'.url('edit_courier/'.$courier->courier_id).'" class="mr-2">
                                                        <i class="fa fa-edit text-warning"></i>
                                                    </a>';
            }
             if(auth()->user()->canEvent('cu_document_list'))
            {
            $action .='<a href="'.url('document/courier').'/'.$courier->courier_id.'" class="mr-2">
                                                        Document</a>';
            }
                                                   
            $action .='</div>';
          
                                               
            $data_arr[] = array(
                "courier_id" => $courier->courier_id,
                "courier_name" => $courier->courier_name,
                "courier_email" => $courier->courier_email,
                "courier_phone" => $courier->courier_phone,
                "courier_mobile" => $courier->courier_mobile,
                "courier_website" => $courier->courier_website,
                "status" => $courier->status == 1 ? 'Active' : 'In Active',
                "courier_address" => $courier->courier_address,
                "Action" => $action,
            );
        }
        $response = array(
            "draw" => intval($draw),
            "recordsTotal" => $totalRecords,
            "recordsFiltered" => $totalRecords,
            "data" => $data_arr
        ); 

        echo json_encode($response);
        exit;
    }

    /**
     * Show the form for creating a new resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function create()
    {
         if(!auth()->user()->canEvent('new_courier'))
        {
            return redirect('/');
        }
        return view('courier.create');
    
    }

    /**
     * Store a newly created resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\Response
     */
    public function store(Request $request)
    {
        $validator = \Validator::make($request->all(), [
            'courier_name' => 'required|max:150',
            'courier_email' => 'required|unique:couriers|max:150',
            'courier_phone' => 'max:20',
            'courier_address' => 'required',
            'courier_mobile' => 'max:20',
           
        ]);
        
        if ($validator->fails())
        {
            return response()->json(['errors'=>$validator->errors()->all()]);
        }else{
           //return  response()->json(['re'=> auth()->user()->user_id]);
            $courier =  new Courier;
            $courier->courier_name = $request->courier_name;
            $courier->courier_email = $request->courier_email;
            $courier->courier_phone = $request->courier_phone;
            $courier->courier_address = $request->courier_address;
            $courier->courier_mobile = $request->courier_mobile;
            $courier->courier_website = $request->courier_website;
            $courier->status = $request->status ? $request->status : 0;
            $courier->created_by = auth()->user()->user_id;
            $courier->save();
        }
        return response()->json(['errors'=>'0','success'=>$request->courier_name.' is successfully added']);
    }

    /**
     * Display the specified resource.
     *
     * @param  \App\Models\courier  $courier
     * @return \Illuminate\Http\Response
     */
    public function show(courier $courier)
    {
        //
    }

    /**
     * Show the form for editing the specified resource.
     *
     * @param  \App\Models\courier  $courier
     * @return \Illuminate\Http\Response
     */
    public function edit($id)
    {
         if(!auth()->user()->canEvent('edit_courier'))
        {
            return redirect('/');
        }
        $courier=Courier::where('courier_id',$id)->first();
        return view('courier.edit',['courier'=>$courier]);
    }

    /**
     * Update the specified resource in storage.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \App\Models\courier  $courier
     * @return \Illuminate\Http\Response
     */
    public function update(Request $request, courier $courier)
    {
        $id=$request->courier_id;
          $validator = \Validator::make($request->all(), [
            'courier_name' => 'required|max:150',
            'courier_email' => 'required|max:150||unique:couriers,courier_email,'.$id.',courier_id',
            'courier_phone' => 'max:20',
            'courier_address' => 'required',
            'courier_mobile' => 'max:20',
           
        ]);
        
        if ($validator->fails())
        {
            return response()->json(['errors'=>$validator->errors()->all()]);
        }else{
           //return  response()->json(['re'=> auth()->user()->user_id]);
            $courier =   Courier::find($request->courier_id);
            $courier->courier_name = $request->courier_name;
            $courier->courier_email = $request->courier_email;
            $courier->courier_phone = $request->courier_phone;
            $courier->courier_address = $request->courier_address;
            $courier->courier_mobile = $request->courier_mobile;
            $courier->courier_website = $request->courier_website;
            $courier->status = $request->status ? $request->status : 0;
            $courier->updated_by = auth()->user()->user_id;
            $courier->save();
        }
        return response()->json(['errors'=>'0','success'=>$request->courier_name.' is successfully Updated']);
    }

    /**
     * Remove the specified resource from storage.
     *
     * @param  \App\Models\courier  $courier
     * @return \Illuminate\Http\Response
     */
    public function destroy(courier $courier)
    {
        //
    }
}

VaKeR 2022