新增消息通知接口
This commit is contained in:
parent
d2825476d5
commit
caa92df22e
@ -84,4 +84,20 @@ class MessageNoticeController extends AbstractController
|
||||
$data = $MessageNoticeService->getPatientMessageServiceLast();
|
||||
return $this->response->json($data);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取患者服务、福利、退款、物流消息通知列表-分页
|
||||
* @return ResponseInterface
|
||||
* @throws ContainerExceptionInterface
|
||||
* @throws NotFoundExceptionInterface
|
||||
*/
|
||||
public function getPatientMessageSystem(): ResponseInterface
|
||||
{
|
||||
$request = $this->container->get(MessageNoticeRequest::class);
|
||||
$request->scene('getPatientMessageSystem')->validateResolved();
|
||||
|
||||
$MessageNoticeService = new MessageNoticeService();
|
||||
$data = $MessageNoticeService->getPatientMessageSystem();
|
||||
return $this->response->json($data);
|
||||
}
|
||||
}
|
||||
@ -12,6 +12,8 @@ class MessageNoticeRequest extends FormRequest
|
||||
protected array $scenes = [
|
||||
'putMessageRead' => [
|
||||
'notice_type',
|
||||
],
|
||||
'getPatientMessageSystem' => [
|
||||
'notice_system_type',
|
||||
],
|
||||
];
|
||||
@ -31,7 +33,7 @@ class MessageNoticeRequest extends FormRequest
|
||||
{
|
||||
return [
|
||||
'notice_type' => 'required|integer|min:1|max:3',
|
||||
'notice_system_type' => 'required|integer|min:0|max:4',
|
||||
'notice_system_type' => 'required|integer|min:1|max:4',
|
||||
];
|
||||
}
|
||||
|
||||
|
||||
@ -204,6 +204,8 @@ class MessageNoticeService extends BaseService
|
||||
$params['notice_system_type'] = 1; // 系统消息类型(患者端系统消息存在 1:服务消息 2:福利消息 3:退款消息 4:物流消息)
|
||||
$params['send_status'] = 1;
|
||||
$result['service']['info'] = MessageNotice::getOrderOne($params,'notice_send_time',['*']);
|
||||
|
||||
$params['read_status'] = 0;
|
||||
$result['service']['count'] = MessageNotice::getCount($params);
|
||||
|
||||
// 福利消息
|
||||
@ -215,6 +217,8 @@ class MessageNoticeService extends BaseService
|
||||
$params['notice_system_type'] = 2; // 系统消息类型(患者端系统消息存在 1:服务消息 2:福利消息 3:退款消息 4:物流消息)
|
||||
$params['send_status'] = 1;
|
||||
$result['benefit']['info'] = MessageNotice::getOrderOne($params,'notice_send_time',['*']);
|
||||
|
||||
$params['read_status'] = 0;
|
||||
$result['benefit']['count'] = MessageNotice::getCount($params);
|
||||
|
||||
// 退款消息
|
||||
@ -226,6 +230,8 @@ class MessageNoticeService extends BaseService
|
||||
$params['notice_system_type'] = 3; // 系统消息类型(患者端系统消息存在 1:服务消息 2:福利消息 3:退款消息 4:物流消息)
|
||||
$params['send_status'] = 1;
|
||||
$result['refund']['info'] = MessageNotice::getOrderOne($params,'notice_send_time',['*']);
|
||||
|
||||
$params['read_status'] = 0;
|
||||
$result['refund']['count'] = MessageNotice::getCount($params);
|
||||
|
||||
// 物流消息
|
||||
@ -237,8 +243,61 @@ class MessageNoticeService extends BaseService
|
||||
$params['notice_system_type'] = 4; // 系统消息类型(患者端系统消息存在 1:服务消息 2:福利消息 3:退款消息 4:物流消息)
|
||||
$params['send_status'] = 1;
|
||||
$result['logistics']['info'] = MessageNotice::getOrderOne($params,'notice_send_time',['*']);
|
||||
|
||||
$params['read_status'] = 0;
|
||||
$result['logistics']['count'] = MessageNotice::getCount($params);
|
||||
|
||||
return success($result);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取患者服务、福利、退款、物流消息通知列表-分页
|
||||
* @return array
|
||||
*/
|
||||
public function getPatientMessageSystem(): array
|
||||
{
|
||||
$user_info = $this->request->getAttribute("userInfo") ?? [];
|
||||
|
||||
$notice_system_type = $this->request->input('notice_system_type');
|
||||
$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'] = 1;
|
||||
$params['notice_type'] = 3; // 消息类型(1:医生服务通知 2:医生系统公告 3:患者系统消息
|
||||
$params['notice_system_type'] = $notice_system_type; // 系统消息类型(患者端系统消息存在 1:服务消息 2:福利消息 3:退款消息 4:物流消息)
|
||||
$params['send_status'] = 1;
|
||||
|
||||
$fields = [
|
||||
'notice_id',
|
||||
'read_status',
|
||||
'inquiry_type',
|
||||
'from_name',
|
||||
'notice_title',
|
||||
'notice_send_time',
|
||||
'notice_content',
|
||||
'button_type',
|
||||
'link_type',
|
||||
'link_params',
|
||||
'show_type',
|
||||
'show_params',
|
||||
];
|
||||
|
||||
$result = MessageNotice::getMessageNoticePage($params, $fields, $page, $per_page);
|
||||
if (!empty($result['data'])) {
|
||||
foreach ($result['data'] as &$item) {
|
||||
if (!empty($item['link_params'])) {
|
||||
$item['link_params'] = json_decode($item['link_params']);
|
||||
}
|
||||
|
||||
if (!empty($item['show_params'])) {
|
||||
$item['show_params'] = json_decode($item['show_params']);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return success($result);
|
||||
}
|
||||
}
|
||||
@ -400,9 +400,6 @@ Router::addGroup('/patient', function () {
|
||||
|
||||
// 获取患者服务、福利、退款、物流消息通知列表-分页
|
||||
Router::get('/system', [MessageNoticeController::class, 'getPatientMessageSystem']);
|
||||
|
||||
// 获取患者系统通知消息详情
|
||||
Router::get('/system/{notice_id:\d+}', [MessageNoticeController::class, 'getPatientMessageSystemInfo']);
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user