i
This commit is contained in:
gr
2026-10-22 11:12:29 +08:00
480 changed files with 9840 additions and 953 deletions
@@ -16,6 +16,7 @@ namespace app\adminapi\controller;
use app\adminapi\logic\auth\AuthLogic;
use app\adminapi\logic\ConfigLogic;
use app\adminapi\service\DoctorWebConsultationPolicy;
/**
* 配置控制器
@@ -24,7 +25,13 @@ use app\adminapi\logic\ConfigLogic;
*/
class ConfigController extends BaseAdminController
{
public array $notNeedLogin = ['getConfig', 'dict'];
public array $notNeedLogin = ['getConfig', 'dict', 'doctorWebConsultation'];
/** 医生网页面诊迁移时间,只读且免登录,供已打开的网页同步配置。 */
public function doctorWebConsultation()
{
return $this->data(DoctorWebConsultationPolicy::publicPolicy());
}
/**
@@ -58,4 +65,4 @@ class ConfigController extends BaseAdminController
}
}
@@ -25,7 +25,13 @@ use app\adminapi\validate\setting\DesktopWorkstationValidate;
*/
class DesktopWorkstationController extends BaseAdminController
{
public array $notNeedLogin = ['check'];
public array $notNeedLogin = ['check', 'downloads'];
/** @notes 提供已发布的各平台安装包,医生无需系统设置权限即可下载 */
public function downloads()
{
return $this->data(DesktopWorkstationLogic::downloads());
}
/**
* @notes 读取升级策略与安装包
@@ -429,13 +429,17 @@ class DiagnosisController extends BaseAdminController
*/
public function getCallRecords()
{
$params = $this->request->get();
if (empty($params['diagnosis_id'])) {
return $this->fail('诊单ID不能为空');
$rawDiagnosisId = $this->request->get('diagnosis_id', 0);
$diagnosisId = is_int($rawDiagnosisId) || is_string($rawDiagnosisId)
? filter_var($rawDiagnosisId, FILTER_VALIDATE_INT, ['options' => ['min_range' => 1]])
: false;
if ($diagnosisId === false) {
return $this->fail('诊单ID无效');
}
$result = DiagnosisLogic::getCallRecords($params);
if (!DiagnosisLogic::canViewReadonlyDiagnosis($diagnosisId, (int) $this->adminId, $this->adminInfo)) {
return $this->fail(DiagnosisLogic::getError() ?: '诊单不存在或无权访问');
}
$result = DiagnosisLogic::getCallRecords(['diagnosis_id' => $diagnosisId]);
return $this->data($result);
}