1027 lines
39 KiB
PHP

<?php
declare(strict_types=1);
/**
* This file is part of Hyperf.
*
* @link https://www.hyperf.io
* @document https://hyperf.wiki
* @contact group@hyperf.io
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
*/
use App\Controller\AreaController;
use App\Controller\ArticleController;
use App\Controller\BasicDataController;
use App\Controller\CallBackController;
use App\Controller\DetectionController;
use App\Controller\DoctorAccountController;
use App\Controller\DoctorAuthController;
use App\Controller\DoctorInquiryConfigController;
use App\Controller\IndexController;
use App\Controller\InquiryController;
use App\Controller\LoginController;
use App\Controller\CodeController;
use App\Controller\MessageNoticeController;
use App\Controller\OrderServicePackageController;
use App\Controller\PatientCaseController;
use App\Controller\PatientDoctorController;
use App\Controller\PatientFamilyController;
use App\Controller\PatientOrderController;
use App\Controller\PatientPathographyController;
use App\Controller\SafeController;
use App\Controller\SystemController;
use App\Controller\TestController;
use App\Controller\UserController;
use App\Controller\UserDoctorController;
use App\Controller\UserPatientController;
use App\Controller\UserPharmacistController;
use App\Controller\VideoController;
use App\Middleware\Rule\LockRequestMiddleware;
use Hyperf\HttpServer\Router\Router;
/**
* ------------医生端api---------------------
*/
// 医生端api
Router::addGroup('/doctor', function () {
// 首页
Router::get('/index', [IndexController::class, 'doctorIndex']);
// 身份认证
Router::addGroup('/auth', function () {
// 实名认证
Router::addGroup('/real', function () {
// 获取实名认证信息
Router::get('', [DoctorAuthController::class, 'getAuthReal']);
// 新增实名认证
Router::post('', [DoctorAuthController::class, 'addAuthReal']);
});
// 身份认证
Router::addGroup('/iden', function () {
// 获取身份认证信息
Router::get('', [DoctorAuthController::class, 'getAuthIden']);
// 新增身份认证信息
Router::post('', [DoctorAuthController::class, 'addAuthIden'],
[
'middleware' => [LockRequestMiddleware::class] // 锁定重复请求
]
);
// 获取身份认证审核失败原因
Router::get('/reason', [DoctorAuthController::class, 'getIdenAuthFailReason']);
});
// 多点认证
Router::addGroup('/multi', function () {
// 获取多点执业认证信息
Router::get('', [DoctorAuthController::class, 'getAuthMulti']);
// 新增多点执业认证信息
Router::post('', [DoctorAuthController::class, 'addAuthMulti']);
});
// 个人简介
Router::addGroup('/introduction', function () {
// 获取个人简介
Router::get('', [DoctorAuthController::class, 'getDoctorIntroduction']);
// 修改个人简介
Router::put('', [DoctorAuthController::class, 'putDoctorIntroduction']);
// 获取个人简介审核失败原因
Router::get('/reason', [DoctorAuthController::class, 'getDoctorIntroductionFailReason']);
});
});
// 问诊
Router::addGroup('/inquiry', function () {
// 问诊配置
Router::addGroup('/config', function () {
// 问诊服务开关
Router::addGroup('/open', function () {
// 获取医生问诊服务开启状态
Router::get('', [DoctorInquiryConfigController::class, 'getDoctorInquiryConfigOpenStatus']);
// 医生问诊开关
Router::put('', [DoctorInquiryConfigController::class, 'putDoctorInquiryOpen']);
});
// 获取医生问诊配置
Router::get('', [DoctorInquiryConfigController::class, 'getDoctorInquiryConfig']);
// 修改医生问诊配置
Router::put('', [DoctorInquiryConfigController::class, 'putDoctorInquiryConfig']);
// 疑难会诊
Router::addGroup('/difficult', function () {
// 获取医生问诊配置-疑难会诊-服务设置
Router::get('', [DoctorInquiryConfigController::class, 'getDoctorInquiryDifficultConfig']);
// 新增医生问诊配置-疑难会诊-服务设置
Router::post('', [DoctorInquiryConfigController::class, 'addDoctorInquiryDifficultConfig']);
// 修改医生问诊配置-疑难会诊-服务设置
Router::put('/{difficult_consultation_id:\d+}', [DoctorInquiryConfigController::class, 'putDoctorInquiryDifficultConfig']);
});
// 随访包
Router::addGroup('/follow', function () {
// 获取医生问诊配置-随访包
Router::get('', [DoctorInquiryConfigController::class, 'getDoctorInquiryFollowConfig']);
// 新增医生问诊配置-随访包
Router::post('', [DoctorInquiryConfigController::class, 'addDoctorInquiryFollowConfig']);
// 获取医生问诊配置-随访包-列表
Router::get('/item', [DoctorInquiryConfigController::class, 'getDoctorInquiryFollowItemConfig']);
// 修改医生问诊配置-随访包
Router::put('', [DoctorInquiryConfigController::class, 'putDoctorInquiryFollowConfig']);
});
// 健康包
Router::addGroup('/health', function () {
// 获取医生问诊配置-健康包
Router::get('', [DoctorInquiryConfigController::class, 'getDoctorInquiryHealthConfig']);
});
});
// 获取医生问诊消息列表
Router::get('/message', [UserDoctorController::class, 'getDoctorMessageList']);
// 获取医生问诊消息用户属性
Router::post('/message/attr', [UserDoctorController::class, 'getDoctorMessageAttrList']);
// 医生接诊
Router::post('/{order_inquiry_id:\d+}', [UserDoctorController::class, 'addDoctorInquiry'],
[
'middleware' => [LockRequestMiddleware::class] // 锁定重复请求
]
);
// 结束问诊会话列表
Router::get('/finish/message', [InquiryController::class, 'getDoctorFinishMessageList']);
// 医生赠送沟通回合数
Router::post('/give', [InquiryController::class, 'addDoctorGiveInquiryOrder']);
// 视频
Router::addGroup('/video', function () {
// 医生设置视频预约时间
Router::post('/date', [VideoController::class, 'addVideoReservationDate']);
// 创建音视频房间
Router::post('/room', [VideoController::class, 'addVideoRoom']);
});
});
//银行卡
Router::addGroup('/bank', function () {
// 获取医生银行卡
Router::get('', [UserDoctorController::class, 'getDoctorBankCard']);
// 获取绑定银行卡详情信息
Router::get('/info', [UserDoctorController::class, 'getDoctorBankCardInfo']);
// 新增绑定医生银行卡
Router::post('', [UserDoctorController::class, 'addDoctorBankCard']);
// 更换医生银行卡
Router::put('/{bank_card_id:\d+}', [UserDoctorController::class, 'putDoctorBankCard']);
});
// 个人中心
Router::addGroup('/center', function () {
// 获取医生个人中心数据
Router::get('', [UserDoctorController::class, 'getDoctorCenter']);
// 获取医生信息
Router::get('/info', [UserDoctorController::class, 'getDoctorCenterInfo']);
});
// 我的账户
Router::addGroup('/account', function () {
// 获取我的账户数据
Router::get('', [DoctorAccountController::class, 'getDoctorAccount']);
// 获取我的账户月账单明细数据
Router::get('/info', [DoctorAccountController::class, 'getDoctorAccountInfo']);
});
// 提现
Router::addGroup('/withdrawal', function () {
// 获取提现数据
Router::post('/info', [DoctorAccountController::class, 'getDoctorWithdrawalInfo']);
// 获取可提现订单列表
Router::get('/order', [DoctorAccountController::class, 'getDoctorWithdrawalOrderList']);
// 获取医生提现记录列表
Router::get('/record', [DoctorAccountController::class, 'getDoctorWithdrawalRecordList']);
// 发起提现
Router::post('', [DoctorAccountController::class, 'addDoctorWithdrawal'],
[
'middleware' => [LockRequestMiddleware::class] // 锁定重复请求
]
);
});
// 订单
Router::addGroup('/order', function () {
// 获取提现数据
Router::get('/inquiry', [DoctorAccountController::class, 'getDoctorWithdrawal']);
});
// 处方
Router::addGroup('/prescription', function () {
// 获取处方列表
Router::get('', [UserDoctorController::class, 'getPrescriptionList']);
// 获取处方详情
Router::get('/info', [UserDoctorController::class, 'getPrescriptionInfo']);
// 修改处方
Router::put('', [UserDoctorController::class, 'putPrescription']);
// 新增处方
Router::post('', [UserDoctorController::class, 'addPrescription']);
// 检测是否可以开具处方
Router::get('/check', [UserDoctorController::class, 'checkOpenPrescription']);
});
// 常用语
Router::addGroup('/words', function () {
// 获取常用语列表
Router::get('', [UserDoctorController::class, 'getDoctorWords']);
// 新增常用语列表
Router::post('', [UserDoctorController::class, 'addDoctorWords']);
// 删除常用语列表
Router::delete('/{doctor_words_id:\d+}', [UserDoctorController::class, 'deleteDoctorWords']);
});
// 医生数据
Router::addGroup('/info', function () {
// 获取医生证书信息
Router::get('/cret', [UserDoctorController::class, 'getDoctorCret']);
// 获取医生专长列表-身份认证
Router::get('/expertise', [UserDoctorController::class, 'getAuthDoctorExpertise']);
// 获取医生名片
Router::get('/card', [UserDoctorController::class, 'getDoctorInfoCard']);
// 个人简介
Router::addGroup('/brief', function () {
// 获取医生个人简介数据
Router::get('', [UserDoctorController::class, 'getDoctorBrief']);
});
});
// 消息通知
Router::addGroup('/message', function () {
// 获取医生消息页通知数据
Router::get('/notice', [MessageNoticeController::class, 'getDoctorMessageNotice']);
// 获取医生服务消息列表-分页
Router::get('/service', [MessageNoticeController::class, 'getDoctorMessageService']);
// 获取医生系统公告列表-分页
Router::get('/system', [MessageNoticeController::class, 'getDoctorMessageSystem']);
// 获取医生系统公告详情
Router::get('/system/{notice_id:\d+}', [MessageNoticeController::class, 'getDoctorMessageSystemInfo']);
});
});
/**
* ------------患者端api---------------------
*/
// 患者端api
Router::addGroup('/patient', function () {
// 首页
Router::get('/index', [IndexController::class, 'patientIndex']);
// 个人中心
Router::addGroup('/center', function () {
// 获取患者个人中心数据
Router::get('', [UserPatientController::class, 'getPatientCenter']);
// 获取患者信息
Router::get('/info', [UserPatientController::class, 'getPatientCenterInfo']);
});
// 我的福利
Router::addGroup('/coupon', function () {
// 获取患者优惠卷列表
Router::get('', [UserPatientController::class, 'getPatientCouponList']);
});
// 问诊
Router::addGroup('/inquiry', function () {
// 创建问诊订单
Router::post('', [InquiryController::class, 'addInquiryOrder'],
[
'middleware' => [LockRequestMiddleware::class] // 锁定重复请求
]
);
// 检测是否可以接诊
Router::get('/check', [PatientDoctorController::class, 'getDoctorInquiryCheck']);
// 检测快速、购药订单分配医生状态
Router::get('/assign/{order_inquiry_id:\d+}', [InquiryController::class, 'getInquiryAssign']);
// 新增问诊评价
Router::post('/evaluation', [InquiryController::class, 'addInquiryEvaluation']);
// 获取订单问诊评价详情
Router::get('/evaluation/{order_inquiry_id:\d+}', [InquiryController::class, 'getInquiryEvaluation']);
// 获取问诊最低价格
Router::get('/lowest-price', [InquiryController::class, 'getInquiryLowestPrice']);
});
// 检测
Router::addGroup('/detection', function () {
// 创建检测订单
Router::post('', [DetectionController::class, 'addDetectionOrder'],
[
'middleware' => [LockRequestMiddleware::class] // 锁定重复请求
]
);
// 获取患者进行中的检测订单
Router::get('', [DetectionController::class, 'getDetectionOrderFirst']);
// 绑定检测管
Router::put('/bind/{order_detection_id:\d+}', [DetectionController::class, 'bindDetectionTube']);
// 获取检测机构合作医生列表
Router::get('/doctor', [DetectionController::class, 'getDetectionDoctorList']);
// 检测项目
Router::addGroup('/project', function () {
// 获取合作公司检测项目列表
Router::get('', [DetectionController::class, 'getDetectionProjectList']);
// 获取合作公司检测项目详情
Router::get('/{detection_project_id:\d+}', [DetectionController::class, 'getDetectionProject']);
// 获取检测项目用途列表
Router::get('/purpose', [DetectionController::class, 'getDetectionProjectPurposeList']);
});
// 创建检测问诊订单
Router::post('/inquiry/{order_detection_id:\d+}', [DetectionController::class, 'addDetectionInquiryOrder'],
[
'middleware' => [LockRequestMiddleware::class] // 锁定重复请求
]
);
});
// 医生数据
Router::addGroup('/doctor', function () {
// 获取医生列表-问诊
Router::get('/inquiry', [PatientDoctorController::class, 'getInquiryDoctorList']);
// 医生详情简介-详情中的简介-废弃
Router::get('/profile/{doctor_id:\d+}', [PatientDoctorController::class, 'getDoctorProfile']);
// 删除服务过患者的医生
Router::delete('/history/{doctor_id:\d+}', [UserPatientController::class, 'deletePatientDoctor']);
// 获取我的问诊、关注医生列表
Router::get('/my', [PatientDoctorController::class, 'getDoctorList']);
// 获取我历史问诊医生列表
Router::get('/history', [PatientDoctorController::class, 'getHistoryDoctorList']);
// 获取医生评价
Router::get('/evaluation/{doctor_id:\d+}', [PatientDoctorController::class, 'getDoctorEvaluationList']);
// 新增关注医生
Router::post('/follow/{doctor_id:\d+}', [PatientDoctorController::class, 'addDoctorFollow']);
// 取消关注医生
Router::delete('/follow/{doctor_id:\d+}', [PatientDoctorController::class, 'deleteDoctorFollow']);
});
// 家庭成员
Router::addGroup('/family', function () {
// 获取家庭成员病例数据
Router::get('/case/{family_id:\d+}', [PatientFamilyController::class, 'getFamilyCase']);
// 获取家庭成员列表
Router::get('', [PatientFamilyController::class, 'getFamilyList']);
// 新增家庭成员
Router::post('', [PatientFamilyController::class, 'addFamily']);
// 修改家庭成员
Router::put('/{family_id:\d+}', [PatientFamilyController::class, 'editFamily']);
// 删除家庭成员
Router::delete('/{family_id:\d+}', [PatientFamilyController::class, 'deleteFamily']);
// 获取家庭成员详情
Router::get('/{family_id:\d+}', [PatientFamilyController::class, 'getFamily']);
// 个人情况
Router::addGroup('/personal', function () {
// 获取家庭成员详情-个人情况
Router::get('/{family_id:\d+}', [PatientFamilyController::class, 'getFamilyPersonal']);
// 修改家庭成员-个人情况
Router::put('/{family_personal_id:\d+}', [PatientFamilyController::class, 'editFamilyPersonal']);
// 新增家庭成员-个人情况
Router::post('', [PatientFamilyController::class, 'addFamilyPersonal']);
});
// 健康情况
Router::addGroup('/health', function () {
// 获取家庭成员-健康状况
Router::get('/{family_id:\d+}', [PatientFamilyController::class, 'getFamilyHealth']);
// 修改家庭成员-健康情况
Router::put('/{family_health_id:\d+}', [PatientFamilyController::class, 'editFamilyHealth']);
// 新增家庭成员-健康情况
Router::post('', [PatientFamilyController::class, 'addFamilyHealth']);
});
// 用药记录
Router::addGroup('/product', function () {
// 获取家庭成员用药记录列表
Router::get('/record', [PatientFamilyController::class, 'getFamilyProductRecord']);
});
});
// 药品
Router::addGroup('/product', function () {
// 购物车
Router::addGroup('/shopping', function () {
// 获取购物车药品数据
Router::get('/cart', [UserPatientController::class, 'getShoppingCart']);
// 修改购物车药品数据
Router::put('/cart', [UserPatientController::class, 'putShoppingCart']);
});
});
// 订单
Router::addGroup('/order', function () {
// 问诊订单
Router::addGroup('/inquiry', function () {
// 获取患者问诊订单列表
Router::get('', [PatientOrderController::class, 'getPatientInquiryOrderList']);
// 获取患者问诊订单详情
Router::get('/{order_inquiry_id:\d+}', [PatientOrderController::class, 'getPatientInquiryOrderInfo']);
// 删除问诊订单-1:待支付 5:已完成
Router::delete('/{order_inquiry_id:\d+}', [PatientOrderController::class, 'deletePatientInquiryOrder']);
// 取消问诊订单-1:待支付 2:待分配 3:待接诊
Router::put('/cancel/{order_inquiry_id:\d+}', [PatientOrderController::class, 'putCancelPatientInquiryOrder']);
// 问诊订单取消支付-1未支付
Router::put('/cancel-pay/{order_inquiry_id:\d+}', [PatientOrderController::class, 'putPatientInquiryOrderCancelPay']);
});
// 药品订单
Router::addGroup('/product', function () {
// 获取药品订单列表
Router::get('', [PatientOrderController::class, 'getPatientProductOrderList']);
// 获取药品订单详情
Router::get('/{order_product_id:\d+}', [PatientOrderController::class, 'getPatientProductOrderInfo']);
// 药品订单取消支付
Router::put('/cancel-pay/{order_product_id:\d+}', [PatientOrderController::class, 'putPatientProductOrderCancelPay']);
// 删除药品订单
Router::delete('/{order_product_id:\d+}', [PatientOrderController::class, 'deletePatientProductOrder']);
// 创建药品订单
Router::post('', [PatientOrderController::class, 'addPatientProductOrder']);
// 获取药品订单物流数据
Router::get('/logistics/{order_product_id:\d+}', [PatientOrderController::class, 'getPatientProductOrderLogistics']);
});
// 处方订单
Router::addGroup('/prescription', function () {
// 获取处方订单列表
Router::get('', [PatientOrderController::class, 'getPatientPrescriptionOrderList']);
// 获取处方订单详情
Router::get('/{order_prescription_id:\d+}', [PatientOrderController::class, 'getPatientPrescriptionOrderInfo']);
// 获取处方订单支付页详情
Router::get('/pay/{order_prescription_id:\d+}', [PatientOrderController::class, 'getPatientPrescriptionOrderPayInfo']);
// 删除处方订单记录
Router::delete('/{order_prescription_id:\d+}', [PatientOrderController::class, 'deletePatientPrescriptionOrder']);
});
// 检测订单
Router::addGroup('/detection', function () {
// 获取患者检测订单列表
Router::get('', [PatientOrderController::class, 'getPatientDetectionOrderList']);
// 获取患者检测订单详情
Router::get('/{order_no}', [PatientOrderController::class, 'getPatientDetectionOrderInfo']);
// 删除检测订单
Router::delete('/{order_detection_id:\d+}', [PatientOrderController::class, 'deletePatientDetectionOrder']);
// 取消检测订单
Router::put('/cancel/{order_detection_id:\d+}', [PatientOrderController::class, 'putCancelPatientDetectionOrder']);
// 检测订单取消支付
Router::put('/cancel-pay/{order_detection_id:\d+}', [PatientOrderController::class, 'putPatientDetectionOrderCancelPay']);
});
// 服务包订单
Router::addGroup('/service', function () {
// 服务包订单取消支付-1未支付
Router::put('/cancel-pay/{order_no}', [PatientOrderController::class, 'putPatientServiceOrderCancelPay']);
// 获取患者服务包订单列表
Router::get('', [PatientOrderController::class, 'getPatientServiceOrderList']);
// 获取患者服务包订单详情
Router::get('/{order_no}', [PatientOrderController::class, 'getPatientServiceOrderInfo']);
// 获取患者服务包订单服务权益详情
Router::get('/detail/{order_no}', [PatientOrderController::class, 'getPatientServiceOrderDetailInfo']);
});
// 获取患者订单支付数据
Router::get('/pay', [PatientOrderController::class, 'getPatientOrderPayInfo']);
// 模拟支付成功-金额为0时使用
Router::post('/pay', [PatientOrderController::class, 'addPatientOrderPay']);
// 订单取消支付-1未支付
Router::put('/cancel-pay/{order_no}', [PatientOrderController::class, 'putPatientOrderCancelPay']);
// 取消订单-问诊/检测/服务包
Router::put('/cancel/{order_no}', [PatientOrderController::class, 'putCancelPatientOrder']);
});
// 消息通知
Router::addGroup('/message', function () {
// 获取患者系统消息通知列表
Router::get('/system/list-last', [MessageNoticeController::class, 'getPatientMessageServiceListLast']);
// 获取患者服务、福利、退款、物流消息通知列表-分页
Router::get('/system', [MessageNoticeController::class, 'getPatientMessageSystem']);
// 获取患者系统消息通知最后一条消息
Router::get('/system/last', [MessageNoticeController::class, 'getPatientMessageServiceLast']);
});
// 病情记录
Router::addGroup('/pathography', function () {
// 检测家庭成员是否存在病情记录
Router::get('/exist', [PatientPathographyController::class, 'existFamilyPathography']);
// 获取家庭成员病情记录列表-分页
Router::get('', [PatientPathographyController::class, 'getFamilyPathographyPage']);
// 获取家庭成员病情记录详情
Router::get('/{pathography_id:\d+}', [PatientPathographyController::class, 'getFamilyPathographyInfo']);
// 获取家庭成员病情记录分组
Router::get('/group', [PatientPathographyController::class, 'getFamilyPathographyGroup']);
// 删除家庭成员病情记录
Router::delete('/{pathography_id:\d+}', [PatientPathographyController::class, 'deleteFamilyPathography']);
});
// 服务包
Router::addGroup('/service', function () {
// 获取患者已购买的某医生的服务包详情
Router::get('/detail', [OrderServicePackageController::class, 'getPatientBuyServiceDetail']);
// 创建服务包订单
Router::post('', [OrderServicePackageController::class, 'addPatientServiceOrder']);
// 创建服务包问诊订单
Router::post('/inquiry/{order_no}', [OrderServicePackageController::class, 'addServiceInquiryOrder']);
// 检测是否可创建服务包问诊订单
Router::get('/check/{order_no}', [OrderServicePackageController::class, 'getServicePackageInquiryCheck']);
});
// 文章
Router::addGroup('/article', function () {
// 科普文章
Router::addGroup('/science', function () {
// 获取科普文章列表-分页
Router::get('', [ArticleController::class, 'getArticleSciencePage']);
// 获取科普文章列表
Router::get('/list', [ArticleController::class, 'getArticleScienceList']);
});
});
});
// 药师端api
Router::addGroup('/pharmacist', function () {
// 首页
Router::get('/index', [IndexController::class, 'pharmacistIndex']);
// 设置上下线
Router::put('/on-off', [UserPharmacistController::class, 'putOnOff']);
// 处方
Router::addGroup('/prescription', function () {
// 获取药师审核处方列表
Router::get('', [UserPharmacistController::class, 'getPrescriptionList']);
// 获取处方详情
Router::get('/info/{order_prescription_id:\d+}', [UserPharmacistController::class, 'getPrescriptionInfo']);
// 审核处方
Router::put('/verify/{order_prescription_id:\d+}', [UserPharmacistController::class, 'putPrescriptionVerify']);
});
// 药师基本资料
Router::get('/info', [UserPharmacistController::class, 'getPharmacistInfo']);
});
/**
* ------------公共api---------------------
*/
// 登陆api
Router::addGroup('/login', function () {
// 微信登陆
Router::post('/wechat_mobile_login', [LoginController::class, 'wechatMobileLogin']);
// 手机号登陆
Router::post('/mobile_login', [LoginController::class, 'mobileLogin']);
// 微信授权接口
Router::post('/authorize', [LoginController::class, 'wxAuthorize']);
});
// 验证码api
Router::addGroup('/code', function () {
// 获取手机号验证码
Router::post('/phone', [CodeController::class, 'getPhoneCode']);
});
// 省市区
Router::addGroup('/area', function () {
// 获取省份信息
Router::get('/province', [AreaController::class, 'getProvince']);
// 获取城市信息
Router::get('/city', [AreaController::class, 'getCity']);
// 获取区县信息
Router::get('/county', [AreaController::class, 'getCounty']);
});
// 签名
Router::addGroup('/sign', function () {
// 获取oss签名数据
Router::get('/oss', [SafeController::class, 'getOssSign']);
// 获取im签名数据
Router::get('/im', [SafeController::class, 'getImSign']);
// 获取音视频签名数据
Router::get('/video', [SafeController::class, 'getVideoSign']);
});
// 基础数据
Router::addGroup('/basic', function () {
// 获取医院数据
Router::get('/hospital', [BasicDataController::class, 'getHospital']);
// 获取自定义科室数据
Router::get('/department', [BasicDataController::class, 'getCustomDepartment']);
// 获取银行列表
Router::get('/bank', [BasicDataController::class, 'getBank']);
// 获取操作手册列表
Router::get('/operation/manual', [BasicDataController::class, 'getOperationManual']);
// 获取操作手册详情
Router::get('/operation/manual/{manual_id:\d+}', [BasicDataController::class, 'getOperationManualInfo']);
// 获取协议内容
Router::get('/agreement/{agreement_id:\d+}', [BasicDataController::class, 'getAgreementInfo']);
// 自定义疾病分类
Router::addGroup('/disease', function () {
// 搜索疾病分类
Router::get('/search', [BasicDataController::class, 'getDiseaseSearch']);
// 获取常见疾病分类
Router::get('/hot', [BasicDataController::class, 'getDiseaseHot']);
// 获取疾病专长列表
// 搜索使用
Router::get('/expertise', [BasicDataController::class, 'getDiseaseExpertiseList']);
});
// 平台疾病分类
Router::addGroup('/icd', function () {
// 搜索平台疾病分类
Router::get('/search', [BasicDataController::class, 'getDiseaseIcdSearch']);
});
// 商品
Router::addGroup('/product', function () {
// 搜索商品
Router::get('/search', [BasicDataController::class, 'getProductSearch']);
// 获取商品数据-分页
Router::get('', [BasicDataController::class, 'getProductPage']);
});
// 获取民族数据
Router::get('/nation', [BasicDataController::class, 'getNation']);
// 获取职业数据
Router::get('/job', [BasicDataController::class, 'getJob']);
// 获取医生职称数据
Router::get('/doctor/title', [BasicDataController::class, 'getDoctorTitle']);
// 获取热门搜索关键词
Router::get('/keyword/search', [BasicDataController::class, 'getHotSearchKeyword']);
// 获取检测疾病分类列表
Router::get('/detection/disease', [BasicDataController::class, 'getDetectionDiseaseList']);
});
// 获取医生评价
Router::get('/evaluation', [UserDoctorController::class, 'getDoctorEvaluationList']);
// 系统配置
Router::addGroup('/system', function () {
// 问诊
Router::addGroup('/inquiry', function () {
// 获取系统问诊时间 快速问诊-问诊购药
Router::get('/time', [SystemController::class, 'getSystemInquiryTime']);
// 获取系统问诊配置
Router::get('/config', [SystemController::class, 'getSystemInquiryConfig']);
});
});
// 回调
Router::addGroup('/callback', function () {
// 支付回调
Router::addGroup('/wxpay', function () {
// 问诊
Router::addGroup('/inquiry', function () {
// 支付成功回调
Router::post('/success', [CallBackController::class, 'wxPayInquirySuccessCallBack']);
// 退款回调
Router::post('/refund', [CallBackController::class, 'wxPayInquiryRefundCallBack']);
});
// 药品
Router::addGroup('/product', function () {
// 支付成功回调
Router::post('/success', [CallBackController::class, 'wxPayProductSuccessCallBack']);
// 退款回调
Router::post('/refund', [CallBackController::class, 'wxPayProductRefundCallBack']);
});
// 检测
Router::addGroup('/detection', function () {
// 支付成功回调
Router::post('/success', [CallBackController::class, 'wxPayDetectionSuccessCallBack']);
// 退款回调
Router::post('/refund', [CallBackController::class, 'wxPayDetectionRefundCallBack']);
});
// 服务包
Router::addGroup('/service', function () {
// 支付成功回调
Router::post('/success', [CallBackController::class, 'wxPayServiceSuccessCallBack']);
// 退款回调
Router::post('/refund', [CallBackController::class, 'wxPayServiceRefundCallBack']);
});
});
// im聊天回调
Router::post('/im', [CallBackController::class, 'imCallBack']);
// 音视频回调
Router::addGroup('/video', function () {
// 房间与媒体
Router::post('/trtc', [CallBackController::class, 'videoTrtcCallBack']);
// 云端录制
Router::post('/recording', [CallBackController::class, 'videoRecordingCallBack']);
});
// 处方平台物流回调
Router::post('/platform/logistics', [CallBackController::class, 'platformLogisticsCallBack']);
// 快递订阅回调
Router::addGroup('/logistics', function () {
// 快递订阅查询
Router::post('', [CallBackController::class, 'LogisticsCallBack']);
});
// 检测
Router::addGroup('/detection', function () {
// 检测所结果回调
Router::post('', [CallBackController::class, 'DetectionResultCallBack']);
});
});
// 用户
Router::addGroup('/user', function () {
// 修改用户头像
Router::put('/avatar', [UserController::class, 'putUserAvatar']);
// 修改用户名
Router::put('/name', [UserController::class, 'putUserName']);
// 退出登陆
Router::put('/loginout', [UserController::class, 'putLoginout']);
// 上报用户地址
Router::post('/location', [UserController::class, 'postLocation']);
// 获取用户地址
Router::get('/location', [UserController::class, 'getLocation']);
// 获取用户配置
Router::get('/system', [UserController::class, 'getUserSystem']);
// 修改用户配置
Router::put('/system', [UserController::class, 'putUserSystem']);
});
// 病例
Router::addGroup('/case', function () {
// 获取问诊订单病例详情-基础
Router::get('/inquiry/simple', [PatientCaseController::class, 'getPatientFamilyInquiryCaseSimple']);
// 获取问诊订单病例详情
Router::get('/inquiry', [PatientCaseController::class, 'getPatientFamilyInquiryCase']);
// 获取服务包订单病例详情-基础
Router::get('/service/simple/{order_no}', [PatientCaseController::class, 'getPatientFamilyServiceCaseSimple']);
// 获取服务包订单病例详情
Router::get('/service/{order_no}', [PatientCaseController::class, 'getPatientFamilyServiceCase']);
// 病例未填字段
Router::addGroup('/fields', function () {
// 获取问诊订单病例缺少字段
Router::get('/unfilled', [PatientCaseController::class, 'getPatientFamilyInquiryCaseUnfilledFields']);
// 医生发送缺少字段至患者
Router::post('/doctor', [PatientCaseController::class, 'sendCaseUnfilledFieldsToPatient']);
// 患者填写缺少字段至医生
Router::post('/patient', [PatientCaseController::class, 'sendCaseUnfilledFieldsToDoctor']);
});
});
// 测试使用
Router::addGroup('/test', function () {
Router::get('', [TestController::class, 'test']);
// 获取未接诊的医生
Router::get('/uninquiry', [TestController::class, 'uninquiry']);
// 模拟退款
// Router::post('/refund', [TestController::class, 'refund']);
});
// 地址管理
Router::addGroup('/address', function () {
// 获取用户收获地址列表
Router::get('', [UserController::class, 'getUserAddress']);
// 获取用户收获地址详情
Router::get('/{address_id:\d+}', [UserController::class, 'getUserAddressInfo']);
// 添加用户收获地址
Router::post('', [UserController::class, 'addUserAddress']);
// 修改用户收获地址
Router::put('/{address_id:\d+}', [UserController::class, 'putUserAddress']);
// 删除用户收获地址
Router::delete('/{address_id:\d+}', [UserController::class, 'deleteUserAddress']);
});
// 消息
Router::addGroup('/message', function () {
// 消息通知
Router::addGroup('/notice', function () {
// 消息已读
Router::put('/read/{notice_id:\d+}', [MessageNoticeController::class, 'putMessageReadId']);
// 一键消息已读
Router::put('/read', [MessageNoticeController::class, 'putMessageRead']);
});
});
// 问诊订单
Router::addGroup('/inquiry', function () {
// 获取问诊订单消息内页基础数据
// Router::get('/message/basic/{order_inquiry_id:\d+}', [InquiryController::class, 'getInquiryMessageBasic']);
// 结束问诊
Router::put('/finish/{order_inquiry_id:\d+}', [InquiryController::class, 'putFinishInquiry']);
// 获取患者最后一条问诊订单id
Router::get('/last', [InquiryController::class, 'getPatientLastInquiryId']);
// 获取视频问诊消息内页基础数据
// Router::put('/message/{order_inquiry_id:\d+}', [InquiryController::class, 'putFinishInquiry']);
});
// 聊天
Router::addGroup('/im', function () {
// 问诊订单
Router::addGroup('/inquiry', function () {
// 问诊订单
Router::addGroup('/basic', function () {
// 获取问诊订单消息内页基础数据
Router::get('/{order_inquiry_id:\d+}', [InquiryController::class, 'getInquiryMessageBasic']);
// 获取视频问诊消息内页基础数据
Router::get('/video/{order_inquiry_id:\d+}', [InquiryController::class, 'getInquiryVideoMessageBasic']);
// 获取服务包关联问诊订单消息内页基础数据
Router::get('/service/{order_inquiry_id:\d+}', [InquiryController::class, 'getInquiryServiceMessageBasic']);
});
});
});
// 获取弹窗数据
Router::get('/popup', [UserController::class, 'getUserPopup']);
// 病情记录
Router::addGroup('/pathography', function () {
// 检测家庭成员是否存在病情记录
Router::get('/exist', [PatientPathographyController::class, 'existFamilyPathography']);
// 获取家庭成员病情记录列表-分页
Router::get('', [PatientPathographyController::class, 'getFamilyPathographyPage']);
// 获取家庭成员病情记录详情
Router::get('/{pathography_id:\d+}', [PatientPathographyController::class, 'getFamilyPathographyInfo']);
// 获取家庭成员病情记录分组
Router::get('/group', [PatientPathographyController::class, 'getFamilyPathographyGroup']);
// 删除家庭成员病情记录
Router::delete('/{pathography_id:\d+}', [PatientPathographyController::class, 'deleteFamilyPathography']);
});
// 医生数据
Router::addGroup('/doctor', function () {
// 详情
Router::addGroup('/info', function () {
// 获取医生详情-问诊
Router::get('/inquiry/{doctor_id:\d+}', [UserDoctorController::class, 'getDoctorInfoInquiry']);
});
// 问诊
Router::addGroup('/inquiry', function () {
// 服务
Router::addGroup('/service', function () {
// 获取医生开启的服务列表
Router::get('/{doctor_id:\d+}', [UserDoctorController::class, 'getDoctorOpenInquiryService']);
// 随访包
Router::addGroup('/follow', function () {
// 获取医生问诊配置-随访包-列表
Router::get('/item/{doctor_id:\d+}', [DoctorInquiryConfigController::class, 'getDoctorInquiryFollowItemConfig']);
});
});
});
});