新增功能

This commit is contained in:
Your Name
2026-03-04 15:32:30 +08:00
parent a07e844c47
commit ab77f5488d
2266 changed files with 177942 additions and 3444 deletions
@@ -0,0 +1,52 @@
<?php
// +----------------------------------------------------------------------
// | likeadmin快速开发前后端分离管理后台(PHP版)
// +----------------------------------------------------------------------
namespace app\common\model\tcm;
use app\common\model\BaseModel;
/**
* 血糖血压记录模型
* Class BloodRecord
* @package app\common\model\tcm
*/
class BloodRecord extends BaseModel
{
protected $name = 'tcm_blood_record';
// 自动时间戳类型设置为整型
protected $autoWriteTimestamp = true;
protected $createTime = 'create_time';
protected $updateTime = 'update_time';
protected $deleteTime = 'delete_time';
// 时间字段取出后的默认时间格式(设置为false表示保持整型)
protected $dateFormat = false;
/**
* @notes 记录日期格式化
* @param $value
* @param $data
* @return string
*/
public function getRecordDateTextAttr($value, $data)
{
return !empty($data['record_date']) ? date('Y-m-d', $data['record_date']) : '';
}
/**
* @notes 血压文本
* @param $value
* @param $data
* @return string
*/
public function getBloodPressureTextAttr($value, $data)
{
if (!empty($data['systolic_pressure']) && !empty($data['diastolic_pressure'])) {
return $data['systolic_pressure'] . '/' . $data['diastolic_pressure'] . ' mmHg';
}
return '';
}
}
@@ -0,0 +1,49 @@
<?php
namespace app\common\model\tcm;
use app\common\model\BaseModel;
/**
* 通话记录模型
* Class CallRecord
* @package app\common\model\tcm
*/
class CallRecord extends BaseModel
{
protected $name = 'tcm_call_record';
/**
* @notes 关联诊单
*/
public function diagnosis()
{
return $this->belongsTo('app\common\model\tcm\Diagnosis', 'diagnosis_id', 'id');
}
/**
* @notes 获取通话类型文本
*/
public function getCallTypeTextAttr($value, $data)
{
$types = [
1 => '语音通话',
2 => '视频通话'
];
return $types[$data['call_type']] ?? '未知';
}
/**
* @notes 获取状态文本
*/
public function getStatusTextAttr($value, $data)
{
$status = [
1 => '进行中',
2 => '已结束',
3 => '未接听',
4 => '已取消'
];
return $status[$data['status']] ?? '未知';
}
}
+80
View File
@@ -0,0 +1,80 @@
<?php
// +----------------------------------------------------------------------
// | likeadmin快速开发前后端分离管理后台(PHP版)
// +----------------------------------------------------------------------
// | 欢迎阅读学习系统程序代码,建议反馈是我们前进的动力
// | 开源版本可自由商用,可去除界面版权logo
// | gitee下载:https://gitee.com/likeshop_gitee/likeadmin
// | github下载:https://github.com/likeshop-github/likeadmin
// | 访问官网:https://www.likeadmin.cn
// | likeadmin团队 版权所有 拥有最终解释权
// +----------------------------------------------------------------------
// | author: likeadminTeam
// +----------------------------------------------------------------------
namespace app\common\model\tcm;
use app\common\model\BaseModel;
/**
* 中医辨房病因诊单模型
* Class Diagnosis
* @package app\common\model\tcm
*/
class Diagnosis extends BaseModel
{
protected $name = 'tcm_diagnosis';
// 自动时间戳类型设置为整型
protected $autoWriteTimestamp = true;
protected $createTime = 'create_time';
protected $updateTime = 'update_time';
protected $deleteTime = 'delete_time';
// 时间字段取出后的默认时间格式(设置为false表示保持整型)
protected $dateFormat = false;
/**
* @notes 性别描述
* @param $value
* @param $data
* @return string
*/
public function getGenderDescAttr($value, $data)
{
return $data['gender'] == 1 ? '男' : '女';
}
/**
* @notes 状态描述
* @param $value
* @param $data
* @return string
*/
public function getStatusDescAttr($value, $data)
{
return $data['status'] == 1 ? '启用' : '禁用';
}
/**
* @notes 诊断日期格式化
* @param $value
* @param $data
* @return string
*/
public function getDiagnosisDateTextAttr($value, $data)
{
return !empty($data['diagnosis_date']) ? date('Y-m-d', $data['diagnosis_date']) : '';
}
/**
* @notes 既往史数组
* @param $value
* @param $data
* @return array
*/
public function getPastHistoryArrAttr($value, $data)
{
return !empty($data['past_history']) ? explode(',', $data['past_history']) : [];
}
}
@@ -0,0 +1,40 @@
<?php
namespace app\common\model\tcm;
use app\common\model\BaseModel;
/**
* 患者TRTC账号模型
* Class PatientTrtc
* @package app\common\model\tcm
*/
class PatientTrtc extends BaseModel
{
protected $name = 'tcm_patient_trtc';
/**
* @notes 关联诊单
*/
public function diagnosis()
{
return $this->hasMany('app\common\model\tcm\Diagnosis', 'patient_id', 'patient_id');
}
/**
* @notes 检查是否过期
*/
public function isExpired(): bool
{
return $this->expire_time > 0 && $this->expire_time < time();
}
/**
* @notes 更新最后登录时间
*/
public function updateLastLogin(): bool
{
$this->last_login_time = time();
return $this->save();
}
}