/
home
/
sjslayjy
/
public_html
/
tabson
/
app
/
Http
/
Controllers
/
Upload File
HOME
<?php namespace App\Http\Controllers; use Illuminate\Support\Facades\Auth; use App\Report; use App\Item; use DB; use Facade\FlareClient\View; use Illuminate\Http\Request; use App\Exports\ReportExport; use App\Exports\ReportListExport; use App\Imports\UsersImport; use Maatwebsite\Excel\Facades\Excel; class ReportController extends Controller { public function report() { return view('dashboard.report.report-genrate'); } public function getreport(Request $request){ $excel_name = $request->excel_name; $from_date = $request->from_date; $to_date = $request->to_date; $date_type = ''; if($excel_name== 1){ $date_type = $request->pr_po_date; //$response="master"; return Excel::download(new ReportExport($from_date,$to_date,$excel_name, $date_type), 'master_report.xlsx'); } if($excel_name== 2){ //$response="pr"; return Excel::download(new ReportExport($from_date,$to_date,$excel_name, $date_type), 'pr_report.xlsx'); } if($excel_name== 3){ //$response= "po"; return Excel::download(new ReportExport($from_date,$to_date,$excel_name, $date_type), 'po_report.xlsx'); } if($excel_name== 4){ //$response="itemwise"; return Excel::download(new ReportExport($from_date,$to_date,$excel_name, $date_type), 'itemWise_report.xlsx'); } if($excel_name == 5) { return Excel::download(new ReportExport($from_date,$to_date,$excel_name, $date_type), 'powise_mrn_report.xlsx'); } if($excel_name == 6) { return Excel::download(new ReportExport($from_date,$to_date,$excel_name, $date_type), 'itemwise_mrn_report.xlsx'); } } public function reportList() { return view('dashboard.report.report-list'); } public function getReportList(Request $request) { $excel_name = $request->excel_name; if($excel_name == 1) { return Excel::download(new ReportListExport($excel_name), 'Vendor_list.xlsx'); } else if($excel_name == 2) { return Excel::download(new ReportListExport($excel_name), 'Customer_list.xlsx'); } else if($excel_name == 3) { return Excel::download(new ReportListExport($excel_name), 'Item_list.xlsx'); } } public function getCustomizeReport(Request $request) { $data = array(); $data['categories'] = DB::table('category')->where('is_active', 1)->get(); $data['items'] = DB::table('items')->where('is_active', 1)->get(); $data['departments'] = DB::table('department')->get(); $data['business_units'] = DB::table('business_units')->where('is_active', 1)->get(); $data['customers'] = DB::table('customers')->where('is_active', 1)->get(); $data['circles'] = DB::table('circles')->where('is_active', 1)->get(); $data['vendors'] = DB::table('vendors')->where('is_active', 1)->get(); $data['old_category'] = array(); $data['old_description'] = array(); $data['old_business_unit'] = array(); $data['old_customer'] = array(); $data['old_circle'] = array(); $data['old_vendor'] = array(); $data['old_department'] = array(); $data['to_date'] = ''; $data['from_date'] = ''; if($request->isMethod('POST')) { $validator = \Validator::make($request->all(), array( 'from_date' => 'required', 'to_date' => 'required', ) ); if($validator->fails()) { return back()->withErrors($validator); } else { $from_date = $request->from_date; $to_date = $request->to_date; $query = \App\PurchaseOrderItem::query(); $query->leftjoin('purchase_orders as po', 'po.id', 'purchase_order_items.po_id') ->leftjoin('purchase_requests as pr', 'pr.id', 'purchase_order_items.pr_id') ->leftjoin('vendors', 'vendors.id', 'po.vendor_id') ->leftjoin('business_units as bu', 'bu.id', 'po.business_unit') ->leftjoin('department as d', 'd.id', 'pr.department') ->leftjoin('items', 'items.code', 'purchase_order_items.item_code') ->leftjoin('customers', 'customers.id', 'pr.customer') ->leftjoin('category', 'category.id', 'items.category') ->leftjoin('circles', 'circles.id', 'po.circle'); if($request->categories != null) { $data['old_category'] = $request->categories; $query->whereIn('items.category', $request->categories); } if($request->items_description != null){ $data['old_description'] = $request->items_description; $query->whereIn('items.id', $request->items_description); } if($request->business_unit != null){ $data['old_business_unit'] = $request->business_unit; $query->whereIn('po.business_unit', $request->business_unit); } if($request->customer != null) { $data['old_customer'] = $request->customer; $query->whereIn('pr.customer', $request->customer); } if($request->circle != null) { $data['old_circle'] = $request->circle; $query->whereIn('po.circle', $request->circle); } if($request->vendor != null) { $data['old_vendor'] = $request->vendor; $query->whereIn('po.vendor_id', $request->vendor); } if($request->department != null) { $data['old_department'] = $request->department; $query->whereIn('pr.department', $request->department); } if($request->from_date != null && $request->to_date != null) { $data['from_date'] = $request->from_date; $data['to_date'] = $request->to_date; $query->whereBetween(\DB::raw('date(po.created_at)'), [$request->from_date, $request->to_date]); } $data['report_data'] = $query->select('po.po_number','po.po_created_by', DB::raw('date(po.po_date) as po_date'), 'purchase_order_items.qty','purchase_order_items.rate', 'purchase_order_items.item_code', 'purchase_order_items.make', 'purchase_order_items.specification', 'pr.pr_number', DB::raw('date(pr_date) as pr_date'), 'bu.name as business_name', 'items.description', 'customers.name as customer_name', 'category.name as category_name', 'd.name as department_name', 'circles.name as circle_name', 'vendors.vendor_name', DB::raw('purchase_order_items.rate*purchase_order_items.qty as basic_amount'), DB::raw('(purchase_order_items.rate*purchase_order_items.qty*items.gst)/100 as tax_amount'), 'items.gst', DB::raw('purchase_order_items.qty*purchase_order_items.rate + (purchase_order_items.rate*purchase_order_items.qty*items.gst)/100 as total_amount'))->get(); } } return view('dashboard.report.customize-report', $data); } }