新增创建检测订单

This commit is contained in:
wucongxing 2023-08-01 09:53:31 +08:00
parent 22620a3eb9
commit ac9c3dee38
2 changed files with 32 additions and 23 deletions

View File

@ -13,6 +13,7 @@ use App\Model\OrderProductItem;
use App\Model\Product; use App\Model\Product;
use App\Model\ProductPlatformAmount; use App\Model\ProductPlatformAmount;
use App\Model\UserCoupon; use App\Model\UserCoupon;
use App\Services\DetectionService;
use App\Services\InquiryService; use App\Services\InquiryService;
use App\Services\OrderProductService; use App\Services\OrderProductService;
use App\Utils\Log; use App\Utils\Log;
@ -48,7 +49,7 @@ class CancelUnpayOrdersDelayDirectConsumer extends ConsumerMessage
public function consumeMessage($data, AMQPMessage $message): string public function consumeMessage($data, AMQPMessage $message): string
{ {
Log::getInstance()->error("开始执行 取消未支付订单 队列:" . json_encode($data, JSON_UNESCAPED_UNICODE)); Log::getInstance("queue-CancelUnpayOrders")->error("开始执行 取消未支付订单 队列:" . json_encode($data, JSON_UNESCAPED_UNICODE));
Db::beginTransaction(); Db::beginTransaction();
@ -63,27 +64,31 @@ class CancelUnpayOrdersDelayDirectConsumer extends ConsumerMessage
$OrderProductService = new OrderProductService(); $OrderProductService = new OrderProductService();
$result = $OrderProductService->cancelUnpayProductOrder($data['order_no'], 3, "支付超时"); $result = $OrderProductService->cancelUnpayProductOrder($data['order_no'], 3, "支付超时");
} elseif ($data['order_type'] == 3) {
// 检测订单取消
$DetectionService = new DetectionService();
$result = $DetectionService->cancelUnpayDetectionOrder($data['order_no'], 3, "支付超时");
} else { } else {
Log::getInstance()->error("取消未支付订单失败order_type类型错误"); Log::getInstance("queue-CancelUnpayOrders")->error("取消未支付订单失败order_type类型错误");
return Result::DROP;// 销毁 return Result::DROP;// 销毁
} }
if ($result['status'] == 0) { if ($result['status'] == 0) {
Db::rollBack(); Db::rollBack();
Log::getInstance()->error("取消未支付订单失败:" . $result['message']); Log::getInstance("queue-CancelUnpayOrders")->error("取消未支付订单失败:" . $result['message']);
return Result::DROP;// 销毁 return Result::DROP;// 销毁
} elseif ($result['status'] == 2) { } elseif ($result['status'] == 2) {
Db::rollBack(); Db::rollBack();
Log::getInstance()->info("取消未支付订单成功:" . $result['message']); Log::getInstance("queue-CancelUnpayOrders")->info("取消未支付订单成功:" . $result['message']);
return Result::ACK;// 销毁 return Result::ACK;// 销毁
} }
Db::commit(); Db::commit();
Log::getInstance()->info("取消未支付订单 队列执行成功"); Log::getInstance("queue-CancelUnpayOrders")->info("取消未支付订单 队列执行成功");
return Result::ACK; return Result::ACK;
} catch (\Exception $e) { } catch (\Exception $e) {
Db::rollBack(); Db::rollBack();
Log::getInstance()->error("取消未支付订单执行失败:" . $e->getMessage()); Log::getInstance("queue-CancelUnpayOrders")->error("取消未支付订单执行失败:" . $e->getMessage());
return Result::ACK; // 重回队列 return Result::ACK; // 重回队列
} }
} }

View File

@ -393,9 +393,6 @@ class DetectionService extends BaseService
$detection_pay_channel = 2; $detection_pay_channel = 2;
} }
// 处理订单金额
Db::beginTransaction(); Db::beginTransaction();
$generator = $this->container->get(IdGeneratorInterface::class); $generator = $this->container->get(IdGeneratorInterface::class);
@ -443,18 +440,18 @@ class DetectionService extends BaseService
} }
// 增加至未支付取消订单延迟队列 // 增加至未支付取消订单延迟队列
// $data = array(); $data = array();
// $data['order_no'] = $order_detection['detection_no']; $data['order_no'] = $order_detection['detection_no'];
// $data['order_type'] = 3; $data['order_type'] = 3;
//
// $message = new CancelUnpayOrdersDelayDirectProducer($data); $message = new CancelUnpayOrdersDelayDirectProducer($data);
// $message->setDelayMs(1000 * 60 * 30); $message->setDelayMs(1000 * 60 * 30);
// $producer = $this->container->get(Producer::class); $producer = $this->container->get(Producer::class);
// $res = $producer->produce($message); $res = $producer->produce($message);
// if (!$res) { if (!$res) {
// Db::rollBack(); Db::rollBack();
// return fail(HttpEnumCode::SERVER_ERROR, "订单创建失败"); return fail(HttpEnumCode::SERVER_ERROR, "订单创建失败");
// } }
Db::commit(); Db::commit();
}catch (\Exception $e){ }catch (\Exception $e){
@ -468,8 +465,15 @@ class DetectionService extends BaseService
return success($result); return success($result);
} }
// 取消未支付检测订单 /**
public function cancelUnpayDetectionOrder(string|int $order_no, string|int $cancel_reason, string|int $cancel_remarks){ * 取消未支付检测订单
* @param string|int $order_no 订单编号
* @param string|int $cancel_reason 取消订单原因1:主动取消 2:客服取消 3:支付超时)
* @param string|int $cancel_remarks 取消备注
* @return array
*/
public function cancelUnpayDetectionOrder(string|int $order_no, string|int $cancel_reason, string|int $cancel_remarks): array
{
$result = array(); $result = array();
$result['status'] = 1; $result['status'] = 1;
$result['message'] = "成功"; $result['message'] = "成功";