public function store(Request $request)
{
$validatedData = $request->validate([
'first_name' => 'required|string|max:50',
'last_name' => 'required|string|max:50',
'scanner_id' => 'required|unique:drivers,scanner_id',
'email_address' => 'required|string|email|unique:drivers,email_address',
'phone_number' => 'required|numeric|digits:10',
'manager_id' => 'required',
'driver_role_id' => 'required',
'road_warrior_id' => 'required',
'road_warrior_password' => 'required',
'fuel_card' => 'required',
'license_plate_number' => 'required',
'van_type' => 'required',
'team_leader_id' => 'required_if:driver_role_id,1'
]);
$user = Auth::user();
$Admin_id=$user->id;
$objGeneral=new GeneralsController;
$strDate=date('Y-m-d h:i:s');
$driver_first_name = trim(request('first_name'));
$driver_last_name = trim(request('last_name'));
$driver_full_name = $driver_first_name.' '.$driver_last_name;
$password = strtolower($driver_first_name.'@123');
$phone_number = trim(request('phone_number'));
$scanner_id = trim(request('scanner_id'));
$email_address = trim(request('email_address'));
$manager_id = trim(request('manager_id'));
$driver_role_id = trim(request('driver_role_id'));
$road_warrior_id = trim(request('road_warrior_id'));
$road_warrior_password = trim(request('road_warrior_password'));
$fuel_card = trim(request('fuel_card'));
$license_plate_number = trim(request('license_plate_number'));
$van_type = trim(request('van_type'));
$Driver = new Driver;
$Driver->first_name=$driver_first_name;
$Driver->last_name=$driver_last_name;
$Driver->scanner_id=$scanner_id;
$Driver->email_address=$email_address;
$Driver->phone_number=$phone_number;
$Driver->manager_id=$manager_id;
$Driver->driver_role_id=$driver_role_id;
if($driver_role_id ==1){
$Driver->team_leader_id=trim(request('team_leader_id'));
}
$Driver->road_warrior_id=$road_warrior_id;
$Driver->road_warrior_password=$road_warrior_password;
$Driver->fuel_card=$fuel_card;
$Driver->password=Hash::make($password);
$Driver->license_plate=$license_plate_number;
$Driver->van_type=$van_type;
$Driver->created_by=$Admin_id;
if($Driver->save()){
$lastInsertedId= $Driver->id;
//Check Driver Number
$strDriverNumber=530000;
$driver_number=$strDriverNumber + $lastInsertedId;
//Update Driver Number
$updateDriver = Driver::find($lastInsertedId);
$updateDriver->driver_number=$driver_number;
$updateDriver->save();
$DriverRole=DriverRole::where('id', $driver_role_id)->first();
$DriverRoleName=trim($DriverRole->role_name);
//Admin Logs
$notes="Admin<b> {{ADMIN_USER_NAME}} </b>has been created <b>Driver</b> with Driver Name:-<b> {$driver_full_name} </b>and Phone Number:-<b> {$phone_number} </b> and Email Address :-<b> {$email_address} </b> and Scanner ID :-<b> {$scanner_id} </b> and Role :-<b> {$DriverRoleName} </b> and ID:- {$lastInsertedId} on Date:- {$strDate}";
$logs = $objGeneral->writeAdminLog('6','Add Driver',$notes);
return redirect()->route('driver.index')->with('success', 'Driver has been created successfully.');
}
else{
return redirect()->back()->withInput()->with('error', 'Error! Something went wrong while saving data.');
}
}
Comments
Post a Comment