Agent::all() ]); } public function setAgentId(Request $request, Agent $agent) { $agent->setBitrixId($request->id); return back()->withSuccess('ID агента обновлен'); } public function syncDeals(Agent $agent) { $url = 'https://b24alfa.pro/channels/lk/getDealsOfContact?id=' . $agent->bitrixId(); $data = file_get_contents($url); $deals = json_decode($data, true); foreach ($deals as $deal) { $client = false; //Загрузка контактов if ($deal['contacts'][0]['phone']) { $client = User::createOrFirst( ['phone' => $deal['contacts'][0]['phone']], [ 'name' => $deal['contacts'][0]['name'], 'phone' => $deal['contacts'][0]['phone'] ] ); } //Загрузка сделок if (BitrixId::where('bx_id', $deal['deal']['deal_id'])->count() == 0) { $dealItem = Deal::create([ 'client_id' => $client->id, 'complex_id' => 1, 'agent_id' => $agent->id, 'status' => DealStatus::UNIQUE, ]); $dealItem->setBitrixId($deal['deal']['deal_id']); } } } }