| Current Path : /home/users/unlimited/www/admin.priyotama.com/app/Services/ |
| Current File : /home/users/unlimited/www/admin.priyotama.com/app/Services/DeliveryManService.php |
<?php
namespace App\Services;
use App\CentralLogics\Helpers;
use App\Traits\FileManagerTrait;
use Illuminate\Support\Facades\Storage;
use PhpParser\Node\Expr\Cast\Object_;
class DeliveryManService
{
use FileManagerTrait;
public function getAddData(Object $request): array
{
if ($request->has('image')) {
$imageName = $this->upload('delivery-man/', 'png', $request->file('image'));
} else {
$imageName = 'def.png';
}
$identityImageNames = [];
if (!empty($request->file('identity_image'))) {
foreach ($request->identity_image as $img) {
$identityImage = $this->upload('delivery-man/', 'png', $img);
array_push($identityImageNames, ['img'=>$identityImage, 'storage'=> Helpers::getDisk()]);
}
$identityImage = json_encode($identityImageNames);
} else {
$identityImage = json_encode([]);
}
return [
'f_name' => $request->f_name,
'l_name' => $request->l_name,
'email' => $request->email,
'phone' => $request->phone,
'identity_number' => $request->identity_number,
'identity_type' => $request->identity_type,
'vehicle_id' => $request->vehicle_id,
'zone_id' => $request->zone_id,
'identity_image' => $identityImage,
'image' => $imageName,
'active' => 0,
'earning' => $request->earning,
'password' => bcrypt($request->password),
];
}
public function getUpdateData(Object $request, Object $deliveryMan): array
{
if ($request->has('image')) {
$imageName = $this->updateAndUpload('delivery-man/', $deliveryMan->image, 'png', $request->file('image'));
} else {
$imageName = $deliveryMan['image'];
}
if ($request->has('identity_image')){
foreach (json_decode($deliveryMan['identity_image'], true) as $img) {
Helpers::check_and_delete('delivery-man/' , $img);
}
$imgKeeper = [];
foreach ($request->identity_image as $img) {
$identityImage = $this->upload('delivery-man/', 'png', $img);
array_push($imgKeeper, ['img'=>$identityImage, 'storage'=> Helpers::getDisk()]);
}
$identityImage = json_encode($imgKeeper);
} else {
$identityImage = $deliveryMan['identity_image'];
}
return [
"f_name" => $request->f_name,
"l_name" => $request->l_name,
"email" => $request->email,
"phone" => $request->phone,
"identity_number" => $request->identity_number,
"vehicle_id" => $request->vehicle_id,
"identity_type" => $request->identity_type,
"zone_id" => $request->zone_id,
"identity_image" => $identityImage,
"image" => $imageName,
"earning" => $request->earning,
"password" => strlen($request->password)>1?bcrypt($request->password):$deliveryMan['password'],
"application_status" => in_array($deliveryMan['application_status'], ['pending','denied']) ? 'approved' : $deliveryMan['application_status'],
"status" => in_array($deliveryMan['application_status'], ['pending','denied']) ? 1 : $deliveryMan['status'],
];
}
}