作者 赵彬吉
@@ -128,7 +128,8 @@ class AfterDayCount extends Command @@ -128,7 +128,8 @@ class AfterDayCount extends Command
128 $data = $projectModel->where('gl_project.extend_type',0) 128 $data = $projectModel->where('gl_project.extend_type',0)
129 ->where('gl_project.delete_status',0) 129 ->where('gl_project.delete_status',0)
130 ->where('gl_project.old_project_id',0) 130 ->where('gl_project.old_project_id',0)
131 - ->where('gl_project_deploy_optimize.start_date','<=',$date) 131 + ->where('gl_project_deploy_optimize.start_date','>=',$threeMonthsAgo.'-01')
  132 + ->where('gl_project_deploy_optimize.start_date','<=',$threeMonthsAgo.'-31')
132 ->where('gl_project.is_remain_today',1) 133 ->where('gl_project.is_remain_today',1)
133 ->whereIn('gl_project_deploy_optimize.optimist_mid',$idArr) 134 ->whereIn('gl_project_deploy_optimize.optimist_mid',$idArr)
134 ->whereIn('gl_project.type',[2,4,6]) 135 ->whereIn('gl_project.type',[2,4,6])
@@ -151,7 +151,7 @@ class DomainInfo extends Command @@ -151,7 +151,7 @@ class DomainInfo extends Command
151 $serverIpModel = new ServersIp(); 151 $serverIpModel = new ServersIp();
152 $domainCreateTaskModel = new DomainCreateTask(); 152 $domainCreateTaskModel = new DomainCreateTask();
153 $end_day = date('Y-m-d H:i:s', time() + 3 * 24 * 3600);//3天后到期 153 $end_day = date('Y-m-d H:i:s', time() + 3 * 24 * 3600);//3天后到期
154 - $list = $domainModel->where('status', '=', 1)->where('type', '=', 1)->where('certificate_end_time', '<', $end_day)->get()->toArray(); 154 + $list = $domainModel->where('status', '=', 1)->where('type', '!=', 2)->where('certificate_end_time', '<', $end_day)->get()->toArray();
155 foreach ($list as $v) { 155 foreach ($list as $v) {
156 $project_info = $projectModel->read(['id' => $v['project_id'], 'type' => ['!=', Project::TYPE_CLOSE]], ['serve_id', 'project_type']); 156 $project_info = $projectModel->read(['id' => $v['project_id'], 'type' => ['!=', Project::TYPE_CLOSE]], ['serve_id', 'project_type']);
157 if (!$project_info) { 157 if (!$project_info) {
@@ -204,7 +204,7 @@ class DomainInfo extends Command @@ -204,7 +204,7 @@ class DomainInfo extends Command
204 $serverIpModel = new ServersIp(); 204 $serverIpModel = new ServersIp();
205 $domainCreateTaskModel = new DomainCreateTask(); 205 $domainCreateTaskModel = new DomainCreateTask();
206 $end_day = date('Y-m-d H:i:s', time() + 3 * 24 * 3600);//3天后到期 206 $end_day = date('Y-m-d H:i:s', time() + 3 * 24 * 3600);//3天后到期
207 - $list = $domainModel->where('status', '=', 1)->where('amp_status', 1)->where('amp_type', '=', 1)->where('amp_certificate_end_time', '<', $end_day)->get()->toArray(); 207 + $list = $domainModel->where('status', '=', 1)->where('amp_status', 1)->where('amp_type', '!=', 2)->where('amp_certificate_end_time', '<', $end_day)->get()->toArray();
208 foreach ($list as $v) { 208 foreach ($list as $v) {
209 $domain_array = parse_url($v['domain']); 209 $domain_array = parse_url($v['domain']);
210 $host = $domain_array['host'] ?? $domain_array['path']; 210 $host = $domain_array['host'] ?? $domain_array['path'];
@@ -126,11 +126,12 @@ class RemainDay extends Command @@ -126,11 +126,12 @@ class RemainDay extends Command
126 }else{ 126 }else{
127 $seo_remain_day = $deploy_build['seo_service_duration']; 127 $seo_remain_day = $deploy_build['seo_service_duration'];
128 } 128 }
129 - if($seo_remain_day < 0){  
130 - $seo_remain_day = 0;  
131 - }  
132 - if($deploy_build['plan'] == 0 && $seo_remain_day == 0 && $deploy_build['seo_service_duration'] != 0){//只有白帽版本的项目且剩余服务时常未0,放入未续费中  
133 - $this->project->edit(['seo_remain_day'=>$seo_remain_day,'finish_remain_day'=>$compliance_day ?? 0,'extend_type'=>Project::TYPE_FIVE],['id'=>$item['id']]); 129 +// if($seo_remain_day < 0){
  130 +// $seo_remain_day = 0;
  131 +// }
  132 + if($deploy_build['plan'] == 0 && $seo_remain_day < 0 && $deploy_build['seo_service_duration'] != 0){//只有白帽版本的项目且剩余服务时常为0,放入未续费中
  133 +// $this->project->edit(['seo_remain_day'=>$seo_remain_day,'finish_remain_day'=>$compliance_day ?? 0,'extend_type'=>Project::TYPE_FIVE],['id'=>$item['id']]);
  134 + $this->project->edit(['seo_remain_day'=>$seo_remain_day,'finish_remain_day'=>$compliance_day ?? 0],['id'=>$item['id']]);
134 }else{ 135 }else{
135 //同时包括白帽版本+默认版本的项目 136 //同时包括白帽版本+默认版本的项目
136 $this->project->edit(['seo_remain_day'=>$seo_remain_day],['id'=>$item['id']]); 137 $this->project->edit(['seo_remain_day'=>$seo_remain_day],['id'=>$item['id']]);
@@ -174,10 +175,10 @@ class RemainDay extends Command @@ -174,10 +175,10 @@ class RemainDay extends Command
174 } 175 }
175 } 176 }
176 $extend_type = 0; 177 $extend_type = 0;
177 - if($remain_day < 0 && $deploy_build['service_duration'] != 0){  
178 - $remain_day = 0;  
179 - $extend_type = Project::TYPE_FIVE;  
180 - } 178 +// if($remain_day < 0 && $deploy_build['service_duration'] != 0){
  179 +// $remain_day = 0;
  180 +// $extend_type = Project::TYPE_FIVE;
  181 +// }
181 $this->project->edit(['remain_day'=>$remain_day,'extend_type'=>$extend_type,'finish_remain_day'=>$compliance_day ?? 0],['id'=>$item['id']]); 182 $this->project->edit(['remain_day'=>$remain_day,'extend_type'=>$extend_type,'finish_remain_day'=>$compliance_day ?? 0],['id'=>$item['id']]);
182 return true; 183 return true;
183 } 184 }
@@ -52,14 +52,55 @@ class LyhImportTest extends Command @@ -52,14 +52,55 @@ class LyhImportTest extends Command
52 * @time :2023/11/20 15:13 52 * @time :2023/11/20 15:13
53 */ 53 */
54 public function handle(){ 54 public function handle(){
55 - ProjectServer::useProject(2140); 55 + ProjectServer::useProject(3951);
56 echo date('Y-m-d H:i:s') . 'start' . PHP_EOL; 56 echo date('Y-m-d H:i:s') . 'start' . PHP_EOL;
57 - $this->import2140CustomModule('https://ecdn6.globalso.com/upload/p/2140/file/2025-05/daoru.csv',2140); 57 + $this->import2140CustomModule('https://ecdn6.globalso.com/upload/p/2140/file/2025-05/daoru.csv',3951);
58 DB::disconnect('custom_mysql'); 58 DB::disconnect('custom_mysql');
59 echo date('Y-m-d H:i:s') . 'end' . PHP_EOL; 59 echo date('Y-m-d H:i:s') . 'end' . PHP_EOL;
60 } 60 }
61 61
62 /** 62 /**
  63 + * @remark :3951项目导入产品
  64 + * @name :import3951Product
  65 + * @author :lyh
  66 + * @method :post
  67 + * @time :2025/5/24 11:32
  68 + */
  69 + public function import3951Product($url,$project_id){
  70 + $line_of_text = [];
  71 + $opts = [
  72 + 'http' => [
  73 + 'method' => 'GET',
  74 + 'header' => 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36 Edge/12.246'
  75 + ],
  76 + 'ssl' => [
  77 + 'verify_peer' => false,
  78 + 'verify_peer_name' => false
  79 + ]
  80 + ];
  81 + $file_handle = fopen($url, 'r', null, stream_context_create($opts));
  82 + while (!feof($file_handle)) {
  83 + $line_of_text[] = fgetcsv($file_handle, 0, ',');
  84 + }
  85 + fclose($file_handle);
  86 + $saveData = [];
  87 + foreach ($line_of_text as $k => $val){
  88 + if($k < 1){
  89 + continue;
  90 + }
  91 + if(empty($val[0])){
  92 + echo '跳过的名称:'.$val[0];
  93 + continue;
  94 + }
  95 + $saveData[] = [
  96 + 'title'=>$val[0],
  97 + 'thumb' => json_encode(['alt'=>'主图','url'=>'/upload/p/3951/image/',$val[2]],true),
  98 + 'gallery' => json_encode([['alt'=>'主图','url'=>'/upload/p/3951/image/',$val[2]]],true)
  99 + ];
  100 + }
  101 + }
  102 +
  103 + /**
63 * @remark :导入产品分类 104 * @remark :导入产品分类
64 * @name :productCategory 105 * @name :productCategory
65 * @author :lyh 106 * @author :lyh
@@ -15,6 +15,7 @@ use App\Models\Ai\AiBlog; @@ -15,6 +15,7 @@ use App\Models\Ai\AiBlog;
15 use App\Models\Ai\AiBlogAuthor; 15 use App\Models\Ai\AiBlogAuthor;
16 use App\Models\Com\NoticeLog; 16 use App\Models\Com\NoticeLog;
17 use App\Models\Com\V6WeeklyReport; 17 use App\Models\Com\V6WeeklyReport;
  18 +use App\Models\Product\Category;
18 use App\Models\Project\AiBlogTask; 19 use App\Models\Project\AiBlogTask;
19 use App\Models\Project\DeployBuild; 20 use App\Models\Project\DeployBuild;
20 use App\Models\Project\DeployOptimize; 21 use App\Models\Project\DeployOptimize;
@@ -23,6 +24,8 @@ use App\Models\Project\Project; @@ -23,6 +24,8 @@ use App\Models\Project\Project;
23 use App\Models\Project\ProjectAiSetting; 24 use App\Models\Project\ProjectAiSetting;
24 use App\Models\ProjectAssociation\ProjectAssociation; 25 use App\Models\ProjectAssociation\ProjectAssociation;
25 use App\Models\RouteMap\RouteMap; 26 use App\Models\RouteMap\RouteMap;
  27 +use App\Models\Template\BTemplateMain;
  28 +use App\Models\Template\TemplateTypeMain;
26 use App\Models\Visit\Visit; 29 use App\Models\Visit\Visit;
27 use App\Models\WebSetting\WebLanguage; 30 use App\Models\WebSetting\WebLanguage;
28 use App\Models\WebSetting\WebSetting; 31 use App\Models\WebSetting\WebSetting;
@@ -51,9 +54,38 @@ class lyhDemo extends Command @@ -51,9 +54,38 @@ class lyhDemo extends Command
51 protected $description = '更新路由'; 54 protected $description = '更新路由';
52 55
53 public function handle(){ 56 public function handle(){
54 - dd(111); 57 + return true;
  58 + }
  59 +
  60 + public function _actionTemplateMain(){
  61 + $data = [];
  62 + $projectModel = new Project();
  63 + $lists = $projectModel->list(['delete_status' => 0,'project_type'=>0,'extend_type'=>0,'type'=>['in',[2,3,4,6]]], 'id', ['id']);
  64 + foreach ($lists as $val){
  65 + echo date('Y-m-d H:i:s') . '开始--项目的id:'. $val['id'] . PHP_EOL;
  66 + ProjectServer::useProject($val['id']);
  67 + $bTemplateMainModel = new BTemplateMain();
  68 + $info = $bTemplateMainModel->read(['type'=>2,'is_list'=>1],['id']);
  69 + $categoryModel = new Category();
  70 + $count = $categoryModel->counts(['id'=>['>',0]]);
  71 + if(($info === false) && ($count > 0)){
  72 + $mainModel = new TemplateTypeMain();
  73 + $mainInfo = $mainModel->read(['type'=>2,'is_list'=>1,'is_custom'=>0]);
  74 + $main_html = $mainInfo['main_html'];
  75 + $main_css = "<style id='globalsojs-styles'></style>";
  76 + //写入一条初始数据
  77 + $bTemplateMainModel->addReturnId(['type'=>2,'is_list'=>1,'is_custom'=>0,'project_id'=>$val['id'],'main_html'=>$main_html,'main_css'=>$main_css]);
  78 + $data[] = $val['id'];
  79 + }
  80 + DB::disconnect('custom_mysql');
  81 + echo date('Y-m-d H:i:s') . '结束--项目的id:'. $val['id'] . PHP_EOL;
  82 + }
  83 + dd($data);
  84 + }
  85 +
  86 + public function _action_ai_blog(){
55 $projectModel = new Project(); 87 $projectModel = new Project();
56 - $lists = $projectModel->list(['delete_status' => 0,'extend_type'=>0,'type'=>['in',[1,2,3,4,6]]], 'id', ['id']); 88 + $lists = $projectModel->list(['delete_status' => 0,'extend_type'=>0,'type'=>['in',[2,3,4,6]]], 'id', ['id']);
57 foreach ($lists as $val) { 89 foreach ($lists as $val) {
58 $aiSettingInfo = $this->getSetting($val['id']); 90 $aiSettingInfo = $this->getSetting($val['id']);
59 if($aiSettingInfo === false){ 91 if($aiSettingInfo === false){
@@ -23,6 +23,7 @@ use App\Models\Project\DeployBuild; @@ -23,6 +23,7 @@ use App\Models\Project\DeployBuild;
23 use App\Models\Project\DeployOptimize; 23 use App\Models\Project\DeployOptimize;
24 use App\Models\Project\OnlineCheck; 24 use App\Models\Project\OnlineCheck;
25 use App\Models\Project\Project; 25 use App\Models\Project\Project;
  26 +use App\Models\Project\ProjectAiSetting;
26 use App\Models\Project\ProjectKeyword; 27 use App\Models\Project\ProjectKeyword;
27 use App\Models\RouteMap\RouteMap; 28 use App\Models\RouteMap\RouteMap;
28 use App\Models\User\User; 29 use App\Models\User\User;
@@ -538,4 +539,21 @@ class PrivateController extends BaseController @@ -538,4 +539,21 @@ class PrivateController extends BaseController
538 ]; 539 ];
539 return $this->success($result); 540 return $this->success($result);
540 } 541 }
  542 +
  543 + /**
  544 + * 获取项目信息,通过商户号
  545 + * @param Request $request
  546 + * @return false|string
  547 + */
  548 + public function getProjectByMchId(Request $request)
  549 + {
  550 + $mch_id = intval($request->input('mch_id'));
  551 + $project_setting = ProjectAiSetting::where(['mch_id' => $mch_id])->first();
  552 + if (empty($project_setting))
  553 + return $this->error('商户号未匹配到项目');
  554 + $domain = DomainInfo::where(['status' => 1, 'project_id' => $project_setting->project_id])->first();
  555 + if (empty($domain))
  556 + return $this->error('项目未匹配到域名');
  557 + return $this->success(['domain' => $domain->domain]);
  558 + }
541 } 559 }
@@ -38,6 +38,7 @@ class CheckListController extends BaseController @@ -38,6 +38,7 @@ class CheckListController extends BaseController
38 */ 38 */
39 public function lists(){ 39 public function lists(){
40 $this->map['status'] = 1; 40 $this->map['status'] = 1;
  41 + $this->map['type'] = $this->map['type'] ?? 1;
41 $field = ['id','status','sort','text','created_at']; 42 $field = ['id','status','sort','text','created_at'];
42 $data = $this->model->lists($this->map,$this->page,$this->row,'id',$field); 43 $data = $this->model->lists($this->map,$this->page,$this->row,'id',$field);
43 $this->response('success',Code::SUCCESS,$data); 44 $this->response('success',Code::SUCCESS,$data);
@@ -52,6 +53,7 @@ class CheckListController extends BaseController @@ -52,6 +53,7 @@ class CheckListController extends BaseController
52 */ 53 */
53 public function list(){ 54 public function list(){
54 $this->map['status'] = 1; 55 $this->map['status'] = 1;
  56 + $this->map['type'] = $this->map['type'] ?? 1;
55 $field = ['id','status','sort','text','created_at']; 57 $field = ['id','status','sort','text','created_at'];
56 $data = $this->model->list($this->map,'id',$field); 58 $data = $this->model->list($this->map,'id',$field);
57 $this->response('success',Code::SUCCESS,$data); 59 $this->response('success',Code::SUCCESS,$data);
@@ -11,6 +11,7 @@ namespace App\Http\Controllers\Aside\Optimize; @@ -11,6 +11,7 @@ namespace App\Http\Controllers\Aside\Optimize;
11 11
12 use App\Enums\Common\Code; 12 use App\Enums\Common\Code;
13 use App\Http\Controllers\Aside\BaseController; 13 use App\Http\Controllers\Aside\BaseController;
  14 +use App\Models\Project\OptimizeCheckList;
14 use App\Models\Project\OptimizeCheckLog; 15 use App\Models\Project\OptimizeCheckLog;
15 use Illuminate\Http\Request; 16 use Illuminate\Http\Request;
16 17
@@ -44,6 +45,7 @@ class CheckLogController extends BaseController @@ -44,6 +45,7 @@ class CheckLogController extends BaseController
44 ]); 45 ]);
45 $field = ['id','check_id','date','status','images','result','created_at']; 46 $field = ['id','check_id','date','status','images','result','created_at'];
46 $this->map['status'] = 1; 47 $this->map['status'] = 1;
  48 + $this->map['type'] = $this->map['type'] ?? 1;
47 $lists = $this->model->lists($this->map,$this->page,$this->row,'id',$field); 49 $lists = $this->model->lists($this->map,$this->page,$this->row,'id',$field);
48 $this->response('success',Code::SUCCESS,$lists); 50 $this->response('success',Code::SUCCESS,$lists);
49 } 51 }
@@ -80,6 +82,11 @@ class CheckLogController extends BaseController @@ -80,6 +82,11 @@ class CheckLogController extends BaseController
80 'project_id.required' => 'project_id不能为空', 'check_id.required' => '问题id不能为空', 82 'project_id.required' => 'project_id不能为空', 'check_id.required' => '问题id不能为空',
81 'date.required' => '时间不能为空', 'result.required' => '检查结果不能为空', 83 'date.required' => '时间不能为空', 'result.required' => '检查结果不能为空',
82 ]); 84 ]);
  85 + $checkListModel = new OptimizeCheckList();
  86 + $listInfo = $checkListModel->read(['id'=>$this->param['check_id']],['id','type']);
  87 + if($listInfo !== false){
  88 + $this->param['type'] = $listInfo['type'];
  89 + }
83 $this->param = $this->model->saveHandleParam($this->param,$this->manage['id']); 90 $this->param = $this->model->saveHandleParam($this->param,$this->manage['id']);
84 if(isset($this->param['id']) && !empty($this->param['id'])){ 91 if(isset($this->param['id']) && !empty($this->param['id'])){
85 $id = $this->param['id']; 92 $id = $this->param['id'];
@@ -195,6 +195,7 @@ class OptimizeController extends BaseController @@ -195,6 +195,7 @@ class OptimizeController extends BaseController
195 'gl_project.remain_day AS remain_day', 195 'gl_project.remain_day AS remain_day',
196 'gl_project.seo_remain_day AS seo_remain_day', 196 'gl_project.seo_remain_day AS seo_remain_day',
197 'gl_project.robots AS robots', 197 'gl_project.robots AS robots',
  198 + 'gl_project.is_analysis AS is_analysis',
198 'gl_project.is_minor_languages AS is_minor_languages', 199 'gl_project.is_minor_languages AS is_minor_languages',
199 'gl_project.is_translate AS is_translate', 200 'gl_project.is_translate AS is_translate',
200 'gl_project.is_translate_tag AS is_translate_tag', 201 'gl_project.is_translate_tag AS is_translate_tag',
@@ -593,5 +594,23 @@ class OptimizeController extends BaseController @@ -593,5 +594,23 @@ class OptimizeController extends BaseController
593 $this->response('success',Code::SUCCESS,$resultData); 594 $this->response('success',Code::SUCCESS,$resultData);
594 } 595 }
595 596
596 - 597 + /**
  598 + * @remark :是否开启泛解析
  599 + * @name :saveIsAnalysis
  600 + * @author :lyh
  601 + * @method :post
  602 + * @time :2025/5/24 14:48
  603 + */
  604 + public function saveIsAnalysis(){
  605 + $this->request->validate([
  606 + 'id' => 'required',
  607 + 'is_analysis' => 'required',
  608 + ], [
  609 + 'id.required' => '项目id不能为空',
  610 + 'is_analysis.required' => 'is_analysis不能为空',
  611 + ]);
  612 + $projectModel = new Project();
  613 + $data = $projectModel->edit(['is_analysis'=>$this->param['is_analysis']],['id'=>$this->param['id']]);
  614 + $this->response('success',Code::SUCCESS,$data);
  615 + }
597 } 616 }
@@ -16,6 +16,7 @@ use App\Models\ASide\APublicModel; @@ -16,6 +16,7 @@ use App\Models\ASide\APublicModel;
16 use App\Models\Channel\Channel; 16 use App\Models\Channel\Channel;
17 use App\Models\Domain\DomainInfo; 17 use App\Models\Domain\DomainInfo;
18 use App\Models\Manage\Manage; 18 use App\Models\Manage\Manage;
  19 +use App\Models\Manage\ManageHr;
19 use App\Models\Project\Project; 20 use App\Models\Project\Project;
20 use App\Models\Project\ProjectRenew; 21 use App\Models\Project\ProjectRenew;
21 use App\Models\Task\Task; 22 use App\Models\Task\Task;
@@ -36,7 +37,7 @@ class RenewProjectController extends BaseController @@ -36,7 +37,7 @@ class RenewProjectController extends BaseController
36 ->with('deploy_optimize')->with('online_check')->paginate($this->row, ['*'], 'page', $this->page); 37 ->with('deploy_optimize')->with('online_check')->paginate($this->row, ['*'], 'page', $this->page);
37 if(!empty($lists)){ 38 if(!empty($lists)){
38 $lists = $lists->toArray(); 39 $lists = $lists->toArray();
39 - $manageModel = new Manage(); 40 + $manageModel = new ManageHr();
40 $domainModel = new DomainInfo(); 41 $domainModel = new DomainInfo();
41 foreach ($lists['list'] as $k=>$item){ 42 foreach ($lists['list'] as $k=>$item){
42 $item = $this->handleParam($item,$manageModel,$domainModel); 43 $item = $this->handleParam($item,$manageModel,$domainModel);
@@ -122,7 +123,7 @@ class RenewProjectController extends BaseController @@ -122,7 +123,7 @@ class RenewProjectController extends BaseController
122 ->with('project_after')->paginate($this->row, ['*'], 'page', $this->page); 123 ->with('project_after')->paginate($this->row, ['*'], 'page', $this->page);
123 if(!empty($lists)){ 124 if(!empty($lists)){
124 $lists = $lists->toArray(); 125 $lists = $lists->toArray();
125 - $manageModel = new Manage(); 126 + $manageModel = new ManageHr();
126 $domainModel = new DomainInfo(); 127 $domainModel = new DomainInfo();
127 foreach ($lists['list'] as $k=>$item){ 128 foreach ($lists['list'] as $k=>$item){
128 $item = $this->handleParam($item,$manageModel,$domainModel); 129 $item = $this->handleParam($item,$manageModel,$domainModel);
@@ -215,9 +215,9 @@ class CNoticeController extends BaseController @@ -215,9 +215,9 @@ class CNoticeController extends BaseController
215 $project_id = $this->user['project_id']; 215 $project_id = $this->user['project_id'];
216 $type = intval($request->input('type', 1)); 216 $type = intval($request->input('type', 1));
217 $route = intval($request->input('page', 1)); 217 $route = intval($request->input('page', 1));
218 - if(($this->user['is_upgrade'] == 0) && ($type == 2) && in_array($route,[4,6])){  
219 - $this->fail('聚合页翻译请联系管理员');  
220 - } 218 +// if(($this->user['is_upgrade'] == 0) && ($type == 2) && in_array($route,[4,6])){
  219 +// $this->fail('聚合页翻译请联系管理员');
  220 +// }
221 $url = $request->input('url', []); 221 $url = $request->input('url', []);
222 $language = $request->input('language', []); 222 $language = $request->input('language', []);
223 $is_sitemap = intval($request->input('is_sitemap', 0)); 223 $is_sitemap = intval($request->input('is_sitemap', 0));
@@ -471,7 +471,7 @@ class ProjectLogic extends BaseLogic @@ -471,7 +471,7 @@ class ProjectLogic extends BaseLogic
471 } 471 }
472 $param['upload_config'] = json_encode($param['upload_config'] ?? []); 472 $param['upload_config'] = json_encode($param['upload_config'] ?? []);
473 $param['web_traffic_config'] = json_encode($param['web_traffic_config'] ?? []); 473 $param['web_traffic_config'] = json_encode($param['web_traffic_config'] ?? []);
474 - unset($param['robots']);//项目不保存robots 474 + unset($param['robots'],$param['is_analysis']);//项目不保存robots
475 $this->model->edit($param,['id'=>$param['id']]); 475 $this->model->edit($param,['id'=>$param['id']]);
476 Common::del_user_cache($this->model->getTable(),$param['id']); 476 Common::del_user_cache($this->model->getTable(),$param['id']);
477 return $this->success(); 477 return $this->success();
@@ -489,14 +489,10 @@ class ProductLogic extends BaseLogic @@ -489,14 +489,10 @@ class ProductLogic extends BaseLogic
489 foreach ($data as $k => $v){ 489 foreach ($data as $k => $v){
490 $map = []; 490 $map = [];
491 $cateModel = new Category(); 491 $cateModel = new Category();
492 - $status = [];  
493 - if($v != 3){  
494 - $status = ['status'=>$v];  
495 - }  
496 - $cateList = $cateModel->list($status,'id',['id','pid']); 492 + $cateList = $cateModel->list(['status'=>1],'id',['id','pid']);
497 $this->param['featured_status'] = $this->param['featured_status'] ?? 0; 493 $this->param['featured_status'] = $this->param['featured_status'] ?? 0;
498 if(!empty($cateList) && ($this->param['featured_status'] != $cateModel::STATUS_ACTIVE)){ 494 if(!empty($cateList) && ($this->param['featured_status'] != $cateModel::STATUS_ACTIVE)){
499 - $featured_ids = $cateModel->where('title', 'Featured')->pluck('id')->toArray(); 495 + $featured_ids = $cateModel->formatQuery(['title'=>['in',['Featured','featured']]])->pluck('id')->toArray();
500 //获取当前的子集 496 //获取当前的子集
501 $featured_arr = []; 497 $featured_arr = [];
502 foreach ($featured_ids as $id){ 498 foreach ($featured_ids as $id){
@@ -73,3 +73,6 @@ Route::any('/addRedirect',[\App\Http\Controllers\Api\NoticeController::class,'ad @@ -73,3 +73,6 @@ Route::any('/addRedirect',[\App\Http\Controllers\Api\NoticeController::class,'ad
73 Route::post('/inquiry_relate_domain', [\App\Http\Controllers\Api\PrivateController::class, 'inquiry_relate_domain']); 73 Route::post('/inquiry_relate_domain', [\App\Http\Controllers\Api\PrivateController::class, 'inquiry_relate_domain']);
74 // 通过域名获取项目人员配置 74 // 通过域名获取项目人员配置
75 Route::get('/get_manage_by_domain', [\App\Http\Controllers\Api\PrivateController::class, 'getProjectManageByDomain']); 75 Route::get('/get_manage_by_domain', [\App\Http\Controllers\Api\PrivateController::class, 'getProjectManageByDomain']);
  76 +
  77 +// 获取信息通过商户号
  78 +Route::any('/get_project_by_mch_id', [\App\Http\Controllers\Api\PrivateController::class, 'getProjectByMchId']);
@@ -307,7 +307,7 @@ Route::middleware(['aloginauth'])->group(function () { @@ -307,7 +307,7 @@ Route::middleware(['aloginauth'])->group(function () {
307 Route::any('/getAnchorLink', [Aside\Optimize\OptimizeController::class, 'getAnchorLink'])->name('admin.optimize_getAnchorLink');//设置robots开关 307 Route::any('/getAnchorLink', [Aside\Optimize\OptimizeController::class, 'getAnchorLink'])->name('admin.optimize_getAnchorLink');//设置robots开关
308 Route::any('/getAfterCount', [Aside\Optimize\AfterCountController::class, 'getAfterCount'])->name('admin.optimize_getAfterCount');//售后统计数据 308 Route::any('/getAfterCount', [Aside\Optimize\AfterCountController::class, 'getAfterCount'])->name('admin.optimize_getAfterCount');//售后统计数据
309 Route::any('/getAfterCountInfo', [Aside\Optimize\AfterCountController::class, 'getAfterCountInfo'])->name('admin.optimize_getAfterCountInfo');//售后统计数据详情 309 Route::any('/getAfterCountInfo', [Aside\Optimize\AfterCountController::class, 'getAfterCountInfo'])->name('admin.optimize_getAfterCountInfo');//售后统计数据详情
310 - 310 + Route::any('/saveIsAnalysis', [Aside\Optimize\OptimizeController::class, 'saveIsAnalysis'])->name('admin.optimize_saveIsAnalysis');//优化中台开启与关闭泛解析
311 //检查列表 311 //检查列表
312 Route::prefix('check_list')->group(function () { 312 Route::prefix('check_list')->group(function () {
313 Route::any('/', [Aside\Optimize\CheckListController::class, 'lists'])->name('admin.check_lists'); 313 Route::any('/', [Aside\Optimize\CheckListController::class, 'lists'])->name('admin.check_lists');