更新
This commit is contained in:
@@ -184,6 +184,21 @@ class DiagnosisLists extends BaseAdminDataLists implements ListsSearchInterface
|
||||
->limit($this->limitOffset, $this->limitLength)
|
||||
->select()
|
||||
->toArray();
|
||||
|
||||
// 仅补充已通过权限过滤且落在本页的医助姓名,不依赖调用者拥有后台人员列表权限。
|
||||
$assistantIds = array_values(array_unique(array_filter(array_map(
|
||||
'intval',
|
||||
array_column($lists, 'assistant_id')
|
||||
), static function (int $id): bool {
|
||||
return $id > 0;
|
||||
})));
|
||||
$assistantNames = $assistantIds === []
|
||||
? []
|
||||
: Admin::whereIn('id', $assistantIds)->whereNull('delete_time')->column('name', 'id');
|
||||
foreach ($lists as &$item) {
|
||||
$item['assistant_name'] = trim((string) ($assistantNames[(int) ($item['assistant_id'] ?? 0)] ?? ''));
|
||||
}
|
||||
unset($item);
|
||||
|
||||
// 关联挂号:doctor_appointment.patient_id 存诊单主键 id(与 Appointment 列表 join 一致)
|
||||
$diagnosisIds = array_filter(array_unique(array_column($lists, 'id')));
|
||||
|
||||
Reference in New Issue
Block a user