|
|
@@ -137,16 +137,16 @@ class RechargeClass extends BaseClass
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- $totalAmount = $amount;
|
|
|
+ $getBalance = $amount;
|
|
|
$event = $onlinePay == 2 ? '线上充值' : '线下充值';
|
|
|
//赠送的金额
|
|
|
if ($addGiveAmount > 0) {
|
|
|
- $event .= floatval($totalAmount) . "(送" . floatval($addGiveAmount) . ")";
|
|
|
- $totalAmount = bcadd($totalAmount, $addGiveAmount, 2);
|
|
|
+ $event .= floatval($getBalance) . "(送" . floatval($addGiveAmount) . ")";
|
|
|
+ $getBalance = bcadd($getBalance, $addGiveAmount, 2);
|
|
|
}
|
|
|
- $custom->balance = bcadd($custom->balance, $totalAmount, 2);
|
|
|
+ $custom->balance = bcadd($custom->balance, $getBalance, 2);
|
|
|
$custom->save();
|
|
|
- $hd->balance = bcadd($hd->balance, $totalAmount, 2);
|
|
|
+ $hd->balance = bcadd($hd->balance, $getBalance, 2);
|
|
|
$hd->save();
|
|
|
if ($hd->balance != $custom->balance) {
|
|
|
$msg = '充值金额不一致。编号:' . floatval($hd->balance) . ' / ' . floatval($custom->balance);
|
|
|
@@ -156,8 +156,9 @@ class RechargeClass extends BaseClass
|
|
|
|
|
|
$settleId = $recharge->settleId;
|
|
|
$settleAmount = 0;
|
|
|
+ $settleNo = '';
|
|
|
$lastClearOrderId = 0;
|
|
|
- $lastClearOrderSn = '';
|
|
|
+ $lastClearOrderNo = '';
|
|
|
$realClearAmount = 0;
|
|
|
$lastClearOrderAmount = 0;
|
|
|
if (!empty($settleId)) {
|
|
|
@@ -166,30 +167,31 @@ class RechargeClass extends BaseClass
|
|
|
$res = SettleClass::clearSettle($set);
|
|
|
$realClearAmount = $res['totalDebtPrice'] ?? 0;
|
|
|
$settleAmount = $set->actPrice ?? 0;
|
|
|
+ $settleNo = $set->orderSn ?? '';
|
|
|
} else {
|
|
|
//没有结账单,按顺序去销账,这里的逻辑,请去查看原型文档,来理解需求
|
|
|
$orderList = OrderClass::getAllByCondition(['customId' => $customId, 'debt' => 1], 'id asc', '*', null, true);
|
|
|
if (!empty($orderList)) {
|
|
|
- $totalRemainAmount = 0;
|
|
|
+ $lastRemainDebtAmount = 0;
|
|
|
$needClearIds = [];
|
|
|
$hasOver = false;
|
|
|
foreach ($orderList as $order) {
|
|
|
$orderId = $order->id ?? 0;
|
|
|
$remainDebtPrice = $order->remainDebtPrice ?? 0;
|
|
|
- $currentTotal = bcadd($totalRemainAmount, $remainDebtPrice, 2);
|
|
|
- if ($currentTotal > $totalAmount) {
|
|
|
+ $currentTotalDebtAmount = bcadd($lastRemainDebtAmount, $remainDebtPrice, 2);
|
|
|
+ if ($currentTotalDebtAmount > $getBalance) {
|
|
|
//如果剩下的钱不够销结账单,可以拿来销订单,具体请查看原型文档来理解
|
|
|
if (!$hasOver) {
|
|
|
- $lastClearOrderAmount = bcsub($totalAmount, $totalRemainAmount, 2);
|
|
|
+ $lastClearOrderAmount = bcsub($getBalance, $lastRemainDebtAmount, 2);
|
|
|
if ($lastClearOrderAmount > 0) {
|
|
|
$lastClearOrderId = $orderId;
|
|
|
- $lastClearOrderSn = $order->orderSn ?? '';
|
|
|
+ $lastClearOrderNo = $order->orderSn ?? '';
|
|
|
}
|
|
|
}
|
|
|
$hasOver = true;
|
|
|
continue;
|
|
|
}
|
|
|
- $totalRemainAmount = bcadd($totalRemainAmount, $remainDebtPrice, 2);
|
|
|
+ $lastRemainDebtAmount = bcadd($lastRemainDebtAmount, $remainDebtPrice, 2);
|
|
|
$needClearIds[] = $orderId;
|
|
|
}
|
|
|
if (!empty($needClearIds)) {
|
|
|
@@ -200,6 +202,7 @@ class RechargeClass extends BaseClass
|
|
|
$settleParams = ['staffId' => $staffId, 'staffName' => $staffName];
|
|
|
$set = SettleClass::addSettle($orderData, $shop, $custom, $hd, $settleParams);
|
|
|
$settleId = $set->id;
|
|
|
+ $settleNo = $set->orderSn ?? '';
|
|
|
$settleAmount = $set->actPrice ?? 0;
|
|
|
$res = SettleClass::clearSettle($set);
|
|
|
$realClearAmount = $res['totalDebtPrice'] ?? 0;
|
|
|
@@ -207,9 +210,9 @@ class RechargeClass extends BaseClass
|
|
|
}
|
|
|
}
|
|
|
if ($settleId > 0) {
|
|
|
- if (floatval($totalAmount) != floatval($realClearAmount) || floatval($totalAmount) != floatval($settleAmount)) {
|
|
|
+ if (floatval($getBalance) != floatval($realClearAmount) || floatval($getBalance) != floatval($settleAmount)) {
|
|
|
$rechargeId = $recharge->id;
|
|
|
- noticeUtil::push("注意,充值单,结账单,和实际清掉欠款金额不一致:{$totalAmount} {$realClearAmount} {$settleAmount},settleId:{$settleId} recharge:{$rechargeId}", '15280215347');
|
|
|
+ noticeUtil::push("注意,充值单,结账单,和实际清掉欠款金额不一致:{$getBalance} {$realClearAmount} {$settleAmount},settleId:{$settleId} recharge:{$rechargeId}", '15280215347');
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -219,7 +222,7 @@ class RechargeClass extends BaseClass
|
|
|
'relateId' => $relateId,
|
|
|
'onlinePay' => $onlinePay,
|
|
|
'capitalType' => $capitalType,
|
|
|
- 'amount' => $totalAmount,
|
|
|
+ 'amount' => $getBalance,
|
|
|
'balance' => $hd->balance,
|
|
|
'io' => 1,
|
|
|
'side' => $side,
|
|
|
@@ -230,9 +233,10 @@ class RechargeClass extends BaseClass
|
|
|
'shopId' => $shopId,
|
|
|
'mainId' => $mainId,
|
|
|
'settleId' => $settleId,
|
|
|
+ 'settleNo' => $settleNo,
|
|
|
'settleAmount' => $settleAmount,
|
|
|
'orderId' => $lastClearOrderId,
|
|
|
- 'orderSn' => $lastClearOrderSn,
|
|
|
+ 'orderNo' => $lastClearOrderNo,
|
|
|
'orderAmount' => $lastClearOrderAmount,
|
|
|
'remark' => '',
|
|
|
];
|