Files
sbnews/server/app/common/model/popup/PagePopup.php
T
2026-06-11 12:15:29 +08:00

47 lines
1.2 KiB
PHP

<?php
namespace app\common\model\popup;
use app\common\model\BaseModel;
use app\common\service\FileService;
use think\model\concern\SoftDelete;
/**
* 页面弹窗配置模型
*/
class PagePopup extends BaseModel
{
use SoftDelete;
protected $name = 'page_popup';
protected $deleteTime = 'delete_time';
/**
* 完整图片URL
*/
public function getImageAttr($value): string
{
if (empty($value)) return '';
if (preg_match('/^https?:\/\//i', $value)) return $value;
return FileService::getFileUrl($value);
}
public function getPopupTypeTextAttr($value, $data): string
{
$map = [1 => '图片弹窗', 2 => '文字弹窗', 3 => '图文混合'];
return $map[$data['popup_type']] ?? '';
}
public function getLinkTypeTextAttr($value, $data): string
{
$map = [0 => '不跳转', 1 => '站内路径', 2 => '外部H5', 3 => '拨打电话'];
return $map[$data['link_type']] ?? '';
}
public function getFrequencyTextAttr($value, $data): string
{
$map = [1 => '每次', 2 => '每会话一次', 3 => '每天一次', 4 => '仅一次'];
return $map[$data['frequency']] ?? '';
}
}