|
...
|
...
|
@@ -77,7 +77,6 @@ class ProjectLogic extends BaseLogic |
|
|
|
public function getProjectInfo($id){
|
|
|
|
$info = $this->model->with(['payment', 'deploy_build', 'deploy_optimize', 'online_check', 'project_after','inquiry_filter_config','web_traffic_config'])->where(['id'=>$id])->first()->toArray();
|
|
|
|
$info['online_check']['name'] = (new Manage())->getName($info['online_check']['created_manage_id'] ?? 0);
|
|
|
|
$info['deploy_optimize']['minor_keywords'] = !empty($info['deploy_optimize']['minor_keywords']) ? json_decode($info['deploy_optimize']['minor_keywords']) : [];
|
|
|
|
$info['init_domain'] = $this->getInitDomain($info['serve_id'])['domain'];
|
|
|
|
if($info['extend_type'] != 0){
|
|
|
|
$info['type'] = $info['extend_type'];
|
|
...
|
...
|
@@ -99,12 +98,27 @@ class ProjectLogic extends BaseLogic |
|
|
|
if(isset($info['deploy_build']['other_project']) && !empty($info['deploy_build']['other_project'])){
|
|
|
|
$info['deploy_build']['other_project']= json_decode($info['deploy_build']['other_project']);
|
|
|
|
}
|
|
|
|
//获取小语种
|
|
|
|
$info['minor_languages'] = $this->getProjectMinorLanguages($id);
|
|
|
|
//升级项目采集完成时间
|
|
|
|
$info['collect_time'] = $info['is_upgrade'] ? UpdateLog::getProjectUpdate($id) : '';
|
|
|
|
return $this->success($info);
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @remark :获取当前项目的小语种配置
|
|
|
|
* @name :getProjectMinorLanguages
|
|
|
|
* @author :lyh
|
|
|
|
* @method :post
|
|
|
|
* @time :2024/6/18 11:05
|
|
|
|
*/
|
|
|
|
public function getProjectMinorLanguages($project_id){
|
|
|
|
$projectMinorLanguagesModel = new MinorLanguages();
|
|
|
|
$lists = $projectMinorLanguagesModel->list(['project_id'=>$project_id,'is_delete'=>0]);
|
|
|
|
return $this->success($lists);
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @remark :获取初始域名
|
|
|
|
* @name :getInitDomain
|
|
|
|
* @author :lyh
|
|
...
|
...
|
@@ -149,8 +163,11 @@ class ProjectLogic extends BaseLogic |
|
|
|
$this->saveProjectDeployOptimize($this->param['deploy_optimize']);
|
|
|
|
//保存售后信息
|
|
|
|
$this->saveProjectAfter($this->param['project_after']);
|
|
|
|
$this->saveMinorLanguages($this->param['deploy_optimize']['minor_languages'] ?? []);
|
|
|
|
//单独保存小语种配置
|
|
|
|
$this->saveMinorLanguages($this->param['minor_languages'] ?? [],$this->param['id']);
|
|
|
|
//同步图片文件
|
|
|
|
$this->syncImageFile($this->param['project_location'],$this->param['id']);
|
|
|
|
//同步信息表
|
|
|
|
(new SyncService())->projectAcceptAddress($this->param['id']);
|
|
|
|
}
|
|
|
|
// DB::commit();
|
|
...
|
...
|
@@ -161,6 +178,13 @@ class ProjectLogic extends BaseLogic |
|
|
|
return $this->success();
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @remark :危险项目同步图片与文件
|
|
|
|
* @name :syncImageFile
|
|
|
|
* @author :lyh
|
|
|
|
* @method :post
|
|
|
|
* @time :2024/6/18 10:51
|
|
|
|
*/
|
|
|
|
public function syncImageFile($location,$project_id){
|
|
|
|
if($location == 1){
|
|
|
|
CopyImageFileJob::dispatch(['project_id'=>$project_id]);
|
|
...
|
...
|
@@ -176,6 +200,8 @@ class ProjectLogic extends BaseLogic |
|
|
|
* @time :2023/8/30 12:14
|
|
|
|
*/
|
|
|
|
public function saveProject($param){
|
|
|
|
// unset($param['payment'],$param['deploy_build'],$param['deploy_optimize'],
|
|
|
|
// $param['online_check'],$param['project_after'],$param['inquiry_filter_config'],$param['minor_languages']);
|
|
|
|
if((($param['type'] == Project::TYPE_TWO) || ($param['type'] == Project::TYPE_THREE)) && empty($param['uptime'])){
|
|
|
|
$param['uptime'] = date('Y-m-d H:i:s');
|
|
|
|
}
|
|
...
|
...
|
@@ -207,8 +233,6 @@ class ProjectLogic extends BaseLogic |
|
|
|
}
|
|
|
|
$param['remain_day'] = $param['deploy_build']['service_duration'] - $param['finish_remain_day'];
|
|
|
|
$param['remain_day'] = ($param['remain_day'] > 0) ? $param['remain_day'] : 0;
|
|
|
|
unset($param['payment'],$param['deploy_build'],$param['deploy_optimize'],
|
|
|
|
$param['online_check'],$param['project_after'],$param['inquiry_filter_config'],$param['minor_language']);
|
|
|
|
//文件上传默认值
|
|
|
|
if($param['is_upload_manage']){
|
|
|
|
$param['upload_config'] = [
|
|
...
|
...
|
@@ -278,9 +302,7 @@ class ProjectLogic extends BaseLogic |
|
|
|
//更改域名
|
|
|
|
$this->editDomainStatus($deploy_optimize['domain'],$deploy_optimize['project_id']);
|
|
|
|
}
|
|
|
|
$deploy_optimize['minor_languages'] = Arr::a2s($deploy_optimize['minor_languages'] ?? []);
|
|
|
|
$deploy_optimize['g_top_plan'] = Arr::a2s($deploy_optimize['g_top_plan'] ?? []);
|
|
|
|
$deploy_optimize['minor_keywords'] = Arr::a2s(!empty($deploy_optimize['minor_keywords']) ? $deploy_optimize['minor_keywords'] : []);
|
|
|
|
$deploy_optimize['special'] = !empty($deploy_optimize['special']) ? ','.trim($deploy_optimize['special'],',').',' : '';
|
|
|
|
//是否更新了api_no
|
|
|
|
$api_no = DeployOptimize::where('id', $deploy_optimize['id'])->value('api_no');
|
|
...
|
...
|
@@ -324,30 +346,41 @@ class ProjectLogic extends BaseLogic |
|
|
|
* @method :post
|
|
|
|
* @time :2023/8/30 13:57
|
|
|
|
*/
|
|
|
|
protected function saveMinorLanguages($minor_language){
|
|
|
|
protected function saveMinorLanguages($minor_language,$project_id){
|
|
|
|
$data = [];
|
|
|
|
//查询数据是否存在
|
|
|
|
$languageModel = new MinorLanguages();
|
|
|
|
$languageModel->del(['project_id'=>$this->param['id']]);
|
|
|
|
if(!empty($minor_language)){
|
|
|
|
$webLanguageModel = new WebLanguage();
|
|
|
|
$result = [];
|
|
|
|
foreach ($minor_language as $k => $v){
|
|
|
|
foreach ($minor_language as $v){
|
|
|
|
if(!empty($v['lang'])){
|
|
|
|
$zh = $webLanguageModel->read(['short'=>$v['lang']],['chinese']);
|
|
|
|
if(empty($zh)){
|
|
|
|
if($zh === false){
|
|
|
|
continue;
|
|
|
|
}
|
|
|
|
//获取小语种达标天数
|
|
|
|
$result['language'] = $zh['chinese'];
|
|
|
|
$result['lang'] = $v['lang'];
|
|
|
|
$result['created_at'] = date('Y-m-d H:i:s');
|
|
|
|
$result['updated_at'] = date('Y-m-d H:i:s');
|
|
|
|
$result['project_id'] = $this->param['id'];
|
|
|
|
$result['service_day'] = $v['service_day'];
|
|
|
|
$result['type'] = $v['type'];
|
|
|
|
$result['keywords'] = $v['keywords'];
|
|
|
|
$data[] = $result;
|
|
|
|
$info = $languageModel->read(['lang'=>$v['lang'],'project_id'=>$project_id]);
|
|
|
|
if($info === false){
|
|
|
|
//获取小语种达标天数
|
|
|
|
$result['language'] = $zh['chinese'];
|
|
|
|
$result['lang'] = $v['lang'];
|
|
|
|
$result['created_at'] = date('Y-m-d H:i:s');
|
|
|
|
$result['updated_at'] = date('Y-m-d H:i:s');
|
|
|
|
$result['project_id'] = $project_id;
|
|
|
|
$result['service_day'] = $v['service_day'] ?? 50;
|
|
|
|
$result['type'] = $v['type'] ?? 0;
|
|
|
|
$result['keywords'] = $v['keywords'] ?? 50;
|
|
|
|
$result['minor_keywords'] = $v['minor_keywords'] ?? '';
|
|
|
|
$data[] = $result;
|
|
|
|
}else{
|
|
|
|
$editParam = [
|
|
|
|
'service_day'=>$v['service_day'],
|
|
|
|
'type'=>$v['type'],
|
|
|
|
'keywords'=>$v['keywords'],
|
|
|
|
'minor_keywords'=>$v['minor_keywords'] ?? '',
|
|
|
|
'is_delete'=>0
|
|
|
|
];
|
|
|
|
$languageModel->edit($editParam,['id'=>$info['id']]);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if(!empty($data)){
|
|
...
|
...
|
@@ -358,6 +391,18 @@ class ProjectLogic extends BaseLogic |
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @remark :删除小语种(主键id)
|
|
|
|
* @name :deleteMinorLanguages
|
|
|
|
* @author :lyh
|
|
|
|
* @method :post
|
|
|
|
* @time :2024/6/18 11:32
|
|
|
|
*/
|
|
|
|
public function deleteMinorLanguages(){
|
|
|
|
$languageModel = new MinorLanguages();
|
|
|
|
return $languageModel->edit(['is_delete'=>1],['id'=>$this->param['id']]);
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @remark :创建初始数据
|
|
|
|
* @name :createProjectData
|
|
|
|
* @author :lyh
|
...
|
...
|
|