新增取消未接诊订单锁定,修改锁定时间未3秒

This commit is contained in:
wucongxing 2023-05-05 16:46:23 +08:00
parent dcb7f49c72
commit 28eb4b7344
3 changed files with 17 additions and 2 deletions

View File

@ -4,6 +4,7 @@ declare(strict_types=1);
namespace App\Amqp\Consumer;
use App\Constants\HttpEnumCode;
use App\Model\OrderInquiry;
use App\Model\OrderInquiryCoupon;
use App\Model\UserCoupon;
@ -19,6 +20,7 @@ use Hyperf\Amqp\Result;
use Hyperf\Amqp\Annotation\Consumer;
use Hyperf\Amqp\Message\ConsumerMessage;
use Hyperf\DbConnection\Db;
use Hyperf\Redis\Redis;
use PhpAmqpLib\Message\AMQPMessage;
use Psr\Container\ContainerExceptionInterface;
use Psr\Container\NotFoundExceptionInterface;
@ -64,6 +66,19 @@ class CancelUnInquiryOrdersDelayDirectConsumer extends ConsumerMessage
return Result::ACK;
}
// 检测锁定
$redis = $this->container->get(Redis::class);
$redis_key = "order_inquiry_lock_" . $data['order_inquiry_id'];
$redis_lock = $redis->setnx($redis_key,1);
// 设置过期时间
$redis->expire($redis_key,3);
if (!$redis_lock){
// 设置失败,表示已经设置该值
Db::rollBack();
Log::getInstance()->error("取消未接诊问诊订单失败:正在锁定中" );
return Result::REQUEUE;
}
// 检测订单状态
if ($order_inquiry['inquiry_status'] == 7) {
// 问诊订单状态1:待支付 2:待分配 3:待接诊 4:已接诊 5:已完成 6:已结束 7:已取消)

View File

@ -287,7 +287,7 @@ class PatientOrderService extends BaseService
$redis_key = "order_inquiry_lock_" . $order_inquiry_id;
$redis_lock = $redis->setnx($redis_key,1);
// 设置过期时间
$redis->expire($redis_key,2);
$redis->expire($redis_key,3);
if (!$redis_lock){
// 设置失败,表示已经设置该值
return fail(HttpEnumCode::HTTP_SUCCESS,"请您稍后重试");

View File

@ -1697,7 +1697,7 @@ class UserDoctorService extends BaseService
$redis_key = "order_inquiry_lock_" . $order_inquiry_id;
$redis_lock = $redis->setnx($redis_key,1);
// 设置过期时间
$redis->expire($redis_key,2);
$redis->expire($redis_key,3);
if (!$redis_lock){
// 设置失败,表示已经设置该值
return fail(HttpEnumCode::HTTP_SUCCESS,"请您稍后重试");