get(['id', 'stock', 'two_days_ago_num', 'yesterday_num']); $data = []; $date = date('Y-m-d'); foreach ($skus as $sku) { $data[] = [ 'sku_id' => $sku->id, 'day' => $date, ]; GoodsSku::where('id', $sku->id)->update([ 'stock' => $sku->stock + $sku->two_days_ago_num + $sku->yesterday_num, 'yesterday_num' => $sku->stock, 'two_days_ago_num' => $sku->two_days_ago_num + $sku->yesterday_num, ]); } $log = new Log(); $log->module = 'goods'; $log->action = 'PATCH'; $log->target_type = 'goods_sku'; $log->target_id = 0; $log->target_field = 'timingInventory'; $log->user_id = 1; $record = new DailyStockRecord(); $record->batchInsert($data); $log->message = '成功'; DB::commit(); } catch (\Exception $exception) { $log->message = '失败'; DB::rollBack(); } $log->save(); $this->info($log->message); } }