You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

58 lines
1.5 KiB

<?php
namespace App\Models;
class VisitLog extends CommonModel
{
// 日志类型常量
const TYPE_CREATE = 'create'; // 创建申请
const TYPE_UPDATE = 'update'; // 更新申请
const TYPE_AUDIT = 'audit'; // 审核
const TYPE_APPROVE = 'approve'; // 通过
const TYPE_REJECT = 'reject'; // 驳回
const TYPE_ENTER = 'enter'; // 进厂
const TYPE_LEAVE = 'leave'; // 离厂
const TYPE_CANCEL = 'cancel'; // 取消
const TYPE_STUDY = 'study'; // 学习
const TYPE_EXAM = 'exam'; // 考试
protected $guarded = ['id'];
/**
* 创建拜访日志
*/
public static function log($visitId, $type, $remark = '')
{
return self::create([
'visit_id' => $visitId,
'type' => $type,
'remark' => $remark,
'admin_id' => 0, // 系统操作
'department_id' => 0,
'user_id' => 0,
]);
}
public static function add($admin, $user, $visit_id, $remark)
{
return self::create([
'admin_id' => $admin->id ?? 0,
'department_id' => $admin->department_id ?? 0,
'user_id' => $user->id ?? 0,
'visit_id' => $visit_id,
'remark' => $remark
]);
}
public function admin()
{
return $this->hasOne(Admin::class, 'id', 'admin_id');
}
public function user()
{
return $this->hasOne(User::class, 'id', 'user_id');
}
}