作者 lyh

gx

  1 +<?php
  2 +/**
  3 + * @remark :
  4 + * @name :PopularTemplateLabel.php
  5 + * @author :lyh
  6 + * @method :post
  7 + * @time :2024/6/3 17:00
  8 + */
  9 +
  10 +namespace App\Console\Commands\TemplateLabel;
  11 +
  12 +use App\Models\Template\Template;
  13 +use App\Models\Template\TemplateLabel as TemplateLabelModel;
  14 +use App\Models\Template\TemplateModule;
  15 +use Illuminate\Console\Command;
  16 +
  17 +class PopularTemplateLabel extends Command
  18 +{
  19 + /**
  20 + * The name and signature of the console command.
  21 + *
  22 + * @var string
  23 + */
  24 + protected $signature = 'popular_template_label';
  25 +
  26 + /**
  27 + * The console command description.
  28 + *
  29 + * @var string
  30 + */
  31 + protected $description = '设置热门label';
  32 +
  33 + /**
  34 + * @remark :执行脚本
  35 + * @name :handle
  36 + * @author :lyh
  37 + * @method :post
  38 + * @time :2024/6/3 17:01
  39 + */
  40 + public function handle(){
  41 + $this->setTemplate();
  42 + $this->setTemplateModule();
  43 + return true;
  44 + }
  45 +
  46 + /**
  47 + * @remark :公共模块热门模块
  48 + * @name :setTemplate
  49 + * @author :lyh
  50 + * @method :post
  51 + * @time :2024/6/3 15:56
  52 + */
  53 + public function setTemplate(){
  54 + $templateModel = new Template();
  55 + $info = $templateModel->list(['test_model'=>0],'number',['id'],'desc',50);
  56 + if(empty($info)){
  57 + return true;
  58 + }else{
  59 + //清除当前所有最新标签
  60 + $labelModel = new TemplateLabelModel();
  61 + $labelModel->del(['name'=>'热门','type'=>1]);
  62 + $data = [];
  63 + foreach ($info as $v){
  64 + $data[] = [
  65 + 'name'=>'热门',
  66 + 'type'=>1,
  67 + 'template_id'=>$v['id'],
  68 + 'manager_id'=>0,
  69 + 'created_at'=>date('Y-m-d H:i:s'),
  70 + 'updated_at'=>date('Y-m-d H:i:s')
  71 + ];
  72 + }
  73 + //设置为最新
  74 + $labelModel->insert($data);
  75 + }
  76 + return true;
  77 + }
  78 +
  79 + /**
  80 + * @remark :左侧模块
  81 + * @name :templateModule
  82 + * @author :lyh
  83 + * @method :post
  84 + * @time :2024/6/3 15:54
  85 + */
  86 + public function setTemplateModule(){
  87 + $templateModuleModel = new TemplateModule();
  88 + $moduleInfo = $templateModuleModel->list(['test_model'=>0],'id',['id']);
  89 + if(empty($moduleInfo)){
  90 + return true;
  91 + }else{
  92 + //清除当前所有最新标签
  93 + $labelModel = new TemplateLabelModel();
  94 + $labelModel->del(['name'=>'热门','type'=>2]);
  95 + $moduleData = [];
  96 + foreach ($moduleInfo as $k => $v){
  97 + $moduleData[] = [
  98 + 'name'=>'热门',
  99 + 'type'=>2,
  100 + 'template_id'=>$v['id'],
  101 + 'manager_id'=>0,
  102 + 'created_at'=>date('Y-m-d H:i:s'),
  103 + 'updated_at'=>date('Y-m-d H:i:s')
  104 + ];
  105 + }
  106 + //设置为最新
  107 + $labelModel->insert($moduleData);
  108 + }
  109 + return true;
  110 + }
  111 +
  112 +}
@@ -63,4 +63,21 @@ class BTemplateModuleController extends BaseController @@ -63,4 +63,21 @@ class BTemplateModuleController extends BaseController
63 $list = $BTemplateModuleLogic->ModuleType($this->map); 63 $list = $BTemplateModuleLogic->ModuleType($this->map);
64 $this->response('success',Code::SUCCESS,$list); 64 $this->response('success',Code::SUCCESS,$list);
65 } 65 }
  66 +
  67 + /**
  68 + * @remark :设置数量
  69 + * @name :setModuleNumber
  70 + * @author :lyh
  71 + * @method :post
  72 + * @time :2024/6/3 16:50
  73 + */
  74 + public function setModuleNumber(){
  75 + $this->request->validate([
  76 + 'id'=>'required',
  77 + ],[
  78 + 'id.required' => 'id不能为空',
  79 + ]);
  80 + $this->model->where('id', $this->param['id'])->increment('number');
  81 + $this->response('success');
  82 + }
66 } 83 }
@@ -369,6 +369,7 @@ Route::middleware(['bloginauth'])->group(function () { @@ -369,6 +369,7 @@ Route::middleware(['bloginauth'])->group(function () {
369 Route::any('/', [\App\Http\Controllers\Bside\Template\BTemplateModuleController::class, 'lists'])->name('template_module_lists'); 369 Route::any('/', [\App\Http\Controllers\Bside\Template\BTemplateModuleController::class, 'lists'])->name('template_module_lists');
370 Route::any('/read', [\App\Http\Controllers\Bside\Template\BTemplateModuleController::class, 'read'])->name('template_module_read'); 370 Route::any('/read', [\App\Http\Controllers\Bside\Template\BTemplateModuleController::class, 'read'])->name('template_module_read');
371 Route::any('/type', [\App\Http\Controllers\Bside\Template\BTemplateModuleController::class, 'getType'])->name('template_module_getType'); 371 Route::any('/type', [\App\Http\Controllers\Bside\Template\BTemplateModuleController::class, 'getType'])->name('template_module_getType');
  372 + Route::any('/setModuleNumber', [\App\Http\Controllers\Bside\Template\BTemplateModuleController::class, 'setModuleNumber'])->name('template_module_setModuleNumber');
372 }); 373 });
373 374
374 // 保存私有模块 375 // 保存私有模块