|
...
|
...
|
@@ -11,9 +11,11 @@ use App\Jobs\CopyProjectJob; |
|
|
|
use App\Models\Com\NoticeLog;
|
|
|
|
use App\Models\Com\UpdateLog;
|
|
|
|
use App\Models\Devops\ServerConfig;
|
|
|
|
use App\Models\Inquiry\InquiryIP;
|
|
|
|
use App\Models\Project\InquiryFilterConfig;
|
|
|
|
use App\Models\Project\MinorLanguages;
|
|
|
|
use App\Models\Project\ProjectRenew;
|
|
|
|
use App\Models\Project\WebTrafficConfig;
|
|
|
|
use App\Models\Template\Setting;
|
|
|
|
use App\Models\User\ProjectMenu;
|
|
|
|
use App\Models\User\ProjectRole;
|
|
...
|
...
|
@@ -69,7 +71,7 @@ class ProjectLogic extends BaseLogic |
|
|
|
* @time :2023/7/28 17:11
|
|
|
|
*/
|
|
|
|
public function getProjectInfo($id){
|
|
|
|
$info = $this->model->with(['payment', 'deploy_build', 'deploy_optimize', 'online_check', 'project_after','inquiry_filter_config'])->where(['id'=>$id])->first()->toArray();
|
|
|
|
$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'];
|
|
...
|
...
|
@@ -785,4 +787,46 @@ class ProjectLogic extends BaseLogic |
|
|
|
return true;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 保存引流配置
|
|
|
|
* @param $config
|
|
|
|
* @return array
|
|
|
|
* @author zbj
|
|
|
|
* @date 2024/3/29
|
|
|
|
*/
|
|
|
|
public function saveWebTrafficConfig($config){
|
|
|
|
$config['main_countries'] = textareaToArr($config['main_countries']);
|
|
|
|
$config['filter_countries'] = textareaToArr($config['filter_countries']);
|
|
|
|
|
|
|
|
$ip_area = InquiryIP::getIpAreas();
|
|
|
|
|
|
|
|
foreach ($config['main_countries'] as $v) {
|
|
|
|
if (!in_array($v, $ip_area)) {
|
|
|
|
throw new AsideGlobalException(Code::SYSTEM_ERROR, '[' . $v . ']不存在,请检查后再次提交');
|
|
|
|
}
|
|
|
|
}
|
|
|
|
foreach ($config['filter_countries'] as $v) {
|
|
|
|
if (!in_array($v, $ip_area)) {
|
|
|
|
throw new AsideGlobalException(Code::SYSTEM_ERROR, '[' . $v . ']不存在,请检查后再次提交');
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
$config['main_countries'] = json_encode($config['main_countries']);
|
|
|
|
$config['filter_countries'] = json_encode($config['filter_countries']);
|
|
|
|
|
|
|
|
$model = WebTrafficConfig::where('project_id', $config['project_id'])->first();
|
|
|
|
if (!$model) {
|
|
|
|
$model = new WebTrafficConfig();
|
|
|
|
$model->add($config);
|
|
|
|
} else {
|
|
|
|
$model->edit($config, ['project_id' => $config['project_id']]);
|
|
|
|
}
|
|
|
|
|
|
|
|
Cache::forget(WebTrafficConfig::cacheKey($config['project_id']));
|
|
|
|
|
|
|
|
return $this->success();
|
|
|
|
}
|
|
|
|
|
|
|
|
} |
...
|
...
|
|