From f184233f78f667b78871b2769d231a5fcffbf4b2 Mon Sep 17 00:00:00 2001 From: wucongxing8150 <815046773@qq.com> Date: Mon, 11 Mar 2024 14:06:52 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=9F=B3=E8=A7=86=E9=A2=91?= =?UTF-8?q?=E8=A1=A8=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SendVideoNoticeDelayDirectConsumer.php | 18 ++++--- app/Controller/CallBackController.php | 52 ++++++++++--------- app/Model/OrderInquiryVideoRecord.php | 4 +- app/Model/OrderInquiryVideoReservation.php | 4 +- app/Services/InquiryService.php | 12 +++-- app/Services/VideoService.php | 32 ++++++------ 6 files changed, 65 insertions(+), 57 deletions(-) diff --git a/app/Amqp/Consumer/SendVideoNoticeDelayDirectConsumer.php b/app/Amqp/Consumer/SendVideoNoticeDelayDirectConsumer.php index 9283652..99a2bb0 100644 --- a/app/Amqp/Consumer/SendVideoNoticeDelayDirectConsumer.php +++ b/app/Amqp/Consumer/SendVideoNoticeDelayDirectConsumer.php @@ -5,6 +5,8 @@ declare(strict_types=1); namespace App\Amqp\Consumer; use App\Model\OrderInquiry; +use App\Model\OrderInquiryVideoRecord; +use App\Model\OrderInquiryVideoReservation; use App\Model\User; use App\Model\UserDoctor; use App\Model\VideoRecord; @@ -97,28 +99,28 @@ class SendVideoNoticeDelayDirectConsumer extends ConsumerMessage // 获取视频预约状态 $params = array(); $params['order_inquiry_id'] = $data['order_inquiry_id']; - $video_reservation = VideoReservation::getOne($params); - if (empty($video_reservation)){ + $order_inquiry_video_reservation = OrderInquiryVideoReservation::getOne($params); + if (empty($order_inquiry_video_reservation)){ Log::getInstance("queue-SendVideoNotice")->error("缺少视频预约数据" ); return Result::DROP; } - if ($video_reservation['is_send_reservation_notice'] == 1){ + if ($order_inquiry_video_reservation['is_send_reservation_notice'] == 1){ Log::getInstance("queue-SendVideoNotice")->info("已发送过一次通知,无需发送" ); return Result::ACK; } // 检测是否已开过视频 $params = array(); - $params['order_inquiry_id'] = $video_reservation['order_inquiry_id']; - $video_records = VideoRecord::getOne($params); - if (!empty($video_records)) { + $params['order_inquiry_id'] = $order_inquiry_video_reservation['order_inquiry_id']; + $order_inquiry_video_records = OrderInquiryVideoRecord::getOne($params); + if (!empty($order_inquiry_video_records)) { Log::getInstance("queue-SendVideoNotice")->info("已开过视频,无需发送" ); return Result::ACK; } // 检测通知时间 - $reservation_time = strtotime($video_reservation['reservation_time']); + $reservation_time = strtotime($order_inquiry_video_reservation['reservation_time']); if ($reservation_time < time()){ Log::getInstance("queue-SendVideoNotice")->info("当前时间已超过预约时间,无需发送" ); return Result::ACK; @@ -173,7 +175,7 @@ class SendVideoNoticeDelayDirectConsumer extends ConsumerMessage $data['is_send_reservation_notice'] = 1; $params = array(); - $params['inquiry_video_id'] = $video_reservation['inquiry_video_id']; + $params['inquiry_video_id'] = $order_inquiry_video_reservation['inquiry_video_id']; $res = VideoReservation::edit($params,$data); if (!$res){ Db::rollBack(); diff --git a/app/Controller/CallBackController.php b/app/Controller/CallBackController.php index 81af605..4123ce0 100644 --- a/app/Controller/CallBackController.php +++ b/app/Controller/CallBackController.php @@ -23,6 +23,8 @@ use App\Model\OrderInquiry; use App\Model\OrderInquiryCase; use App\Model\OrderInquiryCoupon; use App\Model\OrderInquiryRefund; +use App\Model\OrderInquiryVideoRecord; +use App\Model\OrderInquiryVideoReservation; use App\Model\OrderPrescription; use App\Model\OrderProduct; use App\Model\OrderProductCoupon; @@ -1773,17 +1775,17 @@ class CallBackController extends AbstractController // 获取视频预约记录 $params = array(); $params['room_id'] = $request_params['EventInfo']['RoomId']; - $video_reservation = VideoReservation::getLastOne($params); - if (empty($video_reservation)){ + $order_inquiry_video_reservation = OrderInquiryVideoReservation::getLastOne($params); + if (empty($order_inquiry_video_reservation)){ return $this->TrtcErrorReturn("未查询到该房间号,此条数据不接收"); } // 获取视频记录 $params = array(); $params['room_id'] = $request_params['EventInfo']['RoomId']; - $params['order_inquiry_id'] = $video_reservation['order_inquiry_id']; - $video_record = VideoRecord::getLastOne($params); - if (empty($video_record)){ + $params['order_inquiry_id'] = $order_inquiry_video_reservation['order_inquiry_id']; + $order_inquiry_video_records = OrderInquiryVideoRecord::getLastOne($params); + if (empty($order_inquiry_video_records)){ return $this->TrtcErrorReturn("缺少视频开启记录"); } @@ -1853,18 +1855,18 @@ class CallBackController extends AbstractController } // 检测视频状态 - if ($video_record['video_status'] == 3 || $video_record['video_status'] == 4){ + if ($order_inquiry_video_records['video_status'] == 3 || $order_inquiry_video_records['video_status'] == 4){ // 已开始/结束通话,进入房间动作不做处理 return $this->TrtcSuccessReturn(); } // 修改视频状态 $params = array(); - $params['records_id'] = $video_record['records_id']; + $params['records_id'] = $order_inquiry_video_records['records_id']; $data = array(); $data['video_status'] = 2; - $res = VideoRecord::edit($params,$data); + $res = OrderInquiryVideoRecord::edit($params,$data); if (!$res){ return $this->TrtcErrorReturn("修改视频状态失败"); } @@ -1872,19 +1874,19 @@ class CallBackController extends AbstractController break; case '102': // 解散房间 // 检测视频状态 - if ($video_record['video_status'] == 4){ + if ($order_inquiry_video_records['video_status'] == 4){ // 已结束通话,解散房间动作不做处理 return $this->TrtcSuccessReturn(); } // 修改视频状态 $params = array(); - $params['records_id'] = $video_record['records_id']; + $params['records_id'] = $order_inquiry_video_records['records_id']; $data = array(); $data['video_status'] = 4; $data['stop_video_time'] = date('Y-m-d H:i:s',$request_params['EventInfo']['EventMsTs']); - $res = VideoRecord::edit($params,$data); + $res = OrderInquiryVideoRecord::edit($params,$data); if (!$res){ return $this->TrtcErrorReturn("修改视频状态失败"); } @@ -1892,24 +1894,24 @@ class CallBackController extends AbstractController break; case '201': // 视频推流 // 检测视频状态 - if ($video_record['video_status'] == 4){ + if ($order_inquiry_video_records['video_status'] == 4){ // 已结束通话,视频推流动作不做处理 return $this->TrtcSuccessReturn(); } - if ($video_record['video_status'] == 3){ + if ($order_inquiry_video_records['video_status'] == 3){ // 已开始通话,视频推流动作不做处理 return $this->TrtcSuccessReturn(); } // 修改视频状态 $params = array(); - $params['records_id'] = $video_record['records_id']; + $params['records_id'] = $order_inquiry_video_records['records_id']; $data = array(); $data['video_status'] = 3; $data['stop_video_time'] = date('Y-m-d H:i:s',$request_params['EventInfo']['EventMsTs']); - $res = VideoRecord::edit($params,$data); + $res = OrderInquiryVideoRecord::edit($params,$data); if (!$res){ return $this->TrtcErrorReturn("修改视频状态失败"); } @@ -1917,24 +1919,24 @@ class CallBackController extends AbstractController break; case '203': // 音频推流 // 检测视频状态 - if ($video_record['video_status'] == 4){ + if ($order_inquiry_video_records['video_status'] == 4){ // 已结束通话,音频推流动作不做处理 return $this->TrtcSuccessReturn(); } - if ($video_record['video_status'] == 3){ + if ($order_inquiry_video_records['video_status'] == 3){ // 已开始通话,音频推流动作不做处理 return $this->TrtcSuccessReturn(); } // 修改视频状态 $params = array(); - $params['records_id'] = $video_record['records_id']; + $params['records_id'] = $order_inquiry_video_records['records_id']; $data = array(); $data['video_status'] = 3; $data['stop_video_time'] = date('Y-m-d H:i:s',$request_params['EventInfo']['EventMsTs']); - $res = VideoRecord::edit($params,$data); + $res = OrderInquiryVideoRecord::edit($params,$data); if (!$res){ return $this->TrtcErrorReturn("修改视频状态失败"); } @@ -2076,8 +2078,8 @@ class CallBackController extends AbstractController $params = array(); $params['room_id'] = $request_params['EventInfo']['RoomId']; $params['order_inquiry_id'] = $video_reservation['order_inquiry_id']; - $video_record = VideoRecord::getLastOne($params); - if (empty($video_record)){ + $order_inquiry_video_records = OrderInquiryVideoRecord::getLastOne($params); + if (empty($order_inquiry_video_records)){ return $this->recordingErrorReturn("缺少视频开启记录"); } @@ -2158,7 +2160,7 @@ class CallBackController extends AbstractController $data = array(); $data['video_status'] = 2; - $res = VideoRecord::edit($params,$data); + $res = OrderInquiryVideoRecord::edit($params,$data); if (!$res){ return $this->recordingErrorReturn("修改视频状态失败"); } @@ -2178,7 +2180,7 @@ class CallBackController extends AbstractController $data = array(); $data['video_status'] = 4; $data['stop_video_time'] = date('Y-m-d H:i:s',$request_params['EventInfo']['EventMsTs']); - $res = VideoRecord::edit($params,$data); + $res = OrderInquiryVideoRecord::edit($params,$data); if (!$res){ return $this->recordingErrorReturn("修改视频状态失败"); } @@ -2203,7 +2205,7 @@ class CallBackController extends AbstractController $data = array(); $data['video_status'] = 3; $data['stop_video_time'] = date('Y-m-d H:i:s',$request_params['EventInfo']['EventMsTs']); - $res = VideoRecord::edit($params,$data); + $res = OrderInquiryVideoRecord::edit($params,$data); if (!$res){ return $this->recordingErrorReturn("修改视频状态失败"); } @@ -2228,7 +2230,7 @@ class CallBackController extends AbstractController $data = array(); $data['video_status'] = 3; $data['stop_video_time'] = date('Y-m-d H:i:s',$request_params['EventInfo']['EventMsTs']); - $res = VideoRecord::edit($params,$data); + $res = OrderInquiryVideoRecord::edit($params,$data); if (!$res){ return $this->recordingErrorReturn("修改视频状态失败"); } diff --git a/app/Model/OrderInquiryVideoRecord.php b/app/Model/OrderInquiryVideoRecord.php index f8e9f15..c257d3e 100644 --- a/app/Model/OrderInquiryVideoRecord.php +++ b/app/Model/OrderInquiryVideoRecord.php @@ -60,9 +60,9 @@ class OrderInquiryVideoRecord extends Model /** * 新增-批量 * @param array $data 新增数据 - * @return \Hyperf\Database\Model\Model|VideoRecord + * @return \Hyperf\Database\Model\Model|OrderInquiryVideoRecord */ - public static function addVideoRecord(array $data): \Hyperf\Database\Model\Model|VideoRecord + public static function addOrderInquiryVideoRecord(array $data): \Hyperf\Database\Model\Model|OrderInquiryVideoRecord { return self::create($data); } diff --git a/app/Model/OrderInquiryVideoReservation.php b/app/Model/OrderInquiryVideoReservation.php index a230b59..794569d 100644 --- a/app/Model/OrderInquiryVideoReservation.php +++ b/app/Model/OrderInquiryVideoReservation.php @@ -64,9 +64,9 @@ class OrderInquiryVideoReservation extends Model /** * 新增-批量 * @param array $data 新增数据 - * @return \Hyperf\Database\Model\Model|VideoReservation + * @return \Hyperf\Database\Model\Model|OrderInquiryVideoReservation */ - public static function addVideoReservation(array $data): \Hyperf\Database\Model\Model|VideoReservation + public static function addOrderInquiryVideoReservation(array $data): \Hyperf\Database\Model\Model|OrderInquiryVideoReservation { return self::create($data); } diff --git a/app/Services/InquiryService.php b/app/Services/InquiryService.php index f1c560c..967ec4b 100644 --- a/app/Services/InquiryService.php +++ b/app/Services/InquiryService.php @@ -23,6 +23,8 @@ use App\Model\OrderInquiry; use App\Model\OrderInquiryCase; use App\Model\OrderInquiryCoupon; use App\Model\OrderInquiryRefund; +use App\Model\OrderInquiryVideoRecord; +use App\Model\OrderInquiryVideoReservation; use App\Model\OrderPrescription; use App\Model\OrderProductCoupon; use App\Model\PatientFamily; @@ -1383,17 +1385,17 @@ class InquiryService extends BaseService // 获取视频预约数据 $params = array(); $params['order_inquiry_id'] = $order_inquiry_id; - $video_reservation = VideoReservation::getOne($params); - if (!empty($video_reservation)) { + $order_inquiry_video_reservation = OrderInquiryVideoReservation::getOne($params); + if (!empty($order_inquiry_video_reservation)) { $is_reservation_time = true; // 是否已设置预约时间 - $update_number = $video_reservation['update_number']; // 修改次数 + $update_number = $order_inquiry_video_reservation['update_number']; // 修改次数 // 检测是否已开过视频 $params = array(); $params['order_inquiry_id'] = $order_inquiry_id; - $video_records = VideoRecord::getOne($params); - if (!empty($video_records)) { + $order_inquiry_video_records = OrderInquiryVideoRecord::getOne($params); + if (!empty($order_inquiry_video_records)) { $is_video = true; // 是否已开视频(0:否 1:是) } } diff --git a/app/Services/VideoService.php b/app/Services/VideoService.php index 9c68efe..4fab301 100644 --- a/app/Services/VideoService.php +++ b/app/Services/VideoService.php @@ -6,6 +6,8 @@ use App\Amqp\Producer\SendVideoNoticeDelayDirectProducer; use App\Constants\HttpEnumCode; use App\Exception\BusinessException; use App\Model\OrderInquiry; +use App\Model\OrderInquiryVideoRecord; +use App\Model\OrderInquiryVideoReservation; use App\Model\SystemInquiryConfig; use App\Model\User; use App\Model\UserDoctor; @@ -81,18 +83,18 @@ class VideoService extends BaseService $params = array(); $params['order_inquiry_id'] = $order_inquiry_id; - $video_reservation = VideoReservation::getOne($params); - if (!empty($video_reservation)) { + $order_inquiry_video_reservation = OrderInquiryVideoReservation::getOne($params); + if (!empty($order_inquiry_video_reservation)) { // 检测预约时间修改次数 - if ($video_reservation['update_number'] >= 1) { + if ($order_inquiry_video_reservation['update_number'] >= 1) { return fail(HttpEnumCode::HTTP_ERROR, "已无法设置/修改视频时间,可立即发起视频"); } // 检测是否已开过视频 $params = array(); $params['order_inquiry_id'] = $order_inquiry_id; - $video_records = VideoRecord::getOne($params); - if (!empty($video_records)) { + $order_inquiry_video_records = OrderInquiryVideoRecord::getOne($params); + if (!empty($order_inquiry_video_records)) { return fail(HttpEnumCode::HTTP_ERROR, "已开过视频,无需再修改预约时间"); } @@ -121,8 +123,8 @@ class VideoService extends BaseService $data['order_inquiry_id'] = $order_inquiry['order_inquiry_id']; $data['room_id'] = substr($order_inquiry['doctor_id'], -5) . substr(time(), -4); $data['reservation_time'] = $reservation_time; - $video_reservation = VideoReservation::addVideoReservation($data); - if (empty($video_reservation)) { + $order_inquiry_video_reservation = OrderInquiryVideoReservation::addOrderInquiryVideoReservation($data); + if (empty($order_inquiry_video_reservation)) { Db::rollBack(); return fail(HttpEnumCode::SERVER_ERROR, "设置失败"); } @@ -133,7 +135,7 @@ class VideoService extends BaseService $data['update_number'] = 1; $params = array(); - $params['inquiry_video_id'] = $video_reservation['inquiry_video_id']; + $params['inquiry_video_id'] = $order_inquiry_video_reservation['inquiry_video_id']; $res = VideoReservation::edit($params, $data); if (!$res) { Db::rollBack(); @@ -259,12 +261,12 @@ class VideoService extends BaseService $params = array(); $params['order_inquiry_id'] = $order_inquiry_id; - $video_reservation = VideoReservation::getOne($params); - if (empty($video_reservation)) { + $order_inquiry_video_reservation = OrderInquiryVideoReservation::getOne($params); + if (empty($order_inquiry_video_reservation)) { return fail(HttpEnumCode::HTTP_ERROR, "您还没有和患者预约视频时间,无法发起视频"); } - if (empty($video_reservation['room_id'])){ + if (empty($order_inquiry_video_reservation['room_id'])){ // 视频房间创建错误,无房间号 return fail(HttpEnumCode::SERVER_ERROR); } @@ -275,11 +277,11 @@ class VideoService extends BaseService // 增加视频记录 $data = array(); $data['order_inquiry_id'] = $order_inquiry['order_inquiry_id']; - $data['room_id'] = $video_reservation['room_id']; + $data['room_id'] = $order_inquiry_video_reservation['room_id']; $data['video_status'] = 1; $data['start_video_time'] = date('Y-m-d H:i:s', time()); - $video_records = VideoRecord::addVideoRecord($data); - if (empty($video_records)) { + $order_inquiry_video_records = OrderInquiryVideoRecord::addOrderInquiryVideoRecord($data); + if (empty($order_inquiry_video_records)) { Db::rollBack(); return fail(HttpEnumCode::SERVER_ERROR, "发起视频失败"); } @@ -291,6 +293,6 @@ class VideoService extends BaseService return fail(HttpEnumCode::SERVER_ERROR, $e->getMessage()); } - return success($video_reservation['room_id']); + return success($order_inquiry_video_reservation['room_id']); } } \ No newline at end of file