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'] = 1; // 消息类型(1:医生服务通知 2:医生系统公告 3:患者系统消息 $params['send_status'] = 1; $fields = [ 'notice_id', 'read_status', '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); } /** * 获取医生系统公告列表-分页 * @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; $fields = [ 'notice_id', 'read_status', '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'], true); } if (!empty($item['show_params'])) { $item['show_params'] = json_decode($item['show_params'], true); } } } return success($result); } /** * 获取医生系统公告详情 * @return array */ public function getDoctorMessageSystemInfo(): array { $user_info = $this->request->getAttribute("userInfo") ?? []; $notice_id = $this->request->route('notice_id'); $params = array(); $params['notice_id'] = $notice_id; $params['user_id'] = $user_info['user_id']; $params['notice_type'] = 2; // 消息类型(1:医生服务通知 2:医生系统公告 3:患者系统消息) $params['send_status'] = 1; $message_notice = MessageNotice::getOne($params); if (empty($message_notice)){ return fail(); } if (!empty($message_notice['link_params'])) { $message_notice['link_params'] = json_decode($message_notice['link_params'], true); } if (!empty($message_notice['show_params'])) { $message_notice['show_params'] = json_decode($message_notice['show_params'], true); } return success($message_notice->toArray()); } }