|
|
@@ -17,6 +17,7 @@ use bizGhs\ghs\classes\GhsRechargeClass;
|
|
|
use bizGhs\order\classes\OrderClearClass;
|
|
|
use bizGhs\shop\classes\ShopClass;
|
|
|
use bizHd\member\classes\MemberLevelClass;
|
|
|
+use bizHd\purchase\classes\PurchaseClass;
|
|
|
use bizHd\saas\classes\ApplyClass;
|
|
|
use bizHd\saas\services\ApplyService;
|
|
|
use common\components\dict;
|
|
|
@@ -673,6 +674,27 @@ class CustomClass extends BaseClass
|
|
|
self::assertPairBalanceEqual($custom, $ghs);
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * hdApp 供货商余额明细:事项单号优先用 xhCg.orderSn,无采购单时再退回销售单号。
|
|
|
+ *
|
|
|
+ * @param object|array $order 供货商销售单
|
|
|
+ * @return string
|
|
|
+ */
|
|
|
+ protected static function resolveXhCgOrderSnForHdEvent($order)
|
|
|
+ {
|
|
|
+ $saleOrderSn = is_object($order) ? ($order->orderSn ?? '') : ($order['orderSn'] ?? '');
|
|
|
+ $purchaseId = intval(is_object($order) ? ($order->purchaseId ?? 0) : ($order['purchaseId'] ?? 0));
|
|
|
+ if ($purchaseId <= 0) {
|
|
|
+ return $saleOrderSn;
|
|
|
+ }
|
|
|
+ $cg = PurchaseClass::getById($purchaseId, true);
|
|
|
+ if (empty($cg)) {
|
|
|
+ return $saleOrderSn;
|
|
|
+ }
|
|
|
+ $cgOrderSn = $cg->orderSn ?? '';
|
|
|
+ return $cgOrderSn !== '' ? $cgOrderSn : $saleOrderSn;
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 花店采购余额付售后:成对账户原路退回(与 payToChangeBalance 对称)。
|
|
|
* 调用方须已 lockAccountPair;同时写客户余额明细与 xhGhs 余额明细(hdApp 可查)。
|
|
|
@@ -728,7 +750,8 @@ class CustomClass extends BaseClass
|
|
|
if (empty($ghs)) {
|
|
|
return;
|
|
|
}
|
|
|
- $orderSn = $order->orderSn ?? '';
|
|
|
+ // hd 端明细展示采购单号 xhCg.orderSn
|
|
|
+ $orderSn = self::resolveXhCgOrderSnForHdEvent($order);
|
|
|
$customShopId = $custom->shopId ?? 0;
|
|
|
$customShop = ShopClass::getById($customShopId, true);
|
|
|
$gbData = [
|
|
|
@@ -757,7 +780,8 @@ class CustomClass extends BaseClass
|
|
|
if (empty($ghs)) {
|
|
|
return;
|
|
|
}
|
|
|
- $orderSn = $order->orderSn ?? '';
|
|
|
+ // hd 端明细展示采购单号 xhCg.orderSn
|
|
|
+ $orderSn = self::resolveXhCgOrderSnForHdEvent($order);
|
|
|
$event = '购买花材,单号:' . $orderSn;
|
|
|
if ($bookOrder) {
|
|
|
$event = '预订单多退少补,单号:' . $orderSn;
|