|
|
@@ -65,7 +65,7 @@ class RefundOrderService extends BaseService
|
|
|
$productInfo = ProductClass::getByids($ids, null, 'id');
|
|
|
|
|
|
$saleOrderSn = $order->orderSn ?? '';
|
|
|
- $orderItemData = OrderItemClass::getAllByCondition(['orderSn' => $saleOrderSn], null, '*', 'productId');
|
|
|
+ $orderItemData = OrderItemClass::getAllByCondition(['orderSn' => $saleOrderSn], null, '*', 'productId', true);
|
|
|
if (empty($orderItemData)) {
|
|
|
util::fail('没有找到花材');
|
|
|
}
|
|
|
@@ -84,8 +84,16 @@ class RefundOrderService extends BaseService
|
|
|
$itemCost = $productInfo[$id]['cost'] ?? 0;
|
|
|
$ratio = $productInfo[$id]['ratio'] ?? 0;
|
|
|
|
|
|
- $xhNum = $orderItemData[$id]['xhNum'] ?? 0;
|
|
|
- $refundNum = $orderItemData[$id]['refundNum'] ?? 0;
|
|
|
+ $currentOrderItem = $orderItemData[$id] ?? null;
|
|
|
+ if (empty($currentOrderItem)) {
|
|
|
+ util::fail('没有找到退款的花材');
|
|
|
+ }
|
|
|
+ $xhNum = $currentOrderItem->xhNum ?? 0;
|
|
|
+ $refundNum = $currentOrderItem->refundNum ?? 0;
|
|
|
+
|
|
|
+ $currentOrderItem->refundNum = bcadd($refundNum, $num);
|
|
|
+ $currentOrderItem->save();
|
|
|
+
|
|
|
$remainNum = bcsub($xhNum, $refundNum);
|
|
|
if ($num > $remainNum) {
|
|
|
util::fail("{$name}超过可退数量");
|
|
|
@@ -112,7 +120,7 @@ class RefundOrderService extends BaseService
|
|
|
'xhPrice' => $xhPrice,
|
|
|
'mainId' => $mainId,
|
|
|
];
|
|
|
- RefundOrderItemClass::addData($thisItemData,$order);
|
|
|
+ RefundOrderItemClass::addData($thisItemData, $order);
|
|
|
}
|
|
|
|
|
|
}
|