14
14
use Kanvas \Companies \Models \Companies ;
15
15
use Kanvas \Connectors \CMLink \Enums \PlanTypeEnum ;
16
16
use Kanvas \Connectors \CMLink \Services \CustomerService ;
17
- use Kanvas \Connectors \CMLink \Services \OrderService as ServicesOrderService ;
18
17
use Kanvas \Connectors \EasyActivation \Services \OrderService ;
19
18
use Kanvas \Connectors \ESim \DataTransferObject \ESimStatus ;
20
19
use Kanvas \Connectors \ESim \Enums \ConfigurationEnum ;
@@ -225,6 +224,7 @@ private function formatCmLinkResponse(Message $message, array $response, Custome
225
224
}
226
225
}
227
226
$ activePlan = $ plan ;
227
+
228
228
break ;
229
229
}
230
230
}
@@ -234,6 +234,7 @@ private function formatCmLinkResponse(Message $message, array $response, Custome
234
234
foreach ($ userPlans ['userDataBundles ' ] as $ plan ) {
235
235
if ($ plan ['status ' ] == 1 ) {
236
236
$ activePlan = $ plan ;
237
+
237
238
break ;
238
239
}
239
240
}
@@ -242,7 +243,9 @@ private function formatCmLinkResponse(Message $message, array $response, Custome
242
243
243
244
$ installedDate = $ response ['installTime ' ] ?? (! empty ($ message ->message ['order ' ]['created_at ' ]) ? $ message ->message ['order ' ]['created_at ' ] : now ()->format ('Y-m-d H:i:s ' ));
244
245
$ status = strtolower ($ response ['state ' ]);
245
- $ isActive = IccidStatusEnum::getStatus ($ status ) == 'active ' ;
246
+
247
+ $ isActive = isset ($ activePlan ['status ' ]) ? IccidStatusEnum::getStatusById ($ activePlan ['status ' ]) == 'active ' : IccidStatusEnum::getStatus ($ status ) == 'active ' ;
248
+ //$isActive = IccidStatusEnum::getStatus($status) == 'active';
246
249
247
250
$ activationDate = null ;
248
251
if ($ iccid && $ isActive && $ activePlan ) {
@@ -324,14 +327,15 @@ private function formatCmLinkResponse(Message $message, array $response, Custome
324
327
$ message ->setPrivate ();
325
328
}
326
329
330
+ $ bundleStatus = isset ($ activePlan ) ? IccidStatusEnum::getStatusById ($ activePlan ['status ' ]) : IccidStatusEnum::getStatus (strtolower ($ response ['state ' ]));
327
331
$ esimStatus = new ESimStatus (
328
332
id: $ response ['activationCode ' ],
329
333
callTypeGroup: 'data ' ,
330
334
initialQuantity: $ totalBytesData ,
331
335
remainingQuantity: $ remainingData ,
332
336
assignmentDateTime: $ installedDate ,
333
337
assignmentReference: $ response ['activationCode ' ],
334
- bundleState: IccidStatusEnum:: getStatus ( strtolower ( $ response [ ' state ' ])) ,
338
+ bundleState: $ bundleStatus ,
335
339
unlimited: $ variant ->getAttributeBySlug ('variant-type ' )?->value === PlanTypeEnum::UNLIMITED ->value ,
336
340
expirationDate: $ expirationDate ,
337
341
imei: $ message ->message ['data ' ]['imei_number ' ] ?? null ,
@@ -343,7 +347,6 @@ private function formatCmLinkResponse(Message $message, array $response, Custome
343
347
);
344
348
345
349
$ esimStatusArray = $ esimStatus ->toArray ();
346
-
347
350
// Check and send notifications if needed
348
351
$ this ->checkAndSendNotifications ($ message , $ esimStatusArray , $ isValidState );
349
352
0 commit comments