diff --git a/app/Services/UserDoctorService.php b/app/Services/UserDoctorService.php index 1636fa2..8e3d7a4 100644 --- a/app/Services/UserDoctorService.php +++ b/app/Services/UserDoctorService.php @@ -1945,19 +1945,15 @@ class UserDoctorService extends BaseService // 健康包订单发放优惠卷 if ($order_inquiry['inquiry_mode'] == 8){ // 检测问诊次数 - // 检测逻辑:支付成功的回调中,记录服务包关联的订单id,此方法为医生接诊,所以如果是首次,应该只会存在一个关联订单id - $params = array(); - $params['order_inquiry_id'] = $order_inquiry['order_inquiry_id']; - $order_service_package_inquiry = OrderServicePackageInquiry::getList($params); - if (!empty($order_service_package_inquiry)){ - if (count($order_service_package_inquiry) <= 1){ - // 发放优惠卷 - $CouponService = new CouponService(); - $res = $CouponService->GrantBuyOrderServicePackageCoupon($order_inquiry['user_id']); - if (!$res) { - Db::rollBack(); - return fail(HttpEnumCode::HTTP_ERROR, "接诊失败"); - } + $OrderServicePackageService = new OrderServicePackageService(); + $is_first = $OrderServicePackageService->isFirstInquiryServicePackage($order_service_package_inquiry['order_service_no']); + if ($is_first){ + // 发放优惠卷 + $CouponService = new CouponService(); + $res = $CouponService->GrantBuyOrderServicePackageCoupon($order_inquiry['user_id']); + if (!$res) { + Db::rollBack(); + return fail(HttpEnumCode::HTTP_ERROR, "接诊失败"); } } }