作者 邓超

bbbbb

<?php
namespace App\Http\Controllers\Aside\Template;
use App\Http\Controllers\Aside\BaseController;
/**
* 模板header footer
* @author:dc
* @time 2023/4/26 11:10
* Class HeaderFooterController
* @package App\Http\Controllers\Aside\Template
*/
class HeaderFooterController extends BaseController
{
}
... ... @@ -3,9 +3,12 @@
namespace App\Http\Controllers\Aside;
use App\Enums\Common\Code;
use App\Http\Logic\Aside\Template\TemplateChunkLogic;
use App\Http\Logic\Aside\Template\TemplateLogic;
use App\Http\Requests\Aside\Template\TemplateChunkRequest;
use App\Http\Requests\Aside\Template\TemplateRequest;
use App\Models\Template\ATemplate;
use App\Models\Template\ATemplateChunk;
use App\Models\Template\ATemplateHtml;
use Illuminate\Validation\Rule;
... ... @@ -195,4 +198,48 @@ class TemplateController extends BaseController
/**
* 自定义界面,块
* @author:dc
* @time 2023/5/29 10:27
*/
public function chunk_lists(){
$lists = TemplateChunkLogic::instance()->getList()->toArray();
return $this->success($lists);
}
/**
* 自定义界面,块 保存
* @author:dc
* @time 2023/5/29 10:37
*/
public function chunk_save(TemplateChunkRequest $request){
$data = TemplateChunkLogic::instance()->save($request->validated());
return $this->success(TemplateChunkLogic::instance()->getInfo($data['id']));
}
/**
* 自定义界面,块 删除
* @author:dc
* @time 2023/5/29 10:38
*/
public function chunk_delete($chunk_id){
TemplateChunkLogic::instance()->delete($chunk_id);
return $this->response('删除成功');
}
}
... ...
... ... @@ -4,6 +4,7 @@ namespace App\Http\Controllers\Bside;
use App\Enums\Common\Code;
use App\Http\Logic\Aside\Template\TemplateChunkLogic;
use App\Http\Logic\Bside\TemplateLogic;
use App\Http\Requests\Bside\TemplateRequest;
use App\Models\Template\ATemplate;
... ... @@ -179,36 +180,17 @@ class TemplateController extends BaseController
* @author:dc
* @time 2023/5/10 14:55
*/
public function customChunk(){
//
// $html = $this->param['html']??[];
// // 那个页面 的
// $type = $this->param['type']??'';
//
// if(!is_array($html)){
// return $this->response('参数异常',Code::SYSTEM_ERROR);
// }
//
// // 项目id
// $project_id = $this->user['project_id'];
// // 当前模板
// $template_id = BSetting::_get($project_id)['template_id'];
//
// // 验证这个模板是否存在
// if(!$type || !ATemplateHtml::_typeExist($template_id,$type)){
// return $this->response('页面类型错误',Code::SYSTEM_ERROR);
// }
//
//
// $html = view("template.{$template_id}.{$type}")->render();
//
//
// return $this->response('',Code::SUCCESS,$html);
//// $data = BTemplateData::_insert();
//
//
public function chunk(){
$lists = TemplateChunkLogic::instance()->getList([['status','=',1]],['sort'=>'asc'],['*'],false)->toArray();
foreach ($lists as &$list){
unset($list['created_at']);
unset($list['updated_at']);
unset($list['status']);
}
return $this->success($lists);
}
... ...
<?php
namespace App\Http\Logic\Aside\Template;
use App\Http\Logic\Aside\BaseLogic;
use App\Models\Template\ATemplateChunk;
/**
* 自定义块 模板
* @author:dc
* @time 2023/5/29 10:46
* Class TemplateChunkLogic
* @package App\Http\Logic\Aside\Template
*/
class TemplateChunkLogic extends BaseLogic {
public function __construct()
{
parent::__construct();
$this->model = new ATemplateChunk();
}
}
... ...
... ... @@ -9,6 +9,7 @@ use App\Exceptions\AsideGlobalException;
use App\Exceptions\BsideGlobalException;
use App\Helper\Arr;
use App\Models\Devops\ServerInformationLog;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Facades\Cache;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Log;
... ... @@ -57,7 +58,7 @@ class Logic
* @param array $sort
* @param array $columns
* @param int $limit
* @return array
* @return array|Model
* @author zbj
* @date 2023/4/13
*/
... ...
<?php
namespace App\Http\Requests\Aside\Template;
use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Validation\Rule;
/**
* 自定义模板 块
* @author:dc
* @time 2023/5/29 10:57
* Class TemplateChunkRequest
* @package App\Http\Requests\Aside\Template
*/
class TemplateChunkRequest extends FormRequest
{
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
return true;
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
$rule = [
'id' => ['required','integer'],
'name' => ['required'],
'type' => ['required'],
'status' => ['required',Rule::in(0,1)],
'sort' => ['required','integer'],
'thumb' => ['required'],
'html' => ['required'],
'attr' => [],
];
// 更新场景
if(!$this->is('a/template/chunk/update')){
unset($rule['id']);
}
return $rule;
}
public function messages()
{
return [
'id.required' => 'id必须',
'id.integer' => 'id必须',
'name.required' => '名称必须',
'type.required' => '类型必须',
'status.integer' => '状态错误',
'status.in' => '状态错误',
'sort.required' => '排序必须',
'sort.integer' => '排序必须',
'thumb.required' => '缩略图必须',
'html.required' => 'html代码必须',
// 'attr.required' => '其他必须',
];
}
}
... ...
<?php
namespace App\Models\Template;
use Illuminate\Database\Eloquent\SoftDeletes;
/**
* 自定义块 模板块
* @author:dc
* @time 2023/5/29 10:39
* Class ATemplateChunk
* @package App\Models\Template
*/
class ATemplateChunk extends \App\Models\Base{
protected $table = 'gl_aside_template_chunk';
protected $hidden = ['deleted_at'];
use SoftDeletes;
public static $typeMap = [
'index' => '首页',
'product' => '商品列表',
'product_info' => '商品详情',
'blogs' => '博客列表',
'blogs_info' => '博客详情',
'page' => '单页',
'news' => '新闻列表',
'news_info' => '新闻详情',
];
}
... ...
... ... @@ -6,7 +6,7 @@ use \Illuminate\Support\Facades\Route;
use \App\Http\Controllers\Aside;
//必须登录验证的路由组
Route::middleware(['web'])->group(function (){ //admin用渲染默认要加上web的中间件
Route::middleware([])->group(function (){ //admin用渲染默认要加上web的中间件
Route::middleware(['aloginauth'])->group(function () {
Route::get('/', [Aside\IndexController::class, 'index'])->name('admin.home.white');
Route::get('/logout', [Aside\LoginController::class, 'logout'])->name('admin.logout.white');
... ... @@ -164,6 +164,14 @@ Route::middleware(['web'])->group(function (){ //admin用渲染默认要加上w
Route::post('/html/{template_id}/insert', [\App\Http\Controllers\Aside\TemplateController::class, 'html_insert'])->where('template_id','\d+')->name('admin.template_insert.html');
Route::delete('/html/{template_id}/delete/{id}', [\App\Http\Controllers\Aside\TemplateController::class, 'html_delete'])->where('template_id','\d+')->where('id','\d+')->name('admin.template_delete.html');
Route::get('/html/type', [\App\Http\Controllers\Aside\TemplateController::class, 'html_type'])->name('admin.template_type.html');
// 自定义块,模板块
Route::get('/chunk/lists', [\App\Http\Controllers\Aside\TemplateController::class, 'chunk_lists'])->name('admin.template.chunk_lists');
Route::post('/chunk/create', [\App\Http\Controllers\Aside\TemplateController::class, 'chunk_save'])->name('admin.template.chunk_create');
Route::post('/chunk/update', [\App\Http\Controllers\Aside\TemplateController::class, 'chunk_save'])->name('admin.template.chunk_update');
Route::delete('/chunk/delete/{chunk_id}', [\App\Http\Controllers\Aside\TemplateController::class, 'chunk_delete'])->where('chunk_id','\d+')->name('admin.template.chunk_delete');
});
... ...
... ... @@ -234,7 +234,17 @@ Route::middleware(['bloginauth','accesstoken'])->group(function () {
Route::get('/get_html', [\App\Http\Controllers\Bside\TemplateController::class, 'get_html'])->name('bside_template_get_html');
Route::get('/save_html', [\App\Http\Controllers\Bside\TemplateController::class, 'save_html'])->name('bside_template_save_html');
Route::get('/status', [\App\Http\Controllers\Bside\TemplateController::class, 'status'])->name('bside_template_status');
// 自定义模板的 块。
Route::get('/chunk', [\App\Http\Controllers\Bside\TemplateController::class, 'chunk'])->name('bside_template_chunk');
});
// 自定义页面,专题页
Route::prefix('custom')->group(function () {
Route::get('/', [\App\Http\Controllers\Bside\CustomController::class, 'index'])->name('bside_custom');
... ...