48 lines
1.7 KiB
PHP
48 lines
1.7 KiB
PHP
<?php
|
|
|
|
namespace Modules\Bitrix\Http\Controllers;
|
|
|
|
use App\Http\Controllers\Controller;
|
|
use Illuminate\Http\Request;
|
|
|
|
use App\Models\Deal\Deal;
|
|
use Modules\Contracts\Models\Contract;
|
|
use Modules\Contracts\Models\ContractStatus;
|
|
use App\Notifications\ContractUpdated;
|
|
class ContractUpdateController
|
|
{
|
|
public function __invoke(Deal $deal, Request $request)
|
|
{
|
|
$companyToken = $deal->agent->company->secret;
|
|
if ($request->token != $companyToken)
|
|
{
|
|
return false;
|
|
}
|
|
$status =
|
|
Contract::updateOrCreate(
|
|
['deal_id' => $deal->id],
|
|
[
|
|
'status' => constant(ContractStatus::class . "::" . $request->status),
|
|
'comment' => $request->comment,
|
|
'price' => $request->price,
|
|
'reward' => $request->reward,
|
|
'square' => $request->square,
|
|
'floor' => $request->floor,
|
|
'room' => $request->room,//Номер квартиры
|
|
'date' => $request->date,//дата ДДУ
|
|
'reg_date' => $request->reg_date,//Дата регистрации ДДУ
|
|
'payment_type' => $request->payment_type,//Вид оплаты
|
|
'plan7_id' => $request->plan7_id,
|
|
'base64_image' => $request->plan_image
|
|
]
|
|
);
|
|
$agent = $deal->agent;
|
|
/*if (!$deal->bitrixId)
|
|
{
|
|
$deal->bitrixId()->create(['bx_id' => $request->deal_id]);
|
|
}*/
|
|
|
|
$agent->user->notify(new ContractUpdated($deal->contract));
|
|
return true;
|
|
}
|
|
} |