Appointment.php
1.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
<?php
namespace app\api\model;
use think\Model;
/**
* 预约模型
*/
class Appointment extends Model
{
// 开启自动写入时间戳字段
protected $autoWriteTimestamp = 'int';
// 定义时间戳字段名
protected $createTime = 'createtime';
protected $updateTime = 'updatetime';
// 追加属性
protected $append = [];
// 用户
public function user(){
return $this->belongsTo('User');
}
// 医生
public function doctor(){
return $this->belongsTo('Doctor');
}
// 服务种类列表
public function getDeptListAttr($value,$data){
return Dept::where('id','in',$data['dept_ids'])->field('id,name')->select();
}
// 诊断时间
public function getDiagnoseTimeAttr($value,$data){
$diagnose_time = [];
if($data['status'] == '2'){
$last_time = time() - $value;
$diagnose_time = [
'hours' => floor($last_time / 3600),
'minutes' => floor($last_time / 60) % 60,
'seconds' => $last_time % 60
];
}
return $diagnose_time;
}
// 评价
public function appraise(){
return $this->hasOne('AppointmentAppraise');
}
// 预约日期
public function getDateAttr($value,$data){
return date('Y-m-d H:i',$data['date_time']);
}
}