uppercese category qoshildi

This commit is contained in:
2026-04-06 20:23:17 +05:00
parent 551dcb390c
commit 4d0f9b6309
27 changed files with 236 additions and 102 deletions

View File

@@ -5,6 +5,7 @@ namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
use App\Http\Controllers\QrController;
use setasign\Fpdi\Fpdi;
class AutoController extends Controller
{
@@ -106,7 +107,7 @@ class AutoController extends Controller
'tech_passport' => $request->tech_passport,
'tech_given_date' => $request->tech_given_date,
'tech_given_whom' => $request->tech_given_whom,
'cost' => $request->cost ?? 0,
'cost' => (int)str_replace(',', '', $request->cost ?? 0),
'note' => $request->note,
'created_at' => $request->created_at ?? now(),
'updated_at' => now(),
@@ -157,7 +158,7 @@ class AutoController extends Controller
'tech_passport' => $request->tech_passport,
'tech_given_date' => $request->tech_given_date,
'tech_given_whom' => $request->tech_given_whom,
'cost' => $request->cost ?? 0,
'cost' => (int)str_replace(',', '', $request->cost ?? 0),
'note' => $request->note,
'created_at' => $request->created_at,
'updated_at' => now(),
@@ -214,7 +215,14 @@ class AutoController extends Controller
$members = DB::table('order_members as om')
->leftJoin('users as u', 'u.id', '=', 'om.user_id')
->select('om.*', 'u.name', 'u.avatar', 'u.phone', 'u.role')
->where('om.order_id', $order->id ?? 0)->where('om.order_type', 'auto_')->get();
->where('om.order_id', $order->id ?? 0)->where('om.order_type', 'auto_')->get()
->map(function ($member) {
$member->started = DB::table('order_members')->where('user_id', $member->user_id)->count();
$member->finished = 0; // Defaulting for now
$member->approved = 0;
$member->rejected = 0;
return $member;
});
$appraisers = DB::table('users')->whereRaw('LOWER(role) = ?', ['appraiser'])->where('status', 'active')->get();
return view('auto.show-team', compact('order', 'members', 'appraisers'));
}
@@ -240,4 +248,56 @@ class AutoController extends Controller
{
return redirect()->route('auto.index');
}
public function generatePdf($id)
{
$order = DB::table('auto_orders as o')
->selectRaw('o.*, p.uz as purpose, c.uz as category, CONCAT_WS(\' \', o.owner_last_name, o.owner_first_name, o.owner_patronymic) as "ownerName"')
->leftJoin('purposes as p', 'p.id', '=', 'o.purpose_id')
->leftJoin('concerns as c', 'c.id', '=', 'o.car_category')
->where('o.id', $id)
->first();
if (!$order) {
abort(404);
}
$pdf = new Fpdi();
$pdf->AddPage();
// Add Title
$pdf->SetFont('Arial', 'B', 16);
$pdf->Cell(0, 10, 'BAXOLASH XULOSASI (AVTO)', 0, 1, 'C');
$pdf->Ln(10);
// Add Details
$pdf->SetFont('Arial', '', 12);
$fields = [
'Tartib raqami' => $order->number,
'Sana' => date('d.m.Y', strtotime($order->created_at)),
'Maqsadi' => $order->purpose,
'Kategoriya' => $order->category,
'Markasi' => $order->car_mark,
'Davlat raqami' => $order->car_number,
'Egasi' => $order->ownerName,
'Ishlab chiqarilgan yili' => $order->made_date,
'Baholangan summa' => number_format($order->object_price ?: 0, 0, '.', ' ') . ' UZS',
];
foreach ($fields as $label => $value) {
$pdf->SetFont('Arial', 'B', 12);
$pdf->Cell(60, 10, $label . ':', 0, 0);
$pdf->SetFont('Arial', '', 12);
$pdf->Cell(0, 10, $value ?: '-', 0, 1);
}
$pdf->Ln(20);
$pdf->SetFont('Arial', 'I', 10);
$pdf->Cell(0, 10, 'Ushbu hujjat tizim tomonidan avtomatik generatsiya qilindi.', 0, 1, 'C');
return response($pdf->Output('S'), 200)
->header('Content-Type', 'application/pdf')
->header('Content-Disposition', 'attachment; filename="Conclusion_'.$order->number.'.pdf"');
}
}