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 : |
<?php namespace App\Http\Controllers\Backend; use App\Http\Controllers\Controller; use Illuminate\Http\Request; use App\Models\Category; use App\Models\MCode; use DB; class CategoryController extends Controller { public function __construct() { $this->middleware('admin'); } public function index() { // if(!auth()->user()->canEvent('all_category')) // { // return redirect('/'); // } $categories = Category::get(); return view('backend.category.index',['categories'=>$categories]); } function get_all(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 $chalans =Category::orderBy($columnName,$columnSortOrder); if($columnName_arr[0]['search']['value'] != null){ $chalans=$chalans->Where('category_id', $columnName_arr[0]['search']['value']); } if($columnName_arr[1]['search']['value'] != null){ $chalans=$chalans->Where('category_name', 'like', $columnName_arr[1]['search']['value'] . '%'); } if($columnName_arr[2]['search']['value'] != null){ $chalans=$chalans->Where('status', $columnName_arr[2]['search']['value']); } if($rowperpage < 0) { $rowperpage = 8999999999999999999; } $totalRecords =$chalans->count(); $chalans =$chalans->skip($start) ->take($rowperpage) ->get(); $data_arr = array(); foreach($chalans as $chalan){ $action ='<div role="group" aria-label="Basic example" class="btn-group btn-group-sm">'; // if(auth()->user()->canEvent('edit_category')) // { $action .=' <a href="'.url('admin/edit_category/'.$chalan->category_id).'" class="mr-2"> <i class="fa fa-edit text-warning"></i> </a> '; // } //if(auth()->user()->canEvent('viewchalan')) // { // $action .='<a href="'.url('document/model/'.$chalan->category_id).'" class="mr-2"> // Documents // </a> '; // } $action .='</div>'; $data_arr[] = array( "category_id" => $chalan->category_id, "category_name" => $chalan->category_name, "status" => $chalan->status == 1 ? 'Active' : 'In Active', "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_category')) // { // return redirect('/'); // } $categories=Category::all(); return view('backend.category.create',['categories'=>$categories]); } /** * 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(), [ 'category_name' => 'required|max:150', ]); if ($validator->fails()) { return response()->json(['errors'=>$validator->errors()->all()]); }else{ //return response()->json(['re'=> auth()->user()->user_id]); $code=MCode::first(); $requisition_n=1; if($code){ $code_n =str_pad($code->category_code,4,0,STR_PAD_LEFT); }else{ $code_n =str_pad($requisition_n,4,0,STR_PAD_LEFT); } try { DB::beginTransaction(); $category = new Category; $category->category_name = $request->category_name; $category->category_code = $code_n; $category->parent_id = $request->parent; $category->status = $request->status ? $request->status : 0; $category->created_by = auth('admin')->user()->id; $category->save(); if($code){ MCode::where('id',1)->update(['requisition_code'=>intval($code->requisition_code)+1]); }else{ MCode::where('id',1)->update(['requisition_code'=>2,'requisition_time'=>date("Y").date('m')]); } DB::commit(); } catch (\PDOException $e) { // Woopsy DB::rollBack(); return response()->json(['errors'=>$e]); } } return response()->json(['errors'=>'0','success'=>$request->category_name.' is successfully added']); } /** * Display the specified resource. * * @param \App\Models\Brand $brand * @return \Illuminate\Http\Response */ public function show(Color $color) { // } /** * Show the form for editing the specified resource. * * @param \App\Models\Brand $brand * @return \Illuminate\Http\Response */ public function edit($id) { // if(!auth()->user()->canEvent('edit_category')) // { // return redirect('/'); // } $category=Category::where('category_id',$id)->first(); $categories=Category::where('category_id','!=',$id)->get(); return view('backend.category.edit',['category'=>$category,'categories'=>$categories]); } /** * Update the specified resource in storage. * * @param \Illuminate\Http\Request $request * @param \App\Models\Brand $brand * @return \Illuminate\Http\Response */ public function update(Request $request) { $id=$request->category_id; $validator = \Validator::make($request->all(), [ 'category_name' => 'required|max:150|unique:categories,category_name,'.$id.',category_id', ]); if ($validator->fails()) { return response()->json(['errors'=>$validator->errors()->all()]); }else{ //return response()->json(['re'=> auth()->user()->user_id]); $category = Category::find($request->category_id); $category->category_name = $request->category_name; $category->status = $request->status ? $request->status : 0; $category->updated_by = auth()->user()->user_id; $category->save(); } return response()->json(['errors'=>'0','success'=>$request->category_name.' is successfully Updated']); } /** * Remove the specified resource from storage. * * @param \App\Models\Brand $brand * @return \Illuminate\Http\Response */ public function destroy(Brand $brand) { // } }