File manager - Edit - /home/autoph/public_html/projects/aha-api/app/Http/Controllers/API/BatchUpload/ServiceUploadController.php
Back
<?php namespace App\Http\Controllers\API\BatchUpload; use DB; use App\Models\OldDB2\Customer; use App\Models\OldDB2\Brand; use App\Models\OldDB2\Model; use App\Models\OldDB2\Vehicle; use App\Models\OldDB2\Service; use App\Models\OldDB2\BatchUpload; use Illuminate\Http\Request; use Illuminate\Http\Response; use App\Http\Controllers\Controller; class ServiceUploadController extends Controller { public function index(Request $request) { $keyword = $request->input('keyword', ''); $perPage = $request->input('per_page',PHP_INT_MAX); $sortBy = $request->input('sortBy', ''); $sortType = $request->input('sortType', ''); $data = BatchUpload::where('database_type', 'service')->where(function ($query) use ($keyword) { // $keyword = str_replace(" ", "%", $keyword); // $query->where('name', 'like', '%' . $keyword . '%') // ->orWhere('code', 'like', '%' . $keyword . '%'); }); if (!empty($sortBy) && !empty($sortType)) { $data = $data->orderBy($sortBy, $sortType); } $data = $data->paginate($perPage); return response()->json($data); } public function store(Request $request) { DB::connection('old_db2')->beginTransaction(); try { $batchUpload = \App\Models\OldDB2\BatchUpload::create([ 'database_type' => 'service', 'file' => $request['filename'], 'storage' => $request['storage'], 'created_by' => $request['uploaded_by'], 'created_at' => $this->current_datetime, ]); foreach($request->service_data as $data) { $model = \App\Models\OldDB2\CarModel::where(['brand_id'=>$request['brand_id'], 'name' => trim($data['model'])])->first(); $modelVariant = \App\Models\OldDB2\CarModelVariant::where(['car_model_id' => $model ? $model->id : null, 'name' => trim($data['model_description'])])->first(); $vehicle = \App\Models\OldDB2\Vehicle::where('plate_number', $data['plate_no'])->first(); $model_id = 0; if($model && is_object($model)) { $model_id = $model->id; } $model_variant_id = 0; if($modelVariant && is_object($modelVariant)) { $model_variant_id = $modelVariant->id; } $vehicle_id = 0; if($vehicle && is_object($vehicle)) { $vehicle_id = $vehicle->id; } else { // dd($data['plate_no']); if(!empty($data['plate_no'])) { $vehicle = \App\Models\OldDB2\Vehicle::create([ 'brand_id' => $request['brand_id'], 'model_id' => $model_id, 'model_variant_description' => $model_variant_id, 'plate_number' => $data['plate_no'], 'conduction_sticker' => $data['conduction_sticker'] ?? '', 'upload_by' => $request['uploaded_by'] ?? 0, 'company_dealer_id' => $request['company_id'], 'modified_by' => $request['uploaded_by'], 'status' => 1, 'batch_upload_id' => $batchUpload ? $batchUpload->id : '', 'need_update' => $data['need_update'], 'update_remarks' => $data['update_remarks'] ]); $vehicle = $vehicle->id; } } $service = \App\Models\OldDb2\Service::create( [ 'batch_upload_id' => $batchUpload ? $batchUpload->id : '', 'vehicle_id' => $vehicle_id, 'notes' => $data['notes'], 'customer_id' => $data['customer_no'], 'ro_number' => $data['ro_number'], 'ro_date' => $data['start_date'], 'plate_number' => $data['plate_no'] ?? '', 'serial_number' => $data['serial_number'] ?? '', 'ro_total' => str_replace(',','', $data['ro_amount']), 'mileage' => $data['mileage'] ?? '', 'recommendation' => $data['recommendation'] ?? '', 'insurance_paid_account' => $data['insurance_paid_account'] ?? 0, 'conduction_sticker' => $data['conduction_sticker'] ?? '', 'start_date_of_service' => $data['start_date'] ?? '', 'end_date_of_service' => $data['end_date'] ?? '', 'service_advisor' => $data['service_advisor'] ?? '', 'company_dealer_id' => $request['dealership_id'], 'upload_by' => $request['uploaded_by'] ?? 0, 'status' => 1, 'brand_id' => $request['brand_id'] ?? 0, 'model_id' => $model_id, 'problem_cause' => $data['problem_cause'] ?? '', 'need_update' => $data['need_update'], 'update_remarks' => $data['update_remarks'] ] ); } DB::connection('old_db2')->commit(); return response()->json([ 'message' => 'Record Successfully added!', 'status' => 'success', ], 201); } catch (\Throwable $e) { DB::connection('old_db2')->rollBack(); return response()->json([ 'status' => false, 'message' => 'Unable to process request. Please try again.', 'data' => $e->getMessage() ], 422); } } public function update(Request $request, int $id) { $data = Company::find($id); if (!$data) { return response()->json(['messages' => 'No data found.'], 404); } DB::beginTransaction(); try { $data->fill($request->all()); $data->save(); $data->touch(); DB::commit(); return response()->json([ 'message' => 'Record Successfully updated!', 'status' => 'success', 'data' => $data, ]); } catch (\Throwable $e) { DB::rollback(); return response()->json([ 'status' => false, 'message' => 'Unable to process request. Please try again.', 'data' => $e->getMessage() ]); } } public function saveFile(Request $request) { try { if ($request->hasFile('file')) { // Save the file locally $folder = 'service_vehicle'; $path = $request->file('file')->store($folder); $storage = 'app/uploads/'; // Get the file path $filePath = storage_path($storage . $path); return response()->json([ 'message' => 'File Successfully saved!', 'status' => 'success', 'data' => ['storage' => $storage.$folder, 'filename' => str_replace($folder.'/','',$path)], ], 201); } } catch (\Throwable $e) { return response()->json([ 'status' => false, 'message' => 'Unable to process request. Please try again.', 'data' => $e->getMessage() ]); } } public function destroy(int $id) { $data = Company::find($id); if(!$data) { return response()->json(['message' => "Record not found!"], 404); } DB::beginTransaction(); $data->delete(); DB::commit(); return response()->json(['message' => 'Record Successfully deleted!']); } public function getCompanies() { $data = \App\Models\OldDB2\Company::where('status', 1)->get(); return response()->json($data); } }
| ver. 1.4 |
.
| PHP 8.1.32 | Generation time: 0 |
proxy
|
phpinfo
|
Settings