Пример #1
0
 public function states()
 {
     $api = new StateAPI();
     foreach (Location::states as $state => $state_name) {
         $request = $api->state($state)->then(function ($data) use($api) {
             foreach ($data as $d) {
                 if (!isset($d['state']) || !isset($d['chamber']) || !isset($d['district'])) {
                     continue;
                 }
                 $d = $api->format($d);
                 $division = 'ocd-division/country:us/state:' . $d['state'] . '/sld';
                 $division .= $d['chamber'] == 'upper' ? 'u' : 'l';
                 $division .= ':' . $d['district'];
                 echo "division: {$division} \n";
                 $rep = Representative::firstOrCreate(['division' => $division]);
                 $rep->load($d);
                 $rep->addSource('openstates');
                 $rep->save();
             }
         });
         $request->wait();
     }
 }