1], null, '*', null, true); if (!empty($list)) { foreach ($list as $shop) { $shopId = $shop->id ?? 0; $customList = \bizHd\custom\classes\CustomClass::getAllByCondition(['shopId' => $shopId], null, '*', null, true); if (!empty($customList)) { foreach ($customList as $custom) { $customId = $custom->id ?? 0; $lsOrderDebt = 0; $lsOrderList = \bizHd\order\classes\OrderClass::getAllByCondition(['customId' => $customId], null, '*', null, true); if (!empty($lsOrderList)) { foreach ($lsOrderList as $lsOrder) { $remainDebtPrice = $lsOrder->remainDebtPrice ?? 0; $lsOrderDebt = bcadd($lsOrderDebt, $remainDebtPrice, 2); } } $custom->debtAmount = $lsOrderDebt; $custom->save(); } } } } } // ./yii total-debt-change/init public function actionInit() { ini_set('memory_limit', '2045M'); set_time_limit(0); $list = ShopClass::getAllByCondition(['ptStyle' => 2], null, '*', null, true); if (!empty($list)) { foreach ($list as $shop) { $shopId = $shop->id ?? 0; $mainId = $shop->mainId ?? 0; $sjName = $shop->merchantName ?? ''; $shopName = $shop->shopName ?? ''; $customList = CustomClass::getAllByCondition(['ownMainId' => $mainId], null, '*', null, true); $customDebt = 0; if (!empty($customList)) { foreach ($customList as $custom) { $debtAmount = $custom->debtAmount ?? 0; $customDebt = bcadd($customDebt, $debtAmount, 2); } } $orderDebt = 0; $orderList = OrderClass::getAllByCondition(['shopId' => $shopId], null, '*', null, true); if (!empty($orderList)) { foreach ($orderList as $order) { $remainDebtPrice = $order->remainDebtPrice ?? 0; $orderDebt = bcadd($remainDebtPrice, $orderDebt, 2); } } if (floatval($customDebt) != floatval($orderDebt)) { echo "门店:{$sjName} {$shopName} 订单和客户欠款不一致!!!!! \n"; continue; } else { echo "门店:{$sjName} {$shopName} 总欠款{$customDebt} \n"; } $lsShopId = $shop->lsShopId ?? 0; $lsOrderDebt = 0; $lsOrderList = \bizHd\order\classes\OrderClass::getAllByCondition(['shopId' => $lsShopId], null, '*', null, true); if (!empty($lsOrderList)) { foreach ($lsOrderList as $lsOrder) { $remainDebtPrice = $lsOrder->remainDebtPrice ?? 0; $lsOrderDebt = bcadd($lsOrderDebt, $remainDebtPrice, 2); } } $totalDebt = bcadd($customDebt, $lsOrderDebt, 2); $main = MainClass::getById($mainId, true); if (empty($main)) { echo "门店:{$sjName} {$shopName} 没有找到main信息!!!!!!!!!!!! \n"; continue; } echo "门店:{$sjName} {$shopName} 批发欠款{$customDebt} 零售欠款{$lsOrderDebt} \n"; $main->debt = $totalDebt; $main->save(); } } } }