BTemplateController.php 3.8 KB
<?php

namespace App\Http\Controllers\Bside\Template;

use App\Enums\Common\Code;
use App\Http\Controllers\Bside\BaseController;
use App\Http\Logic\Bside\BTemplate\BTemplateLogic;
use App\Http\Requests\Bside\Template\TemplateRequest;

class BTemplateController extends BaseController
{
    /**
     * @remark :获取所有公共主题
     * @name   :ATemplateLists
     * @author :lyh
     * @method :post
     * @time   :2023/6/29 9:21
     */
    public function publicTemplateLists(BTemplateLogic $BTemplateLogic){
        $lists = $BTemplateLogic->publicTemplateLists($this->map,$this->page,$this->row,$this->order);
        if(!empty($lists) && !empty($lists['list'])){
            foreach ($lists['list'] as $k => &$v){
                $v['image_link'] = getImageUrl($v['image']);
                $lists['list'][$k] = $v;
            }
        }
        $this->response('success',Code::SUCCESS,$lists);
    }

    /**
     * @remark :获取当前已选择的模板
     * @name   :getModuleTemplate
     * @author :lyh
     * @method :post
     * @time   :2023/6/29 9:40
     */
    public function getPublicTemplate(BTemplateLogic $BTemplateLogic){
        $this->request->validate([
            'source'=>'required',
            'source_id'=>'required',
        ],[
            'source.required' => 'source不能为空',
            'source_id.required' => 'source_id不能为空',
        ]);
        $info = $BTemplateLogic->getTemplate();
        $this->response('success',Code::SUCCESS,$info);
    }

    /**
     * @remark :设置默认模板
     * @name   :setModuleTemplate
     * @author :lyh
     * @method :post
     * @time   :2023/6/29 9:39
     */
    public function setPublicTemplate(BTemplateLogic $BTemplateLogic){
        $this->request->validate([
            'template_id'=>['required'],
        ],[
            'template_id.required' => '模版ID不能为空',
        ]);
        $BTemplateLogic->setTemplate();
        $this->response('success');
    }

    /**
     * @remark :保存编辑后的模板
     * @name   :save
     * @author :lyh
     * @method :post
     * @time   :2023/6/29 10:02
     */
    public function save(TemplateRequest $templateRequest,BTemplateLogic $BTemplateLogic){
        //演示项目,不允许其他号码编辑
        if(($this->user['project_id'] == 1) && ($this->user['mobile'] != '15928018676') && ($this->param['source'] == 1)){
            $this->response('演示项目仅支持演示功能,无法更改首页',Code::USER_ERROR);
        }
        $templateRequest->validated();
        $BTemplateLogic->templateSave();
        $this->response('success');
    }

    /**
     * @remark :可视化装修数据类型设置
     * @name   :moduleSetting
     * @author :lyh
     * @method :post
     * @time   :2023/7/17 15:55
     */
    public function getTypeSetting(BTemplateLogic $BTemplateLogic){
        $list = $BTemplateLogic->getModuleType();
        $this->response('success',Code::SUCCESS,$list);
    }

    /**
     * @remark :公共主题设置公共head
     * @name   :setHead
     * @author :lyh
     * @method :post
     * @time   :2023/7/10 15:30
     */
    public function setHeadFooter(BTemplateLogic $BTemplateLogic){
        $this->request->validate([
            'head'=>'required',
            'footer'=>'required'
        ],[
            'head.required' => 'head不能为空',
            'footer.required' => 'footer不能为空'
        ]);
        $BTemplateLogic->setHeadFooterSave();
        $this->response('success');
    }

    /**
     * @remark :获取公共主题head
     * @name   :getHead
     * @author :lyh
     * @method :post
     * @time   :2023/7/10 15:30
     */
    public function getHeadFooter(BTemplateLogic $BTemplateLogic){
        $info = $BTemplateLogic->getHeadFooterList();
        $this->response('success',Code::SUCCESS,$info);
    }

}