if ($transport['fee'] < $shipFee) { $shipFee = $transport['fee']; $lastTransport = $transport; } } //运费最优策略,暂时只有EUB $bestTransport = getBestTransport($compareTrasprot, $lastTransport); $shipFee = $bestTransport['fee']; $transportId = $bestTransport['carrierId']; $channelId = $bestTransport['channelId']; $insertData = array('transportId' => $transportId, 'status' => 1, 'transportTime' => time()); //启用事物 WhWaveOrderTransportModel::begin(); //更新申请记录表 if (!WhWaveOrderTransportModel::update($insertData, ' shipOrderId = ' . $shipOrderId . ' AND status=0')) { $log .= "发货单:{$shipOrderId} 更新运输方式-{$transportId}记录表失败\n"; WhWaveOrderTransportModel::rollback(); continue; } //更新发货单表 $shipOrderData = array('transportId' => $transportId, 'actualShipping' => $shipFee, 'channelId' => $channelId); if (!WhShippingOrderModel::update($shipOrderData, $shipOrderId)) { $log .= "发货单:{$shipOrderId} 更新运输方式-{$transportId},运费-{$shipFee}发货单表失败\n"; WhWaveOrderTransportModel::rollback(); continue; } $log .= "发货单:{$shipOrderId} 更新运输方式 - {$transportId},运费 - {$shipFee}记录表成功\n"; WhWaveOrderTransportModel::commit(); } //写日志 write_log("transport_assign/" . date('Y-m') . "/" . date('H') . ".txt", $log);