\App\Http\HelpersTemplateType

模板类型注册表(平台级核心——「随处可用」的撑点)。

注册表契约:

  • key :类型标识字符串(SysTemplate::TYPE_EMAIL / TYPE_SMS / 自定义如 'page'), 全站唯一,渲染与编辑逻辑以此判别分支。
  • 值 :{name, editor, escape, has_subject, meta_schema} 声明(见下方字段语义)。
  • 消费方 :TemplateEngineService 的类型清单/渲染调度、管理页类型表单、模板工作区。
  • 扩展 :新增类型 = 在本表 all() 追加一段声明(key + 字段)→ 在 TemplateRenderer 实现该类型渲染/校验逻辑 → 挂上消费点。类型是代码契约(渲染/编辑逻辑必须 代码写死),注册表驱动后新增类型不改管理页。

字段语义:

  • editor 管理页正文控件(html 高亮 / text 纯文本 / 富文本…)——表单自动切换
  • escape 渲染转义策略(true=HTML 类 {{var}} 自动转义 / false=纯文本 noEscape)
  • has_subject 是否有主题字段(邮件/单页有,短信/发票无)——表单自动显隐
  • meta_schema 类型专属扩展字段(落 meta jsonb,新增类型不加列;发票 PDF 样式/单页 SEO…)

展示层(名称/排序/启停)已字典化:types 接口下发时 name 唯一化取自 template_type 字典, 本表声明 name 仅为字典不可用/未登记时的兜底;模板分类(category)走字典(弱标签, 数据驱动即正确)——CATEGORIES 常量是编辑/校验契约。

Summary

Methods
Properties
Constants
all()
get()
has()
No public properties found
No constants found
No protected methods found
No protected properties found
N/A
No private methods found
No private properties found
N/A

Methods

all()

all() : array

全部类型声明(name 为展示名;展示名与 template_type 字典 label 保持一致)。

Returns

array —

get()

get(string  $type) : ?array

按类型取声明,不存在返回 null

Parameters

string $type

Returns

?array —

has()

has(string  $type) : bool

类型是否已声明

Parameters

string $type

Returns

bool —