|
...
|
...
|
@@ -7,6 +7,9 @@ use App\Helper\Arr; |
|
|
|
use App\Helper\FormGlobalsoApi;
|
|
|
|
use App\Http\Logic\Aside\BaseLogic;
|
|
|
|
use App\Http\Logic\Aside\Manage\ManageLogic;
|
|
|
|
use App\Models\Channel\Channel;
|
|
|
|
use App\Models\Channel\User;
|
|
|
|
use App\Models\Channel\Zone;
|
|
|
|
use App\Models\City;
|
|
|
|
use App\Models\InquirySet;
|
|
|
|
use App\Models\Project\DeployBuild;
|
|
...
|
...
|
@@ -38,7 +41,7 @@ class ProjectLogic extends BaseLogic |
|
|
|
$item = [
|
|
|
|
'id' => $item['id'],
|
|
|
|
'title' => $item['title'],
|
|
|
|
'channel' => ($item['channel']['channel']??'') . ' - ' . ($item['channel']['saler']??''),
|
|
|
|
'channel' => Channel::getChannelText($item['channel']['user_id'] ?? 0),
|
|
|
|
'key' => $item['deploy_build']['keyword_num'] ?? 0,
|
|
|
|
'day' => $item['deploy_build']['service_duration'] ?? 0,
|
|
|
|
'amount' => $item['payment']['amount'] ?? 0,
|
|
...
|
...
|
@@ -78,6 +81,7 @@ class ProjectLogic extends BaseLogic |
|
|
|
if(!empty($param['payment']['amount'])) unset($param['payment']['amount']);
|
|
|
|
if(!empty($param['deploy_build']['test_domain'])) unset($param['deploy_build']['test_domain']);
|
|
|
|
if(!empty($param['deploy_build']['plan'])) unset($param['deploy_build']['plan']);
|
|
|
|
if(!empty($param['deploy_optimize']['api_no'])) unset($param['deploy_optimize']['api_no']);
|
|
|
|
$res = parent::save($param);
|
|
|
|
$param['id'] = $res['id'];
|
|
|
|
$this->savePayment($param);
|
|
...
|
...
|
@@ -105,7 +109,7 @@ class ProjectLogic extends BaseLogic |
|
|
|
$data = $param['payment'];
|
|
|
|
$data['project_id'] = $param['id'];
|
|
|
|
$data['id'] = Payment::where('project_id', $param['id'])->value('id');
|
|
|
|
Arr::forget($data, ['amount']);
|
|
|
|
// Arr::forget($data, ['amount']);
|
|
|
|
return (new PaymentLogic)->save($data);
|
|
|
|
}
|
|
|
|
|
|
...
|
...
|
@@ -121,7 +125,7 @@ class ProjectLogic extends BaseLogic |
|
|
|
$data = $param['deploy_build'];
|
|
|
|
$data['project_id'] = $param['id'];
|
|
|
|
$data['id'] = DeployBuild::where('project_id', $param['id'])->value('id');
|
|
|
|
Arr::forget($data, ['test_domain', 'plan']);
|
|
|
|
// Arr::forget($data, ['test_domain', 'plan']);
|
|
|
|
return (new DeployBuildLogic)->save($data);
|
|
|
|
}
|
|
|
|
|
|
...
|
...
|
@@ -137,6 +141,7 @@ class ProjectLogic extends BaseLogic |
|
|
|
$data = $param['deploy_optimize'];
|
|
|
|
$data['project_id'] = $param['id'];
|
|
|
|
$data['id'] = DeployOptimize::where('project_id', $param['id'])->value('id');
|
|
|
|
// Arr::forget($data, ['api_no']);
|
|
|
|
return (new DeployOptimizeLogic)->save($data);
|
|
|
|
}
|
|
|
|
|
|
...
|
...
|
@@ -191,4 +196,56 @@ class ProjectLogic extends BaseLogic |
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public function channelSource($param){
|
|
|
|
switch ($param['type']){
|
|
|
|
case 1:
|
|
|
|
return Zone::pluck('title', 'id')->toArray();
|
|
|
|
case 2:
|
|
|
|
return Channel::where('zone_id', $param['zone_id']??0)->pluck('alias', 'id')->toArray();
|
|
|
|
case 3:
|
|
|
|
return User::where('channel_id', $param['channel_id']??0)->pluck('name', 'id')->toArray();
|
|
|
|
}
|
|
|
|
return [];
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public function sync($param){
|
|
|
|
$data = [
|
|
|
|
'title' => $param['company_name'],
|
|
|
|
'company' => $param['company_name'],
|
|
|
|
'lead_name' => $param['principal_name'],
|
|
|
|
'mobile' => $param['principal_mobile'],
|
|
|
|
'qq' => $param['customer_qq'],
|
|
|
|
'channel' => Channel::getProjectChannel($param['company_id'], $param['username_sales']),
|
|
|
|
'requirement' => $param['remark'],
|
|
|
|
'cooperate_date' => date('Y-m-d', $param['create_time']),
|
|
|
|
'deploy_build' => [
|
|
|
|
'service_duration' => $param['id'],
|
|
|
|
'plan' => [$param['plan_marketing']]
|
|
|
|
],
|
|
|
|
'deploy_optimize' => [
|
|
|
|
'api_no' => $param['id']
|
|
|
|
],
|
|
|
|
'payment' => [
|
|
|
|
'amount' => $param['plan_price'],
|
|
|
|
'contract' => $param['files'],
|
|
|
|
'bill' => $param['images'],
|
|
|
|
],
|
|
|
|
];
|
|
|
|
|
|
|
|
DB::beginTransaction();
|
|
|
|
try {
|
|
|
|
$res = parent::save($data);
|
|
|
|
$data['id'] = $res['id'];
|
|
|
|
$this->savePayment($data);
|
|
|
|
$this->saveDeployBuild($data);
|
|
|
|
$this->saveDeployOptimize($data);
|
|
|
|
|
|
|
|
DB::commit();
|
|
|
|
}catch (\Exception $e){
|
|
|
|
DB::rollBack();
|
|
|
|
errorLog('项目同步失败', $data, $e);
|
|
|
|
$this->fail('同步失败');
|
|
|
|
}
|
|
|
|
}
|
|
|
|
} |
...
|
...
|
|