hospital-applets-api/app/Services/BasicDataService.php

192 lines
4.7 KiB
PHP

<?php
namespace App\Services;
use App\Model\BasicBank;
use App\Model\DiseaseClass;
use App\Model\DiseaseClassExpertise;
use App\Model\Hospital;
use App\Model\HospitalDepartmentCustom;
use App\Model\OperationManual;
/**
* 基础数据服务类
*/
class BasicDataService extends BaseService
{
/**
* 获取医院数据
* @return array
*/
public function getHospital(): array
{
$hospital_name = $this->request->input('hospital_name');
$province_id = $this->request->input('province_id');
$city_id = $this->request->input('city_id');
$county_id = $this->request->input('county_id');
$params = array();
$params[] = ['hospital_status', '=', 1];
if (!empty($hospital_name)) {
$params[] = ['hospital_name', 'like', '%' . $hospital_name . '%'];
}
if (!empty($province_id)) {
$params[] = ['province_id', '=', $province_id];
}
if (!empty($city_id)) {
$params[] = ['city_id', '=', $city_id];
}
if (!empty($county_id)) {
$params[] = ['county_id', '=', $county_id];
}
$fields = [
'hospital_id',
'hospital_name',
];
$hospital = Hospital::getList($params,$fields);
if (empty($hospital)){
return success();
}
return success($hospital->toArray());
}
/**
* 获取自定义科室数据
* @return array
*/
public function getCustomDepartment(): array
{
$params = array();
$params['department_status'] = 1;
$fields = [
'department_custom_id',
'department_custom_name',
];
$hospital_department_custom = HospitalDepartmentCustom::getList($params,$fields);
if (empty($hospital_department_custom)){
return success();
}
return success($hospital_department_custom->toArray());
}
/**
* 获取银行列表
* @return array
*/
public function getBank(): array
{
$basic_bank = BasicBank::getList([]);
if (empty($basic_bank)){
return success();
}
return success($basic_bank->toArray());
}
/**
* 获取操作手册列表
* @return array
*/
public function getOperationManual(): array
{
$fields = [
'manual_id',
'title',
];
$params = array();
$params['status'] = 1;
$operation_manual = OperationManual::getList($params);
if (empty($operation_manual)){
return success();
}
return success($operation_manual->toArray());
}
/**
* 获取操作手册详情
* @return array
*/
public function getOperationManualInfo(): array
{
$manual_id = $this->request->route('manual_id');
$params = array();
$params['manual_id'] = $manual_id;
$params['status'] = 1;
$operation_manual = OperationManual::getOne($params);
if (empty($operation_manual)){
return fail();
}
return success($operation_manual->toArray());
}
/**
* 搜索疾病分类
* @return array
*/
public function getDiseaseSearch(): array
{
$disease_class_name = $this->request->input('disease_class_name');
$fields = [
'disease_class_id',
'disease_class_name',
];
$params = array();
$params[] = ["disease_class_status",1];
$params[] = ["disease_class_enable",1];
$params[] = ['disease_class_name', 'like', '%' . $disease_class_name . '%'];
$disease_class = DiseaseClass::getList($params,$fields);
return empty($disease_class) ? success() : success($disease_class->toArray()) ;
}
/**
* 获取常见疾病分类
* @return array
*/
public function getDiseaseHot(): array
{
$fields = [
'disease_class_id',
'disease_class_name',
];
$params = array();
$params[] = ["disease_class_status",1];
$params[] = ["disease_class_enable",1];
$params[] = ['is_hot', 1];
$disease_class = DiseaseClass::getLimit($params,10,$fields);
return empty($disease_class) ? success() : success($disease_class->toArray()) ;
}
/**
* 专长列表
* @return array
*/
public function getDiseaseExpertiseList(): array
{
$params = array();
$fields = [
'expertise_id',
'expertise_name',
];
$disease_class_expertise = DiseaseClassExpertise::getOrderList($params,$fields);
return success($disease_class_expertise);
}
}