获取问诊订单消息内页基础数据
This commit is contained in:
parent
1befd6a06c
commit
359d9d70b9
@ -23,16 +23,6 @@ class InquiryController extends AbstractController
|
|||||||
*/
|
*/
|
||||||
public function addInquiryOrder(): ResponseInterface
|
public function addInquiryOrder(): ResponseInterface
|
||||||
{
|
{
|
||||||
// $message = new CancelUnpayOrdersDelayDirectProducer(10000);
|
|
||||||
// $message->setDelayMs(10000);
|
|
||||||
// $producer = ApplicationContext::getContainer()->get(Producer::class);
|
|
||||||
// $producer->produce($message);
|
|
||||||
//
|
|
||||||
// $message = new CancelUnpayOrdersDelayDirectProducer(5000);
|
|
||||||
// $message->setDelayMs(5000);
|
|
||||||
// $producer = ApplicationContext::getContainer()->get(Producer::class);
|
|
||||||
// $producer->produce($message);
|
|
||||||
|
|
||||||
$request = $this->container->get(InquiryRequest::class);
|
$request = $this->container->get(InquiryRequest::class);
|
||||||
$request->scene('addInquiryOrder')->validateResolved();
|
$request->scene('addInquiryOrder')->validateResolved();
|
||||||
|
|
||||||
@ -95,6 +85,15 @@ class InquiryController extends AbstractController
|
|||||||
return $this->response->json($data);
|
return $this->response->json($data);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取问诊订单消息内页基础数据
|
||||||
|
* @return ResponseInterface
|
||||||
|
*/
|
||||||
|
public function getInquiryMessageBasic(): ResponseInterface
|
||||||
|
{
|
||||||
|
$InquiryService = new InquiryService();
|
||||||
|
$data = $InquiryService->getInquiryMessageBasic();
|
||||||
|
return $this->response->json($data);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -21,4 +21,15 @@ class MessageNoticeController extends AbstractController
|
|||||||
$data = $MessageNoticeService->getDoctorMessageService();
|
$data = $MessageNoticeService->getDoctorMessageService();
|
||||||
return $this->response->json($data);
|
return $this->response->json($data);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取医生系统公告列表-分页
|
||||||
|
* @return ResponseInterface
|
||||||
|
*/
|
||||||
|
public function getDoctorMessageSystem(): ResponseInterface
|
||||||
|
{
|
||||||
|
$MessageNoticeService = new MessageNoticeService();
|
||||||
|
$data = $MessageNoticeService->getDoctorMessageSystem();
|
||||||
|
return $this->response->json($data);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@ -87,23 +87,15 @@ class MessageNotice extends Model
|
|||||||
/**
|
/**
|
||||||
* 获取数据-分页
|
* 获取数据-分页
|
||||||
* @param array $params
|
* @param array $params
|
||||||
* @param array $message_notice_system_params
|
|
||||||
* @param array $fields
|
* @param array $fields
|
||||||
* @param int|null $page
|
* @param int|null $page
|
||||||
* @param int|null $per_page
|
* @param int|null $per_page
|
||||||
* @return array
|
* @return array
|
||||||
*/
|
*/
|
||||||
public static function getMessageNoticePage(array $params, array $message_notice_system_params, array $fields = ["*"], int $page = null, ?int $per_page = 10): array
|
public static function getMessageNoticePage(array $params, array $fields = ["*"], int $page = null, ?int $per_page = 10): array
|
||||||
{
|
{
|
||||||
// 获取系统消息
|
$results = self::where($params)
|
||||||
$message_notice_system = MessageNoticeSystem::select($fields)->where($message_notice_system_params)->orderBy('notice_send_time', 'desc');
|
->orderBy('notice_send_time')
|
||||||
|
|
||||||
$notice_system = self::select($fields)->where($params)->orderBy('notice_send_time', 'desc');
|
|
||||||
|
|
||||||
// 合并查询结果为一个虚拟表
|
|
||||||
$query = $message_notice_system->union($notice_system);
|
|
||||||
|
|
||||||
$results = $query->orderBy('notice_send_time', 'desc')
|
|
||||||
->paginate($per_page, $fields, "page", $page);
|
->paginate($per_page, $fields, "page", $page);
|
||||||
|
|
||||||
$data = array();
|
$data = array();
|
||||||
|
|||||||
@ -573,6 +573,46 @@ class InquiryService extends BaseService
|
|||||||
return success($result);
|
return success($result);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取问诊订单消息内页基础数据
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
public function getInquiryMessageBasic(): array
|
||||||
|
{
|
||||||
|
$user_info = $this->request->getAttribute("userInfo") ?? [];
|
||||||
|
$order_inquiry_id = $this->request->route('order_inquiry_id');
|
||||||
|
|
||||||
|
$params = array();
|
||||||
|
$params['order_inquiry_id'] = $order_inquiry_id;
|
||||||
|
$order_inquiry = OrderInquiry::getOne($params);
|
||||||
|
if (empty($order_inquiry)) {
|
||||||
|
return fail();
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($order_inquiry['doctor_id'] != $user_info['client_user_id'] || $order_inquiry['patient_id'] != $user_info['client_user_id']){
|
||||||
|
return fail();
|
||||||
|
}
|
||||||
|
|
||||||
|
$params = array();
|
||||||
|
$params['doctor_id'] = $order_inquiry['doctor_id'];
|
||||||
|
$user_doctor = UserDoctor::getOne($params);
|
||||||
|
if (empty($user_doctor)) {
|
||||||
|
return fail();
|
||||||
|
}
|
||||||
|
|
||||||
|
$result = array();
|
||||||
|
$result['doctor_user_id'] = $user_doctor['user_id'];
|
||||||
|
$result['patient_user_id'] = $order_inquiry['user_id'];
|
||||||
|
$result['order_inquiry_id'] = $order_inquiry['order_inquiry_id'];
|
||||||
|
$result['patient_name'] = $order_inquiry['patient_name'];
|
||||||
|
$result['patient_sex'] = $order_inquiry['patient_sex'];
|
||||||
|
$result['patient_age'] = $order_inquiry['patient_age'];
|
||||||
|
$result['inquiry_type'] = $order_inquiry['inquiry_type'];
|
||||||
|
$result['inquiry_status'] = $order_inquiry['inquiry_status'];
|
||||||
|
|
||||||
|
return success($result);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取医生未接诊订单数量
|
* 获取医生未接诊订单数量
|
||||||
* @param string $doctor_id 医生id
|
* @param string $doctor_id 医生id
|
||||||
|
|||||||
@ -27,8 +27,42 @@ class MessageNoticeService extends BaseService
|
|||||||
$params['notice_type'] = 1; // 消息类型(1:医生服务通知 2:医生系统公告 3:患者系统消息
|
$params['notice_type'] = 1; // 消息类型(1:医生服务通知 2:医生系统公告 3:患者系统消息
|
||||||
$params['send_status'] = 1;
|
$params['send_status'] = 1;
|
||||||
|
|
||||||
|
$result = MessageNotice::getMessageNoticePage($params,["*"],$page,$per_page);
|
||||||
|
if (!empty($result['data'])){
|
||||||
|
foreach ($result['data'] as &$item){
|
||||||
|
/**
|
||||||
|
* 处理通知参数(json数据,此字段内容和link_type字段有关联)
|
||||||
|
* link_type
|
||||||
|
* 1(无按钮):空
|
||||||
|
* 2(我的账户):空
|
||||||
|
* 3(联系客服):空
|
||||||
|
* 4(问诊消息):
|
||||||
|
*/
|
||||||
|
$item['notice_params'] = json_decode($item['notice_params']) ?: [];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return success($result);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取医生系统公告列表-分页
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
public function getDoctorMessageSystem(): array
|
||||||
|
{
|
||||||
|
$user_info = $this->request->getAttribute("userInfo") ?? [];
|
||||||
|
|
||||||
|
$page = $this->request->input('page', 1);
|
||||||
|
$per_page = $this->request->input('per_page', 10);
|
||||||
|
|
||||||
|
$params = array();
|
||||||
|
$params['user_id'] = $user_info['user_id'];
|
||||||
|
$params['user_type'] = 2;
|
||||||
|
$params['notice_type'] = 2; // 消息类型(1:医生服务通知 2:医生系统公告 3:患者系统消息
|
||||||
|
$params['send_status'] = 1;
|
||||||
|
|
||||||
$message_notice_system_params = array();
|
$message_notice_system_params = array();
|
||||||
$message_notice_system_params["notice_type"] = 1;
|
$message_notice_system_params["notice_type"] = 2;
|
||||||
$message_notice_system_params["send_status"] = 1;
|
$message_notice_system_params["send_status"] = 1;
|
||||||
|
|
||||||
$fields = [
|
$fields = [
|
||||||
|
|||||||
@ -584,7 +584,6 @@ Router::addGroup('/address', function () {
|
|||||||
Router::delete('/{address_id:\d+}', [UserController::class, 'deleteUserAddress']);
|
Router::delete('/{address_id:\d+}', [UserController::class, 'deleteUserAddress']);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
// 消息通知
|
// 消息通知
|
||||||
Router::addGroup('/message', function () {
|
Router::addGroup('/message', function () {
|
||||||
// 消息已读
|
// 消息已读
|
||||||
@ -594,6 +593,12 @@ Router::addGroup('/message', function () {
|
|||||||
Router::get('/read', [UserDoctorController::class, 'getDoctorCenterInfo']);
|
Router::get('/read', [UserDoctorController::class, 'getDoctorCenterInfo']);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// 问诊订单
|
||||||
|
Router::addGroup('/inquiry', function () {
|
||||||
|
// 获取问诊订单消息内页基础数据
|
||||||
|
Router::get('/message/basic/{order_inquiry_id:\d+}', [InquiryController::class, 'getInquiryMessageBasic']);
|
||||||
|
});
|
||||||
|
|
||||||
// 未开发接口
|
// 未开发接口
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user