|
...
|
...
|
@@ -8,6 +8,7 @@ use App\Models\RouteMap\RouteMap; |
|
|
|
use App\Models\Service\Service as ServiceSettingModel;
|
|
|
|
use App\Models\Template\BCustomTemplate;
|
|
|
|
use App\Models\Template\BTemplateCommon;
|
|
|
|
use App\Models\Template\BTemplateLog;
|
|
|
|
use App\Models\Template\Setting;
|
|
|
|
use App\Models\Template\BTemplate;
|
|
|
|
|
|
...
|
...
|
@@ -94,9 +95,16 @@ class CustomTemplateLogic extends BaseLogic |
|
|
|
$html = $this->param['html'];
|
|
|
|
$info = $this->model->read(['id'=>$this->param['id']],['id','is_visualization','url']);
|
|
|
|
if($info['is_visualization'] == 0 || $info['is_visualization'] == 1){//非定制项目+可视化页面
|
|
|
|
$this->saveCommonTemplate($html);
|
|
|
|
//获取设置的默认模版
|
|
|
|
$bSettingModel = new Setting();
|
|
|
|
$bSettingInfo = $bSettingModel->read(['project_id'=>$this->user['project_id']]);
|
|
|
|
if($bSettingInfo === false){
|
|
|
|
$this->fail('请先选择模版');
|
|
|
|
}
|
|
|
|
$this->saveCommonTemplate($html,$bSettingInfo['template_id']);
|
|
|
|
$this->param['html'] = characterTruncation($html,'/<main\b[^>]*>(.*?)<\/main>/s');
|
|
|
|
$this->param['html_style'] = characterTruncation($html,'/<style id="globalsojs-styles">(.*?)<\/style>/s');
|
|
|
|
$this->setTemplateLog($bSettingInfo['template_id'],$html,$this->param['id']);
|
|
|
|
}
|
|
|
|
$rs = $this->model->edit($this->param,['id'=>$this->param['id']]);
|
|
|
|
if($rs === false){
|
|
...
|
...
|
@@ -108,19 +116,44 @@ class CustomTemplateLogic extends BaseLogic |
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @remark :生成记录
|
|
|
|
* @name :setTemplateLog
|
|
|
|
* @author :lyh
|
|
|
|
* @method :post
|
|
|
|
* @time :2023/8/23 11:16
|
|
|
|
*/
|
|
|
|
public function setTemplateLog($template_id,$html,$source_id){
|
|
|
|
$data = [
|
|
|
|
'template_id'=>$template_id,
|
|
|
|
'project_id'=>$this->user['project_id'],
|
|
|
|
'operator_id'=>$this->user['id'],
|
|
|
|
'text'=>$html,
|
|
|
|
'source'=>9,
|
|
|
|
'source_id'=>$source_id,
|
|
|
|
'head_html'=>characterTruncation($html,'/<header\b[^>]*>(.*?)<\/header>/s'),
|
|
|
|
'head_css'=>characterTruncation($html,'/<style id="globalsojs-header">(.*?)<\/style>/s'),
|
|
|
|
'footer_html'=>characterTruncation($html,'/<footer\b[^>]*>(.*?)<\/footer>/s'),
|
|
|
|
'footer_css'=>characterTruncation($html,'/<style id="globalsojs-footer">(.*?)<\/style>/s'),
|
|
|
|
'main_html' => characterTruncation($html,'/<main\b[^>]*>(.*?)<\/main>/s'),
|
|
|
|
'main_css' => characterTruncation($html,'/<style id="globalsojs-styles">(.*?)<\/style>/s'),
|
|
|
|
'other'=> str_replace('<header','',characterTruncation($html,"/<link id=\"google-fonts-link\"(.*?)<header/s"))
|
|
|
|
];
|
|
|
|
$bTemplateLogModel = new BTemplateLog();
|
|
|
|
return $bTemplateLogModel->add($data);
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @remark :保存头部公共数据
|
|
|
|
* @name :saveCommonTemplate
|
|
|
|
* @author :lyh
|
|
|
|
* @method :post
|
|
|
|
* @time :2023/10/13 14:27
|
|
|
|
*/
|
|
|
|
public function saveCommonTemplate($html){
|
|
|
|
public function saveCommonTemplate($html,$template_id){
|
|
|
|
$type = $this->getType();
|
|
|
|
//获取设置的默认模版
|
|
|
|
$bSettingModel = new Setting();
|
|
|
|
$bSettingInfo = $bSettingModel->read(['project_id'=>$this->user['project_id']]);
|
|
|
|
|
|
|
|
$templateCommonModel = new BTemplateCommon();
|
|
|
|
$info = $templateCommonModel->read(['template_id'=>$bSettingInfo['template_id'],'project_id'=>$this->user['project_id'],'type'=>$type]);
|
|
|
|
$info = $templateCommonModel->read(['template_id'=>$template_id,'project_id'=>$this->user['project_id'],'type'=>$type]);
|
|
|
|
$data = [
|
|
|
|
'head_html'=>characterTruncation($html,'/<header\b[^>]*>(.*?)<\/header>/s'),
|
|
|
|
'head_css'=>characterTruncation($html,'/<style id="globalsojs-header">(.*?)<\/style>/s'),
|
|
...
|
...
|
@@ -129,7 +162,7 @@ class CustomTemplateLogic extends BaseLogic |
|
|
|
];
|
|
|
|
$other = str_replace('<header','',characterTruncation($html,"/<link id=\"google-fonts-link\"(.*?)<header/s"));
|
|
|
|
if($info === false){
|
|
|
|
$data['template_id'] = $bSettingInfo['template_id'];
|
|
|
|
$data['template_id'] = $template_id;
|
|
|
|
$data['project_id'] = $this->user['project_id'];
|
|
|
|
$data['type'] = $type;
|
|
|
|
$templateCommonModel->add($data);
|
...
|
...
|
|