Przeglądaj źródła

fix infinite loop

ifah
root 5 lat temu
rodzic
commit
b064dc21e4

+ 21
- 6
app/Http/Controllers/CustomerService/CustomerController.php Wyświetl plik

@@ -30,6 +30,11 @@ class CustomerController extends Controller
}

function createWorkID($limit){
$number = WorkOrder::select('id','wo')->orderBy('wo','DESC')->first();
$numberOnly = str_replace('WO-','',$number->wo);
$numberOnly++;
return $numberOnly;

$allowedNumbers = range(0, 9);
shuffle($allowedNumbers);
$digits = array_rand($allowedNumbers, $limit);
@@ -102,9 +107,15 @@ class CustomerController extends Controller
$q->where('building_name', $building)->get();
}],'PackageDetail','WorkOrder')->where('type_service',$type)->where('company_id',$dealer)->orderBy('created_at', 'desc')->get();
}
if(!empty($form)){
info('not empty form');
foreach ($form as $key => $f) {
info('loop');
info($key);
info($f);
if(empty($f->WorkOrder)){
info('empty work order');
$i++;

$n1 = '';
@@ -124,20 +135,22 @@ class CustomerController extends Controller
}else{
$labelD = "";
}
info('entry not empty subscriber');
if(!empty($f->Subscriber)){
info('not empty subscriber');
if($f->Subscriber->street != ''){
$street = $f->Subscriber->street;
}

$wo = '';
if($f->status_email == 'verified'){
info('status email verified');
$work_order = '';
if($f->type_application == 'R'){
info('type application R');
do {
$work_order = 'WO-'.$this->createWorkID(4);
} while (WorkOrder::where("wo", "=", $work_order)->first() instanceof WorkOrder);

$wo = $work_order.'/'.$f->Subscriber->subscriber_id;
@@ -149,14 +162,16 @@ class CustomerController extends Controller
}

}else if($f->type_application == 'B'){
info('type application B');
do {
info('init loop');
$work_order = 'WO-'.$this->createWorkID(4);
} while (WorkOrder::where("wo", "=", $work_order)->first() instanceof WorkOrder);
info('exit loop');
$wo = $work_order.'/'.$f->Subscriber->subscriber_id;
$cov = Coverage::where('building_name',$f->Subscriber->building_name)->where('Type','B')->first();
if(!empty($cov)){
info('not empty coverage');
if($cov->status_building == 'non prelaid'){
$wo = 'Non/'.$work_order.'/'.$f->Subscriber->subscriber_id;
}
@@ -202,7 +217,7 @@ class CustomerController extends Controller
}else if($f->PackageDetail->voice_fee == ''){
$nP = '-';
}
info('before array push');
array_push($nested_data, array(
'formT' => $n1.$i.$f->type_application,
'type' => $f->type_service,

Ładowanie…
Anuluj
Zapisz