新增获取问诊消息列表接口、修正im回调

This commit is contained in:
wucongxing 2023-03-10 15:34:39 +08:00
parent de0ea9bd02
commit 3b99071387
6 changed files with 54 additions and 7 deletions

View File

@ -361,9 +361,9 @@ class CallBackController extends AbstractController
if (!empty($cloud_custom_data['is_system'])){ if (!empty($cloud_custom_data['is_system'])){
if ($cloud_custom_data['is_system'] != 1){ if ($cloud_custom_data['is_system'] != 1){
// 非系统发送 // 非系统发送
if (!empty($cloud_custom_data['sender_user_type'])){ if ($cloud_custom_data['sender_user_type'] == 1 || $cloud_custom_data['sender_user_type'] == 2){
if ($cloud_custom_data['sender_user_type'] == 1 || $cloud_custom_data['sender_user_type'] == 2){ // 患者-医生发送
// 患者-医生发送 if (!empty($order_inquiry['doctor_id'])){
$data['order_inquiry_id'] = $order_inquiry['order_inquiry_id']; $data['order_inquiry_id'] = $order_inquiry['order_inquiry_id'];
$data['patient_name'] = $order_inquiry['patient_name']; $data['patient_name'] = $order_inquiry['patient_name'];
$data['patient_sex'] = $order_inquiry['patient_sex']; $data['patient_sex'] = $order_inquiry['patient_sex'];
@ -374,6 +374,7 @@ class CallBackController extends AbstractController
$imService = new ImService(); $imService = new ImService();
$imService->addRecentContactRecordCache($order_inquiry['doctor_id'],$order_inquiry['inquiry_type'],$order_inquiry['user_id'],$data); $imService->addRecentContactRecordCache($order_inquiry['doctor_id'],$order_inquiry['inquiry_type'],$order_inquiry['user_id'],$data);
} }
} }
} }

View File

@ -164,8 +164,8 @@ class UserController extends AbstractController
// 自定义消息 // 自定义消息
$cloud_custom_data = array(); $cloud_custom_data = array();
$cloud_custom_data['order_inquiry_id'] = 491937904055369728; $cloud_custom_data['order_inquiry_id'] = 491963820554948608;
$cloud_custom_data['is_system'] = 1; $cloud_custom_data['is_system'] = 0;
$arg['CloudCustomData'] = json_encode($cloud_custom_data,JSON_UNESCAPED_UNICODE); $arg['CloudCustomData'] = json_encode($cloud_custom_data,JSON_UNESCAPED_UNICODE);

View File

@ -301,8 +301,19 @@ class UserDoctorController extends AbstractController
return $this->response->json($data); return $this->response->json($data);
} }
// 获取医生问诊消息列表 /**
public function getDoctorMessageList(){ * 获取医生问诊消息列表
* @return ResponseInterface
* @throws ContainerExceptionInterface
* @throws NotFoundExceptionInterface
*/
public function getDoctorMessageList(): ResponseInterface
{
$request = $this->container->get(UserDoctorRequest::class);
$request->scene('getDoctorMessageList')->validateResolved();
$UserDoctorService = new UserDoctorService();
$data = $UserDoctorService->getDoctorMessageList();
return $this->response->json($data);
} }
} }

View File

@ -114,6 +114,7 @@ class AuthMiddleware implements MiddlewareInterface
$params = array(); $params = array();
$params['user_id'] = $result['userInfo']['user_id']; $params['user_id'] = $result['userInfo']['user_id'];
$user = User::getOne($params); $user = User::getOne($params);
if (empty($user)){ if (empty($user)){
return $this->response->json(fail(HttpEnumCode::HTTP_ERROR)); return $this->response->json(fail(HttpEnumCode::HTTP_ERROR));
} }

View File

@ -69,6 +69,9 @@ class UserDoctorRequest extends FormRequest
'doctor_advice', // 医嘱 'doctor_advice', // 医嘱
'prescription_product',// 处方药品[] 'prescription_product',// 处方药品[]
], ],
'getDoctorMessageList' => [ // 获取医生问诊消息列表
'message_inquiry_type',// 消息订单类型1:专家问诊 2:快速问诊 3:公益问诊 4:问诊购药 5:结束)
],
]; ];
/** /**
@ -106,6 +109,7 @@ class UserDoctorRequest extends FormRequest
'prescription_icd' => 'required|array|min:1', 'prescription_icd' => 'required|array|min:1',
'doctor_advice' => 'required', 'doctor_advice' => 'required',
'prescription_product' => 'required|array|min:1', 'prescription_product' => 'required|array|min:1',
'message_inquiry_type' => 'required|integer|min:1|max:5',
]; ];
} }
@ -165,6 +169,11 @@ class UserDoctorRequest extends FormRequest
'prescription_product.required' => "请开具药品", 'prescription_product.required' => "请开具药品",
'prescription_product.array' => HttpEnumCode::getMessage(HttpEnumCode::CLIENT_HTTP_ERROR), 'prescription_product.array' => HttpEnumCode::getMessage(HttpEnumCode::CLIENT_HTTP_ERROR),
'prescription_product.min' => "请开具药品", 'prescription_product.min' => "请开具药品",
'message_inquiry_type.required' => HttpEnumCode::getMessage(HttpEnumCode::CLIENT_HTTP_ERROR),
'message_inquiry_type.integer' => HttpEnumCode::getMessage(HttpEnumCode::CLIENT_HTTP_ERROR),
'message_inquiry_type.min' => HttpEnumCode::getMessage(HttpEnumCode::CLIENT_HTTP_ERROR),
'message_inquiry_type.max' => HttpEnumCode::getMessage(HttpEnumCode::CLIENT_HTTP_ERROR),
]; ];
} }
} }

View File

@ -36,6 +36,7 @@ use Extend\Alibaba\Oss;
use Extend\Wechat\Wechat; use Extend\Wechat\Wechat;
use Hyperf\Amqp\Producer; use Hyperf\Amqp\Producer;
use Hyperf\DbConnection\Db; use Hyperf\DbConnection\Db;
use Hyperf\Redis\Redis;
use Hyperf\Snowflake\IdGeneratorInterface; use Hyperf\Snowflake\IdGeneratorInterface;
use Hyperf\Utils\ApplicationContext; use Hyperf\Utils\ApplicationContext;
use Psr\Container\ContainerExceptionInterface; use Psr\Container\ContainerExceptionInterface;
@ -1325,6 +1326,28 @@ class UserDoctorService extends BaseService
return success($result); return success($result);
} }
/**
* 获取医生问诊消息列表
* @return array
* @throws ContainerExceptionInterface
* @throws NotFoundExceptionInterface
*/
public function getDoctorMessageList(): array
{
$user_info = $this->request->getAttribute("userInfo") ?? [];
$message_inquiry_type = $this->request->input('message_inquiry_type');
$redis_key = "recentContact" . $user_info['client_user_id'] . $message_inquiry_type;
dump($redis_key);
$redis = $this->container->get(Redis::class);
$result = $redis->hKeys($redis_key);
dump($result);
return success($result);
}
/** /**
* 检测医生身份认证 * 检测医生身份认证
* @param object|array $user_doctor 医生表数据 * @param object|array $user_doctor 医生表数据
@ -1562,6 +1585,8 @@ class UserDoctorService extends BaseService
return ""; return "";
} }
/** /**
* 获取坐班时间包含某时间的平台深度合作医生 * 获取坐班时间包含某时间的平台深度合作医生
* @param string $inquiry_type * @param string $inquiry_type