作者 lyh

gx

... ... @@ -164,4 +164,21 @@ class BlogCategoryController extends BaseController
$blogCategoryLogic->setAllSort();
$this->response('success');
}
/**
* @remark :复制博客分类
* @name :copyCategory
* @author :lyh
* @method :post
* @time :2024/5/9 9:14
*/
public function copyCategory(BlogCategoryLogic $logic){
$this->request->validate([
'id'=>'required',
],[
'id.required' => 'id不能为空',
]);
$data = $logic->copyCategory();
$this->response('success',Code::SUCCESS,$data);
}
}
... ...
... ... @@ -187,5 +187,20 @@ class CustomModuleCategoryController extends BaseController
$this->response('success');
}
/**
* @remark :复制新闻分类
* @name :copyCategory
* @author :lyh
* @method :post
* @time :2024/5/9 9:14
*/
public function copyCategory(CustomModuleCategoryLogic $logic){
$this->request->validate([
'id'=>'required',
],[
'id.required' => 'id不能为空',
]);
$data = $logic->copyCategory();
$this->response('success',Code::SUCCESS,$data);
}
}
... ...
... ... @@ -168,13 +168,13 @@ class NewsCategoryController extends BaseController
* @method :post
* @time :2024/5/9 9:14
*/
public function copyCategory(NewsCategoryLogic $newsLogic){
public function copyCategory(NewsCategoryLogic $logic){
$this->request->validate([
'id'=>'required',
],[
'id.required' => 'id不能为空',
]);
$data = $newsLogic->copyCategory();
$data = $logic->copyCategory();
$this->response('success',Code::SUCCESS,$data);
}
}
... ...
... ... @@ -27,6 +27,9 @@ class VisitController extends BaseController
*/
public function index(VisitLogic $logic)
{
if(isset($this->map['updated_date']) && !empty($this->param['updated_date'])){
$this->map['updated_date'] = ['between',$this->map['updated_date']];
}
$data = $logic->getVisitList($this->map,$this->page,$this->row,$this->order);
$this->response('success',Code::SUCCESS,$data);
}
... ...
... ... @@ -10,6 +10,7 @@ use App\Models\Blog\BlogCategory;
use App\Models\Blog\BlogCategory as BlogCategoryModel;
use App\Models\News\NewsCategory as NewsCategoryModel;
use App\Models\RouteMap\RouteMap;
use App\Models\Template\BTemplate;
use Illuminate\Support\Facades\DB;
class BlogCategoryLogic extends BaseLogic
... ... @@ -277,4 +278,70 @@ class BlogCategoryLogic extends BaseLogic
}
return $this->success();
}
/**
* @remark :复制新闻分类
* @name :copyCategory
* @author :lyh
* @method :post
* @time :2024/5/9 9:16
*/
public function copyCategory(){
$info = $this->model->read(['id'=>$this->param['id']]);
$param = [
'name'=>$info['name']."-copy",
'status'=>0,
'sort'=>$info['sort'],
'pid'=>0,
'remark'=>$info['remark'],
'alias'=>$info['alias'],
'project_id'=>$info['project_id'],
'operator_id'=>$this->user['id'],
'create_id'=>$this->user['id'],
'created_at'=>date('Y-m-d H:i:s'),
'updated_at'=>date('Y-m-d H:i:s'),
];
$save_id = $this->model->insertGetId($param);
$route = RouteMap::setRoute($param['alias'], RouteMap::SOURCE_BLOG_CATE, $save_id, $this->user['project_id']);
$this->model->edit(['alias'=>$route],['id'=>$save_id]);
//同步可视化装修数据
$this->copyTemplate($this->param['id'],$info['project_id'],$save_id);
return $this->success(['id'=>$save_id]);
}
/**
* @remark :同步模版数据
* @name :copyTemplate
* @author :lyh
* @method :post
* @time :2023/7/29 15:53
*/
public function copyTemplate($id,$project_id,$save_id){
$BTemplateModel = new BTemplate();
$list = $BTemplateModel->list(['source'=>BTemplate::SOURCE_BLOG,'is_list'=>BTemplate::IS_LIST,'is_custom'=>BTemplate::IS_NO_CUSTOM,'source_id'=>$id,'project_id'=>$project_id]);
if(!empty($list)){
$data = [];
foreach ($list as $v){
$data[] = [
'html'=>$v['html'],
'project_id'=>$v['project_id'],
'source'=>$v['source'],
'source_id'=>$save_id,
'template_id'=>$v['template_id'],
'section_list_id'=>$v['section_list_id'],
'main_html'=>$v['main_html'],
'main_css'=>$v['main_css'],
'is_list'=>$v['is_list'],
'type'=>$v['type'],
'created_at'=>date('Y-m-d H:i:s'),
'updated_at'=>date('Y-m-d H:i:s'),
];
}
$rs = $BTemplateModel->insert($data);
if($rs === false){
$this->fail('error');
}
}
return $this->success();
}
}
... ...
... ... @@ -9,10 +9,12 @@
namespace App\Http\Logic\Bside\CustomModule;
use App\Helper\Arr;
use App\Http\Logic\Bside\BaseLogic;
use App\Models\CustomModule\CustomModuleCategory;
use App\Models\CustomModule\CustomModuleContent;
use App\Models\RouteMap\RouteMap;
use App\Models\Template\BTemplate;
class CustomModuleCategoryLogic extends BaseLogic
{
... ... @@ -247,4 +249,92 @@ class CustomModuleCategoryLogic extends BaseLogic
}
return $this->success();
}
/**
* @remark :复制扩展模块内容页
* @name :copyModuleContentInfo
* @author :lyh
* @method :post
* @time :2024/4/28 16:32
*/
public function copyCategory(){
$info = $this->model->read(['id'=>$this->param['id']]);
$param = $this->setContentParams($info);
$save_id = $this->model->insertGetId($param);
$this->copyTemplate($this->param['id'],$info['project_id'],$save_id,$info['module_id']);
$this->response('success');
}
/**
* @remark :字段处理
* @name :setContentParams
* @author :lyh
* @method :post
* @time :2024/4/28 16:33
*/
public function setContentParams($info){
return [
'name'=>$info['name'].'-copy',
'status'=>$info['status'],
'sort'=>$info['sort'],
'pid'=>0,
'remark'=>$info['remark'],
'route'=>$info['route'],
'project_id'=>$info['project_id'],
'operator_id'=>$this->user['id'],
'module_id'=>$info['module_id'],
'image'=>$info['image'],
'created_at'=>date('Y-m-d H:i:s'),
'updated_at'=>date('Y-m-d H:i:s')
];
}
/**
* @remark :同步模版数据
* @name :copyTemplate
* @author :lyh
* @method :post
* @time :2023/7/29 15:53
*/
public function copyTemplate($id,$project_id,$save_id,$module_id){
$BTemplateModel = new BTemplate();
$list = $BTemplateModel->list(['source'=>$module_id,'source_id'=>$id,'is_list'=>BTemplate::IS_LIST,'is_custom'=>BTemplate::IS_CUSTOM,'project_id'=>$project_id]);
if(!empty($list)){
$data = [];
foreach ($list as $v){
$data[] = $this->setTemplateParams($v,$project_id,$save_id);
}
$rs = $BTemplateModel->insert($data);
if($rs === false){
$this->fail('error');
}
}
return $this->success();
}
/**
* @remark :组装模版数据
* @name :setTemplateParams
* @author :lyh
* @method :post
* @time :2023/7/29 15:54
*/
public function setTemplateParams($v,$project_id,$save_id){
$param = [
'html'=>$v['html'],
'project_id'=>$project_id,
'source'=>$v['source'],
'source_id'=>$save_id,
'template_id'=>$v['template_id'],
'section_list_id'=>$v['section_list_id'],
'main_html'=>$v['main_html'],
'main_css'=>$v['main_css'],
'is_custom'=>$v['is_custom'],
'is_list'=>$v['is_list'],
'type'=>$v['type'],
'created_at'=>$v['created_at'],
'updated_at'=>$v['updated_at']
];
return $this->success($param);
}
}
... ...
... ... @@ -443,7 +443,7 @@ class CustomModuleContentLogic extends BaseLogic
*/
public function copyTemplate($id,$project_id,$save_id,$module_id){
$BTemplateModel = new BTemplate();
$list = $BTemplateModel->list(['source'=>$module_id,'source_id'=>$id,'is_custom'=>BTemplate::IS_CUSTOM,'project_id'=>$project_id]);
$list = $BTemplateModel->list(['source'=>$module_id,'source_id'=>$id,'is_list'=>BTemplate::IS_DETAIL,'is_custom'=>BTemplate::IS_CUSTOM,'project_id'=>$project_id]);
if(!empty($list)){
$data = [];
foreach ($list as $v){
... ...
... ... @@ -123,6 +123,7 @@ Route::middleware(['bloginauth'])->group(function () {
Route::any('/category/edit', [\App\Http\Controllers\Bside\Blog\BlogCategoryController::class, 'save'])->name('blog_category_edit');
Route::any('/category/del', [\App\Http\Controllers\Bside\Blog\BlogCategoryController::class, 'del'])->name('blog_category_del');
Route::any('/category/allSort', [\App\Http\Controllers\Bside\Blog\BlogCategoryController::class, 'allSort'])->name('blog_category_allSort');
Route::any('/category/copyCategory', [\App\Http\Controllers\Bside\Blog\BlogCategoryController::class, 'copyCategory'])->name('blog_category_copyCategory');
Route::any('/category/status', [\App\Http\Controllers\Bside\Blog\BlogCategoryController::class, 'status'])->name('blog_category_status');
Route::any('/category/sort', [\App\Http\Controllers\Bside\Blog\BlogCategoryController::class, 'sort'])->name('blog_category_sort');
Route::any('/category/categoryTopList', [\App\Http\Controllers\Bside\Blog\BlogCategoryController::class, 'categoryTopList'])->name('blog_category_categoryTopList');
... ...