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\Models\Category; use Illuminate\Http\Request; use App\Models\Product; use App\Models\Brand; use App\Models\ProductModel; use App\Models\Supplier; use App\Models\Chalan; use App\Models\ChalanDetails; use App\Models\ProductImei; use App\Models\Stock; use App\Models\Color; use App\Models\Division; use App\Models\Customer; use App\Models\Designation; use App\Models\PriceHistory; use App\Models\SalesTarget; use Barryvdh\DomPDF\Facade as PDF; use Meneses\LaravelMpdf\Facades\LaravelMpdf as mPDF; use Carbon\Carbon; use DB; use App\Exports\SaleImei; use App\Exports\Sale; use App\Exports\CustomerReport; use App\Exports\SaleSummary; use App\Exports\SaleProductWise; use App\Exports\targetExport; use App\Exports\priceHistoryExport; use Maatwebsite\Excel\Facades\Excel; use File; use App\Http\Controllers\Controller; class ReportController extends Controller { // public function __construct() // { // $this->middleware('auth'); // //ini_set("pcre.backtrack_limit", "10000000"); // } function emp_target_achievement(Request $request){ // if(!auth()->user()->canEvent('emp_target_achievement')) // { // return redirect('/'); // } $designation=$request->get('designation'); $employee=$request->get('employee'); if($request->ajax()){ $con=array(); if($request->get('employee')){ $con['emplyoees.employee_id']=$request->get('employee'); } if($request->get('designation')){ $con['emplyoees.designation_id']=$request->get('designation'); } $start_date=$request->get('startyear')*100+$request->get('startmonth'); $end_date=$request->get('year')*100+$request->get('month'); $sales_target= SalesTarget::leftJoin('emplyoees','sales_targets.employee_id','emplyoees.employee_id') ->select('sales_targets.*') ->whereBetween('sales_targets.month', [$start_date, $end_date])->where($con)->get(); return view('backend.reports.tables.target',['employee'=>$employee,'designation_id'=>$designation,'sales_target'=>$sales_target,'startyear'=>$request->get('startyear'),'startmonth'=>$request->get('startmonth'),'year'=>$request->get('year'),'month'=>$request->get('month')]); } $start_date=Carbon::now()->format('Y')*100+Carbon::now()->format('m'); //$end_date=$request->get('year')*100+$request->get('month'); $sales_target= SalesTarget::leftJoin('emplyoees','sales_targets.employee_id','emplyoees.employee_id') ->select('sales_targets.*') ->whereBetween('sales_targets.month', [$start_date, $start_date])->get(); $designations=Designation::where('status',1)->get(); return view('backend.reports.target_vs_achievement',['employee'=>$employee,'designation_id'=>$designation,'designations'=>$designations,'sales_target'=>$sales_target,'startyear'=>Carbon::now()->format('Y'),'startmonth'=>Carbon::now()->format('m'),'year'=>Carbon::now()->format('Y'),'month'=>Carbon::now()->format('m')]); } public function priceHistory(Request $request){ $product=$request->get('product'); $brand_id=$request->get('brand'); if($request->ajax()){ $con=array(); $start_date = $request->get('s_date'); $end_date = $request->get('e_date'); if($request->get('product')){ $con['products.product_id']=$request->get('product'); } if($request->get('brand')){ $con['products.brand_id']=$request->get('brand'); } $priceHistorys=PriceHistory::join('products','price_histories.product_id','products.product_id') ->where($con) ->whereBetween('price_histories.history_date', [$start_date, $end_date]) ->get(); return view('backend.reports.tables.price_history_table',['priceHistorys'=>$priceHistorys,'s_date'=>$start_date,'e_date'=>$end_date,'product'=>$product,'brand_id'=>$brand_id]); } $start_date=Carbon::now()->firstOfMonth()->format('Y-m-d'); $end_date=Carbon::now()->format('Y-m-d'); $priceHistorys=PriceHistory::join('products','price_histories.product_id','products.product_id') ->whereBetween('price_histories.history_date', [$start_date, $end_date]) ->get(); $brands=Brand::where('status',1)->get(); $product=Product::where('status',1)->get(); // dd($brand_id); return view('backend.reports.price_history',['priceHistorys'=>$priceHistorys,'brands'=>$brands,'s_date'=>$start_date,'e_date'=>$end_date,'product'=>$product,'brand_id'=>$brand_id]); } public function sales(Request $request) { // if(!auth()->user()->canEvent('reports/sales')) // { // return redirect('/'); // } $colors=Color::where('status',1)->get(); $customer=$request->get('customer'); $district=$request->get('district'); $division_id=$request->get('division'); $employee=$request->get('employee'); $emp_status=$request->get('emp_status'); $designation_id=$request->get('designation'); $product=$request->get('product'); $brand_id=$request->get('brand'); if($request->ajax()){ $con=array(); $start_date = $request->get('s_date'); $end_date = $request->get('e_date'); if($request->get('customer')){ $con['customers.customer_id']=$request->get('customer'); } if(auth()->user()->employee->user_type != 3){ if($request->get('district')){ $con['customers.district_id']=$request->get('district'); } if($request->get('division')){ $con['customers.division_id']=$request->get('division'); } if($request->get('employee')){ $con['emplyoees.employee_id']=$request->get('employee'); } if($request->get('emp_status')){ $con['emplyoees.emp_status']=$request->get('emp_status'); } if($request->get('designation')){ $con['emplyoees.designation_id']=$request->get('designation'); } } if($request->get('product')){ $con['products.product_id']=$request->get('product'); } if($request->get('brand')){ $con['products.brand_id']=$request->get('brand'); } $end_date = $end_date ? $end_date : Chalan::latest()->pluck('chalan_date')->first(); if(auth()->user()->employee->user_type == 3){ $chalans=ChalanDetails::leftJoin('chalans','chalan_details.chalan_id','chalans.chalan_id') ->leftJoin('customers','chalans.customer_id','customers.customer_id') ->leftJoin('emplyoees','chalans.sales_user_id','emplyoees.employee_id') ->leftJoin('products','chalan_details.product_id','products.product_id') ->where('emplyoees.district_id',auth()->user()->employee->district_id) ->where($con) ->whereBetween('chalan_details.chalan_date', [$start_date, $end_date]) ->get()->groupBy('chalan_id'); return view('backend.reports.tables.sales_report_table',['colors'=>$colors,'chalans'=>$chalans,'s_date'=>$start_date,'e_date'=>$end_date,'customer'=>$customer,'product'=>$product,'brand_id'=>$brand_id]); }else{ $chalans=ChalanDetails::leftJoin('chalans','chalan_details.chalan_id','chalans.chalan_id') ->leftJoin('customers','chalans.customer_id','customers.customer_id') ->leftJoin('emplyoees','chalans.sales_user_id','emplyoees.employee_id') ->leftJoin('products','chalan_details.product_id','products.product_id') ->where($con) ->whereBetween('chalan_details.chalan_date', [$start_date, $end_date]) ->get()->groupBy('chalan_id'); // return $con; return view('backend.reports.tables.sales_report_table',['colors'=>$colors,'chalans'=>$chalans,'s_date'=>$start_date,'e_date'=>$end_date,'customer'=>$customer,'district'=>$district,'division_id'=>$division_id,'emp_status'=>$emp_status,'employee'=>$employee,'designation_id'=>$designation_id,'product'=>$product,'brand_id'=>$brand_id]); } } $start_date=Carbon::now()->firstOfMonth()->format('Y-m-d'); $end_date=Carbon::now()->format('Y-m-d'); //$chalans=ChalanDetails::whereBetween('chalan_date', [$start_date, $end_date])->get()->groupBy('chalan_id'); if(auth()->user()->employee->user_type == 3){ $chalans=ChalanDetails::join('chalans','chalan_details.chalan_id','chalans.chalan_id') ->join('customers','chalans.customer_id','customers.customer_id') ->join('emplyoees','chalans.sales_user_id','emplyoees.employee_id') ->join('products','chalan_details.product_id','products.product_id') ->where('emplyoees.district_id',auth()->user()->employee->district_id) ->whereBetween('chalan_details.chalan_date', [$start_date, $end_date]) ->get()->groupBy('chalan_id'); $brands=Brand::get(); $customers=Customer::where('district_id',auth()->user()->employee->district_id)->where('status',1)->get(); return view('backend.reports.sales',['customer'=>$customer,'customers'=>$customers,'brands'=>$brands,'colors'=>$colors,'chalans'=>$chalans,'s_date'=>$start_date,'e_date'=>$end_date,'product'=>$product,'brand_id'=>$brand_id]); }else{ $chalans=ChalanDetails::join('chalans','chalan_details.chalan_id','chalans.chalan_id') ->join('customers','chalans.customer_id','customers.customer_id') ->join('emplyoees','chalans.sales_user_id','emplyoees.employee_id') ->join('products','chalan_details.product_id','products.product_id') ->whereBetween('chalan_details.chalan_date', [$start_date, $end_date]) ->get()->groupBy('chalan_id'); //$chalan=Chalan::first(); //dd($chalans); $divisions=Division::where('status',1)->get(); $brands=Brand::where('status',1)->get(); $designations=Designation::where('status',1)->get(); return view('backend.reports.sales',['brands'=>$brands,'colors'=>$colors,'designations'=>$designations,'divisions'=>$divisions,'chalans'=>$chalans,'s_date'=>$start_date,'e_date'=>$end_date,'customer'=>$customer,'district'=>$district,'division_id'=>$division_id,'emp_status'=>$emp_status,'employee'=>$employee,'designation_id'=>$designation_id,'product'=>$product,'brand_id'=>$brand_id]); } } public function customerReport(Request $request) { // if(!auth('admin')->user()->canEvent('reports/sales')) // { // return redirect('/'); // } $colors=Color::where('status',1)->get(); $customer=$request->get('customer'); $district=$request->get('district'); $division_id=$request->get('division'); $employee=$request->get('employee'); $emp_status=$request->get('emp_status'); $designation_id=$request->get('designation'); $product=$request->get('product'); $brand_id=$request->get('brand'); if($request->ajax()){ $con=array(); $start_date = $request->get('s_date'); $end_date = $request->get('e_date'); $end_date = $end_date ? $end_date : Chalan::latest()->pluck('chalan_date')->first(); $chalans=chalan::whereBetween('chalan_date', [$start_date, $end_date]) ->where('customer_id',$request->get('customer'))->get(); // leftJoin('chalans','chalan_details.chalan_id','chalans.chalan_id') // ->leftJoin('customers','chalans.customer_id','customers.customer_id') // ->leftJoin('emplyoees','chalans.sales_user_id','emplyoees.employee_id') // ->leftJoin('products','chalan_details.product_id','products.product_id') // ->where($con) // ->whereBetween('chalan_details.chalan_date', [$start_date, $end_date]) // ->get()->groupBy('chalan_id'); //return $chalans; return view('backend.reports.tables.customer_report',['colors'=>$colors,'chalans'=>$chalans,'s_date'=>$start_date,'e_date'=>$end_date,'customer'=>$customer,'district'=>$district,'division_id'=>$division_id,'emp_status'=>$emp_status,'employee'=>$employee,'designation_id'=>$designation_id,'product'=>$product,'brand_id'=>$brand_id]); } $start_date=Carbon::now()->firstOfMonth()->format('Y-m-d'); $end_date=Carbon::now()->format('Y-m-d'); //$chalans=ChalanDetails::whereBetween('chalan_date', [$start_date, //$chalan=Chalan::first(); //dd($chalans); $divisions=Division::where('status',1)->get(); $brands=Brand::where('status',1)->get(); $designations=Designation::where('status',1)->get(); return view('backend.reports.cutomer_report',['brands'=>$brands,'colors'=>$colors,'designations'=>$designations,'divisions'=>$divisions,'s_date'=>$start_date,'e_date'=>$end_date,'customer'=>$customer,'district'=>$district,'division_id'=>$division_id,'emp_status'=>$emp_status,'employee'=>$employee,'designation_id'=>$designation_id,'product'=>$product,'brand_id'=>$brand_id]); } public function saleImei(Request $request) { //dd("hi"); // if(!auth()->user()->canEvent('reports/sale_iemi')) // { // return redirect('/'); // } $colors=Color::get(); $customer=$request->get('customer'); $district=$request->get('district'); $division=$request->get('division'); $employee=$request->get('employee'); $emp_status=$request->get('emp_status'); $designation=$request->get('designation'); $product=$request->get('product'); $category=$request->get('category'); if($request->ajax()){ $con=array(); $start_date = $request->get('s_date'); $end_date = $request->get('e_date'); if($request->get('customer')){ $con['customers.customer_id']=$request->get('customer'); } if($request->get('district')){ $con['customers.district_id']=$request->get('district'); } if($request->get('division')){ $con['customers.division_id']=$request->get('division'); } if($request->get('employee')){ $con['emplyoees.employee_id']=$request->get('employee'); } if($request->get('emp_status')){ $con['emplyoees.emp_status']=$request->get('emp_status'); } if($request->get('designation')){ $con['emplyoees.designation_id']=$request->get('designation'); } if($request->get('product')){ $con['products.product_id']=$request->get('product'); } if($request->get('category')){ $con['products.category_id']=$request->get('category'); } $end_date = $end_date ? $end_date : Carbon::now()->format('Y-m-d'); $product_imeis=ProductImei::Join('chalan_details','product_imeis.chalan_details_id','chalan_details.chalan_details_id') ->leftJoin('chalans','chalan_details.chalan_id','chalans.chalan_id') ->leftJoin('customers','chalans.customer_id','customers.customer_id') ->leftJoin('emplyoees','chalans.sales_user_id','emplyoees.employee_id') ->leftJoin('products','chalan_details.product_id','products.product_id') ->where($con) ->whereBetween('chalan_details.chalan_date', [$start_date, $end_date]) ->get(); //return $product_imeis->chunk(20)[0][0]->chalan_details; // $chalans=ChalanDetails::leftJoin('chalans','chalan_details.chalan_id','chalans.chalan_id') // ->leftJoin('customers','chalans.customer_id','customers.customer_id') // ->leftJoin('emplyoees','chalans.sales_user_id','emplyoees.employee_id') // ->leftJoin('products','chalan_details.product_id','products.product_id') // ->where($con) // ->whereBetween('chalan_details.chalan_date', [$start_date, $end_date]) // ->get()->groupBy('chalan_id'); //return $con; return view('backend.reports.tables.sale_imei_table',['colors'=>$colors, 'product_imeis'=>$product_imeis, 's_date'=>$start_date, 'e_date'=>$end_date, 'customer'=>$customer, 'district'=>$district, 'division_id'=>$division, 'employee'=>$employee, 'emp_status'=>$emp_status, 'designation_id'=>$designation, 'product'=>$product, 'category_id'=>$category]); } $start_date=Carbon::now()->firstOfMonth()->format('Y-m-d'); $end_date=Carbon::now()->format('Y-m-d'); // $chalans=ChalanDetails::whereBetween('chalan_date', [$start_date, $end_date])->get()->groupBy('chalan_id'); //$product_imeis=ProductImei::Join('chalan_details','product_imeis.chalan_details_id','chalan_details.chalan_details_id') // ->whereBetween('chalan_details.chalan_date', [$start_date, $end_date])->get(); // dd($product_imeis); $product_imeis=ProductImei::Join('chalan_details','product_imeis.chalan_details_id','chalan_details.chalan_details_id') ->leftJoin('chalans','chalan_details.chalan_id','chalans.chalan_id') ->leftJoin('customers','chalans.customer_id','customers.customer_id') ->leftJoin('emplyoees','chalans.sales_user_id','emplyoees.employee_id') ->leftJoin('products','chalan_details.product_id','products.product_id') ->whereBetween('chalan_details.chalan_date', [$start_date, $end_date]) ->get(); //$chalan=Chalan::first(); //dd($chalans); $divisions=Division::where('status',1)->get(); $categories=Category::where('status',1)->get(); $designations=Designation::where('status',1)->get(); return view('backend.reports.sale_iemi',['categories'=>$categories, 'colors'=>$colors, 'designations'=>$designations, 'divisions'=>$divisions, 'product_imeis'=>$product_imeis, 's_date'=>$start_date, 'e_date'=>$end_date, 'customer'=>$customer, 'district'=>$district, 'division_id'=>$division, 'emp_status'=>$emp_status, 'employee'=>$employee, 'designation_id'=>$designation, 'product'=>$product, 'category_id'=>$category]); } public function salesStatement(Request $request) { $customer=$request->get('customer'); $district=$request->get('district'); $division=$request->get('division'); $employee=$request->get('designation'); $designation=$request->get('customer'); $colors=Color::where('status',1)->get(); if($request->ajax()){ $con=array(); $start_date = $request->get('s_date'); $end_date = $request->get('e_date'); if($request->get('customer')){ $con['customers.customer_id']=$request->get('customer'); } if($request->get('district')){ $con['customers.district_id']=$request->get('district'); } if($request->get('division')){ $con['customers.division_id']=$request->get('division'); } if($request->get('employee')){ $con['emplyoees.employee_id']=$request->get('employee'); } if($request->get('designation')){ $con['emplyoees.designation_id']=$request->get('designation'); } $end_date = $end_date ? $end_date : Chalan::latest()->pluck('chalan_date')->first(); $chalans=Chalan::join('customers','chalans.customer_id','customers.customer_id') ->join('emplyoees','chalans.sales_user_id','emplyoees.employee_id') ->where($con) ->whereBetween('chalan_date', [$start_date, $end_date]) ->get(); //return $input; return view('backend.reports.tables.sale_statement_table',['colors'=>$colors,'chalans'=>$chalans,'s_date'=>$start_date,'e_date'=>$end_date,'customer'=>$customer,'district'=>$district,'division'=>$division,'employee'=>$employee,'designation'=>$designation]); } $start_date=Carbon::now()->firstOfMonth()->format('Y-m-d'); $end_date=Carbon::now()->format('Y-m-d'); $chalans=ChalanDetails::whereBetween('chalan_date', [$start_date, $end_date])->get()->groupBy('chalan_id'); //$chalan=Chalan::first(); //dd($chalans); $divisions=Division::where('status',1)->get(); $designations=Designation::where('status',1)->get(); return view('backend.reports.sale_statement',['colors'=>$colors,'designations'=>$designations,'divisions'=>$divisions,'chalans'=>$chalans,'s_date'=>$start_date,'e_date'=>$end_date,'customer'=>$customer,'district'=>$district,'division'=>$division,'employee'=>$employee,'designation'=>$designation]); } public function salesSummery(Request $request) { // if(!auth()->user()->canEvent('reports/sales_summery')) // { // return redirect('/'); // } $customer=$request->get('customer'); $district=$request->get('district'); $division=$request->get('division'); $designation=$request->get('designation'); $employee=$request->get('employee'); $emp_status=$request->get('emp_status'); if($request->ajax()){ //return $request; $start_date = $request->get('s_date'); $end_date = $request->get('e_date'); $end_date = $end_date ? $end_date : Carbon::now()->format('Y-m-d'); $con=array(); if($request->get('customer')){ $con['customers.customer_id']=$request->get('customer'); } if($request->get('district')){ $con['customers.district_id']=$request->get('district'); } if($request->get('division')){ $con['customers.division_id']=$request->get('division'); } if($request->get('employee')){ $con['emplyoees.employee_id']=$request->get('employee'); } if($request->get('emp_status')){ $con['emplyoees.emp_status']=$request->get('emp_status'); } if($request->get('designation')){ $con['emplyoees.designation_id']=$request->get('designation'); } $sells=Chalan::join('customers','chalans.customer_id','customers.customer_id') ->join('emplyoees','chalans.sales_user_id','emplyoees.employee_id') ->where($con) ->whereBetween('chalan_date', [$start_date, $end_date])->get()->groupBy(function($data) use ($request) { return Carbon::parse($data->chalan_date)->format($request->by_duration); }); //return $sells; return view('backend.reports.tables.sale_summary',['sells'=>$sells,'s_date'=>$start_date,'e_date'=>$end_date,'by_duration'=>$request->by_duration,'customer'=>$customer,'district'=>$district,'division_id'=>$division,'emp_status'=>$emp_status,'employee'=>$employee,'designation_id'=>$designation]); } $start_date=Carbon::now()->firstOfMonth()->format('Y-m-d'); $end_date=Carbon::now()->format('Y-m-d'); $sells=Chalan::whereBetween('chalan_date', [$start_date, $end_date])->get()->groupBy(function($data) use ($request) { return Carbon::parse($data->chalan_date)->format($request->by_duration); }); $divisions=Division::where('status',1)->get(); $designations=Designation::where('status',1)->get(); return view('backend.reports.sale_summary',['designations'=>$designations,'divisions'=>$divisions,'sells'=>$sells,'s_date'=>$start_date,'e_date'=>$end_date,'by_duration'=>$request->by_duration,'customer'=>$customer,'district'=>$district,'division_id'=>$division,'emp_status'=>$emp_status,'employee'=>$employee,'designation_id'=>$designation]); } public function productWiseSales(Request $request) { // if(!auth()->user()->canEvent('reports/product_wise_sales')) // { // return redirect('/'); // } $category_id=$request->get('category'); $product=$request->get('product'); $model=$request->get('model_id'); $emp_status=$request->get('emp_status'); if($request->ajax()){ // return $request; $start_date = $request->get('start_date') ? $request->get('start_date'):Carbon::now()->startOfMonth()->format('Y-m-d'); $end_date = $request->get('end_date') ? $request->get('end_date') :Carbon::now()->format('Y-m-d'); $con=array(); if($request->get('category')){ $con['category_id']=$request->get('category'); } if($request->get('product')){ $con['product_id']=$request->get('product'); } if($request->get('model')){ $con['model_id']=$request->get('model'); } if($request->get('emp_status')){ $con['emp_status']=$request->get('emp_status'); } $sell_products=ChalanDetails::whereBetween('chalan_details.chalan_date', [$start_date, $end_date]) ->join('chalans','chalans.chalan_id','chalan_details.chalan_id') ->join('emplyoees','chalans.sales_user_id' , 'emplyoees.employee_id') //->where('emplyoees.emp_status',$emp_status) ->where($con) ->get()->groupBy('chalan_details.chalan_id'); // return $sell_products; //ChalanDetails::where($con)->whereBetween('chalan_date', [$start_date, $end_date])->get()->groupBy('chalan_id'); return view('backend.reports.tables.product_wise_sales_table',['sell_products'=>$sell_products,'s_date'=>$start_date,'e_date'=>$end_date,'product'=>$product,'category_id'=>$category_id,'model_id'=>$model,'emp_status'=>$emp_status]); } $start_date=Carbon::now()->firstOfMonth()->format('Y-m-d'); $end_date=Carbon::now()->format('Y-m-d'); $sell_products=ChalanDetails::whereBetween('chalan_details.chalan_date', [$start_date, $end_date]) ->join('chalans','chalans.chalan_id','chalan_details.chalan_id') ->join('emplyoees','chalans.sales_user_id' , 'emplyoees.employee_id') ->where('emplyoees.emp_status',1) ->get()->groupBy('chalan_details.chalan_id'); // dd($sell_products); $emp_status=1; $categories=Category::where('status',1)->get(); return view('backend.reports.product_wise_sales',['categories'=>$categories,'sell_products'=>$sell_products,'s_date'=>$start_date,'e_date'=>$end_date,'category_id'=>$category_id,'product'=>$product,'model_id'=>$model,'emp_status'=>$emp_status]); } public function priceHistoryPdf(Request $request) { //dd($request); $s_date=$request->s_date; $e_date=$request->e_date; $con=array(); if($request->customer){ $con['customers.customer_id']=$request->customer; } if($request->brand){ $con['products.brand_id']=$request->brand; } if($request->product){ $con['products.product_id']=$request->product; } $priceHistorys=PriceHistory::join('products','price_histories.product_id','products.product_id') ->where($con) ->whereBetween('price_histories.history_date', [$s_date, $e_date]) ->get(); // return $priceHistorys; $data = [ 'priceHistorys' => $priceHistorys, 'request' => $request, 'e_date' => $e_date, 's_date' => $s_date, ]; // dd($priceHistorys); //return view('pdf.reports.sells.sells', compact('chalans', 'request','e_date','s_date','colors')); $pdf = mPDF::loadView('backend.pdf.reports.sells.price_history', $data,[],[ 'orientation' => 'L', 'format' => 'Legal' ]); // $pdf = PDF::loadView('pdf.reports.sells.sells', compact('chalans', 'request','e_date','s_date','colors'))->setPaper('a4'); if ($request->action_type == 'download'){ //->save($pdfFilePath); return $pdf->download('price-history-' . Carbon::now()->format('yyyy-mm-dd'). '.pdf'); }elseif($request->action_type == 'print'){ return $pdf->stream('price-history.pdf'); } else{ return Excel::download(new priceHistoryExport($s_date, $e_date,$priceHistorys), 'price-history.xlsx'); } } public function targetPdf(Request $request) { //dd($request); $s_date=$request->get('startyear'); $e_date=$request->get('startmonth'); $ss_date=$request->get('year'); $ee_date=$request->get('month'); $con=array(); if($request->get('employee')){ $con['emplyoees.employee_id']=$request->get('employee'); } if($request->get('designation')){ $con['emplyoees.designation_id']=$request->get('designation'); } $start_date=$request->get('startyear')*100+$request->get('startmonth'); $end_date=$request->get('year')*100+$request->get('month'); $sales_target= SalesTarget::leftJoin('emplyoees','sales_targets.employee_id','emplyoees.employee_id') ->select('sales_targets.*') ->whereBetween('sales_targets.month', [$start_date, $end_date])->where($con)->get(); if ($request->action_type == 'download'){ $data = [ 'sales_target' => $sales_target, 'request' => $request, 'e_date' => $e_date, 's_date' => $s_date, 'ee_date' => $ee_date, 'ss_date' => $ss_date, ]; $pdf = mPDF::loadView('pdf.reports.sells.target', $data,[],[ 'orientation' => 'L', 'format' => 'Legal' ]); // $pdf = PDF::loadView('pdf.reports.sells.target', compact('sales_target', 'request','e_date','s_date','ee_date','ss_date'))->setPaper('a4'); return $pdf->download('target-vs-achievement-' . Carbon::now()->format('yyyy-mm-dd'). '.pdf'); }elseif($request->action_type == 'print'){ $data = [ 'sales_target' => $sales_target, 'request' => $request, 'e_date' => $e_date, 's_date' => $s_date, 'ee_date' => $ee_date, 'ss_date' => $ss_date, ]; $pdf = mPDF::loadView('pdf.reports.sells.target', $data,[],[ 'orientation' => 'L', 'format' => 'Legal' ]); @unlink('pdf/reports/sales/' . 'target-vs-achievement.pdf'); $pdf->save('pdf/reports/sales/' . 'target-vs-achievement.pdf'); return redirect('pdf/reports/sales/' . 'target-vs-achievement.pdf'); } else{ return Excel::download(new targetExport($sales_target), 'target-vs-achievement.xlsx'); } } public function ProductWiseSalePdf(Request $request) { //dd($request); $s_date=$request->s_date; $e_date=$request->e_date; $con=array(); if($request->get('brand')){ $con['brand_id']=$request->get('brand'); } if($request->get('product')){ $con['product_id']=$request->get('product'); } if($request->get('model')){ $con['model_id']=$request->get('model'); } if($request->get('emp_status')){ $con['emp_status']=$request->get('emp_status'); } $sell_products=ChalanDetails::whereBetween('chalan_details.chalan_date', [$s_date, $e_date]) ->join('chalans','chalans.chalan_id','chalan_details.chalan_id') ->join('emplyoees','chalans.sales_user_id' , 'emplyoees.employee_id') //->where('emplyoees.emp_status',$emp_status) ->where($con) ->get()->groupBy('chalan_details.chalan_id'); //ChalanDetails::where($con)->whereBetween('chalan_date', [$s_date, $e_date])->get()->groupBy('chalan_id'); //dd($sell_products); //return view('pdf.reports.sells.product-wise-sell-report', compact('sell_products', 'request','e_date','s_date')); $pdf = PDF::loadView('pdf.reports.sells.product-wise-sell-report', compact('sell_products', 'request','e_date','s_date'))->setPaper('a4'); if ($request->action_type == 'download'){ return $pdf->download('product-wise-sales-report-' . Carbon::now()->format('yyyy-mm-dd'). '.pdf'); }elseif($request->action_type == 'print'){ @unlink('pdf/reports/sales/' . 'product-wise-sales-report.pdf'); $pdf->save('pdf/reports/sales/' . 'product-wise-sales-report.pdf'); return redirect('pdf/reports/sales/' . 'product-wise-sales-report.pdf'); } else{ return Excel::download(new SaleProductWise($s_date, $e_date,$con), 'ProductWise Sale Report.xlsx'); } } public function CustomerReportPdf(Request $request) { //dd($request); $s_date=$request->s_date; $e_date=$request->e_date; $con=array(); $colors=Color::get(); $chalans=chalan::whereBetween('chalan_date', [$s_date, $e_date]) ->where('customer_id',$request->get('customer'))->get(); $data = [ 'chalans' => $chalans, 'request' => $request, 'e_date' => $e_date, 's_date' => $s_date, 'colors' => $colors, ]; //return view('pdf.reports.sells.sells', compact('chalans', 'request','e_date','s_date','colors')); $pdf = mPDF::loadView('pdf.reports.sells.customer_report', $data,[],[ 'orientation' => 'L', 'format' => 'Legal' ]); // $pdf = PDF::loadView('pdf.reports.sells.sells', compact('chalans', 'request','e_date','s_date','colors'))->setPaper('a4'); if ($request->action_type == 'download'){ //->save($pdfFilePath); return $pdf->download('customer-report-' . Carbon::now()->format('yyyy-mm-dd'). '.pdf'); }elseif($request->action_type == 'print'){ return $pdf->stream('customer-report.pdf'); //$pdf->save('pdf/reports/saless/' . 'sales-report.pdf'); // return redirect('pdf/reports/sales/' . 'sales-report.pdf'); } else{ // return new CustomerReport($s_date, $e_date,$chalans); // return view('exports.customer_report',['chalans'=>$chalans]); return Excel::download(new CustomerReport($s_date, $e_date,$chalans), 'Customer Report.xlsx'); } } public function SalesReportPdf(Request $request) { //dd($request); $s_date=$request->s_date; $e_date=$request->e_date; $con=array(); if($request->customer){ $con['customers.customer_id']=$request->customer; } if(auth()->user()->employee->user_type != 3){ if($request->get('district')){ $con['customers.district_id']=$request->get('district'); } if($request->get('division')){ $con['customers.division_id']=$request->get('division'); } if($request->get('employee')){ $con['emplyoees.employee_id']=$request->get('employee'); } if($request->get('emp_status')){ $con['emplyoees.emp_status']=$request->get('emp_status'); } if($request->get('designation')){ $con['emplyoees.designation_id']=$request->get('designation'); } } if($request->brand){ $con['products.brand_id']=$request->brand; } if($request->product){ $con['products.product_id']=$request->product; } $colors=Color::get(); if(auth()->user()->employee->user_type == 3){ $chalans=ChalanDetails::join('chalans','chalan_details.chalan_id','chalans.chalan_id') ->join('customers','chalans.customer_id','customers.customer_id') ->join('emplyoees','chalans.sales_user_id','emplyoees.employee_id') ->join('products','chalan_details.product_id','products.product_id') ->where('emplyoees.district_id',auth()->user()->employee->district_id) ->where($con) ->whereBetween('chalan_details.chalan_date', [$s_date, $e_date]) ->get()->groupBy('chalan_id'); }else{ $chalans=ChalanDetails::join('chalans','chalan_details.chalan_id','chalans.chalan_id') ->join('customers','chalans.customer_id','customers.customer_id') ->join('emplyoees','chalans.sales_user_id','emplyoees.employee_id') ->join('products','chalan_details.product_id','products.product_id') ->where($con) ->whereBetween('chalan_details.chalan_date', [$s_date, $e_date]) ->get()->groupBy('chalan_id'); } // $chalans=ChalanDetails::join('chalans','chalan_details.chalan_id','chalans.chalan_id') // ->join('customers','chalans.customer_id','customers.customer_id') // ->join('emplyoees','chalans.sales_user_id','emplyoees.employee_id') // ->join('products','chalan_details.product_id','products.product_id') // ->where($con) // ->whereBetween('chalan_details.chalan_date', [$s_date, $e_date]) // ->get()->groupBy('chalan_id'); $data = [ 'chalans' => $chalans, 'request' => $request, 'e_date' => $e_date, 's_date' => $s_date, 'colors' => $colors, ]; //return view('pdf.reports.sells.sells', compact('chalans', 'request','e_date','s_date','colors')); $pdf = mPDF::loadView('pdf.reports.sells.sells', $data,[],[ 'orientation' => 'L', 'format' => 'Legal' ]); // $pdf = PDF::loadView('pdf.reports.sells.sells', compact('chalans', 'request','e_date','s_date','colors'))->setPaper('a4'); if ($request->action_type == 'download'){ //->save($pdfFilePath); return $pdf->download('sales-report-' . Carbon::now()->format('yyyy-mm-dd'). '.pdf'); }elseif($request->action_type == 'print'){ return $pdf->stream('sales-report.pdf'); //$pdf->save('pdf/reports/saless/' . 'sales-report.pdf'); // return redirect('pdf/reports/sales/' . 'sales-report.pdf'); } else{ // return new Sale($s_date, $e_date,$chalans); return Excel::download(new Sale($s_date, $e_date,$chalans), 'Sale Report.xlsx'); } } public function SalesImeiReportPdf(Request $request) { // ini_set('max_execution_time', '300'); ini_set("pcre.backtrack_limit", "5000000"); //dd(ini_get('pcre.backtrack_limit')); //dd($request); $s_date=$request->s_date; $e_date=$request->e_date; $con=array(); if($request->customer){ $con['customers.customer_id']=$request->customer; } if($request->district){ $con['customers.district_id']=$request->district; } if($request->division){ $con['customers.division_id']=$request->division; } if($request->employee){ $con['emplyoees.employee_id']=$request->employee; } if($request->emp_status){ $con['emplyoees.emp_status']=$request->emp_status; } if($request->designation){ $con['emplyoees.designation_id']=$request->designation; } if($request->brand){ $con['products.brand_id']=$request->brand; } if($request->product){ $con['products.product_id']=$request->product; } $colors=Color::get(); // $pdf = mPDF::loadView('pdf.reports.sells.sale_iemi', $data,[],[ // 'orientation' => 'L', // 'format' => 'Legal' // ]); // $html=view('pdf.reports.sells.sale_iemi', compact('product_imeis', 'request','e_date','s_date','colors')); // $pdf = PDF::loadView('pdf.reports.sells.sale_iemi', compact('product_imeis', 'request','e_date','s_date','colors'))->setPaper('a4'); // return $pdf->download('sales-imei-report-' . Carbon::now()->format('yyyy-mm-dd'). '.pdf'); //ini_set('max_execution_time', '300'); //ini_set("pcre.backtrack_limit", "50000000"); // $pdf = mPDF::chunkLoadHTML('chunk',$html,[ // 'orientation' => 'L', // 'format' => 'Legal' // ]); //return $pdf; // $pdf=PDF::loadHTML($html)->setPaper('a4')->setOrientation('landscape')->setOption('margin-bottom', 0); // return $pdf->download('sales-imei-report-' . Carbon::now()->format('yyyy-mm-dd'). '.pdf'); if ($request->action_type == 'download'){ $product_imeis=ProductImei::Join('chalan_details','product_imeis.chalan_details_id','chalan_details.chalan_details_id') ->leftJoin('chalans','chalan_details.chalan_id','chalans.chalan_id') ->leftJoin('customers','chalans.customer_id','customers.customer_id') ->leftJoin('emplyoees','chalans.sales_user_id','emplyoees.employee_id') ->leftJoin('products','chalan_details.product_id','products.product_id') ->where($con) ->whereBetween('chalan_details.chalan_date', [$s_date, $e_date]) ->get(); $html=view('pdf.reports.sells.sale_iemi', compact('product_imeis', 'request','e_date','s_date')); return $html; $data = [ 'product_imeis' => $product_imeis, 'request' => $request, 'e_date' => $e_date, 's_date' => $s_date, 'colors' => $colors, ]; $pdf = mPDF::loadView('pdf.reports.sells.sale_iemi', $data,[],[ 'orientation' => 'L', 'format' => 'Legal' ]); return $pdf->download('sales-imei-report-' . Carbon::now()->format('yyyy-mm-dd'). '.pdf'); }elseif($request->action_type == 'print'){ $product_imeis=ProductImei::Join('chalan_details','product_imeis.chalan_details_id','chalan_details.chalan_details_id') ->leftJoin('chalans','chalan_details.chalan_id','chalans.chalan_id') ->leftJoin('customers','chalans.customer_id','customers.customer_id') ->leftJoin('emplyoees','chalans.sales_user_id','emplyoees.employee_id') ->leftJoin('products','chalan_details.product_id','products.product_id') ->where($con) ->whereBetween('chalan_details.chalan_date', [$s_date, $e_date]) ->get(); $html=view('pdf.reports.sells.sale_iemi', compact('product_imeis', 'request','e_date','s_date')); return $html; $data = [ 'product_imeis' => $product_imeis, 'request' => $request, 'e_date' => $e_date, 's_date' => $s_date, 'colors' => $colors, ]; $pdf = mPDF::loadView('pdf.reports.sells.sale_iemi', $data,[],[ 'orientation' => 'L', 'format' => 'Legal' ]); @unlink('pdf/reports/sales/' . 'sales-imei-report.pdf'); $pdf->save('pdf/reports/sales/' . 'sales-imei-report.pdf'); return redirect('pdf/reports/sales/' . 'sales-imei-report.pdf'); } else{ return Excel::download(new SaleImei($s_date, $e_date,$con), 'Sale IMEI Report.xlsx'); } } public function SaleSummaryPdf(Request $request) { //dd($request); $s_date=$request->s_date; $e_date=$request->e_date; $con=array(); if($request->customer){ $con['customers.customer_id']=$request->customer; } if($request->district){ $con['customers.district_id']=$request->district; } if($request->division){ $con['customers.division_id']=$request->division; } if($request->employee){ $con['emplyoees.employee_id']=$request->employee; } if($request->emp_status){ $con['emplyoees.emp_status']=$request->emp_status; } if($request->designation){ $con['emplyoees.designation_id']=$request->designation; } $sells=Chalan::join('customers','chalans.customer_id','customers.customer_id') ->join('emplyoees','chalans.sales_user_id','emplyoees.employee_id') ->where($con) ->whereBetween('chalan_date', [$s_date, $e_date])->get()->groupBy(function($data) use ($request) { return Carbon::parse($data->chalan_date)->format($request->by_duration); }); $by_duration=$request->by_duration; // dd($sells) // return view('pdf.reports.sells.sell-summary', compact('sells', 'request','e_date','s_date','by_duration')); $pdf = PDF::loadView('pdf.reports.sells.sell-summary', compact('sells', 'request','e_date','s_date','by_duration'))->setPaper('a4'); if ($request->action_type == 'download'){ return $pdf->download('sales-summary-report-' . Carbon::now()->format('yyyy-mm-dd'). '.pdf'); }elseif($request->action_type == 'print'){ @unlink('pdf/reports/sales/' . 'sales-summary-report.pdf'); $pdf->save('pdf/reports/sales/' . 'sales-summary-report.pdf'); return redirect('pdf/reports/sales/' . 'sales-summary-report.pdf'); } else{ return Excel::download(new SaleSummary($s_date, $e_date,$request->by_duration,$con), 'Sale Summary Report.xlsx'); } } public function stockIn(Request $request){ //$stocks=Stock::with('details')->get(); // dd() if($request->ajax()){ $start_date = $request->get('s_date'); $end_date = $request->get('e_date') ? $request->get('e_date') : date('Y-m-d'); //$end_date = $end_date ? $end_date : Stock::latest()->pluck('stock_date')->first(); $stocks=Stock::select('stock_colors.*','stocks.*')->leftJoin('stock_colors', 'stocks.stock_id', '=', 'stock_colors.stock_id')->get()->groupby('product_id'); //return $input; return view('backend.reports.tables.stock_in',['stocks'=>$stocks,'s_date'=>$start_date,'e_date'=>$end_date]); } $suppliers=Supplier::get(); $brands=Brand::get(); $models=ProductModel::get(); //$products=Product::get(); return view('backend.reports.stock_in',['suppliers'=>$suppliers,'brands'=>$brands,'models'=>$models]); } public function StockReportPdf(Request $request) { $product = $request->roduct; $model = $request->model; $brand = $request->brand; $con=array(); if($product != 'all'){ $con['barcodes.product_id'] = $product; } if($model != 'all'){ $con['products.model_id'] = $model; } if($brand != 'all'){ $con['products.brand_id'] = $brand; } $chalans=DB::table('barcodes') ->leftJoin('products','barcodes.product_id','products.product_id') ->leftJoin('product_models','products.model_id','product_models.model_id') ->leftJoin('brands','products.brand_id','brands.brand_id'); if(!empty($con)){ //$chalans->where($con); } $chalans=$chalans->get(); //return $chalans; $pdf = PDF::loadView('pdf.reports.stock.stock', compact('chalans', 'request','product','model'))->setPaper('a4'); if ($request->action_type == 'download'){ return $pdf->download('stock-report-' . Carbon::now()->format('yyyy-mm-dd'). '.pdf'); }elseif($request->action_type == 'print'){ @unlink('pdf/reports/stock/' . 'stock-report.pdf'); $pdf->save('pdf/reports/stock/' . 'stock-report.pdf'); return redirect('pdf/reports/stock/' . 'stock-report.pdf'); }elseif($request->action_type == 'csv'){ $headers = [ 'Cache-Control' => 'must-revalidate, post-check=0, pre-check=0' , 'Content-type' => 'text/csv' , 'Content-Disposition' => 'attachment; filename=galleries.csv' , 'Expires' => '0' , 'Pragma' => 'public' ]; $filename = 'download.csv'; $handle = fopen($filename, 'w'); fputcsv($handle, [ 'SL', 'Product Code', 'Product Name', 'Brand', 'Model', 'color', 'Purchase Price', 'Quantity', 'Current Stock Value', ]); foreach ($chalans as $key => $chalan) { $p= json_decode($chalan->purchase_quantity); $price=''; $quantity=''; $totalprice=0; $i=0; foreach($p as $k=>$v){ if($i > 0){ $price .=','.$k; $quantity .=','.$v; $totalprice += $k*$v; }else{ $price .=$k; $quantity .=$v; $totalprice += $k*$v; } $i++; } fputcsv($handle, [ $key + 1, $chalan->product_code, $chalan->product_name, $chalan->brand_name, $chalan->model_name, $chalan->color, $price, $quantity, $totalprice, ]); } fclose($handle); return response()->download($filename, 'sales-report-' . Carbon::now()->toDateString() . '.csv', $headers); } else{ $headers = [ 'Cache-Control' => 'must-revalidate, post-check=0, pre-check=0' , 'Content-type' => 'application/vnd.ms-excel' , 'Content-Disposition' => 'attachment; filename=galleries.csv' , 'Expires' => '0' , 'Pragma' => 'public' ]; $filename = "stock-report" . date('Y-m-d') . ".xls"; header("Content-Disposition: attachment; filename=\"$filename\""); header("Content-Type: application/vnd.ms-excel"); $row="SL\tProduct Code\tProduct Namee\Brand\tModel\tColor\tPurchase Price\tQuantity\tCurrent Stock Value\n"; foreach ($chalans as $key => $chalan) { $p= json_decode($chalan->purchase_quantity); $price=''; $quantity=''; $totalprice=0; $i=0; foreach($p as $k=>$v){ if($i > 0){ $price .=','.$k; $quantity .=','.$v; $totalprice += $k*$v; }else{ $price .=$k; $quantity .=$v; $totalprice += $k*$v; } $i++; } $row .= ($key + 1)."\t".$chalan->product_code."\t".$chalan->product_name."\t".$chalan->brand_name."\t".$chalan->model_name."\t".$chalan->color."\t".$price."\t".$quantity."\t".$totalprice."\n"; } echo $row; } } }