正在显示
4 个修改的文件
包含
80 行增加
和
19 行删除
| @@ -5,6 +5,7 @@ namespace App\Http\Controllers\Bside\Template; | @@ -5,6 +5,7 @@ namespace App\Http\Controllers\Bside\Template; | ||
| 5 | use App\Enums\Common\Code; | 5 | use App\Enums\Common\Code; |
| 6 | use App\Http\Controllers\Bside\BaseController; | 6 | use App\Http\Controllers\Bside\BaseController; |
| 7 | use App\Http\Logic\Bside\BTemplate\BTemplateModuleLogic; | 7 | use App\Http\Logic\Bside\BTemplate\BTemplateModuleLogic; |
| 8 | +use App\Http\Logic\Bside\BTemplate\BTemplateModuleProjectLogic; | ||
| 8 | use App\Models\Template\BModuleProject; | 9 | use App\Models\Template\BModuleProject; |
| 9 | 10 | ||
| 10 | /** | 11 | /** |
| @@ -22,15 +23,14 @@ class BTemplateModuleController extends BaseController | @@ -22,15 +23,14 @@ class BTemplateModuleController extends BaseController | ||
| 22 | * @method :post | 23 | * @method :post |
| 23 | * @time :2023/6/29 11:33 | 24 | * @time :2023/6/29 11:33 |
| 24 | */ | 25 | */ |
| 25 | - public function lists(BTemplateModuleLogic $BTemplateModuleLogic){ | 26 | + public function lists(BTemplateModuleLogic $bTemplateModuleLogic,BTemplateModuleProjectLogic $bTemplateModuleProjectLogic){ |
| 26 | if(!isset($this->map['test_model'])){ | 27 | if(!isset($this->map['test_model'])){ |
| 27 | $this->map['test_model'] = ['in',[0,1]]; | 28 | $this->map['test_model'] = ['in',[0,1]]; |
| 28 | } | 29 | } |
| 29 | $data = []; | 30 | $data = []; |
| 30 | - $list = $BTemplateModuleLogic->ModuleList($this->map,$this->order); | 31 | + $list = $bTemplateModuleLogic->ModuleList($this->map,$this->order); |
| 31 | $data['list'] = $list; | 32 | $data['list'] = $list; |
| 32 | - $moduleProjectModel = new BModuleProject(); | ||
| 33 | - $module_list = $moduleProjectModel->list(['project_id'=>$this->user['project_id']]); | 33 | + $module_list = $bTemplateModuleProjectLogic->ModuleList(['project_id'=>$this->user['project_id']]); |
| 34 | $data['module_list'] = $module_list; | 34 | $data['module_list'] = $module_list; |
| 35 | $this->response('success',Code::SUCCESS,$data); | 35 | $this->response('success',Code::SUCCESS,$data); |
| 36 | } | 36 | } |
| @@ -22,6 +22,19 @@ class BTemplateModuleProjectLogic extends BaseLogic | @@ -22,6 +22,19 @@ class BTemplateModuleProjectLogic extends BaseLogic | ||
| 22 | } | 22 | } |
| 23 | 23 | ||
| 24 | /** | 24 | /** |
| 25 | + * @remark :获取左侧模块列表 | ||
| 26 | + * @name :ModuleList | ||
| 27 | + * @author :lyh | ||
| 28 | + * @method :post | ||
| 29 | + * @time :2023/6/29 13:35 | ||
| 30 | + */ | ||
| 31 | + public function ModuleList($map,$order = 'created_at',$filed = ['id','name','sort','status','image','html']){ | ||
| 32 | + $map['status'] = 0; | ||
| 33 | + $lists = $this->model->list($map,$order,$filed); | ||
| 34 | + return $this->success($lists); | ||
| 35 | + } | ||
| 36 | + | ||
| 37 | + /** | ||
| 25 | * @remark :保存私有化左侧模块 | 38 | * @remark :保存私有化左侧模块 |
| 26 | * @name :moduleProjectSave | 39 | * @name :moduleProjectSave |
| 27 | * @author :lyh | 40 | * @author :lyh |
| @@ -284,21 +284,52 @@ class VisualizationLogic extends BaseLogic | @@ -284,21 +284,52 @@ class VisualizationLogic extends BaseLogic | ||
| 284 | $type = $this->getType($this->param['source'],$this->param['source_id']); | 284 | $type = $this->getType($this->param['source'],$this->param['source_id']); |
| 285 | try { | 285 | try { |
| 286 | if(in_array($type,$page_array)){//定制页面 | 286 | if(in_array($type,$page_array)){//定制页面 |
| 287 | + $this->saveVisualizationHtml(); | ||
| 288 | + }else{ | ||
| 289 | + $this->saveTemplateHtml(); | ||
| 290 | + } | ||
| 291 | + }catch (\Exception $e){ | ||
| 292 | + $this->fail('系统错误,请联系管理员'); | ||
| 293 | + } | ||
| 294 | + return $this->success(); | ||
| 295 | + } | ||
| 296 | + | ||
| 297 | + /** | ||
| 298 | + * @remark :保存定制界面 | ||
| 299 | + * @name :saveVisualizationHtml | ||
| 300 | + * @author :lyh | ||
| 301 | + * @method :post | ||
| 302 | + * @time :2023/12/5 15:42 | ||
| 303 | + */ | ||
| 304 | + public function saveVisualizationHtml(){ | ||
| 287 | $bTemplateModel = new BTemplate(); | 305 | $bTemplateModel = new BTemplate(); |
| 288 | $templateInfo = $bTemplateModel->read([ | 306 | $templateInfo = $bTemplateModel->read([ |
| 289 | - 'source'=>$this->param['source'], | ||
| 290 | - 'project_id'=>$this->user['project_id'], | ||
| 291 | - 'source_id'=>$this->param['source_id'], | ||
| 292 | - 'template_id'=>0 | 307 | + 'source'=>$this->param['source'], 'project_id'=>$this->user['project_id'], |
| 308 | + 'source_id'=>$this->param['source_id'], 'template_id'=>0 | ||
| 293 | ]); | 309 | ]); |
| 294 | if($templateInfo === false){ | 310 | if($templateInfo === false){ |
| 295 | $this->param['project_id'] = $this->user['project_id']; | 311 | $this->param['project_id'] = $this->user['project_id']; |
| 296 | $this->param['template_id'] = 0; | 312 | $this->param['template_id'] = 0; |
| 313 | +// $this->param['main_html'] = characterTruncation($this->param['html'],'/<main\b[^>]*>(.*?)<\/main>/s'); | ||
| 314 | +// $this->param['main_css'] = characterTruncation($this->param['html'],'/<style id="globalsojs-styles">(.*?)<\/style>/s'); | ||
| 297 | $bTemplateModel->add($this->param); | 315 | $bTemplateModel->add($this->param); |
| 298 | }else{ | 316 | }else{ |
| 299 | - $bTemplateModel->edit(['html'=>$this->param['html']],['source'=>$this->param['source'],'source_id'=>$this->param['source_id'],'template_id'=>0]); | 317 | +// $param['main_html'] = characterTruncation($this->param['html'],'/<main\b[^>]*>(.*?)<\/main>/s'); |
| 318 | +// $param['main_css'] = characterTruncation($this->param['html'],'/<style id="globalsojs-styles">(.*?)<\/style>/s'); | ||
| 319 | + $param['html'] = $this->param['html']; | ||
| 320 | + $bTemplateModel->edit($param,['source'=>$this->param['source'],'source_id'=>$this->param['source_id'],'template_id'=>0]); | ||
| 300 | } | 321 | } |
| 301 | - }else{ | 322 | + return $this->success(); |
| 323 | + } | ||
| 324 | + | ||
| 325 | + /** | ||
| 326 | + * @remark :非定制界面保存数据 | ||
| 327 | + * @name :saveTemplateHtml | ||
| 328 | + * @author :lyh | ||
| 329 | + * @method :post | ||
| 330 | + * @time :2023/12/5 15:44 | ||
| 331 | + */ | ||
| 332 | + public function saveTemplateHtml(){ | ||
| 302 | $bTemplateModel = new BTemplate(); | 333 | $bTemplateModel = new BTemplate(); |
| 303 | $templateInfo = $bTemplateModel->read([ | 334 | $templateInfo = $bTemplateModel->read([ |
| 304 | 'source'=>$this->param['source'], | 335 | 'source'=>$this->param['source'], |
| @@ -319,12 +350,6 @@ class VisualizationLogic extends BaseLogic | @@ -319,12 +350,6 @@ class VisualizationLogic extends BaseLogic | ||
| 319 | $this->setTemplateLog($this->param['template_id'],$this->param['html'],$this->param['source'],$this->param['source_id']); | 350 | $this->setTemplateLog($this->param['template_id'],$this->param['html'],$this->param['source'],$this->param['source_id']); |
| 320 | $this->homeOrProduct($this->param['source'],$this->param['source_id']); | 351 | $this->homeOrProduct($this->param['source'],$this->param['source_id']); |
| 321 | } | 352 | } |
| 322 | - }catch (\Exception $e){ | ||
| 323 | - $this->fail('系统错误,请联系管理员'); | ||
| 324 | - } | ||
| 325 | - return $this->success(); | ||
| 326 | - | ||
| 327 | - } | ||
| 328 | 353 | ||
| 329 | /** | 354 | /** |
| 330 | * @remark :通知首页更新 | 355 | * @remark :通知首页更新 |
| @@ -63,13 +63,12 @@ class CustomModuleCategoryLogic extends BaseLogic | @@ -63,13 +63,12 @@ class CustomModuleCategoryLogic extends BaseLogic | ||
| 63 | public function categoryAdd(){ | 63 | public function categoryAdd(){ |
| 64 | try { | 64 | try { |
| 65 | $id = $this->model->addReturnId($this->param); | 65 | $id = $this->model->addReturnId($this->param); |
| 66 | - $route = RouteMap::setRoute($this->param['route'], 'module-'.$this->param['module_id'], $id, $this->user['project_id']); | ||
| 67 | - $this->addUpdateNotify(RouteMap::SOURCE_NEWS,$route); | 66 | + $route = RouteMap::setRoute($this->param['route'], RouteMap::SOURCE_MODULE_CATE.$this->param['module_id'], $id, $this->user['project_id']); |
| 67 | + $this->addUpdateNotify(RouteMap::SOURCE_MODULE_CATE.$this->param['module_id'],$route); | ||
| 68 | $this->edit(['url' => $route], ['id' => $id]); | 68 | $this->edit(['url' => $route], ['id' => $id]); |
| 69 | }catch (\Exception $e){ | 69 | }catch (\Exception $e){ |
| 70 | $this->fail('系统错误,请联系管理员'); | 70 | $this->fail('系统错误,请联系管理员'); |
| 71 | } | 71 | } |
| 72 | - | ||
| 73 | return $this->success(); | 72 | return $this->success(); |
| 74 | } | 73 | } |
| 75 | 74 | ||
| @@ -81,6 +80,8 @@ class CustomModuleCategoryLogic extends BaseLogic | @@ -81,6 +80,8 @@ class CustomModuleCategoryLogic extends BaseLogic | ||
| 81 | * @time :2023/12/5 10:55 | 80 | * @time :2023/12/5 10:55 |
| 82 | */ | 81 | */ |
| 83 | public function categoryEdit(){ | 82 | public function categoryEdit(){ |
| 83 | + $route = RouteMap::setRoute($this->param['route'], RouteMap::SOURCE_MODULE_CATE.$this->param['module_id'], $this->param['id'], $this->user['project_id']); | ||
| 84 | + $this->editNewsRoute($this->param['id'],$route); | ||
| 84 | $rs = $this->model->edit($this->param,['id'=>$this->param['id']]); | 85 | $rs = $this->model->edit($this->param,['id'=>$this->param['id']]); |
| 85 | if($rs === false){ | 86 | if($rs === false){ |
| 86 | $this->fail('系统错误,请连续管理员'); | 87 | $this->fail('系统错误,请连续管理员'); |
| @@ -89,6 +90,24 @@ class CustomModuleCategoryLogic extends BaseLogic | @@ -89,6 +90,24 @@ class CustomModuleCategoryLogic extends BaseLogic | ||
| 89 | } | 90 | } |
| 90 | 91 | ||
| 91 | /** | 92 | /** |
| 93 | + * @remark :查看是否编辑路由 | ||
| 94 | + * @name :editCategoryRoute | ||
| 95 | + * @author :lyh | ||
| 96 | + * @method :post | ||
| 97 | + * @time :2023/9/7 11:05 | ||
| 98 | + */ | ||
| 99 | + public function editNewsRoute($id, $route) | ||
| 100 | + { | ||
| 101 | + //生成一条删除路由记录 | ||
| 102 | + $info = $this->model->read(['id' => $id], ['id', 'route']); | ||
| 103 | + if ($info['route'] != $route) { | ||
| 104 | + $this->addUpdateNotify(RouteMap::SOURCE_MODULE_CATE.$this->param['module_id'],$route); | ||
| 105 | + $this->curlDelRoute(['route'=>$info['route'],'new_route'=>$route]); | ||
| 106 | + } | ||
| 107 | + return true; | ||
| 108 | + } | ||
| 109 | + | ||
| 110 | + /** | ||
| 92 | * @remark :删除数据 | 111 | * @remark :删除数据 |
| 93 | * @name :ModuleDel | 112 | * @name :ModuleDel |
| 94 | * @author :lyh | 113 | * @author :lyh |
| @@ -96,6 +115,10 @@ class CustomModuleCategoryLogic extends BaseLogic | @@ -96,6 +115,10 @@ class CustomModuleCategoryLogic extends BaseLogic | ||
| 96 | * @time :2023/12/4 15:47 | 115 | * @time :2023/12/4 15:47 |
| 97 | */ | 116 | */ |
| 98 | public function customModuleCategoryDel(){ | 117 | public function customModuleCategoryDel(){ |
| 118 | + $info = $this->model->read(['pid' => $this->param['id']], ['id', 'route']); | ||
| 119 | + if($info === false){ | ||
| 120 | + $this->fail('当前分类拥有下级'); | ||
| 121 | + } | ||
| 99 | $rs = $this->model->del($this->param); | 122 | $rs = $this->model->del($this->param); |
| 100 | if($rs === false){ | 123 | if($rs === false){ |
| 101 | $this->fail('系统错误,请连续管理员'); | 124 | $this->fail('系统错误,请连续管理员'); |
-
请 注册 或 登录 后发表评论