Files
ulthon_admin/extend/base/admin/model/SystemNoticeTargetBase.php
2026-10-12 10:53:00 +00:00

72 lines
2.1 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
namespace base\admin\model;
use app\common\model\TimeModel;
/**
* @property int $id
* @property int $notice_id 通知ID
* @property int $admin_id 接收管理员ID
* @property string $channel 投递渠道
* @property string $target_addr 投递目标地址
* @property int $status 状态 0:待发,1:发送中,2:成功,3:失败
* @property int $send_time 发送时间
* @property int $read_time 阅读时间
* @property int $claim_time 抢占时间
* @property string $claim_token 抢占令牌
* @property int $retry_count 重试次数
* @property int $next_retry_time 下次重试时间
* @property string $error_message 错误信息
* @property int $create_time 创建时间
* @property int $update_time 更新时间
* @property \app\admin\model\SystemNotice|null $notice 所属通知
* @property \app\admin\model\SystemAdmin|null $admin 接收管理员
*/
class SystemNoticeTargetBase extends TimeModel
{
/**
* 投递状态:待发送(队列候选,消费者按 (status,id) 索引抢占).
*/
public const STATUS_PENDING = 0;
/**
* 投递状态:发送中(已被消费者原子抢占,超时由回收任务重置回待发送).
*/
public const STATUS_SENDING = 1;
/**
* 投递状态:发送成功(终态).
*/
public const STATUS_SUCCESS = 2;
/**
* 投递状态:发送失败(终态,可人工重发回置待发送).
*/
public const STATUS_FAILED = 3;
/**
* 表无 delete_time 字段,显式关闭软删作用域.
* @var bool
*/
protected $deleteTime = false;
/**
* 所属通知.
*/
public function notice()
{
return $this->belongsTo('app\admin\model\SystemNotice', 'notice_id', 'id');
}
/**
* 接收管理员.
* 仅按需显式调用时才查询;列表页请勿用 withJoin 预载
* (system_admin 与主表存在 id/status 等同名字段,join 会产生歧义)。
*/
public function admin()
{
return $this->belongsTo('app\admin\model\SystemAdmin', 'admin_id', 'id');
}
}