log->error('CancelOrderConsumer:error:NoData:'.json_encode($data)); return Result::ACK; } $orderId = (int)$data['order_id']; $orderType = (int)$data['type']; $orderInfo = match ($orderType) { OrderCode::ORDER_TYPE_GOOD => $this->orderModel->getInfoById($orderId), default => null, }; if (empty($orderInfo)) { $this->log->debug('CancelOrderConsumer:error:NoOrderData:'.json_encode($data)); return Result::ACK; } if ($orderInfo->status != OrderCode::WAIT_PAY) { $this->log->debug('CancelOrderConsumer:error:orderStatusError:'.json_encode($orderInfo->toArray())); return Result::ACK; } $orderInfo->status = OrderCode::CANCEL; if (!$orderInfo->save()) { $this->log->debug('CancelOrderConsumer:error:orderStatusSaveError:'.json_encode($orderInfo->toArray())); return Result::ACK; } $this->sendStockMq($orderInfo->id,OrderCode::CANCEL); return Result::ACK; } }