88use App \Repository \SelfServiceAvailableFromItemRepository ;
99use App \Repository \SystemRepository ;
1010use Doctrine \ORM \EntityManagerInterface ;
11+ use Symfony \Component \Console \Helper \ProgressBar ;
1112
1213class SystemImporter extends BaseImporter
1314{
@@ -21,7 +22,7 @@ public function __construct(
2122 parent ::__construct ($ reportRepository , $ systemRepository , $ groupRepository , $ entityManager );
2223 }
2324
24- public function import (string $ src ): void
25+ public function import (string $ src, ? ProgressBar $ progressBar = null ): void
2526 {
2627 $ systemURL = getenv ('SYSTEM_URL ' );
2728
@@ -33,6 +34,8 @@ public function import(string $src): void
3334 return ;
3435 }
3536
37+ $ progressBar ?->setMaxSteps(\count ($ entries ));
38+
3639 // List of ids from Systemoversigten.
3740 $ sysInternalIds = [];
3841
@@ -137,10 +140,14 @@ public function import(string $src): void
137140 $ system ->setSysOwnerSub ($ subGroupName );
138141 }
139142 }
143+
144+ $ progressBar ?->advance();
140145 }
141146
142147 // Archive systems that no longer exist in Systemoversigten.
143148
149+ $ progressBar ?->setMessage('Starting archiving ... ' );
150+
144151 $ this ->systemRepository ->createQueryBuilder ('e ' )
145152 ->update ()
146153 ->set ('e.archivedAt ' , ':now ' )
@@ -152,6 +159,10 @@ public function import(string $src): void
152159 ->execute ()
153160 ;
154161
162+ $ progressBar ?->setMessage('Flushing ... ' );
163+
155164 $ this ->entityManager ->flush ();
165+
166+ $ progressBar ?->finish();
156167 }
157168}
0 commit comments